dydt4.m
来自「这是本人收集的一些程序源代码」· M 代码 · 共 20 行
M
20 行
function varargout=DYDt4(t,Y,flag,G,ME,tspan,Y0)
switch flag
case ''
varargout{1} = f(t,Y,G,ME);
case 'init'
[varargout{1:3}] = fi(tspan,Y0);
otherwise
error(['Unknown flag ''' flag '''.']);
end
% ------------------------------------------------------------------
function Yd = f(t,Y,G,ME)
X=Y(1:2);V=Y(3:4);r=sqrt(sum(X.^2));Yd=[V; -G*ME*X/r^3];
% ------------------------------------------------------------------
function [ts,y0,options] = fi(tspan,Y0)
ts=tspan;y0 = Y0;
% 采用向域直接赋值法,设置options属性。以供与odeset使用方法对照。
options.RelTol=1e-5;options.AbsTol=1e-4;
options.OutputFcn='odephas2'; %在积分进程中,绘制相平面图。
options.OutputSel=[1 3];%解向量的第1、3分量分别为相平面图的横、纵坐标量。
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?