bvpset
创建或修改边值问题的选项结构
语法
选项= bvpset('name1',value1,'name2',value2,…)
Options = bvpset(oldopts,'name1',value1,…)
选项= bvpset(oldopts,newopts)
bvpset
描述
选项= bvpset('name1',value1,'name2',value2,…)
创建一个结构选项
可以提供给边值问题求解器bvp4c
,其中已命名的属性具有指定的值。任何未指定的属性保留其默认值。对于所有属性,只输入唯一标识属性的前导字符就足够了。bvpset
忽略属性名的大小写。
Options = bvpset(oldopts,'name1',value1,…)
改变一个现有的选项结构oldopts
.中的任何值都会被覆盖oldopts
,使用名称/值对指定,并返回修改后的结构作为输出参数。
选项= bvpset(oldopts,newopts)
结合现有的选项结构oldopts
新的期权结构newopts
.中设置的任何值newopts
中的对应值oldopts
.
bvpset
如果没有输入参数,则显示所有属性名及其可能的值,并用大括号表示默认值{}
.
你可以使用这个函数bvpget
查询选项
结构获取特定属性的值。
BVP属性
bvpset
使您能够为边值问题解决程序指定属性bvp4c
.有几种类型的属性可以设置:
容错特性
因为bvp4c
使用搭配公式,数值解是基于满足搭配方程的点的网格。网格选择和误差控制基于该解的残差,使计算得到的解年代(x)是一个不安问题的精确解决方案年代”(x) =f(x,年代(x) +res(x).在网格的每个子区间上,有一个残差的范数我
解的第Th分量,res(我)
,是估计的,并要求小于或等于公差。这个公差是相对公差和绝对公差的函数,RelTol
而且AbsTol
,由用户定义。
容错属性如下表所示。
向量化
下表描述了BVP向量化属性。的ODE函数的向量化bvp4c
与ODE求解器使用的矢量化不同:
为
bvp4c
, ODE函数必须对第一个参数以及第二个参数进行向量化,以便F([x1 x2…,[y1 y2…])
返回[(x1, y1) F (x2, y2)…]
.bvp4c
即使提供了分析雅可比矩阵,也可以从向量化中获益。对于刚性ODE求解器,当使用解析雅可比矩阵时,矢量化被忽略。
向量化属性
财产 |
价值 |
描述 |
---|---|---|
|
|
开始通知 用MATLAB®对于数组表示法,向量化ODE函数通常是一件很容易的事情。在 函数dydx = shockODE(x,y,e) pix = pi*x;Dydx = [y(2,:)…- x / e。* y(2:) -π^ 2 * cos(沥青)-沥青/ e。*罪(沥青)]; |
解析偏导数
默认情况下,bvp4c
求解器用有限差分逼近所有偏导数。bvp4c
如果你提供偏导数∂f/∂y微分方程的∂公元前/∂丫和∂公元前/∂yb,即边界条件。如果问题涉及未知参数,你还必须提供偏导数∂f/∂p和∂公元前/∂p,关于参数。
下表描述了解析偏导数的性质。
BVP解析偏导数性质
财产 |
价值 |
描述 |
---|---|---|
|
函数处理 |
计算的解析偏导数的函数句柄f(x,y).当解决y' =f(x,y),将此属性设置为 |
|
函数处理 |
计算的解析偏导数的函数句柄公元前(丫,yb).对于边界条件公元前(丫,yb),将此属性设置为 |
奇异BVPs
bvp4c
能解决奇异问题的形式吗
在区间[0,b),b> 0。对于这样的问题,指定常数矩阵年代作为价值SingularTerm
.对于这种形式的方程,odefun
仅计算f(x,y,p)项,其中p表示未知参数(如果有)。
奇异BVP性质
财产 |
价值 |
描述 |
---|---|---|
|
常数矩阵 |
单数bvp的单数术语。设为常数矩阵年代对于这种形式的方程
在区间[0,b),b> 0。 |
网格尺寸属性
bvp4c
求解一个代数方程组,以确定每个网格点上BVP的数值解。代数系统的大小取决于微分方程的数目(n
)和当前网格中的网格点数目(N
).当允许的网格点数用尽时,计算停止,bvp4c
显示警告消息并返回到目前为止找到的解决方案。这个解决方案不满足容错,但它可以为重新开始计算提供一个很好的初始猜想,以放宽容错或增加的值NMax
.
下表描述了网格大小属性。
BVP网格尺寸属性
财产 |
价值 |
描述 |
---|---|---|
|
正整数{ |
求解BVP时允许的最大网格点数,其中 |
方案统计属性
的统计数据
属性可让您查看解决方案统计信息。
下表描述了解决方案统计信息属性。
BVP解统计属性
财产 |
价值 |
描述 |
---|---|---|
|
|
是否显示计算的统计信息。如果
|
例子
创建一个选项结构,以更改的相对容错bvp4c
的默认值1 e - 3
来1的军医
,输入
options = bvpset('RelTol',1e-4);
恢复…的值“RelTol”
从选项
,输入
bvpget(options,'RelTol') ans = 1.0000 -004