Changeset 2630 for branches/dev_r2586_dynamic_mem
- Timestamp:
- 2011-02-28T12:19:20+01:00 (13 years ago)
- Location:
- branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/OPA_SRC/nemogcm.F90
r2629 r2630 36 36 !! nemo_closefile : close remaining open files 37 37 !! nemo_alloc : dynamical allocation 38 !! nemo_partition : ??? 39 !! nemo_partition : ??? 40 !! factorise : ??? 38 !! nemo_partition : calculate MPP domain decomposition 39 !! factorise : calculate the factors of the no. of MPI processes 41 40 !!---------------------------------------------------------------------- 42 41 USE step_oce ! module used in the ocean time stepping module … … 471 470 USE trc_oce, ONLY: trc_oce_alloc 472 471 473 474 472 #if defined key_obc 475 473 USE obcdta , ONLY: obc_dta_alloc … … 477 475 #endif 478 476 479 USE wrk_nemo, 477 USE wrk_nemo, ONLY: wrk_alloc 480 478 481 479 INTEGER :: ierr -
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC/C14b/trcsms_c14b.F90
r2528 r2630 4 4 !! TOP : Bomb C14 main module 5 5 !!====================================================================== 6 !! History - ! 1994-05 ( J. Orr ) origi al code6 !! History - ! 1994-05 ( J. Orr ) original code 7 7 !! 1.0 ! 2006-02 ( J.M. Molines ) Free form + modularity 8 8 !! 2.0 ! 2008-12 ( C. Ethe ) reorganisation 9 !! 4.0 ! 2011-02 ( A.R. Porter, STFC Daresbury ) Dynamic memory 9 10 !!---------------------------------------------------------------------- 10 11 #if defined key_c14b … … 25 26 26 27 !! * Routine accessibility 27 PUBLIC trc_sms_c14b ! called in ??? 28 PUBLIC trc_sms_c14b ! called in trcsms.F90 29 PUBLIC trc_sms_c14b_alloc ! called in nemogcm.F90 28 30 29 31 !! * Module variables … … 37 39 INTEGER , PUBLIC :: nyear_beg ! initial year (aa) 38 40 39 REAL(wp), PUBLIC, DIMENSION(jpmaxrec,jpzon):: bomb !: C14 atm data (3 zones)40 REAL(wp), PUBLIC, DIMENSION(jpi,jpj ,jpzon):: fareaz !: Spatial Interpolation Factors41 REAL(wp), PUBLIC, DIMENSION(jpmaxrec2):: spco2 !: Atmospheric CO241 REAL(wp), PUBLIC, DIMENSION(jpmaxrec,jpzon) :: bomb !: C14 atm data (3 zones) 42 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) :: fareaz !: Spatial Interpolation Factors 43 REAL(wp), PUBLIC, DIMENSION(jpmaxrec2) :: spco2 !: Atmospheric CO2 42 44 43 REAL(wp), PUBLIC, DIMENSION(jpi,jpj):: qtr_c14 !: flux at surface44 REAL(wp), PUBLIC, DIMENSION(jpi,jpj):: qint_c14 !: cumulative flux45 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: qtr_c14 !: flux at surface 46 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: qint_c14 !: cumulative flux 45 47 46 48 REAL(wp) :: xlambda, xdecay, xaccum ! C14 decay coef. … … 60 62 61 63 CONTAINS 64 65 FUNCTION trc_sms_c14b_alloc() 66 !!---------------------------------------------------------------------- 67 !! *** ROUTINE trc_sms_c14b_alloc *** 68 !!---------------------------------------------------------------------- 69 INTEGER :: trc_sms_c14b_alloc ! Return value 70 !!---------------------------------------------------------------------- 71 72 ALLOCATE(fareaz(jpi,jpj ,jpzon), & 73 qtr_c14(jpi,jpj) , & 74 qint_c14(jpi,jpj) , Stat=trc_sms_c14b_alloc) 75 76 IF (trc_sms_c14b_alloc /= 0) CALL ctl_warn('trc_sms_c14b_alloc : failed to allocate arrays.') 77 78 END FUNCTION trc_sms_c14b_alloc 79 62 80 63 81 SUBROUTINE trc_sms_c14b( kt ) … … 96 114 !! 97 115 !!---------------------------------------------------------------------- 116 USE wrk_nemo, ONLY: wrk_use, wrk_release 117 USE wrk_nemo, ONLY: zatmbc14 => wrk_2d_1 118 USE wrk_nemo, ONLY: zw3d => wrk_3d_1 98 119 !! * Arguments 99 120 INTEGER, INTENT( in ) :: kt ! ocean time-step index … … 110 131 imonth2, in1, in2 111 132 112 REAL(wp), DIMENSION(jpi,jpj) :: &113 zatmbc14114 115 133 REAL(wp), DIMENSION(jpzon) :: & 116 134 zonbc14 !: time interp atm C14 … … 126 144 zpv , & !: piston velocity 127 145 zdemi, ztra 128 #if defined key_diatrc && defined key_iomput129 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zw3d130 #endif131 146 !!---------------------------------------------------------------------- 147 148 IF( (.NOT. wrk_use(2, 1)) .OR. (.NOT. wrk_use(3, 1)) )THEN 149 CALL ctl_stop('trc_sms_c14b : requested workspace arrays unavailable.') 150 RETURN 151 END IF 132 152 133 153 IF( kt == nit000 ) THEN … … 311 331 END IF 312 332 333 IF( (.NOT. wrk_release(2, 1)) .OR. (.NOT. wrk_release(3, 1)) )THEN 334 CALL ctl_stop('trc_sms_c14b : failed to release workspace arrays.') 335 END IF 336 313 337 END SUBROUTINE trc_sms_c14b 314 338 -
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/TOP_SRC/trcini.F90
r2628 r2630 204 204 USE trcsms_cfc , ONLY: trc_sms_cfc_alloc 205 205 #endif 206 #if defined key_c14b 207 USE trcsms_c14b , ONLY: trc_sms_c14b_alloc 208 #endif 206 209 #if defined key_lobster 207 210 USE sms_lobster , ONLY: sms_lobster_alloc ! LOBSTER-related alloc routines... … … 228 231 ierr = ierr + trd_mld_trc_alloc() 229 232 #endif 233 #if defined key_cfc 234 ierr = ierr + trc_sms_cfc_alloc() 235 #endif 236 #if defined key_c14b 237 ierr = ierr + trc_sms_c14b_alloc() 238 #endif 230 239 ! 231 240 #if defined key_lobster
Note: See TracChangeset
for help on using the changeset viewer.