如何运用matlab求解非线性偏微分方程组

2024-11-12 23:56:54
推荐回答(2个)
回答(1):

MATLAB里面本来就是有函数调用的 叫fslove
这是本人的一个函数例子 也是解方程组的

mfunction q=myfun(p)
a(1)=4.04;
a(2)=2.2525;
a(3)=1.4422;
b(1)=20.2;
b(2)=50.5;
b(3)=72.108;
x(1)=p(1);
x(2)=p(2);
x(3)=p(3);
x(4)=p(4);
x(5)=p(5);
x(6)=p(6);
q(1)=x(1)*sin(x(2))-a(1)*x(5);
q(2)=x(1)*sin(x(3))-a(2)*x(5);
q(3)=x(1)*sin(x(4))-a(3)*x(5);
q(4)=x(1)*cos(x(2))-a(1)*x(6)-b(1);
q(5)=x(1)*cos(x(3))-a(2)*x(6)-b(2);
q(6)=x(1)*cos(x(4))-a(3)*x(6)-b(3);

% x=fsolve('myfun',[0.5 0.5 0.5 0.5 0.5 0.5]',optimset('Display','off'));

回答(2):

比如:y''-y'+y=x+1 y是关于x的函数
命令如下:
syms x t;dsolve('D2x-Dx+x=t+1')
结果:ans =

t + C5*exp(t/2)*cos((3^(1/2)*t)/2) + C6*exp(t/2)*sin((3^(1/2)*t)/2) + 2
因为系统默认的变量为t 所以那样编程
你可以百度的