INTERFACE:
subroutine convectiveadjustment(nlev,num,nuh,const_num,const_nuh, &
buoy_method,g,rho_0)
DESCRIPTION:
In this subroutine, convective adjustment is performed for the temperature,
, and the salinity,
, or alternatively for the buoyancy,
,
if a dynamic
equation is solved for this quantity. Beginning from the first interface
below the surface, the water column is checked for static instability.
If the Brunt-Väisälä frequency squared,
, is negative, the two
adjacent boxes are completely mixed. The stability for
the interface below this homogenised upper part of the water column
is then analysed, and, if needed, mixing is performed again. By doing so,
the water column is scanned until the first interface with
statically stable or neutral stratification or the bottom is reached.
An equation of state described in section 8.4 is used
for calculating the Brunt-Väisälä frequency.
The constant values const_num and const_nuh are then imposed for
the eddy viscosity
and the eddy diffusivity
, respectively.
USES:
use meanflow, only: h,t,s,buoy,NN
use eqstate, only: eqstate1
IMPLICIT NONE
INPUT PARAMETERS:
integer, intent(in) :: nlev,buoy_method
REALTYPE, intent(in) :: g,rho_0
REALTYPE, intent(in) :: const_num,const_nuh
OUTPUT PARAMETERS:
REALTYPE, intent(out) :: num(1:nlev),nuh(1:nlev)REVISION HISTORY:
Original author(s): Hans Burchard & Karsten Bolding
$Log: convectiveadjustment.F90,v $
Revision 1.6 2005-06-27 13:44:07 kbk
modified + removed traling blanks
Revision 1.5 2004/08/18 11:39:10 lars
updated documentation
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 1.1.1.1 2001/02/12 15:55:57 gotm
initial import into CVS
Karsten Bolding 2012-01-24