Installation: Option List - hyschive/gamer-fork GitHub Wiki
All available options in configure.py, including compile-time simulation options and options specific to configure.py, are listed below.
Compile-time simulation options are classified into the following categories:
- Physical Modules
- Hydro
- ELBDM
- Gravity
- Particles
- Microphysics
- In Situ Python Analysis
- Parallelization
- Miscellaneous
Caution
Some combinations are mandatory (e.g., RSOLVER must be set when
--flu_scheme=CTU), while some combinations are prohibited
(e.g., --particle is not supported when both --gravity and --tracer are
disabled). See the "Restriction" of each option carefully.
| Option | Value | Description | 
|---|---|---|
| -h | - | Show a short help message. | 
| -lh | - | Show a detailed help message. | 
| --machine | Filename string | Select the *.configfile from theconfigsdirectory. It will overwrite the default machine set in the default setting file. | 
| Option | Value | Default | Description | Restriction | Corresponding symbolic constant | 
|---|---|---|---|---|---|
| --model | HYDRO,ELBDM | HYDRO | Physical models, where ELBDMrepresents Extremely Light Bosonic Dark Matter, also known as wave dark matter (ψDM) or fuzzy dark matter (FDM) | Must be set in any cases | MODEL | 
| --gravity | true,false | false | Enable gravity | Must enable --fftw; may need to setFFTW2/3_PATHin configuration file | GRAVITY | 
| --particle | true,false | false | Enable particles | Must enable --gravityor--tracer | PARTICLE | 
| --grackle | true,false | false | Enable GRACKLE | May need to set GRACKLE_PATHin configuration file; only support--eos=GAMMA/COSMIC_RAY; does not support--comoving | SUPPORT_GRACKLE | 
| --passive | ≥ 0 | 0 | Number of user-defined passive scalars | See here for details; not supported for --flu_scheme=RTVD | NCOMP_PASSIVE_USER | 
-- see Hydro for the related runtime parameters and other settings; must enable --model=HYDRO
| Option | Value | Default | Description | Restriction | Corresponding symbolic constant | 
|---|---|---|---|---|---|
| --flu_scheme | RTVD,MHM,MHM_RP,CTU | CTU | Hydro schemes. RTVD: relaxing TVD;MHM: MUSCL-Hancock;MHM_RP: VL scheme;CTU: corner transport upwind | --mhdonly supportsMHM,MHM_RP, andCTU;--srhdonly supportsMHMandMHM_RP;--cosmic_rayonly supportsMHM_RP | FLU_SCHEME | 
| --slope | PLM,PPM | PPM | Spatial reconstruction. PLM: piecewise linear;PPM: piecewise parabolic | Useless for --flu_scheme=RTVD | LR_SCHEME | 
| --flux | EXACT,ROE,HLLE,HLLC,HLLD | Depend | Riemann solvers | Useless for --flu_scheme=RTVD;EXACTis experimental; pure hydrodynamics supportsEXACT/ROE/HLLE/HLLC;--mhdsupportsROE/HLLE/HLLD;--srhdand--cosmic_raysupportHLLE/HLLC | RSOLVER | 
| --dual | OFF,ENPY,EINT | OFF | Enable dual energy formalism | Not supported for --flu_scheme=RTVD.EINTis not supported yet. | DUAL_ENERGY | 
| --mhd | true,false | false | Magnetohydrodynamics | - | MHD | 
| --srhd | true,false | false | Special relativistic hydrodynamics | Must adopt --eos=TAUBMATHEWS | SRHD | 
| --cosmic_ray | true,false | false | Cosmic rays | Must adopt --eos=COSMIC_RAY | COSMIC_RAY | 
| --eos | GAMMA,ISOTHERMAL,COSMIC_RAY,TAUBMATHEWS,USER | Depend | Equation of state | The following options only support GAMMA:--flu_scheme=RTVD/CTU,--flux=EXACT/ROE,--comoving,--dual; see also--barotropic | EOS | 
| --barotropic | true,false | Depend | Is --eosbarotropic? | Must be disabled for --eos=GAMMA/COSMIC_RAY/TAUBMATHEWSand enabled for--eos=ISOTHERMAL | BAROTROPIC_EOS | 
-- see ELBDM for the related runtime parameters and other settings; must enable --model=ELBDM
-- see Gravity for the related runtime parameters and other settings; must enable --gravity=true
-- see Particles for the related runtime parameters and other settings; must enable --particle=true
| Option | Value | Default | Description | Restriction | Corresponding symbolic constant | 
|---|---|---|---|---|---|
| --tracer | true,false | false | Enable tracer particles | - | TRACER | 
| --store_par_acc | true,false | true | Store particle acceleration (recommended) | - | STORE_PAR_ACC | 
| --star_formation | true,false | false | Enable star formation | Must enable --store_pot_ghostwhen using--store_par_acc | STAR_FORMATION | 
| --feedback | true,false | false | Enable feedback from particles to grids (and vice versa) | See here for details | FEEDBACK | 
| --par_attribute_flt | ≥ 0 | 0 | Number of user-defined particle floating-point attributes | See here for details | PAR_NATT_FLT_USER | 
| --par_attribute_int | ≥ 0 | 0 | Number of user-defined particle integer attributes | See here for details | PAR_NATT_INT_USER | 
| --double_par | true,false | true | Enable double-precision floating-point accuracy for particles. | - | FLOAT8_PAR | 
| --long_par | true,false | true | Enable long interger data type for particles. | - | INT8_PAR | 
| Option | Value | Default | Description | Restriction | Corresponding symbolic constant | 
|---|---|---|---|---|---|
| --cr_diffusion | true,false | false | Cosmic-ray diffusion | Must enable both --cosmic_rayand--mhd | CR_DIFFUSION | 
-- see In Situ Python Analysis for the related runtime parameters and other settings; must enable --libyt=true
| Option | Value | Default | Description | Restriction | Corresponding symbolic constant | 
|---|---|---|---|---|---|
| --libyt | true,false | false | Enable libyt for in situ Python analysis | May need to set LIBYT_PATHin configuration file | SUPPORT_LIBYT | 
| --libyt_patchgroup | true,false | true | Use patch groups instead of patches as the grid unit for better performance (recommended) | - | LIBYT_USE_PATCH_GROUP | 
| --libyt_interactive | true,false | false | Activate interactive Python prompt in in situ analysis | Must compile libyt with INTERACTIVE_MODE | LIBYT_INTERACTIVE | 
| --libyt_reload | true,false | false | Enable the interactive mode of libyt. This activates Python prompt and does not shut down a simulation when there are errors in an inline Python script. | Must compile libyt with INTERACTIVE_MODE | LIBYT_RELOAD | 
| --libyt_jupyter | true,false | false | Allow for in situ analysis using Jupyter Notebook / JupyterLab through libyt. | Must compile libyt with JUPYTER_KERNEL. | LIBYT_JUPYTER | 
| Option | Value | Default | Description | Restriction | Corresponding symbolic constant | 
|---|---|---|---|---|---|
| --openmp | true,false | true | Enable OpenMP (see MPI and OpenMP) | Must set the compilation flag OPENMPFLAGin configuration file | OPENMP | 
| --mpi | true,false | false | true: Enable load balancing using a space-filling curve (see MPI and OpenMP);false: Run GAMER in a serial mode, but OpenMP is still supported | May need to set MPI_PATHin configuration file | LOAD_BALANCE=HILBERT,SERIAL | 
| --overlap_mpi | true,false | false | Overlap MPI communication with computation. | Not supported yet!!! Must enable --mpi. | OVERLAP_MPI | 
| --gpu | true,false | false | Enable GPU acceleration | Must specify GPU_COMPUTE_CAPABILITYand may need to setCUDA_PATHin configuration file | GPU | 
-- AMR, optimizations, ...
| Option | Value | Default | Description | Restriction | Corresponding symbolic constant | 
|---|---|---|---|---|---|
| --nlevel | ≥ 1 | 10 | Maximum number of AMR levels including the root level. Do not confuse with the MAX_LEVEL runtime parameter. | - | NLEVEL | 
| --max_patch | ≥ 8 | 1000000 | Maximum number of patches that can be allocated on each AMR level (recommended value: 1000000 or even larger since it is not memory-consuming) | - | MAX_PATCH | 
| --patch_size | ≥ 8 | 8 | Number of cells along each direction in a single patch | Must be an even number | PATCH_SIZE | 
| --debug | true,false | false | Run GAMER in a debug mode | - | GAMER_DEBUG | 
| --bitwise_reproducibility | true,false | Depend | Enable bitwise reproducibility. It may deteriorate performance, especially for runs with a large number of particles. | - | BITWISE_REPRODUCIBILITY | 
| --timing | true,false | true | Record the wall time of various GAMER routines in the file Record__Timing (recommended) | - | TIMING | 
| --timing_solver | true,false | false | Record the wall time of individual GPU solvers in the file Record__Timing. It will disable the CPU/GPU overlapping and thus deteriorate performance notably. | Must enable --timing | TIMING_SOLVER | 
| --double | true,false | false | Enable double-precision floating-point accuracy for grid fields. Note that it could have a serious impact on GPU performance. | - | FLOAT8 | 
| --laohu | true,false | false | Work on the NAOC Laohu GPU cluster. | - | LAOHU | 
| --hdf5 | true,false | false | Enable HDF5 output (see Outputs) | May need to set HDF5_PATHin configuration file | SUPPORT_HDF5 | 
| --gsl | true,false | false | Enable GNU scientific library | May need to set GSL_PATHin configuration file | SUPPORT_GSL | 
| --fftw | OFF,FFTW2,FFTW3 | OFF | Enable FFTW | May need to set FFTW2/3_PATHin configuration file | SUPPORT_FFTW | 
| --spectral_interpolation | true,false | false | Enable spectral interpolation | Must enable --gsland set--fftw | SUPPORT_SPECTRAL_INT | 
| --rng | RNG_GNU_EXT,RNG_CPP11 | RNG_GNU_EXT | Random number generators. RNG_GNU_EXT: GNU extensiondrand48_r;RNG_CPP11: c++11<random> | Use RNG_GNU_EXTfor compilers supporting GNU extensions (they may not be supported on macOS); useRNG_CPP11for compilers supporting c++11 (one may need to add-std=c++11toCXXFLAG→ see compilation flags) | RANDOM_NUMBER | 
Caution
On macOS, we recommend using the GNU compiler and set --rng=RNG_CPP11.