File indexing completed on 2020-04-27 05:10:45 UTC
view on githubraw file Latest commit 533b1afc on 2020-03-10 22:11:22 UTC
6ac14281aa Jean*0001 #include "CPP_OPTIONS.h"
0002
0003
0004
0005
8b745dc884 Jean*0006 SUBROUTINE PRESSURE_FOR_EOS(
533b1afce7 Jean*0007 I bi, bj, iMin, iMax, jMin, jMax, k, dpRef,
6ac14281aa Jean*0008 O locPres,
0009 I myThid )
0010
0011
8b745dc884 Jean*0012
0013
6ac14281aa Jean*0014
533b1afce7 Jean*0015
0016
0017
0018
0019
6ac14281aa Jean*0020
0021
0022
0023
0024
0025 IMPLICIT NONE
0026
0027 #include "SIZE.h"
0028 #include "EEPARAMS.h"
0029 #include "PARAMS.h"
0030 #include "GRID.h"
0031 #include "DYNVARS.h"
759f945c40 Jean*0032 #ifdef ALLOW_NONHYDROSTATIC
0033 # include "NH_VARS.h"
0034 #endif /* ALLOW_NONHYDROSTATIC */
6ac14281aa Jean*0035
0036
0037
533b1afce7 Jean*0038
0039
0040
0041
0042
0043
6ac14281aa Jean*0044 INTEGER bi, bj, k
0045 INTEGER iMin,iMax,jMin,jMax
533b1afce7 Jean*0046 _RL dpRef
6ac14281aa Jean*0047 _RL locPres(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
0048 INTEGER myThid
0049
0050
0051
0052
0053 INTEGER i,j
0054
0055
533b1afce7 Jean*0056
0057
9669509dca Jean*0058 IF ( usingZCoords ) THEN
6ac14281aa Jean*0059
759f945c40 Jean*0060 #ifdef ALLOW_NONHYDROSTATIC
0061 IF ( selectP_inEOS_Zc.EQ.3 ) THEN
0062
0063 DO j=1-OLy,sNy+OLy
0064 DO i=1-OLx,sNx+OLx
0065 locPres(i,j) = rhoConst*(
0066 & totPhiHyd(i,j,k,bi,bj)
7fc53bea2b Jean*0067 & +( phi_nh(i,j,k,bi,bj) - dPhiNH(i,j,bi,bj) )
533b1afce7 Jean*0068 & + phiRef(2*k) ) + dpRef
759f945c40 Jean*0069 ENDDO
0070 ENDDO
0071 ELSEIF ( selectP_inEOS_Zc.EQ.2 ) THEN
0072 #else /* ALLOW_NONHYDROSTATIC */
0073 IF ( selectP_inEOS_Zc.EQ.2 ) THEN
0074 #endif /* ALLOW_NONHYDROSTATIC */
0075
6ac14281aa Jean*0076
0077
759f945c40 Jean*0078
6ac14281aa Jean*0079
901f12b7bc Jean*0080 DO j=1-OLy,sNy+OLy
0081 DO i=1-OLx,sNx+OLx
6ac14281aa Jean*0082 locPres(i,j) = rhoConst*(
0083 & totPhiHyd(i,j,k,bi,bj)
533b1afce7 Jean*0084 & + phiRef(2*k) ) + dpRef
6ac14281aa Jean*0085 ENDDO
0086 ENDDO
759f945c40 Jean*0087
0088
0089
0090 ELSEIF ( selectP_inEOS_Zc.LE.1 ) THEN
0091
0092
0093 DO j=1-OLy,sNy+OLy
0094 DO i=1-OLx,sNx+OLx
533b1afce7 Jean*0095 locPres(i,j) = pRef4EOS(k) + dpRef
759f945c40 Jean*0096 ENDDO
0097 ENDDO
6ac14281aa Jean*0098 ELSE
759f945c40 Jean*0099
901f12b7bc Jean*0100 DO j=1-OLy,sNy+OLy
0101 DO i=1-OLx,sNx+OLx
533b1afce7 Jean*0102 locPres(i,j) = rhoConst*phiRef(2*k) + dpRef
6ac14281aa Jean*0103 ENDDO
0104 ENDDO
0105 ENDIF
9669509dca Jean*0106 ELSEIF ( usingPCoords ) THEN
6ac14281aa Jean*0107
0108
901f12b7bc Jean*0109 DO j=1-OLy,sNy+OLy
0110 DO i=1-OLx,sNx+OLx
533b1afce7 Jean*0111 locPres(i,j) = rC(k) + dpRef
6ac14281aa Jean*0112 ENDDO
0113 ENDDO
0114 ENDIF
0115
8b745dc884 Jean*0116 RETURN
6ac14281aa Jean*0117 END