MPI-AMRVAC
3.1
The MPI - Adaptive Mesh Refinement - Versatile Advection Code (development version)
|
02/10/24
Tinatin Baratashvili
To run the Icarus test case, you must follow the standard MPI-AMRVAC procedure. First, you install AMRVAC from https://amrvac.org/md_doc_installation.html.
In order to get the latest version please checkout amrvac3.2 branch:
and
Then, make sure you are in ~/icarus folder and retrieve the makefile by
and compile it with
you can run the testcase with
Note* 4 here is number of CPUs, can be modified depending on the availability of CPUs.
This run will be short, to check that it does not crash and can be finished successfully. I would recommend not modifying this amrvac.par file, instead to work with test_icarus.par file which is also uploaded in this directory. By default this testcase runs a simulation in low resolution, uniform grid, without AMR, with 5 cone CMEs. The simulation lasts 24 days and the output is saved after 14 days.
The most important files to run Icarus are the
Icarus-specific parameter list (&icarus_list) in the .par
file:
Name | Standard values | Description |
---|---|---|
amr_criterion | shock , tracing | Default AMR criteria according to Baratashvili et al. 2022 |
cme_flag | 0, 1 | 0 means no CME injection, 1 activates CME injection |
num_cmes | $\ge$ 0 | Number of CMEs to be injected. num_cmes $\le$ number of CMEs in the input cme_parameter_file |
relaxation | 14 | Duration is given in days |
cme_insertion | 0 | Duration is given in days |
cme_parameter_file | 'cme_parameters.in' | The file containing CME parameters |
magnetogram_time | '2015-06-25T01:04:00' | Magnetogram timestamp in 'YYYY-MM-DDTHH:mm:ss' format |
delta_phi | 1.2 | The correction longitude from WSA file given in radians, output of the VTK file generation python script |
Some of the settings that you could change in the .par
files are:
Name | Description |
---|---|
base_filename | Base file name for output |
tsavestart(2) | Time to start saving output 3D data [in hours] |
dtsave_dat | Time between 3D data output [in hours] |
time_max | Time when simulation ends [in hours] |
time_stepper | time discretization method, e.g., twostep, threestep, fourstep |
flux_scheme | spatial discretization method, e.g., tvd, tvdlf, hll |
limiter | which limiter to use in the spatial discretization, e.g., woodward, minmod, koren |
stretch_dim(1)=uni | When uncommented, the grid is stretched radially, when commented it is radially uniform |
stretch_uncentered=.false. | When uncommented, the grid is stretched radially, when commented it is radially uniform |
refine_max_level | The maximum number of refinement levels |
block_nx1 | 30 if uniform, 6 if radially stretched |
domain_nx1 | Domain Resolutions: 300 - low, 600 - middle, 1200 - high |
domain_nx2 | Domain Resolutions: 32 - low, 64 - middle, 126 - high |
domain_nx3 | Domain Resolutions: 96 - low, 192 - middle, 384 - high |
xprobmin1 | Lower boundary in solar radii |
xprobmax1 | Outer boundary in solar radii |
omega_frame | The rotation rate of the Sun [radian per hour] |
boundary_data_file_name | The input boundary file in the VTK format |
A complete list of parameters can be found par.md.
The additional files are uploaded to generate necessary files for Icarus.
The mangetogram timestamp should be indicated in the amrvac.par file in the icarus_list. When input_boundary_generate.vtk is run, it outputs in the terminal delta_phi value that should be adjusted in &icarus_list for variable delta_phi.