首页 > 编程知识 正文

matlab如何求常微分方程的数值解,怎么用matlab求微分方程的数值解

时间:2023-05-04 09:30:05 阅读:286005 作者:3186

%% 学习目标:使用MATLAB求解常微分方程 通解 特解 数值解
%% 求微分方程的通解
clear all;
f1=dsolve(‘Dy-y=sin(x)’) %默认情况下以t为自变量求解 求出的C2为积分常数
f2=dsolve(‘Dy-y=sin(x)’,‘x’) % 以x为自变量求解
%% 求微分方程的特解
clear all;
dsolve(‘Dy=a*y’,‘y(0)=b’) %求微分方程的特解
%% 求微分方程组
clear all;
z=dsolve(‘Dx=y’,‘Dy=-x’) % 默认t为自变量
z.x
z.y
%% 求解常微分方程组的数值解
clear all;
close all;
options=odeset(‘RelTol’,1e-4,‘AbsTol’,[1e-4 1e-4 1e-5]); %设置参数
[t,y]=ode45(@rigid,[0 12],[0 1 1],options);
% 时间范围0到12,rigid是方程组,变量的初始值是 0 1 1
figure;
plot(t,y(:,1),’-’,t,y(:,2),’–’,t,y(:,3),’:’);
xlabel(‘Time’);
legend(‘y1’,‘y2’,‘y3’);
% odeset 结构体
……
……
……
(省略部分代码,完整代码可以下载)
……
……
……
(完整代码及资料下载地址)
8一节课精通matlab入门求微分方程组的通解特解数值解.zip-CSDN下载 https://download.csdn.net/download/weixin_44356700/11856003

新上线了一门视频课程——二十八天精通matlab基础编程-在线视频教程-CSDN学院 https://edu.csdn.net/course/detail/24947

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。