请测试以下脚本。 它似乎可行,但我不知道如何验证结果。
这些是输入数据。
xdata = [0.9 1.5 13.8 19.8 24.1 28.2 35.2 60.3 74.6 81.3]';
ydata = [455.2 428.6 124.1 67.3 43.2 28.1 13.1 -0.4 -1.3 -1.5]';
list = [xdata, ydata];
脚本文件
function [pax, pay] = extract_parameter(list)
options.Algorithm = 'levenberg-marquardt';
m_start = [0; 0];
fun = @(x)in_func(list, x);
[parameter, ~] = lsqnonlin(fun, m_start,[],[],options);
pax = parameter(1);
pay = parameter(2);
% Nested function
function fun = in_func(list, x)
m_vel = list(:,1);
m_ang = list(:,2);
fun = m_vel + x(1)*cos(m_ang) + x(2)*sin(m_ang);
end
end
计算预期参数pax和pay。 我需要将它们替换为x(1)和x(2)的原始函数,并验证结果。 拜托,有人可以帮我验证一下吗?