Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2007-05-29
帖子: 5
声望力: 0 ![]() |
![]()
我要解一个微分方程组如:dx/dt=a*x+b*y,dy/dt=c*x+d*y.(a,b,c,d是数)看书上的例子直接用dsolve (dsolve('Dx=a*x+b*y,Dy=c*x+d*y','x(0)=0,y(0)=1','t'))就行了~~~我如果把a,b,c,d直接代入数计算,也能计算得到,可我需要把a,b,c,d的值改变,应该怎么做啊~~我试着用function ***(a,b,c,d)然后用dsolve可不管用啊,解出来的还是带有a,b,c,d的式子,应该怎么做才能改变a,b,c,d的值,使我用'Dx=a*x+b*y,Dy=c*x+d*y'时a,b,c,d是作为数直接计算的??谢谢了~~!!
|
![]() |
![]() |
![]() |
#2 |
初级会员
注册日期: 2007-05-22
帖子: 3
声望力: 0 ![]() |
![]()
我也遇到这个问题。
我的MATLAB是6.5版的,用来解二元方程组时,程序给的解是多项式。 |
![]() |
![]() |
![]() |
#3 |
初级会员
注册日期: 2007-05-29
帖子: 5
声望力: 0 ![]() |
![]()
我的那个问题已经解决了.是用subs.在要求的函数之前先定义变量syms a b c d x y
%比如要代入a,b,c,d的值,f=a*x+b*y,)比如要求的的等式为f=a*x+b*y).要用a=0代替 然后直接按你的要求输入要求的等式,在等式 求完解以后再sub(f,a,0)就OK了! |
![]() |
![]() |