Python热涨落流体力学求解算法和英伟达人工智能核评估模型
Last updated
Was this helpful?
Last updated
Was this helpful?
Python | 算法 | 求解器 | 物理 | 微分算子 | 二维 | 波动方程 | 时间导数 | 人工智能 | 评估模型 | 热涨落
🎯平流扩散简单离散微分算子 | 🎯相场模拟:简单旋节线分解、枝晶凝固的 | 🎯求解二维波动方程,离散化时间导数
🎯英伟达 A100 人工智能核性能评估模型 | 🎯热涨落流体动力学求解及算法
将 O(h) 代入前面的方程得出
这给出了近似导数的前向差分公式为
我们说这个公式是 O(h)。
💦示例:余弦函数 f(x)=\cos (x)。我们知道\cos(x)的导数是-\sin(x)。尽管在实践中我们可能不知道我们求导的基础函数,但我们使用简单的例子来说明上述数值微分方法及其准确性。以下代码以数值方式计算导数。
如上图所示,两条曲线之间存在微小的偏移,这是由于数值导数求值时的数值误差造成的。两个数值结果之间的最大误差约为 0.05,并且预计会随着步长的增大而减小。
💦示例:以下代码使用递减步长 h 的前向差分公式计算 f(x)=\cos (x) 的数值导数。然后,它绘制近似导数和真实导数之间的最大误差与 h 的关系,如生成的图形所示。
双对数空间中直线的斜率为 1 ;因此,误差与h^1成正比,这意味着,正如预期的那样,前向差分公式为O(h)。
📜
📜
📜
📜
📜
📜
函数在点的导数定义为:
x=a 处的导数就是此时的斜率。在该斜率的有限差分近似中,我们可以使用点 附近的函数值来实现目标。不同的应用中使用了多种有限差分公式,下面介绍其中的三种,其中导数是使用两点的值计算的。
前向差分是使用连接 的线来估计 处函数的斜率:
后向差分是使用连接 和 的线来估计 处函数的斜率
中间差分是使用连接 的线来估计 处函数的斜率:
为了导出 导数的近似值 ,我们回到泰勒级数。对于任意函数,对于任意函数 , f 围绕 的泰勒级数是
如果 位于间距为 的点网格上,我们可以计算 处的泰勒级数以获得
代入 并求解 得出方程
括号中的项 被称为 的高阶项。高阶项可以重写为
其中 是某个常数, 是 的函数,当 变为 0 时,该函数也变为 0。你可以用一些代数来验证这是真的。我们使用缩写“O(h)”来表示,并且一般来说,我们使用缩写“”来表示