diff --git a/.github/workflows/update_all_parameter_page.yml b/.github/workflows/update_all_parameter_page.yml
new file mode 100644
index 0000000000..845898a848
--- /dev/null
+++ b/.github/workflows/update_all_parameter_page.yml
@@ -0,0 +1,40 @@
+name: Update all parameters wiki page
+
+on:
+ workflow_dispatch:
+ push:
+ paths:
+ - 'example/test_problem/Template/Input__Parameter'
+ - 'tool/wiki/sync_runtime_parameter.py'
+ - 'src/Init/Init_Load_Parameter.cpp'
+
+env:
+ GIT_AUTHOR_NAME: ${{ github.actor }}
+ GIT_AUTHOR_EMAIL: ${{ secrets.MY_EMAIL }}
+
+jobs:
+ Update-all-parameters-page:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout Repo
+ uses: actions/checkout@v4
+ with:
+ token: ${{ secrets.TOKEN_FOR_WIKI }}
+ - name: run script
+ run: |
+ cd tool/wiki
+ python --version
+ python sync_runtime_parameter.py
+ - name: move markdown
+ run: |
+ mv tool/wiki/Runtime-Parameters:-All.md doc/wiki/Runtime-Parameters-related
+ - name: set git config
+ run: |
+ git config --global user.email "${{env.GIT_AUTHOR_EMAIL}}"
+ git config --global user.name "${{env.GIT_AUTHOR_NAME}}"
+ - name: make a commit and push if the file changed
+ run: |
+ git diff --exit-code doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-All.md || \
+ ( git add doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-All.md && \
+ git commit -m "[Workflow] Update all parameters wiki page" && \
+ git push )
diff --git a/doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-All.md b/doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-All.md
index d08fa3e6aa..e71adca2e9 100644
--- a/doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-All.md
+++ b/doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-All.md
@@ -1 +1,421 @@
-TBF
\ No newline at end of file
+> [!CAUTION]
+> Please do not edit this file (page) manually, since the workflow will overwrite your changes.
+
+This file (page) is automatically generated by the workflow `Update all parameters wiki page` using the script `tool/wiki/sync_runtime_parameter.py`.
+
+The workflow is triggered when changes are pushed to any of the following files:
+- `src/Init/Init_Load_Parameter.cpp`
+- `example/input/Input__Paramter`
+- `tool/wiki/sync_runtime_parameter.py`
+
+For variables with `Default/Min/Max` labeled as `Depend`, click the parameter names for more details.
+
+# Index
+[A](#A), [B](#B), [C](#C), [D](#D), [E](#E), [F](#F), [G](#G), [H](#H), [I](#I), [J](#J), [K](#K), [L](#L), [M](#M), [N](#N), [O](#O), [P](#P), [Q](#Q), [R](#R), [S](#S), [T](#T), [U](#U), [V](#V), [W](#W), [X](#X), [Y](#Y), [Z](#Z)
+
+# A
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| ANGMOM_ORIGIN_X | -1.0 | None | None | x coordinate of the origin for angular momentum (<0=auto -> BoxCenter) [-1.0] |
+| ANGMOM_ORIGIN_Y | -1.0 | None | None | y coordinate of the origin for angular momentum (<0=auto -> BoxCenter) [-1.0] |
+| ANGMOM_ORIGIN_Z | -1.0 | None | None | z coordinate of the origin for angular momentum (<0=auto -> BoxCenter) [-1.0] |
+| [[ AUTO_REDUCE_DT \| Runtime-Parameters:-Timestep#AUTO_REDUCE_DT ]] | 1 | None | None | reduce dt automatically when the program fails (for OPT__DT_LEVEL==3 only) [1] |
+| [[ AUTO_REDUCE_DT_FACTOR \| Runtime-Parameters:-Timestep#AUTO_REDUCE_DT_FACTOR ]] | 1.0 | 2.22507386e-308 | 1.0 | reduce dt by a factor of AUTO_REDUCE_DT_FACTOR when the program fails [1.0] |
+| [[ AUTO_REDUCE_DT_FACTOR_MIN \| Runtime-Parameters:-Timestep#AUTO_REDUCE_DT_FACTOR_MIN ]] | 0.1 | 0.0 | 1.0 | minimum allowed AUTO_REDUCE_DT_FACTOR after consecutive failures [0.1] |
+| [[ AUTO_REDUCE_INT_MONO_FACTOR \| Runtime-Parameters:-Timestep#AUTO_REDUCE_INT_MONO_FACTOR ]] | 0.8 | 2.22507386e-308 | 1.0 | reduce INT_MONO_COEFF(_B) by this factor together with AUTO_REDUCE_DT (1.0=off) [0.8] |
+| [[ AUTO_REDUCE_INT_MONO_MIN \| Runtime-Parameters:-Timestep#AUTO_REDUCE_INT_MONO_MIN ]] | 1.0e-2 | 0.0 | None | minimum allowed INT_MONO_COEFF(_B) after consecutive failures [1.0e-2] |
+| [[ AUTO_REDUCE_MINMOD_FACTOR \| Runtime-Parameters:-Timestep#AUTO_REDUCE_MINMOD_FACTOR ]] | 0.8 | 2.22507386e-308 | 1.0 | reduce MINMOD_COEFF by this factor together with AUTO_REDUCE_DT (1.0=off) [0.8] ##HYDRO ONLY## |
+| [[ AUTO_REDUCE_MINMOD_MIN \| Runtime-Parameters:-Timestep#AUTO_REDUCE_MINMOD_MIN ]] | 1.0e-2 | 0.0 | None | minimum allowed MINMOD_COEFF after consecutive failures [1.0e-2] ##HYDRO ONLY## |
+| [[ A_INIT \| Runtime-Parameters:-Cosmology#A_INIT ]] | -1.0 | 2.22507386e-308 | None | initial scale factor |
+
+# B
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ BOX_SIZE \| Runtime-Parameters:-General#BOX_SIZE ]] | -1.0 | 2.22507386e-308 | None | box size along the longest side (in Mpc/h if COMOVING is adopted) |
+
+# C
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ CHE_GPU_NPGROUP \| Runtime-Parameters:-GPU#CHE_GPU_NPGROUP ]] | -1 | None | None | number of patch groups sent into the CPU/GPU Grackle solver (<=0=auto) [-1] |
+| [[ COM_CEN_X \| Runtime-Parameters:-Miscellaneous#COM_CEN_X ]] | -1.0 | None | None | x coordinate as an initial guess for determining center of mass (if one of COM_CEN_X/Y/Z < 0 -> peak density position x) [-1.0] |
+| [[ COM_CEN_Y \| Runtime-Parameters:-Miscellaneous#COM_CEN_Y ]] | -1.0 | None | None | y coordinate as an initial guess for determining center of mass (if one of COM_CEN_X/Y/Z < 0 -> peak density position y) [-1.0] |
+| [[ COM_CEN_Z \| Runtime-Parameters:-Miscellaneous#COM_CEN_Z ]] | -1.0 | None | None | z coordinate as an initial guess for determining center of mass (if one of COM_CEN_X/Y/Z < 0 -> peak density position z) [-1.0] |
+| [[ COM_MAX_ITER \| Runtime-Parameters:-Miscellaneous#COM_MAX_ITER ]] | 10 | 1 | None | maximum number of iterations for determining the center of mass (must >= 1) [10] |
+| [[ COM_MAX_R \| Runtime-Parameters:-Miscellaneous#COM_MAX_R ]] | -1.0 | None | None | maximum radius for determining center of mass (<0=auto -> __FLT_MAX__) [-1.0] |
+| [[ COM_MIN_RHO \| Runtime-Parameters:-Miscellaneous#COM_MIN_RHO ]] | 0.0 | 0.0 | None | minimum density for determining center of mass (must >= 0.0) [0.0] |
+| [[ COM_TOLERR_R \| Runtime-Parameters:-Miscellaneous#COM_TOLERR_R ]] | -1.0 | None | None | maximum tolerated error of deviation in radius during the iterations of determining the center of mass (<0=auto -> amr->dh[MAX_LEVEL]) [-1.0] |
+| [[ CR_DIFF_MIN_B \| Runtime-Parameters:-Hydro#CR_DIFF_MIN_B ]] | 0.0 | None | None | disable diffusion locally when B field amplitude is smaller than this threshold (<=0=off) [0.0] ##CR_DIFFUSION only## |
+| [[ CR_DIFF_PARA \| Runtime-Parameters:-Hydro#CR_DIFF_PARA ]] | 0.0 | 0.0 | None | cosmic-ray diffusion coefficients parallel/perpendicular to the |
+| [[ CR_DIFF_PERP \| Runtime-Parameters:-Hydro#CR_DIFF_PERP ]] | 0.0 | 0.0 | None | magnetic field [0.0] ##CR_DIFFUSION only## |
+
+# D
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ DT__CR_DIFFUSION \| Runtime-Parameters:-Timestep#DT__CR_DIFFUSION ]] | 3.0e-1 | 0.0 | None | dt criterion: cosmic-ray diffusion CFL factor [0.3] ##CR_DIFFUSION only## |
+| [[ DT__FLUID \| Runtime-Parameters:-Timestep#DT__FLUID ]] | -1.0 | None | None | dt criterion: fluid solver CFL factor (<0=auto) [-1.0] |
+| [[ DT__FLUID_INIT \| Runtime-Parameters:-Timestep#DT__FLUID_INIT ]] | -1.0 | None | None | dt criterion: DT__FLUID at the first step (<0=auto) [-1.0] |
+| [[ DT__GRAVITY \| Runtime-Parameters:-Timestep#DT__GRAVITY ]] | -1.0 | None | None | dt criterion: gravity solver safety factor (<0=auto) [-1.0] |
+| DT__HYBRID_CFL | -1.0 | None | None | dt criterion: hybrid solver CFL factor (<0=auto) (diffusion) [-1.0] ## ELBDM_HYBRID ONLY## |
+| DT__HYBRID_CFL_INIT | -1.0 | None | None | dt criterion: DT__HYBRID_CFL in the first step (<0=auto) [-1.0] ## ELBDM_HYBRID ONLY## |
+| DT__HYBRID_VELOCITY | -1.0 | None | None | dt criterion: hybrid solver CFL factor (<0=auto) (Hamilton-Jacobi) [-1.0] ## ELBDM_HYBRID ONLY## |
+| DT__HYBRID_VELOCITY_INIT | -1.0 | None | None | dt criterion: DT__HYBRID_VELOCITY in the first step (<0=auto) [-1.0] ## ELBDM_HYBRID ONLY## |
+| [[ DT__MAX \| Runtime-Parameters:-Timestep#DT__MAX ]] | -1.0 | None | None | dt criterion: maximum allowed dt (<0=off) [-1.0] |
+| [[ DT__MAX_DELTA_A \| Runtime-Parameters:-Timestep#DT__MAX_DELTA_A ]] | 0.01 | 0.0 | None | dt criterion: maximum variation of the cosmic scale factor [0.01] |
+| [[ DT__PARACC \| Runtime-Parameters:-Timestep#DT__PARACC ]] | 0.5 | 0.0 | None | dt criterion: particle acceleration safety factor (0=off) [0.5] ##STORE_PAR_ACC ONLY## |
+| [[ DT__PARVEL \| Runtime-Parameters:-Timestep#DT__PARVEL ]] | 0.5 | 0.0 | None | dt criterion: particle velocity safety factor [0.5] |
+| [[ DT__PARVEL_MAX \| Runtime-Parameters:-Timestep#DT__PARVEL_MAX ]] | -1.0 | None | None | dt criterion: maximum allowed dt from particle velocity (<0=off) [-1.0] |
+| DT__PHASE | 0.0 | 0.0 | None | dt criterion: phase rotation safety factor (0=off) [0.0] ##ELBDM ONLY## |
+| [[ DT__SPEED_OF_LIGHT \| Runtime-Parameters:-Timestep#DT__SPEED_OF_LIGHT ]] | 0 | None | None | dt criterion: speed of light [0] ##SRHD ONLY## |
+| [[ DT__SYNC_CHILDREN_LV \| Runtime-Parameters:-Timestep#DT__SYNC_CHILDREN_LV ]] | 0.1 | 0.0 | 1.0 | dt criterion: allow dt to adjust by (1.0-DT__SYNC_CHILDREN) in order to synchronize with the children level (for OPT__DT_LEVEL==3 only; 0=off) [0.1] |
+| [[ DT__SYNC_PARENT_LV \| Runtime-Parameters:-Timestep#DT__SYNC_PARENT_LV ]] | 0.1 | 0.0 | None | dt criterion: allow dt to adjust by (1.0+DT__SYNC_PARENT) in order to synchronize with the parent level (for OPT__DT_LEVEL==3 only) [0.1] |
+| [[ DUAL_ENERGY_SWITCH \| Runtime-Parameters:-Hydro#DUAL_ENERGY_SWITCH ]] | 2.0e-2 | 0.0 | None | apply dual-energy if E_int/E_kin < DUAL_ENERGY_SWITCH [2.0e-2] ##DUAL_ENERGY ONLY## |
+
+# E
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| ELBDM_BASE_SPECTRAL | 0 | None | None | adopt the spectral method to evolve base-level wave function (must enable SUPPORT_FFTW) [0] |
+| ELBDM_FIRST_WAVE_LEVEL | -1 | 1 | None | level at which to switch to the wave solver (must >=1) [-1] ##ELBDM_HYBRID ONLY## |
+| ELBDM_LAMBDA | 1.0 | None | None | quartic self-interaction coefficient [1.0] ##QUARTIC_SELF_INTERACTION ONLY## |
+| ELBDM_MASS | -1.0 | 2.22507386e-308 | None | particle mass in ev/c^2 (input unit is fixed even when OPT__UNIT or COMOVING is on) |
+| ELBDM_MATCH_PHASE | 1 | None | None | match child phases with father phases during data restriction [1] ##ELBDM_HYBRID ONLY## |
+| ELBDM_PLANCK_CONST | -1.0 | None | None | reduced Planck constant (will be overwritten if OPT__UNIT or COMOVING is on) |
+| ELBDM_REMOVE_MOTION_CM | ELBDM_REMOVE_MOTION_CM_NONE | 0 | 2 | remove the motion of center-of-mass (must enable OPT__CK_CONSERVATION): (0=off, 1=init, 2=every step) [0] |
+| ELBDM_TAYLOR3_AUTO | 0 | None | None | Optimize ELBDM_TAYLOR3_COEFF automatically to minimize the damping at kmax [0] |
+| ELBDM_TAYLOR3_COEFF | 1.0/6.0 | None | None | 3rd Taylor expansion coefficient [1.0/6.0] ##USELESS if ELBDM_TAYLOR3_AUTO is on## |
+| [[ END_STEP \| Runtime-Parameters:-General#END_STEP ]] | -1L | None | None | end step (<0=auto -> must be set by test problems or restart) [-1] |
+| [[ END_T \| Runtime-Parameters:-General#END_T ]] | -1.0 | None | None | end physical time (<0=auto -> must be set by test problems or restart) [-1.0] |
+| EXT_POT_TABLE_DH_X | -1.0 | None | None | external potential table: spatial interval between adjacent x data points |
+| EXT_POT_TABLE_DH_Y | -1.0 | None | None | external potential table: spatial interval between adjacent y data points |
+| EXT_POT_TABLE_DH_Z | -1.0 | None | None | external potential table: spatial interval between adjacent z data points |
+| [[ EXT_POT_TABLE_EDGEL_X \| Runtime-Parameters:-Gravity#EXT_POT_TABLE_EDGEL_X ]] | None | None | None | external potential table: starting x coordinates |
+| [[ EXT_POT_TABLE_EDGEL_Y \| Runtime-Parameters:-Gravity#EXT_POT_TABLE_EDGEL_Y ]] | None | None | None | external potential table: starting y coordinates |
+| [[ EXT_POT_TABLE_EDGEL_Z \| Runtime-Parameters:-Gravity#EXT_POT_TABLE_EDGEL_Z ]] | None | None | None | external potential table: starting z coordinates |
+| EXT_POT_TABLE_FLOAT8 | -1 | -1 | -1 | external potential table: double precision (<0=auto -> FLOAT8, 0=off, 1=on) [-1] --> not supported yet; use -1 for now |
+| [[ EXT_POT_TABLE_NAME \| Runtime-Parameters:-Gravity#EXT_POT_TABLE_NAME ]] | None | None | None | external potential table: filename |
+| [[ EXT_POT_TABLE_NPOINT_X \| Runtime-Parameters:-Gravity#EXT_POT_TABLE_NPOINT_X ]] | -1 | None | None | external potential table: table size (i.e., number of data points) along x |
+| [[ EXT_POT_TABLE_NPOINT_Y \| Runtime-Parameters:-Gravity#EXT_POT_TABLE_NPOINT_Y ]] | -1 | None | None | external potential table: table size (i.e., number of data points) along y |
+| [[ EXT_POT_TABLE_NPOINT_Z \| Runtime-Parameters:-Gravity#EXT_POT_TABLE_NPOINT_Z ]] | -1 | None | None | external potential table: table size (i.e., number of data points) along z |
+
+# F
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ FB_LEVEL \| Runtime-Parameters:-Feedback#FB_LEVEL ]] | -1 | None | TOP_LEVEL | AMR level to apply feedback (must be MAX_LEVEL for now; <0=auto -> MAX_LEVEL) [-1] |
+| [[ FB_RSEED \| Runtime-Parameters:-Feedback#FB_RSEED ]] | 456 | 0 | None | random seed [456] |
+| [[ FB_SNE \| Runtime-Parameters:-Feedback#FB_SNE ]] | 0 | None | None | supernova explosion feedback [0] |
+| [[ FB_USER \| Runtime-Parameters:-Feedback#FB_USER ]] | 0 | None | None | user-defined feedback [0] |
+| [[ FLAG_BUFFER_SIZE \| Runtime-Parameters:-Refinement#FLAG_BUFFER_SIZE ]] | -1 | None | PS1 | number of buffer cells for the flag operation (0~PATCH_SIZE; <0=auto -> PATCH_SIZE) [-1] |
+| [[ FLAG_BUFFER_SIZE_MAXM1_LV \| Runtime-Parameters:-Refinement#FLAG_BUFFER_SIZE_MAXM1_LV ]] | -1 | None | PS1 | FLAG_BUFFER_SIZE at the level MAX_LEVEL-1 (<0=auto -> REGRID_COUNT) [-1] |
+| [[ FLAG_BUFFER_SIZE_MAXM2_LV \| Runtime-Parameters:-Refinement#FLAG_BUFFER_SIZE_MAXM2_LV ]] | -1 | None | PS1 | FLAG_BUFFER_SIZE at the level MAX_LEVEL-2 (<0=auto) [-1] |
+| [[ FLU_GPU_NPGROUP \| Runtime-Parameters:-GPU#FLU_GPU_NPGROUP ]] | -1 | None | None | number of patch groups sent into the CPU/GPU fluid solver (<=0=auto) [-1] |
+
+# G
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ GAMMA \| Runtime-Parameters:-Hydro#GAMMA ]] | Depend | Depend | Depend | ratio of specific heats (i.e., adiabatic index) [5.0/3.0] ##EOS_GAMMA ONLY## |
+| [[ GAMMA_CR \| Runtime-Parameters:-Hydro#GAMMA_CR ]] | 4.0/3.0 | 1.0 | None | effective adiabatic index of cosmic rays [4.0/3.0] |
+| [[ GFUNC_COEFF0 \| Runtime-Parameters:-Gravity#GFUNC_COEFF0 ]] | -1.0 | None | None | Green's function coefficient at the origin for the isolated BC (<0=auto) [-1.0] |
+| [[ GPU_NSTREAM \| Runtime-Parameters:-GPU#GPU_NSTREAM ]] | -1 | None | None | number of CUDA streams for the asynchronous memory copy in GPU (<=0=auto) [-1] |
+| [[ GRACKLE_ACTIVATE \| Runtime-Parameters:-Chemistry-and-Radiation#GRACKLE_ACTIVATE ]] | 1 | None | None | enable Grackle [1] |
+| GRACKLE_CIE_COOLING | 0 | None | None | 0: off; 1:on |
+| [[ GRACKLE_CLOUDY_TABLE \| Runtime-Parameters:-Chemistry-and-Radiation#GRACKLE_CLOUDY_TABLE ]] | None | None | None | "grackle_data_file" |
+| [[ GRACKLE_CMB_FLOOR \| Runtime-Parameters:-Chemistry-and-Radiation#GRACKLE_CMB_FLOOR ]] | 1 | None | None | map to "cmb_temperature_floor" [1] |
+| [[ GRACKLE_COOLING \| Runtime-Parameters:-Chemistry-and-Radiation#GRACKLE_COOLING ]] | 1 | None | None | map to "with_radiative_cooling" [1] |
+| GRACKLE_H2_OPA_APPROX | 0 | 0 | 1 | H2 opacity from Ripamonti+04; 0:off, 1:Ripomonti+04 |
+| [[ GRACKLE_METAL \| Runtime-Parameters:-Chemistry-and-Radiation#GRACKLE_METAL ]] | 0 | None | None | map to "metal_cooling" (must increase NCOMP_PASSIVE_USER by 1) [0] |
+| [[ GRACKLE_PE_HEATING \| Runtime-Parameters:-Chemistry-and-Radiation#GRACKLE_PE_HEATING ]] | 0 | None | None | map to "photoelectric_heating" [0] |
+| [[ GRACKLE_PE_HEATING_RATE \| Runtime-Parameters:-Chemistry-and-Radiation#GRACKLE_PE_HEATING_RATE ]] | 8.5e-26 | 0.0 | None | map to "photoelectric_heating_rate (in erg/cm^3/s)" [8.5e-26] |
+| [[ GRACKLE_PRIMORDIAL \| Runtime-Parameters:-Chemistry-and-Radiation#GRACKLE_PRIMORDIAL ]] | 0 | 0 | 3 | map to "primordial_chemistry" (0=Cloudy, 1/2/3=6-/9-/12-species) [0] (must increase NCOMP_PASSIVE_USER by 6/9/12, respectively) |
+| GRACKLE_THREE_BODY_RATE | 0 | 0 | 5 | used Glover+08 rate |
+| [[ GRACKLE_UV \| Runtime-Parameters:-Chemistry-and-Radiation#GRACKLE_UV ]] | 0 | None | None | map to "UVbackground" [0] |
+| [[ GRACKLE_VERBOSE \| Runtime-Parameters:-Chemistry-and-Radiation#GRACKLE_VERBOSE ]] | 1 | None | None | map to "grackle_verbose" [1] |
+
+# H
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ HUBBLE0 \| Runtime-Parameters:-Cosmology#HUBBLE0 ]] | -1.0 | 2.22507386e-308 | 1.0 | dimensionless Hubble parameter (currently only for converting ELBDM_MASS to code units) |
+
+# I
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ INIT_DUMPID \| Runtime-Parameters:-Outputs#INIT_DUMPID ]] | -1 | None | None | set the first dump ID (<0=auto) [-1] |
+| [[ INIT_SUBSAMPLING_NCELL \| Runtime-Parameters:-Initial-Conditions#INIT_SUBSAMPLING_NCELL ]] | 0 | 0 | None | perform sub-sampling during initialization: (0=off, >0=# of sub-sampling cells) [0] |
+| [[ INT_MONO_COEFF \| Runtime-Parameters:-Interpolation#INT_MONO_COEFF ]] | 2.0 | 1.0 | 4.0 | coefficient for ensuring the interpolation monotonicity (1.0~4.0) [2.0] |
+| [[ INT_MONO_COEFF_B \| Runtime-Parameters:-Interpolation#INT_MONO_COEFF_B ]] | 2.0 | 1.0 | 4.0 | coefficient for ensuring the interpolation monotonicity of B field (1.0~4.0) [2.0] ##MHD ONLY## |
+| [[ INT_OPP_SIGN_0TH_ORDER \| Runtime-Parameters:-Interpolation#INT_OPP_SIGN_0TH_ORDER ]] | Depend | Depend | Depend | switch to 0th-order interpolation if adjacent values change signs [HYDRO:1; ELBDM:0] |
+| [[ ISO_TEMP \| Runtime-Parameters:-Hydro#ISO_TEMP ]] | Depend | Depend | Depend | isothermal temperature in kelvin ##EOS_ISOTHERMAL ONLY## |
+
+# J
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ JEANS_MIN_PRES \| Runtime-Parameters:-Hydro#JEANS_MIN_PRES ]] | 0 | None | None | minimum pressure estimated from the Jeans length [0] ##HYDRO/MHD and GRAVITY ONLY## |
+| [[ JEANS_MIN_PRES_LEVEL \| Runtime-Parameters:-Hydro#JEANS_MIN_PRES_LEVEL ]] | -1 | None | NLEVEL-1 | for JEANS_MIN_PRES; ensure Jeans length is resolved by JEANS_MIN_PRES_NCELL*dh[JEANS_MIN_PRES_LEVEL] (<0=auto -> MAX_LEVEL) [-1] |
+| [[ JEANS_MIN_PRES_NCELL \| Runtime-Parameters:-Hydro#JEANS_MIN_PRES_NCELL ]] | 4 | 1 | None | for JEANS_MIN_PRES; see JEANS_MIN_PRES_LEVEL [4] |
+
+# L
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ LB_INPUT__PAR_WEIGHT \| Runtime-Parameters:-MPI-and-OpenMP#LB_INPUT__PAR_WEIGHT ]] | 0.0 | 0.0 | None | load-balance weighting of one particle over one cell [0.0] |
+| [[ LB_INPUT__WLI_MAX \| Runtime-Parameters:-MPI-and-OpenMP#LB_INPUT__WLI_MAX ]] | 0.1 | 0.0 | None | weighted-load-imbalance (WLI) threshold for redistributing all patches [0.1] |
+
+# M
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ MAX_LEVEL \| Runtime-Parameters:-Refinement#MAX_LEVEL ]] | TOP_LEVEL | 0 | TOP_LEVEL | maximum refinement level (0~NLEVEL-1) [NLEVEL-1] |
+| [[ MG_MAX_ITER \| Runtime-Parameters:-Gravity#MG_MAX_ITER ]] | -1 | None | None | maximum number of iterations in multigrid: (<0=auto) [-1] |
+| [[ MG_NPOST_SMOOTH \| Runtime-Parameters:-Gravity#MG_NPOST_SMOOTH ]] | -1 | None | None | number of post-smoothing steps in multigrid: (<0=auto) [-1] |
+| [[ MG_NPRE_SMOOTH \| Runtime-Parameters:-Gravity#MG_NPRE_SMOOTH ]] | -1 | None | None | number of pre-smoothing steps in multigrid: (<0=auto) [-1] |
+| [[ MG_TOLERATED_ERROR \| Runtime-Parameters:-Gravity#MG_TOLERATED_ERROR ]] | -1.0 | None | None | maximum tolerated error in multigrid (<0=auto) [-1.0] |
+| [[ MINMOD_COEFF \| Runtime-Parameters:-Hydro#MINMOD_COEFF ]] | 1.5 | 1.0 | 2.0 | coefficient of the generalized MinMod limiter (1.0~2.0) [1.5] |
+| [[ MINMOD_MAX_ITER \| Runtime-Parameters:-Hydro#MINMOD_MAX_ITER ]] | 0 | 0 | None | maximum number of iterations to reduce MINMOD_COEFF when data reconstruction fails (0=off) [0] |
+| [[ MIN_DENS \| Runtime-Parameters:-Hydro#MIN_DENS ]] | 0.0 | 0.0 | None | minimum mass density (must >= 0.0) [0.0] ##HYDRO, MHD, and ELBDM ONLY## |
+| [[ MIN_EINT \| Runtime-Parameters:-Hydro#MIN_EINT ]] | 0.0 | 0.0 | None | minimum internal energy (must >= 0.0) [0.0] ##HYDRO and MHD ONLY## |
+| MIN_ENTR | 0.0 | 0.0 | None | minimum entropy (must >= 0.0) [0.0] ##HYDRO and MHD ONLY## |
+| [[ MIN_PRES \| Runtime-Parameters:-Hydro#MIN_PRES ]] | 0.0 | 0.0 | None | minimum pressure (must >= 0.0) [0.0] ##HYDRO and MHD ONLY## |
+| MIN_TEMP | 0.0 | 0.0 | None | minimum temperature in K (must >= 0.0) [0.0] ##HYDRO and MHD ONLY## |
+| [[ MOLECULAR_WEIGHT \| Runtime-Parameters:-Hydro#MOLECULAR_WEIGHT ]] | 0.6 | 2.22507386e-308 | None | mean molecular weight [0.6] |
+| [[ MONO_MAX_ITER \| Runtime-Parameters:-Interpolation#MONO_MAX_ITER ]] | 10 | 0 | None | maximum number of iterations to reduce INT_MONO_COEFF when interpolation fails (0=off) [10] |
+| [[ MU_NORM \| Runtime-Parameters:-Hydro#MU_NORM ]] | -1.0 | None | None | normalization of MOLECULAR_WEIGHT (<0=m_H, 0=amu, >0=input manually) [-1.0] |
+
+# N
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ NEWTON_G \| Runtime-Parameters:-Gravity#NEWTON_G ]] | -1.0 | None | None | gravitational constant (will be overwritten if OPT__UNIT or COMOVING is on) |
+| [[ NX0_TOT_X \| Runtime-Parameters:-General#NX0_TOT_X ]] | -1 | PS2 | None | number of base-level cells along x |
+| [[ NX0_TOT_Y \| Runtime-Parameters:-General#NX0_TOT_Y ]] | -1 | PS2 | None | number of base-level cells along y |
+| [[ NX0_TOT_Z \| Runtime-Parameters:-General#NX0_TOT_Z ]] | -1 | PS2 | None | number of base-level cells along z |
+
+# O
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ OMEGA_M0 \| Runtime-Parameters:-Cosmology#OMEGA_M0 ]] | -1.0 | 0.0 | 1.0 | omega matter at the present time |
+| [[ OMP_NTHREAD \| Runtime-Parameters:-MPI-and-OpenMP#OMP_NTHREAD ]] | -1 | None | None | number of OpenMP threads (<=0=auto) [-1] ##OPENMP ONLY## |
+| [[ OPT__1ST_FLUX_CORR \| Runtime-Parameters:-Hydro#OPT__1ST_FLUX_CORR ]] | -1 | None | 2 | correct unphysical results (defined by MIN_DENS/PRES) by the 1st-order fluxes: (<0=auto, 0=off, 1=3D, 2=3D+1D) [-1] ##MHM/MHM_RP/CTU ONLY## |
+| [[ OPT__1ST_FLUX_CORR_SCHEME \| Runtime-Parameters:-Hydro#OPT__1ST_FLUX_CORR_SCHEME ]] | Depend | Depend | Depend | Riemann solver for OPT__1ST_FLUX_CORR (-1=auto, 0=none, 1=Roe, 2=HLLC, 3=HLLE, 4=HLLD) [-1] |
+| [[ OPT__BC_FLU_XM \| Runtime-Parameters:-Hydro#OPT__BC_FLU_XM ]] | -1 | 1 | 5 | fluid boundary condition at the -x face: (1=periodic, 2=outflow, 3=reflecting, 4=user, 5=diode) ##2/3/5 for HYDRO ONLY## |
+| [[ OPT__BC_FLU_XP \| Runtime-Parameters:-Hydro#OPT__BC_FLU_XP ]] | -1 | 1 | 5 | fluid boundary condition at the +x face: (1=periodic, 2=outflow, 3=reflecting, 4=user, 5=diode) ##2/3/5 for HYDRO ONLY## |
+| [[ OPT__BC_FLU_YM \| Runtime-Parameters:-Hydro#OPT__BC_FLU_YM ]] | -1 | 1 | 5 | fluid boundary condition at the -y face: (1=periodic, 2=outflow, 3=reflecting, 4=user, 5=diode) ##2/3/5 for HYDRO ONLY## |
+| [[ OPT__BC_FLU_YP \| Runtime-Parameters:-Hydro#OPT__BC_FLU_YP ]] | -1 | 1 | 5 | fluid boundary condition at the +y face: (1=periodic, 2=outflow, 3=reflecting, 4=user, 5=diode) ##2/3/5 for HYDRO ONLY## |
+| [[ OPT__BC_FLU_ZM \| Runtime-Parameters:-Hydro#OPT__BC_FLU_ZM ]] | -1 | 1 | 5 | fluid boundary condition at the -z face: (1=periodic, 2=outflow, 3=reflecting, 4=user, 5=diode) ##2/3/5 for HYDRO ONLY## |
+| [[ OPT__BC_FLU_ZP \| Runtime-Parameters:-Hydro#OPT__BC_FLU_ZP ]] | -1 | 1 | 5 | fluid boundary condition at the +z face: (1=periodic, 2=outflow, 3=reflecting, 4=user, 5=diode) ##2/3/5 for HYDRO ONLY## |
+| [[ OPT__BC_POT \| Runtime-Parameters:-Gravity#OPT__BC_POT ]] | -1 | 1 | 2 | gravity boundary condition: (1=periodic, 2=isolated) |
+| [[ OPT__CHECK_PRES_AFTER_FLU \| Runtime-Parameters:-Hydro#OPT__CHECK_PRES_AFTER_FLU ]] | -1 | None | 1 | check unphysical pressure at the end of the fluid solver (<0=auto) [-1] |
+| [[ OPT__CK_CONSERVATION \| Runtime-Parameters:-Miscellaneous#OPT__CK_CONSERVATION ]] | 0 | None | None | check the conservation law [0] |
+| [[ OPT__CK_DIVERGENCE_B \| Runtime-Parameters:-Miscellaneous#OPT__CK_DIVERGENCE_B ]] | 0 | 0 | 2 | check the divergence-free constraint on B field (0=off, 1=on, 2=on+verbose) [0] ##MHD ONLY## |
+| [[ OPT__CK_FINITE \| Runtime-Parameters:-Miscellaneous#OPT__CK_FINITE ]] | 0 | None | None | check if all variables are finite [0] |
+| [[ OPT__CK_FLUX_ALLOCATE \| Runtime-Parameters:-Miscellaneous#OPT__CK_FLUX_ALLOCATE ]] | 0 | None | None | check if all flux arrays are properly allocated [0] ##HYDRO and ELBDM ONLY## |
+| [[ OPT__CK_INPUT_FLUID \| Runtime-Parameters:-Miscellaneous#OPT__CK_INPUT_FLUID ]] | 0 | None | None | check the input data of the fluid solver [0] |
+| [[ OPT__CK_INTERFACE_B \| Runtime-Parameters:-Miscellaneous#OPT__CK_INTERFACE_B ]] | 0 | None | None | check the consistency of patch interface B field [0] ##MHD ONLY## |
+| [[ OPT__CK_MEMFREE \| Runtime-Parameters:-Miscellaneous#OPT__CK_MEMFREE ]] | 1.0 | 0.0 | None | check the free memory in GB (0=off, >0=threshold) [1.0] |
+| [[ OPT__CK_NEGATIVE \| Runtime-Parameters:-Miscellaneous#OPT__CK_NEGATIVE ]] | 0 | 0 | 3 | check the negative values: (0=off, 1=density, 2=pressure and entropy, 3=both) [0] ##HYDRO ONLY## |
+| [[ OPT__CK_NORMALIZE_PASSIVE \| Runtime-Parameters:-Miscellaneous#OPT__CK_NORMALIZE_PASSIVE ]] | 0 | None | None | check the normalization of passive scalars [0] ##OPT__NORMALIZE_PASSIVE ONLY## |
+| [[ OPT__CK_PARTICLE \| Runtime-Parameters:-Miscellaneous#OPT__CK_PARTICLE ]] | 0 | None | None | check the particle allocation [0] |
+| [[ OPT__CK_PATCH_ALLOCATE \| Runtime-Parameters:-Miscellaneous#OPT__CK_PATCH_ALLOCATE ]] | 0 | None | None | check if all patches are properly allocated [0] |
+| [[ OPT__CK_PROPER_NESTING \| Runtime-Parameters:-Miscellaneous#OPT__CK_PROPER_NESTING ]] | 0 | None | None | check the proper-nesting condition [0] |
+| [[ OPT__CK_REFINE \| Runtime-Parameters:-Miscellaneous#OPT__CK_REFINE ]] | 0 | None | None | check the grid refinement [0] |
+| [[ OPT__CK_RESTRICT \| Runtime-Parameters:-Miscellaneous#OPT__CK_RESTRICT ]] | 0 | None | None | check the data restriction [0] |
+| [[ OPT__CORR_AFTER_ALL_SYNC \| Runtime-Parameters:-Hydro#OPT__CORR_AFTER_ALL_SYNC ]] | -1 | None | None | apply various corrections after all levels are synchronized (see "Flu_CorrAfterAllSync"): (-1=auto, 0=off, 1=every step, 2=before dump) [-1] |
+| [[ OPT__DT_LEVEL \| Runtime-Parameters:-Timestep#OPT__DT_LEVEL ]] | 3 | 1 | 3 | dt at different AMR levels (1=shared, 2=differ by two, 3=flexible) [3] |
+| [[ OPT__DT_USER \| Runtime-Parameters:-Timestep#OPT__DT_USER ]] | 0 | None | None | dt criterion: user-defined -> edit "Mis_GetTimeStep_UserCriteria.cpp" [0] |
+| [[ OPT__EXT_ACC \| Runtime-Parameters:-Gravity#OPT__EXT_ACC ]] | 0 | 0 | 1 | add external acceleration (0=off, 1=function, 2=table) [0] ##HYDRO ONLY## --> 2 (table) is not supported yet |
+| [[ OPT__EXT_POT \| Runtime-Parameters:-Gravity#OPT__EXT_POT ]] | 0 | 0 | 2 | add external potential (0=off, 1=function, 2=table) [0] --> for 2 (table), edit the corresponding parameters below too |
+| [[ OPT__FFTW_STARTUP \| Runtime-Parameters:-Initial-Conditions#OPT__FFTW_STARTUP ]] | Depend | Depend | Depend | initialise fftw plans: (-1=auto, 0=ESTIMATE, 1=MEASURE, 2=PATIENT (only FFTW3)) [-1] |
+| [[ OPT__FIXUP_ELECTRIC \| Runtime-Parameters:-Hydro#OPT__FIXUP_ELECTRIC ]] | 1 | None | None | correct coarse grids by the fine-grid boundary electric field [1] ##MHD ONLY## |
+| [[ OPT__FIXUP_FLUX \| Runtime-Parameters:-Hydro#OPT__FIXUP_FLUX ]] | Depend | Depend | Depend | correct coarse grids by the fine-grid boundary fluxes [1] ##HYDRO and ELBDM ONLY## |
+| [[ OPT__FIXUP_RESTRICT \| Runtime-Parameters:-Hydro#OPT__FIXUP_RESTRICT ]] | 1 | None | None | correct coarse grids by averaging the fine-grid data [1] |
+| [[ OPT__FLAG_CRAY \| Runtime-Parameters:-Refinement#OPT__FLAG_CRAY ]] | 0 | None | None | flag: cosmic-ray energy (Input__Flag_CRay) [0] ##COSMIC_RAY ONLY## |
+| [[ OPT__FLAG_CURRENT \| Runtime-Parameters:-Refinement#OPT__FLAG_CURRENT ]] | 0 | None | None | flag: current density in MHD (Input__Flag_Current) [0] ##MHD ONLY## |
+| OPT__FLAG_ENGY_DENSITY | 0 | None | None | flag: energy density (Input_Flag_EngyDensity) [0] ##ELBDM ONLY## |
+| OPT__FLAG_INTERFERENCE | 0 | None | None | flag: interference level (Input__Flag_Interference) [0] ##ELBDM ONLY## |
+| [[ OPT__FLAG_JEANS \| Runtime-Parameters:-Refinement#OPT__FLAG_JEANS ]] | 0 | None | None | flag: Jeans length (Input__Flag_Jeans) [0] ##HYDRO ONLY## |
+| [[ OPT__FLAG_LOHNER_CRAY \| Runtime-Parameters:-Refinement#OPT__FLAG_LOHNER_CRAY ]] | 0 | None | None | flag: Lohner for cosmic-ray energy (Input__Flag_Lohner) [0] ##COSMIC_RAY ONLY## |
+| [[ OPT__FLAG_LOHNER_DENS \| Runtime-Parameters:-Refinement#OPT__FLAG_LOHNER_DENS ]] | 0 | None | None | flag: Lohner for mass density (Input__Flag_Lohner) [0] ##BOTH HYDRO AND ELBDM## |
+| [[ OPT__FLAG_LOHNER_ENGY \| Runtime-Parameters:-Refinement#OPT__FLAG_LOHNER_ENGY ]] | 0 | None | None | flag: Lohner for energy density (Input__Flag_Lohner) [0] ##HYDRO ONLY## |
+| [[ OPT__FLAG_LOHNER_ENTR \| Runtime-Parameters:-Refinement#OPT__FLAG_LOHNER_ENTR ]] | 0 | None | None | flag: Lohner for entropy (Input__Flag_Lohner) [0] ##HYDRO ONLY## |
+| [[ OPT__FLAG_LOHNER_FORM \| Runtime-Parameters:-Refinement#OPT__FLAG_LOHNER_FORM ]] | LOHNER_FLASH2 | 1 | 4 | form of Lohner: (1=FLASH-1, 2=FLASH-2, 3=form-invariant-1, 4=form-invariant-2) [2] |
+| [[ OPT__FLAG_LOHNER_PRES \| Runtime-Parameters:-Refinement#OPT__FLAG_LOHNER_PRES ]] | 0 | None | None | flag: Lohner for pressure (Input__Flag_Lohner) [0] ##HYDRO ONLY## |
+| [[ OPT__FLAG_LOHNER_TEMP \| Runtime-Parameters:-Refinement#OPT__FLAG_LOHNER_TEMP ]] | 0 | None | None | flag: Lohner for temperature (Input__Flag_Lohner) [0] ##HYDRO ONLY## |
+| [[ OPT__FLAG_LRTZ_GRADIENT \| Runtime-Parameters:-Refinement#OPT__FLAG_LRTZ_GRADIENT ]] | 0 | None | None | flag: Lorentz factor gradient (Input__Flag_LrtzGradient) [0] ##SRHD ONLY## |
+| [[ OPT__FLAG_NPAR_CELL \| Runtime-Parameters:-Refinement#OPT__FLAG_NPAR_CELL ]] | 0 | None | None | flag: # of particles per cell (Input__Flag_NParCell) [0] |
+| [[ OPT__FLAG_NPAR_PATCH \| Runtime-Parameters:-Refinement#OPT__FLAG_NPAR_PATCH ]] | 0 | 0 | 2 | flag: # of particles per patch (Input__Flag_NParPatch): (0=off, 1=itself, 2=itself+siblings) [0] |
+| [[ OPT__FLAG_PAR_MASS_CELL \| Runtime-Parameters:-Refinement#OPT__FLAG_PAR_MASS_CELL ]] | 0 | None | None | flag: total particle mass per cell (Input__Flag_ParMassCell) [0] |
+| [[ OPT__FLAG_PRES_GRADIENT \| Runtime-Parameters:-Refinement#OPT__FLAG_PRES_GRADIENT ]] | 0 | None | None | flag: pressure gradient (Input__Flag_PresGradient) [0] ##HYDRO ONLY## |
+| [[ OPT__FLAG_REGION \| Runtime-Parameters:-Refinement#OPT__FLAG_REGION ]] | 0 | None | None | flag: specify the regions **allowed** to be refined -> edit "Flag_Region.cpp" [0] |
+| [[ OPT__FLAG_RHO \| Runtime-Parameters:-Refinement#OPT__FLAG_RHO ]] | 0 | None | None | flag: density (Input__Flag_Rho) [0] |
+| [[ OPT__FLAG_RHO_GRADIENT \| Runtime-Parameters:-Refinement#OPT__FLAG_RHO_GRADIENT ]] | 0 | None | None | flag: density gradient (Input__Flag_RhoGradient) [0] |
+| OPT__FLAG_SPECTRAL | 0 | None | None | flag: spectral refinement (Input__Flag_Spectral) [0] ##ELBDM ONLY## |
+| OPT__FLAG_SPECTRAL_N | 2 | 1 | 14 | number of pol. coefficients to use for spectral refinement [2] ##ELBDM ONLY## |
+| [[ OPT__FLAG_USER \| Runtime-Parameters:-Refinement#OPT__FLAG_USER ]] | 0 | None | None | flag: user-defined (Input__Flag_User) -> edit "Flag_User.cpp" [0] |
+| [[ OPT__FLAG_USER_NUM \| Runtime-Parameters:-Refinement#OPT__FLAG_USER_NUM ]] | 1 | 1 | None | number of threshold values in user-defined table (Input__Flag_User) [1] |
+| [[ OPT__FLAG_VORTICITY \| Runtime-Parameters:-Refinement#OPT__FLAG_VORTICITY ]] | 0 | None | None | flag: vorticity (Input__Flag_Vorticity) [0] ##HYDRO ONLY## |
+| [[ OPT__FLU_INT_SCHEME \| Runtime-Parameters:-Interpolation#OPT__FLU_INT_SCHEME ]] | INT_DEFAULT | None | None | ghost-zone fluid variables for the fluid solver [-1] |
+| [[ OPT__FREEZE_FLUID \| Runtime-Parameters:-Hydro#OPT__FREEZE_FLUID ]] | 0 | None | None | do not evolve fluid at all [0] |
+| [[ OPT__FREEZE_PAR \| Runtime-Parameters:-Particles#OPT__FREEZE_PAR ]] | 0 | None | None | do not update particles (except for tracers) [0] |
+| [[ OPT__GPUID_SELECT \| Runtime-Parameters:-GPU#OPT__GPUID_SELECT ]] | -1 | -3 | None | GPU ID selection mode: (-3=Laohu, -2=CUDA, -1=MPI rank, >=0=input) [-1] |
+| OPT__GRAVITY_EXTRA_MASS | 0 | None | None | add extra mass source when computing gravity [0] |
+| [[ OPT__GRA_INT_SCHEME \| Runtime-Parameters:-Interpolation#OPT__GRA_INT_SCHEME ]] | INT_CQUAD | 1 | 7 | ghost-zone potential for the gravity solver (for UNSPLIT_GRAVITY as well) [4] |
+| [[ OPT__GRA_P5_GRADIENT \| Runtime-Parameters:-Gravity#OPT__GRA_P5_GRADIENT ]] | 0 | None | None | 5-points gradient in the Gravity solver (must have GRA/USG_GHOST_SIZE_G>=2) [0] |
+| [[ OPT__INIT \| Runtime-Parameters:-Initial-Conditions#OPT__INIT ]] | -1 | 1 | 3 | initialization option: (1=FUNCTION, 2=RESTART, 3=FILE->"UM_IC") |
+| [[ OPT__INIT_BFIELD_BYVECPOT \| Runtime-Parameters:-Initial-Conditions#OPT__INIT_BFIELD_BYVECPOT ]] | INIT_MAG_BYVECPOT_NONE | 0 | 2 | initialize the magnetic field from vector potential (0=off, 1=external disk file named "B_IC", see tool/inits/gen_vec_pot.py for example, 2=function) [0] ##MHD ONLY## |
+| [[ OPT__INIT_GRID_WITH_OMP \| Runtime-Parameters:-MPI-and-OpenMP#OPT__INIT_GRID_WITH_OMP ]] | 1 | None | None | enable OpenMP when assigning the initial condition of each grid patch [1] |
+| [[ OPT__INIT_RESTRICT \| Runtime-Parameters:-Initial-Conditions#OPT__INIT_RESTRICT ]] | 1 | None | None | restrict all data during the initialization [1] |
+| [[ OPT__INT_FRAC_PASSIVE_LR \| Runtime-Parameters:-Hydro#OPT__INT_FRAC_PASSIVE_LR ]] | 1 | None | None | convert specified passive scalars to mass fraction during data reconstruction [1] |
+| OPT__INT_PHASE | 1 | None | None | interpolation on phase (does not support MinMod-1D) [1] ##ELBDM ONLY## |
+| [[ OPT__INT_PRIM \| Runtime-Parameters:-Interpolation#OPT__INT_PRIM ]] | 1 | None | None | switch to primitive variables when the interpolation on conserved variables fails [1] ##HYDRO ONLY## |
+| [[ OPT__INT_TIME \| Runtime-Parameters:-Interpolation#OPT__INT_TIME ]] | 1 | None | None | perform "temporal" interpolation for OPT__DT_LEVEL == 2/3 [1] |
+| [[ OPT__LAST_RESORT_FLOOR \| Runtime-Parameters:-Hydro#OPT__LAST_RESORT_FLOOR ]] | 1 | None | None | apply floor values as the last resort when the fluid solver fails [1] ##HYDRO and MHD ONLY## |
+| OPT__LB_EXCHANGE_FATHER | Depend | Depend | Depend | exchange all cells of all father patches during load balancing (must enable for hybrid scheme + MPI) [0 usually, 1 for ELBDM_HYBRID] ## ELBDM_HYBRID ONLY### |
+| [[ OPT__LR_LIMITER \| Runtime-Parameters:-Hydro#OPT__LR_LIMITER ]] | LR_LIMITER_DEFAULT | -1 | 7 | slope limiter of data reconstruction in the MHM/MHM_RP/CTU schemes: (-1=auto, 0=none, 1=vanLeer, 2=generalized MinMod, 3=vanAlbada, 4=vanLeer+generalized MinMod, 6=central, 7=Athena) [-1] |
+| [[ OPT__MAG_INT_SCHEME \| Runtime-Parameters:-Interpolation#OPT__MAG_INT_SCHEME ]] | INT_CQUAD | None | None | ghost-zone magnetic field for the MHD solver (2,3,4,6 only) [4] |
+| [[ OPT__MANUAL_CONTROL \| Runtime-Parameters:-Miscellaneous#OPT__MANUAL_CONTROL ]] | 1 | None | None | support manually dump data, stop run, or pause run during the runtime (by generating the file DUMP_GAMER_DUMP, STOP_GAMER_STOP, PAUSE_GAMER_PAUSE, respectively) [1] |
+| [[ OPT__MEMORY_POOL \| Runtime-Parameters:-Refinement#OPT__MEMORY_POOL ]] | 0 | None | None | preallocate patches for OPT__REUSE_MEMORY=1/2 (Input__MemoryPool) [0] |
+| [[ OPT__MINIMIZE_MPI_BARRIER \| Runtime-Parameters:-MPI-and-OpenMP#OPT__MINIMIZE_MPI_BARRIER ]] | 0 | None | None | minimize MPI barriers to improve load balance, especially with particles [0] (STORE_POT_GHOST, PAR_IMPROVE_ACC=1, OPT__TIMING_BARRIER=0 only; recommend AUTO_REDUCE_DT=0) |
+| [[ OPT__NORMALIZE_PASSIVE \| Runtime-Parameters:-Hydro#OPT__NORMALIZE_PASSIVE ]] | 1 | None | None | ensure "sum(passive_scalar_density) == gas_density" [1] |
+| [[ OPT__NO_FLAG_NEAR_BOUNDARY \| Runtime-Parameters:-Refinement#OPT__NO_FLAG_NEAR_BOUNDARY ]] | 0 | None | None | flag: disallow refinement near the boundaries [0] |
+| [[ OPT__OPTIMIZE_AGGRESSIVE \| Runtime-Parameters:-Miscellaneous#OPT__OPTIMIZE_AGGRESSIVE ]] | 0 | None | None | apply aggressive optimizations (experimental) [0] |
+| [[ OPT__OUTPUT_3VELOCITY \| Runtime-Parameters:-Outputs#OPT__OUTPUT_3VELOCITY ]] | 0 | None | None | output 3-velocities [0] ##SRHD ONLY## |
+| [[ OPT__OUTPUT_BASE \| Runtime-Parameters:-Outputs#OPT__OUTPUT_BASE ]] | 0 | None | None | only output the base-level data [0] ##OPT__OUTPUT_PART ONLY## |
+| [[ OPT__OUTPUT_BASEPS \| Runtime-Parameters:-Outputs#OPT__OUTPUT_BASEPS ]] | 0 | None | None | output the base-level power spectrum [0] |
+| [[ OPT__OUTPUT_CC_MAG \| Runtime-Parameters:-Outputs#OPT__OUTPUT_CC_MAG ]] | 1 | None | None | output **cell-centered** magnetic field (necessary for yt analysis) [1] ##MHD ONLY## |
+| [[ OPT__OUTPUT_CS \| Runtime-Parameters:-Outputs#OPT__OUTPUT_CS ]] | 0 | None | None | output sound speed [0] ##HYDRO ONLY## |
+| [[ OPT__OUTPUT_DIVMAG \| Runtime-Parameters:-Outputs#OPT__OUTPUT_DIVMAG ]] | 0 | None | None | output |divergence(B)*dh/|B|| [0] ##MHD ONLY## |
+| [[ OPT__OUTPUT_DIVVEL \| Runtime-Parameters:-Outputs#OPT__OUTPUT_DIVVEL ]] | 0 | None | None | output divergence(velocity) [0] ##HYDRO ONLY## |
+| [[ OPT__OUTPUT_ENTHALPY \| Runtime-Parameters:-Outputs#OPT__OUTPUT_ENTHALPY ]] | 1 | None | None | output reduced enthalpy [1] ##SRHD ONLY## |
+| [[ OPT__OUTPUT_ENTR \| Runtime-Parameters:-Outputs#OPT__OUTPUT_ENTR ]] | 0 | None | None | output gas entropy [0] ##HYDRO ONLY## |
+| [[ OPT__OUTPUT_LORENTZ \| Runtime-Parameters:-Outputs#OPT__OUTPUT_LORENTZ ]] | 0 | None | None | output Lorentz factor [0] ##SRHD ONLY## |
+| [[ OPT__OUTPUT_MACH \| Runtime-Parameters:-Outputs#OPT__OUTPUT_MACH ]] | 0 | None | None | output mach number [0] ##HYDRO ONLY## |
+| [[ OPT__OUTPUT_MODE \| Runtime-Parameters:-Outputs#OPT__OUTPUT_MODE ]] | -1 | 1 | 3 | (1=const step, 2=const dt, 3=dump table) -> edit "Input__DumpTable" for 3 |
+| [[ OPT__OUTPUT_PART \| Runtime-Parameters:-Outputs#OPT__OUTPUT_PART ]] | 0 | 0 | 7 | output a single line or slice: (0=off, 1=xy, 2=yz, 3=xz, 4=x, 5=y, 6=z, 7=diag) [0] |
+| [[ OPT__OUTPUT_PAR_DENS \| Runtime-Parameters:-Outputs#OPT__OUTPUT_PAR_DENS ]] | PAR_OUTPUT_DENS_PAR_ONLY | 0 | 2 | output the particle or total mass density on grids: (0=off, 1=particle mass density, 2=total mass density) [1] ##OPT__OUTPUT_TOTAL ONLY## |
+| [[ OPT__OUTPUT_PAR_MESH \| Runtime-Parameters:-Outputs#OPT__OUTPUT_PAR_MESH ]] | Depend | Depend | Depend | output the attributes of tracer particles mapped from mesh quantities -> edit "Input__Par_Mesh" [1] ##PARTICLE ONLY## |
+| [[ OPT__OUTPUT_PAR_MODE \| Runtime-Parameters:-Outputs#OPT__OUTPUT_PAR_MODE ]] | 0 | 0 | 2 | output the particle data: (0=off, 1=text-file, 2=C-binary) [0] ##PARTICLE ONLY## |
+| [[ OPT__OUTPUT_POT \| Runtime-Parameters:-Outputs#OPT__OUTPUT_POT ]] | 1 | None | None | output gravitational potential [1] ##OPT__OUTPUT_TOTAL ONLY## |
+| [[ OPT__OUTPUT_PRES \| Runtime-Parameters:-Outputs#OPT__OUTPUT_PRES ]] | 0 | None | None | output gas pressure [0] ##HYDRO ONLY## |
+| [[ OPT__OUTPUT_RESTART \| Runtime-Parameters:-Outputs#OPT__OUTPUT_RESTART ]] | 0 | None | None | output data immediately after restart [0] |
+| [[ OPT__OUTPUT_TEMP \| Runtime-Parameters:-Outputs#OPT__OUTPUT_TEMP ]] | OutTempDefault | None | None | output gas temperature [0 (HD) or 1 (SRHD)] ##HYDRO ONLY## |
+| [[ OPT__OUTPUT_TEXT_FORMAT_FLT \| Runtime-Parameters:-Outputs#OPT__OUTPUT_TEXT_FORMAT_FLT ]] | "%24.16e" | None | None | string format of output text files [%24.16e] |
+| [[ OPT__OUTPUT_TOTAL \| Runtime-Parameters:-Outputs#OPT__OUTPUT_TOTAL ]] | 1 | 0 | 2 | output the simulation snapshot: (0=off, 1=HDF5, 2=C-binary) [1] |
+| [[ OPT__OUTPUT_USER \| Runtime-Parameters:-Outputs#OPT__OUTPUT_USER ]] | 0 | None | None | output the user-specified data -> edit "Output_User.cpp" [0] |
+| [[ OPT__OUTPUT_USER_FIELD \| Runtime-Parameters:-Outputs#OPT__OUTPUT_USER_FIELD ]] | 0 | None | None | output user-defined derived fields [0] -> edit "Flu_DerivedField_User.cpp" |
+| OPT__OVERLAP_MPI | 0 | None | None | overlap MPI communication with CPU/GPU computations [0] ##NOT SUPPORTED YET## |
+| [[ OPT__PARTICLE_COUNT \| Runtime-Parameters:-Refinement#OPT__PARTICLE_COUNT ]] | 1 | 0 | 2 | record the # of particles at each level: (0=off, 1=every step, 2=every sub-step) [1] |
+| [[ OPT__PATCH_COUNT \| Runtime-Parameters:-Refinement#OPT__PATCH_COUNT ]] | 1 | 0 | 2 | record the # of patches at each level: (0=off, 1=every step, 2=every sub-step) [1] |
+| [[ OPT__POT_INT_SCHEME \| Runtime-Parameters:-Interpolation#OPT__POT_INT_SCHEME ]] | INT_CQUAD | 4 | 5 | ghost-zone potential for the Poisson solver (only supports 4 & 5) [4] |
+| [[ OPT__RECORD_CENTER \| Runtime-Parameters:-Miscellaneous#OPT__RECORD_CENTER ]] | 0 | None | None | record the position of maximum density, minimum potential, and center of mass [0] |
+| [[ OPT__RECORD_DT \| Runtime-Parameters:-Timestep#OPT__RECORD_DT ]] | 1 | None | None | record info of the dt determination [1] |
+| [[ OPT__RECORD_LOAD_BALANCE \| Runtime-Parameters:-MPI-and-OpenMP#OPT__RECORD_LOAD_BALANCE ]] | 1 | None | None | record the load-balance info [1] |
+| [[ OPT__RECORD_MEMORY \| Runtime-Parameters:-Miscellaneous#OPT__RECORD_MEMORY ]] | 1 | None | None | record the memory consumption [1] |
+| [[ OPT__RECORD_NOTE \| Runtime-Parameters:-Miscellaneous#OPT__RECORD_NOTE ]] | 1 | None | None | take notes for the general simulation info [1] |
+| [[ OPT__RECORD_PERFORMANCE \| Runtime-Parameters:-Miscellaneous#OPT__RECORD_PERFORMANCE ]] | 1 | None | None | record the code performance [1] |
+| [[ OPT__RECORD_UNPHY \| Runtime-Parameters:-Miscellaneous#OPT__RECORD_UNPHY ]] | 1 | None | None | record the number of cells with unphysical results being corrected [1] |
+| [[ OPT__RECORD_USER \| Runtime-Parameters:-Miscellaneous#OPT__RECORD_USER ]] | 0 | None | None | record the user-specified info -> edit "Aux_Record_User.cpp" [0] |
+| [[ OPT__REF_FLU_INT_SCHEME \| Runtime-Parameters:-Interpolation#OPT__REF_FLU_INT_SCHEME ]] | INT_DEFAULT | None | None | newly allocated fluid variables during grid refinement [-1] |
+| [[ OPT__REF_MAG_INT_SCHEME \| Runtime-Parameters:-Interpolation#OPT__REF_MAG_INT_SCHEME ]] | INT_CQUAD | None | None | newly allocated magnetic field during grid refinement (2,3,4,6 only) [4] |
+| [[ OPT__REF_POT_INT_SCHEME \| Runtime-Parameters:-Interpolation#OPT__REF_POT_INT_SCHEME ]] | INT_CQUAD | 1 | 7 | newly allocated potential during grid refinement [4] |
+| [[ OPT__RESET_FLUID \| Runtime-Parameters:-Hydro#OPT__RESET_FLUID ]] | 0 | None | None | reset fluid variables after each update -> edit "Flu_ResetByUser.cpp" [0] |
+| [[ OPT__RESET_FLUID_INIT \| Runtime-Parameters:-Hydro#OPT__RESET_FLUID_INIT ]] | -1 | None | None | reset fluid variables during initialization (<0=auto -> OPT__RESET_FLUID, 0=off, 1=on) [-1] |
+| [[ OPT__RESTART_RESET \| Runtime-Parameters:-Initial-Conditions#OPT__RESTART_RESET ]] | 0 | None | None | reset some simulation status parameters (e.g., current step and time) during restart [0] |
+| OPT__RES_PHASE | 0 | None | None | restriction on phase [0] ##ELBDM ONLY## |
+| [[ OPT__REUSE_MEMORY \| Runtime-Parameters:-Refinement#OPT__REUSE_MEMORY ]] | 2 | 0 | 2 | reuse patch memory to reduce memory fragmentation: (0=off, 1=on, 2=aggressive) [2] |
+| [[ OPT__RHO_INT_SCHEME \| Runtime-Parameters:-Interpolation#OPT__RHO_INT_SCHEME ]] | INT_CQUAD | 1 | 7 | ghost-zone mass density for the Poisson solver [4] |
+| [[ OPT__SAME_INTERFACE_B \| Runtime-Parameters:-Hydro#OPT__SAME_INTERFACE_B ]] | 0 | None | None | ensure B field consistency on the shared interfaces between sibling patches (for debugging) [0] ##MHD ONLY## |
+| [[ OPT__SELF_GRAVITY \| Runtime-Parameters:-Gravity#OPT__SELF_GRAVITY ]] | 1 | None | None | add self-gravity [1] |
+| [[ OPT__SORT_PATCH_BY_LBIDX \| Runtime-Parameters:-Miscellaneous#OPT__SORT_PATCH_BY_LBIDX ]] | Depend | Depend | Depend | sort patches to improve bitwise reproducibility [SERIAL:0, LOAD_BALACNE:1] |
+| [[ OPT__TIMING_BALANCE \| Runtime-Parameters:-Miscellaneous#OPT__TIMING_BALANCE ]] | 0 | None | None | record the max/min elapsed time in various code sections for checking load balance [0] |
+| [[ OPT__TIMING_BARRIER \| Runtime-Parameters:-Miscellaneous#OPT__TIMING_BARRIER ]] | -1 | None | None | synchronize before timing -> more accurate, but may slow down the run (<0=auto) [-1] |
+| [[ OPT__TIMING_MPI \| Runtime-Parameters:-Miscellaneous#OPT__TIMING_MPI ]] | 0 | None | None | record the MPI bandwidth achieved in various code sections [0] ##LOAD_BALANCE ONLY## |
+| [[ OPT__UM_IC_DOWNGRADE \| Runtime-Parameters:-Initial-Conditions#OPT__UM_IC_DOWNGRADE ]] | 1 | None | None | downgrade UM_IC from level OPT__UM_IC_LEVEL to 0 [1] |
+| [[ OPT__UM_IC_FLOAT8 \| Runtime-Parameters:-Initial-Conditions#OPT__UM_IC_FLOAT8 ]] | -1 | None | 1 | floating-point precision for UM_IC (<0: default, 0: single, 1: double) [default: same as FLOAT8] |
+| [[ OPT__UM_IC_FORMAT \| Runtime-Parameters:-Initial-Conditions#OPT__UM_IC_FORMAT ]] | UM_IC_FORMAT_VZYX | 1 | 2 | data format of UM_IC: (1=vzyx, 2=zyxv; row-major and v=field) [1] |
+| [[ OPT__UM_IC_LEVEL \| Runtime-Parameters:-Initial-Conditions#OPT__UM_IC_LEVEL ]] | 0 | 0 | TOP_LEVEL | starting AMR level in UM_IC [0] |
+| [[ OPT__UM_IC_LOAD_NRANK \| Runtime-Parameters:-Initial-Conditions#OPT__UM_IC_LOAD_NRANK ]] | 1 | 1 | None | number of parallel I/O (i.e., number of MPI ranks) for loading UM_IC [1] |
+| [[ OPT__UM_IC_NLEVEL \| Runtime-Parameters:-Initial-Conditions#OPT__UM_IC_NLEVEL ]] | 1 | 1 | None | number of AMR levels UM_IC [1] --> edit "Input__UM_IC_RefineRegion" if >1 |
+| [[ OPT__UM_IC_NVAR \| Runtime-Parameters:-Initial-Conditions#OPT__UM_IC_NVAR ]] | Depend | Depend | Depend | number of variables in UM_IC: (1~NCOMP_TOTAL; <=0=auto) [HYDRO=5+passive/ELBDM=2] |
+| [[ OPT__UM_IC_REFINE \| Runtime-Parameters:-Initial-Conditions#OPT__UM_IC_REFINE ]] | 1 | None | None | refine UM_IC from level OPT__UM_IC_LEVEL to MAX_LEVEL [1] |
+| [[ OPT__UNIT \| Runtime-Parameters:-Units#OPT__UNIT ]] | 0 | None | None | specify code units -> must set exactly 3 basic units below [0] ##USELESS FOR COMOVING## |
+| [[ OPT__VERBOSE \| Runtime-Parameters:-Miscellaneous#OPT__VERBOSE ]] | 0 | None | None | output the simulation progress in detail [0] |
+| [[ OUTPUT_DT \| Runtime-Parameters:-Outputs#OUTPUT_DT ]] | -1.0 | None | None | output data every OUTPUT_DT time interval ##OPT__OUTPUT_MODE==2 ONLY## |
+| [[ OUTPUT_PART_X \| Runtime-Parameters:-Outputs#OUTPUT_PART_X ]] | -1.0 | None | None | x coordinate for OPT__OUTPUT_PART [-1.0] |
+| [[ OUTPUT_PART_Y \| Runtime-Parameters:-Outputs#OUTPUT_PART_Y ]] | -1.0 | None | None | y coordinate for OPT__OUTPUT_PART [-1.0] |
+| [[ OUTPUT_PART_Z \| Runtime-Parameters:-Outputs#OUTPUT_PART_Z ]] | -1.0 | None | None | z coordinate for OPT__OUTPUT_PART [-1.0] |
+| [[ OUTPUT_STEP \| Runtime-Parameters:-Outputs#OUTPUT_STEP ]] | -1 | None | None | output data every OUTPUT_STEP step ##OPT__OUTPUT_MODE==1 ONLY## |
+| [[ OUTPUT_WALLTIME \| Runtime-Parameters:-Outputs#OUTPUT_WALLTIME ]] | -1.0 | None | None | output data every OUTPUT_WALLTIME walltime (<=0.0=off) [-1.0] |
+| [[ OUTPUT_WALLTIME_UNIT \| Runtime-Parameters:-Outputs#OUTPUT_WALLTIME_UNIT ]] | 0 | 0 | 3 | unit of OUTPUT_WALLTIME (0=second, 1=minute, 2=hour, 3=day) [0] |
+
+# P
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ PAR_IC_FLOAT8 \| Runtime-Parameters:-Particles#PAR_IC_FLOAT8 ]] | -1 | None | 1 | floating-point precision for PAR_IC (<0: default, 0: single, 1: double) [default: same as FLOAT8_PAR] |
+| [[ PAR_IC_FORMAT \| Runtime-Parameters:-Particles#PAR_IC_FORMAT ]] | PAR_IC_FORMAT_ATT_ID | 1 | 2 | data format of PAR_IC: (1=[attribute][id], 2=[id][attribute]; row-major) [1] |
+| [[ PAR_IC_MASS \| Runtime-Parameters:-Particles#PAR_IC_MASS ]] | -1.0 | None | None | mass of all particles for PAR_INIT==3 (<0=off) [-1.0] |
+| [[ PAR_IC_TYPE \| Runtime-Parameters:-Particles#PAR_IC_TYPE ]] | -1 | None | PAR_NTYPE-1 | type of all particles for PAR_INIT==3 (<0=off) [-1] |
+| [[ PAR_IMPROVE_ACC \| Runtime-Parameters:-Particles#PAR_IMPROVE_ACC ]] | 1 | None | None | improve force accuracy at patch boundaries [1] ##STORE_POT_GHOST and PAR_INTERP=2/3 ONLY## |
+| [[ PAR_INIT \| Runtime-Parameters:-Particles#PAR_INIT ]] | -1 | 1 | 3 | initialization option for particles: (1=FUNCTION, 2=RESTART, 3=FILE->"PAR_IC") |
+| [[ PAR_INTEG \| Runtime-Parameters:-Particles#PAR_INTEG ]] | PAR_INTEG_KDK | 1 | 2 | particle integration scheme: (1=Euler, 2=KDK) [2] |
+| [[ PAR_INTERP \| Runtime-Parameters:-Particles#PAR_INTERP ]] | PAR_INTERP_CIC | 1 | 3 | particle interpolation scheme: (1=NGP, 2=CIC, 3=TSC) [2] |
+| [[ PAR_NPAR \| Runtime-Parameters:-Particles#PAR_NPAR ]] | -1L | None | None | total number of particles (must be set for PAR_INIT==1/3; must be an integer) |
+| [[ PAR_PREDICT_POS \| Runtime-Parameters:-Particles#PAR_PREDICT_POS ]] | 1 | None | None | predict particle position during mass assignment [1] |
+| [[ PAR_REMOVE_CELL \| Runtime-Parameters:-Particles#PAR_REMOVE_CELL ]] | -1.0 | None | None | remove particles X-root-cells from the boundaries (non-periodic BC only; <0=auto) [-1.0] |
+| [[ PAR_TR_INTEG \| Runtime-Parameters:-Particles#PAR_TR_INTEG ]] | TRACER_INTEG_RK2 | 1 | 2 | tracer particle integration scheme: (1=Euler, 2=RK2) [2] |
+| [[ PAR_TR_INTERP \| Runtime-Parameters:-Particles#PAR_TR_INTERP ]] | PAR_INTERP_TSC | 1 | 3 | tracer particle interpolation scheme: (1=NGP, 2=CIC, 3=TSC) [3] |
+| PAR_TR_VEL_CORR | 0 | None | None | correct tracer particle velocities in regions of discontinuous flow [0] |
+| [[ POT_GPU_NPGROUP \| Runtime-Parameters:-GPU#POT_GPU_NPGROUP ]] | -1 | None | None | number of patch groups sent into the CPU/GPU Poisson solver (<=0=auto) [-1] |
+
+# R
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ REFINE_NLEVEL \| Runtime-Parameters:-Refinement#REFINE_NLEVEL ]] | 1 | 1 | None | number of new AMR levels to be created at once during refinement [1] |
+| [[ REGRID_COUNT \| Runtime-Parameters:-Refinement#REGRID_COUNT ]] | 4 | 1 | None | refine every REGRID_COUNT sub-step [4] |
+| [[ RESTART_LOAD_NRANK \| Runtime-Parameters:-Initial-Conditions#RESTART_LOAD_NRANK ]] | 1 | 1 | None | number of parallel I/O (i.e., number of MPI ranks) for restart [1] |
+
+# S
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ SF_CREATE_STAR_DET_RANDOM \| Runtime-Parameters:-Star-Formation#SF_CREATE_STAR_DET_RANDOM ]] | -1 | None | None | make random numbers deterministic (i.e., independent of OpenMP and MPI, <0=auto) [-1] |
+| [[ SF_CREATE_STAR_MASS_EFF \| Runtime-Parameters:-Star-Formation#SF_CREATE_STAR_MASS_EFF ]] | 1.0e-2 | 2.22507386e-308 | 1.0 | Gas-to-star mass conversion efficiency [1.0e-2] |
+| [[ SF_CREATE_STAR_MAX_STAR_MFRAC \| Runtime-Parameters:-Star-Formation#SF_CREATE_STAR_MAX_STAR_MFRAC ]] | 0.5 | 2.22507386e-308 | 1.0 | maximum gas mass fraction allowed to convert to stars per substep [0.5] |
+| SF_CREATE_STAR_MIN_GAS_DENS | 1.0e1 | 0.0 | None | minimum gas density allowed to form stars (in HI count/cm^3) [1.0e1] |
+| [[ SF_CREATE_STAR_MIN_LEVEL \| Runtime-Parameters:-Star-Formation#SF_CREATE_STAR_MIN_LEVEL ]] | 0 | None | TOP_LEVEL | minimum AMR level allowed to form stars (<0=auto -> MAX_LEVEL) [0] |
+| [[ SF_CREATE_STAR_MIN_STAR_MASS \| Runtime-Parameters:-Star-Formation#SF_CREATE_STAR_MIN_STAR_MASS ]] | 0.0 | 0.0 | None | minimum star particle mass for the stochastical star formation (in Msun) [0.0] |
+| [[ SF_CREATE_STAR_RSEED \| Runtime-Parameters:-Star-Formation#SF_CREATE_STAR_RSEED ]] | 123 | 0 | None | random seed [123] |
+| [[ SF_CREATE_STAR_SCHEME \| Runtime-Parameters:-Star-Formation#SF_CREATE_STAR_SCHEME ]] | 0 | 0 | 1 | star formation schemes (0=off, 1=AGORA) [0] |
+| [[ SOR_MAX_ITER \| Runtime-Parameters:-Gravity#SOR_MAX_ITER ]] | -1 | None | None | maximum number of iterations in SOR: (<0=auto) [-1] |
+| [[ SOR_MIN_ITER \| Runtime-Parameters:-Gravity#SOR_MIN_ITER ]] | -1 | None | None | minimum number of iterations in SOR: (<0=auto) [-1] |
+| [[ SOR_OMEGA \| Runtime-Parameters:-Gravity#SOR_OMEGA ]] | -1.0 | None | None | over-relaxation parameter in SOR: (<0=auto) [-1.0] |
+| SPEC_INT_GHOST_BOUNDARY | 4 | 1 | None | ghost boundary size for spectral interpolation [4] ##ELBDM & SUPPORT_SPECTRAL_INT ONLY## |
+| SPEC_INT_TABLE_PATH | None | None | None | path to tables for spectral interpolation ##ELBDM & SUPPORT_SPECTRAL_INT ONLY## |
+| SPEC_INT_VORTEX_THRESHOLD | 0.1 | 0.0 | None | vortex detection threshold for SPEC_INT_XY_INSTEAD_DEPHA [0.1] ##ELBDM & SUPPORT_SPECTRAL_INT ONLY## |
+| SPEC_INT_XY_INSTEAD_DEPHA | 1 | None | None | interpolate x and y (real and imaginary parts in current implementation) around vortices instead of density and phase for the spectral interpolation, which has the advantage of being well-defined across vortices [1] ##ELBDM & SUPPORT_SPECTRAL_INT ONLY## |
+| SRC_DELEPTONIZATION | 0 | None | None | deleptonization (for simulations of stellar core collapse) [0] ##HYDRO ONLY## |
+| SRC_GPU_NPGROUP | -1 | None | None | number of patch groups sent into the CPU/GPU source-term solver (<=0=auto) [-1] |
+| SRC_USER | 0 | None | None | user-defined source terms -> edit "Src_User.cpp" [0] |
+
+# T
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ TESTPROB_ID \| Runtime-Parameters:-General#TESTPROB_ID ]] | 0 | 0 | None | test problem ID [0]
0: none
1: HYDRO blast wave [+MHD]
2: HYDRO acoustic wave
3: HYDRO Bondi accretion (+GRAVITY)
4: HYDRO cluster merger vs. Flash (+GRAVITY & PARTICLE)
5: HYDRO AGORA isolated galaxy (+GRAVITY & PARTICLE & STAR_FORMATION & GRACKLE)
6: HYDRO caustic wave
7: HYDRO spherical collapse (+GRAVITY & COMOVING)
8: HYDRO Kelvin Helmholtz instability
9: HYDRO Riemann problems [+MHD]
10: HYDRO jet(s)
11: HYDRO Plummer cloud(s) (+GRAVITY & PARTICLE)
12: HYDRO gravity (+GRAVITY)
13: HYDRO MHD Arnold-Beltrami-Childress (ABC) flow (+MHD)
14: HYDRO MHD Orszag-Tang vortex (+MHD)
15: HYDRO MHD linear wave (+MHD)
16: HYDRO Jeans instability (+GRAVITY) [+MHD]
17: HYDRO particle in equilibrium (+GRAVITY & PARTICLE)
19: HYDRO energy power spectrum
20: HYDRO MHD Cosmic Ray Soundwave
21: HYDRO MHD Cosmic Ray Shocktube
23: HYDRO MHD Cosmic Ray Diffusion
100: HYDRO CDM cosmological simulation (+GRAVITY & COMOVING & PARTICLE)
101: HYDRO Zeldovich pancake collapse (+GRAVITY & COMOVING & PARTICLE)
1000: ELBDM external potential (+GRAVITY)
1001: ELBDM Jeans instability in the comoving frame (+GRAVITY, +COMOVING)
1002: ELBDM Jeans instability in the physical frame (+GRAVITY)
1003: ELBDM soliton merger (+GRAVITY)
1004: ELBDM self-similar halo (+GRAVITY, +COMOVING)
1005: ELBDM rotating vortex pair
1006: ELBDM vortex pair in linear motion
1007: ELBDM halo extracted from a large-scale structure simulation (+GRAVITY)
1008: ELBDM 1D Gaussian wave packet
1009: ELBDM large-scale structure simulation (+GRAVITY, +COMOVING)
1010: ELBDM plane wave
1011: ELBDM small wave perturbations on homogeneous background |
+
+# U
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| [[ UNIT_D \| Runtime-Parameters:-Units#UNIT_D ]] | -1.0 | None | None | mass density unit (<=0 -> set to UNIT_M/UNIT_L^3) [-1.0] |
+| [[ UNIT_L \| Runtime-Parameters:-Units#UNIT_L ]] | -1.0 | None | None | length unit (<=0 -> set to UNIT_V*UNIT_T or (UNIT_M/UNIT_D)^(1/3)) [-1.0] |
+| [[ UNIT_M \| Runtime-Parameters:-Units#UNIT_M ]] | -1.0 | None | None | mass unit (<=0 -> set to UNIT_D*UNIT_L^3) [-1.0] |
+| [[ UNIT_T \| Runtime-Parameters:-Units#UNIT_T ]] | -1.0 | None | None | time unit (<=0 -> set to UNIT_L/UNIT_V) [-1.0] |
+| [[ UNIT_V \| Runtime-Parameters:-Units#UNIT_V ]] | -1.0 | None | None | velocity unit (<=0 -> set to UNIT_L/UNIT_T) [-1.0] |
+
+# Y
+| Name | Default | Min | Max | Short description |
+| :--- | :--- | :--- | :--- | :--- |
+| YT_FIG_BASENAME | None | None | None | figure basename [Fig] |
+| YT_JUPYTER_USE_CONNECTION_FILE | 0 | None | None | use user-provided connection file when using libyt Jupyter UI [0] |
+| YT_SCRIPT | None | None | None | yt inline analysis script (do not include the ".py" file extension) |
+| YT_VERBOSE | 1 | 0 | 3 | verbose level of yt (0=off, 1=info, 2=warning, 3=debug) [1] |
+
+
+## Remarks
+
+
+
+
+## Links
+* [[Main page of Runtime Parameters | Runtime Parameters]]
diff --git a/doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Input__Parameter.md b/doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Input__Parameter.md
index 5fd727f5cb..4d61bb5a22 100644
--- a/doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Input__Parameter.md
+++ b/doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Input__Parameter.md
@@ -5,7 +5,7 @@ This page includes the following topics:
## Parameter List
-* [[All]]
+* [[All | Runtime-Parameters:-All]]
-- List all parameters in alphabetical order
* [[General | Runtime-Parameters:-General]]
diff --git a/example/test_problem/Template/Input__Parameter b/example/test_problem/Template/Input__Parameter
index a0978b4096..3f2f520f41 100644
--- a/example/test_problem/Template/Input__Parameter
+++ b/example/test_problem/Template/Input__Parameter
@@ -194,14 +194,14 @@ SRC_GPU_NPGROUP -1 # number of patch groups sent into the
# Grackle library for chemistry and radiative cooling (SUPPORT_GRACKLE only)
GRACKLE_ACTIVATE 1 # enable Grackle [1]
GRACKLE_VERBOSE 1 # map to "grackle_verbose" [1]
-GRACKLE_COOLING 1 # ... "with_radiative_cooling" [1]
-GRACKLE_PRIMORDIAL 0 # ... "primordial_chemistry" (0=Cloudy, 1/2/3=6-/9-/12-species) [0]
+GRACKLE_COOLING 1 # map to "with_radiative_cooling" [1]
+GRACKLE_PRIMORDIAL 0 # map to "primordial_chemistry" (0=Cloudy, 1/2/3=6-/9-/12-species) [0]
# (must increase NCOMP_PASSIVE_USER by 6/9/12, respectively)
-GRACKLE_METAL 0 # ... "metal_cooling" (must increase NCOMP_PASSIVE_USER by 1) [0]
-GRACKLE_UV 0 # ... "UVbackground" [0]
-GRACKLE_CMB_FLOOR 1 # ... "cmb_temperature_floor" [1]
-GRACKLE_PE_HEATING 0 # ... "photoelectric_heating" [0]
-GRACKLE_PE_HEATING_RATE 8.5e-26 # ... "photoelectric_heating_rate (in erg/cm^3/s)" [8.5e-26]
+GRACKLE_METAL 0 # map to "metal_cooling" (must increase NCOMP_PASSIVE_USER by 1) [0]
+GRACKLE_UV 0 # map to "UVbackground" [0]
+GRACKLE_CMB_FLOOR 1 # map to "cmb_temperature_floor" [1]
+GRACKLE_PE_HEATING 0 # map to "photoelectric_heating" [0]
+GRACKLE_PE_HEATING_RATE 8.5e-26 # map to "photoelectric_heating_rate (in erg/cm^3/s)" [8.5e-26]
GRACKLE_CLOUDY_TABLE CloudyData_noUVB.h5 # "grackle_data_file"
GRACKLE_THREE_BODY_RATE 4 # used Glover+08 rate
GRACKLE_CIE_COOLING 1 # 0: off; 1:on
@@ -308,16 +308,16 @@ OPT__EXT_POT 0 # add external potential (0=off, 1=
# tabular external potential
EXT_POT_TABLE_NAME ExtPotTable # external potential table: filename
-EXT_POT_TABLE_NPOINT_X 129 # ... : table size (i.e., number of data points) along x/y/z
-EXT_POT_TABLE_NPOINT_Y 129 #
-EXT_POT_TABLE_NPOINT_Z 129 #
-EXT_POT_TABLE_DH_X 0.0078125 # ... : spatial interval between adjacent data points
-EXT_POT_TABLE_DH_Y 0.0078125 #
-EXT_POT_TABLE_DH_Z 0.0078125 #
-EXT_POT_TABLE_EDGEL_X 0.0 # ... : starting x/y/z coordinates
-EXT_POT_TABLE_EDGEL_Y 0.0 #
-EXT_POT_TABLE_EDGEL_Z 0.0 #
-EXT_POT_TABLE_FLOAT8 -1 # ... : double precision (<0=auto -> FLOAT8, 0=off, 1=on) [-1]
+EXT_POT_TABLE_NPOINT_X 129 # external potential table: table size (i.e., number of data points) along x
+EXT_POT_TABLE_NPOINT_Y 129 # external potential table: table size (i.e., number of data points) along y
+EXT_POT_TABLE_NPOINT_Z 129 # external potential table: table size (i.e., number of data points) along z
+EXT_POT_TABLE_DH_X 0.0078125 # external potential table: spatial interval between adjacent x data points
+EXT_POT_TABLE_DH_Y 0.0078125 # external potential table: spatial interval between adjacent y data points
+EXT_POT_TABLE_DH_Z 0.0078125 # external potential table: spatial interval between adjacent z data points
+EXT_POT_TABLE_EDGEL_X 0.0 # external potential table: starting x coordinates
+EXT_POT_TABLE_EDGEL_Y 0.0 # external potential table: starting y coordinates
+EXT_POT_TABLE_EDGEL_Z 0.0 # external potential table: starting z coordinates
+EXT_POT_TABLE_FLOAT8 -1 # external potential table: double precision (<0=auto -> FLOAT8, 0=off, 1=on) [-1]
# --> not supported yet; use -1 for now
OPT__GRAVITY_EXTRA_MASS 0 # add extra mass source when computing gravity [0]
diff --git a/tool/wiki/sync_runtime_parameter.py b/tool/wiki/sync_runtime_parameter.py
new file mode 100644
index 0000000000..d5d7f3eb91
--- /dev/null
+++ b/tool/wiki/sync_runtime_parameter.py
@@ -0,0 +1,216 @@
+#!/bin/python3
+"""
+## What it can do
+
+Automatically update `doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-All.md`
+when any of the following files are changed, updated, or pushed:
+- `tool/wiki/sync_runtime_parameter.py`
+- `src/Init/Init_Load_Parameter.cpp`
+- `example/test_problem/Template/Input__Parameter`
+
+## How it works
+
+1. Detection:
+ The new workflow, "Update All Parameters Wiki Page", detects changes in any of the three specified files.
+2. Execution:
+ If changes are detected, the workflow runs the script `tool/wiki/sync_runtime_parameter.py`.
+3. Update:
+ The script updates `doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-All.md` by creating
+ a new commit with the message: `[Workflow] Update all parameters wiki page`.
+
+## Script Algorithm
+
+1. Extract Parameter Names and Comments:
+ Retrieve all parameter names and their associated short comments from `example/test_problem/Template/Input__Parameter`.
+2. Retrieve Parameter Details:
+ Gather the minimum, maximum, and default values of each parameter from `src/Init/Init_Load_Parameter.cpp`.
+3. Link Integration:
+ Identify the original page links using the references placed at the top of each runtime parameter
+ wiki page (e.g., `[BOX_SIZE](#BOX_SIZE), `).
+4. Markdown Generation:
+ Compile the extracted data and generate the updated markdown file.
+"""
+#====================================================================================================
+# Imports
+#====================================================================================================
+import re
+from string import ascii_uppercase as auc
+
+
+
+#====================================================================================================
+# Global constants
+#====================================================================================================
+ALL_PARAM_FILE = "../../example/input/Input__Parameter"
+PARAM_CPP_FILE = "../../src/Init/Init_Load_Parameter.cpp"
+LINK_FILES = [ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Chemistry-and-Radiation.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Cosmology.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Feedback.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-GPU.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-General.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Gravity.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Hydro.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Initial-Conditions.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Interpolation.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-MPI-and-OpenMP.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Miscellaneous.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Outputs.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Particles.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Refinement.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Star-Formation.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Timestep.md",
+ "../../doc/wiki/Runtime-Parameters-related/Runtime-Parameters:-Units.md"
+ ]
+OUT_MD = "Runtime-Parameters:-All.md"
+REPLACE_DICT = { "NoMin_double":"None", "NoMax_double":"None", "NoDef_double":"None",
+ "NoMin_int":"None", "NoMax_int":"None",
+ "NoMin_long":"None", "NoMax_long":"None",
+ "NoDef_str":"None", "Useless_str":"None",
+ "Useless_bool":"None",
+ "true":"1", "false":"0",
+ "__DBL_MAX__":"1.79769313e+308", "Eps_double":"2.22507386e-308"
+ }
+
+
+
+#====================================================================================================
+# Classes
+#====================================================================================================
+class parameter():
+ def __init__( self, string ):
+ name, description = self.get_name_description( string )
+ self.name = name
+ self.link_name = name
+ self.default = ""
+ self.minimum = ""
+ self.maximum = ""
+ self.description = description
+ self.NAdd = 0
+
+ def get_name_description( self, string ):
+ words = string.split()
+ name = words[0]
+ description = ""
+ for i in range(3, len(words)):
+ description += words[i] + ' '
+ return name, description[:-1]
+
+ def append_description( self, string ):
+ words = string.split()
+ self.description += "
" if self.name == "TESTPROB_ID" else ' '
+ self.description += ' '.join(words[1:])
+ return
+
+ def get_link_name( self, file_dict ):
+ for file_name in file_dict:
+ search_pattern = "[%s](#%s)"%(self.name, self.name)
+ if search_pattern in file_dict[file_name]:
+ self.link_name = "[[ %s \\| %s#%s ]]"%(self.name, file_name, self.name)
+ return True
+ return False
+
+
+
+#====================================================================================================
+# Main
+#====================================================================================================
+with open( ALL_PARAM_FILE, 'r' ) as f:
+ lines = f.readlines()
+
+with open( PARAM_CPP_FILE, 'r' ) as f:
+ lines_cpp = f.readlines()
+
+link_source_mds = {}
+for file_path in LINK_FILES:
+ file_name = file_path.split('/')[-1][:-3] # get the filename without path and trailing `.md`
+ with open( file_path, 'r' ) as f:
+ link_source_mds[file_name] = f.read()
+
+params = {}
+
+# get all parameters from ALL_PARAM_FILE
+# NOTE: assuming the line starts with space should be the comment of the above line
+last_key = ""
+for i, line in enumerate(lines):
+ if line[0] == '\n': continue
+ if line[0] == '#': continue
+ if line[0] == ' ':
+ params[last_key].append_description( line )
+ continue
+ last_key = line.split()[0]
+ params[last_key] = parameter( line )
+
+# get all default, min, max, and value from PARAM_CPP_FILE
+for i, line in enumerate(lines_cpp):
+ if "ReadPara->Add" not in line: continue
+ words = list( filter( None, re.split( ',| ', line ) ) )
+ if "//" == words[0]: continue
+ key = words[1][1:-1]
+ default = words[3]
+ minimum = words[4]
+ maximum = words[5]
+
+ if key not in params:
+ print( "%-30s does not exist in %s"%(key, ALL_PARAM_FILE) )
+ continue
+
+ if params[key].NAdd >= 1:
+ print( "%-30s has more than one ReadPara->Add() function in %s"%(key, PARAM_CPP_FILE) )
+ params[key].default = "Depend"
+ params[key].minimum = "Depend"
+ params[key].maximum = "Depend"
+ else:
+ params[key].default = REPLACE_DICT[default] if default in REPLACE_DICT else default
+ params[key].minimum = REPLACE_DICT[minimum] if minimum in REPLACE_DICT else minimum
+ params[key].maximum = REPLACE_DICT[maximum] if maximum in REPLACE_DICT else maximum
+ params[key].NAdd += 1
+
+# get the detailed description link from LINK_FILES
+for p in params:
+ status = params[p].get_link_name( link_source_mds )
+ if not status:
+ print( "Can not find the description of %-30s in all runtime parameter pages!"%(p) )
+
+# output the markdown file
+with open( OUT_MD, 'w' ) as f:
+ param_str_format = '| %-100s | %15s | %15s | %15s | %s |\n'
+
+ f.write( '> [!CAUTION]\n' )
+ f.write( '> Please do not edit this file (page) manually, since the workflow will overwrite your changes.\n' )
+ f.write( '\n' )
+ f.write( 'This file (page) is automatically generated by the workflow `Update all parameters wiki page` using the script `tool/wiki/sync_runtime_parameter.py`.\n' )
+ f.write( '\n' )
+ f.write( 'The workflow is triggered when changes are pushed to any of the following files:\n' )
+ f.write( '- `src/Init/Init_Load_Parameter.cpp`\n' )
+ f.write( '- `example/input/Input__Paramter`\n' )
+ f.write( '- `tool/wiki/sync_runtime_parameter.py`\n' )
+ f.write( '\n' )
+ f.write( 'For variables with `Default/Min/Max` labeled as `Depend`, click the parameter names for more details.\n' )
+ f.write( '\n' )
+ f.write( '# Index\n' )
+ f.write( ', '.join( ['[%s](#%s)'%(i, i) for i in auc] ) )
+ f.write( '\n' )
+
+ start_char = ''
+ params_sorted_key = sorted( params.keys() )
+ for key in params_sorted_key:
+ # add alphabet title
+ if start_char != key[0]:
+ start_char = key[0]
+ f.write( '\n' )
+ f.write( "# %s\n"%(start_char) )
+ f.write( param_str_format%("Name", "Default", "Min", "Max", "Short description") )
+ f.write( param_str_format%(":---", ":---", ":---", ":---", ":---") )
+
+ string = param_str_format%(params[key].link_name, params[key].default, params[key].minimum, params[key].maximum, params[key].description)
+ f.write( string )
+
+ f.write( '\n' )
+ f.write( '\n' )
+ f.write( '## Remarks\n' )
+ f.write( '\n' )
+ f.write( '\n' )
+ f.write( '
\n' )
+ f.write( '\n' )
+ f.write( '## Links\n' )
+ f.write( '* [[Main page of Runtime Parameters | Runtime Parameters]]\n' )