Skip to content

Commit

Permalink
[Workflow] Update test problem wiki pages
Browse files Browse the repository at this point in the history
  • Loading branch information
ChunYen-Chen committed Jan 28, 2025
1 parent 3aa8998 commit c845130
Show file tree
Hide file tree
Showing 43 changed files with 853 additions and 844 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,64 +8,63 @@

# `configure.py` options
- Must enable
- [[--model | Installation:-Option-List#--model]]=`HYDRO`
- [[--particle | Installation:-Option-List#--particle]]
- [[--gravity | Installation:-Option-List#--gravity]]
- [[--double | Installation:-Option-List#--double]]
- [[--dual | Installation:-Option-List#--dual]]
- [[--model | Installation:-Option-List#--model]]=`HYDRO`
- [[--particle | Installation:-Option-List#--particle]]
- [[--gravity | Installation:-Option-List#--gravity]]
- [[--dual | Installation:-Option-List#--dual]]=`DE_ENPY`
- Must disable
- [[--comoving | Installation:-Option-List#--comoving]]
- [[--comoving | Installation:-Option-List#--comoving]]
- Available options
- [[Miscellaneous Options | Installation:-Option-List#miscellaneous-options]]
- [[Miscellaneous Options | Installation:-Option-List#miscellaneous-options]]


# Simulation setup
- Units

- External (for `Input__TestProb` only)
- External (for `Input__TestProb` only)

See the comment of each runtime variable
See the comment of each runtime variable

- Internal (for all other input files and internal usage)
| Unit | [L] | [M] | [T] | [V] = [L]/[T] | [D] = [M]/[D]^3 |
|--- |--- |--- |--- |--- |--- |
| Value | kpc | 1.0e9 Msun | Myr | ~ 9.8e2 km/s | ~ 6.8e-23 g/cm^3 |
- Internal (for all other input files and internal usage)
| Unit | [L] | [M] | [T] | [V] = [L]/[T] | [D] = [M]/[D]^3 |
|--- |--- |--- |--- |--- |--- |
| Value | kpc | 1.0e9 Msun | Myr | ~ 9.8e2 km/s | ~ 6.8e-23 g/cm^3 |

- Low-resolution default setup

1. Download the low-resolution initial conditions and `Input_*` by executing
```bash
sh download_ic_low_res.sh
```
1. Download the low-resolution initial conditions and `Input_*` by executing
```bash
sh download_ic_low_res.sh
```

2. Default resolution ~ 80 pc (root grid 128^3; [[MAX_LEVEL | Runtime-Parameters:-Refinement#MAX_LEVEL]]=`7`)
2. Default resolution ~ 80 pc (root grid 128^3; [[MAX_LEVEL | Runtime-Parameters:-Refinement#MAX_LEVEL]]=`7`)

- High-resolution setup

1. Download the high-resolution initial conditions and `Input_*` by executing
```bash
sh download_ic_high_res.sh
```
1. Download the high-resolution initial conditions and `Input_*` by executing
```bash
sh download_ic_high_res.sh
```

2. Highest resolution ~ 20 pc (root grid 128^3; [[MAX_LEVEL | Runtime-Parameters:-Refinement#MAX_LEVEL]]=`9`)
2. Highest resolution ~ 20 pc (root grid 128^3; [[MAX_LEVEL | Runtime-Parameters:-Refinement#MAX_LEVEL]]=`9`)

3. This setup reproduces the AGORA high-resolution run presented in the GAMER-2 paper [Schive et al. 2018](https://academic.oup.com/mnras/article/481/4/4815/5106358)
3. This setup reproduces the AGORA high-resolution run presented in the GAMER-2 paper [Schive et al. 2018](https://academic.oup.com/mnras/article/481/4/4815/5106358)


# Note
- Mimic the "AgoraGalaxy" test problem setup of Enzo.

See: [Nathan Goldbaum, et al., 2015, ApJ, 814, 131](https://dx.doi.org/10.1088/0004-637X/814/2/131) [(arXiv: 1510.08458)](https://arxiv.org/abs/1510.08458) and
[Ji-hoon Kim, et al., 2016, ApJ, 833, 202](https://dx.doi.org/10.3847/1538-4357/833/2/202) [(arXiv: 1610.03066)](https://dx.doi.org/10.3847/1538-4357/833/2/202)
See: [Nathan Goldbaum, et al., 2015, ApJ, 814, 131](https://dx.doi.org/10.1088/0004-637X/814/2/131) [(arXiv: 1510.08458)](https://arxiv.org/abs/1510.08458) and
[Ji-hoon Kim, et al., 2016, ApJ, 833, 202](https://dx.doi.org/10.3847/1538-4357/833/2/202) [(arXiv: 1610.03066)](https://dx.doi.org/10.3847/1538-4357/833/2/202)

- Other references

- [AGORA website](https://sites.google.com/site/santacruzcomparisonproject/)
- [AGORA initial conditions](https://goo.gl/8JzbIJ)
- [Enzo setup](https://bitbucket.org/enzo/enzo-dev/src/19f4a44e06f1c386573dc77b3608ba66b64d93bc/run/Hydro/Hydro-3D/AgoraGalaxy/?at=week-of-code)
- [Goldbaum et al. 2016](https://arxiv.org/abs/1605.00646)
- [yt hub](https://girder.hub.yt/#collection/5736481ddd9119000164acf1)
- [CloudyData_UVB table](https://github.com/grackle-project/grackle_data_files/tree/main/input)
- [AGORA website](https://sites.google.com/site/santacruzcomparisonproject/)
- [AGORA initial conditions](https://goo.gl/8JzbIJ)
- [Enzo setup](https://bitbucket.org/enzo/enzo-dev/src/19f4a44e06f1c386573dc77b3608ba66b64d93bc/run/Hydro/Hydro-3D/AgoraGalaxy/?at=week-of-code)
- [Goldbaum et al. 2016](https://arxiv.org/abs/1605.00646)
- [yt hub](https://girder.hub.yt/#collection/5736481ddd9119000164acf1)
- [CloudyData_UVB table](https://github.com/grackle-project/grackle_data_files/tree/main/input)

- The low-resolution initial condition files from `sh download_ic_low_res.sh` are the same initial conditions used
in the `AgoraGalaxy` test problem of Enzo
Expand Down
44 changes: 22 additions & 22 deletions doc/wiki/Test-Problems-related/Test-Problems:-AcousticWave.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@

# `configure.py` options
- Must enable
- [[--model | Installation:-Option-List#--model]]=`HYDRO`
- [[--double | Installation:-Option-List#--double]]
- [[--model | Installation:-Option-List#--model]]=`HYDRO`
- [[--double | Installation:-Option-List#--double]]
- Must disable
- [[--comoving | Installation:-Option-List#--comoving]]
- [[--particle | Installation:-Option-List#--particle]]
- [[--gravity | Installation:-Option-List#--gravity]]
- [[--comoving | Installation:-Option-List#--comoving]]
- [[--particle | Installation:-Option-List#--particle]]
- [[--gravity | Installation:-Option-List#--gravity]]
- Available options
- [[Miscellaneous Options | Installation:-Option-List#miscellaneous-options]]
- [[Miscellaneous Options | Installation:-Option-List#miscellaneous-options]]


# Default setup
Expand All @@ -25,26 +25,26 @@

# Note
- Support both 1D and 3D cases
- set by `Acoustic_Dir`
- set by `Acoustic_Dir`
- A simple gnuplot script `plot.gpt` is attached
- `Record__L1Err` records the L1 errors
- `AcousticWave_*_*` record the numerical and analytical solutions along the diagonal
- For SRHD:
- Also enable these compilation flags:
- [[--srhd | Installation:-Option-List#--srhd]]
- [[--eos | Installation:-Option-List#--eos]]=`TAUBMATHEWS`
- [[--flu_scheme | Installation:-Option-List#--flu_scheme]]=`MHM`
- [[--flux | Installation:-Option-List#--flux]]=`HLLC`
- [[--slope | Installation:-Option-List#--slope]]=`PLM`
- In `Input__TestProb`,
- `Acoustic_v0` and `Acoustic_Cs` will be useless
- set `Acoustic_Temp_Bg = 1.0e+10` for high-temperature case
- set `Acoustic_Temp_Bg = 1.0e-10` for low-temperature case
- To check the L1 error convergence rate
- A L1 error plotting script `plot_L1error_SRHD.py` is attached
- An automatic script `Run_L1ErrorConvergenceTest_SRHD.sh` is attached
- Run `sh Run_L1ErrorConvergenceTest_SRHD.sh`
- Reference: Figure 3. in [Tseng et al. 2021, MNRAS, 504, 3298](https://doi.org/10.1093/mnras/stab1006)
- Also enable these compilation flags:
- [[--srhd | Installation:-Option-List#--srhd]]
- [[--eos | Installation:-Option-List#--eos]]=`TAUBMATHEWS`
- [[--flu_scheme | Installation:-Option-List#--flu_scheme]]=`MHM`
- [[--flux | Installation:-Option-List#--flux]]=`HLLC`
- [[--slope | Installation:-Option-List#--slope]]=`PLM`
- In `Input__TestProb`,
- `Acoustic_v0` and `Acoustic_Cs` will be useless
- set `Acoustic_Temp_Bg`=`1.0e+10` for high-temperature case
- set `Acoustic_Temp_Bg`=`1.0e-10` for low-temperature case
- To check the L1 error convergence rate
- A L1 error plotting script `plot_L1error_SRHD.py` is attached
- An automatic script `Run_L1ErrorConvergenceTest_SRHD.sh` is attached
- Run `sh Run_L1ErrorConvergenceTest_SRHD.sh`
- Reference: Figure 3. in [Tseng et al. 2021, MNRAS, 504, 3298](https://doi.org/10.1093/mnras/stab1006)

# Links
[[Main page of Test Problems | Test-Problems]]
Expand Down
26 changes: 13 additions & 13 deletions doc/wiki/Test-Problems-related/Test-Problems:-BlastWave.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,33 +8,33 @@

# `configure.py` options
- Must enable
- [[--model | Installation:-Option-List#--model]]=`HYDRO`
- [[--model | Installation:-Option-List#--model]]=`HYDRO`
- Must disable
- [[--particle | Installation:-Option-List#--particle]]
- [[--gravity | Installation:-Option-List#--gravity]]
- [[--particle | Installation:-Option-List#--particle]]
- [[--gravity | Installation:-Option-List#--gravity]]
- Available options
- [[--mhd | Installation:-Option-List#--mhd]]
- [[Miscellaneous Options | Installation:-Option-List#miscellaneous-options]]
- [[--mhd | Installation:-Option-List#--mhd]]
- [[Miscellaneous Options | Installation:-Option-List#miscellaneous-options]]


# Default setup
- Adopt the Lohner's error estimator on pressure as the refinement criteria
- `Refinement threshold`=`0.80`
- `Refinement threshold`=`0.80`

- Maximum refinement level ([[MAX_LEVEL | Runtime-Parameters:-Refinement#MAX_LEVEL]]=`3`)
- Maximum refinement level ([[MAX_LEVEL | Runtime-Parameters:-Refinement#MAX_LEVEL]])=`3`


# Note
- Two plot scripts are attached: `plot_profile.gpt` and `plot_slice.py`
- To reset the magnetic field during the runtime, turn on the following options.
1. [[OPT__RESET_FLUID | Runtime-Parameters:-Hydro#OPT__RESET_FLUID]]
2. `Blast_ResetB_VecPot` (optional but recommended)
- [[OPT__RESET_FLUID | Runtime-Parameters:-Hydro#OPT__RESET_FLUID]]
- `Blast_ResetB_VecPot` (optional but recommended)

Improve divergence-free
3. [[OPT__FLAG_USER | Runtime-Parameters:-Refinement#OPT__FLAG_USER]] (optional but recommended)
Improve divergence-free
- [[OPT__FLAG_USER | Runtime-Parameters:-Refinement#OPT__FLAG_USER]] (optional but recommended)

Refine regions within `~ 6*Blast_ResetB_r0` to the maximum level to improve divergence-free
(since even using vector potential, divergence-free can still break at the coarse-fine boundaries)
Refine regions within `~ 6*Blast_ResetB_r0` to the maximum level to improve divergence-free
(since even using vector potential, divergence-free can still break at the coarse-fine boundaries)

# Links
[[Main page of Test Problems | Test-Problems]]
Expand Down
34 changes: 17 additions & 17 deletions doc/wiki/Test-Problems-related/Test-Problems:-Bondi.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,34 +8,34 @@

# `configure.py` options
- Must enable
- [[--model | Installation:-Option-List#--model]]=`HYDRO`
- [[--gravity | Installation:-Option-List#--gravity]]
- [[--model | Installation:-Option-List#--model]]=`HYDRO`
- [[--gravity | Installation:-Option-List#--gravity]]
- Must disable
- [[--comoving | Installation:-Option-List#--comoving]]
- [[--particle | Installation:-Option-List#--particle]]
- [[--comoving | Installation:-Option-List#--comoving]]
- [[--particle | Installation:-Option-List#--particle]]
- Available options
- [[Miscellaneous Options | Installation:-Option-List#miscellaneous-options]]
- [[Miscellaneous Options | Installation:-Option-List#miscellaneous-options]]


# Default setup
- Units
- External (for `Input__TestProb` only)
| Unit | [L] | [Dens] | [Mass] | [Temp] |
|--- |--- |--- |--- |--- |
| Value | kpc | g/cm^3 | Msun | keV |
- External (for `Input__TestProb` only)
| Unit | [L] | [Dens] | [Mass] | [Temp] |
|--- |--- |--- |--- |--- |
| Value | kpc | g/cm^3 | Msun | keV |

- Internal (for all other input files and internal usage)
| Unit | [L] | [V] | [Dens] | [Time] = [L]/[V] | [Mass] = [Dens]*[L]^3 |
|--- |--- |--- |--- |--- |--- |
| Value | kpc | 1e3 km/s | 5.0e-25 g/cm^3 | ~ 0.978 Myr ~ 1.0 Myr | ~ 7.4e6 Msun |
- Internal (for all other input files and internal usage)
| Unit | [L] | [V] | [Dens] | [Time] = [L]/[V] | [Mass] = [Dens]*[L]^3 |
|--- |--- |--- |--- |--- |--- |
| Value | kpc | 1e3 km/s | 5.0e-25 g/cm^3 | ~ 0.978 Myr ~ 1.0 Myr | ~ 7.4e6 Msun |

- Gravity dt is disabled by setting [[DT__GRAVITY | Runtime-Parameters:-Timestep#DT__GRAVITY]] to arbitrarily large
- [[MIN_PRES | Runtime-Parameters:-Hydro#MIN_PRES]]=`1.0e-16`


# Note
- Dual-energy formalism is important for evolving pressure accurately in the high Mach number region (e.g., when Mach number is greater than ~10).
- Especially important for small [[GAMMA | Runtime-Parameters:-Hydro#GAMMA]] and large [[MAX_LEVEL | Runtime-Parameters:-Refinement#MAX_LEVEL]]
- Especially important for small [[GAMMA | Runtime-Parameters:-Hydro#GAMMA]] and large [[MAX_LEVEL | Runtime-Parameters:-Refinement#MAX_LEVEL]]
- The gnuplot script `plot_diagonal.gpt` plots the simulation results along the diagonal and compare to the analytical solutions.
The script `plot_profile.gpt` plots the shell-average profiles generated by `gamer_extract_profile`.
- By default it runs only for 10 Bondi time.
Expand All @@ -45,9 +45,9 @@
using [[OPT__DT_LEVEL | Runtime-Parameters:-Timestep#OPT__DT_LEVEL]]=`3` for the first step may
result in unphysical results since the time-step would likely be over-estimated due to both the
zero initial velocity and the disabling of [[DT__GRAVITY | Runtime-Parameters:-Timestep#DT__GRAVITY]].
- It's better to adopt [[OPT__DT_LEVEL | Runtime-Parameters:-Timestep#OPT__DT_LEVE]]=`2` and
small [[DT__FLUID_INIT| Runtime-Parameters:-Timestep#DT__FLUID_INIT]] for the first step,
dump data, and then restart with [[OPT__DT_LEVEL | Runtime-Parameters:-Timestep#OPT__DT_LEVEL ]]=`3`.
- It's better to adopt [[OPT__DT_LEVEL | Runtime-Parameters:-Timestep#OPT__DT_LEVE]]=`2` and
small [[DT__FLUID_INIT| Runtime-Parameters:-Timestep#DT__FLUID_INIT]] for the first step,
dump data, and then restart with [[OPT__DT_LEVEL | Runtime-Parameters:-Timestep#OPT__DT_LEVEL ]]=`3`.

# Links
[[Main page of Test Problems | Test-Problems]]
Expand Down
62 changes: 31 additions & 31 deletions doc/wiki/Test-Problems-related/Test-Problems:-CDM_LSS.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,52 +8,52 @@

# `configure.py` options
- Must enable
- [[--model | Installation:-Option-List#--model]]=`HYDRO`/`ELBDM`
- [[--comoving | Installation:-Option-List#--comoving]]
- [[--particle | Installation:-Option-List#--particle]]
- [[--gravity | Installation:-Option-List#--gravity]]
- [[--model | Installation:-Option-List#--model]]=`HYDRO`/`ELBDM`
- [[--comoving | Installation:-Option-List#--comoving]]
- [[--particle | Installation:-Option-List#--particle]]
- [[--gravity | Installation:-Option-List#--gravity]]
- Must disable
- Available options
- [[Miscellaneous Options | Installation:-Option-List#miscellaneous-options]]
- [[Miscellaneous Options | Installation:-Option-List#miscellaneous-options]]


# Default setup
- Cosmological constants
| Parameter name | Value |
|--- |--- |
| A_INIT | 0.00990099009900990099 |
| OMEGA_M0 | 0.315823 |
| HUBBLE0 | 0.6732117 |
| Parameter name | Value |
|--- |--- |
| A_INIT | 0.00990099009900990099 |
| OMEGA_M0 | 0.315823 |
| HUBBLE0 | 0.6732117 |

- Simulation
| Parameter name | Value | Note |
|--- |--- |--- |
| BOX_SIZE | 30.0 | Mpc/h |
| NX0_TOT | 128 | |
| MAX_LEVEL | 5 | |
| NPAR | 2097152 | 128^3 |
| OPT__FLAG_NPAR_PATCH | 2 | |
| OPT__FREEZE_FLUID | 1 | |
| Parameter name | Value | Note |
|--- |--- |--- |
| BOX_SIZE | 30.0 | Mpc/h |
| NX0_TOT | 128 | |
| MAX_LEVEL | 5 | |
| NPAR | 2097152 | 128^3 |
| OPT__FLAG_NPAR_PATCH | 2 | |
| OPT__FREEZE_FLUID | 1 | |

- Particle initial condition
| Parameter name | Value |
|--- |--- |
| PAR_IC_FORMAT | 1 |
| PAR_IC_MASS | -1.0 |
| PAR_IC_TYPE | -1 |
| Parameter name | Value |
|--- |--- |
| PAR_IC_FORMAT | 1 |
| PAR_IC_MASS | -1.0 |
| PAR_IC_TYPE | -1 |


# Note
- CDM cosmological large-scale structure simulations
- Fiducial `PAR_IC` file can be downloaded with the command.
```bash
sh download_ic.sh
```
- Fiducial `PAR_IC` file can be downloaded with the command
```bash
sh download_ic.sh
```
- GAMER currently doesn't support particle-only simulations. So the following temporary solutions are adopted
1. Set gas density/energy to arbitrarily small (for [[--model | Installation:-Option-List#--model]]=`HYDRO`)
or wave function to zero (for [[--model | Installation:-Option-List#--model]]=`ELBDM`) in `SetGridIC()`.
2. Enable [[OPT__FREEZE_FLUID | Hydro#OPT__FREEZE_FLUID]]
- Default maximum spatial resolution is 30.0/(128*2^5)~7.3 kpc/h (comoving).
1. Set gas density/energy to arbitrarily small (for [[--model | Installation:-Option-List#--model]]=`HYDRO`)
or wave function to zero (for [[--model | Installation:-Option-List#--model]]=`ELBDM`) in `SetGridIC()`.
2. Enable [[OPT__FREEZE_FLUID | Runtime-Parameters:-Hydro#OPT__FREEZE_FLUID]]
- Default maximum spatial resolution is 30.0/(128\*2^5)~7.3 kpc/h (comoving).

# Links
[[Main page of Test Problems | Test-Problems]]
Expand Down
10 changes: 5 additions & 5 deletions doc/wiki/Test-Problems-related/Test-Problems:-CMZ.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,13 @@

# `configure.py` options
- Must enable
- [[--model | Installation:-Option-List#--model]]=`HYDRO`
- [[--gravity | Installation:-Option-List#--gravity]]
- [[--model | Installation:-Option-List#--model]]=`HYDRO`
- [[--gravity | Installation:-Option-List#--gravity]]
- Must disable
- [[--comoving | Installation:-Option-List#--comoving]]
- [[--comoving | Installation:-Option-List#--comoving]]
- Available options
- [[--particle | Installation:-Option-List#--particle]]
- [[Miscellaneous Options | Installation:-Option-List#miscellaneous-options]]
- [[--particle | Installation:-Option-List#--particle]]
- [[Miscellaneous Options | Installation:-Option-List#miscellaneous-options]]


# Default setup
Expand Down
Loading

0 comments on commit c845130

Please sign in to comment.