将下面公式通过matlab求解其中,可以给定Theta的角度为0-2pi之间,每一角度取个值,二维画出图来
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/18 19:33:14
将下面公式通过matlab求解其中,可以给定Theta的角度为0-2pi之间,每一角度取个值,二维画出图来
将下面公式通过matlab求解
其中,可以给定Theta的角度为0-2pi之间,每一角度取个值,二维画出图来
将下面公式通过matlab求解其中,可以给定Theta的角度为0-2pi之间,每一角度取个值,二维画出图来
通过fminsearch求出近似
f = @(theta,alpha,beta,phi,gamma)norm([3645.21 1047.64 4113.65 -1047.64]' - ...
[cos(theta) cos(gamma) -sin(alpha) -cos(phi);
sin(theta) -sin(gamma) cos(alpha) -sin(phi);
cos(theta) cos(gamma) -sin(beta) cos(phi);
sin(theta) -sin(gamma) -cos(beta) sin(phi)] * [400 3900 1100 2400]');
xy = [];
x = zeros(4,1);
for theta = 0:.1:2*pi
x = fminsearch(@(x)f(theta,x(1),x(2),x(3),x(4)),x); % 以上一次的解作为这一次初始值
xy = [xy; 400*cos(theta)+3900*cos(x(4)) 400*sin(theta)-3900*sin(x(4))];
end
plot(xy(:,1),xy(:,2),'o-');
结果如示:
PS:下次编程类问题选择类别为编程吧,因为要贴代码