Changeset 13757 for NEMO/branches/2020/dev_r13327_KERNEL06_2_techene_e3/tests/VORTEX/MY_SRC/usrdef_istate.F90
 Timestamp:
 20201109T17:25:44+01:00 (6 months ago)
 File:

 1 edited
Legend:
 Unmodified
 Added
 Removed

NEMO/branches/2020/dev_r13327_KERNEL06_2_techene_e3/tests/VORTEX/MY_SRC/usrdef_istate.F90
r13295 r13757 27 27 28 28 PUBLIC usr_def_istate ! called by istate.F90 29 PUBLIC usr_def_ssh ! called by domqco.F90 29 30 30 31 !! * Substitutions … … 67 68 zf0 = 2._wp * omega * SIN( rad * rn_ppgphi0 ) 68 69 zumax = 1._wp * SIGN(1._wp, zf0) ! Here Anticyclonic: set zumax=1 for cyclonic 69 zlambda = SQRT(2._wp)*60.e3 ! Horizontal scale in meters 70 zlambda = SQRT(2._wp)*60.e3 ! Horizontal scale in meters 70 71 zn2 = 3.e3**2 71 72 zH = 0.5_wp * 5000._wp … … 134 135 END SUBROUTINE usr_def_istate 135 136 137 138 SUBROUTINE usr_def_ssh( ptmask, pssh ) 139 !! 140 !! *** ROUTINE usr_def_istate *** 141 !! 142 !! ** Purpose : Initialization of ssh 143 !! Here VORTEX configuration 144 !! 145 !! ** Method : Set a gaussian anomaly of pressure and associated 146 !! geostrophic velocities 147 !! 148 REAL(wp), DIMENSION(jpi,jpj,jpk) , INTENT(in ) :: ptmask ! tpoint ocean mask [m] 149 REAL(wp), DIMENSION(jpi,jpj) , INTENT( out) :: pssh ! seasurface height [m] 150 ! 151 INTEGER :: ji, jj ! dummy loop indices 152 REAL(wp) :: zx, zy, zP0, zumax, zlambda, zf0, zH, zrho1, za 153 !! 154 ! 155 IF(lwp) WRITE(numout,*) 156 IF(lwp) WRITE(numout,*) 'usr_def_ssh : VORTEX configuration, analytical definition of initial state' 157 IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~~~ ' 158 ! 159 ! 160 ! 161 zf0 = 2._wp * omega * SIN( rad * rn_ppgphi0 ) 162 zumax = 1._wp * SIGN(1._wp, zf0) ! Here Anticyclonic: set zumax=1 for cyclonic 163 zlambda = SQRT(2._wp)*60.e3 ! Horizontal scale in meters 164 zH = 0.5_wp * 5000._wp 165 ! 166 zP0 = rho0 * zf0 * zumax * zlambda * SQRT(EXP(1._wp)/2._wp) 167 ! 168 ! Sea level: 169 za = zP0 * (1._wpEXP(zH)) / (grav*(zH1._wp + EXP(zH))) 170 DO_2D( 1, 1, 1, 1 ) 171 zx = glamt(ji,jj) * 1.e3 172 zy = gphit(ji,jj) * 1.e3 173 zrho1 = rho0 + za * EXP((zx**2+zy**2)/zlambda**2) 174 pssh(ji,jj) = zP0 * EXP((zx**2+zy**2)/zlambda**2)/(zrho1*grav) * ptmask(ji,jj,1) 175 END_2D 176 177 END SUBROUTINE usr_def_ssh 178 136 179 !!====================================================================== 137 180 END MODULE usrdef_istate
Note: See TracChangeset
for help on using the changeset viewer.