Changeset 4031 for LMDZ6/trunk/libf/phylmd/ecrad
- Timestamp:
- Nov 29, 2021, 3:29:39 PM (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmd/ecrad/radiation_scheme.F90
r3946 r4031 22 22 & PPRESSURE, PTEMPERATURE, & 23 23 & PPRESSURE_H, PTEMPERATURE_H, PQ, PQSAT, & 24 & PCO2, PCH4, PN2O, PNO2, PCFC11, PCFC12, PHCFC22, PCCL4, PO3_DP, & 24 & PCO2, PCH4, PN2O, PNO2, PCFC11, PCFC12, PHCFC22, & 25 & PCCL4, PO3, PO2, & 25 26 & PCLOUD_FRAC, PQ_LIQUID, PQ_ICE, PQ_RAIN, PQ_SNOW, & 26 27 & ZRE_LIQUID_UM, ZRE_ICE_UM, & … … 151 152 ! AI 152 153 REAL(KIND=JPRB), INTENT(IN) :: PQSAT(KLON,KLEV) 153 REAL(KIND=JPRB), INTENT(IN) :: PCO2(KLON,KLEV) 154 REAL(KIND=JPRB), INTENT(IN) :: PCH4(KLON,KLEV) 155 REAL(KIND=JPRB), INTENT(IN) :: PN2O(KLON,KLEV) 156 REAL(KIND=JPRB), INTENT(IN) :: PNO2(KLON,KLEV) 157 REAL(KIND=JPRB), INTENT(IN) :: PCFC11(KLON,KLEV) 158 REAL(KIND=JPRB), INTENT(IN) :: PCFC12(KLON,KLEV) 159 REAL(KIND=JPRB), INTENT(IN) :: PHCFC22(KLON,KLEV) 160 REAL(KIND=JPRB), INTENT(IN) :: PCCL4(KLON,KLEV) 161 REAL(KIND=JPRB), INTENT(IN) :: PO3_DP(KLON,KLEV) ! AI (kg/kg) ATTENTION (Pa*kg/kg) 154 REAL(KIND=JPRB), INTENT(IN) :: PCO2 155 REAL(KIND=JPRB), INTENT(IN) :: PCH4 156 REAL(KIND=JPRB), INTENT(IN) :: PN2O 157 REAL(KIND=JPRB), INTENT(IN) :: PNO2 158 REAL(KIND=JPRB), INTENT(IN) :: PCFC11 159 REAL(KIND=JPRB), INTENT(IN) :: PCFC12 160 REAL(KIND=JPRB), INTENT(IN) :: PHCFC22 161 REAL(KIND=JPRB), INTENT(IN) :: PCCL4 162 REAL(KIND=JPRB), INTENT(IN) :: PO3(KLON,KLEV) ! AI (kg/kg) ATTENTION (Pa*kg/kg) 163 REAL(KIND=JPRB), INTENT(IN) :: PO2 162 164 163 165 ! *** Cloud fraction and hydrometeor mass mixing ratios … … 326 328 print*,'PCO2, PCH4, PN2O, PNO2, PCFC11, PCFC12, PHCFC22, PCCL4 =', & 327 329 PCO2, PCH4, PN2O, PNO2, PCFC11, PCFC12, PHCFC22, PCCL4 328 print*,'PO3 _DP =',PO3_DP330 print*,'PO3 =',PO3 329 331 print*,'PCLOUD_FRAC, PQ_LIQUID, PQ_ICE, PQ_RAIN, PQ_SNOW =', & 330 332 PCLOUD_FRAC, PQ_LIQUID, PQ_ICE, PQ_RAIN, PQ_SNOW … … 345 347 ! AI appel radiation_setup 346 348 call SETUP_RADIATION_SCHEME(loutput) 349 !! Les 6 bandes SW pour l'albedo : 350 !! 0.185-0.25, 0.25-0.4, 0.4-0.69 , 0.69-1.19, 1.19-2.38, 2.38-4.00 micro-metre 351 call rad_config%define_sw_albedo_intervals(6, & 352 & (/ 0.25e-6_jprb, 0.44e-6_jprb, 1.19e-6_jprb, & 353 & 2.38e-6_jprb, 4.00e-6_jprb /), (/ 1,2,3,4,5,6 /)) 347 354 348 355 if (lprint_config) then … … 372 379 print*,'rad_config%i_emiss_from_band_lw =', rad_config%i_emiss_from_band_lw 373 380 endif 374 !stop375 ! A EFFACER376 !print*,'n_g_lw, n_g_sw =', rad_config%n_g_lw, rad_config%n_g_sw377 !print*,'use_canopy_full_spectrum_lw = ', rad_config%use_canopy_full_spectrum_lw378 !print*,'rad_config%i_band_from_reordered_g_lw =', &379 ! rad_config%i_band_from_reordered_g_lw380 !print*,'use_canopy_full_spectrum_lw =', rad_config%use_canopy_full_spectrum_lw381 !rad_config%use_canopy_full_spectrum_lw = .TRUE.382 ! AI ATTENTION383 !rad_config%i_band_from_reordered_g_lw = 1384 !rad_config%use_spectral_solar_scaling = .true.385 !endif386 ! AI ATTENTION test387 !rad_config%i_gas_model = IGasModelMonochromatic388 381 389 382 ! AI ATTENTION 390 383 ! Allocate memory in radiation objects 391 CALL single_level%allocate(KLON, NSW, 2, &384 CALL single_level%allocate(KLON, NSW, 1, & 392 385 & use_sw_albedo_direct=.TRUE.) 393 386 … … 420 413 ! temperature at the half-level corresponding to the surface as 421 414 ! follows: 422 thermodynamics%temperature_hl(KIDIA:KFDIA,KLEV+1) &423 & = PTEMPERATURE(KIDIA:KFDIA,KLEV) &424 & + 0.5_JPRB * (PTEMPERATURE_H(KIDIA:KFDIA,KLEV+1) &425 & -PTEMPERATURE_H(KIDIA:KFDIA,KLEV))415 !thermodynamics%temperature_hl(KIDIA:KFDIA,KLEV+1) & 416 ! & = PTEMPERATURE(KIDIA:KFDIA,KLEV) & 417 ! & + 0.5_JPRB * (PTEMPERATURE_H(KIDIA:KFDIA,KLEV+1) & 418 ! & -PTEMPERATURE_H(KIDIA:KFDIA,KLEV)) 426 419 427 420 ! Alternatively we respect the model's atmospheric temperature in the … … 461 454 !single_level%lw_emissivity(KIDIA:KFDIA,1) = 1.0_JPRB 462 455 single_level%lw_emissivity(KIDIA:KFDIA,1) = PEMIS(KIDIA:KFDIA) 463 single_level%lw_emissivity(KIDIA:KFDIA,2) = PEMIS_WINDOW(KIDIA:KFDIA)456 !single_level%lw_emissivity(KIDIA:KFDIA,2) = PEMIS_WINDOW(KIDIA:KFDIA) 464 457 465 458 ! Create the relevant seed from date and time get the starting day … … 499 492 ! & PLAND_SEA_MASK, PCCN_LAND, PCCN_SEA, & 500 493 ! & ZRE_LIQUID_UM) 501 cloud%re_liq(KIDIA:KFDIA,:) = ZRE_LIQUID_UM(KIDIA:KFDIA,:) * 1.0e-6_JPRB494 cloud%re_liq(KIDIA:KFDIA,:) = ZRE_LIQUID_UM(KIDIA:KFDIA,:) 502 495 503 496 !CALL ICE_EFFECTIVE_RADIUS(KIDIA, KFDIA, KLON, KLEV, & 504 497 ! & PPRESSURE, PTEMPERATURE, PCLOUD_FRAC, PQ_ICE, PQ_SNOW, PGEMU, & 505 498 ! & ZRE_ICE_UM) 506 cloud%re_ice(KIDIA:KFDIA,:) = ZRE_ICE_UM(KIDIA:KFDIA,:) * 1.0e-6_JPRB499 cloud%re_ice(KIDIA:KFDIA,:) = ZRE_ICE_UM(KIDIA:KFDIA,:) 507 500 508 501 ! Get the cloud overlap decorrelation length (for cloud boundaries), … … 539 532 ENDDO 540 533 ENDDO 534 !AI ATTENTION meme traitement dans le version offline 535 !call cloud%create_inv_cloud_effective_size_eta(ncol, nlev, & 536 ! & thermodynamics%pressure_hl, & 537 ! & low_inv_effective_size, & 538 ! & middle_inv_effective_size, & 539 ! & high_inv_effective_size, 0.8_jprb, 0.45_jprb) 541 540 542 541 print*,'******** AEROSOLS (allocate + input) **************************************' … … 608 607 ! ENDDO 609 608 !ENDDO 610 ZO3 = PO3_DP611 609 612 610 ! Insert gas mixing ratios 613 611 print*,'Insert gas mixing ratios' 614 612 CALL gas%put(IH2O, IMassMixingRatio, PQ) 615 CALL gas%put(I CO2, IMassMixingRatio, PCO2)616 CALL gas%put (ICH4, IMassMixingRatio, PCH4)617 CALL gas%put (IN2O, IMassMixingRatio, PN2O)618 CALL gas%put (ICFC11, IMassMixingRatio, PCFC11)619 CALL gas%put (ICFC12, IMassMixingRatio, PCFC12)620 CALL gas%put (IHCFC22, IMassMixingRatio, PHCFC22)621 CALL gas%put (ICCL4, IMassMixingRatio, PCCL4)622 CALL gas%put (IO3, IMassMixingRatio, ZO3)623 CALL gas%put_well_mixed(IO2, IVolumeMixingRatio, 0.20944_JPRB)613 CALL gas%put(IO3, IMassMixingRatio, PO3) 614 CALL gas%put_well_mixed(ICO2, IVolumeMixingRatio, PCO2) 615 CALL gas%put_well_mixed(ICH4, IVolumeMixingRatio, PCH4) 616 CALL gas%put_well_mixed(IN2O, IVolumeMixingRatio, PN2O) 617 CALL gas%put_well_mixed(ICFC11, IVolumeMixingRatio, PCFC11) 618 CALL gas%put_well_mixed(ICFC12, IVolumeMixingRatio, PCFC12) 619 CALL gas%put_well_mixed(IHCFC22, IVolumeMixingRatio, PHCFC22) 620 CALL gas%put_well_mixed(ICCL4, IVolumeMixingRatio, PCCL4) 621 CALL gas%put_well_mixed(IO2, IVolumeMixingRatio, PO2) 624 622 ! Ensure the units of the gas mixing ratios are what is required by 625 623 ! the gas absorption model
Note: See TracChangeset
for help on using the changeset viewer.