Wolfram Language

Ecuaciones diferenciales parciales

Estudio de la formación de una onda de choque

Utilice la ecuación de Burgers para el flujo de fluido viscoso para estudiar la formación de una onda de choque.

In[1]:=
Click for copyable input
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=

Establezca una condición inicial definida por partes.

In[2]:=
Click for copyable input
InitialCondition = u[x, 0] == Piecewise[{{1, x < 0}}];

Resuelva el problema de valor inicial.

In[3]:=
Click for copyable input
dsol = DSolveValue[{BurgersEquation, InitialCondition}, u[x, t], {x, t}]
Out[3]=

La solución es suavizada por cualquier posible valor de ϵ.

In[4]:=
Click for copyable input
Plot3D[dsol /. {\[Epsilon] -> 1/10}, {x, -2, 2}, {t, 0.001, 5}]
Out[4]=

La solución desarrolla una discontinuidad de choque en el límite cuando ϵ se aproxima a 0.

In[5]:=
Click for copyable input
Row[Table[Plot3D[dsol, {x, -2, 2}, {t, 0.001, 5}, Exclusions -> None, Ticks -> None], {\[Epsilon], {1/10, 1/100, 1/1000}}]]
Out[5]=

Ejemplos relacionados

de en fr ja ko pt-br ru zh