- Timestamp:
- 2018-09-25T13:10:14+02:00 (6 years ago)
- Location:
- branches/UKMO/AMM15_v3_6_STABLE_package_FABM/NEMOGCM/NEMO/TOP_SRC/MY_TRC
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/UKMO/AMM15_v3_6_STABLE_package_FABM/NEMOGCM/NEMO/TOP_SRC/MY_TRC/trcsms_my_trc.F90
r8058 r10156 18 18 USE trd_oce 19 19 USE trdtrc 20 USE trcbc, only : trc_bc_read 20 21 21 22 IMPLICIT NONE … … 55 56 56 57 IF( l_trdtrc ) CALL wrk_alloc( jpi, jpj, jpk, ztrmyt ) 58 59 CALL trc_bc_read ( kt ) ! tracers: surface and lateral Boundary Conditions 57 60 58 61 IF( l_trdtrc ) THEN ! Save the trends in the ixed layer -
branches/UKMO/AMM15_v3_6_STABLE_package_FABM/NEMOGCM/NEMO/TOP_SRC/MY_TRC/trcwri_my_trc.F90
r8058 r10156 19 19 20 20 PUBLIC trc_wri_my_trc 21 #if defined key_tracer_budget 22 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:,:), SAVE :: trb_temp ! slwa 23 #endif 24 21 25 22 26 # include "top_substitute.h90" 23 27 CONTAINS 24 28 29 #if defined key_tracer_budget 30 SUBROUTINE trc_wri_my_trc (kt, fl) ! slwa 31 #else 25 32 SUBROUTINE trc_wri_my_trc 33 #endif 26 34 !!--------------------------------------------------------------------- 27 35 !! *** ROUTINE trc_wri_trc *** … … 29 37 !! ** Purpose : output passive tracers fields 30 38 !!--------------------------------------------------------------------- 39 #if defined key_tracer_budget 40 INTEGER, INTENT( in ), OPTIONAL :: fl 41 INTEGER, INTENT( in ) :: kt 42 REAL(wp), DIMENSION(jpi,jpj,jpk) :: trpool !tracer pool temporary output 43 #else 44 INTEGER, INTENT( in ) :: kt 45 #endif 31 46 CHARACTER (len=20) :: cltra 32 INTEGER :: jn 47 INTEGER :: jn,jk ! JC TODO jk defined here but may not be used 33 48 !!--------------------------------------------------------------------- 34 49 35 50 ! write the tracer concentrations in the file 36 51 ! --------------------------------------- 52 53 54 #if defined key_tracer_budget 55 IF( PRESENT(fl)) THEN 56 ! depth integrated 57 ! for strict budgetting write this out at end of timestep as an average between 'now' and 'after' at kt 58 DO jn = jp_myt0, jp_myt1 59 IF(ln_trdtrc (jn))THEN 60 trpool(:,:,:) = 0.5 * ( trn(:,:,:,jn) * fse3t_a(:,:,:) + & 61 trb_temp(:,:,:,jn) * fse3t(:,:,:) ) 62 cltra = TRIM( ctrcnm(jn) )//"e3t" ! depth integrated output 63 IF( kt == nittrc000 ) write(6,*)'output pool ',cltra 64 DO jk = 1, jpk 65 trpool(:,:,jk) = trpool(:,:,jk) 66 END DO 67 CALL iom_put( cltra, trpool) 68 69 END IF 70 END DO 71 72 ELSE 73 74 IF( kt == nittrc000 ) THEN 75 ALLOCATE(trb_temp(jpi,jpj,jpk,jp_my_trc)) ! slwa 76 ENDIF 77 trb_temp(:,:,:,:)=trn(:,:,:,:) ! slwa save for tracer budget (unfiltered trn) 78 79 80 END IF 81 #else 37 82 DO jn = jp_myt0, jp_myt1 38 83 cltra = TRIM( ctrcnm(jn) ) ! short title for tracer 39 84 CALL iom_put( cltra, trn(:,:,:,jn) ) 40 85 END DO 86 #endif 41 87 ! 42 88 END SUBROUTINE trc_wri_my_trc … … 48 94 PUBLIC trc_wri_my_trc 49 95 CONTAINS 50 SUBROUTINE trc_wri_my_trc ! Empty routine 96 #if defined key_tracer_budget 97 SUBROUTINE trc_wri_my_trc (kt, fl) ! slwa 98 INTEGER, INTENT( in ), OPTIONAL :: fl 99 INTEGER, INTENT( in ) :: kt 100 #else 101 ! JC TODO Subroutine arguments (kt) inconsistent with earlier definition 102 SUBROUTINE trc_wri_my_trc (kt) 103 INTEGER, INTENT( in ) :: kt 104 #endif 51 105 END SUBROUTINE trc_wri_my_trc 52 106 #endif
Note: See TracChangeset
for help on using the changeset viewer.