- Timestamp:
- 2021-10-28T17:12:05+02:00 (3 years ago)
- Location:
- NEMO/releases/r4.0/r4.0-HEAD/src/OCE/DOM
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/releases/r4.0/r4.0-HEAD/src/OCE/DOM/domvvl.F90
r15451 r15458 131 131 e3t_a(:,:,jpk) = e3t_0(:,:,jpk) ! last level always inside the sea floor set one for all 132 132 ! 133 ! !== Set of all other vertical scale factors ==! (now and before) 133 134 CALL dom_vvl_zgr 134 135 ! … … 960 961 ! DO jk=1,jpk 961 962 ! e3t_b(:,:,jk) = e3t_0(:,:,jk) * ( ht_0(:,:) + sshb(:,:) ) & 962 ! & / ( ht_0(:,:) + 1._wp -ssmask(:,:) ) * tmask(:,:,jk) 963 ! & / ( ht_0(:,:) + 1._wp -ssmask(:,:) ) * tmask(:,:,jk) 964 ! & + e3t_0(:,:,jk) * ( 1._wp - tmask(:,:,jk) ) ! make sure e3t_b != 0 on land points 963 965 ! END DO 964 966 ! e3t_n(:,:,:) = e3t_b(:,:,:) -
NEMO/releases/r4.0/r4.0-HEAD/src/OCE/DOM/istate.F90
r13101 r15458 60 60 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:,:) :: zuvd ! U & V data workspace 61 61 !!gm end 62 REAL(wp), DIMENSION(jpi,jpj) :: z2d ! temporary array 62 63 !!---------------------------------------------------------------------- 63 64 ! … … 110 111 ENDIF 111 112 END DO 112 END DO 113 END DO 114 ! 115 IF( .NOT.ln_linssh ) THEN ! adjust initial vertical scale factors 116 sshn(:,:) = sshb(:,:) 117 z2d (:,:) = 1._wp + sshn(:,:) * ssmask(:,:) / ( ht_0(:,:) + 1._wp - ssmask(:,:) ) 118 DO jk = 1, jpkm1 119 DO jj = 1, jpj 120 DO ji = 1, jpi 121 IF( ht_0(ji,jj) + sshb(ji,jj) < rn_wdmin1 ) THEN 122 e3t_n(ji,jj,jk) = e3t_0(ji,jj,jk) * ( z2d(ji,jj) * tmask(ji,jj,jk) - ( tmask(ji,jj,jk) - 1._wp ) ) 123 e3t_b(ji,jj,jk) = e3t_n(ji,jj,jk) 124 e3t_a(ji,jj,jk) = e3t_n(ji,jj,jk) 125 ENDIF 126 END DO 127 END DO 128 END DO 129 CALL dom_vvl_zgr 130 ENDIF 131 ! 113 132 ENDIF 114 133 ub (:,:,:) = 0._wp 115 vb (:,:,:) = 0._wp 134 vb (:,:,:) = 0._wp 116 135 ! 117 136 ELSE ! user defined initial T and S 118 137 CALL usr_def_istate( gdept_b, tmask, tsb, ub, vb, sshb ) 138 ! 139 IF( .NOT.ln_linssh ) THEN ! adjust initial vertical scale factors 140 sshn(:,:) = sshb(:,:) 141 z2d (:,:) = 1._wp + sshn(:,:) * ssmask(:,:) / ( ht_0(:,:) + 1._wp - ssmask(:,:) ) 142 DO jk = 1, jpkm1 143 DO jj = 1, jpj 144 DO ji = 1, jpi 145 e3t_n(ji,jj,jk) = e3t_0(ji,jj,jk) * ( z2d(ji,jj) * tmask(ji,jj,jk) - ( tmask(ji,jj,jk) - 1._wp ) ) 146 e3t_b(ji,jj,jk) = e3t_n(ji,jj,jk) 147 e3t_a(ji,jj,jk) = e3t_n(ji,jj,jk) 148 END DO 149 END DO 150 END DO 151 CALL dom_vvl_zgr 152 ENDIF 153 ! 119 154 ENDIF 120 155 tsn (:,:,:,:) = tsb (:,:,:,:) ! set now values from to before ones
Note: See TracChangeset
for help on using the changeset viewer.