- Timestamp:
- 2017-04-03T10:17:15+02:00 (7 years ago)
- Location:
- branches/UKMO/dev_r5518_medusa_fix_restart/NEMOGCM/NEMO
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/UKMO/dev_r5518_medusa_fix_restart/NEMOGCM/NEMO/OFF_SRC/dtadyn.F90
r7850 r7865 546 546 ! Partial steps: before Horizontal DErivative 547 547 IF( ln_zps .AND. .NOT. ln_isfcav) & 548 & CALL zps_hde ( kt, jpts, pts, gtsu, gtsv, & ! Partial steps: before horizontal gradient 548 & CALL zps_hde ( kt, jpts, pts, & 549 & fse3w_n, gdept_n, & 550 & gtsu, gtsv, & ! Partial steps: before horizontal gradient 549 551 & rhd, gru , grv ) ! of t, s, rd at the last ocean level 550 552 IF( ln_zps .AND. ln_isfcav) & 551 & CALL zps_hde_isf( kt, jpts, pts, gtsu, gtsv, & ! Partial steps for top cell (ISF) 553 & CALL zps_hde_isf( kt, jpts, pts, & 554 & fse3w_n, gdept_n, gdep3w_n, & 555 & gtsu, gtsv, & ! Partial steps for top cell (ISF) 552 556 & rhd, gru , grv , aru , arv , gzu , gzv , ge3ru , ge3rv , & 553 557 & gtui, gtvi, grui, grvi, arui, arvi, gzui, gzvi, ge3rui, ge3rvi ) ! of t, s, rd at the first ocean level -
branches/UKMO/dev_r5518_medusa_fix_restart/NEMOGCM/NEMO/OPA_SRC/ASM/asminc.F90
r7850 r7865 646 646 !! ** Action : 647 647 !!---------------------------------------------------------------------- 648 USE dom_oce, ONLY: e3w_n 649 648 650 INTEGER, INTENT(IN) :: kt ! Current time step 649 651 ! … … 747 749 748 750 IF( ln_zps .AND. .NOT. lk_c1d .AND. .NOT. ln_isfcav) & 749 & CALL zps_hde ( kt, jpts, tsb, gtsu, gtsv, & ! Partial steps: before horizontal gradient 751 & CALL zps_hde ( kt, jpts, tsb, e3w_n, gdept_n, & 752 & gtsu, gtsv, & ! Partial steps: before horizontal gradient 750 753 & rhd, gru , grv ) ! of t, s, rd at the last ocean level 751 754 IF( ln_zps .AND. .NOT. lk_c1d .AND. ln_isfcav) & 752 & CALL zps_hde_isf( nit000, jpts, tsb, gtsu, gtsv, & ! Partial steps for top cell (ISF) 755 & CALL zps_hde_isf( nit000, jpts, tsb, & 756 & e3w_n, gdept_n, gdep3w_n, & 757 & gtsu, gtsv, & ! Partial steps for top cell (ISF) 753 758 & rhd, gru , grv , aru , arv , gzu , gzv , ge3ru , ge3rv , & 754 759 & gtui, gtvi, grui, grvi, arui, arvi, gzui, gzvi, ge3rui, ge3rvi ) ! of t, s, rd at the last ocean level -
branches/UKMO/dev_r5518_medusa_fix_restart/NEMOGCM/NEMO/OPA_SRC/DOM/istate.F90
r7850 r7865 130 130 #if ! defined key_c1d 131 131 IF( ln_zps .AND. .NOT. ln_isfcav) & 132 & CALL zps_hde ( nit000, jpts, tsb, gtsu, gtsv, & ! Partial steps: before horizontal gradient 132 & CALL zps_hde ( nit000, jpts, tsb, & 133 & e3w_n, gdept_n, gtsu, gtsv, & ! Partial steps: before horizontal gradient 133 134 & rhd, gru , grv ) ! of t, s, rd at the last ocean level 134 135 IF( ln_zps .AND. ln_isfcav) & 135 & CALL zps_hde_isf( nit000, jpts, tsb, gtsu, gtsv, & ! Partial steps for top cell (ISF) 136 & CALL zps_hde_isf( nit000, jpts, tsb, & 137 & e3w_n, gdept_n, gdep3w_n, & 138 & gtsu, gtsv, & ! Partial steps for top cell (ISF) 136 139 & rhd, gru , grv , aru , arv , gzu , gzv , ge3ru , ge3rv , & 137 140 & gtui, gtvi, grui, grvi, arui, arvi, gzui, gzvi, ge3rui, ge3rvi ) ! of t, s, rd at the last ocean level -
branches/UKMO/dev_r5518_medusa_fix_restart/NEMOGCM/NEMO/OPA_SRC/TRA/zpshde.F90
r7850 r7865 32 32 33 33 !! * Substitutions 34 # include "domzgr_substitute.h90"35 34 # include "vectopt_loop_substitute.h90" 36 35 !!---------------------------------------------------------------------- … … 41 40 CONTAINS 42 41 43 SUBROUTINE zps_hde( kt, kjpt, pta, pgtu, pgtv, &42 SUBROUTINE zps_hde( kt, kjpt, pta, fse3w, fsdept, pgtu, pgtv, & 44 43 & prd, pgru, pgrv ) 45 44 !!---------------------------------------------------------------------- … … 89 88 INTEGER , INTENT(in ) :: kjpt ! number of tracers 90 89 REAL(wp), DIMENSION(jpi,jpj,jpk,kjpt), INTENT(in ) :: pta ! 4D tracers fields 90 REAL(wp), DIMENSION(jpi,jpj,jpk) , INTENT(in ) :: fse3w ! Vertical scale factor on w pts 91 REAL(wp), DIMENSION(jpi,jpj,jpk) , INTENT(in ) :: fsdept ! Depth now at t pts 91 92 REAL(wp), DIMENSION(jpi,jpj, kjpt), INTENT( out) :: pgtu, pgtv ! hor. grad. of ptra at u- & v-pts 92 93 REAL(wp), DIMENSION(jpi,jpj,jpk ), INTENT(in ), OPTIONAL :: prd ! 3D density anomaly fields … … 196 197 END SUBROUTINE zps_hde 197 198 ! 198 SUBROUTINE zps_hde_isf( kt, kjpt, pta, pgtu, pgtv,&199 SUBROUTINE zps_hde_isf( kt, kjpt, pta, fse3w, fsdept, fsde3w, pgtu, pgtv, & 199 200 & prd, pgru, pgrv, pmru, pmrv, pgzu, pgzv, pge3ru, pge3rv, & 200 201 & pgtui, pgtvi, pgrui, pgrvi, pmrui, pmrvi, pgzui, pgzvi, pge3rui, pge3rvi ) … … 248 249 INTEGER , INTENT(in ) :: kjpt ! number of tracers 249 250 REAL(wp), DIMENSION(jpi,jpj,jpk,kjpt), INTENT(in ) :: pta ! 4D tracers fields 251 REAL(wp), DIMENSION(jpi,jpj,jpk) , INTENT(in ) :: fse3w ! Vertical scale factor on w pts 252 REAL(wp), DIMENSION(jpi,jpj,jpk) , INTENT(in ) :: fsdept ! Depth now at t pts 253 REAL(wp), DIMENSION(jpi,jpj,jpk) , INTENT(in ) :: fsde3w ! Now depth of t pts (sum of e3w) (m) 250 254 REAL(wp), DIMENSION(jpi,jpj, kjpt), INTENT( out) :: pgtu, pgtv ! hor. grad. of ptra at u- & v-pts 251 255 REAL(wp), DIMENSION(jpi,jpj, kjpt), INTENT( out) :: pgtui, pgtvi ! hor. grad. of stra at u- & v-pts (ISF) -
branches/UKMO/dev_r5518_medusa_fix_restart/NEMOGCM/NEMO/OPA_SRC/step.F90
r7850 r7865 31 31 !! stp : OPA system time-stepping 32 32 !!---------------------------------------------------------------------- 33 USE dom_oce, ONLY: e3w_n, gdep3w_n, gdept_n 33 34 USE step_oce ! time stepping definition modules 34 35 USE iom … … 155 156 CALL eos( tsb, rhd, gdept_0(:,:,:) ) ! before in situ density 156 157 IF( ln_zps .AND. .NOT. ln_isfcav) & 157 & CALL zps_hde ( kstp, jpts, tsb, gtsu, gtsv, & ! Partial steps: before horizontal gradient 158 & CALL zps_hde ( kstp, jpts, tsb, & 159 & e3w_n, gdept_n, gtsu, gtsv, & ! Partial steps: before horizontal gradient 158 160 & rhd, gru , grv ) ! of t, s, rd at the last ocean level 159 161 IF( ln_zps .AND. ln_isfcav) & 160 & CALL zps_hde_isf( kstp, jpts, tsb, gtsu, gtsv, & ! Partial steps for top cell (ISF) 162 & CALL zps_hde_isf( kstp, jpts, tsb, & 163 & e3w_n, gdept_n, gdep3w_n, & 164 & gtsu, gtsv, & ! Partial steps for top cell (ISF) 161 165 & rhd, gru , grv , aru , arv , gzu , gzv , ge3ru , ge3rv , & 162 166 & gtui, gtvi, grui, grvi, arui, arvi, gzui, gzvi, ge3rui, ge3rvi ) ! of t, s, rd at the first ocean level … … 191 195 CALL eos ( tsn, rhd, rhop, fsdept_n(:,:,:) ) ! now in situ density for hpg computation 192 196 IF( ln_zps .AND. .NOT. ln_isfcav) & 193 & CALL zps_hde ( kstp, jpts, tsn, gtsu, gtsv, & ! Partial steps: before horizontal gradient 197 & CALL zps_hde ( kstp, jpts, tsn, & 198 & e3w_n, gdept_n, gtsu, gtsv, & ! Partial steps: before horizontal gradient 194 199 & rhd, gru , grv ) ! of t, s, rd at the last ocean level 195 200 IF( ln_zps .AND. ln_isfcav) & 196 & CALL zps_hde_isf( kstp, jpts, tsn, gtsu, gtsv, & ! Partial steps for top cell (ISF) 201 & CALL zps_hde_isf( kstp, jpts, tsn, & 202 & e3w_n, gdept_n, gdep3w_n, & 203 & gtsu, gtsv, & ! Partial steps for top cell (ISF) 197 204 & rhd, gru , grv , aru , arv , gzu , gzv , ge3ru , ge3rv , & 198 205 & gtui, gtvi, grui, grvi, arui, arvi, gzui, gzvi, ge3rui, ge3rvi ) ! of t, s, rd at the last ocean level … … 273 280 CALL eos ( tsa, rhd, rhop, fsdept_n(:,:,:) ) ! Time-filtered in situ density for hpg computation 274 281 IF( ln_zps .AND. .NOT. ln_isfcav) & 275 & CALL zps_hde ( kstp, jpts, tsa, gtsu, gtsv, & ! Partial steps: before horizontal gradient 282 & CALL zps_hde ( kstp, jpts, tsa, & 283 & e3w_n, gdept_n, gtsu, gtsv, & ! Partial steps: before horizontal gradient 276 284 & rhd, gru , grv ) ! of t, s, rd at the last ocean level 277 285 IF( ln_zps .AND. ln_isfcav) & 278 & CALL zps_hde_isf( kstp, jpts, tsa, gtsu, gtsv, & ! Partial steps for top cell (ISF) 286 & CALL zps_hde_isf( kstp, jpts, tsa, & 287 & e3w_n, gdept_n, gdep3w_n, & 288 & gtsu, gtsv, & ! Partial steps for top cell (ISF) 279 289 & rhd, gru , grv , aru , arv , gzu , gzv , ge3ru , ge3rv , & 280 290 & gtui, gtvi, grui, grvi, arui, arvi, gzui, gzvi, ge3rui, ge3rvi ) ! of t, s, rd at the last ocean level … … 284 294 CALL eos ( tsn, rhd, rhop, fsdept_n(:,:,:) ) ! now in situ density for hpg computation 285 295 IF( ln_zps .AND. .NOT. ln_isfcav) & 286 & CALL zps_hde ( kstp, jpts, tsn, gtsu, gtsv, & ! Partial steps: before horizontal gradient 296 & CALL zps_hde ( kstp, jpts, tsn, & 297 & e3w_n, gdept_n, gtsu, gtsv, & ! Partial steps: before horizontal gradient 287 298 & rhd, gru , grv ) ! of t, s, rd at the last ocean level 288 299 IF( ln_zps .AND. ln_isfcav) & 289 & CALL zps_hde_isf( kstp, jpts, tsn, gtsu, gtsv, & ! Partial steps for top cell (ISF) 300 & CALL zps_hde_isf( kstp, jpts, tsn, & 301 & e3w_n, gdept_n, gdep3w_n, & 302 & gtsu, gtsv, & ! Partial steps for top cell (ISF) 290 303 & rhd, gru , grv , aru , arv , gzu , gzv , ge3ru , ge3rv , & 291 304 & gtui, gtvi, grui, grvi, arui, arvi, gzui, gzvi, ge3rui, ge3rvi ) ! of t, s, rd at the last ocean level -
branches/UKMO/dev_r5518_medusa_fix_restart/NEMOGCM/NEMO/TOP_SRC/TRP/trctrp.F90
r7850 r7865 14 14 !!---------------------------------------------------------------------- 15 15 USE oce_trc ! ocean dynamics and active tracers variables 16 USE dom_oce, ONLY: e3w_n, gdep3w_n, gdept_n 16 17 USE trc ! ocean passive tracers variables 17 18 USE trcnam_trp ! passive tracers transport namelist variables … … 84 85 85 86 IF( ln_zps .AND. .NOT. ln_isfcav) & 86 & CALL zps_hde ( kstp, jptra, trn, gtru, gtrv ) ! Partial steps: now horizontal gradient of passive 87 & CALL zps_hde ( kstp, jptra, trn, e3w_n, gdept_n, & 88 & gtru, gtrv ) ! Partial steps: now horizontal gradient of passive 87 89 IF( ln_zps .AND. ln_isfcav) & 88 & CALL zps_hde_isf( kstp, jptra, trn, pgtu=gtru, pgtv=gtrv, pgtui=gtrui, pgtvi=gtrvi ) ! Partial steps: now horizontal gradient of passive 90 & CALL zps_hde_isf( kstp, jptra, trn, & 91 & e3w_n, gdept_n, gdep3w_n, & 92 & pgtu=gtru, pgtv=gtrv, pgtui=gtrui, pgtvi=gtrvi ) ! Partial steps: now horizontal gradient of passive 89 93 ! tracers at the bottom ocean level 90 94 ! -
branches/UKMO/dev_r5518_medusa_fix_restart/NEMOGCM/NEMO/TOP_SRC/trcini.F90
r7850 r7865 17 17 !!---------------------------------------------------------------------- 18 18 USE oce_trc ! shared variables between ocean and passive tracers 19 USE dom_oce, ONLY: e3w_n, gdep3w_n, gdept_n 19 20 USE trc ! passive tracers common variables 20 21 USE trcrst ! passive tracers restart … … 147 148 tra(:,:,:,:) = 0._wp 148 149 IF( ln_zps .AND. .NOT. lk_c1d .AND. .NOT. ln_isfcav ) & ! Partial steps: before horizontal gradient of passive 149 & CALL zps_hde ( nit000, jptra, trn, gtru, gtrv ) ! Partial steps: before horizontal gradient 150 & CALL zps_hde ( nit000, jptra, trn, e3w_n, gdept_n, & 151 & gtru, gtrv ) ! Partial steps: before horizontal gradient 150 152 IF( ln_zps .AND. .NOT. lk_c1d .AND. ln_isfcav ) & 151 & CALL zps_hde_isf( nit000, jptra, trn, pgtu=gtru, pgtv=gtrv, pgtui=gtrui, pgtvi=gtrvi ) ! tracers at the bottom ocean level 153 & CALL zps_hde_isf( nit000, jptra, trn, e3w_n, gdept_n, gdep3w_n, & 154 & pgtu=gtru, pgtv=gtrv, pgtui=gtrui, pgtvi=gtrvi ) ! tracers at the bottom ocean level 152 155 153 156
Note: See TracChangeset
for help on using the changeset viewer.