matlab求方程数值解我用matlab的solve求方程组,结果是一个符号解,我想得到方程的数值解,应该怎么办?因为符号解的解非常复杂,所以手工代人几乎不可能.matlab编程:[x5,y5]=solve('y5=a1*x5+c1','y5=a2*x5+
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/24 11:46:39
matlab求方程数值解我用matlab的solve求方程组,结果是一个符号解,我想得到方程的数值解,应该怎么办?因为符号解的解非常复杂,所以手工代人几乎不可能.matlab编程:[x5,y5]=solve('y5=a1*x5+c1','y5=a2*x5+
matlab求方程数值解
我用matlab的solve求方程组,结果是一个符号解,我想得到方程的数值解,应该怎么办?因为符号解的解非常复杂,所以手工代人几乎不可能.
matlab编程:[x5,y5]=solve('y5=a1*x5+c1','y5=a2*x5+c2','x5','y5');
a1,c1,a2,c2的数值都知道了
运行结果:
x5 =
(-c2+c1)/(a2-a1)
y5 =
(a2*c1-c2*a1)/(a2-a1)
x5、y5不是数值,这是什么原因?
matlab求方程数值解我用matlab的solve求方程组,结果是一个符号解,我想得到方程的数值解,应该怎么办?因为符号解的解非常复杂,所以手工代人几乎不可能.matlab编程:[x5,y5]=solve('y5=a1*x5+c1','y5=a2*x5+
>> syms a1 a2 c1 c2
%以下的值你自己改一下
aa1=1;
cc1=2;
aa2=3;
cc2=4;
[x5,y5]=solve('y5=a1*x5+c1','y5=a2*x5+c2','x5','y5');
xx5=subs(subs(subs(subs(x5,a1,aa1),a2,aa2),c1,cc1),c2,cc2)
yy5=subs(subs(subs(subs(y5,a1,aa1),a2,aa2),c1,cc1),c2,cc2)
%%%%%subs(表达式,变量,变量的值),就是将表达式里面的变量,用变量的值代进去.
直接把几个已知参数放进solve里就行了啊
比如a1=2,就在输a1的地方输2
a1,c1,a2,c2的数值都知道,设为以下方程
>> [x5,y5]=solve('y5=1*x5+1','y5=2*x5+sqrt(3)','x5','y5')
x5 =
1-3^(1/2)
y5 =
2-3^(1/2)
>> x=eval(x5);y=eval(y5);
>> [x,y]
ans =
-0.7321 0.2679
>>