Changeset 2636 for branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC
- Timestamp:
- 2011-03-01T20:04:06+01:00 (13 years ago)
- Location:
- branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC
- Files:
-
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC/LOBSTER/sms_lobster.F90
r2607 r2636 11 11 !! 2.0 ! 2007-04 (C. Deltel, G. Madec) Free form and modules 12 12 !!---------------------------------------------------------------------- 13 14 13 #if defined key_lobster 15 14 !!---------------------------------------------------------------------- … … 21 20 IMPLICIT NONE 22 21 PUBLIC 23 24 !!----------------------------------------------------------------------25 !! NEMO/TOP 3.3 , NEMO Consortium (2010)26 !! $Id$27 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt)28 !!----------------------------------------------------------------------29 22 30 23 !! biological parameters … … 108 101 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:) :: cmask !: ??? 109 102 110 !!====================================================================== 111 103 !!---------------------------------------------------------------------- 104 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 105 !! $Id$ 106 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 107 !!---------------------------------------------------------------------- 112 108 CONTAINS 113 109 114 FUNCTION sms_lobster_alloc()110 INTEGER FUNCTION sms_lobster_alloc() 115 111 !!---------------------------------------------------------------------- 116 112 !! *** ROUTINE sms_lobster_alloc *** 117 113 !!---------------------------------------------------------------------- 118 USE in_out_manager, ONLY: ctl_warn 119 INTEGER :: sms_lobster_alloc 114 USE lib_mpp, ONLY: ctl_warn 120 115 !!---------------------------------------------------------------------- 121 122 ALLOCATE(remdmp(jpk,jp_lobster), & 123 neln(jpi,jpj), xze(jpi,jpj), xpar(jpi,jpj,jpk), & 124 dminl(jpi,jpj), dmin3(jpi,jpj,jpk), & 125 sedpocb(jpi,jpj), sedpocn(jpi,jpj), sedpoca(jpi,jpj), & 126 fbod(jpi,jpj), cmask(jpi,jpj) , & 127 Stat=sms_lobster_alloc) 128 129 IF(sms_lobster_alloc /= 0)THEN 130 CALL ctl_warn('sms_lobster_alloc : failed to allocate arrays.') 131 END IF 132 116 ! 117 ALLOCATE( remdmp(jpk,jp_lobster), & 118 & neln(jpi,jpj), xze(jpi,jpj), xpar(jpi,jpj,jpk), & 119 & dminl(jpi,jpj), dmin3(jpi,jpj,jpk), & 120 & sedpocb(jpi,jpj), sedpocn(jpi,jpj), sedpoca(jpi,jpj), & 121 & fbod(jpi,jpj), cmask(jpi,jpj) , STAT=sms_lobster_alloc ) 122 ! 123 IF( sms_lobster_alloc /= 0 ) CALL ctl_warn('sms_lobster_alloc : failed to allocate arrays') 124 ! 133 125 END FUNCTION sms_lobster_alloc 134 126 … … 140 132 141 133 !!====================================================================== 142 143 134 END MODULE sms_lobster -
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC/LOBSTER/trcnam_lobster.F90
r2567 r2636 10 10 !! 'key_lobster' : LOBSTER bio-model 11 11 !!---------------------------------------------------------------------- 12 !! trc_nam_lobster : LOBSTER model namelist read 13 !!---------------------------------------------------------------------- 14 USE oce_trc ! Ocean variables 15 USE par_trc ! TOP parameters 16 USE trc ! TOP variables 17 USE sms_lobster ! sms trends 18 USE in_out_manager ! I/O manager 12 !! trc_nam_lobster : LOBSTER model namelist read 13 !!---------------------------------------------------------------------- 14 USE oce_trc ! Ocean variables 15 USE par_trc ! TOP parameters 16 USE trc ! TOP variables 17 USE sms_lobster ! sms trends 18 USE in_out_manager ! I/O manager 19 USE lib_mpp ! MPP library 19 20 20 21 IMPLICIT NONE -
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC/LOBSTER/trcopt.F90
r2633 r2636 21 21 USE sms_lobster 22 22 USE prtctl_trc ! Print control for debbuging 23 USE lib_mpp ! MPP library 23 24 24 25 IMPLICIT NONE … … 69 70 70 71 IF( (wrk_in_use(2, 1,2)) .OR. (wrk_in_use(3, 2,3)) )THEN 71 CALL ctl_stop('trc_opt : requested workspace arrays unavailable.') 72 RETURN 72 CALL ctl_stop('trc_opt : requested workspace arrays unavailable') ; RETURN 73 73 END IF 74 74 … … 138 138 ENDIF 139 139 ! 140 IF( (wrk_not_released(2, 1,2)) .OR. (wrk_not_released(3, 2,3)) )THEN 141 CALL ctl_stop('trc_opt : failed to release workspace arrays.') 142 END IF 140 IF( wrk_not_released(2, 1,2) .OR. wrk_not_released(3, 2,3) ) & 141 CALL ctl_stop('trc_opt : failed to release workspace arrays') 143 142 ! 144 143 END SUBROUTINE trc_opt -
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC/LOBSTER/trcsms_lobster.F90
r2633 r2636 13 13 !! trcsms_lobster : Time loop of passive tracers sms 14 14 !!---------------------------------------------------------------------- 15 USE oce_trc !15 USE oce_trc ! 16 16 USE trc 17 17 USE trcbio … … 23 23 USE trdmod_trc 24 24 USE trdmld_trc 25 USE lib_mpp ! MPP library 25 26 26 27 IMPLICIT NONE … … 32 33 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 33 34 !! $Id$ 34 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt)35 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 35 36 !!---------------------------------------------------------------------- 36 37 37 CONTAINS 38 38 … … 53 53 !! -------------------------------------------------------------------- 54 54 55 IF(wrk_in_use(3,1))THEN 56 CALL ctl_stop('trc_sms_lobster : requested workspace array unavailable.') 57 RETURN 58 END IF 55 IF( wrk_in_use(3,1) ) THEN 56 CALL ctl_stop('trc_sms_lobster : requested workspace array unavailable') ; RETURN 57 ENDIF 59 58 60 59 CALL trc_opt( kt ) ! optical model … … 72 71 IF( lk_trdmld_trc ) CALL trd_mld_bio( kt ) ! trends: Mixed-layer 73 72 74 IF(wrk_not_released(3,1))THEN 75 CALL ctl_stop('trc_sms_lobster : failed to release workspace array.') 76 END IF 77 73 IF( wrk_not_released(3,1) ) CALL ctl_stop('trc_sms_lobster : failed to release workspace array.') 74 ! 78 75 END SUBROUTINE trc_sms_lobster 79 76 -
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC/TRP/trcadv.F90
r2633 r2636 10 10 !!---------------------------------------------------------------------- 11 11 !! 'key_top' TOP models 12 !!----------------------------------------------------------------------13 12 !!---------------------------------------------------------------------- 14 13 !! trc_adv : compute ocean tracer advection trend … … 27 26 USE ldftra_oce ! lateral diffusion coefficient on tracers 28 27 USE in_out_manager ! I/O manager 29 USE prtctl_trc ! Print control 28 USE lib_mpp ! MPP library 29 USE prtctl_trc ! Print control 30 30 31 31 IMPLICIT NONE -
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC/TRP/trcnxt.F90
r2610 r2636 3 3 !! *** MODULE trcnxt *** 4 4 !! Ocean passive tracers: time stepping on passives tracers 5 !!======================================================================6 5 !!====================================================================== 7 6 !! History : 7.0 ! 1991-11 (G. Madec) Original code … … 27 26 !! trc_nxt : time stepping on passive tracers 28 27 !!---------------------------------------------------------------------- 29 !! * Modules used30 28 USE oce_trc ! ocean dynamics and tracers variables 31 29 USE trc ! ocean passive tracers variables … … 43 41 PRIVATE 44 42 45 !! * Routine accessibility 46 PUBLIC trc_nxt ! routine called by step.F90 47 PUBLIC trc_nxt_alloc ! routine called by nemogcm.F90 43 PUBLIC trc_nxt ! routine called by step.F90 44 PUBLIC trc_nxt_alloc ! routine called by nemogcm.F90 48 45 49 46 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:) :: r2dt 47 50 48 !!---------------------------------------------------------------------- 51 49 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 52 50 !! $Id$ 53 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt)51 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 54 52 !!---------------------------------------------------------------------- 55 56 53 CONTAINS 57 54 58 FUNCTION trc_nxt_alloc()55 INTEGER FUNCTION trc_nxt_alloc() 59 56 !!---------------------------------------------------------------------- 60 57 !! *** ROUTINE trc_nxt_alloc *** 61 58 !!---------------------------------------------------------------------- 62 INTEGER :: trc_nxt_alloc59 USE lib_mpp, ONLY: ctl_warn 63 60 !!---------------------------------------------------------------------- 64 61 ! 65 62 ALLOCATE( r2dt(jpk), Stat=trc_nxt_alloc) 66 67 IF(trc_nxt_alloc /= 0)THEN 68 CALL ctl_warn('trc_nxt_alloc : failed to allocate array.') 69 ENDIF 70 63 ! 64 IF( trc_nxt_alloc /= 0 ) CALL ctl_warn('trc_nxt_alloc : failed to allocate array') 65 ! 71 66 END FUNCTION trc_nxt_alloc 72 67 -
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC/TRP/trcsbc.F90
r2633 r2636 16 16 !! trc_sbc : update the tracer trend at ocean surface 17 17 !!---------------------------------------------------------------------- 18 !! * Modules used 19 USE oce_trc ! ocean dynamics and active tracers variables 20 USE trc ! ocean passive tracers variables 21 USE prtctl_trc ! Print control for debbuging 18 USE oce_trc ! ocean dynamics and active tracers variables 19 USE trc ! ocean passive tracers variables 20 USE prtctl_trc ! Print control for debbuging 22 21 USE trdmod_oce 23 22 USE trdtra 23 USE lib_mpp ! MPP library 24 24 25 25 IMPLICIT NONE 26 26 PRIVATE 27 27 28 !! * Routine accessibility 29 PUBLIC trc_sbc ! routine called by step.F90 28 PUBLIC trc_sbc ! routine called by step.F90 30 29 31 30 !! * Substitutions … … 34 33 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 35 34 !! $Id$ 36 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt)35 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 37 36 !!---------------------------------------------------------------------- 38 39 37 CONTAINS 40 38 … … 62 60 USE wrk_nemo, ONLY: wrk_in_use, wrk_not_released 63 61 USE wrk_nemo, zemps => wrk_2d_1 64 ! ! * Arguments62 ! 65 63 INTEGER, INTENT( in ) :: kt ! ocean time-step index 66 67 !! * Local declarations 64 ! 68 65 INTEGER :: ji, jj, jn ! dummy loop indices 69 66 REAL(wp) :: zsrau, zse3t ! temporary scalars … … 73 70 74 71 IF(wrk_in_use(2, 1))THEN 75 CALL ctl_stop('trc_sbc: requested workspace array unavailable.') 76 RETURN 72 CALL ctl_stop('trc_sbc: requested workspace array unavailable.') ; RETURN 77 73 END IF 78 74 … … 126 122 ENDIF 127 123 128 IF(wrk_not_released(2, 1))THEN 129 CALL ctl_stop('trc_sbc: failed to release workspace array.') 130 END IF 131 124 IF( wrk_not_released(2, 1) ) CALL ctl_stop('trc_sbc: failed to release workspace array') 125 ! 132 126 END SUBROUTINE trc_sbc 133 127 -
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC/TRP/trczdf.F90
r2606 r2636 20 20 USE trazdf_exp ! vertical diffusion: explicit (tra_zdf_exp routine) 21 21 USE trazdf_imp ! vertical diffusion: implicit (tra_zdf_imp routine) 22 USE trdmod_oce 23 USE trdtra 22 24 USE prtctl_trc ! Print control 23 25 USE in_out_manager ! I/O manager 24 26 USE lbclnk ! ocean lateral boundary conditions (or mpp link) 25 USE trdmod_oce 26 USE trdtra 27 USE lib_mpp ! MPP library 27 28 28 29 IMPLICIT NONE -
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC/TRP/trdmld_trc.F90
r2633 r2636 23 23 USE zdfddm , ONLY : avs !: salinity vertical diffusivity coeff. at w-point 24 24 # endif 25 USE trcnam_trp ! passive tracers transport namelist variables25 USE trcnam_trp ! passive tracers transport namelist variables 26 26 USE trdmod_trc_oce ! definition of main arrays used for trends computations 27 27 USE in_out_manager ! I/O manager … … 30 30 USE ioipsl ! NetCDF library 31 31 USE lbclnk ! ocean lateral boundary conditions (or mpp link) 32 USE lib_mpp ! MPP library 32 33 USE trdmld_trc_rst ! restart for diagnosing the ML trends 33 34 USE prtctl ! print control … … 47 48 CHARACTER (LEN=40) :: clhstnam ! name of the trends NetCDF file 48 49 INTEGER :: nmoymltrd 49 INTEGER :: ndextrd1(jpi*jpj)50 INTEGER, ALLOCATABLE, SAVE, DIMENSION(:) :: ndextrd1 50 51 INTEGER, DIMENSION(jptra) :: nidtrd, nh_t 51 52 INTEGER :: ndimtrd1 … … 87 88 ztmltrdbio2(jpi,jpj,jpdiabio) , & 88 89 #endif 89 Stat=trd_mld_trc_alloc) 90 91 IF(trd_mld_trc_alloc/=0)THEN 92 CALL ctl_warn('trd_mld_trc_alloc : failed to allocate arrays.') 93 END IF 94 90 & ndextrd1(jpi*jpj) , STAT=trd_mld_trc_alloc) 91 ! 92 IF( lk_mpp ) CALL mpp_sum ( trd_mld_trc_alloc ) 93 IF( trd_mld_trc_alloc /=0 ) CALL ctl_warn('trd_mld_trc_alloc : failed to allocate arrays.') 95 94 END FUNCTION trd_mld_trc_alloc 96 95 … … 125 124 !!---------------------------------------------------------------------- 126 125 127 IF(wrk_in_use(2, 1))THEN 128 CALL ctl_stop('trd_mld_trc_zint : requested workspace array unavailable.') 129 RETURN 126 IF( wrk_in_use(2, 1) ) THEN 127 CALL ctl_stop('trd_mld_trc_zint : requested workspace array unavailable') ; RETURN 130 128 END IF 131 129 … … 213 211 END SELECT 214 212 215 IF(wrk_not_released(2, 1))THEN 216 CALL ctl_stop('trd_mld_trc_zint : failed to release workspace array.') 217 END IF 218 213 IF( wrk_not_released(2, 1) ) CALL ctl_stop('trd_mld_trc_zint : failed to release workspace array.') 214 ! 219 215 END SUBROUTINE trd_mld_trc_zint 220 216 217 221 218 SUBROUTINE trd_mld_bio_zint( ptrc_trdmld, ktrd ) 222 219 !!---------------------------------------------------------------------- … … 387 384 !! - See NEMO documentation (in preparation) 388 385 !!---------------------------------------------------------------------- 389 USE wrk_nemo, ONLY: wrk_in_use, wrk_not_released390 USE wrk_nemo, wrk_3d_1, wrk_3d_2, wrk_3d_3, wrk_3d_4, &391 wrk_3d_5, wrk_3d_6, wrk_3d_7, wrk_3d_8, &392 wrk_3d_9386 USE wrk_nemo, ONLY: wrk_in_use, wrk_not_released 387 USE wrk_nemo, ONLY: wrk_3d_1, wrk_3d_2, wrk_3d_3, wrk_3d_4 388 USE wrk_nemo, ONLY: wrk_3d_5, wrk_3d_6, wrk_3d_7, wrk_3d_8, wrk_3d_9 389 ! 393 390 INTEGER, INTENT( in ) :: kt ! ocean time-step index 394 391 INTEGER :: ji, jj, jk, jl, ik, it, itmod, jn … … 414 411 !!---------------------------------------------------------------------- 415 412 416 IF(wrk_in_use(3, 1,2,3,4,5,6,7,8,9))THEN 417 CALL ctl_stop('trd_mld_trc : requested workspace arrays unavailable.') 418 RETURN 419 END IF 413 IF( wrk_in_use(3, 1,2,3,4,5,6,7,8,9) ) THEN 414 CALL ctl_stop('trd_mld_trc : requested workspace arrays unavailable') ; RETURN 415 ENDIF 420 416 ! Set-up pointers into sub-arrays of workspaces 421 417 ztmltot => wrk_3d_1(:,:,1:jptra) -
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC/TRP/trdmod_trc_oce.F90
r2610 r2636 4 4 !! Ocean trends : set tracer and momentum trend variables 5 5 !!====================================================================== 6 !!---------------------------------------------------------------------- 7 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 8 !! $Header: /home/opalod/NEMOCVSROOT/NEMO/OPA_SRC/TRD/trdmld_oce.F90,v 1.2 2005/03/27 18:35:23 opalod Exp $ 9 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 10 !!---------------------------------------------------------------------- 11 #if defined key_top 6 #if defined key_top || defined key_esopa 12 7 !!---------------------------------------------------------------------- 13 8 !! 'key_top' TOP models 14 9 !!---------------------------------------------------------------------- 15 10 16 USE par_oce 17 USE par_trc 11 USE par_oce ! ocean parameters 12 USE par_trc ! passive tracers parameters 18 13 19 14 IMPLICIT NONE 20 15 PUBLIC 21 16 22 ! !* Namelist namtoptrd: diagnostics on passive tracers trends23 INTEGER :: nn_trd_trc !: time step frequency dynamics and tracers trends24 INTEGER :: nn_ctls_trc !: control surface type for trends vertical integration17 ! !!* Namelist namtoptrd: diagnostics on passive tracers trends 18 INTEGER :: nn_trd_trc !: time step frequency dynamics and tracers trends 19 INTEGER :: nn_ctls_trc !: control surface type for trends vertical integration 25 20 REAL(wp) :: rn_ucf_trc !: unit conversion factor (for netCDF trends outputs) 26 LOGICAL :: ln_trdmld_trc_instant !: flag to diagnose inst./mean ML trc trends27 LOGICAL :: ln_trdmld_trc_restart !: flag to restart mixed-layer trc diagnostics28 CHARACTER(len=50) :: cn_trdrst_trc_in !: suffix of pass. tracer restart name (input)29 CHARACTER(len=50) :: cn_trdrst_trc_out !: suffix of pass. tracer restart name (output)21 LOGICAL :: ln_trdmld_trc_instant !: flag to diagnose inst./mean ML trc trends 22 LOGICAL :: ln_trdmld_trc_restart !: flag to restart mixed-layer trc diagnostics 23 CHARACTER(len=50) :: cn_trdrst_trc_in !: suffix of pass. tracer restart name (input) 24 CHARACTER(len=50) :: cn_trdrst_trc_out !: suffix of pass. tracer restart name (output) 30 25 LOGICAL, DIMENSION (jptra) :: ln_trdtrc !: large trends diagnostic to write or not (namelist) 31 26 32 27 # if defined key_trdtrc && defined key_iomput 33 28 LOGICAL, PARAMETER :: lk_trdtrc = .TRUE. 34 # else29 # else 35 30 LOGICAL, PARAMETER :: lk_trdtrc = .FALSE. !: ML trend flag 36 # endif31 # endif 37 32 38 # if defined key_trdmld_trc33 # if defined key_trdmld_trc || defined key_esopa 39 34 !!---------------------------------------------------------------------- 40 35 !! 'key_trdmld_trc' mixed layer trends diagnostics … … 108 103 tmltrdm_trc !: total cumulative trends over the analysis window 109 104 110 # else105 # else 111 106 LOGICAL, PARAMETER :: lk_trdmld_trc = .FALSE. !: ML trend flag 112 # endif107 # endif 113 108 114 # if defined key_lobster109 # if defined key_lobster 115 110 CHARACTER(LEN=80) :: clname_bio, ctrd_bio(jpdiabio,2) 116 111 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) :: & … … 121 116 tmltrd_csum_ub_bio !: before (prev. analysis period) cumulated sum over the 122 117 !: upper triangle 123 #endif 124 125 #else 118 # endif 126 119 !!---------------------------------------------------------------------- 127 !! Empty module : No passive tracer 120 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 121 !! $Header: /home/opalod/NEMOCVSROOT/NEMO/OPA_SRC/TRD/trdmld_oce.F90,v 1.2 2005/03/27 18:35:23 opalod Exp $ 122 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 128 123 !!---------------------------------------------------------------------- 129 #endif130 131 #if defined key_top132 124 CONTAINS 133 125 134 FUNCTION trd_mod_trc_oce_alloc()126 INTEGER FUNCTION trd_mod_trc_oce_alloc() 135 127 !!---------------------------------------------------------------------- 136 128 !! *** ROUTINE trd_mod_trc_oce_alloc *** 137 129 !!---------------------------------------------------------------------- 138 USE in_out_manager, ONLY: ctl_warn 139 ! 140 INTEGER :: trd_mod_trc_oce_alloc 141 ! Locals 130 USE lib_mpp, ONLY: ctl_warn 142 131 INTEGER :: ierr(2) 143 132 !!---------------------------------------------------------------------- … … 145 134 ierr(:) = 0 146 135 147 # if defined key_trdmld_trc136 # if defined key_trdmld_trc 148 137 ALLOCATE(nmld_trc(jpi,jpj), nbol_trc(jpi,jpj), & 149 138 wkx_trc(jpi,jpj,jpk), rmld_trc(jpi,jpj), & … … 166 155 tmltrdm_trc(jpi,jpj,jptra), & 167 156 Stat=ierr(1)) 168 # endif169 # if defined key_lobster157 # endif 158 # if defined key_lobster 170 159 ALLOCATE(tmltrd_bio(jpi,jpj,jpdiabio), & 171 160 tmltrd_sum_bio(jpi,jpj,jpdiabio), & … … 173 162 tmltrd_csum_ub_bio(jpi,jpj,jpdiabio), & 174 163 Stat=ierr(2)) 175 # endif164 # endif 176 165 177 166 trd_mod_trc_oce_alloc = MAXVAL(ierr) 178 167 179 IF(trd_mod_trc_oce_alloc /= 0)THEN 180 CALL ctl_warn('trd_mod_trc_oce_alloc : failed to allocate arrays.') 181 END IF 168 IF( trd_mod_trc_oce_alloc /= 0 ) CALL ctl_warn('trd_mod_trc_oce_alloc : failed to allocate arrays') 182 169 183 #if defined key_trdmld_trc 184 ! Initialise what used to be a parameter - max level for mixed-layer 185 ! trends diag. 186 jpktrd_trc = jpk 170 # if defined key_trdmld_trc 171 jpktrd_trc = jpk ! Initialise what used to be a parameter - max level for mixed-layer trends diag. 172 # endif 173 ! 174 END FUNCTION trd_mod_trc_oce_alloc 175 176 #else 177 !!---------------------------------------------------------------------- 178 !! Empty module : No passive tracer 179 !!---------------------------------------------------------------------- 187 180 #endif 188 181 189 END FUNCTION trd_mod_trc_oce_alloc 190 #endif 191 182 !!====================================================================== 192 183 END MODULE trdmod_trc_oce -
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC/trc.F90
r2607 r2636 78 78 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION (:,:, :) :: trc2d !: additional 2d outputs 79 79 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION (:,:,:,:) :: trc3d !: additional 3d outputs 80 81 80 # endif 82 81 83 # if defined key_diabio || defined key_trdmld_trc82 # if defined key_diabio || defined key_trdmld_trc 84 83 ! !!* namtop_XXX namelist * 85 84 INTEGER , PUBLIC :: nn_writebio !: time step frequency for biological outputs … … 87 86 CHARACTER(len=20), PUBLIC, DIMENSION(jpdiabio) :: ctrbiu !: biological trends unit 88 87 CHARACTER(len=80), PUBLIC, DIMENSION(jpdiabio) :: ctrbil !: biological trends long name 89 # endif88 # endif 90 89 # if defined key_diabio 91 90 !! Biological trends … … 101 100 # endif 102 101 103 #else104 !!----------------------------------------------------------------------105 !! Empty module : No passive tracer106 !!----------------------------------------------------------------------107 #endif108 109 102 !!---------------------------------------------------------------------- 110 103 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 111 104 !! $Id$ 112 105 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 113 !!====================================================================== 114 #if defined key_top 106 !!---------------------------------------------------------------------- 115 107 CONTAINS 116 108 117 FUNCTION trc_alloc()109 INTEGER FUNCTION trc_alloc() 118 110 !!------------------------------------------------------------------- 119 111 !! *** ROUTINE trc_alloc *** 120 112 !!------------------------------------------------------------------- 121 USE in_out_manager, ONLY: ctl_warn 113 USE lib_mpp, ONLY: ctl_warn 114 !!------------------------------------------------------------------- 122 115 ! 123 INTEGER :: trc_alloc124 !!-------------------------------------------------------------------125 126 116 ALLOCATE(cvol(jpi,jpj,jpk), & 127 117 trn(jpi,jpj,jpk,jptra), & … … 132 122 # if defined key_diatrc && ! defined key_iomput 133 123 trc2d(jpi,jpj,jpdia2d), trc3d(jpi,jpj,jpk,jpdia3d), & 134 # endif124 # endif 135 125 # if defined key_diabio 136 126 trbio(jpi,jpj,jpk,jpdiabio), & 137 # endif138 S tat=trc_alloc)127 # endif 128 STAT=trc_alloc) 139 129 140 IF(trc_alloc /= 0)THEN 141 CALL ctl_warn('trc_alloc: failed to allocate arrays.') 142 END IF 143 130 IF( trc_alloc /= 0 ) CALL ctl_warn('trc_alloc: failed to allocate arrays') 131 ! 144 132 END FUNCTION trc_alloc 133 134 #else 135 !!---------------------------------------------------------------------- 136 !! Empty module : No passive tracer 137 !!---------------------------------------------------------------------- 145 138 #endif 146 139 140 !!====================================================================== 147 141 END MODULE trc -
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC/trcnam.F90
r2528 r2636 27 27 USE trcnam_my_trc ! MY_TRC SMS namelist 28 28 USE in_out_manager ! I/O manager 29 USE lib_mpp ! MPP library 29 30 USE trdmod_trc_oce 30 31 -
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC/trcsms.F90
r2528 r2636 30 30 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 31 31 !! $Id$ 32 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt)32 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 33 33 !!---------------------------------------------------------------------- 34 35 34 CONTAINS 36 35
Note: See TracChangeset
for help on using the changeset viewer.