Changeset 4013 for LMDZ6/branches/Ocean_skin/libf/phylmd/infotrac_phy.F90
- Timestamp:
- Nov 19, 2021, 4:58:59 PM (3 years ago)
- Location:
- LMDZ6/branches/Ocean_skin
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/branches/Ocean_skin
- Property svn:mergeinfo changed
-
LMDZ6/branches/Ocean_skin/libf/phylmd/infotrac_phy.F90
r3798 r4013 20 20 INTEGER, SAVE :: nbtr 21 21 !$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) 22 29 23 30 #ifdef CPP_StratAer … … 35 42 36 43 ! 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 39 47 !$OMP THREADPRIVATE(tname,ttext) 40 48 … … 93 101 INTEGER,SAVE :: niso,ntraceurs_zone,ntraciso 94 102 !$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) 95 106 96 107 CONTAINS 97 108 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_,& 99 110 niadv_,conv_flg_,pbl_flg_,solsym_,& 100 111 nqfils_,nqdesc_,nqdesc_tot_,iqfils_,iqpere_,& … … 104 115 iso_indnum_,zone_num_,phase_num_,& 105 116 indnum_fn_num_,index_trac_,& 106 niso_,ntraceurs_zone_,ntraciso_ &117 niso_,ntraceurs_zone_,ntraciso_,itr_indice_& 107 118 #ifdef CPP_StratAer 108 119 ,nbtr_bin_,nbtr_sulgas_& … … 118 129 INTEGER,INTENT(IN) :: nqo_ 119 130 INTEGER,INTENT(IN) :: nbtr_ 131 INTEGER,INTENT(IN) :: nqtottr_ 132 INTEGER,INTENT(IN) :: nqCO2_ 120 133 #ifdef CPP_StratAer 121 134 INTEGER,INTENT(IN) :: nbtr_bin_ … … 126 139 INTEGER,INTENT(IN) :: id_BIN01_strat_ 127 140 #endif 128 CHARACTER(len= 20),INTENT(IN) :: tname_(nqtot_) ! tracer short name for restart and diagnostics129 CHARACTER(len= 23),INTENT(IN) :: ttext_(nqtot_) ! tracer long name for diagnostics130 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_ 131 144 INTEGER,INTENT(IN) :: niadv_ (nqtot_) ! equivalent dyn / physique 132 145 INTEGER,INTENT(IN) :: conv_flg_(nbtr_) 133 146 INTEGER,INTENT(IN) :: pbl_flg_(nbtr_) 134 CHARACTER(len= 8),INTENT(IN) :: solsym_(nbtr_)147 CHARACTER(len=*),INTENT(IN) :: solsym_(nbtr_) 135 148 ! Isotopes: 136 149 INTEGER,INTENT(IN) :: nqfils_(nqtot_) … … 157 170 INTEGER,INTENT(IN) :: ntraceurs_zone_ 158 171 INTEGER,INTENT(IN) :: ntraciso_ 172 INTEGER,INTENT(IN) :: itr_indice_(nqtottr_) 159 173 160 174 CHARACTER(LEN=30) :: modname="init_infotrac_phy" … … 163 177 nqo=nqo_ 164 178 nbtr=nbtr_ 179 nqCO2=nqCO2_ 180 nqtottr=nqtottr_ 165 181 #ifdef CPP_StratAer 166 182 nbtr_bin=nbtr_bin_ … … 184 200 ALLOCATE(solsym(nbtr)) 185 201 solsym(:)=solsym_(:) 186 202 187 203 IF(prt_level.ge.1) THEN 188 write(lunout,*) TRIM(modname)//": nqtot,nqo,nbtr ",nqtot,nqo,nbtr204 write(lunout,*) TRIM(modname)//": nqtot,nqo,nbtr,nqCO2",nqtot,nqo,nbtr,nqCO2 189 205 ENDIF 190 206 … … 236 252 ALLOCATE(index_trac(ntraceurs_zone,niso)) 237 253 index_trac(:,:)=index_trac_(:,:) 254 255 ALLOCATE(itr_indice(nqtottr)) 256 itr_indice(:)=itr_indice_(:) 238 257 ENDIF ! of IF(ok_isotopes) 239 258
Note: See TracChangeset
for help on using the changeset viewer.