MATLAB 帮助中心
本页翻译不是最新的。点击此处可查看最新英文版本。
计算微分方程解结构体
y = deval(sol,x)
y = deval(x,sol)
y = deval(___,idx)
[y,yp] = deval(___)
y = deval(sol,x) 和 y = deval(x,sol) 可以计算 x 中包含的点处的微分方程问题的解 sol。
y
sol
x
示例
y = deval(___,idx) 只返回带有向量 idx 中所列索引的解分量。您可以使用前面列出的任一输入参量组合。
idx
[y,yp] = deval(___) 还会返回 yp,这是求解器生成的数值解的一阶导数。
yp
全部折叠
此示例使用 dde23 对 DDE 方程 y' = ddex1de(t,y,Z) 求解,然后绘制该解。
dde23
y' = ddex1de(t,y,Z)
使用 dde23 对方程组求解。
sol = dde23(@ddex1de, [1 0.2], @ddex1hist, [0 5]);
在区间 [0 5] 中计算 100 个点处的解。
[0 5]
x = linspace(0,5); y = deval(sol,x);
对解绘图。
plot(x,y)
此示例使用 ode45 对方程组 y' = vdp1(t,y) 求解,然后绘制该解的第一个分量。
ode45
y' = vdp1(t,y)
使用 ode45 对方程组求解。
sol = ode45(@vdp1, [0 20], [2 0]);
在区间 [0 20] 中计算 100 个点处的解的第一个分量。
[0 20]
x = linspace(0,20,100); y = deval(sol,x,1);
使用 ode23 对区间 [0,3] 内初始条件为 y0 = 0 的简单 ODE y' = t^2 求解。
ode23
y0 = 0
y' = t^2
sol = ode23(@(t,y) t^2, [0 3], 0);
计算在七个点的解。解结构体 sol 中包含一个插值函数,该函数由 deval 用来生成这些点的连续解。通过 deval 指定第二个输出参量还会返回指定点的插值函数的导数。
deval
x = linspace(0,3,7); [y,yp] = deval(sol,x)
y = 1×7 0 0.0417 0.3333 1.1250 2.6667 5.2083 9.0000
yp = 1×7 0 0.2500 1.0000 2.2500 4.0000 6.2500 9.0000
解结构体,指定为由以下微分方程求解器之一返回的结构体。
初始值问题求解器 - ode45、ode23、ode113、ode15s、ode23s、ode23t、ode23tb、ode15i
ode113
ode15s
ode23s
ode23t
ode23tb
ode15i
时滞微分方程求解器 - dde23、ddesd 或 ddensd
ddesd
ddensd
边界值问题求解器 - bvp4c 或 bvp5c
bvp4c
bvp5c
示例: sol = ode45(@myode,tspan,y0)
sol = ode45(@myode,tspan,y0)
数据类型: struct
struct
求值点,指定为向量。x 指定要求解的值的点。x 的元素必须包含在原始积分区间 [sol.x(1) sol.x(end)] 内。对于每个索引 i,解 y(:,i) 与 x(i) 相对应。
[sol.x(1) sol.x(end)]
i
y(:,i)
x(i)
示例: 0:0.1:1
0:0.1:1
示例: [2 3 5 8]
[2 3 5 8]
数据类型: single | double
single
double
要返回的解分量,指定为向量。当您只对某些解分量感兴趣时,使用此输入。
示例: y = deval(sol,x,[2 3]) 只返回第二个和第三个解分量。
y = deval(sol,x,[2 3])
插值解,以向量或矩阵形式返回。y 中的行数等于返回的解分量的数量。
对于多边界值问题,通过 bvp4c 或 bvp5c 获得的解在接口处可能不连续。对于交界点 xc,deval 函数返回 xc 左侧和右侧极限的平均值。要获得范围值,请将 x 的值设置为略大或略小于 xc。
xc
由 sol 生成的连续解的导数,以向量或矩阵形式返回。yp 的大小与 y 相同,表示由 y 中的每个解点处的 sol 使用的插值函数的斜率。
全部展开
backgroundPool
ThreadPool
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
在 R2006a 之前推出
ode45 | ode23 | ode113 | ode15s | ode23s | ode23t | ode23tb | ode15i | dde23 | ddesd | ddensd | bvp4c | bvp5c
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处