Lsqnonlin(...)
аналогичен синтаксису функции fsolve( ), подробно обсуждавшемся нами в лекции № 4. Поэтому далее мы ограничимся только примером, демонстрирующим использование данной функции для нахождения параметров функции .
Для решения данной задачи в пакете MATLAB необходимо выполнить следующую последовательность действий:
1. Создать файл F77.m, содержащий описание функции, возвращающей значения вектор-функции f(x)
% листинг файла F77.m
function z=F77(Coeff,vx,vy)
k=1:length(vx);
z=vy-exp(Coeff(1)+Coeff(2)*vx+Coeff(3)*vx.^2);
2. Выполнить следующую последовательность команд
% задание исходных данных
>> vx=[0.3;0.4;1;1.4;2;4]
vx =
0.3000
0.4000
1.0000
1.4000
2.0000
4.0000
>> vy=[9.4;11.2;5;3;6;0.2]
vy =
9.4000
11.2000
5.0000
3.0000
6.0000
0.2000
>> z=[1 0 -1]% начальное приближения
z =
1 0 -1
% вычисление коэффициентов аппроксимирующей функции
>> Coeff = lsqnonlin('F77',z',[],[],[],vx,vy)
Optimization terminated successfully:
Дата добавления: 2015-08-21; просмотров: 1118;