- Timestamp:
- 2012-02-25T16:50:01+01:00 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2012/dev_r3309_LOCEAN12_Ediag/NEMOGCM/NEMO/TOP_SRC/TRP/trdmld_trc.F90
r3294 r3318 4 4 !! Ocean diagnostics: mixed layer passive tracer trends 5 5 !!====================================================================== 6 !! History : 9.0 !06-08 (C. Deltel) Original code (from trdmld.F90)7 !! !07-04 (C. Deltel) Bug fix : add trcrad trends8 !! !07-06 (C. Deltel) key_gyre : do not call lbc_lnk6 !! History : 1.0 ! 2006-08 (C. Deltel) Original code (from trdmld.F90) 7 !! - ! 2007-04 (C. Deltel) Bug fix : add trcrad trends 8 !! - ! 2007-06 (C. Deltel) key_gyre : do not call lbc_lnk 9 9 !!---------------------------------------------------------------------- 10 10 #if defined key_top && ( defined key_trdmld_trc || defined key_esopa ) … … 23 23 USE zdfddm , ONLY : avs !: salinity vertical diffusivity coeff. at w-point 24 24 # endif 25 USE trdmld_trc_rst ! restart for diagnosing the ML trends 25 26 USE trcnam_trp ! passive tracers transport namelist variables 26 27 USE trdmod_trc_oce ! definition of main arrays used for trends computations 27 USE in_out_manager ! I/O manager28 28 USE dianam ! build the name of file (routine) 29 29 USE ldfslp ! iso-neutral slopes 30 USE in_out_manager ! I/O manager 30 31 USE ioipsl ! NetCDF library 31 32 USE lbclnk ! ocean lateral boundary conditions (or mpp link) 32 33 USE lib_mpp ! MPP library 33 USE trdmld_trc_rst ! restart for diagnosing the ML trends34 34 USE prtctl ! print control 35 35 USE sms_pisces ! PISCES bio-model 36 36 USE sms_lobster ! LOBSTER bio-model 37 37 USE wrk_nemo ! Memory Allocation 38 38 39 IMPLICIT NONE 39 40 PRIVATE … … 46 47 PUBLIC trd_mld_bio_zint 47 48 48 CHARACTER (LEN=40) :: clhstnam ! name of the trends NetCDF file49 INTEGER :: nmoymltrd49 CHARACTER (LEN=40) :: clhstnam ! name of the trends NetCDF file 50 INTEGER :: nmoymltrd 50 51 INTEGER, ALLOCATABLE, SAVE, DIMENSION(:) :: ndextrd1 51 52 INTEGER, DIMENSION(jptra) :: nidtrd, nh_t … … 61 62 62 63 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:,:) :: ztmltrd2 ! 63 #if defined key_lobster 64 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) :: ztmltrdbio2 ! only needed for mean diagnostics in trd_mld_bio() 65 #endif 64 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) :: ztmltrdbio2 ! only needed for mean diagnostics in trd_mld_bio() 66 65 67 66 !! * Substitutions 68 67 # include "top_substitute.h90" 68 # include "zdfddm_substitute.h90" 69 69 !!---------------------------------------------------------------------- 70 70 !! NEMO/TOP 3.3 , NEMO Consortium (2010) … … 367 367 !! In IV), the appropriate trends are written in the trends NetCDF file. 368 368 !! 369 !! References : 370 !! - Vialard & al. 371 !! - See NEMO documentation (in preparation) 372 !!---------------------------------------------------------------------- 373 ! 369 !! References: Vialard et al., 2001, JPO. 370 !!---------------------------------------------------------------------- 374 371 INTEGER, INTENT(in) :: kt ! ocean time-step index 375 372 ! 376 INTEGER :: ji, jj, jk, jl, ik, it, itmod, jn 377 REAL(wp) :: zavt, zfn, zfn2 378 ! 379 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmltot ! d(trc)/dt over the anlysis window (incl. Asselin) 380 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmlres ! residual = dh/dt entrainment term 381 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmlatf ! for storage only 382 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmlrad ! for storage only (for trb<0 corr in trcrad) 383 ! 384 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmltot2 ! -+ 385 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmlres2 ! | working arrays to diagnose the trends 386 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmltrdm2 ! | associated with the time meaned ML 387 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmlatf2 ! | passive tracers 388 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmlrad2 ! | (-> for trb<0 corr in trcrad) 373 INTEGER :: ji, jj, jk, jl ! dummy loop indices 374 INTEGER :: ik, it, itmod, jn ! local integers 375 REAL(wp):: zavt, zfn, zfn2 ! local scalars 376 ! 377 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmltot ! d(trc)/dt over the anlysis window (incl. Asselin) 378 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmlres ! residual = dh/dt entrainment term 379 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmlatf ! for storage only 380 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmlrad ! for storage only (for trb<0 corr in trcrad) 381 ! 382 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmltot2 ! -+ 383 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmlres2 ! | working arrays to diagnose the trends 384 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmltrdm2 ! | associated with the time meaned ML 385 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmlatf2 ! | passive tracers 386 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztmlrad2 ! | (-> for trb<0 corr in trcrad) 389 387 ! 390 388 CHARACTER (LEN= 5) :: clvar 391 389 #if defined key_dimgout 392 INTEGER :: iyear, imon,iday390 INTEGER :: iyear, imon, iday 393 391 CHARACTER(LEN=80) :: cltext, clmode 394 392 #endif
Note: See TracChangeset
for help on using the changeset viewer.