param_io

Module

Description

$Id$

IO of init and run parameters. Subroutines here are `at the end of the food chain’, i.e. depend on all physics modules plus possibly others. Using this module is also a compact way of referring to all physics modules at once.

Quick access

Variables:

fbcx1, fbcx1_2, fbcx2, fbcx2_2, fbcy1, fbcy1_1, fbcy1_2, fbcy2, fbcy2_1, fbcy2_2, fbcz1, fbcz1_1, fbcz1_2, fbcz2, fbcz2_1, fbcz2_2, lforce_shear_bc, read_all_namelists, read_init_pars, read_run_pars, write_all_init_pars, write_all_run_pars, write_pencil_info, write_stub

Routines:

get_datadir(), get_downpars(), get_snapdir(), read_all_init_pars(), read_all_run_pars()

Needed modules

Variables

  • param_io/fbcx1 (mcom) [real,private/optional/default=0.]
  • param_io/fbcx1_2 (mcom) [real,private/optional/default=0.]
  • param_io/fbcx2 (mcom) [real,private/optional/default=0.]
  • param_io/fbcx2_2 (mcom) [real,private/optional/default=0.]
  • param_io/fbcy1 (mcom) [real,private/optional/default=0.]
  • param_io/fbcy1_1 (mcom) [real,private/optional/default=0.]
  • param_io/fbcy1_2 (mcom) [real,private/optional/default=0.]
  • param_io/fbcy2 (mcom) [real,private/optional/default=0.]
  • param_io/fbcy2_1 (mcom) [real,private/optional/default=0.]
  • param_io/fbcy2_2 (mcom) [real,private/optional/default=0.]
  • param_io/fbcz1 (mcom) [real,private/optional/default=0.]
  • param_io/fbcz1_1 (mcom) [real,private/optional/default=0.]
  • param_io/fbcz1_2 (mcom) [real,private/optional/default=0.]
  • param_io/fbcz2 (mcom) [real,private/optional/default=0.]
  • param_io/fbcz2_1 (mcom) [real,private/optional/default=0.]
  • param_io/fbcz2_2 (mcom) [real,private/optional/default=0.]
  • param_io/lforce_shear_bc [logical,private/optional/default=.true.]
  • param_io/niter_poisson [integer,private]

    dummy

  • param_io/read_all_namelists [private]
  • param_io/read_init_pars [private]
  • param_io/read_run_pars [private]
  • param_io/write_all_init_pars [public]
  • param_io/write_all_run_pars [public]
  • param_io/write_pencil_info [public]
  • param_io/write_stub [private]

Subroutines and functions

subroutine  param_io/get_datadir(dir)

Overwrite datadir from datadir.in, if that exists.

2-oct-02/wolf: coded

25-oct-02/axel: default is taken from cdata.f90 where it’s defined 14-jan-15/MR : corrected call of mpibcast_char

Parameters:

dir [character]

Use :

mpicomm (mpibcast_logical(), mpibcast_char(), mpi_comm_pencil())

Called from:

register_modules()

Call to:

parse_shell(), get_env_var(), stop_it_if_any(), warning(), parse_bc(), svn_id(), read_all_particles_init_pars(), read_all_particles_run_pars(), inverse_parse_bc(), write_initial_condition_pars(), write_streamlines_init_pars(), write_eos_init_pars(), write_hydro_init_pars(), write_density_init_pars(), write_gravity_init_pars(), write_selfgravity_init_pars(), write_poisson_init_pars(), write_energy_init_pars(), write_magnetic_init_pars(), write_lorenz_gauge_init_pars(), write_testscalar_init_pars(), write_testfield_init_pars(), write_testflow_init_pars(), write_radiation_init_pars(), write_pscalar_init_pars(), write_ascalar_init_pars(), write_chiral_init_pars(), write_chemistry_init_pars(), write_signal_init_pars(), write_dustvelocity_init_pars(), write_dustdensity_init_pars(), write_neutralvelocity_init_pars(), write_neutraldensity_init_pars(), write_cosmicray_init_pars(), write_cosmicrayflux_init_pars(), write_interstellar_init_pars(), write_shear_init_pars(), write_special_init_pars(), write_solid_cells_init_pars(), write_nscbc_init_pars(), write_polymer_init_pars(), write_pointmasses_init_pars(), write_all_particles_init_pars(), system_cmd(), read_line_from_file(), write_streamlines_run_pars(), write_eos_run_pars(), write_hydro_run_pars(), write_density_run_pars(), write_forcing_run_pars(), write_gravity_run_pars(), write_selfgravity_run_pars(), write_poisson_run_pars(), write_energy_run_pars(), write_opacity_run_pars(), write_detonate_run_pars(), write_magnetic_run_pars(), write_lorenz_gauge_run_pars(), write_testscalar_run_pars(), write_testfield_run_pars(), write_testflow_run_pars(), write_radiation_run_pars(), write_pscalar_run_pars(), write_ascalar_run_pars(), write_chiral_run_pars(), write_chemistry_run_pars(), write_dustvelocity_run_pars(), write_dustdensity_run_pars(), write_neutralvelocity_run_pars(), write_neutraldensity_run_pars(), write_cosmicray_run_pars(), write_cosmicrayflux_run_pars(), write_heatflux_run_pars(), write_interstellar_run_pars(), write_shear_run_pars(), write_testperturb_run_pars(), write_viscosity_run_pars(), write_special_run_pars(), write_shock_run_pars(), write_solid_cells_run_pars(), write_nscbc_run_pars(), write_power_spectrum_run_pars(), write_polymer_run_pars(), write_pointmasses_run_pars(), write_python_run_pars(), write_implicit_diff_run_pars(), write_training_run_pars(), write_gpu_run_pars(), write_all_particles_run_pars(), flush_file(), information()

subroutine  param_io/get_snapdir(dir)

Read directory_snap from data/directory_snap, if that exists wd: I think we should unify these into a subroutine

`overwrite_string_from_file(dir,file,label[optional])’

