Ignore:
Timestamp:
Nov 19, 2021, 4:58:59 PM (3 years ago)
Author:
lguez
Message:

Sync latest trunk changes to Ocean_skin

Location:
LMDZ6/branches/Ocean_skin
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/Ocean_skin

  • LMDZ6/branches/Ocean_skin/libf/phylmd/infotrac_phy.F90

    r3798 r4013  
    2020  INTEGER, SAVE :: nbtr
    2121!$OMP THREADPRIVATE(nbtr)
     22
     23  INTEGER, SAVE :: nqtottr
     24!$OMP THREADPRIVATE(nqtottr)
     25
     26! ThL : number of CO2 tracers                   ModThL
     27  INTEGER, SAVE :: nqCO2
     28!$OMP THREADPRIVATE(nqCO2)
    2229
    2330#ifdef CPP_StratAer
     
    3542
    3643! Name variables
    37   CHARACTER(len=20), ALLOCATABLE, DIMENSION(:), SAVE :: tname ! tracer short name for restart and diagnostics
    38   CHARACTER(len=23), ALLOCATABLE, DIMENSION(:), SAVE :: ttext ! tracer long name for diagnostics
     44  INTEGER,PARAMETER :: tname_lenmax=128
     45  CHARACTER(len=tname_lenmax), ALLOCATABLE, DIMENSION(:), SAVE :: tname ! tracer short name for restart and diagnostics
     46  CHARACTER(len=tname_lenmax+3), ALLOCATABLE, DIMENSION(:), SAVE :: ttext ! tracer long name for diagnostics
    3947!$OMP THREADPRIVATE(tname,ttext)
    4048
     
    93101    INTEGER,SAVE :: niso,ntraceurs_zone,ntraciso
    94102!$OMP THREADPRIVATE(niso,ntraceurs_zone,ntraciso)
     103
     104    INTEGER, ALLOCATABLE, DIMENSION(:), SAVE ::  itr_indice ! numéro iq entre 1 et nqtot qui correspond au traceur itr entre 1 et nqtottr
     105!$OMP THREADPRIVATE(itr_indice)
    95106 
    96107CONTAINS
    97108
    98   SUBROUTINE init_infotrac_phy(nqtot_,nqo_,nbtr_,tname_,ttext_,type_trac_,&
     109  SUBROUTINE init_infotrac_phy(nqtot_,nqo_,nbtr_,nqtottr_,nqCO2_,tname_,ttext_,type_trac_,&
    99110                               niadv_,conv_flg_,pbl_flg_,solsym_,&
    100111                               nqfils_,nqdesc_,nqdesc_tot_,iqfils_,iqpere_,&
     
    104115                               iso_indnum_,zone_num_,phase_num_,&
    105116                               indnum_fn_num_,index_trac_,&
    106                                niso_,ntraceurs_zone_,ntraciso_&
     117                               niso_,ntraceurs_zone_,ntraciso_,itr_indice_&
    107118#ifdef CPP_StratAer
    108119                               ,nbtr_bin_,nbtr_sulgas_&
     
    118129    INTEGER,INTENT(IN) :: nqo_
    119130    INTEGER,INTENT(IN) :: nbtr_
     131    INTEGER,INTENT(IN) :: nqtottr_
     132    INTEGER,INTENT(IN) :: nqCO2_
    120133#ifdef CPP_StratAer
    121134    INTEGER,INTENT(IN) :: nbtr_bin_
     
    126139    INTEGER,INTENT(IN) :: id_BIN01_strat_
    127140#endif
    128     CHARACTER(len=20),INTENT(IN) :: tname_(nqtot_) ! tracer short name for restart and diagnostics
    129     CHARACTER(len=23),INTENT(IN) :: ttext_(nqtot_) ! tracer long name for diagnostics
    130     CHARACTER(len=4),INTENT(IN) :: type_trac_
     141    CHARACTER(len=*),INTENT(IN) :: tname_(nqtot_) ! tracer short name for restart and diagnostics
     142    CHARACTER(len=*),INTENT(IN) :: ttext_(nqtot_) ! tracer long name for diagnostics
     143    CHARACTER(len=*),INTENT(IN) :: type_trac_
    131144    INTEGER,INTENT(IN) :: niadv_ (nqtot_) ! equivalent dyn / physique
    132145    INTEGER,INTENT(IN) :: conv_flg_(nbtr_)
    133146    INTEGER,INTENT(IN) :: pbl_flg_(nbtr_)
    134     CHARACTER(len=8),INTENT(IN) :: solsym_(nbtr_)
     147    CHARACTER(len=*),INTENT(IN) :: solsym_(nbtr_)
    135148    ! Isotopes:
    136149    INTEGER,INTENT(IN) :: nqfils_(nqtot_)
     
    157170    INTEGER,INTENT(IN) :: ntraceurs_zone_
    158171    INTEGER,INTENT(IN) :: ntraciso_
     172    INTEGER,INTENT(IN) :: itr_indice_(nqtottr_)
    159173
    160174    CHARACTER(LEN=30) :: modname="init_infotrac_phy"
     
    163177    nqo=nqo_
    164178    nbtr=nbtr_
     179    nqCO2=nqCO2_
     180    nqtottr=nqtottr_
    165181#ifdef CPP_StratAer
    166182    nbtr_bin=nbtr_bin_
     
    184200    ALLOCATE(solsym(nbtr))
    185201    solsym(:)=solsym_(:)
    186  
     202     
    187203    IF(prt_level.ge.1) THEN
    188       write(lunout,*) TRIM(modname)//": nqtot,nqo,nbtr",nqtot,nqo,nbtr
     204      write(lunout,*) TRIM(modname)//": nqtot,nqo,nbtr,nqCO2",nqtot,nqo,nbtr,nqCO2
    189205    ENDIF
    190206   
     
    236252      ALLOCATE(index_trac(ntraceurs_zone,niso))
    237253      index_trac(:,:)=index_trac_(:,:)
     254
     255      ALLOCATE(itr_indice(nqtottr))
     256      itr_indice(:)=itr_indice_(:)
    238257    ENDIF ! of IF(ok_isotopes)
    239258 
Note: See TracChangeset for help on using the changeset viewer.