matlab符号方程求解x=0.3y=0.5s=solve('0.33*cos(a1)+0.3*cos(a1+a2)-x=0','0.33*sin(a1)+0.3*sin(a1+a2)-y=0','a1','a2');disp('s.a1'),disp(s.a1),disp('s.a2'),disp(s.a2);上面是程序,为什么运行的结果却是符号而不能把x,y的值代入
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/15 10:21:46
matlab符号方程求解x=0.3y=0.5s=solve('0.33*cos(a1)+0.3*cos(a1+a2)-x=0','0.33*sin(a1)+0.3*sin(a1+a2)-y=0','a1','a2');disp('s.a1'),disp(s.a1),disp('s.a2'),disp(s.a2);上面是程序,为什么运行的结果却是符号而不能把x,y的值代入
matlab符号方程求解
x=0.3
y=0.5
s=solve('0.33*cos(a1)+0.3*cos(a1+a2)-x=0','0.33*sin(a1)+0.3*sin(a1+a2)-y=0','a1','a2');
disp('s.a1'),disp(s.a1),disp('s.a2'),disp(s.a2);
上面是程序,为什么运行的结果却是符号而不能把x,y的值代入求出具体解?
matlab符号方程求解x=0.3y=0.5s=solve('0.33*cos(a1)+0.3*cos(a1+a2)-x=0','0.33*sin(a1)+0.3*sin(a1+a2)-y=0','a1','a2');disp('s.a1'),disp(s.a1),disp('s.a2'),disp(s.a2);上面是程序,为什么运行的结果却是符号而不能把x,y的值代入
syms x y a1 a2
eq1=0.33*cos(a1)+0.3*cos(a1+a2)-x;
eq2=0.33*sin(a1)+0.3*sin(a1+a2)-y;
x=0.3;
y=0.5;
s=solve(eval(eq1),eval(eq2));
% s=solve(subs(eq1),subs(eq2));这两句都可以,你可以随便选一种
disp('s.a1='),disp(s.a1),disp('s.a2='),disp(s.a2);%结果为符号型
disp('s.a1='),disp(double(s.a1)),disp('s.a2='),disp(double(s.a2));%转换结果为数值型
我所用的教程是matlab 7.0的,使用的软件是2009a版本的。 %这样是正确的: a=rand(4) b=[1;2;3;4] x=linsolve(a,b) %%图中错误的原因
s=solve('0.33*cos(a1)+0.3*cos(a1+a2)-0.3=0','0.33*sin(a1)+0.3*sin(a1+a2)-0.5=0','a1','a2');
disp('s.a1'),disp(s.a1),disp('s.a2'),disp(s.a2);
要把x和y的值都打进式子里面去。否则它会把x,y当做符号的。我的目的就是要把x,y放在外面,因为x,y...
全部展开
s=solve('0.33*cos(a1)+0.3*cos(a1+a2)-0.3=0','0.33*sin(a1)+0.3*sin(a1+a2)-0.5=0','a1','a2');
disp('s.a1'),disp(s.a1),disp('s.a2'),disp(s.a2);
要把x和y的值都打进式子里面去。否则它会把x,y当做符号的。
收起