Creating and Running Your Own Problem
This section covers how to set up your own problem and provides some of the many options for controlling the algorithm and simulation runs.
In IAMR, a combination of coded routines and inputs parameters provide the problem
setup. Inputs parameters can also alter the behavior of the algorithm and
provide controls over simulation runs.
Typically, the inputs parameters are collected into an inputs file, which is specified on
the commandline. Options can also be specified directly on the command line.
IAMR uses AMReX’s ParmParse
class
infrastructure to read in the inputs parameters.
(See AMReX’s documentation on ParmParse
here: ParmParse.)
Tip
Before making any code changes, we highly recommend creating a new git branch.
Extra points if the new branch’s name reflects the changes, e.g. couette_flow
.
We do not recommend making any changes within the development
branch because
doing so will make your local development
branch diverge from the matching branch
in the main IAMR repository. This can lead to difficulties pulling in updates and bug-fixes
from the main IAMR repo.
Here, we draw your attention to the option of creating a github “fork” of IAMR. A fork is a copy of a repository that you manage (see the github documentation for more details on forks). For more information on creating a fork of IAMR, see the Contributing Section (and yes, this is a reasonable option even if you don’t plan to contribute code changes to IAMR).
If you choose not to create a fork, you can create a new git branch in your local clone by
executing the following commands within the IAMR
directory:
git checkout development
git checkout -b <branch_name>
To pull in any updates from the IAMR repo, execute:
git fetch
git merge development
- Problem Setup
- Runtime Options
- Algorithm Options