2-nov-02/axel: adapted from get_datadir

Parameters:

dir [character]

Called from:

register_modules()

Call to:

parse_shell(), get_env_var(), stop_it_if_any(), warning(), parse_bc(), svn_id(), read_all_particles_init_pars(), read_all_particles_run_pars(), inverse_parse_bc(), write_initial_condition_pars(), write_streamlines_init_pars(), write_eos_init_pars(), write_hydro_init_pars(), write_density_init_pars(), write_gravity_init_pars(), write_selfgravity_init_pars(), write_poisson_init_pars(), write_energy_init_pars(), write_magnetic_init_pars(), write_lorenz_gauge_init_pars(), write_testscalar_init_pars(), write_testfield_init_pars(), write_testflow_init_pars(), write_radiation_init_pars(), write_pscalar_init_pars(), write_ascalar_init_pars(), write_chiral_init_pars(), write_chemistry_init_pars(), write_signal_init_pars(), write_dustvelocity_init_pars(), write_dustdensity_init_pars(), write_neutralvelocity_init_pars(), write_neutraldensity_init_pars(), write_cosmicray_init_pars(), write_cosmicrayflux_init_pars(), write_interstellar_init_pars(), write_shear_init_pars(), write_special_init_pars(), write_solid_cells_init_pars(), write_nscbc_init_pars(), write_polymer_init_pars(), write_pointmasses_init_pars(), write_all_particles_init_pars(), system_cmd(), read_line_from_file(), write_streamlines_run_pars(), write_eos_run_pars(), write_hydro_run_pars(), write_density_run_pars(), write_forcing_run_pars(), write_gravity_run_pars(), write_selfgravity_run_pars(), write_poisson_run_pars(), write_energy_run_pars(), write_opacity_run_pars(), write_detonate_run_pars(), write_magnetic_run_pars(), write_lorenz_gauge_run_pars(), write_testscalar_run_pars(), write_testfield_run_pars(), write_testflow_run_pars(), write_radiation_run_pars(), write_pscalar_run_pars(), write_ascalar_run_pars(), write_chiral_run_pars(), write_chemistry_run_pars(), write_dustvelocity_run_pars(), write_dustdensity_run_pars(), write_neutralvelocity_run_pars(), write_neutraldensity_run_pars(), write_cosmicray_run_pars(), write_cosmicrayflux_run_pars(), write_heatflux_run_pars(), write_interstellar_run_pars(), write_shear_run_pars(), write_testperturb_run_pars(), write_viscosity_run_pars(), write_special_run_pars(), write_shock_run_pars(), write_solid_cells_run_pars(), write_nscbc_run_pars(), write_power_spectrum_run_pars(), write_polymer_run_pars(), write_pointmasses_run_pars(), write_python_run_pars(), write_implicit_diff_run_pars(), write_training_run_pars(), write_gpu_run_pars(), write_all_particles_run_pars(), flush_file(), information()

