32 |
C I,J,K |
C I,J,K |
33 |
INTEGER bi, bj |
INTEGER bi, bj |
34 |
INTEGER I, J, K |
INTEGER I, J, K |
35 |
|
_RL hFacTmp |
36 |
#ifdef ALLOW_NONHYDROSTATIC |
#ifdef ALLOW_NONHYDROSTATIC |
37 |
INTEGER Km1 |
INTEGER Km1 |
38 |
_RL hFacUpper,hFacLower |
_RL hFacUpper,hFacLower |
64 |
hFacC(I,J,K,bi,bj) = |
hFacC(I,J,K,bi,bj) = |
65 |
& (rF(K)*rkFac-H(I,J,bi,bj)*rkFac)*recip_drF(K) |
& (rF(K)*rkFac-H(I,J,bi,bj)*rkFac)*recip_drF(K) |
66 |
ENDIF |
ENDIF |
67 |
C Impose minimum fraction |
C Impose minimum fraction and/or size |
68 |
IF (hFacC(I,J,K,bi,bj).LT.hFacMin) THEN |
hFacTmp=max( hFacMin , min(hFacMinDr*recip_drF(k),1.) ) |
69 |
IF (hFacC(I,J,K,bi,bj).LT.hFacMin*0.5) THEN |
IF (hFacC(I,J,K,bi,bj).LT.hFacTmp) THEN |
70 |
|
IF (hFacC(I,J,K,bi,bj).LT.hFacTmp*0.5) THEN |
71 |
hFacC(I,J,K,bi,bj)=0. |
hFacC(I,J,K,bi,bj)=0. |
72 |
ELSE |
ELSE |
73 |
hFacC(I,J,K,bi,bj)=hFacMin |
hFacC(I,J,K,bi,bj)=hFacTmp |
|
ENDIF |
|
|
ENDIF |
|
|
C Impose minimum size (dimensional) |
|
|
IF (drF(k)*hFacC(I,J,K,bi,bj).LT.hFacMinDr) THEN |
|
|
IF (drF(k)*hFacC(I,J,K,bi,bj).LT.hFacMinDr*0.5) THEN |
|
|
hFacC(I,J,K,bi,bj)=0. |
|
|
ELSE |
|
|
hFacC(I,J,K,bi,bj)=hFacMinDr*recip_drF(k) |
|
74 |
ENDIF |
ENDIF |
75 |
ENDIF |
ENDIF |
76 |
depthInK(i,j,bi,bj) = depthInK(i,j,bi,bj) + 1. |
depthInK(i,j,bi,bj) = depthInK(i,j,bi,bj) + 1. |