pdeDomain1D
首发版本:3.00.6.1
语法
pdeDomain1D(xGrid)
详情
用于定义一维偏微分方程(PDE)求解时的空间范围和网格划分。
在数值求解 PDE 时,需先将连续的空间离散化为独立的节点。pdeDomain1D 的作用是将指定的节点向量(xGrid)封装成求解器 pdeSolver 能够识别的“求解区域”对象。
主要应用场景:
定义计算边界:通过网格的起点和终点确定求解的物理范围。
控制计算精度:在变化剧烈的区域(如期权定价中的行权价附近)使用更密的网格,在平缓区域使用稀疏网格,从而平衡计算速度与精度。
参数
xGrid 数值向量,指定空间中的所有计算节点。
节点必须为有效的有限数值(不得包含 NULL、NaN 或 Inf),且必须严格递增。
至少包含 3 个点。通常点数越多,数值解越精确,但计算耗时也会相应增加。
网格的覆盖范围(即最大值与最小值的差值)必须为有限数值。
可使用
pdeGrid1D函数构造节点。
返回值
返回一个包含以下字段的字典(DICTIONARY):
type:STRING 标量,固定为 "structured1D"。
dim:INT 标量,固定为 1。
xGrid:DOUBLE 向量,规范化后的空间节点向量。
注意:网格的统计信息(如节点数、间距、均匀性等)不直接包含在返回的字典中,需通过 pdeInfo(domain) 函数查询。
例子
例 1. 构造均匀一维网格
// 构造 0 到 1 之间,包含 101 个节点的均匀网格
xGrid = (0..100) / 100.0
domain = pdeDomain1D(xGrid)
例 2. 构造非均匀一维网格
// 手动指定非均匀分布的节点
xGrid = 0.0 0.05 0.15 0.4 1.0
domain = pdeDomain1D(xGrid)
例 3. 配合 pdeGrid1D 使用
// 使用 sinh 方式在 100 附近加密网格
spotGrid = pdeGrid1D(0.0, 300.0, 401, "sinh", 100.0, 3.0)
domain = pdeDomain1D(spotGrid)
