37836

РЕШЕНИЕ СИСТЕМ НЕЛИНЕЙНЫХ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ МЕТОДОМ НЬЮТОНА

Лабораторная работа

Физика

Метод Ньютона Многие прикладные задачи радиофизики и электроники требуют решения систем нелинейных алгебраических уравнений СНАУ или в векторной форме 2. Для численного решения таких систем используются итерационные методы. Построение k1го приближения в этой схеме осуществляется посредством решения линейной системы 2.3 при этом вектор поправки находится путем решения системы линейных алгебраических уравнений 2.

Русский

2013-09-25

247 KB

25 чел.

Лабораторная работа № 2

РЕШЕНИЕ  СИСТЕМ  НЕЛИНЕЙНЫХ  АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ  МЕТОДОМ  НЬЮТОНА

ЦЕЛЬ РАБОТЫ: изучить и программно реализовать на языке высокого уровня метод Ньютона, исследовать его точность и эффективность на тестовых задачах.

Метод Ньютона

Многие прикладные задачи радиофизики и электроники требуют решения  систем нелинейных алгебраических  уравнений (СНАУ)

или в векторной форме

, (2.1)

где – вектор-столбец переменных, – вектор-столбец функций, – n-мерное векторное пространство.

Для численного решения таких систем используются итерационные методы. Суть итерационных методов состоит в построении последовательности сходящейся при  к точному решению .

Различают одношаговые и многошаговые итерационные методы. В m-шаговом итерационном методе при построении приближения  используются приближения  на m предыдущих шагах. Общую схему наиболее распространенных на практике так называемых неявных одношаговых методов можно представить в виде

,

при этом – [nxn]-неособенная матрица, задающая итерационный процесс, – числовой параметр. Построение (k+1)-го приближения в этой схеме осуществляется посредством решения линейной системы

, (2.2)

где

.

Если  для всех , здесь– [nxn]-единичная матрица, то итерационный метод называют явным, так как в этом случае  Метод является стационарным, когда  и  не зависят от номера итерации, и нестационарным в противном случае.

Качество итерационных методов оценивают по скорости сходимости, определяя ее как степень уменьшения нормы вектора погрешности при выполнении одного итерационного шага:

,

где – коэффициент сжатия, – порядок метода. Если , то итерационный метод имеет линейную сходимость, при – квадратичную сходимость.

Наиболее часто применяемым на практике при решении систем нелинейных алгебраических уравнений является метод Ньютона, который сочетает в себе квадратичную сходимость с удобством реализации. Он основан на линеаризации системы (2.1) с помощью разложения  в ряд Тейлора.

Предположим, что известно k-е приближение  к точному решению  системы (2.1). Следующее (k+1)-е приближение в методе Ньютона вычисляется как

,  (2.3)

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

, (2.4)

где  – [nxn]-матрица Якоби, определяемая следующим образом:

.

Из сравнения соотношений (2.2) и (2.4) следует, что метод Ньютона является одношаговым, неявным, нестационарным итерационным правилом.

На каждом шаге итерационного ньютоновского процесса необходимо вычислить вектор невязки , матрицу Якоби , решить систему линейных алгебраических уравнений (2.4) относительно вектора-поправки , определить новое приближение  по уточняю-щей формуле (2.3).

Критерием завершения итерационного процесса является одновременное выполнение условий:

     и   , (2.5)

где

,

– константы, определяющие погрешность решения (они задаются в качестве исходных данных). Эти условия свидетельствуют о том, что в точке приближенного решения задачи становятся меньше заданных как норма вектора невязки, так и норма вектора изменения решения на одной итерации.

Для предотвращения зацикливания следует задать также предельное число итераций, по достижению которого необходимо принудительно  завершить вычисления с сообщением . Причиной зацикливания может быть погрешность решения линейной системы, не позволяющая достичь требуемую  точность.

Описание алгоритма

Алгоритм решения систем нелинейных алгебраических уравнений методом Ньютона реализуется следующим образом:

Алгоритм 2.1

  1.  Ввести начальное приближение , параметры  и , предельное число итераций  и положить .
  2.  Вывести на экран шапку таблицы, содержащей информацию о сходимости метода: номер итерации,  и .
  3.  Вычислить вектор невязки:

.

  1.  Вычислить матрицу Якоби:

.

  1.  Решить систему линейных алгебраических уравнений

.

  1.  Уточнить решение:

.

  1.  Вычислить по формулам (2.5) и вывести на экран текущие значения  и , текущий номер итерации.
  2.  Проверить критерий (2.5) завершения итерационного процесса. Если этот критерий выполняется, то выйти из программы.
  3.  Проверить условие . Если это условие имеет место, то выйти из итерационного процесса с сообщением .

10. Положить  и перейти к п. 3.

Задание

  1.  Написать, отладить и исследовать на задаче, предложенной преподавателем (табл. 2.1), программу численного решения систем нелинейных алгебраических уравнений методом Ньютона. Вычисления выполнить для  от начального приближения, приведенного в таблице в порядке .

