- Timestamp:
- 2017-01-25T16:37:31+01:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2015/nemo_v3_6_STABLE/NEMOGCM/NEMO/TOP_SRC/trcstp.F90
r7522 r7607 131 131 INTEGER, INTENT(in) :: kt 132 132 INTEGER :: jn 133 REAL(wp) :: zkt 133 REAL(wp) :: zkt, zrec 134 134 CHARACTER(len=1) :: cl1 ! 1 character 135 135 CHARACTER(len=2) :: cl2 ! 2 characters … … 153 153 ! 154 154 ! !* Restart: read in restart file 155 IF( ln_rsttr .AND. iom_varid( numrtr, 'qsr_mean' , ldstop = .FALSE. ) > 0 .AND. & 156 iom_varid( numrtr, 'qsr_arr_1', ldstop = .FALSE. ) > 0 .AND. & 157 iom_varid( numrtr, 'ktdcy' , ldstop = .FALSE. ) > 0 ) THEN 158 CALL iom_get( numrtr, 'ktdcy', zkt ) ! A mean of qsr 155 IF( ln_rsttr .AND. iom_varid( numrtr, 'qsr_mean' , ldstop = .FALSE. ) > 0 & 156 & .AND. iom_varid( numrtr, 'qsr_arr_1', ldstop = .FALSE. ) > 0 & 157 & .AND. iom_varid( numrtr, 'ktdcy' , ldstop = .FALSE. ) > 0 & 158 & .AND. iom_varid( numrtr, 'nrdcy' , ldstop = .FALSE. ) > 0 ) THEN 159 160 CALL iom_get( numrtr, 'ktdcy', zkt ) 159 161 rsecfst = INT( zkt ) * rdttrc(1) 160 162 IF(lwp) WRITE(numout,*) 'trc_qsr_mean: qsr_mean read in the restart file at time-step rsecfst =', rsecfst, ' s ' 161 163 CALL iom_get( numrtr, jpdom_autoglo, 'qsr_mean', qsr_mean ) ! A mean of qsr 162 DO jn = 1, nb_rec_per_day 163 IF( jn <= 9 ) THEN 164 WRITE(cl1,'(i1)') jn 165 CALL iom_get( numrtr, jpdom_autoglo, 'qsr_arr_'//cl1, qsr_arr(:,:,jn) ) ! A mean of qsr 166 ELSE 167 WRITE(cl2,'(i2.2)') jn 168 CALL iom_get( numrtr, jpdom_autoglo, 'qsr_arr_'//cl2, qsr_arr(:,:,jn) ) ! A mean of qsr 169 ENDIF 170 ENDDO 164 CALL iom_get( numrtr, 'nrdcy', zrec ) ! Number of record per days 165 IF( INT( zrec ) == nb_rec_per_day ) THEN 166 DO jn = 1, nb_rec_per_day 167 IF( jn <= 9 ) THEN 168 WRITE(cl1,'(i1)') jn 169 CALL iom_get( numrtr, jpdom_autoglo, 'qsr_arr_'//cl1, qsr_arr(:,:,jn) ) ! A mean of qsr 170 ELSE 171 WRITE(cl2,'(i2.2)') jn 172 CALL iom_get( numrtr, jpdom_autoglo, 'qsr_arr_'//cl2, qsr_arr(:,:,jn) ) ! A mean of qsr 173 ENDIF 174 ENDDO 175 ELSE 176 DO jn = 1, nb_rec_per_day 177 qsr_arr(:,:,jn) = qsr_mean(:,:) 178 ENDDO 179 ENDIF 171 180 ELSE !* no restart: set from nit000 values 172 181 IF(lwp) WRITE(numout,*) 'trc_qsr_mean: qsr_mean set to nit000 values' … … 185 194 llnew = ( rseclast - rsecfst ) .ge. rdt_sampl ! new shortwave to store 186 195 IF( llnew ) THEN 187 IF( lwp ) WRITE(numout,*) ' New shortwave to sample for TOP at time kt = ', kt, &196 IF( lwp .AND. kt < nittrc000 + 100 ) WRITE(numout,*) ' New shortwave to sample for TOP at time kt = ', kt, & 188 197 & ' time = ', rseclast/3600.,'hours ' 189 198 rsecfst = rseclast … … 199 208 IF(lwp) WRITE(numout,*) 'trc_mean_qsr : write qsr_mean in restart file kt =', kt 200 209 IF(lwp) WRITE(numout,*) '~~~~~~~' 201 zkt = REAL( kt, wp ) 202 CALL iom_rstput( kt, nitrst, numrtw, 'ktdcy', zkt ) 210 zkt = REAL( kt, wp ) 211 zrec = REAL( nb_rec_per_day, wp ) 212 CALL iom_rstput( kt, nitrst, numrtw, 'ktdcy', zkt ) 213 CALL iom_rstput( kt, nitrst, numrtw, 'nrdcy', zrec ) 203 214 DO jn = 1, nb_rec_per_day 204 215 IF( jn <= 9 ) THEN
Note: See TracChangeset
for help on using the changeset viewer.