MatLab求解延迟微分方程的注意事项.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MatLab求解延迟微分方程的注意事项

MatLab求解延迟微分方程的注意事项 2010-08-14 17:04 MatLab求解延迟微分方程的注意事项 使用MATLAB求解延时微分方程的两种方法:DDE23和SimuLink有些不同点需要注意,否则结果会出现错误 使用MATLAB来求解延迟微分方程是在生物数学和化学计算求解中经常遇到的事,在其它领域也比较常见。我所知道的,在MATLAB中求解微分方程有三种方法:1.使用ode45(龙格-库塔法的一个变种)求解,这时用一个数组,记录y的延迟项,但是c的值要考虑步长,再代入方程就能实现延时效应;2.使用dde23求解常数延时方程、使用ddesd可以用来求解延迟与时间t有关的延迟微分方程;3.使用SimuLink建模求解,SimuLink是求解广义微分代数系统的通用工具,功能很强大,但是看惯了编程指令的人可能不大习惯,调试似乎也不太方便。 ?????? 既然本文专门讨论求解延迟微分方程,就先介绍一下专用工具dde23,dde系列求解函数是由Southern Methodist University 的L.F. Shampine 和S. Thompson根据他们早期使用Fortran编写的Fortran 90 DDE Solver 移植到MATLAB上的,从MATLAB6.5开始加入MATLAB的官方发行版,根据薛定宇教授在其几本关于MATLAB的著作中提到的,该函数返回的sol中结构体sol.x和sol.y均为按行排列,与ode45等不同,不太规范(没办法,因为这个函数本来就不是Mathworks的官方作品),不过这一点已经不大可能得到改进了,因为L.F. Shampine 和S. Thompson已经决定停止维护这个文件。如果您想进一步了解该函数,可以访问它的主页。 ??? MATLAB帮助中关于该函数的介绍不很清楚,如果需要进一步了解这个函数,需要下载作者为其写的手册。下面以MATLAB中所附的一个例程来说明这个函数与Simulink建模求解的不同。 ?? 在MATLAB prompt中键入edit ddex1就会找看到函数作者所写的一个入门例子: function ddex1 %DDEX1 Example 1 for DDE23. % This is a simple example of Wille and Baker that illustrates the % straightforward formulation, computation, and plotting of the solution % of a system of delay differential equations (DDEs). % % The differential equations % % y_1(t) = y_1(t-1) % y_2(t) = y_1(t-1)+y_2(t-0.2) % y_3(t) = y_2(t) % % are solved on [0, 5] with history y_1(t) = 1, y_2(t) = 1, y_3(t) = 1 for % t = 0. % % The lags are specified as a vector [1, 0.2], the delay differential % equations are coded in the subfunction DDEX1DE, and the history is % evaluated by the function DDEX1HIST. Because the history is constant it % could be supplied as a vector: % sol = dde23(@ddex1de,[1, 0.2],ones(3,1),[0, 5]); % % See also DDE23, FUNCTION_HANDLE. % Jacek Kierzenka, Lawrence F. Shampine and Skip Thompson % Copyright 1984-2004 The MathWorks, Inc. % $Revision: $ $Date: 2005/06/21 19:24:16 $ sol = dde23(@ddex1de,[1, 0.2],@ddex1hist,[0, 5]); figure; plot(sol.x,sol.y) title(An example of Wille and Baker.); xlabel(time t); ylabel(solution y); % ------------------------------------

文档评论(0)

ipbohn97 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档