- Timestamp:
- Jul 28, 2025, 7:23:15 PM (6 days ago)
- Location:
- LMDZ6/branches/contrails
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/branches/contrails
- Property svn:mergeinfo changed
/LMDZ6/trunk merged: 5654-5683,5685-5690,5692-5715,5718-5721,5726-5727,5729,5744-5761,5763-5778,5780,5785-5789
- Property svn:mergeinfo changed
-
LMDZ6/branches/contrails/libf/phylmd/ecrad/lmdz/radiation_scheme_mod.f90
r5268 r5791 65 65 66 66 USE mod_phys_lmdz_para 67 use geometry_mod, only: longitude_deg, latitude_deg 67 68 68 69 IMPLICIT NONE … … 160 161 161 162 ! Direct component of surface flux into horizontal plane 162 REAL(KIND=JPRB), INTENT(OUT) :: PFLUX_DIR(KLON )163 REAL(KIND=JPRB), INTENT(OUT) :: PFLUX_DIR_CLEAR(KLON )163 REAL(KIND=JPRB), INTENT(OUT) :: PFLUX_DIR(KLON,KLEV+1) 164 REAL(KIND=JPRB), INTENT(OUT) :: PFLUX_DIR_CLEAR(KLON,KLEV+1) 164 165 ! As PFLUX_DIR but into a plane perpendicular to the sun 165 166 REAL(KIND=JPRB), INTENT(OUT) :: PFLUX_DIR_INTO_SUN(KLON) … … 260 261 if (debut_ecrad) then 261 262 call SETUP_RADIATION_SCHEME(loutput,namelist_file,rad_config,driver_config) 262 debut_ecrad=.false.263 263 endif 264 264 !$OMP END MASTER … … 541 541 ! endif 542 542 ! endif 543 if (debut_ecrad .and. driver_config%do_save_inputs) & 544 call save_inputs('inputs.nc', rad_config, single_level, thermodynamics, & 545 gas, cloud, aerosol, lat = latitude_deg, lon = longitude_deg) 546 543 547 CALL radiation(KLON, KLEV, KIDIA, KFDIA, rad_config, & 544 548 & single_level, thermodynamics, gas, cloud, aerosol, flux) … … 585 589 !PFLUX_SW_UP_CLEAR_SURF(KIDIA:KFDIA) = flux%sw_up_clear(KIDIA:KFDIA,KLEV+1) 586 590 !PFLUX_LW_UP_CLEAR_SURF(KIDIA:KFDIA) = flux%lw_up_clear(KIDIA:KFDIA,KLEV+1) 587 PFLUX_DIR(KIDIA:KFDIA) = flux%sw_dn_direct(KIDIA:KFDIA,KLEV+1) 588 PFLUX_DIR_CLEAR(KIDIA:KFDIA) = flux%sw_dn_direct_clear(KIDIA:KFDIA,KLEV+1) 591 ! Direct component of flux into horizontal plane 592 PFLUX_DIR(KIDIA:KFDIA,:) = flux%sw_dn_direct(KIDIA:KFDIA,:) 593 PFLUX_DIR_CLEAR(KIDIA:KFDIA,:) = flux%sw_dn_direct_clear(KIDIA:KFDIA,:) 589 594 PFLUX_DIR_INTO_SUN(KIDIA:KFDIA) = 0.0_JPRB 590 595 WHERE (PMU0(KIDIA:KFDIA) > EPSILON(1.0_JPRB)) 591 PFLUX_DIR_INTO_SUN(KIDIA:KFDIA) = PFLUX_DIR(KIDIA:KFDIA) / PMU0(KIDIA:KFDIA) 596 ! Direct Surface component of flux into a plane perpendicular to the sun 597 PFLUX_DIR_INTO_SUN(KIDIA:KFDIA) = PFLUX_DIR(KIDIA:KFDIA,KLEV+1) / PMU0(KIDIA:KFDIA) 592 598 END WHERE 593 599 ! Top-of-atmosphere downwelling flux … … 656 662 657 663 IF (LHOOK) CALL DR_HOOK('RADIATION_SCHEME',1,ZHOOK_HANDLE) 664 debut_ecrad=.false. 658 665 659 666 END SUBROUTINE RADIATION_SCHEME … … 849 856 850 857 ! Direct component of surface flux into horizontal plane 851 REAL(KIND=JPRB), INTENT(OUT) :: PFLUX_DIR(KLON )852 REAL(KIND=JPRB), INTENT(OUT) :: PFLUX_DIR_CLEAR(KLON )858 REAL(KIND=JPRB), INTENT(OUT) :: PFLUX_DIR(KLON,KLEV+1) 859 REAL(KIND=JPRB), INTENT(OUT) :: PFLUX_DIR_CLEAR(KLON,KLEV+1) 853 860 ! As PFLUX_DIR but into a plane perpendicular to the sun 854 861 REAL(KIND=JPRB), INTENT(OUT) :: PFLUX_DIR_INTO_SUN(KLON) … … 1283 1290 !PFLUX_SW_UP_CLEAR_SURF(KIDIA:KFDIA) = flux%sw_up_clear(KIDIA:KFDIA,KLEV+1) 1284 1291 !PFLUX_LW_UP_CLEAR_SURF(KIDIA:KFDIA) = flux%lw_up_clear(KIDIA:KFDIA,KLEV+1) 1285 PFLUX_DIR(KIDIA:KFDIA ) = flux%sw_dn_direct(KIDIA:KFDIA,KLEV+1)1286 PFLUX_DIR_CLEAR(KIDIA:KFDIA ) = flux%sw_dn_direct_clear(KIDIA:KFDIA,KLEV+1)1292 PFLUX_DIR(KIDIA:KFDIA,:) = flux%sw_dn_direct(KIDIA:KFDIA,:) 1293 PFLUX_DIR_CLEAR(KIDIA:KFDIA,:) = flux%sw_dn_direct_clear(KIDIA:KFDIA,:) 1287 1294 PFLUX_DIR_INTO_SUN(KIDIA:KFDIA) = 0.0_JPRB 1288 1295 WHERE (PMU0(KIDIA:KFDIA) > EPSILON(1.0_JPRB)) 1289 PFLUX_DIR_INTO_SUN(KIDIA:KFDIA) = PFLUX_DIR(KIDIA:KFDIA ) / PMU0(KIDIA:KFDIA)1296 PFLUX_DIR_INTO_SUN(KIDIA:KFDIA) = PFLUX_DIR(KIDIA:KFDIA,KLEV+1) / PMU0(KIDIA:KFDIA) 1290 1297 END WHERE 1291 1298 ! Top-of-atmosphere downwelling flux
Note: See TracChangeset
for help on using the changeset viewer.