subroutine  param_io/read_all_init_pars([print])

read input parameters (done by each processor)

Now no warning is produced when somebody sets lcylindrical. “lcylindrical=T” is now outdated, use instead: “lcylinder_in_a_box=T” This renaming became necessary with the development of cylindrical coordinates which led to very similar names (coord_system=”cylindrical_coords”)

6-jul-02/axel: in case of error, print sample namelist

21-oct-03/tony: moved sample namelist stuff to a separate procedure 18-aug-15/PABourdin: reworked to simplify code and display all errors at once 19-aug-15/PABourdin: renamed from read_startpars to read_all_init_pars

Parameters:

print [logical,in,]

Use :

file_io (parallel_open(), parallel_close(), read_namelist(), parallel_file_exists()), mpicomm (stop_it_if_any()), particles_main (read_all_particles_init_pars()), syscalls (get_env_var())

Called from:

helper_loop(), reload(), gen_output(), timeloop(), check_tspec_crit_log_interval(), check_tsnap_crit_log_interval(), check_tvid_crit_log_interval(), setup_signal_files(), print_metrics(), run_start(), pc_collect, pc_configtest, pc_distribute, pc_distribute_z, pc_extract, pc_reduce, pc_tecplot, pc_tecplot_solid, start

Call to:

get_env_var(), stop_it_if_any(), warning(), parse_bc(), svn_id(), read_all_particles_init_pars(), read_all_particles_run_pars(), inverse_parse_bc(), write_initial_condition_pars(), write_streamlines_init_pars(), write_eos_init_pars(), write_hydro_init_pars(), write_density_init_pars(), write_gravity_init_pars(), write_selfgravity_init_pars(), write_poisson_init_pars(), write_energy_init_pars(), write_magnetic_init_pars(), write_lorenz_gauge_init_pars(), write_testscalar_init_pars(), write_testfield_init_pars(), write_testflow_init_pars(), write_radiation_init_pars(), write_pscalar_init_pars(), write_ascalar_init_pars(), write_chiral_init_pars(), write_chemistry_init_pars(), write_signal_init_pars(), write_dustvelocity_init_pars(), write_dustdensity_init_pars(), write_neutralvelocity_init_pars(), write_neutraldensity_init_pars(), write_cosmicray_init_pars(), write_cosmicrayflux_init_pars(), write_interstellar_init_pars(), write_shear_init_pars(), write_special_init_pars(), write_solid_cells_init_pars(), write_nscbc_init_pars(), write_polymer_init_pars(), write_pointmasses_init_pars(), write_all_particles_init_pars(), system_cmd(), read_line_from_file(), write_streamlines_run_pars(), write_eos_run_pars(), write_hydro_run_pars(), write_density_run_pars(), write_forcing_run_pars(), write_gravity_run_pars(), write_selfgravity_run_pars(), write_poisson_run_pars(), write_energy_run_pars(), write_opacity_run_pars(), write_detonate_run_pars(), write_magnetic_run_pars(), write_lorenz_gauge_run_pars(), write_testscalar_run_pars(), write_testfield_run_pars(), write_testflow_run_pars(), write_radiation_run_pars(), write_pscalar_run_pars(), write_ascalar_run_pars(), write_chiral_run_pars(), write_chemistry_run_pars(), write_dustvelocity_run_pars(), write_dustdensity_run_pars(), write_neutralvelocity_run_pars(), write_neutraldensity_run_pars(), write_cosmicray_run_pars(), write_cosmicrayflux_run_pars(), write_heatflux_run_pars(), write_interstellar_run_pars(), write_shear_run_pars(), write_testperturb_run_pars(), write_viscosity_run_pars(), write_special_run_pars(), write_shock_run_pars(), write_solid_cells_run_pars(), write_nscbc_run_pars(), write_power_spectrum_run_pars(), write_polymer_run_pars(), write_pointmasses_run_pars(), write_python_run_pars(), write_implicit_diff_run_pars(), write_training_run_pars(), write_gpu_run_pars(), write_all_particles_run_pars(), flush_file(), information()