Содержание электронного  отчета

  1.  Текст  программы.
  2.  Задача, результаты ее решения, характеристики , представленные таблично:

1

2

Таблица 2.1

Система уравнений

Начальное приближение

1

(1;   1)

2

(0.5;   0.2)

3

(-1.5;   1.5)

(-1;   1)

4

(1;   0)

5

(1;   1)

(2;   1.5)

(-3;   -1.5)

6

(1;   1)

7

(1;   -1)

(-1;   1)

8

(3;   2)

(3;   -2)

9

(1;   1)

10

(1;   1)

11

(1;   1); (-1;   -1)

12

(1;   0)

13

(1;   1);  (1;   -1)

14.

(1;   1)

Продолжение табл. 2.1

Система уравнений

Начальное приближение

15

(1.2;   1.3)

16

(0;   1)

17

(1;   1)

18

(1;   1)

(-1.;   1)

19

(1;   1)

(-1;   -1)

20

(0;   0;   0)

21

(1;   1;   1)

22

(1;   2.2;   2)

23

(1;   1;   1)

24

(1;   1;   1;   1)

(10; 10; 10; 10)

(100;  100;

100;  100)

14


 

А также другие работы, которые могут Вас заинтересовать

29354. Expressive means and stylistics devices 24 KB
  All stylistic means of a language can be divided into expressive means which are used in some specific way and special devices called stylistic devices. The expressive means of a language are those phonetic means morphological forms means of wordbuilding and lexical phraseological and syntactical forms all of which function in the language for emotional or logical intensification of the utterance. These intensifying forms of the language have been fixed in grammars and dictionaries. The most powerful expressive means of any language...
29355. Stylistic Classification of the English Vocabulary 53.1 KB
  This is important for the course in as much as some SDs are based on the interplay of different stylistic aspects of words. The literary vocabulary consists of the following groups of words: common literary; terms and learned [′ lə:nid] words; poetic words; archaic words; barbarisms and foreign words; literary coinages and noncewords. The colloquial vocabulary includes the following groups of words: common colloquial words; slang; jargonisms; professionalisms; dialectal words; vulgar words; colloquial coinages. The common...
29356. Тетрадная форма представления программ в языковых процессорах САПР 23.5 KB
  Списки тетрад. Удобной формой представления бинарных операций являются тетрады вида: оператор операнд1 операнд2 результат ABCD B C T1 A T1 T2 T2 D T3T1 T2 T3 временные переменные формируемые транслятором.Важным свойством списка тетрад является то что тетрады располагаются строго в соответствии с порядком в котором должны быть выполнены операторы при реализации программы.
29357. Алгоритм перевода выражений в польскую запись 37.5 KB
  При работе семантических программ широко используется набор данных с организацией в виде стека. Операнды переписываются в выходную строку а операторы заносятся в стек. В зависимости от приоритета операторов при записи в стек оператор может вытолкнуть из стека другой оператор который последовательно записывается в выходную строку. Работа со стеком организуется так:1.
29359. Машинно-независимая оптимизация линейных участков программ 26.5 KB
  Покажем простейшие преобразования линейных и циклических участков для тетрадной формы программ:Машиннонезависимая оптимизация линейных участков программЛинейным участком программы называется последовательность операцийкоманд которая не содержит условных переходов возможно кроме последней операции. Для оптимизации линейных участков в простейшем случае используется два основных преобразования:1. В списке тетрад выделит границы участков включающих вычисления выражений по операторам присвоения;2.
29360. Машинно-независимая оптимизация циклических участков программ 28 KB
  Рассмотрим возможные преобразования над цикличными участками покажем на примере констрии цикла с заданным количеством повторения.В языке Паскаль такая циклическая конструкция имеет следующий вид: for i: =a to b dobeginтело циклаend;В бейсике: for i =a to b step Sтело циклаnext iв таких конструкциях а и b границы изменения переменной циклаНад подобными конструкциями выполняются следующие оптимизационные преобразования:1. вынесение из тела цикла операций операций которые не измен. в теле цикла;2.
29361. Генерация объектного кода для тетрадной формы представления программ 99.5 KB
  последовательность команд загруженных в фиксированные ячейки памяти2. последовательность перемещенных машинных команд3. Предположим что сумматор может выполнять 4 арифметические операции а в целом система команд также включает еще 2 команды: загрузки сумматора из памяти и сохранение результатов в память.Систему команд такой машины можно представить следующим образом:При выполнении любой из первых двух команд содержимое источника копируется в приемник а при выполнении оставшихся 4 команд содержимое ячейки памяти не изменяется.
29362. Генерация объектного кода по семантическому дереву 52.5 KB
  Существует 3 формы объектного кода1. Чтобы показать процесс генерации кода можно рассмотреть теоретическую вычислительную машину с одним сумматором и неограниченной памятью.Генерация кода осуществляется для программы представленной в некоторой внутренней форме наиболее удобной из которых для генерации кода является список тетрад.