This repository contains the setups and analysis code used for the paper Pelouze et al. 2023, A&A 672, A105.
This features files to simulate the propagation of kink waves through the transition region, and study their cutoff.
setups/
: PLUTO setup files (see their respective README):open_chromos_relax_2D
: 2D flux tube relaxationopen_chromos_3D
: 3D kink wave propagation
conversion/relax_2D_to_3D.py
: converts the output of the 2D relaxation runs to input files for the 3D simulations.mock/
: Python scripts that replicate some C functions from the PLUTO setup.viz/
: Python scripts to analyze simulation output and make plots:viz/paper_kink_cutoff.py
andviz/paper_vrw_av.py
: makes the plots shown in the paperviz/amplitude_altitude_cut_3D.py
computes the wave amplitude (ampl_alt_data.npz
)viz/phase_altitude_3D.py
computes the phasephase_amplitude_data.npz
files- remaining files are dependencies of the above.
-
Install Python dependencies in
requirement.txt
-
Edit simulation parameters by editing
setups/open_chromos_relax_2D/pluto.ini.j2
andsetups/open_chromos_3D/pluto.ini
. Do not change values in double curly braces ({{ }}
) inpluto.ini.j2
. Editsetup_config.yml
if you need to change them. -
Run the 2D relaxation with PLUTO:
- Initialize the simulation with field-aligned hydrostatic equilibrium:
cd setups/open_chromos_relax_2D python setup_init.py
- Run the relaxation with
mpirun -np <cpu count> ./pluto
(see e.g.genius.pbs
)
-
Convert the output of the 2D simulation to 3D with
conversion/relax_2D_to_2D.py
and place the output insetups/open_chromos_3D/initial_state
. -
Run the 3D simulation with PLUTO. Unlike the 2D relaxation, it is a standard PLUTO setup.