| Mm_octree_mg_1d | |
| Cmg_lvl_t | Lists of blocks per refinement level |
| Cmg_box_t | Box data structure |
| Cmg_buf_t | Buffer type (one is used for each pair of communicating processes) |
| Cmg_comm_t | |
| Cmg_bc_t | |
| Cmg_timer_t | |
| Cmg_t | |
| Cmg_subr_bc | To fill ghost cells near physical boundaries |
| Cmg_subr_rb | To fill ghost cells near refinement boundaries |
| Cmg_box_op | Subroutine that performs A * cc(..., i_in) = cc(..., i_out) |
| Cmg_box_gsrb | Subroutine that performs Gauss-Seidel relaxation |
| Cmg_box_prolong | Subroutine that performs prolongation to a single child |
| Cmrgrnk | |
| Mm_octree_mg_2d | |
| Cmg_lvl_t | Lists of blocks per refinement level |
| Cmg_box_t | Box data structure |
| Cmg_buf_t | Buffer type (one is used for each pair of communicating processes) |
| Cmg_comm_t | |
| Cmg_bc_t | |
| Cmg_timer_t | |
| Cmg_t | |
| Cmg_subr_bc | To fill ghost cells near physical boundaries |
| Cmg_subr_rb | To fill ghost cells near refinement boundaries |
| Cmg_box_op | Subroutine that performs A * cc(..., i_in) = cc(..., i_out) |
| Cmg_box_gsrb | Subroutine that performs Gauss-Seidel relaxation |
| Cmg_box_prolong | Subroutine that performs prolongation to a single child |
| Cmrgrnk | |
| Mm_octree_mg_3d | |
| Cmg_lvl_t | Lists of blocks per refinement level |
| Cmg_box_t | Box data structure |
| Cmg_buf_t | Buffer type (one is used for each pair of communicating processes) |
| Cmg_comm_t | |
| Cmg_bc_t | |
| Cmg_timer_t | |
| Cmg_t | |
| Cmg_subr_bc | To fill ghost cells near physical boundaries |
| Cmg_subr_rb | To fill ghost cells near refinement boundaries |
| Cmg_box_op | Subroutine that performs A * cc(..., i_in) = cc(..., i_out) |
| Cmg_box_gsrb | Subroutine that performs Gauss-Seidel relaxation |
| Cmg_box_prolong | Subroutine that performs prolongation to a single child |
| Cmrgrnk | |
| Mmod_config | Module that allows working with a configuration file |
| Ccfg_t | The configuration that contains all the variables |
| Ccfg_add | Interface to add variables to the configuration |
| Ccfg_get | Interface to get variables from the configuration |
| Ccfg_add_get | Interface to get variables from the configuration |
| Mmod_convert | |
| Csub_convert_vars | |
| Cconvert_vars_method | |
| Mmod_data_driven_boundary | Utilities for reading AMRVAC data-driven magnetic boundary frames |
| Cdata_driven_boundary_series | |
| Mmod_eos_container | EoS state container – the single thermodynamic authority for AMRVAC |
| Ceos_table_container | |
| Ceos_container | |
| Mmod_fld | Module for flux limited diffusion (FLD)-approximation in Radiation-(Magneto)hydrodynamics simulations |
| Cfld_get_var | Abstract interface for the gas-EoS getters the radiation fluid needs (same shape as thermal_conduction's get_var_subr) |
| Cfld_fluid | Radiation fluid object: gas-EoS callbacks the FLD module needs, wired by the physics module at link time (mirrors tc_fluid / rc_fluid). The instance lives in mod_(m)hd_phys and is threaded in here as fl |
| Mmod_forest | Module with basic grid data structures |
| Ctree_node_ptr | Pointer to a tree_node |
| Ctree_node | The data structure that contains information about a tree node/grid block |
| Mmod_ghostcells_update | Update ghost cells of all blocks including physical boundaries |
| Cwbuffer | |
| Cupdate_eos_bc_sub | |
| Mmod_lookup_table | A Fortran 90 module for creating 1D and 2D lookup tables. These tables can be used to efficiently interpolate one or more values |
| Clt_t | The lookup table type. There can be one or more columns, for which values can be looked up for a given 'x-coordinate' |
| Clt2_t | The 2D lookup table type |
| Clt3_t | The 3D lookup table type |
| Clt_loc_t | Type to indicate a location in the lookup table, which can be used to speed up multiple lookups of different columns |
| Clt2_loc_t | Type to indicate a location in a 2D lookup table |
| Clt3_loc_t | Type to indicate a location in a 3D lookup table |
| Mmod_magnetic_helicity | Finite-volume relative magnetic helicity on a uniform Cartesian mesh |
| Cmagnetic_helicity_config | |
| Cmagnetic_helicity_result | |
| Mmod_magnetic_reference_fv | Finite-volume potential reference field for magnetic diagnostics |
| Cmagnetic_reference_config | |
| Cmagnetic_reference_result | |
| Cmagnetic_reference_block | |
| Cmagnetic_reference_field | |
| Mmod_multigrid_coupling | Module to couple the octree-mg library to AMRVAC. This file uses the VACPP preprocessor, but its use is kept to a minimum |
| Cafter_new_tree | |
| Mmod_nlfff_diagnostics | Common user-facing diagnostics for NLFFF relaxation and extrapolation |
| Cnlfff_physical_metrics | |
| Mmod_nlfff_grad_rubin | MPI-parallel fixed-grid Grad–Rubin NLFFF extrapolation |
| Cnlfff_grad_rubin_config | |
| Cnlfff_grad_rubin_result | |
| Mmod_nlfff_optimization | Nonlinear force-free extrapolation by the weighted optimization method |
| Cnlfff_optimization_config | |
| Cnlfff_optimization_result | |
| Mmod_particle_base | Module with shared functionality for all the particle movers |
| Cparticle_ptr | |
| Cparticle_t | |
| Csub_fill_gridvars | |
| Csub_define_additional_gridvars | |
| Csub_fill_additional_gridvars | |
| Csub_integrate | |
| Cfun_destroy | |
| Mmod_phys_dict | Quick module that mimics the behaviour of python dictionaries for passing attributes around without explicit dependencies |
| Cphys_dict | |
| Mmod_physicaldata | |
| Cstate | |
| Cstate_sub | |
| Cgrid_field | |
| Cct_velocity | Velocities store for constrained transport |
| Mmod_physics | This module defines the procedures of a physics module. It contains function pointers for the various supported routines. An actual physics module has to set these pointers to its implementation of these routines |
| Csub_check_params | |
| Csub_set_mg_bounds | |
| Csub_boundary_adjust | |
| Csub_convert | |
| Csub_modify_wlr | |
| Csub_wb_transform | |
| Csub_wb_inverse | |
| Csub_wb_prolong | |
| Csub_get_cmax | |
| Csub_get_tcutoff | |
| Csub_trac_after_setdt | |
| Csub_get_v | |
| Csub_get_rho | |
| Csub_get_h_speed | |
| Csub_get_cbounds | |
| Csub_get_flux | |
| Csub_e_to_ei | |
| Csub_get_ei | |
| Csub_add_source_geom | |
| Csub_add_source | |
| Csub_global_source | Add global source terms on complete domain (potentially implicit) |
| Csub_clean_divb | Clean initial divb |
| Csub_set_equi_vars | Set equilibrium variables other than b0 (e.g. p0 and rho0) |
| Csub_special_advance | Add special advance in each advect step |
| Csub_get_dt | |
| Csub_check_w | |
| Csub_get_pthermal | |
| Csub_get_auxiliary | |
| Csub_get_auxiliary_prim | |
| Csub_get_tgas | |
| Csub_get_csrad2 | |
| Csub_get_rfactor | |
| Csub_write_info | |
| Csub_small_values | |
| Csub_get_ct_velocity | |
| Csub_update_faces | |
| Csub_face_to_center | |
| Csub_evaluate_implicit | |
| Csub_implicit_update | |
| Mmod_physics_hllc | |
| Csub_diffuse_hllcd | |
| Csub_get_lcd | |
| Csub_get_wcd | |
| Csub_hllc_init_species | |
| Mmod_physics_roe | |
| Csub_average | |
| Csub_get_eigenjump | |
| Csub_rtimes | |
| Mmod_radiative_cooling | Module radiative cooling – add optically thin radiative cooling |
| Cget_subr1 | |
| Cget_2var_subr | |
| Clocal_rho2_factor_subr | Optional local multiplier for density-squared radiative losses |
| Ceos_scalar2_func | Scalar EoS inverse, e.g. fleint_from_T(log_nH, log_T) |
| Crc_fluid | |
| Mmod_random | Module for pseudo random number generation. The internal pseudo random generator is the xoroshiro128plus method |
| Crng_t | Random number generator type, which contains the state |
| Cprng_t | Parallel random number generator type |
| Mmod_thermal_conduction | Thermal conduction for HD and MHD or RHD and RMHD or twofl (plasma-neutral) module Adaptation of mod_thermal_conduction for the mod_supertimestepping |
| Cget_var_subr | |
| Cget_2var_subr | |
| Ceos_scalar2_func | Scalar EoS inverse, e.g. eint_nH_from_T(log_nH, log_T) |
| Ctc_fluid | |
| Mmod_thermal_emission | |
| Cget_subr1 | |
| Cget_2var_subr_te | |
| Cte_fluid | |
| Cradsyn_euv_cache | |
| Mmod_trace_field | |
| Ctrace_length_result | |
| Ctrace_twist_result | |
| Ctrace_mapping_result | |
| Ctrace_qperp_result | |
| Ctrace_topology_result | |
| Mmod_usr_methods | Module with all the methods that users can customize in AMRVAC |
| Cuawsom_coefficients | |
| Cp_no_args | |
| Cinit_one_grid | Initialize one grid |
| Cspecial_bc | Special boundary types, users must assign conservative variables in boundaries |
| Cspecial_prepare_bc | |
| Cspecial_mg_bc | Special boundary type for radiation hydrodynamics module, only used to set the boundary conditions for the radiation energy |
| Cinternal_bc | Internal boundary, user defined This subroutine can be used to artificially overwrite ALL conservative variables in a user-selected region of the mesh, and thereby act as an internal boundary region. It is called just before external (ghost cell) boundary regions will be set by the BC selection. Here, you could e.g. want to introduce an extra variable (nwextra, to be distinguished from nwaux) which can be used to identify the internal boundary region location. Its effect should always be local as it acts on the mesh |
| Cprocess_grid | This subroutine is ONLY to be used for computing auxiliary variables which happen to be non-local (like div v), and are in no way used for flux computations. As auxiliaries, they are also not advanced |
| Csub_modify_io | If defined, this routine is called before writing output, and it can set/modify the variables in the w array |
| Cprocess_global | This subroutine is called at the beginning of each time step by each processor. No communication is specified, so the user has to implement MPI routines if information has to be shared |
| Cprocess_adv_grid | For processing after the advance (PIC-MHD, e.g.) |
| Cprocess_adv_global | For processing after the advance (PIC-MHD, e.g.) |
| Caux_output | This subroutine can be used in convert, to add auxiliary variables to the converted output file, for further analysis using tecplot, paraview, .... these auxiliary values need to be stored in the nw+1:nw+nwauxio slots |
| Cadd_aux_names | Add names for the auxiliary variables |
| Csource | Calculate w(iw)=w(iw)+qdt*SOURCE[wCT,qtC,x] within ixO for all indices iw=iwmin...iwmax. wCT is at time qCT |
| Cget_dt | Limit "dt" further if necessary, e.g. due to the special source terms. The getdt_courant (CFL condition) and the getdt subroutine in the AMRVACPHYS module have already been called |
| Cphys_gravity | Calculate gravitational acceleration in each dimension |
| Cphys_dust_get_3d_dragforce | Calculate the 3d drag force of gas onto dust |
| Cphys_dust_get_dt | Calculate the time step associated with the usr drag force |
| Cset_viscosity | Calculation anormal viscosity depending on space |
| Chd_pthermal | Calculation anormal pressure for hd & energy=.False |
| Crfactor | Calculation R factor for ideal gas law with partial ionization |
| Cset_adiab | Set adiabatic index |
| Cspecial_resistivity | Set the "eta" array for resistive MHD based on w or the "current" variable which has components between idirmin and 3 |
| Cspecial_opacity | Set user defined opacity for use in diffusion coeff, heating and cooling, and radiation force |
| Cspecial_fluxlimiter | Set user defined FLD flux limiter, lambda |
| Cspecial_diffcoef | Set user defined FLD diffusion coefficient |
| Crefine_grid | Enforce additional refinement or coarsening One can use the coordinate info in x and/or time qt=t_n and w(t_n) values w. you must set consistent values for integers refine/coarsen: refine = -1 enforce to not refine refine = 0 doesn't enforce anything refine = 1 enforce refinement coarsen = -1 enforce to not coarsen coarsen = 0 doesn't enforce anything coarsen = 1 enforce coarsen e.g. refine for negative first coordinate x < 0 as if (any(x(ix^S,1) < zero)) refine=1 |
| Cvar_for_errest | This is the place to compute a local auxiliary variable to be used as refinement criterion for the Lohner error estimator only -->it is then requiring and iflag>nw note that ixO=ixI=ixG, hence the term local (gradients need special attention!) |
| Cset_b0 | Here one can add a steady (time-independent) potential background field |
| Cset_j0 | Here one can add a time-independent background current density |
| Cset_equi_vars | Here one can add a steady (time-independent) equi vars |
| Ctransform_w | Adjust w when restart from dat file with different w variables |
| Ca_refine_threshold | Use different threshold in special regions for AMR to reduce/increase resolution there where nothing/something interesting happens |
| Cspecial_convert | Allow user to use their own data-postprocessing procedures |
| Cflag_grid | Flag=-1 : Treat all cells active, omit deactivation (onentry, default) flag=0 : Treat as normal domain flag=1 : Treat as passive, but reduce by safety belt flag=2 : Always treat as passive |
| Cupdate_payload | Update payload of particles |
| Ccreate_particles | Create particles |
| Ccheck_particle | Check arbitrary particle conditions or modifications |
| Cparticle_fields | Associate fields to particle |
| Cparticle_analytic | |
| Cparticle_position | User-defined particle movement |
| Cafter_refine | |
| Cinit_vector_potential | Initialize vector potential on cell edges for magnetic field |
| Cset_electric_field | |
| Cset_wlr | Allow user to specify 'variables' left and right state at physical boundaries to control flux through the boundary surface |
| Cset_surface | |
| Cset_field_w | |
| Cset_field | |
| Csub_get_heating | Calculate volumetric heating rate for TRAC broadening |