Example¶
In this section we show an example of how the manager works.
This example case will create a grid of binary systems to explore with the MESAbinary module of the MESA code.
All the options needed to replicate it can be found in the example directory of the source code in GitHub, which should contain the following files
example
├── example_grid.yaml
├── example_manager_options.yaml
└── example_mesa_options.yaml
The file named as example_manager_options.yaml must be sent through the command line when executing run-manager,
run-manager -C example/example_manager_options.yaml -d
The -d flag will save more information to a log file as it will be run in debugging mode.
If everything goes well, at the end of the execution of the manager, there will be two new directories in the example directory: runs and templates.
Template¶
The tree structure inside the template should contain
templates
├── binary
├── binary_history_columns.list
├── clean
├── history_columns.list
├── inlist
├── inlist_project
├── make
│ ├── binary_run.o
│ ├── makefile
│ ├── run_binary_extras.mod
│ ├── run_binary_extras.o
│ ├── run_binary_extras.smod
│ ├── run_binary.mod
│ ├── run_binary.o
│ ├── run_star_extras.mod
│ ├── run_star_extras.o
│ └── run_star_extras.smod
├── mk
├── profile_columns.list
├── re
├── rn
└── src
├── binary_run.f90
├── run_binary_extras.f90
└── run_star_extras.f90
Runs¶
As for the runs directory, will hold the following stuff
runs
├── hmxb_run.sh
├── job_0.folders
├── job_1.folders
├── m1_100.0_m2_15.0_initial_period_in_days_100.0
│ ├── inlist1
│ ├── inlist2
│ └── inlist_binary
├── m1_10.0_m2_15.0_initial_period_in_days_100.0
│ ├── inlist1
│ ├── inlist2
│ └── inlist_binary
├── m1_13.89495494_m2_15.0_initial_period_in_days_100.0
│ ├── inlist1
│ ├── inlist2
│ └── inlist_binary
├── m1_19.30697729_m2_15.0_initial_period_in_days_100.0
│ ├── inlist1
│ ├── inlist2
│ └── inlist_binary
├── m1_26.82695795_m2_15.0_initial_period_in_days_100.0
│ ├── inlist1
│ ├── inlist2
│ └── inlist_binary
├── m1_37.2759372_m2_15.0_initial_period_in_days_100.0
│ ├── inlist1
│ ├── inlist2
│ └── inlist_binary
├── m1_51.79474679_m2_15.0_initial_period_in_days_100.0
│ ├── inlist1
│ ├── inlist2
│ └── inlist_binary
└── m1_71.9685673_m2_15.0_initial_period_in_days_100.0
├── inlist1
├── inlist2
└── inlist_binary
The file named hmxb_run.sh is the shell script that will send the models to be computed either to a another shell terminal emulator or to a submission queue manager, depending on the options specified in the YAML with the manager commands.
Files ending in *.folders contain a list of the directories where models will be computed.
The rest of the directories are the different binaries to be explored in the grid, each of them containing MESA inlist files with their different options as specified in the example_mesa_options.yaml file.
Run the scripts¶
To start computing the evolution of the binaries in the grid, simply run the *.sh scripts:
./hmxb_run.sh job_0.folders &
./hmxb_run.sh job_1.folders &
The & is used to send the files to the background, but you can also create screen or tmux sesssion and have complete control of the terminals through them.