我想将物理动态力学问题的输入参数更改为高斯随机变量并查看生成的概率密度函数 (PDF)。我使用有限元方法在 C++ 和 Python 语言中创建确定性代码。然而,在我去那里之前,我想首先将这种技术应用于用 python 或 C++ 编写的简单泊松问题确定性 FEM 代码。我在下面提到了我的想法。如果您以前这样做过,请通过您自己的方法帮助我。
在泊松问题中,我需要改变,即空间可变性参数,作为具有某种统计分布的 RV。让我们假设平均值为 1 和一个标准差。偏差 0.3 或任何其他方便的值。现在,我想针对参数的不同值多次运行此代码 -. 因此,假设我使用randn()Matlab/python 的函数生成了一个包含 100 个值的数组。现在,可能需要一个 shell 脚本或 python 脚本来使用这个带有for-loop 的数组并为每个值运行 FEM 代码 100 次. 循环中将如何提及确定性 FEM 代码?它将如何接受这些价值观? 有没有人有可以提供帮助的通用脚本?
我也非常感谢有关后处理的一些建议/评论。我相信输出.vtk或.pvd格式文件可用于在 Paraview 软件中创建 PDF。我对PDF的生成也有点困惑。我相信我必须在 2D 网格上选择一个点,对于每个点,我都有输出值和方向,因为它是一个二维问题。因此,我也必须选择 1 个方向。因此,我正在寻找 1 点、1 方向上的输出 PDF。那是对的吗?我不知道。
我基本上想使用正交或采样进行非侵入式多项式混沌扩展。但是,如上所述,我从蒙特卡洛开始,一步一步,所以我了解如何进行预处理和后处理。