【问题标题】:Numerical integration of a function with values known at a given point set (finite and discrete) over an area bounded by discrete points?在由离散点包围的区域上,函数与给定点集(有限和离散)处已知值的数值积分?
【发布时间】:2011-08-27 09:29:45
【问题描述】:

令 D 为由一系列点 {x_i,y_i} (1

令 f 是定义在 D 上的函数,但我们只知道它在给定点集(有限和离散)上的值,例如 {x'_i,y'_i,f(x'_i,y'_i)} ( 1

如何进行 f 对 D 的数值积分?

这是我的想法:
1) 首先,我们应该通过这些点系列之间的线段来近似 D 的边界。
2)然后我们应该对给定的数据集做一些插值。 但是,二维插值并不总是可行的。然后我就卡住了。

你能帮忙吗?谢谢。

【问题讨论】:

    标签: numerical-methods numerical-analysis numerical-integration


    【解决方案1】:

    我会将解决方案写为轮廓积分,并在边界上的每个分段段上使用高斯或对数正交一维数值积分的总和。如果函数在曲线上的某个点是奇异的,则对数求积很有用。

    您必须知道每条分段曲线端点处的函数值。您假设一个特定的插值函数(线性开始,如果您愿意,可以使用更高阶),并通过在端点值之间进行插值来进行数值积分。

    如果你走得那么远,我建议通过将沿轮廓的曲线数量加倍并重新积分来检查收敛。如果积分值在一两次迭代后没有变化,则可以认为自己已收敛。

    如果你说你不知道曲线上任何地方的函数值,那么你就无法进行积分。

    【讨论】:

    • 嗯,边界曲线上的函数值是未知的。可以做轮廓积分吗?
    • 呃..积分是在一个区域上的,这不是一个轮廓积分。并且该函数的值在该区域的某些内部点(不在边界上)是已知的。
    【解决方案2】:

    如果你能够对你的点进行三角测量,那么工作就完成了:在每个三角形中,你知道角点处的函数值,并通过整合它

    triangle_area * (val1 + val2 + val3) / 3.0
    

    虽然凸三角剖分是一个可以使用许多工具解决的问题(例如,请查看qhull),但非凸三角剖分要困难得多。无论如何,朝这个方向挖掘可能会让您有所收获。

    【讨论】:

      猜你喜欢
      • 2017-08-16
      • 1970-01-01
      • 1970-01-01
      • 2012-02-19
      • 2021-03-16
      • 1970-01-01
      • 2015-02-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多