Изучение образования ударной волны
Использовать уравнение Бюргерса для течения вязкой жидкости с целью изучения образования ударной волны.
In[1]:=
![Click for copyable input](assets.ru/study-the-formation-of-a-shock-wave/In_109.png)
TraditionalForm[BurgersEquation = \!\(
\*SubscriptBox[\(\[PartialD]\), \({t}\)]\(u[x, t]\)\) + u[x, t] \!\(
\*SubscriptBox[\(\[PartialD]\), \({x}\)]\(u[x,
t]\)\) == \[Epsilon] \!\(
\*SubscriptBox[\(\[PartialD]\), \({x, 2}\)]\(u[x, t]\)\)]
Out[1]//TraditionalForm=
![](assets.ru/study-the-formation-of-a-shock-wave/O_50.png)
Задать начальное условие.
In[2]:=
![Click for copyable input](assets.ru/study-the-formation-of-a-shock-wave/In_110.png)
InitialCondition = u[x, 0] == Piecewise[{{1, x < 0}}];
Решить начальную задачу.
In[3]:=
![Click for copyable input](assets.ru/study-the-formation-of-a-shock-wave/In_111.png)
dsol = DSolveValue[{BurgersEquation, InitialCondition},
u[x, t], {x, t}]
Out[3]=
![](assets.ru/study-the-formation-of-a-shock-wave/O_51.png)
Решение действительно для любого положительного значения ϵ.
In[4]:=
![Click for copyable input](assets.ru/study-the-formation-of-a-shock-wave/In_112.png)
Plot3D[dsol /. {\[Epsilon] -> 1/10}, {x, -2, 2}, {t, 0.001, 5}]
Out[4]=
![](assets.ru/study-the-formation-of-a-shock-wave/O_52.png)
В решении возникают шоковые разрывы в пределах, когда ϵ стремится к 0.
In[5]:=
![Click for copyable input](assets.ru/study-the-formation-of-a-shock-wave/In_113.png)
Row[Table[Plot3D[dsol, {x, -2, 2}, {t, 0.001, 5},
Exclusions -> None, Ticks -> None],
{\[Epsilon], {1/10, 1/100, 1/1000}}]]
Out[5]=
![](assets.ru/study-the-formation-of-a-shock-wave/O_53.png)