Wolfram 语言

偏微分方程

求解拉普拉斯方程的狄利克雷问题

指定二维拉普拉斯(Laplace)方程.

In[1]:=
Click for copyable input
leqn = Laplacian[u[x, y], {x, y}] == 0;

在矩形中规定方程的狄利克雷(Dirichlet)条件.

In[2]:=
Click for copyable input
\[CapitalOmega] = Rectangle[{0, 0}, {1, 2}];
In[3]:=
Click for copyable input
dcond = DirichletCondition[ u[x, y] == Piecewise[{{UnitTriangle[2 x - 1], y == 0 || y == 2}}, 0], True];

求解狄利克雷问题.

In[4]:=
Click for copyable input
sol = DSolveValue[{leqn, dcond}, u[x, y], {x, y} \[Element] \[CapitalOmega]] // FullSimplify
Out[4]=

Inactive 总和中提取前 300 项.

In[5]:=
Click for copyable input
asol = sol /. {\[Infinity] -> 300} // Activate;

在矩形上可视化方程的解.

In[6]:=
Click for copyable input
Plot3D[asol // Evaluate, {x, y} \[Element] \[CapitalOmega], PlotRange -> All, PlotTheme -> "Business"]
Out[6]=

相关范例

de en es fr ja ko pt-br ru