This subroutine calculates the external pressure-gradient. Two methods are implemented here, relating either to the velocity vector at a given height above bed prescribed or to the vector for the vertical mean velocity. In the first case, dpdx and dpdy are - and -components of the prescribed velocity vector at the height h_press above the bed. The velocity profile will in this routive be shifted by a vertically constant vector such that the resulting profile has an (interpolated) velocity at h_press which is identical to the prescribed value. In the second case, dpdx and dpdy are - and -components of the prescribed vertical mean velocity vector, and h_press is not used. Here the velocity profile is shifted in such a way that the resulting mean velocty vector is identical to dpdx and dpdy.
For both cases, this is a recalculation of the external pressure gradient, since at all points the same acceleration has been applied in this operator split method.
If the external pressure-gradient is prescribed by the surface slope, then it is directly inserted in (12) and (14).
For details of this method, see Burchard (1999).
use meanflow, only: u,v,h use observations, only: dpdx,dpdy,h_press IMPLICIT NONEINPUT PARAMETERS:
method to compute external pressure gradient integer, intent(in) :: method number of vertical layers integer, intent(in) :: nlevREVISION HISTORY:
Original author(s): Hans Burchard & Karsten Bolding $Log: extpressure.F90,v $ Revision 1.10 2010-09-17 12:53:48 jorn extensive code clean-up to ensure proper initialization and clean-up of all variables Revision 1.9 2007-01-06 11:57:08 kbk PressMethod --> ext_press_mode Revision 1.8 2007-01-06 11:49:15 kbk namelist file extension changed .inp --> .nml Revision 1.7 2006-12-07 16:50:28 hb Program abortion introduced for PressHeight<=0 when ext_press_mode=1 Revision 1.6 2005-06-27 13:44:07 kbk modified + removed traling blanks Revision 1.5 2004/08/18 11:41:02 lars corrected typo in docu Revision 1.4 2003/03/28 09:20:35 kbk added new copyright to files Revision 1.3 2003/03/28 08:56:56 kbk removed tabs Revision 1.2 2003/03/10 08:50:06 gotm Improved documentation and cleaned up code Revision 22.214.171.124 2001/02/12 15:55:57 gotm initial import into CVS
Karsten Bolding 2012-01-24