subroutine  param_io/read_all_run_pars()

Read input parameters.

14-sep-01/axel: inserted from run.f90 31-may-02/wolf: renamed from ‘cread’ to ‘read_runpars’

6-jul-02/axel: in case of error, print sample namelist

21-oct-03/tony: moved sample namelist stuff to a separate procedure 18-aug-15/PABourdin: reworked to simplify code and display all errors at once 19-aug-15/PABourdin: renamed from ‘read_runpars’ to ‘read_all_run_pars’ 22-mar-20/MR: removed unneeded call to write_all_run_pars and corresp. param.

llogging

Use :

dustvelocity (copy_bcs_dust()), file_io (parallel_open(), parallel_close(), parallel_file_exists()), general (loptest()), mpicomm (stop_it_if_any()), particles_main (read_all_particles_run_pars()), sub (parse_bc()), syscalls (get_env_var())

Called from:

helper_loop(), reload(), gen_output(), timeloop(), check_tspec_crit_log_interval(), check_tsnap_crit_log_interval(), check_tvid_crit_log_interval(), setup_signal_files(), print_metrics(), run_start(), pc_collect, pc_configtest, pc_distribute, pc_distribute_z, pc_extract, pc_reduce, pc_tecplot, pc_tecplot_solid

Call to:

get_env_var(), stop_it_if_any(), svn_id(), parse_bc(), read_all_particles_init_pars(), read_all_particles_run_pars(), warning(), inverse_parse_bc(), write_initial_condition_pars(), write_streamlines_init_pars(), write_eos_init_pars(), write_hydro_init_pars(), write_density_init_pars(), write_gravity_init_pars(), write_selfgravity_init_pars(), write_poisson_init_pars(), write_energy_init_pars(), write_magnetic_init_pars(), write_lorenz_gauge_init_pars(), write_testscalar_init_pars(), write_testfield_init_pars(), write_testflow_init_pars(), write_radiation_init_pars(), write_pscalar_init_pars(), write_ascalar_init_pars(), write_chiral_init_pars(), write_chemistry_init_pars(), write_signal_init_pars(), write_dustvelocity_init_pars(), write_dustdensity_init_pars(), write_neutralvelocity_init_pars(), write_neutraldensity_init_pars(), write_cosmicray_init_pars(), write_cosmicrayflux_init_pars(), write_interstellar_init_pars(), write_shear_init_pars(), write_special_init_pars(), write_solid_cells_init_pars(), write_nscbc_init_pars(), write_polymer_init_pars(), write_pointmasses_init_pars(), write_all_particles_init_pars(), system_cmd(), read_line_from_file(), write_streamlines_run_pars(), write_eos_run_pars(), write_hydro_run_pars(), write_density_run_pars(), write_forcing_run_pars(), write_gravity_run_pars(), write_selfgravity_run_pars(), write_poisson_run_pars(), write_energy_run_pars(), write_opacity_run_pars(), write_detonate_run_pars(), write_magnetic_run_pars(), write_lorenz_gauge_run_pars(), write_testscalar_run_pars(), write_testfield_run_pars(), write_testflow_run_pars(), write_radiation_run_pars(), write_pscalar_run_pars(), write_ascalar_run_pars(), write_chiral_run_pars(), write_chemistry_run_pars(), write_dustvelocity_run_pars(), write_dustdensity_run_pars(), write_neutralvelocity_run_pars(), write_neutraldensity_run_pars(), write_cosmicray_run_pars(), write_cosmicrayflux_run_pars(), write_heatflux_run_pars(), write_interstellar_run_pars(), write_shear_run_pars(), write_testperturb_run_pars(), write_viscosity_run_pars(), write_special_run_pars(), write_shock_run_pars(), write_solid_cells_run_pars(), write_nscbc_run_pars(), write_power_spectrum_run_pars(), write_polymer_run_pars(), write_pointmasses_run_pars(), write_python_run_pars(), write_implicit_diff_run_pars(), write_training_run_pars(), write_gpu_run_pars(), write_all_particles_run_pars(), flush_file(), information()

