Changeset 4574
- Timestamp:
- 2014-03-26T09:32:19+01:00 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2012/dev_v3_4_STABLE_2012/NEMOGCM/NEMO/OPATAM_SRC/DYN/dynhpg_tam.F90
r3611 r4574 131 131 INTEGER :: ioptio = 0 ! temporary integer 132 132 133 ! Namelist read in opa_flg 134 ! NAMELIST/nam_dynhpg/ ln_hpg_zco, ln_hpg_zps, ln_hpg_sco, ln_hpg_hel, & 135 ! & ln_hpg_wdj, ln_hpg_djc, ln_hpg_rot, gamm 136 !!---------------------------------------------------------------------- 137 138 ! REWIND ( numnam ) ! Read Namelist nam_dynhpg : pressure gradient calculation options 139 ! READ ( numnam, nam_dynhpg ) 133 NAMELIST/namdyn_hpg/ ln_hpg_zco, ln_hpg_zps, ln_hpg_sco, & 134 & ln_hpg_djc, ln_hpg_prj, ln_dynhpg_imp 135 !!---------------------------------------------------------------------- 136 137 REWIND ( numnam ) ! Read Namelist nam_dynhpg : pressure gradient calculation options 138 READ ( numnam, namdyn_hpg ) 140 139 141 140 IF(lwp) THEN ! Control print … … 148 147 WRITE(numout,*) ' s-coord. (standard jacobian formulation) ln_hpg_sco = ', ln_hpg_sco 149 148 WRITE(numout,*) ' s-coord. (Density Jacobian: Cubic polynomial) ln_hpg_djc = ', ln_hpg_djc 149 WRITE(numout,*) ' s-coord. (Pressure Jacobian: Cubic polynomial) ln_hpg_prj = ', ln_hpg_prj 150 150 WRITE(numout,*) ' time stepping: centered (F) or semi-implicit (T) ln_dynhpg_imp = ', ln_dynhpg_imp 151 151 ENDIF … … 404 404 zcoef3 = zcoef0 * MIN( fse3w(ji,jj,ikv), fse3w(ji ,jj+1,ikv) ) 405 405 ! on i-direction 406 IF ( iku > 2 ) THEN 407 ! subtract old value 408 ua_tl(ji,jj,iku) = ua_tl(ji,jj,iku) - zhpitl(ji,jj,iku) 409 ! compute the new one 410 zhpitl (ji,jj,iku) = zhpitl(ji,jj,iku-1) & 411 + zcoef2 * ( rhd_tl(ji+1,jj,iku-1) - rhd_tl(ji,jj,iku-1) + gru_tl(ji,jj) ) / e1u(ji,jj) 412 ! add the new one to the general momentum trend 413 ua_tl(ji,jj,iku) = ua_tl(ji,jj,iku) + zhpitl(ji,jj,iku) 406 IF ( iku > 1 ) THEN ! on i-direction (level 2 or more) 407 ua_tl (ji,jj,iku) = ua_tl(ji,jj,iku) - zhpitl(ji,jj,iku) ! subtract old value 408 zhpitl(ji,jj,iku) = zhpitl(ji,jj,iku-1) & ! compute the new one 409 & + zcoef2 * ( rhd_tl(ji+1,jj,iku-1) - rhd_tl(ji,jj,iku-1) + gru_tl(ji,jj) ) / e1u(ji,jj) 410 ua_tl (ji,jj,iku) = ua_tl(ji,jj,iku) + zhpitl(ji,jj,iku) ! add the new one to the general momentum trend 414 411 ENDIF 415 ! on j-direction 416 IF ( ikv > 2 ) THEN 417 ! subtract old value 418 va_tl(ji,jj,ikv) = va_tl(ji,jj,ikv) - zhpjtl(ji,jj,ikv) 419 ! compute the new one 420 zhpjtl (ji,jj,ikv) = zhpjtl(ji,jj,ikv-1) & 421 + zcoef3 * ( rhd_tl(ji,jj+1,ikv-1) - rhd_tl(ji,jj,ikv-1) + grv_tl(ji,jj) ) / e2v(ji,jj) 422 ! add the new one to the general momentum trend 423 va_tl(ji,jj,ikv) = va_tl(ji,jj,ikv) + zhpjtl(ji,jj,ikv) 412 413 IF ( ikv > 1 ) THEN ! on j-direction 414 va_tl(ji,jj,ikv) = va_tl(ji,jj,ikv) - zhpjtl(ji,jj,ikv) ! subtract old value 415 zhpjtl (ji,jj,ikv) = zhpjtl(ji,jj,ikv-1) & ! compute the new one 416 & + zcoef3 * ( rhd_tl(ji,jj+1,ikv-1) - rhd_tl(ji,jj,ikv-1) + grv_tl(ji,jj) ) / e2v(ji,jj) 417 va_tl(ji,jj,ikv) = va_tl(ji,jj,ikv) + zhpjtl(ji,jj,ikv) ! add the new one to the general momentum trend 424 418 ENDIF 425 419 # if ! defined key_vectopt_loop
Note: See TracChangeset
for help on using the changeset viewer.