열전도 방정식의 초기값 문제 해결
열전도 방정식을 지정합니다.
In[1]:=
heqn = D[u[x, t], t] == D[u[x, t], {x, 2}];
방정식의 초기 조건을 규정합니다.
In[2]:=
ic = u[x, 0] == E^(-x^2);
초기값 문제를 해결합니다.
In[3]:=
sol = DSolveValue[{heqn, ic }, u[x, t], {x, t}]
Out[3]=
시간의 경과에 따른 열 확산을 시각화합니다.
In[4]:=
Plot[Evaluate[Table[sol, {t, 0, 4}]], {x, -5, 5}, PlotRange -> All,
Filling -> Axis]
Out[4]=
구분적 초기 데이터를 가진 열전도 방정식의 초기값 문제를 해결합니다.
In[5]:=
ic = u[x, 0] == UnitBox[x];
In[6]:=
sol = DSolveValue[{heqn, ic }, u[x, t], {x, t}]
Out[6]=
초기 데이터의 불연속성은 곧바로 매끄러워집니다.
In[7]:=
Plot3D[sol, {x, -2, 2}, {t, 0, 1}, PlotRange -> All,
PlotPoints -> 250, Mesh -> None]
Out[7]=