subroutine  param_io/get_downpars(ind, n, ip)

Calculates start indices & lengths for downsampled output Parameters: coordinate direction, number of inner grid points, processor number

13-feb-14/MR: coded 19-aug-15/PABourdin: moved, please do not use ‘contains’ in subroutines

MR: Why not?

Parameters:
  • ind [integer,in]

  • n [integer,in]

  • ip [integer,in]

Called from:

helper_loop(), reload(), gen_output(), timeloop(), check_tspec_crit_log_interval(), check_tsnap_crit_log_interval(), check_tvid_crit_log_interval(), setup_signal_files(), print_metrics(), run_start()

Call to:

warning(), inverse_parse_bc(), write_initial_condition_pars(), write_streamlines_init_pars(), write_eos_init_pars(), write_hydro_init_pars(), write_density_init_pars(), write_gravity_init_pars(), write_selfgravity_init_pars(), write_poisson_init_pars(), write_energy_init_pars(), write_magnetic_init_pars(), write_lorenz_gauge_init_pars(), write_testscalar_init_pars(), write_testfield_init_pars(), write_testflow_init_pars(), write_radiation_init_pars(), write_pscalar_init_pars(), write_ascalar_init_pars(), write_chiral_init_pars(), write_chemistry_init_pars(), write_signal_init_pars(), write_dustvelocity_init_pars(), write_dustdensity_init_pars(), write_neutralvelocity_init_pars(), write_neutraldensity_init_pars(), write_cosmicray_init_pars(), write_cosmicrayflux_init_pars(), write_interstellar_init_pars(), write_shear_init_pars(), write_special_init_pars(), write_solid_cells_init_pars(), write_nscbc_init_pars(), write_polymer_init_pars(), write_pointmasses_init_pars(), write_all_particles_init_pars(), system_cmd(), read_line_from_file(), write_streamlines_run_pars(), write_eos_run_pars(), write_hydro_run_pars(), write_density_run_pars(), write_forcing_run_pars(), write_gravity_run_pars(), write_selfgravity_run_pars(), write_poisson_run_pars(), write_energy_run_pars(), write_opacity_run_pars(), write_detonate_run_pars(), write_magnetic_run_pars(), write_lorenz_gauge_run_pars(), write_testscalar_run_pars(), write_testfield_run_pars(), write_testflow_run_pars(), write_radiation_run_pars(), write_pscalar_run_pars(), write_ascalar_run_pars(), write_chiral_run_pars(), write_chemistry_run_pars(), write_dustvelocity_run_pars(), write_dustdensity_run_pars(), write_neutralvelocity_run_pars(), write_neutraldensity_run_pars(), write_cosmicray_run_pars(), write_cosmicrayflux_run_pars(), write_heatflux_run_pars(), write_interstellar_run_pars(), write_shear_run_pars(), write_testperturb_run_pars(), write_viscosity_run_pars(), write_special_run_pars(), write_shock_run_pars(), write_solid_cells_run_pars(), write_nscbc_run_pars(), write_power_spectrum_run_pars(), write_polymer_run_pars(), write_pointmasses_run_pars(), write_python_run_pars(), write_implicit_diff_run_pars(), write_training_run_pars(), write_gpu_run_pars(), write_all_particles_run_pars(), flush_file(), information()