- Timestamp:
- 2020-08-24T14:22:55+02:00 (4 years ago)
- Location:
- NEMO/branches/NERC/dev_release-3.4_NEMOTAM_consolidated/NEMOGCM/NEMO/OPA_SRC
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/NERC/dev_release-3.4_NEMOTAM_consolidated/NEMOGCM/NEMO/OPA_SRC/DYN/sshwzv.F90
r3689 r13431 8 8 !! - ! 2010-05 (K. Mogensen, A. Weaver, M. Martin, D. Lea) Assimilation interface 9 9 !! - ! 2010-09 (D.Storkey and E.O'Dea) bug fixes for BDY module 10 !! 3.4 ! 2012-10 (A. Weaver and K. Mogensen) Fix for direct initialization 10 11 !!---------------------------------------------------------------------- 11 12 … … 156 157 ! 157 158 z2dt = 2._wp * rdt ! set time step size (Euler/Leapfrog) 158 IF( neuler == 0 .AND. kt == nit000 ) z2dt = rdt 159 IF( neuler == 0 .AND. kt == nit000 ) THEN 160 161 ! Need to update hdivb and rotb for assimilation with direct initialization 162 z2dt = rdt 163 rotb (:,:,:) = rotn (:,:,:) ! Update before fields 164 hdivb(:,:,:) = hdivn(:,:,:) 165 166 ENDIF 159 167 160 168 ! !------------------------------! -
NEMO/branches/NERC/dev_release-3.4_NEMOTAM_consolidated/NEMOGCM/NEMO/OPA_SRC/IOM/restart.F90
r3294 r13431 24 24 USE trdmld_oce ! ocean active mixed layer tracers trends variables 25 25 USE domvvl ! variable volume 26 USE sol_oce ! gcx,gcb arrays. 27 USE dynspg_oce ! pressure gradient schemes 26 28 27 29 IMPLICIT NONE … … 207 209 ENDIF 208 210 #endif 211 ! Initialisation of SSH 212 IF (lk_dynspg_flt) THEN ! Filtered free surface flag 213 ! copied from flt_rst 214 IF(lwp) WRITE(numout,*)'Reading gcx, gcxb for SSH in ASM/OBS.' 215 IF (sol_oce_alloc()/=0) THEN 216 CALL ctl_stop( 'STOP', 'restart : unable to allocate sol_oce arrays' ) 217 ENDIF 218 IF( iom_varid( numror, 'gcx' ) > 0 ) THEN 219 ! Caution : extra-hallow 220 ! gcx and gcxb are defined as: DIMENSION(1-jpr2di:jpi+jpr2di,1-jpr2dj:jpj+jpr2dj) 221 CALL iom_get( numror, jpdom_autoglo, 'gcx' , gcx (1:jpi,1:jpj) ) 222 CALL iom_get( numror, jpdom_autoglo, 'gcxb', gcxb(1:jpi,1:jpj) ) 223 IF( neuler == 0 ) THEN 224 gcxb(:,:) = gcx (:,:) 225 ENDIF 226 ELSE 227 gcx (:,:) = 0.e0 228 gcxb(:,:) = 0.e0 229 ENDIF 230 ENDIF 209 231 ! 210 232 IF( neuler == 0 ) THEN ! Euler restart (neuler=0) -
NEMO/branches/NERC/dev_release-3.4_NEMOTAM_consolidated/NEMOGCM/NEMO/OPA_SRC/SOL/solsor.F90
r3294 r13431 77 77 ijpr2d = MAX( jpr2di , jpr2dj ) 78 78 icount = 0 79 gcr=0. 79 80 ! ! ============== 80 81 DO jn = 1, nn_nmax ! Iterative loop … … 139 140 CASE ( 1 ) ! relative precision 140 141 ztab = 0. 141 ztab( :,:) = gcr(2:nlci-1,2:nlcj-1)142 ztab(2:nlci-1,2:nlcj-1) = gcr(2:nlci-1,2:nlcj-1) 142 143 rnorme = glob_sum( ztab) ! sum over the global domain 143 144 ! test of convergence 145 res = SQRT( rnorme ) 144 146 IF( rnorme < epsr .OR. jn == nn_nmax ) THEN 145 res = SQRT( rnorme )146 147 niter = jn 147 148 ncut = 999 … … 150 151 151 152 !**** 152 ! IF(lwp)WRITE(numsol,9300) jn, res, sqrt( epsr ) / eps153 IF(lwp)WRITE(numsol,9300) jn, res, SQRT( epsr ) / eps 153 154 9300 FORMAT(' niter :',i4,' res :',e20.10,' b :',e20.10) 154 155 !**** -
NEMO/branches/NERC/dev_release-3.4_NEMOTAM_consolidated/NEMOGCM/NEMO/OPA_SRC/SOL/solver.F90
r3693 r13431 83 83 84 84 ! ! allocate solver arrays 85 IF( .NOT. lk_agrif .OR. .NOT. ln_rstart) THEN 85 IF( ( .NOT. lk_agrif .OR. .NOT. ln_rstart ) .AND. & 86 & ( .NOT. ( lk_dynspg_flt .AND. ln_rstart ) ) ) THEN 86 87 IF( sol_oce_alloc() /= 0 ) CALL ctl_stop( 'STOP', 'solver_init : unable to allocate sol_oce arrays' ) 87 88 ENDIF
Note: See TracChangeset
for help on using the changeset viewer.