🍠Python微磁学磁倾斜和西塔规则算法

🏈指点迷津 | Brief

📜有限差分-用例

📜离散化偏微分方程求解器和模型定型 | 📜三维热传递偏微分方程解 | 📜特定资产期权价值偏微分方程计算 | 📜三维波偏微分方程空间导数计算 | 📜应力-速度公式一阶声波方程模拟二维地震波 | 📜微磁学计算磁化波动求解器、色散关系和能垒的弦法 | 📜磁倾斜导数数据平滑

📜指数衰减:🖊常微分方程数值求解器 | 🖊绘制衰减图 | 🖊绘制(正向欧拉、反向欧拉和克兰克-尼科尔森)西塔规则算法放大因子图 | 🖊泰勒级数展开符号计算三种算法误差 | 🖊模型误差、数据误差、离散化误差和舍入误差 | 🖊求解器泛化

📜Python热涨落流体力学求解算法和英伟达人工智能核评估模型

📜常微分方程用例:​Python机器人动力学和细胞酶常微分方程

✒️Python不同初始条件下热方程

有限差分法是获得偏微分和代数方程数值解的技术之一。在该方法中,解在有限网格点中以离散形式近似。

首先考虑一个偏微分方程:

ut+aux=0u_t+a u_x=0

正向时间前向空间算法由下式给出:

Vmn+1Vmnk+aVm+1nVmnh=0\frac{V_m^{n+1}-V_m^n}{k}+a \frac{V_{m+1}^n-V_m^n}{h}=0

正向时间中心空间算法由下式给出:

Vmn1Vmnk+aVmVm1n2h0\frac{V_m^{n-1}-V_m^n}{k}+a \cdot \frac{V_{m-}^{-}-V_{m-1}^n}{2 h}-0

中心时间中心空间算法由下式给出

Vmn+1Vmn12k+aVm+1nVm1n2h=0\frac{V_m^{n+1}-V_m^{n-1}}{2 k}+a \cdot \frac{V_{m+1}^n-V_{m-1}^n}{2 h}=0

让我们考虑另一个偏微分方程,

ut=buxx;b>0u_t=b u_{x x} ; \quad b>0

正向时间中心空间算法由下式给出:

Vmn+1Vmnk=bVm+1n2Vmn+Vm1nh2=0\frac{V_m^{n+1}-V_m^n}{k}=b \frac{V_{m+1}^n-2 V_m^n+V_{m-1}^n}{h^2}=0

示例:数值求解

ut=0.05uxxu_t=0.05 u_{x x}
  • uu 代表温度

  • xx 表示 0xL0 \leq x \leq L​ 的位置

  • tt 表示t>0t>0的时间

  • 边界条件为 u(t,0)=0u(t, 0)=0u(t,L)=0t>0u(t, L)=0(t>0)

  • 初始条件为 u(0,x)=sin(πx)u(0, x)=\sin (\pi x) 对于 0xL0 \leq x \leq L

  • bb 表示b>0b>0 的扩散系数

代码求解:

接上例,初始条件改为:

对于0xL0 \leq x \leq L

u(0,x)={2x if x<0.52(1x) 否则 u(0, x)= \begin{cases}2 x & \text { if } x<0.5 \\ 2(1-x) & \text { 否则 }\end{cases}

代码数值解:

Last updated

Was this helpful?