Skip to content

Commit

Permalink
Merge pull request #510 from GEOS-ESM/feature/pnorris/#422-#443-RRTMG…
Browse files Browse the repository at this point in the history
…-LW-SW-combo-generator

add CLDXXSW diagnostics and many cosmetic changes to Solar GC
  • Loading branch information
sdrabenh authored Dec 22, 2021
2 parents b02e9a8 + 1632824 commit 3e62f72
Show file tree
Hide file tree
Showing 4 changed files with 828 additions and 1,178 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -792,21 +792,21 @@ subroutine SetServices ( GC, RC )

call MAPL_AddExportSpec(GC, &
SHORT_NAME = 'CLDHILW', &
LONG_NAME = 'total_hi-level_cloud_area_fraction_rrtmg_lw',&
LONG_NAME = 'high-level_cloud_area_fraction_rrtmg_lw', &
UNITS = '1', &
DIMS = MAPL_DimsHorzOnly, &
VLOCATION = MAPL_VLocationNone, __RC__ )

call MAPL_AddExportSpec(GC, &
SHORT_NAME = 'CLDMDLW', &
LONG_NAME = 'total_mid-level_cloud_area_fraction_rrtmg_lw',&
LONG_NAME = 'mid-level_cloud_area_fraction_rrtmg_lw', &
UNITS = '1', &
DIMS = MAPL_DimsHorzOnly, &
VLOCATION = MAPL_VLocationNone, __RC__ )

call MAPL_AddExportSpec(GC, &
SHORT_NAME = 'CLDLOLW', &
LONG_NAME = 'total_low_level_cloud_area_fraction_rrtmg_lw',&
LONG_NAME = 'low_level_cloud_area_fraction_rrtmg_lw', &
UNITS = '1', &
DIMS = MAPL_DimsHorzOnly, &
VLOCATION = MAPL_VLocationNone, __RC__ )
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -507,18 +507,20 @@ subroutine setcoef ( &
indfor(lay,icol) = 3
forfrac(lay,icol) = factor - 1.

! Initialize selffac in upper atmosphere
! Initialize selffac in upper atmosphere
!
! In the old code this was set as:
! ! Set up factors needed to separately include the water vapor
! ! self-continuum in the calculation of absorption coefficient.
! selffac(lay,icol) = water * forfac(lay,icol)
! In the old code this was set as:
! selffac(lay,icol) = water * forfac(lay,icol)
!
! However, selffac is never used outside of this routine in
! the upper atmosphere. So to save operations we just set to zero.
! Tests confirm that this is zero-diff to actually filling the
! array with the product above in both optimized and debug runs.
selffac(lay,icol) = 0.0
! However, selffac is never used outside of this routine in the
! upper atmosphere. So to save operations we just set to zero.
! Tests confirm that this is zero-diff to actually filling the
! array with the product above in both optimized and debug runs.
! The only reason it needs to be set at all (since it's never used)
! is because of the scaling below by colh2o outside of the lower/
! upper atmosphere branch. If this scaling encoanuters an unitialized
! selffac when compiled in debug mode it will give a FP exception.
selffac(lay,icol) = 0.

! factors needed to separately include the minor gases
! in the calculation of absorption coefficient
Expand Down
Loading

0 comments on commit 3e62f72

Please sign in to comment.