PLUTO Test Problems
4.4-patch2
|
MHD blast wave. More...
Functions | |
void | InitDomain (Data *d, Grid *grid) |
void | BackgroundField (double x1, double x2, double x3, double *B0) |
The MHD blast wave problem has been specifically designed to show the scheme ability to handle strong shock waves propagating in highly magnetized environments. Depending on the strength of the magnetic field, it can become a rather arduous test leading to unphysical densities or pressures if the divergence-free condition is not adequately controlled and the numerical scheme does not introduce proper dissipation across curved shock fronts.
In this example the initial conditions consists of a static medium with uniform density while pressure and magnetic field are given by
The values are control parameters that can be changed from
pluto.ini
using, respectively,
g_inputParam[P_IN]
g_inputParam[P_OUT]
g_inputParam[BMAG]
g_inputParam[THETA]
g_inputParam[PHI]
g_inputParam[RADIUS]
The over-pressurized region drives a blast wave delimited by an outer fast forward shock propagating (nearly) radially while magnetic field lines pile up behind the shock thus building a region of higher magnetic pressure. In these regions the shock becomes magnetically dominated and only weakly compressive ( in both cases). The inner structure is delimited by an oval-shaped slow shock adjacent to a contact discontinuity and the two fronts tend to blend together as the propagation becomes perpendicular to the field lines. The magnetic energy increases behind the fast shock and decreases downstream of the slow shock. The resulting explosion becomes highly anisotropic and magnetically confined.
The available configurations are taken by collecting different setups available in literature:
Conf. | GEOMETRY | DIM | T. STEP. | INTERP. | divB | BCK_FIELD | Ref |
---|---|---|---|---|---|---|---|
#01 | CARTESIAN | 2 | RK2 | LINEAR | CT | NO | [BS99] |
#02 | CARTESIAN | 3 | RK2 | LINEAR | CT | NO | [Z04] |
#03 | CYLINDRICAL | 2 | RK2 | LINEAR | CT | NO | [Z04] (*) |
#04 | CYLINDRICAL | 2 | RK2 | LINEAR | CT | YES | [Z04] (*) |
#05 | CARTESIAN | 3 | RK2 | LINEAR | CT | YES | [Z04] |
#06 | CARTESIAN | 3 | RK2 | LINEAR | CT | YES | [Z04] |
#07 | CARTESIAN | 3 | ChTr | PARABOLIC | CT | NO | [GS08],[MT10] |
#08 | CARTESIAN | 3 | ChTr | LINEAR | CT | NO | [GS08],[MT10] |
#09 | CARTESIAN | 2 | ChTr | LINEAR | GLM | NO | [MT10] (2D version) |
#10 | CARTESIAN | 3 | ChTr | LINEAR | GLM | NO | [GS08],[MT10] |
#11 | CARTESIAN | 3 | RK2 | LINEAR | CT | YES | [Z04] |
#12 | CARTESIAN | 3 | ChTr | LINEAR | EGLM | NO | [MT10] (**) |
(*) Setups are in different coordinates and with different orientations of magnetic field using constrained-transport MHD. (**) second version in sec. 4.7
The snapshot below show the solution for configuration #11.
This setup also works with the BACKGROUND_FIELD
spliting. In this case the initial magnetic field is assigned in the BackgroundField() function while the Init() function is used to initialize the deviation to 0.
References:
void BackgroundField | ( | double | x1, |
double | x2, | ||
double | x3, | ||
double * | B0 | ||
) |
Define the component of a static, curl-free background magnetic field.