1 |
C $Header: /u/gcmpack/MITgcm/pkg/monitor/mon_advcflw2.F,v 1.3 2004/04/03 04:57:11 edhill Exp $ |
2 |
C $Name: $ |
3 |
|
4 |
#include "MONITOR_OPTIONS.h" |
5 |
|
6 |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
7 |
CBOP 0 |
8 |
C !ROUTINE: MON_ADVCFLW2 |
9 |
|
10 |
C !INTERFACE: |
11 |
SUBROUTINE MON_ADVCFLW2( |
12 |
I label, W, rHFac, rDrF, dT, |
13 |
I myThid ) |
14 |
|
15 |
C !DESCRIPTION: |
16 |
C Calculates maximum CFL number in the vertical relevant for tracer |
17 |
C Adv. Pb. with Partial Cell. |
18 |
|
19 |
C !USES: |
20 |
IMPLICIT NONE |
21 |
#include "SIZE.h" |
22 |
#include "EEPARAMS.h" |
23 |
#include "MONITOR.h" |
24 |
|
25 |
C !INPUT PARAMETERS: |
26 |
CHARACTER*(*) label |
27 |
_RL W(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
28 |
_RS rHFac(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
29 |
_RS rDrF(Nr) |
30 |
_RL dT |
31 |
INTEGER myThid |
32 |
CEOP |
33 |
|
34 |
C !LOCAL VARIABLES: |
35 |
INTEGER bi,bj,I,J,K |
36 |
_RL tmpVal,theMax |
37 |
|
38 |
theMax=0. |
39 |
|
40 |
DO bj=myByLo(myThid),myByHi(myThid) |
41 |
DO bi=myBxLo(myThid),myBxHi(myThid) |
42 |
DO K=2,Nr |
43 |
DO J=1,sNy |
44 |
DO I=1,sNx |
45 |
tmpVal=abs(W(I,J,K,bi,bj))*dT |
46 |
& *max( rDrF(K)*rHfac(I,J,K,bi,bj), |
47 |
& rDrF(K-1)*rHfac(I,J,K-1,bi,bj) ) |
48 |
theMax=max(theMax,tmpVal) |
49 |
ENDDO |
50 |
ENDDO |
51 |
ENDDO |
52 |
ENDDO |
53 |
ENDDO |
54 |
_GLOBAL_MAX_RL(theMax,myThid) |
55 |
|
56 |
CALL MON_OUT_RL( label, theMax, mon_foot_max ,myThid) |
57 |
|
58 |
RETURN |
59 |
END |
60 |
|
61 |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |