New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 1254 for trunk/NEMO/TOP_SRC/trcrst.F90 – NEMO

Ignore:
Timestamp:
2009-01-13T10:58:39+01:00 (15 years ago)
Author:
cetlod
Message:

update parameter files to take into account the new C14 bomb tracer model, see ticket:298

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/TOP_SRC/trcrst.F90

    r1177 r1254  
    1919   USE sms_pisces          ! PISCES variables 
    2020   USE trcsms_cfc          ! CFC variables 
     21   USE trcsms_c14b         ! C14 variables 
     22   USE trcsms_my_trc       ! MY_TRC variables 
    2123   USE trctrp_lec    
    2224   USE lib_mpp 
     
    3032   PUBLIC   trc_rst_wri       ! called by ??? 
    3133    
    32    LOGICAL, PUBLIC ::   lrst_trc         !: logical to control the trc restart write  
    3334   INTEGER, PUBLIC ::   numrtr, numrtw   !: logical unit for trc restart (read and write) 
    3435 
     
    7374         ! create the file 
    7475         IF(lwp) WRITE(numout,*) 
    75          clname = TRIM(cexper)//"_"//TRIM(ADJUSTL(clkt))//"_restart_trc" 
     76         clname = TRIM(cexper)//"_"//TRIM(ADJUSTL(clkt))//"_"//TRIM(cn_trcrst_out) 
    7677         IF(lwp) WRITE(numout,*) '             open trc restart.output NetCDF file: '//clname 
    7778         CALL iom_open( clname, numrtw, ldwrt = .TRUE., kiolib = jprstlib ) 
     
    122123      END SELECT 
    123124 
    124       CALL iom_open( 'restart_trc', numrtr, kiolib = jprstlib ) 
     125      CALL iom_open( cn_trcrst_in, numrtr, kiolib = jprstlib ) 
    125126 
    126127      CALL iom_get( numrtr, 'kt'   , zkt    ) 
     
    165166#if defined key_cfc 
    166167      DO jn = jp_cfc0, jp_cfc1 
    167          CALL iom_get( numrtr, jpdom_autoglo, 'qint'//ctrcnm(jn), qint(:,:,jn) )  
    168          CALL iom_get( numrtr, jpdom_autoglo, 'qtr'//ctrcnm(jn) , qtr( :,:,jn) )  
    169       END DO 
    170 #endif 
     168         CALL iom_get( numrtr, jpdom_autoglo, 'qint_'//ctrcnm(jn), qint_cfc(:,:,jn) )  
     169      END DO 
     170#endif 
     171 
     172#if defined key_c14b 
     173      CALL iom_get( numrtr, jpdom_autoglo, 'qint_'//ctrcnm(jn) , qint_c14(:,:) )  
     174#endif 
     175 
     176#if defined key_my_trc 
     177#endif 
     178 
    171179 
    172180      CALL iom_close( numrtr ) 
     
    222230#if defined key_cfc 
    223231      DO jn = jp_cfc0, jp_cfc1 
    224          CALL iom_rstput( kt, nitrst, numrtw, 'qint'//ctrcnm(jn), qint(:,:,jn) ) 
    225          CALL iom_rstput( kt, nitrst, numrtw, 'qtr'//ctrcnm(jn) , qtr (:,:,jn) ) 
    226       END DO 
    227 #endif 
     232         CALL iom_rstput( kt, nitrst, numrtw, 'qint_'//ctrcnm(jn), qint_cfc(:,:,jn) ) 
     233      END DO 
     234#endif 
     235 
     236#if defined key_c14b 
     237      CALL iom_rstput( kt, nitrst, numrtw, 'qint_'//ctrcnm(jn), qint_c14(:,:) ) 
     238#endif 
     239 
     240#if defined key_my_trc 
     241#endif 
     242 
    228243 
    229244       IF( kt == nitrst ) THEN 
     
    252267         siomean = 91.51      ! mean value of silicate 
    253268       
    254       REAL(wp) ::   ztrasum 
     269      REAL(wp) ::   zvol, ztrasum 
    255270      REAL(wp) ::   caralk, bicarb, co3 
    256271 
     
    266281            DO jj = 1, jpj 
    267282               DO ji = 1, jpi 
    268                   ztrasum = ztrasum + trn(ji,jj,jk,jptal) * tmask(ji,jj,jk) * tmask_i(ji,jj)  & 
     283                  zvol = cvol(ji,jj,jk) 
    269284#  if defined key_off_degrad 
    270                      &              * facvol(ji,jj,jk)   & 
     285                  zvol = zvol * facvol(ji,jj,jk) 
    271286#  endif 
    272                      &              * e1t(ji,jj) * e2t(ji,jj) * fse3t(ji,jj,jk) 
     287                  ztrasum = ztrasum + trn(ji,jj,jk,jptal) * zvol 
    273288               END DO 
    274289            END DO 
     
    285300            DO jj = 1, jpj 
    286301               DO ji = 1, jpi 
    287                   ztrasum = ztrasum + trn(ji,jj,jk,jppo4) * tmask(ji,jj,jk) * tmask_i(ji,jj)  & 
     302                  zvol = cvol(ji,jj,jk) 
    288303#  if defined key_off_degrad 
    289                      &              * facvol(ji,jj,jk)   & 
     304                  zvol = zvol * facvol(ji,jj,jk) 
    290305#  endif 
    291                      &              * e1t(ji,jj) * e2t(ji,jj) * fse3t(ji,jj,jk) 
     306                  ztrasum = ztrasum + trn(ji,jj,jk,jppo4) * zvol 
    292307               END DO 
    293308            END DO 
     
    304319            DO jj = 1, jpj 
    305320               DO ji = 1, jpi 
    306                   ztrasum = ztrasum + trn(ji,jj,jk,jpno3) * tmask(ji,jj,jk) * tmask_i(ji,jj)  & 
     321                  zvol = cvol(ji,jj,jk) 
    307322#  if defined key_off_degrad 
    308                      &              * facvol(ji,jj,jk)   & 
     323                  zvol = zvol * facvol(ji,jj,jk) 
    309324#  endif 
    310                      &              * e1t(ji,jj) * e2t(ji,jj) * fse3t(ji,jj,jk) 
     325                  ztrasum = ztrasum + trn(ji,jj,jk,jpno3) * zvol 
    311326               END DO 
    312327            END DO 
     
    323338            DO jj = 1, jpj 
    324339               DO ji = 1, jpi 
    325                   ztrasum = ztrasum + trn(ji,jj,jk,jpsil) * tmask(ji,jj,jk) * tmask_i(ji,jj)   & 
     340                  zvol = cvol(ji,jj,jk) 
    326341#  if defined key_off_degrad 
    327                      &              * facvol(ji,jj,jk)   & 
     342                  zvol = zvol * facvol(ji,jj,jk) 
    328343#  endif 
    329                      &              * e1t(ji,jj) * e2t(ji,jj) * fse3t(ji,jj,jk) 
     344                  ztrasum = ztrasum + trn(ji,jj,jk,jpsil) * zvol 
    330345               END DO 
    331346            END DO 
     
    374389      INTEGER  :: ji, jj, jk, jn 
    375390      REAL(wp) :: zdiag_var, zdiag_varmin, zdiag_varmax, zdiag_tot 
    376       REAL(wp) :: zder 
     391      REAL(wp) :: zder, zvol 
    377392      !!---------------------------------------------------------------------- 
    378393 
     
    392407            DO jj = 1, jpj 
    393408               DO jk = 1,jpk 
    394                   zdiag_var = zdiag_var + trn(ji,jj,jk,jn) * tmask(ji,jj,jk) * tmask_i(ji,jj)   & 
    395 #if defined key_off_degrad 
    396                      &   * facvol(ji,jj,jk)   & 
    397 #endif 
    398                      &   * e1t(ji,jj) * e2t(ji,jj) * fse3t(ji,jj,jk) 
     409                  zvol = cvol(ji,jj,jk) 
     410#  if defined key_off_degrad 
     411                  zvol = zvol * facvol(ji,jj,jk) 
     412#  endif 
     413                  zdiag_var = zdiag_var + trn(ji,jj,jk,jn) * zvol 
    399414               END DO 
    400415            END DO 
Note: See TracChangeset for help on using the changeset viewer.