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 335 for trunk/NEMO/TOP_SRC/trcini.F90 – NEMO

Ignore:
Timestamp:
2005-11-14T13:08:42+01:00 (18 years ago)
Author:
opalod
Message:

nemo_v1_update_023 : CE + RB + CT : new evolution of modules

File:
1 edited

Legend:

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

    r274 r335  
    11MODULE trcini 
    22   !!========================================================================== 
    3    !! 
    4    !!                       *** MODULE trcini *** 
    5    !! 
    6    !! Initialization for passive tracer (for restart or not)   
    7    !!      
    8    !!========================================================================= 
    9    !!  TOP 1.0,  LOCEAN-IPSL (2005) 
    10    !! $Header$ 
    11    !! This software is governed by the CeCILL licence see modipsl/doc/NEMO_CeCILL.txt 
     3   !!                       *** MODULE trcini ***   
     4   !! Ocean passive tracers:  Manage the passive tracer initialization  
     5   !!=========================================================================    
     6#if defined key_passivetrc 
    127   !!---------------------------------------------------------------------- 
    13                                                                                                                        
    14       !! * Modules used 
    15       !! ============== 
    16       USE ioipsl 
    17       USE oce_trc 
    18       USE trc 
    19       USE sms 
    20       USE lib_mpp 
     8   !!   trc_ini : Initialization for passive tracer 
     9   !!---------------------------------------------------------------------- 
     10   !! * Modules used 
     11   USE ioipsl 
     12   USE oce_trc 
     13   USE trc 
     14   USE sms 
     15   USE lib_mpp 
     16   USE lbclnk 
    2117 
    22      IMPLICIT NONE 
    23      PRIVATE 
     18   IMPLICIT NONE 
     19   PRIVATE 
    2420 
    25     !! * Accessibility 
    26     PUBLIC trc_ini 
     21   !! * Accessibility 
     22   PUBLIC trc_ini 
     23 
     24#if defined key_trc_lobster1 
     25   !!---------------------------------------------------------------------- 
     26   !!   'key_trc_lobster1'                        LOBSTER1 biological model   
     27   !!---------------------------------------------------------------------- 
     28#  include "trcini.lobster1.h90" 
     29 
     30#elif defined key_trc_pisces 
     31   !!---------------------------------------------------------------------- 
     32   !!   'key_trc_pisces'                            PISCES biological model                   
     33   !!---------------------------------------------------------------------- 
     34#  include "trcini.pisces.h90" 
     35 
     36#elif defined key_cfc 
     37   !!---------------------------------------------------------------------- 
     38   !!   'key_cfc  '                                          CFC model                   
     39   !!---------------------------------------------------------------------- 
     40#  include "trcini.cfc.h90" 
     41 
     42#else 
     43   !!---------------------------------------------------------------------- 
     44   !!   Default option                                
     45   !!---------------------------------------------------------------------- 
    2746 
    2847CONTAINS 
    2948 
    30 #if defined key_passivetrc 
     49   SUBROUTINE trc_ini 
     50      !!--------------------------------------------------------------------- 
     51      !!                    ***  ROUTINE trc_ini  *** 
     52      !!               
     53      !! ** Purpose : Initialization for passive tracer 
     54      !!              for restart or not 
     55      !! 
     56      !! History : 
     57      !!        !  00-04  O. Aumont, M.A. Foujols HAMOCC3 and P3ZD 
     58      !!   8.5  !  05-03  O.Aumont and A.El Moussaoui  F90 
     59      !!   9.0  !  05-10  C. Ethe  Modularity 
     60      !!---------------------------------------------------------------------- 
     61      !! * local declarations 
     62      INTEGER ::                   &  
     63         ji ,jj ,jk ,jn, jl        ! dummy loop indices   
     64      !!--------------------------------------------------------------------- 
    3165 
    32  SUBROUTINE trc_ini 
    33 !!--------------------------------------------------------------------- 
    34 !!                       ROUTINE trcini 
    35 !!                     ****************** 
    36 !!  PURPOSE : 
    37 !!  --------- 
    38 !!     initialization for passive tracer 
    39 !!     for restart or not 
    40 !! 
    41 !!   WORKSPACE : 
    42 !!   --------- 
    43 !!      ji jj jk 
    44 !! 
    45 !!   History: 
    46 !!   -------- 
    47 !!                 04/00 (O. Aumont, M.A. Foujols) HAMOCC3 and P3ZD 
    48 !!                 03/05  O.Aumont and A.El Moussaoui  F90 
    49 !!---------------------------------------------------------------------- 
    50 !!---------------------------------------------------------------------- 
    51 !! local declarations 
    52 !! ================== 
    5366 
    54       INTEGER :: ji,jj,jk,jn,jl 
    55  
    56 !!---------------------------------------------------------------------- 
    57 !! statement functions 
    58 !! =================== 
    59  
    60 #include "passivetrc_substitute.h90" 
    61  
    62 !!--------------------------------------------------------------------- 
    63 !!  OPA.9    
    64 !!--------------------------------------------------------------------- 
    65  
    66 #    if defined key_trc_npzd 
    67 #    include "trcini.npzd.h90" 
    68 #    elif defined key_trc_lobster1 
    69 #    include "trcini.lobster1.h90" 
    70 #    elif defined key_trc_hamocc3 
    71 #    include "trcini.hamocc3.h90" 
    72 #    elif defined key_trc_pisces 
    73 #    include "trcini.pisces.h90" 
    74 #    else 
    75  
    76 ! Specific initialization to do 
    77 !!----------------------------- 
    78 #    endif 
    79  
    80 !! 1. initialization of passives tracers field 
    81 !! ------------------------------------------- 
    82       DO jn=1,jptra 
    83               trn(:,:,:,jn)=0.e0 
    84               tra(:,:,:,jn)=0.e0 
     67      !! 1. initialization of passives tracers field 
     68      !! ------------------------------------------- 
     69      DO jn = 1, jptra 
     70         trn(:,:,:,jn)=0.e0 
     71         tra(:,:,:,jn)=0.e0 
    8572      END DO 
    8673 
    8774#if defined key_trc_diaadd 
    88 !! initialization of output 2d and 3d arrays 
     75      !! initialization of output 2d and 3d arrays 
    8976 
    90       DO jn=1,jpdia2d 
    91             trc2d(:,:,jn)=0.e0 
     77      DO jn = 1, jpdia2d 
     78         trc2d(:,:,jn)=0.e0 
    9279      END DO 
    93       DO jn=1,jpdia3d 
    94               trc3d(:,:,:,jn)=0.e0 
     80 
     81      DO jn = 1, jpdia3d 
     82         trc3d(:,:,:,jn)=0.e0 
    9583      END DO 
    9684#endif 
    9785 
    9886#if defined key_trc_diabio 
    99    !! initialization of biological trends 
     87      !! initialization of biological trends 
    10088      DO jn=1,jpdiabio 
    101               trbio(ji,jj,jk,jn)=0.e0 
     89         trbio(:,:,:,jn) = 0.e0 
    10290      END DO 
    10391#endif 
    10492 
    10593#if defined key_trc_diatrd 
    106    !! initialization of tracer trends 
    107       DO jl=1,jpdiatrc 
    108         DO jn=1,jptra 
    109                 trtrd(:,:,:,jn,jl)=0.e0 
    110         END DO 
     94      !! initialization of tracer trends 
     95      DO jl = 1, jpdiatrc 
     96         DO jn = 1, jptra 
     97            trtrd(:,:,:,jn,jl) = 0.e0 
     98         END DO 
    11199      END DO 
    112100#endif       
    113        
    114       IF(lwp) THEN 
    115           WRITE(numout,*) ' ' 
    116           WRITE(numout,*) ' trcini: generic initialisation done ' 
    117           WRITE(numout,*) ' ' 
     101 
     102      IF( lwp ) THEN 
     103         WRITE(numout,*) ' ' 
     104         WRITE(numout,*) ' trcini: generic initialisation done ' 
     105         WRITE(numout,*) ' ' 
    118106      ENDIF 
    119107 
    120 END SUBROUTINE trc_ini 
    121  
    122 #else 
    123  
    124 SUBROUTINE trc_ini 
    125  
    126    !! no passive tracers 
    127    !!=================== 
    128 END SUBROUTINE trc_ini 
     108   END SUBROUTINE trc_ini 
    129109 
    130110#endif 
    131111 
     112#else 
     113   !!---------------------------------------------------------------------- 
     114   !!   Dummy module :                      NO passive tracer 
     115   !!---------------------------------------------------------------------- 
     116CONTAINS 
     117   SUBROUTINE trc_ini              ! Empty routine 
     118 
     119   END SUBROUTINE trc_ini 
     120#endif 
     121 
     122   !!====================================================================== 
    132123END MODULE trcini 
Note: See TracChangeset for help on using the changeset viewer.