Хмельник Соломон Ицкович : другие произведения.

Решение системы линейных алгебраических уравнений с комплексными коэффициентами

Самиздат: [Регистрация] [Найти] [Рейтинги] [Обсуждения] [Новинки] [Обзоры] [Помощь|Техвопросы]
Ссылки:


 Ваша оценка:
  • Аннотация:
    В книге [1] описан (в частности) метод расчета электрических цепей постоянного тока с диодами. Такую же книгу на английском можно скачать здесь, на СИ. В этой статье описывается программа для такого расчета в системе MATLAB. Данные для расчета подготавливаются в виде таблицы. Размерность задачи ограничена только ресурсами компьютера. Открытые коды этой MATLAB-программы можно приобрести у автора на сайте http://mic34.com/bookrumatlab.htm, позиция 361. С предложениями о дополнительных разработках можно обратиться по адресу solik@netvision.net.il.


Хмельник С. И.

Решение системы линейных алгебраических уравнений с комплексными коэффициентами

Новый метод и MATLAB-программа

Аннотация

   Описывается новый метод и алгоритмы решения системы линейных уравнений с комплексными коэффициентами. Метод основан на найденом автором вариационном принципе оптимума в линейных электрических цепях переменного тока [1]. Это означает, что для любой такой цепи существует единственный оптимум некоторого функционала. Следовательно, существует и единственный оптимум некоторого функционала, оптимальное значение которого является решением системы линейных уравнений с комплексными коэффициентами. Этот единственный оптимум может быть найден быстродействующим методом градиентного спуска, что очень привлекательно для приложений. При этом существует обратная зависимость между точностью и временем решения. На практике это означает, что пользователь может быстро перебирать приближенные варианты, а затем более точно расчитать выбранный вариант.
   Здесь приводятся программы в системе MATLAB (М-функции) и тестовые примеры, также выполненные в виде М-функий.

Содержание

   1. Описание метода
   2. Основная программа
   3. Тесты
   4. О сходимости
   5. О быстродействии и точности
   Литература
   Программы
  
   1. Описание метода
   0x01 graphic
   0x01 graphic

0x01 graphic

Фиг. 1.

0x01 graphic

Фиг. 2.

  
   2. Основная программа
   М-функция для расчета электрической схемы имеет вид:
   function [res,erMin,k,q,er] = ...
   SinLin(E,Z,maxEr,maxK)
   Входными аргументами здесь являются
   E - вектор с, определенный в (1),
   Z = a + j*b - см. (1),
   maxEr - допустимая относительная ошибка
   maxK - допустимое количество итераций
   Выходными величинами здесь являются
   q = x - результат вычисления,
   k - достигнутое количество итераций,
   er - массив ошибок на каждой итерации,
   erMin - полученная ошибка результата,
   res - признак результата:
  -- res=0 - результат получен,
  -- res=1 - превышено допустимое количество итераций,
  -- res=2 - превышена допустимая ошибка.
  
   3. Тесты
   В тестах дополнительно приняты следующие обозначения:
   qt=xt=Z\c - результат традиционного вычисления,
   ert = Z*xt - c - ошибка традиционного вычисления,
   comp - относительная ошибка результатов вычислений по данному и традиционному алгоритмам.
  
   Пример 4. Программа решения одного уравнения с комплексными коэффициентами:
   function [xt,x,erMin,k] = test1
   Пример 5. Программа решения двух уравнений с комплексными коэффициентами системе MATLAB:
   function [res,qt,q,erMin,k] = test2
   Отображаются графики вида, приведенного на фиг. 1 и фиг. 2.
  
   Пример 6. Программа решения трех уравнений с комплексными коэффициентами системе MATLAB:
   function [res,qt,q,erMin,k] = test3
   Отображаются графики вида, приведенного на фиг. 1 и фиг. 2.
  
   Пример 7. Программа решения N уравнений с комплексными коэффициентами системе MATLAB.
   function [comp,erMin,k] = testN(N, maxEr)
   Отображаются графики вида, приведенного на фиг. 1 и фиг. 2. Параметр comp служит для сравнения результатов вычислений по данному и традиционному алгоритмам.
  
   4. О сходимости
   Итерационный процесс сходится, если матрицы M и R являются знакопределенными (положительно или отрицательно).
  
   Пример 8. Программа решения трех уравнений с комплексными коэффициентами:
   function [res,qt,q,erMin,k] = test3r
   Здесь матрица M не является знакопределенной, процесс расходиться и прекращается, когда ошибка в 100 раз превышает ошибку в начале итерации. Отображаются графики вида, приведенного на фиг. 3. Пользователь может экспериментировать, назначая знакоопределенные и знаконеопределенные матрицы а и в, указанные в коментариях.
  

0x01 graphic

Фиг. 3.

  
   5. О быстродействии и точности
   Эксперименты показывают, что
  -- comp ~ maxEr,
  -- comp пропорционально maxEr,
  -- количество итераций пропорционально maxEr,
  -- количество итераций пропорционально размерности N.
  
   Пример 9. Программа решения N уравнений с комплексными коэффициентами:
   function testNv
   Параметр comp служит для сравнения результатов вычислений по данному и традиционному алгоритмам. Отображаются графики зависимости количества итераций и ошибки comp от размерности N при фиксированой величине maxEr - см. фиг. 4. Видно, что, во-первых, comp < maxEr и, во-вторых, количество итераций пропорционально размерности N.
  

0x01 graphic

Фиг. 4.

  
   Пример 10. Программа testNe решения N уравнений с комплексными коэффициентами
   function testNe
   Параметр comp служит для сравнения результатов вычислений по данному и традиционному алгоритмам. Отображаются графики зависимости количества итераций и ошибки comp от заданной величины maxEr при фиксированой размерности N - см. фиг. 5. Видно, что, во-первых, comp пропорционально maxEr и, во-вторых, количество итераций пропорционально maxEr.
  

0x01 graphic

Фиг. 5.

Литература

  1. Хмельник С.И. Вариационный принцип экстремума в электромеханических и электродинамических системах, третья редакция. Publisher by "MiC", printed in USA, Lulu Inc., ID 1769875, Израиль, 2010, ISBN 978-0-557-04837-3.

 Ваша оценка:

Связаться с программистом сайта.

Новые книги авторов СИ, вышедшие из печати:
О.Болдырева "Крадуш. Чужие души" М.Николаев "Вторжение на Землю"

Как попасть в этoт список
Сайт - "Художники" .. || .. Доска об'явлений "Книги"