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 768 for branches/dev_001_GM/NEMO/TOP_SRC/CFC – NEMO

Ignore:
Timestamp:
2007-12-16T15:46:18+01:00 (17 years ago)
Author:
gm
Message:

dev_001_GM - create 1 trclsm_ module by trc model (CFC, LOBSTER, PISCES..) + some bug corrections

Location:
branches/dev_001_GM/NEMO/TOP_SRC/CFC
Files:
3 edited
1 moved

Legend:

Unmodified
Added
Removed
  • branches/dev_001_GM/NEMO/TOP_SRC/CFC/par_CFC.F90

    r765 r768  
    1616   PUBLIC 
    1717 
     18   INTEGER, PUBLIC, PARAMETER ::   jp_lp      = jp_lobster + jp_pisces   !: cumulative number of passive tracers 
     19    
    1820#if defined key_cfc 
    1921   !!--------------------------------------------------------------------- 
     
    2729    
    2830   ! assign an index in trc arrays for each CFC prognostic variables 
    29    INTEGER, PUBLIC, PARAMETER ::   jp_lp      = jp_lobster + jp_pisces   !: cumulative number of passive tracers 
    3031   INTEGER, PUBLIC, PARAMETER ::   jp11       = jp_lp + 1                !: CFC-11  
    3132   INTEGER, PUBLIC, PARAMETER ::   jp12       = jp_lp + 2                !: CFC-12    
     
    4142#endif 
    4243 
    43    ! Starting/ending CFC do-loop indices (N.B. no CFC : jpl_cfc < jpf_cfc the do-loop are never done) 
    44    INTEGER, PUBLIC, PARAMETER ::   jpf_cfc    = jp_lp + 1       !: First index of CFC tracers 
    45    INTEGER, PUBLIC, PARAMETER ::   jpl_cfc    = jp_lp + jp_cfc  !: Last  index of CFC tracers 
     44   ! Starting/ending CFC do-loop indices (N.B. no CFC : jp_cfc0 > jp_cfc1 the do-loop are never done) 
     45   INTEGER, PUBLIC, PARAMETER ::   jp_cfc0    = jp_lp + 1       !: First index of CFC tracers 
     46   INTEGER, PUBLIC, PARAMETER ::   jp_cfc1    = jp_lp + jp_cfc  !: Last  index of CFC tracers 
    4647 
    4748   !!====================================================================== 
  • branches/dev_001_GM/NEMO/TOP_SRC/CFC/trccfc.F90

    r765 r768  
    2525   PUBLIC   trc_cfc       ! called in ???     
    2626 
    27    INTEGER , PARAMETER ::   jpyear = 100   ! temporal parameter  
    28    INTEGER , PARAMETER ::   jphem  =   2   ! parameter for the 2 hemispheres 
     27   INTEGER , PUBLIC, PARAMETER ::   jpyear = 100   ! temporal parameter  
     28   INTEGER , PUBLIC, PARAMETER ::   jphem  =   2   ! parameter for the 2 hemispheres 
    2929   INTEGER , PUBLIC    ::   ndate_beg      ! initial calendar date (aammjj) for CFC 
    3030   INTEGER , PUBLIC    ::   nyear_res      ! restoring time constant (year) 
    3131   INTEGER , PUBLIC    ::   nyear_beg      ! initial year (aa)  
    3232    
    33    REAL(wp), PUBLIC, DIMENSION(jpyear,jphem, jpf_cfc:jpl_cfc) ::   p_cfc   ! partial hemispheric pressure for CFC           
     33   REAL(wp), PUBLIC, DIMENSION(jpyear,jphem, jp_cfc0:jp_cfc1) ::   p_cfc   ! partial hemispheric pressure for CFC           
    3434   REAL(wp), PUBLIC, DIMENSION(jpi,jpj)                       ::   xphem    ! spatial interpolation factor for patm 
    35    REAL(wp), PUBLIC, DIMENSION(jpi,jpj      ,jpf_cfc:jpl_cfc) ::   qtr      ! input function 
    36    REAL(wp), PUBLIC, DIMENSION(jpi,jpj      ,jpf_cfc:jpl_cfc) ::   qint     ! flux function 
     35   REAL(wp), PUBLIC, DIMENSION(jpi,jpj      ,jp_cfc0:jp_cfc1) ::   qtr      ! input function 
     36   REAL(wp), PUBLIC, DIMENSION(jpi,jpj      ,jp_cfc0:jp_cfc1) ::   qint     ! flux function 
    3737 
    3838   REAL(wp), DIMENSION(jptra) ::   soa1, soa2, soa3, soa4   ! coefficient for solubility of CFC [mol/l/atm] 
     
    5050   !!---------------------------------------------------------------------- 
    5151   !! NEMO/TOP 2.0 , LOCEAN-IPSL (2007)  
    52    !! $Id:$  
     52   !! $Id$  
    5353   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt) 
    5454   !!---------------------------------------------------------------------- 
     
    107107 
    108108      !                                                         !------------! 
    109       DO jn = jpf_cfc, jpl_cfc                                  !  CFC loop  ! 
     109      DO jn = jp_cfc0, jp_cfc1                                  !  CFC loop  ! 
    110110         !                                                      !------------! 
    111111         ! time interpolation at time kt 
     
    180180      !!--------------------------------------------------------------------- 
    181181 
    182       DO jn = 1, jptra 
     182      DO jn = jp_cfc0, jp_cfc1 
    183183         IF ( jn == jp11 ) THEN 
    184184            ! coefficient for solubility of CFC11 in  mol/l/atm 
     
    214214            sca4(jn) =    -0.067430 
    215215         ENDIF 
    216       ENDDO 
    217  
    218       DO jn = 1, jptra 
     216 
    219217         WRITE(numout,*) 'coefficient for solubility of tracer',ctrcnm(jn) 
    220218         WRITE(numout,*) soa1(jn), soa2(jn),soa3(jn), soa4(jn), & 
  • branches/dev_001_GM/NEMO/TOP_SRC/CFC/trcini_cfc.F90

    r766 r768  
    1212   !! trc_ini_cfc      : CFC model initialisation 
    1313   !!---------------------------------------------------------------------- 
     14   USE oce_trc         ! Ocean variables 
    1415   USE par_trc         ! TOP parameters 
     16   USE trc             ! TOP variables 
    1517   USE trccfc          ! CFC sms trends 
    1618 
     
    2830   !!---------------------------------------------------------------------- 
    2931   !! NEMO/TOP 2.0 , LOCEAN-IPSL (2007)  
    30    !! $Id:$  
     32   !! $Id$  
    3133   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt) 
    3234   !!---------------------------------------------------------------------- 
     
    5254      ! Initialization of boundaries conditions 
    5355      ! ---------------------------------------  
    54       pp_cfc(:,:,:) = 0.e0 
    5556      qtr   (:,:,:) = 0.e0 
    5657      xphem (:,:)   = 0.e0 
    57       DO jn = 1, jptra 
     58      DO jn = jp_cfc0, jp_cfc1 
    5859         DO jm = 1, jphem 
    5960            DO jl = 1, jpyear 
     
    7172            WRITE(numout,*) 'Initialization de qint ; No restart : qint equal zero ' 
    7273         ENDIF 
    73          DO jn = 1, jptra 
     74         DO jn = jp_cfc0, jp_cfc1 
    7475            qint(:,:,jn) = 0.e0 
    7576         END DO 
     
    8889      REWIND(inum) 
    8990       
    90  
    91       ! Skip over 1st six descriptor lines 
    92       !----------------------------------- 
    93       DO jm = 1, 6 
     91      DO jm = 1, 6        ! Skip over 1st six descriptor lines 
    9492         READ(inum,'(1x)') 
    9593      END DO 
    9694    
    97     
    98       !   Read file 
    99       ! --------- 
    100       DO jn = 31, 98 
     95      DO jn = 31, 98      !   Read file 
    10196         READ(inum,*) zyy, p_cfc(jn,1,jp11), p_cfc(jn,1,jp12), & 
    10297            &              p_cfc(jn,2,jp11), p_cfc(jn,2,jp12) 
     
    106101      END DO 
    107102 
    108       p_cfc(32,1:2,jp11) = 5.e-4 
     103      p_cfc(32,1:2,jp11) = 5.e-4      ! modify the values of the first years 
    109104      p_cfc(33,1:2,jp11) = 8.e-4 
    110105      p_cfc(34,1:2,jp11) = 1.e-6 
     
    115110      p_cfc(39,1:2,jp11) = 1.e-2 
    116111       
    117        
    118       IF(lwp) THEN 
     112      IF(lwp) THEN        ! Control print 
    119113         WRITE(numout,*) 
    120114         WRITE(numout,*) ' Year   p11HN    p11HS    p12HN    p12HS ' 
  • branches/dev_001_GM/NEMO/TOP_SRC/CFC/trclsm_cfc.F90

    r764 r768  
     1MODULE trclsm_cfc 
     2   !!====================================================================== 
     3   !!                         ***  MODULE trclsm_cfc  *** 
     4   !! TOP :   initialisation of some run parameters for CFC chemical model 
     5   !!====================================================================== 
     6   !! History :   2.0  !  2007-12  (C. Ethe, G. Madec) from trclsm.cfc.h90 
    17   !!---------------------------------------------------------------------- 
    2    !!                     ***  trclsm.cfc.h90  ***   
    3    !! TOP :   Definition some run parameter for CFC chemical model 
     8#if defined key_cfc 
    49   !!---------------------------------------------------------------------- 
    5    !! History :   1.0  !  2003-08 (C. Ethe)  Original code 
     10   !!   'key_cfc'                                               CFC tracers 
    611   !!---------------------------------------------------------------------- 
     12   !! trc_lsm_cfc      : CFC model initialisation 
     13   !!---------------------------------------------------------------------- 
     14   USE oce_trc         ! Ocean variables 
     15   USE par_trc         ! TOP parameters 
     16   USE trc             ! TOP variables 
     17   USE sms             ! sms trends 
     18   USE trccfc          ! CFC specific variable 
     19 
     20   IMPLICIT NONE 
     21   PRIVATE 
     22 
     23   PUBLIC   trc_lsm_cfc   ! called by trclsm.F90 module 
    724 
    825   !!---------------------------------------------------------------------- 
    9    !! NEMO/TOP 1.0 , LOCEAN-IPSL (2005)  
    10    !! $Id $  
     26   !! NEMO/TOP 2.0 , LOCEAN-IPSL (2007)  
     27   !! $Id$  
    1128   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt) 
    1229   !!---------------------------------------------------------------------- 
     
    1431CONTAINS 
    1532 
    16    SUBROUTINE trc_lsm 
     33   SUBROUTINE trc_lsm_cfc 
    1734      !!------------------------------------------------------------------- 
    18       !!                  ***  ROUTINE trc_lsm  *** 
     35      !!                  ***  ROUTINE trc_lsm_cfc  *** 
    1936      !!                  
    2037      !! ** Purpose :   Definition some run parameter for CFC model 
     
    5067      IF(lwp) WRITE(numout,*) '    initial year (aa)                       nyear_beg = ', nyear_beg 
    5168      ! 
    52    END SUBROUTINE trc_lsm 
     69   END SUBROUTINE trc_lsm_cfc 
     70    
     71#else 
     72   !!---------------------------------------------------------------------- 
     73   !!  Dummy module :                                                No CFC 
     74   !!---------------------------------------------------------------------- 
     75CONTAINS 
     76   SUBROUTINE trc_lsm_cfc                      ! Empty routine 
     77   END  SUBROUTINE  trc_lsm_cfc 
     78#endif   
     79 
     80   !!====================================================================== 
     81END MODULE trclsm_cfc 
Note: See TracChangeset for help on using the changeset viewer.