求解具有常数时滞的时滞微分方程(DDEs)gydF4y2Ba
索尔= dde23 (tspan ddefun、滞后、历史)gydF4y2Ba
索尔= dde23 (ddefun、滞后、历史、tspan选项)gydF4y2Ba
|
对微分方程右侧求值的函数句柄gydF4y2Ba .函数必须有形式gydF4y2Ba dydt = ddefun (t, y, Z)gydF4y2Ba 在哪里gydF4y2Ba |
|
常数向量,正延迟gydF4y2BaτgydF4y2Ba1gydF4y2Ba、……gydF4y2BaτgydF4y2BakgydF4y2Ba.gydF4y2Ba |
|
指定gydF4y2Ba
|
|
积分区间gydF4y2Ba |
|
可选的集成的论点。属性创建的结构gydF4y2Ba |
索尔= dde23 (tspan ddefun、滞后、历史)gydF4y2Ba
集成了dde系统gydF4y2Ba
在间隔时[gydF4y2BatgydF4y2Ba0gydF4y2Ba,gydF4y2BatgydF4y2BafgydF4y2Ba),gydF4y2BaτgydF4y2Ba1gydF4y2Ba、……gydF4y2BaτgydF4y2BakgydF4y2Ba是持续的,积极的延迟和gydF4y2BatgydF4y2Ba0gydF4y2Ba,gydF4y2BatgydF4y2BafgydF4y2Ba.输入参数,gydF4y2BaddefungydF4y2Ba
,是函数句柄。gydF4y2Ba
参数化功能gydF4y2Ba解释如何向函数提供附加参数gydF4y2BaddefungydF4y2Ba
,如果必要的。gydF4y2Ba
dde23gydF4y2Ba
以结构形式返回解决方案gydF4y2Ba索尔gydF4y2Ba
.使用辅助功能gydF4y2Ba德瓦尔gydF4y2Ba
和输出gydF4y2Ba索尔gydF4y2Ba
在特定的点上评估解决方案gydF4y2Ba色彩gydF4y2Ba
在这一期间gydF4y2Batspan = (t0, tf)gydF4y2Ba
.gydF4y2Ba
yint =德瓦尔(溶胶、色彩)gydF4y2Ba
结构gydF4y2Ba索尔gydF4y2Ba
返回的gydF4y2Badde23gydF4y2Ba
具有以下字段。gydF4y2Ba
|
网选择gydF4y2Ba |
|
近似gydF4y2BaygydF4y2Ba(gydF4y2BaxgydF4y2Ba)的网格点gydF4y2Ba |
|
近似gydF4y2BaygydF4y2Ba”(gydF4y2BaxgydF4y2Ba)的网格点gydF4y2Ba |
|
解算器的名字,gydF4y2Ba |
索尔= dde23 (ddefun、滞后、历史、tspan选项)gydF4y2Ba
中的值替换默认集成属性,解决上述问题gydF4y2Ba选项gydF4y2Ba
,引起的争论gydF4y2BaddesetgydF4y2Ba
.看到gydF4y2BaddesetgydF4y2Ba
和gydF4y2Ba解时滞微分方程gydF4y2Ba为更多的信息。gydF4y2Ba
常用的选项是标量相对误差公差gydF4y2Ba“RelTol”gydF4y2Ba
(gydF4y2Ba1 e - 3gydF4y2Ba
默认情况下)和绝对容错矢量gydF4y2Ba“AbsTol”gydF4y2Ba
(所有组件gydF4y2Ba1 e-6gydF4y2Ba
默认情况下)。gydF4y2Ba
使用gydF4y2Ba“跳跃”gydF4y2Ba
选择解决问题与不连续的历史或解决方案。将此选项设置为一个向量,该向量包含之前解中的不连续点位置gydF4y2Bat0gydF4y2Ba
(历史)或在已知值时方程的系数gydF4y2BatgydF4y2Ba后gydF4y2Bat0gydF4y2Ba
.gydF4y2Ba
使用gydF4y2Ba“事件”gydF4y2Ba
选项指定一个函数gydF4y2Badde23gydF4y2Ba
查找函数调用的位置gydF4y2Ba
消失。这个函数必须是有形式的gydF4y2Ba
(价值、isterminal方向)=事件(t, y, Z)gydF4y2Ba
并为要测试的每个事件包含一个事件函数。为gydF4y2BakgydF4y2Ba
第一个事件函数gydF4y2Ba事件gydF4y2Ba
:gydF4y2Ba
值(k)gydF4y2Ba
价值是多少gydF4y2BakgydF4y2Ba
事件函数。gydF4y2Ba
isterminal (k) = 1gydF4y2Ba
如果你想让积分在事件函数和的0处终止gydF4y2Ba0gydF4y2Ba
否则。gydF4y2Ba
方向(k) = 0gydF4y2Ba
如果你想要gydF4y2Badde23gydF4y2Ba
为了计算这个事件函数的所有零,gydF4y2Ba+1gydF4y2Ba
如果事件函数增加时为零gydF4y2Ba-1gydF4y2Ba
如果事件函数减小时为零。gydF4y2Ba
如果指定gydF4y2Ba“事件”gydF4y2Ba
选项和事件被检测,输出结构gydF4y2Ba索尔gydF4y2Ba
还包括:gydF4y2Ba
|
所有事件位置的行向量,即事件函数消失的时间gydF4y2Ba |
|
矩阵的列是乘以in的解值gydF4y2Ba |
|
中包含指定在相应时间发生的事件的索引的向量gydF4y2Ba |
这个例子求解了间隔[0,5]上时滞为1和0.2的DDE。这个函数gydF4y2Baddex1degydF4y2Ba
计算延迟微分方程,并且gydF4y2Baddex1histgydF4y2Ba
计算的历史gydF4y2Bat < = 0gydF4y2Ba
.gydF4y2Ba
请注意gydF4y2Ba
这个文件,gydF4y2Baddex1.mgydF4y2Ba
,包含此示例的完整代码。要在编辑器中查看代码,输入gydF4y2Ba编辑ddex1gydF4y2Ba
在命令行。要运行它,输入gydF4y2Baddex1gydF4y2Ba
在命令行。gydF4y2Ba
Sol = dde23(@ddex1de,[1,0.2],@ddex1hist,[0,5]);gydF4y2Ba
这段代码在间隔中的100个等间距点上计算解决方案gydF4y2Ba[0, 5]gydF4y2Ba
,然后绘制结果。gydF4y2Ba
色= linspace (0 5);yint =德瓦尔(溶胶、色彩);情节(色彩、yint);gydF4y2Ba
ddex1gydF4y2Ba
演示如何使用本地函数编写此问题的代码。有关更多示例,请参见gydF4y2Baddex2gydF4y2Ba
.gydF4y2Ba
dde23gydF4y2Ba
跟踪不连续,并与显式龙格-库塔(2,3)对和插值相结合gydF4y2Baode23gydF4y2Ba
.它使用迭代来采取比滞后时间更长的步骤。gydF4y2Ba
[1] Shampine, L.F. and S. Thompson,《MATLAB中求解DDEs》gydF4y2Ba应用数值数学gydF4y2Ba, Vol. 37, 2001, pp. 441-458。gydF4y2Ba
Kierzenka J L.F. Shampine和S. Thompson, "gydF4y2Ba用dde23求解时滞微分方程gydF4y2Ba”gydF4y2Ba
ddesdgydF4y2Ba
|gydF4y2BaddensdgydF4y2Ba
|gydF4y2BaddegetgydF4y2Ba
|gydF4y2BaddesetgydF4y2Ba
|gydF4y2Ba德瓦尔gydF4y2Ba