一階偏微分方程式の初期値と境界値の問題を解く
一階線形偏微分方程式を指定する.
In[1]:=
![Click for copyable input](assets.ja/solve-an-initial-boundary-value-problem-for-a-firs/In_40.png)
eqn = D[u[t, x], t] + D[u[t, x], x] == 0;
方程式の初期条件と境界条件を与える.
In[2]:=
![Click for copyable input](assets.ja/solve-an-initial-boundary-value-problem-for-a-firs/In_41.png)
ibc = {u[t, 0] == 0, u[0, x] == E^(-x) Sin[x]^2};
DSolveValueを使って問題を解く.
In[3]:=
![Click for copyable input](assets.ja/solve-an-initial-boundary-value-problem-for-a-firs/In_42.png)
sol = DSolveValue[{eqn, ibc}, u[t, x], {t, x}] // FullSimplify
Out[3]=
![](assets.ja/solve-an-initial-boundary-value-problem-for-a-firs/O_24.png)
解を可視化する.
In[4]:=
![Click for copyable input](assets.ja/solve-an-initial-boundary-value-problem-for-a-firs/In_43.png)
Plot3D[sol // Evaluate, {t, 0, 3}, {x, 0, 3}, Exclusions -> None]
Out[4]=
![](assets.ja/solve-an-initial-boundary-value-problem-for-a-firs/O_25.png)