Changeset 2180 for LMDZ5/trunk/libf
- Timestamp:
- Jan 16, 2015, 2:15:03 PM (10 years ago)
- Location:
- LMDZ5/trunk/libf
- Files:
-
- 12 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/trunk/libf/dyn3d_common/infotrac.F90
r2171 r2180 29 29 30 30 CHARACTER(len=4),SAVE :: type_trac 31 CHARACTER(len=8),DIMENSION(:),ALLOCATABLE, SAVE :: solsym 31 32 32 33 CONTAINS … … 62 63 63 64 CHARACTER(len=15), ALLOCATABLE, DIMENSION(:) :: tnom_0 ! tracer short name 64 CHARACTER(len=8), ALLOCATABLE, DIMENSION(:) :: tracnam ! name from INCA65 65 CHARACTER(len=3), DIMENSION(30) :: descrq 66 66 CHARACTER(len=1), DIMENSION(3) :: txts … … 94 94 WRITE(lunout,*) 'You have choosen to couple with INCA chemestry model : type_trac=', & 95 95 type_trac,' config_inca=',config_inca 96 IF (config_inca/='aero' .AND. config_inca/=' chem') THEN96 IF (config_inca/='aero' .AND. config_inca/='aeNP' .AND. config_inca/='chem') THEN 97 97 WRITE(lunout,*) 'Incoherence between type_trac and config_inca. Model stops. Modify run.def' 98 98 CALL abort_gcm('infotrac_init','Incoherence between type_trac and config_inca',1) … … 172 172 ! 173 173 ALLOCATE(tnom_0(nqtrue), hadv(nqtrue), vadv(nqtrue)) 174 ALLOCATE(conv_flg(nbtr), pbl_flg(nbtr), tracnam(nbtr))174 ALLOCATE(conv_flg(nbtr), pbl_flg(nbtr), solsym(nbtr)) 175 175 conv_flg(:) = 1 ! convection activated for all tracers 176 176 pbl_flg(:) = 1 ! boundary layer activated for all tracers … … 254 254 conv_flg, & 255 255 pbl_flg, & 256 tracnam)256 solsym) 257 257 #endif 258 258 tnom_0(1)='H2Ov' … … 260 260 261 261 DO iq =3,nqtrue 262 tnom_0(iq)= tracnam(iq-2)262 tnom_0(iq)=solsym(iq-2) 263 263 END DO 264 264 nqo = 2 … … 394 394 ! 395 395 DEALLOCATE(tnom_0, hadv, vadv) 396 DEALLOCATE(tracnam) 396 397 397 398 398 END SUBROUTINE infotrac_init -
LMDZ5/trunk/libf/dyn3dmem/gcm.F
r2171 r2180 240 240 $ iphysiq,day_step,nday, 241 241 $ nbsrf, is_oce,is_sic, 242 $ is_ter,is_lic )242 $ is_ter,is_lic, calend) 243 243 244 244 call init_inca_para( -
LMDZ5/trunk/libf/dyn3dmem/leapfrog_loc.F
r2171 r2180 1604 1604 c$OMP MASTER 1605 1605 call fin_getparam 1606 c$OMP END MASTER 1607 1608 #ifdef INCA 1609 call finalize_inca 1610 #endif 1611 1612 c$OMP MASTER 1606 1613 call finalize_parallel 1607 1614 c$OMP END MASTER -
LMDZ5/trunk/libf/dyn3dpar/gcm.F
r2171 r2180 246 246 $ iphysiq,day_step,nday, 247 247 $ nbsrf, is_oce,is_sic, 248 $ is_ter,is_lic )248 $ is_ter,is_lic, calend) 249 249 250 250 call init_inca_para( -
LMDZ5/trunk/libf/dyn3dpar/leapfrog_p.F
r2171 r2180 1410 1410 c$OMP MASTER 1411 1411 call fin_getparam 1412 call finalize_parallel 1412 c$OMP END MASTER 1413 #ifdef INCA 1414 call finalize_inca 1415 #endif 1416 c$OMP MASTER 1417 call finalize_parallel 1413 1418 c$OMP END MASTER 1414 1419 abort_message = 'Simulation finished' -
LMDZ5/trunk/libf/phylmd/phys_output_write_mod.F90
r2159 r2180 228 228 USE ocean_slab_mod, only: tslab, slab_bils 229 229 USE indice_sol_mod, only: nbsrf 230 USE infotrac, only: nqtot, nqo 230 USE infotrac, only: nqtot, nqo, type_trac 231 231 USE comgeomphy, only: airephy 232 232 USE surface_data, only: type_ocean, ok_veget, ok_snow … … 1323 1323 IF (nqtot.GE.nqo+1) THEN 1324 1324 DO iq=nqo+1,nqtot 1325 IF (type_trac == 'lmdz' .OR. type_trac == 'repr') THEN 1325 1326 1326 1327 CALL histwrite_phy(o_trac(iq-nqo), qx(:,:,iq)) … … 1345 1346 ENDIF 1346 1347 CALL histwrite_phy(o_trac_cum(iq-nqo), zx_tmp_fi2d) 1348 endif 1347 1349 ENDDO 1348 1350 ENDIF -
LMDZ5/trunk/libf/phylmd/physiq.F90
r2171 r2180 1308 1308 annee_ref, & 1309 1309 day_ref, & 1310 itau_phy) 1310 itau_phy, & 1311 io_lon, & 1312 io_lat) 1311 1313 1312 1314 CALL VTe(VTinca) -
LMDZ5/trunk/libf/phylmd/phytrac_mod.F90
r2171 r2180 308 308 !$OMP THREADPRIVATE(lessivage) 309 309 310 CHARACTER(len=8),DIMENSION(nbtr) :: solsym311 310 !RomP >>> 312 311 INTEGER,SAVE :: iflag_lscav_omp,iflag_lscav … … 557 556 cdragh, coefh, yu1, yv1, ftsol, pctsrf, xlat, xlon,iflag_vdf_trac>=0,sh, & 558 557 rh, pphi, ustar, wstar, ale_bl, ale_wake, u10m, v10m, & 559 tr_seri, source, solsym,d_tr_cl,d_tr_dec, zmasse) !RomP558 tr_seri, source, d_tr_cl,d_tr_dec, zmasse) !RomP 560 559 561 560 CASE('inca') … … 572 571 tau_aero, piz_aero, cg_aero, ccm, & 573 572 rfname, & 574 tr_seri, source , solsym)573 tr_seri, source) 575 574 576 575 CASE('repr') … … 580 579 presnivs, xlat, xlon, pphis, pphi, & 581 580 t_seri, pplay, paprs, sh , & 582 tr_seri , solsym)581 tr_seri) 583 582 584 583 END SELECT -
LMDZ5/trunk/libf/phylmd/rrtm/readaerosol_optic_rrtm.F90
r2171 r2180 84 84 REAL, DIMENSION(klon,klev,naero_tot) :: m_allaer 85 85 REAL, DIMENSION(klon,klev,naero_tot) :: m_allaer_pi !RAF 86 ! REAL, DIMENSION(klon,naero_tot) :: fractnat_allaer !RAF delete?? 87 character(len=8), dimension(nbtr) :: tracname 86 88 87 integer :: id_ASBCM, id_ASPOMM, id_ASSO4M, id_ASMSAM, id_CSSO4M, id_CSMSAM, id_SSSSM 89 88 integer :: id_CSSSM, id_ASSSM, id_CIDUSTM, id_AIBCM, id_AIPOMM, id_ASNO3M, id_CSNO3M, id_CINO3M … … 104 103 !--convert to ug m-3 unit for consistency with offline fields 105 104 ! 106 #ifdef INCA107 call tracinca_name(tracname)108 #endif109 110 105 do i=1,nbtr 111 select case(trim( tracname(i)))106 select case(trim(solsym(i))) 112 107 case ("ASBCM") 113 108 id_ASBCM = i -
LMDZ5/trunk/libf/phylmd/tracinca_mod.F90
r2171 r2180 35 35 tau_aero, piz_aero, cg_aero, ccm, & 36 36 rfname, & 37 tr_seri, source , solsym)37 tr_seri, source) 38 38 39 39 !======================================================== … … 113 113 ! Output arguments 114 114 REAL,DIMENSION(klon,nbtr), INTENT(OUT) :: source ! a voir lorsque le flux de surface est prescrit 115 CHARACTER(len=8),DIMENSION(nbtr), INTENT(OUT) :: solsym116 115 117 116 !======================================================================================= … … 134 133 pdel(:,k) = paprs(:,k) - paprs (:,k+1) 135 134 END DO 136 137 zpmfu(:,:)=pmfu(:,:) 135 136 #ifdef INCA 137 IF (config_inca == 'aero') THEN 138 zpmfu(:,:)=pmfu(:,:) 139 ELSE IF (config_inca == 'aeNP') THEN 140 zpmfu(:,:)=upwd(:,:) 141 ENDIF 138 142 139 IF (config_inca == 'aero') THEN 140 #ifdef INCA 141 CALL aerosolmain( & 142 aerosol_couple,tr_seri,pdtphys, & 143 pplay,pdel,prfl,pmflxr,psfl, & 144 pmflxs,zpmfu,itop_con,ibas_con, & 145 pphi,airephy,nstep,rneb,t_seri, & 146 rh,tau_aero,piz_aero,cg_aero, & 147 rfname,ccm,lafin) 143 CALL aerosolmain( & 144 aerosol_couple,tr_seri,pdtphys, & 145 pplay,pdel,prfl,pmflxr,psfl, & 146 pmflxs,zpmfu,itop_con,ibas_con, & 147 pphi,airephy,nstep,rneb,t_seri, & 148 rh,tau_aero,piz_aero,cg_aero, & 149 rfname,ccm,lafin, config_inca) 148 150 #endif 149 END IF150 151 IF (config_inca == 'aeNP') THEN152 #ifdef INCA153 zpmfu(:,:)=upwd(:,:)154 CALL aerosolmainNP( &155 aerosol_couple,tr_seri,pdtphys, &156 pplay,pdel,prfl,pmflxr,psfl, &157 pmflxs,zpmfu,itop_con,ibas_con, &158 pphi,airephy,nstep,rneb,t_seri, &159 rh,lafin)160 #endif161 END IF162 151 163 152 … … 196 185 iip1, & !nx 197 186 jjp1, & !ny 198 source, & 199 solsym) 187 source ) 200 188 #endif 201 189 -
LMDZ5/trunk/libf/phylmd/traclmdz_mod.F90
r2171 r2180 338 338 cdragh, coefh, yu1, yv1, ftsol, pctsrf, xlat, xlon, couchelimite, sh, & 339 339 rh, pphi, ustar, wstar, ale_bl, ale_wake, zu10m, zv10m, & 340 !! tr_seri, source, solsym, d_tr_cl, zmasse) !RomP 341 tr_seri, source, solsym, d_tr_cl,d_tr_dec, zmasse) !RomP 340 tr_seri, source, d_tr_cl,d_tr_dec, zmasse) !RomP 342 341 343 342 USE dimphy … … 397 396 398 397 ! Output argument 399 CHARACTER(len=8),DIMENSION(nbtr), INTENT(OUT) :: solsym400 398 REAL,DIMENSION(klon,nbtr), INTENT(OUT) :: source ! a voir lorsque le flux de surface est prescrit 401 399 REAL,DIMENSION(klon,klev,nbtr), INTENT(OUT) :: d_tr_cl ! Td couche limite/traceur -
LMDZ5/trunk/libf/phylmd/tracreprobus_mod.F90
r2171 r2180 9 9 presnivs, xlat, xlon, pphis, pphi, & 10 10 t_seri, pplay, paprs, sh , & 11 tr_seri , solsym)11 tr_seri) 12 12 13 13 USE dimphy … … 42 42 !---------------- 43 43 REAL,DIMENSION(klon,klev,nbtr),INTENT(INOUT) :: tr_seri ! Concentration Traceur [U/KgA] 44 CHARACTER(len=8),DIMENSION(nbtr), INTENT(OUT) :: solsym45 44 46 45
Note: See TracChangeset
for help on using the changeset viewer.