Running Cirrus on The Command Line
Here we describe the main method for running Cirrus from the command line, and describe the command line inputs it takes.
A typical call to run Cirrus from the command line will look like
/home/myusername/petsc/ubuntu-opt/bin/mpirun -np 4 /home/myusername/cirrus_1.9/src/cirrus/cirrus -cirrusin mymodel.in -output_prefix testRunA
We now explain each part of this:
/home/myusername/petsc/ubuntu-opt/bin/mpirun: we call mpirun to start a parallel program. Note that this is the mpirun binary that was installed as part of the PETSc configuration process, seen here. We need to make sure we use the same MPI installation for compiling and running Cirrus.-np 4: an argument to mpirun, specifying how many proceseses to use. In this case, four./home/myusername/cirrus_1.9/src/cirrus: this is the Cirrus binary we compiled earlier.-cirrusin mymodel.in: this is an argument to Cirrus, specifying an input file to use, in this case called ‘mymodel.in’.-output_prefix testRunA: specify an output prefix to be applied to all output files generated by this run.
More details on the command line flags are given below.
Command Line Flags
-cirrusin [input deck file name].in
This flag is used to indicate the input file file to be used in the run. For example:
./cirrus -cirrusin mymodel.in
If neither this, -input_prefix, or -pflotranin are present, then Cirrus will default to searching for an input file called cirrus.in by default.
-input_prefix [input deck file name]
Like -cirrusin, but the .in file extension is not required:
./cirrus -input_prefix mymodel
If neither this, -cirrusin, or -pflotranin are present, then Cirrus will default to searching for an input file called cirrus.in by default.
-pflotranin [input deck file name].in
Like -cirrusin. Exists for back-compatibility purposes with older versions.
./cirrus -pflotranin mymodel.in
If neither this, input_prefix, or cirrusin are present, then Cirrus will default to searching for an input file called cirrus.in by default.
If either input_prefix, or cirrusin are present, this flag will be ignored.
-output_prefix [string]
This will cause all files output by Cirrus to have a given prefix. If the input file is given with, for example:
./cirrus -cirrusin mymodel.in
then the various output files produced will have names following the input file:
lcss.EGRID
lcss.INIT
lcss-mas.dat
lcss.SMSPEC
lcss.UNSMRY
lcss.out
lcss.UNRST
If instead we do:
./cirrus -cirrusin mymodel.in -output_prefix testRunA.in
Then the output files will have a naming convention following the string given to -output_prefix:
testRunA.EGRID
testRunA.INIT
testRunA-mas.dat
testRunA.SMSPEC
testRunA.UNSMRY
testRunA.out
testRunA.UNRST
We can also provide a relative file path, for example:
./cirrus -cirrusin mymodel.in -output_prefix myResults/A/testRunA.in
will cause the files to be placed in the directory myResults/A/.