Changeset 4983 for LMDZ6/trunk/libf/phylmdiso
- Timestamp:
- Jun 15, 2024, 5:48:20 PM (6 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmdiso/physiq_mod.F90
r4982 r4983 2077 2077 ptconv, read_climoz, clevSTD, & 2078 2078 ptconvth, d_u, d_t, qx, d_qx, zmasse, & 2079 flag_aerosol, flag_aerosol_strat, ok_cdnc, t,u1,v1)2079 flag_aerosol, flag_aerosol_strat, ok_cdnc, t, u1, v1) 2080 2080 #endif 2081 2081 … … 2281 2281 ENDIF 2282 2282 2283 IF (using_xios) THEN 2284 ! Need to put this initialisation after phyetat0 as in the coupled model the XIOS context is only 2285 ! initialised at that moment 2286 ! Get "missing_val" value from XML files (from temperature variable) 2287 IF (is_omp_master) CALL xios_get_field_attr("temp",default_value=missing_val) 2288 CALL bcast_omp(missing_val) 2289 2283 IF (using_xios) THEN 2284 ! Need to put this initialisation after phyetat0 as in the coupled model the XIOS context is only 2285 ! initialised at that moment 2286 ! Get "missing_val" value from XML files (from temperature variable) 2287 IF (is_omp_master) CALL xios_get_field_attr("temp",default_value=missing_val) 2288 CALL bcast_omp(missing_val) 2290 2289 ! 2291 2290 ! Now we activate some double radiation call flags only if some 2292 2291 ! diagnostics are requested, otherwise there is no point in doing this 2293 IF (is_master) THEN2294 !--setting up swaero_diag to TRUE in XIOS case2295 IF (xios_field_is_active("topswad").OR.xios_field_is_active("topswad0").OR. &2296 xios_field_is_active("solswad").OR.xios_field_is_active("solswad0").OR. &2297 xios_field_is_active("topswai").OR.xios_field_is_active("solswai").OR. &2298 (iflag_rrtm==1.AND.(xios_field_is_active("toplwad").OR.xios_field_is_active("toplwad0").OR. &2299 xios_field_is_active("sollwad").OR.xios_field_is_active("sollwad0")))) &2300 !!!--for now these fields are not in the XML files so they are omitted2301 !!! xios_field_is_active("toplwai").OR.xios_field_is_active("sollwai") !))) &2302 swaero_diag=.TRUE.2292 IF (is_master) THEN 2293 !--setting up swaero_diag to TRUE in XIOS case 2294 IF (xios_field_is_active("topswad").OR.xios_field_is_active("topswad0").OR. & 2295 xios_field_is_active("solswad").OR.xios_field_is_active("solswad0").OR. & 2296 xios_field_is_active("topswai").OR.xios_field_is_active("solswai").OR. & 2297 (iflag_rrtm==1.AND.(xios_field_is_active("toplwad").OR.xios_field_is_active("toplwad0").OR. & 2298 xios_field_is_active("sollwad").OR.xios_field_is_active("sollwad0")))) & 2299 !!!--for now these fields are not in the XML files so they are omitted 2300 !!! xios_field_is_active("toplwai").OR.xios_field_is_active("sollwai") !))) & 2301 swaero_diag=.TRUE. 2303 2302 2304 !--setting up swaerofree_diag to TRUE in XIOS case2305 IF (xios_field_is_active("SWdnSFCcleanclr").OR.xios_field_is_active("SWupSFCcleanclr").OR. &2306 xios_field_is_active("SWupTOAcleanclr").OR.xios_field_is_active("rsucsaf").OR. &2307 xios_field_is_active("rsdcsaf") .OR. xios_field_is_active("LWdnSFCcleanclr").OR. &2308 xios_field_is_active("LWupTOAcleanclr")) &2309 swaerofree_diag=.TRUE.2303 !--setting up swaerofree_diag to TRUE in XIOS case 2304 IF (xios_field_is_active("SWdnSFCcleanclr").OR.xios_field_is_active("SWupSFCcleanclr").OR. & 2305 xios_field_is_active("SWupTOAcleanclr").OR.xios_field_is_active("rsucsaf").OR. & 2306 xios_field_is_active("rsdcsaf") .OR. xios_field_is_active("LWdnSFCcleanclr").OR. & 2307 xios_field_is_active("LWupTOAcleanclr")) & 2308 swaerofree_diag=.TRUE. 2310 2309 2311 !--setting up dryaod_diag to TRUE in XIOS case 2312 DO naero = 1, naero_tot-1 2313 IF (xios_field_is_active("dryod550_"//name_aero_tau(naero))) dryaod_diag=.TRUE. 2314 ENDDO 2315 ! 2316 !--setting up ok_4xCO2atm to TRUE in XIOS case 2317 IF (xios_field_is_active("rsut4co2").OR.xios_field_is_active("rlut4co2").OR. & 2318 xios_field_is_active("rsutcs4co2").OR.xios_field_is_active("rlutcs4co2").OR. & 2319 xios_field_is_active("rsu4co2").OR.xios_field_is_active("rsucs4co2").OR. & 2320 xios_field_is_active("rsd4co2").OR.xios_field_is_active("rsdcs4co2").OR. & 2321 xios_field_is_active("rlu4co2").OR.xios_field_is_active("rlucs4co2").OR. & 2322 xios_field_is_active("rld4co2").OR.xios_field_is_active("rldcs4co2")) & 2323 ok_4xCO2atm=.TRUE. 2324 ENDIF 2325 !$OMP BARRIER 2326 CALL bcast(swaero_diag) 2327 CALL bcast(swaerofree_diag) 2328 CALL bcast(dryaod_diag) 2329 CALL bcast(ok_4xCO2atm) 2330 2331 ENDIF !using_xios 2332 2310 !--setting up dryaod_diag to TRUE in XIOS case 2311 DO naero = 1, naero_tot-1 2312 IF (xios_field_is_active("dryod550_"//name_aero_tau(naero))) dryaod_diag=.TRUE. 2313 ENDDO 2314 ! 2315 !--setting up ok_4xCO2atm to TRUE in XIOS case 2316 IF (xios_field_is_active("rsut4co2").OR.xios_field_is_active("rlut4co2").OR. & 2317 xios_field_is_active("rsutcs4co2").OR.xios_field_is_active("rlutcs4co2").OR. & 2318 xios_field_is_active("rsu4co2").OR.xios_field_is_active("rsucs4co2").OR. & 2319 xios_field_is_active("rsd4co2").OR.xios_field_is_active("rsdcs4co2").OR. & 2320 xios_field_is_active("rlu4co2").OR.xios_field_is_active("rlucs4co2").OR. & 2321 xios_field_is_active("rld4co2").OR.xios_field_is_active("rldcs4co2")) & 2322 ok_4xCO2atm=.TRUE. 2323 ENDIF 2324 !$OMP BARRIER 2325 CALL bcast(swaero_diag) 2326 CALL bcast(swaerofree_diag) 2327 CALL bcast(dryaod_diag) 2328 CALL bcast(ok_4xCO2atm) 2329 ENDIF !using_xios 2333 2330 ! 2334 2331 CALL printflag( tabcntr0,radpas,ok_journe, & … … 5762 5759 ! 5763 5760 ENDIF 5764 <<<<<<< .mine5765 ELSE IF (iflag_rrtm .EQ.2) THEN ! ecrad RADIATION5766 #ifdef CPP_ECRAD5767 !--climatologies or INCA aerosols5768 CALL readaerosol_optic_ecrad( debut, aerosol_couple, ok_alw, ok_volcan, &5769 flag_aerosol, flag_bc_internal_mixture, itap, jD_cur-jD_ref, &5770 pdtphys, pplay, paprs, t_seri, rhcl, presnivs, &5771 tr_seri, mass_solu_aero, mass_solu_aero_pi)5772 #else5773 abort_message='You should compile with -rad ecrad if running with iflag_rrtm=2'5774 CALL abort_physic(modname,abort_message,1)5775 #endif5776 ||||||| .r49425777 =======5778 5761 ELSE IF (iflag_rrtm .EQ.2) THEN ! ecrad RADIATION 5779 5762 #ifdef CPP_ECRAD … … 5787 5770 CALL abort_physic(modname,abort_message,1) 5788 5771 #endif 5789 >>>>>>> .r49815790 5772 ENDIF 5791 5792 5773 ELSE !--flag_aerosol = 0 5793 5774 tausum_aero(:,:,:) = 0. … … 6091 6072 ENDIF 6092 6073 ! 6074 ! AI namelist utilise pour l appel principal de radlwsw (ecrad) 6093 6075 namelist_ecrad_file='namelist_ecrad' 6094 6076 !
Note: See TracChangeset
for help on using the changeset viewer.