next up previous
Next: baroc.F Up: The Proudman Oceanographic Laboratory Previous: b3dinit.F

Subsections


b3drun.F


subroutine b3drun (nfargs, fullargs, lfargs)

Description

This is the main control routine for the model code. It calls subroutines for domain decomposition, setting parameters, opening files and initialising variables. Then it loops through each baroclinic time step, calling the various calculation, output and boundary conditions subroutines. Finally it calculates timings and ends the parallel processes.

Subroutine Arguments

nfargs
fullargs Runtime/GUI arguments
lfargs

Local variables

i,j,k Local indices
icg,jcg Global indices
ierr Error flag ($\not=0$ for error).
iproc Loop over each of nproc processors
oddstep Determines order of directionally split advection routines. Alternates between $\chi$ then $\phi$, and $\phi$ then $\chi$.
timer1, timfact, timtot Timing variables

Global variables changed

oddstep, server, firstloop, looping, nbcs, tcount

Logical units

none

Order of Things

  1. intialises parameters and run time arguments
  2. opens files
  3. initialises debugging
  4. intialises domain (grid and bathymetry)
  5. intialises model variables and restarts if required
  6. loops through ndt baroclinic time steps
  7. Calculates timing
  8. ends parallel processing

Calls

pstart
parm_init
parm_set
parm_monitor
filope
dbginit
b3dgrid
b3dinit
initseries
b3ddbg
aaksetr
turbulence_closure
advect_vel
TS_boundary_condition
baroc
barot
diagnoseT
diagnoseTD
external_stepping
advect_sca
spmsubmodel
advdif_spm
endstep
get_cli_endstep
gsynchwrk
tstats
pstats
pfinish

Called By

b3dmain

Options - Logical

spare This is a spare processors, - do nothing
dia_t Temperature diagnostics at specified points and in 3D
physmodel Do the physics model calculation
verbose Write out lots of things
nodiff switch off vertical diffusion
rimix use the Richardson number dependent, boundary layer mixing scheme
adv_bc use advective temperature and salinity boundary conditions
lspm call the SPM submodel
master This is the master processor

Options - Compiler

TIMING Calculate and output timing information for various stages of the model run
MONITOR Output largest current speed from each processor
DEBUG Output lots of variables at a specified grid point.
PARALLEL_STATS Output parallel statistics

Known Issues


next up previous
Next: baroc.F Up: The Proudman Oceanographic Laboratory Previous: b3dinit.F
The AMMP Project 2005-04-20