It would be great if the method run_model allowed the user to run the model in the way that best suits their computational infrastructure. For example:
For a serial execution:
cd testcase; swashrun -input testcase
For a parallel execution:
export NP=8
source source.sh
cd testcase; mpirun -np $NP swashrun $INPUT
To submit each job in batch mode to a cluster:
If possible, it would also be interesting to enable the option for the user to submit all test cases at once. The following example demonstrates the launch of a parametric job on Lustre:
sbatch --array=0-15%4 launchArraySwash.sh
Another example running the model from a container:
apptainer exec --bind `pwd`/../testcases:/tmp --pwd /tmp/a11stwav hySwash.sif swashrun -input a11stw01