Changeset 13422 for NEMO/branches/NERC
- Timestamp:
- 2020-08-21T15:10:02+02:00 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/NERC/dev_release-3.4_NEMOTAM_consolidated/NEMOGCM/NEMO/OPATAM_SRC/TAM/trj_tam.F90
r11809 r13422 162 162 END SUBROUTINE tl_trj_ini 163 163 164 SUBROUTINE trj_rea( kstp, kdir )164 SUBROUTINE trj_rea( kstp, kdir, lreset ) 165 165 !!----------------------------------------------------------------------- 166 166 !! … … 186 186 & kstp, & ! Step for requested trajectory 187 187 & kdir ! Direction for stepping (1 forward, -1 backward) 188 LOGICAL, INTENT(in), OPTIONAL :: lreset ! Reset interpolation at given time step (Note, sensitive to value of kdir) 188 189 !! * Local declarations 189 190 CHARACTER (LEN=100) :: & … … 203 204 ! Initialize data and open file 204 205 !! if step time is corresponding to a saved state 205 IF ( ( MOD( kstp - nit000 + 1, nn_ittrjfrq ) == 0 ) ) THEN206 207 it = kstp - nit000 + 1206 IF ( ( MOD( kstp - nit000 + 1, nn_ittrjfrq ) == 0 ) .OR. PRESENT(lreset) ) THEN 207 208 it = ((kstp - nit000 + 1) - MOD(kstp - nit000 + 1, nn_ittrjfrq)) 208 209 209 210 IF ( inumtrj1 == -1 ) THEN … … 313 314 IF ( ( kstp /= nitend ) .AND. & 314 315 & ( kstp - nit000 + 1 /= 0 ) .AND. & 315 & ( kdir == -1 ) ) THEN 316 & ( kdir == -1 ) .AND. & 317 & .NOT.PRESENT(lreset) ) THEN 316 318 317 319 stpr2 = stpr1 … … 385 387 386 388 IF ( ( kstp - nit000 + 1 == 0 ) .AND.( kdir == 1 ) .OR. & 387 & ( kstp - nit000 + 1 /= 0 ) .AND.( kdir == -1 ) ) THEN 389 & ( kstp - nit000 + 1 /= 0 ) .AND.( kdir == -1 ) .OR. & 390 & PRESENT(lreset) ) THEN 388 391 389 392 IF ( kdir == -1 ) inrcm = inrcm - 1 … … 452 455 IF ( ( kstp - nit000 + 1 /= 0 ) .AND. & 453 456 & ( kstp /= nitend ) .AND. & 454 & ( kdir == 1 ) ) THEN 457 & ( kdir == 1 ) .AND. & 458 & .NOT.PRESENT(lreset) ) THEN 455 459 456 460 stpr1 = stpr2 … … 510 514 511 515 IF ( ( ( kstp /= nitend ) .AND. ( kdir == 1 )) .OR. & 512 & ( kstp == nitend ) .AND.( kdir == -1 ) ) THEN 516 & ( kstp == nitend ) .AND.( kdir == -1 ) .OR. & 517 & PRESENT(lreset) ) THEN 513 518 514 519 ! Define the input file … … 572 577 ENDIF 573 578 579 ENDIF 580 581 IF ((inumtrj1==-1).OR.(inumtrj2==-1)) THEN 582 IF(lwp) WRITE(numout,*) ' Warning! Trajectory data not available!' 574 583 ENDIF 575 584 … … 622 631 zwtr2 = ( zstp - stpr1 ) * zden 623 632 END IF 624 IF ( kstp == nit000-1) THEN633 IF (( kstp == nit000-1 ).OR.(PRESENT(lreset).AND.(kdir==1))) THEN 625 634 tsb(:,:,:,:) = tsn(:,:,:,:) 626 635 ub(:,:,:) = un(:,:,:)
Note: See TracChangeset
for help on using the changeset viewer.