ParametricNDSolve

ParametricNDSolve[eqns,u,{x,xmin,xmax},pars]

求解常微分方程 eqns 对于函数 u 的数值解,其中自变量 x 在范围 xminxmax 内,参数为 pars.

ParametricNDSolve[eqns,u,{x,xmin,xmax},{y,ymin,ymax},pars]

在矩形区域上求解偏微分方程 eqns.

ParametricNDSolve[eqns,u,{x,y}Ω,pars]

在区域 Ω 上求解偏微分方程 eqns.

ParametricNDSolve[eqns,u,{t,tmin,tmax},{x,y}Ω,pars]

在区域 Ω 上求解时间相关偏微分方程 eqns.

ParametricNDSolve[eqns,{u1,u2,},]

求解函数 ui.

更多信息和选项

  • ParametricNDSolve 给出具有 ParametricFunction 对象的结果.
  • {pspec1,pspec2,} 的参数 pars 的规范可用于指定范围.
  • pspeci 的可能形式为:
  • pp 值为 RealsComplexes
    Element[p,Reals]p 值为 Reals
    Element[p,Complexes]p 值为 Complexes
    Element[p,{v1,}]p 具有离散值 {v1,}
    {p,pmin,pmax}p 值为
  • ParametricNDSolve[eqns,{u1,u2,},] 中,ui 可以是任意表达式. 通常,ui 间接通过微分方程的解依赖于参数,但是可能显式依赖于参数. 返回一个列表的 ParametricFunction 对象可以通过使用 ParametricNDSolve[eqns,{{u1,u2,}},] 或者使用 ParametricNDSolveValue[eqns,{u1,u2,},] 得到.
  • 由此得出关于参数的 ParametricFunction 对象的导数会尽可能地组合使用符号和数值灵敏度方法进行计算.
  • ParametricNDSolve 接受与 NDSolve 同样的选项和设置.
  • 根据方程组的类型,NDSolveParametricNDSolve 通常通过多个不同的阶段求解微分方程组. 当 Method->{s1->m1,s2->m2,} 时,阶段 si 由方法 mi 处理. 基于所要解决的问题,实际使用的阶段和顺序是由 NDSolve 决定的.
  • 可能的解阶段与 NDSolve 是一样的,但还包括:
  • "ParametricCaching"缓存计算的解
    "ParametricSensitivity"关于参数导数的计算
  • 所有选项的列表

范例

打开所有单元关闭所有单元

基本范例  (3)

获取 y 的参数解:

a 的数值值计算给出 y 的近似函数解:

计算时间为 的值:

绘制多个不同参数值的解:

获取参数 a 的函数,它给出在 时函数 f 的值:

绘制作为参数 a 的函数 f[10] 的值:

y[10]=0a 的值:

显示微分方程的解对参数的灵敏度:

关于 a 的灵敏度随着 t 的增加而增加:

关于 b 的灵敏度不随 t 而增加:

范围  (5)

参数相关性  (3)

ParametricNDSolve 返回 ParametricFunction 对象的一个替换:

获取 的解:

绘制 的解的图线:

绘制当 位于从 的范围内时的解的图线:

初始条件可以指定为参数:

的值位于从 的范围内时,绘制满足 的解的图线:

的值位于从 的范围内时,绘制满足 的解的图线:

可用参数指定微分方程的系数和边界条件:

绘制 的解, 的值从

参数灵敏度  (2)

在参数式幅度 下,求解经典谐振子:

绘制当 附近的某些值时的解的图线:

关于 的灵敏度被定义为 . 绘制 处的灵敏度图线:

时,绘制灵敏度 作为解 附近的带时的图线:

具有多个参数的微分方程的灵敏度分析:

绘制关于 处初始条件 的灵敏度:

绘制关于 处初始条件 的灵敏度:

推广和延伸  (1)

针对不同的 WorkingPrecision 值求解 , 并绘制误差:

选项  (2)

Method  (2)

ParametricCaching  (1)

不缓存解以便节约内存:

没有缓存,唯一需要的额外内存是用于处理方程组:

默认情况下是缓存最近计算的解:

有缓存时,需要的内存会更大:

ParametricSensitivity  (1)

指定不要计算灵敏度:

计算函数很快得到结果:

没有计算导数:

应用  (10)

参数扫描  (4)

求初始值 ,微分方程的解 将具有

求具有 的解:

检验结果解:

比较参数 s 的附近值:

求边界值问题 , , 的多个解. 首先考虑 的多个可能的值:

运行参数扫描,确定 的重要解:

使用上图的近似初始值:

绘制求得的解:

的所有特征值 和特征函数 ,其中 . 通过探索可能的参数值开始:

的精确解:

绘图:

的值,满足 , 的解在从 范围内有最小弧长. 首先,绘制 的值在从 0 到 1 范围内的解:

绘制 和解的弧长的关系:

对于 的最小弧长解似乎出现在 处:

求局部最小值,出现在 附近:

绘制(局部)最小弧长相应的解,以及附近的某些解的图线:

参数灵敏度  (4)

微调微分方程中的一个参数,并且查看所得的几个微调后的解:

绘制灵敏度解的图线给出质量上相同的结果:

仿真由振荡基底稳定的倒立摆:

关于振幅 a 的灵敏度 随着时间的增长而增大:

热方程 的参数相关性:

求灵敏度

绘制相应的灵敏度带的图线:

通过改变解曲面的颜色,表明 ac 的灵敏度:

求洛仑兹方程对参数的灵敏度:

参数拟合  (2)

取样微分方程的解并添加噪声:

用三角模型拟合噪声数据:

二次模型更合适:

求使微分方程的解最佳拟合数据的参数:

来自冷却体的数据,因此使用牛顿冷却定律:

属性和关系  (1)

使用 SystemModelParametricSimulate 模拟更大的分层系统模型:

用两组电阻和弹簧阻尼器参数模拟:

比较产生的角速度:

Wolfram Research (2012),ParametricNDSolve,Wolfram 语言函数,https://reference.wolfram.com/language/ref/ParametricNDSolve.html (更新于 2014 年).

文本

Wolfram Research (2012),ParametricNDSolve,Wolfram 语言函数,https://reference.wolfram.com/language/ref/ParametricNDSolve.html (更新于 2014 年).

CMS

Wolfram 语言. 2012. "ParametricNDSolve." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2014. https://reference.wolfram.com/language/ref/ParametricNDSolve.html.

APA

Wolfram 语言. (2012). ParametricNDSolve. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/ParametricNDSolve.html 年

BibTeX

@misc{reference.wolfram_2024_parametricndsolve, author="Wolfram Research", title="{ParametricNDSolve}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/ParametricNDSolve.html}", note=[Accessed: 17-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_parametricndsolve, organization={Wolfram Research}, title={ParametricNDSolve}, year={2014}, url={https://reference.wolfram.com/language/ref/ParametricNDSolve.html}, note=[Accessed: 17-November-2024 ]}