matlab求解微分式,如何用Matlab求微分方程de符号解

1.dsolve()函数

求解常微分方程的通解在求通解问题

% syms y(x)

% y=dsolve(x^2+y+(x-2*y)*diff(y)==0)这里插入代码片

求解常微分方程的初边值问题% syms y(x)% 定义符号变量

% dy=diff(y);%一阶导数

% d2y=diff(y,2);%二阶导数,用于初值或边值条件的赋值

% y=dsolve(diff(y,3)-diff(y,2)==x,y(1)==8,dy(1)==7,d2y(2)==4)

% y=simplify(y) %把计算结果化解

求解常微分方程组% syms f(x) g(x)

% df=diff(f);%用于初值或边值条件的赋值

% [f1,g1]=dsolve(diff(f,2)+3*g==sin(x),diff(g)+diff(f)==cos(x))%求通解

% f1=simplify(f1),g1=simplify(g1)

%

% [f2,g2]=dsolve(diff(f,2)+3*g==sin(x),diff(g)+diff(f)==cos(x),df(2)==0,f(3)==3,g(5)==1)

% f2=simplify(f2),g2=simplify(g2)

求解线性常微分方程组

一阶齐次线性微分方程组% syms x(t) y(t) z(t)

% X=[x;y;z]% 定义符号向量

% A=[2 1 3;0 2 -1;0 0 2];

% B=[1 2 1]';

% [x, y, z]=dsolve(diff(X)==A*X,X(0)==B)

非齐次线性方程组syms x(t) y(t) z(t)

X=[x;y;z]% 定义符号向量

A=[1 0 0;2 1 -1;3 2 1];

B=[0;0;exp(t)*cos(2*t)];

x0=[0;1;1];%初值条件

X=dsolve(diff(X)==A*X+B,X(0)==x0)%求符号解

X=simplify([X.x;X.y;X.z])%显示解的各个分量

pretty(X) %分数线居中的显示方式

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值