ТЕМА 4. Решение систем нелинейных уравнений




Блок-схема интерполяции многочленом Лагранжа

Пример. По заданным точкам: xi=-1 0 1; yi=1 0 1. Определить интерполяционный многочлен L(x).

L(x)=x2

 

ТЕМА 2. Приближение функции.Аппроксимация. Метод наименьших квадратов (МНК).

Пусть имеются результаты некоторого эксперимента в виде массива значений независимой переменной xi и зависимой переменной yi,. где i=0,1,2,…,n

Требуется отыскать аналитическую зависимость f(x,a0,a1,…,am), являющуюся функцией одной независимой переменной x и параметров a0,a1,a2,…,am, которая наилучшим образом описывала бы эти экспериментальные данные в смысле минимума квадратичного критерия

Решаем задачу в классе полиномов и функцию f (x,a0,a1,…,am) определим как полином степени m вида: Надо найти такие значения параметров вектора а, при которых квадратичный критерий рассогласования имел бы минимальное значение. Вывод формулы для определения параметров не представлен. Приводим окончательную формулу вычисления вектора параметров в матричном виде a= inv (Ф’*Ф) *Ф’*y

Рассмотрим применение расчета для функции (m=2) вида

Тогда критерий R будет являться функцией трёх переменных a0, a1, a2:

Для удобства формирования матрицы коэффициентов и столбца свободных членов введем матрицу элементы которой определяются через значения независимой переменной xi, i=0,1,2,…,n так как

В общем случае количество строк в матрице равно количеству точек, а количество столбцов равно количеству параметров, где строка состоит из значений частных производных от функции f(x,a0,a1,…,am) по соответствующему параметру.

a= inv(Ф’*Ф) *Ф’*y

Далее представлена блок-схема алгоритма МНК и числовой расчет для полиномиальной функции m=1, n=4 для которой критерий рассогласования оказался равным R=2.3

Блок-схема аппроксимации.

Параллельно(справа) приведен числовой расчет.

Begin
End
m,n,x,y
a,dy,r
a=inv(F’*F)*F’*y
i=1 шаг 1 до n
j=1 шаг 1 до m
F(i,j)=x(i)^(j-1)
yr=F*a; dy=y-yr
r=dy’*dy

Пример. xi= -1 0 1 2; yi= 2 1 2 4.    

 

ТЕМА 3. Методы численного интегрирования

Пусть на отрезке [a; b] определена непрерывная функция f(x). f=inline(‘<функция>'); Требуется определить значение определенного интеграла которое численно равно площади S фигуры, ограниченной графиком функции f(x) и осью x, на заданном отрезке [a; b]. Для приближенного вычисления площади, разобьем отрезок [a; b] на n равных элементарных отрезков точками: x0=a, x1= a+h, x2=x1+h,…,xi=xi–1+h,…,xn=b, – шаг разбиения. Значение функции f(x) в точках (рис.3.1) разбиения xi обозначим через yi.

x0=a
x1
x3
x2
xn=b
f(x)
xi
xn–1
xi+1
x
· · ·  
· · ·  
· · ·  
· · ·  
y0
y1
y2
y3
yi–1
yi
yi+1
yn–1
yn
s0
s1
s2
sn-1
si
xi–1
si-1

Рис.3.1. Интегрирование. Разбиение на равные отрезки.

Ниже приведена совокупность команд для построения графика функции

f=inline(‘<функция>');

x=a:h:b;

plot(x,f(x),'k-')

Площадь S можно вычислить как сумму элементарных площадей определенных для соответствующих элементарных отрезков длиной h: S = s0+s1+s2+…si+…..+sn–1 Произвольную площадь si можно вычислить, как определенный интеграл на отрезке [xi;xi+1] от более простой функции φi(x), которой заменим реальную функцию f(x): Вид функции φi(x) будет определять название метода.

Методы прямоугольников. Значение функции φi(x) на отрезке [xi;xi+1] принимается константой

Метод прямоугольников вперед. Для функции φi(x) = yi значения элементарной si и общей S площади можно вычислить как: , тогда

x=a:h:b-h;

S=h*sum(f(x));

Метод прямоугольников назад. Аналогично, можно вычислить значение S ,

x=a+h:h:b;

S=h*sum(f(x));

Метод прямоугольников в среднем. Тогда значения элементарной si и общей S площади можно вычислить как

x=a+h/2:h:b;

S=h*sum(f(x));

Метод трапеций. Функцию φi(x) будем определять как линейную на отрезке [xi;xi+1], т.е. ее график должен проходить через две смежные точки (xi,yi) и (xi+1,yi+1). Функцию φi(x) можно будет представить как интерполяционный многочлен Лагранжа, построенный по двум точкам (xi,yi) и (xi+1,yi+1): тогда значения элементарной si площади можно вычислить как:

x=a:h:b-h; S=h*sum((f(x)+f(x+h))/2); x=a:h:b; S=trapz(x,f(x)); x=a:h:b; S=h*trapz(f(x));

Метод Симпсона. Определим точку xi+½ = xi+½·h в середине элементарного отрезка [xi;xi+1] и значение функции в этой точке yi+½ Функцию φi(x) будем определять как квадратичную на отрезке [xi;xi+1], т.е. её график должен проходить через три смежные точки (xi,yi),(xi+½ , yi+½) и (xi+1,yi+1). Функцию φi(x) можно будет представить как интерполяционный многочлен Лагранжа, построенный по трём точкам xi, xi+½ и xi+1:

Тогда значения элементарной si площади можно вычислить как:

Тогда значения общей S площади можно записать как:

Вычисление в МАТЛАБе

x=a+h:h:b-h; xs=a+h/2:h:b; S=h/6*(f(a)+f(b)+2*sum(f(x))+4*sum(f(xs))); S=quad(f,a,b);  

 

ТЕМА 4. Решение систем нелинейных уравнений

Система нелинейных уравнений (СНУ). В общем случае систему нелинейных уравнений можно записать как: или Решением СНУ является такой вектор при подстановке которого в систему последняя обращается в тождество.

Методы простых итераций. При прямом подходе довольно сложно получить итерационную формулу получения эквивалентной системы нелинейных уравнений, позволяющую получить решение СНУ. Поэтому в основном используется метод Ньтона- Рафсона.

Метод Ньютона-Рафсона. Пусть известно некоторое приближение к решению Запишем исходную систему в виде где Разложим функцию в ряд Тейлора и ограничимся линейными членами.

Это система линейных уравнений относительно

Матрица Якоби Тогда а новое приближение к решению СНУ будет иметь вид: или Условием окончания итерационного процесса является выполнения неравенства

Оператор МАТЛАБа [x,fun]=fsolve(@f,[x1 x2]);

Результат выполнения - значения неизвестных и значение функции.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2020-05-09 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: