⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test_my_ode.m

📁 变系数/非线性微分方程的求解
💻 M
字号:
function test_my_ode
% 以一步Euler法说明MATLAB/ODEs的实现及封装方法

%   $sunshengli@sohu.com $  
%   $Date: 2005/07/20    $

h   = 0.1;    
t   = 0:0.1:20;
y0  = -4;
% [t,y] = ode45(@odefun,t,y0);  % 使用Matlab自带积分器
[t,y] = my_ode(@odefun,t,y0);   % 使用自己封装的积分器
plot(t,y)

function [t,y] = my_ode(odefun,t,y0)
    
y(1) = y0;
for k=1:(length(t)-1)
    h       = t(k+1) - t(k); 
    y_dot   = feval(odefun,t,y(k));   
    y(k+1)  = y(k) + h*y_dot ;
end

function y_dot = odefun(t,y)

    y_dot   = -0.2*y + 2 ;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -