next up previous
Next: barot.F Up: The Proudman Oceanographic Laboratory Previous: b3drun.F

Subsections


baroc.F


subroutine baroc

Description

This subroutine calculates a number of the baroclinic terms in the equations of motion, and their analogue in the transport equations. It also applies the surface and sea bed boundary conditions calculated in, for example, heatin, metset. Depth mean changes in u and v are calculated for those terms not explicitly included in the barotropic steps. These are then included in the calculation of the depth mean velocity (barot). A new value of the depth varying velocity is calculated and updated by the Coriolis term. Timings for the various parts of this routine are calculated if required.

Subroutine Arguments

none

Local variables

i,j,k Local indices
jcg Global index
ut, tdr intermediate variables in non-linear spherical polar terms
umean,vmean updated depth mean velocities
timer00, timer1, timtot, ntimer timing variables
first .true. the first time this subroutine is called

Global variables changed

u, v, ur, vr, timt, afnlb, bfnlb

Logical units

none

Order of Things

  1. surface heat flux
  2. surface salt flux
  3. convective adjustment
  4. vertical diffusion of temperature
  5. vertical diffusion of salinity
  6. nonlinear spherical polar
  7. horizontal pressure gradient
  8. vertical diffusion of velocity
  9. horizontal diffusion
  10. Calculate depth mean of friction, nonlinear, and buoyancy terms
  11. Coriolis for ur vr
  12. Timing

Calls

diagnoseT
diagnoseTD
downwell_Bio
downwell
saltflux
convectU
convectB
convect_iter
b3ddbg
diffuseb
bcalc
pgrad_spline
pgrad_sigma
pgrad
diffuseu
horizdiffuse

Called By

b3drun

Options - Logical

no_tmp/, no_sal temperature/salinity constant (in time and space)
dia_t Temperature diagnostics at specified points and in 3D
bio_lambda Use transmissivity calculated by ecosystem model
physmodel Do the physics model calculation
convect_u Convective adjustment for u, v, tmp, sal - dubious because of effect on bottom boundary layer.
nodiff No vertical diffusion (i.e. frictionless, non-diffusive)
hor_press_grad Calculate horizontal pressure gradients (HPG) due to buoyancy variations
lpgrad Calculate HPG by interpolation onto horizontal plane - default is linear interpolation
lpgrad_spline use spline instead of linear interpolation
horizdif Do horizontal diffusion on Z-levels

Options - Compiler

TIMING_BAROC Calculate and output timing information for various stages of this subroutine
DEBUG, DEBUG_BAROC Output lots of variables at a specified grid point.
SCOORD Use horizontally varying vertical coordinates
NO_CONVADJ Do not do a convective adjustment

Known Issues


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