Running the model
The model executable needs to be run inside the folder where all the model input files reside. The following inputs are minimum -
- hgrid.gr3
- vgrid.in
- param.nml
- [your_choice_of_bottom_friction].gr3 (drag.gr3, rough.gr3, manning.gr3)
- bctides.in
The model is usually run through a batch script, which in essence executes the code like:
mpirun -np NPROC ./pschism <# scribes>
(if OLDIO is OFF)mpirun -np NPROC ./pschism
(if OLDIO is ON)
where NPROC is the number of process used for parallel computing. Note that your system may require
other commands than mpirun
or more arguments. You can find example batch scripts in Utility/Cluster_files
.
Scribed IO
Shortly after v5.9.0 we have implemented a new I/O mode called scribed I/O.
Under scribed IO mode, the outputs are combined during the model simulation by dedicated "scribed" cores. Efficient asynchronous message passing is done inside the code for I/O that minimizes latency.
Some details for using scribed IO mode are following:
- The user needs to specify at runtime how many 'scribe' cores they want to use. The # of scribes= # of 3D outputs (vectors counted as 2) plus 1 (the one that is used for all 2D variables).
- Each 3D output has its own netcdf output (e.g.
salinity_*.nc
) and all 2D outputs share same outputout2d_*.nc
. Each vector output is split into X,Y components, e.g.horizontalVel[X,Y]_*.nc
. - The outputs
out2d_*.nc
andzCoordinates_*.nc
are needed for VisIT. - Users must specify # of scribes on cmd line as
mpirun -np NPROC ./pschism <nscribe>
. The specified number can be >= min required based onparam.nml
and explained above. If not you'll get an error. If you specify more than needed, you waste some cores but otherwise fine.
WWM
When running with WWM, make sure to remove fort.*
in the directory where hgrid.gr3 is; otherwise the code will try to read in fort.*
which may result in NaN error. You can add this into your batch script.