Starlab simulations with `sltoos`
3/Jun 2015
You can download sltools from here.
Then create one or more simulation configuration(s), for example
{
"Runs": 50,
"Comb": 86,
"Ncm" : 10000,
"Fpb" : 0.05,
"W" : 3,
"Z" : 0.10,
"Rv": 5,
"EndTime" : 500,
"Machine" : "yourCluster",
"UserName" : "yourUserName",
"PName": "project",
"BinFolder": "/home/yourUserName/bin/"
}
where
Runs
is the number of random realizations you want to simulateComb
is the number that identify of this particoular parameter setNcm
is the number of center of massesFpb
is the primordial binary fraction (how many stars are binaries at the beginning of the simulationW
is the central adimensional potentialZ
is the metallicity in terms of the solar metallicity (only available in the Mapelli+2013 Starlab version)Rv
is the initial virial radius of the clusterEndTime
preliminary timestep when to stop the simulation, you can resume it laterMachine
name of the machine you are running onUserName
is your username on that machinePName
is the project your hours are accounted onBinFolder
is the path where to find the binaries
The run
sltools createICs -v -A
Now sltools will create a folder for each parameter combination, copy the configuration file inside and create as much script files as you need to create the iitial conditions.
Each file would resemble something like:
#!/bin/bash
set -xeu
makeking -n 10000 -w 5 -i -u \
| makemass -f 8 -l 0.1 -u 150 \
| makesecondary -f 0.1 -q -l 0.1 \
| add_star -R 1 -Z 0.10 \
| scale -R 3 -M 1\
| makebinary -f 2 -o 1 -l 1 -u 107836.09 \
> ics-comb87-TFno-Rv3-NCM10000-fPB01-W5-Z010-run01-rnd00.txt
Now you can run the generated script with
for RUN in $(ls create_*.sh); do bash $RUN; done
OR
you can run them using the docker container you can build starting from this image or from this Dockerfile or following these instructions. If you plan to use the GPUs the second method is recommendend since a GPU enable docker image is system-dependent (thank you nVidia…).
Now you can upload your fresh ICs to the cluster of your choice.
Once everything is in its place, connect to the cluster and run
sltools css -A -m <machine>
to create the files needed to submit the jobs to the batch system.
machine
is the name of the cluster. Until now only few clusters are
recognized, because I need to set few parameters to match the system configuration.
I’ll be glad to add your own machine, or maybe I’ll create a template system
able to read from a configuration file.
Once the batch manager scripts are created, just run everything with
sltools pbsLaunch
and wait for the jobs to complete. When they finish, you can restart the simulations to make them run untile 100 Myr is reached. To do this, simply run
sltools relaunch
or
sltools relaunch -e <end-time>
to specify when the simulation should end.