Skip to content

Commit 7889361

Browse files
authored
Merge pull request #735 from GEOS-ESM/feature/sdrabenh/r21c_G2G
Pull in changes from feature/sdrabenh/r21c_G2G
2 parents 4689e6a + 0179922 commit 7889361

File tree

17 files changed

+429
-254
lines changed

17 files changed

+429
-254
lines changed

.circleci/config.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ version: 2.1
22

33
# Anchors to prevent forgetting to update a version
44
baselibs_version: &baselibs_version v7.7.0
5-
bcs_version: &bcs_version v10.23.0
5+
bcs_version: &bcs_version v10.25.0
66

77
orbs:
88
ci: geos-esm/circleci-tools@1
@@ -21,6 +21,7 @@ workflows:
2121
baselibs_version: *baselibs_version
2222
repo: GEOSgcm
2323
checkout_fixture: true
24+
fixture_branch: release/v10
2425
mepodevelop: true
2526
persist_workspace: true # Needs to be true to run fv3/gcm experiment, costs extra
2627
# Run GCM (1 hour, no ExtData)

GEOSagcm_GridComp/GEOSphysics_GridComp/GEOSmoist_GridComp/GEOS_MoistGridComp.F90

Lines changed: 67 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2009,6 +2009,15 @@ subroutine SetServices ( GC, RC )
20092009
RC=STATUS )
20102010
VERIFY_(STATUS)
20112011

2012+
call MAPL_AddExportSpec(GC, &
2013+
SHORT_NAME = 'CLDBASEHGT', &
2014+
LONG_NAME = 'Height_of_cloud_base', &
2015+
UNITS = 'm', &
2016+
DIMS = MAPL_DimsHorzOnly, &
2017+
VLOCATION = MAPL_VLocationNone, &
2018+
RC=STATUS )
2019+
VERIFY_(STATUS)
2020+
20122021
call MAPL_AddExportSpec(GC, &
20132022
SHORT_NAME ='RL', &
20142023
LONG_NAME ='liquid_cloud_particle_effective_radius', &
@@ -2712,6 +2721,30 @@ subroutine SetServices ( GC, RC )
27122721
VLOCATION = MAPL_VLocationCenter, RC=STATUS )
27132722
VERIFY_(STATUS)
27142723

2724+
call MAPL_AddExportSpec(GC, &
2725+
SHORT_NAME='SL', &
2726+
LONG_NAME ='liquid_water_static_energy', &
2727+
UNITS ='J kg-1', &
2728+
DIMS = MAPL_DimsHorzVert, &
2729+
VLOCATION = MAPL_VLocationCenter, RC=STATUS )
2730+
VERIFY_(STATUS)
2731+
2732+
call MAPL_AddExportSpec(GC, &
2733+
SHORT_NAME='QT', &
2734+
LONG_NAME ='total_water_specific_humidity', &
2735+
UNITS ='kg kg-1', &
2736+
DIMS = MAPL_DimsHorzVert, &
2737+
VLOCATION = MAPL_VLocationCenter, RC=STATUS )
2738+
VERIFY_(STATUS)
2739+
2740+
call MAPL_AddExportSpec(GC, &
2741+
SHORT_NAME='T', &
2742+
LONG_NAME ='temperature', &
2743+
UNITS ='K', &
2744+
DIMS = MAPL_DimsHorzVert, &
2745+
VLOCATION = MAPL_VLocationCenter, RC=STATUS )
2746+
VERIFY_(STATUS)
2747+
27152748
call MAPL_AddExportSpec(GC, &
27162749
SHORT_NAME='KCBL_moist', &
27172750
LONG_NAME ='KCBL_before_moist', &
@@ -3573,6 +3606,14 @@ subroutine SetServices ( GC, RC )
35733606
VLOCATION = MAPL_VLocationCenter, RC=STATUS )
35743607
VERIFY_(STATUS)
35753608

3609+
call MAPL_AddExportSpec(GC, &
3610+
SHORT_NAME ='QX1', &
3611+
LONG_NAME ='specific_humidity_after_moist_physics', &
3612+
UNITS ='kg kg-1', &
3613+
DIMS = MAPL_DimsHorzVert, &
3614+
VLOCATION = MAPL_VLocationCenter, RC=STATUS )
3615+
VERIFY_(STATUS)
3616+
35763617
call MAPL_AddExportSpec(GC, &
35773618
SHORT_NAME ='QLLSX0', &
35783619
LONG_NAME ='initial_mass_fraction_of_large_scale_cloud_liquid_water', &
@@ -5648,7 +5689,7 @@ subroutine MOIST_DRIVER(IM,JM,LM, RC)
56485689
!Record vars at top pf moist
56495690
real, pointer, dimension(:,:,:) :: Ux0, Vx0, THx0, KHx0
56505691
real, pointer, dimension(:,:) :: TSx0, FRLANDx0
5651-
real, pointer, dimension(:,:,:) :: Qx0, QLLSx0, QLCNx0, CLLSx0, CLCNx0, QILSx0, QICNx0, QCLSX0, QCCNX0
5692+
real, pointer, dimension(:,:,:) :: Qx0, Qx1, QLLSx0, QLCNx0, CLLSx0, CLCNx0, QILSx0, QICNx0, QCLSX0, QCCNX0
56525693

56535694
! MATMAT Exports for pre-ras inputs for RAStest
56545695
real, pointer, dimension(:,:,:) :: THOI,QHOI,QSSI,DQSI
@@ -5663,6 +5704,7 @@ subroutine MOIST_DRIVER(IM,JM,LM, RC)
56635704
real, pointer, dimension(:,:,:) :: RSU_CN, RSU_AN, RSU_LS, ALPHT, ALPH1, ALPH2
56645705
real, pointer, dimension(:,:,:) :: ENTLAM
56655706
real, pointer, dimension(:,:,:) :: KHX
5707+
real, pointer, dimension(:,:,:) :: SLX, TX, QTX
56665708
real, pointer, dimension(:,: ) :: DTSX
56675709

56685710
real, pointer, dimension(:,:,:) :: REVSU_CN, REVSU_LSAN
@@ -6719,6 +6761,9 @@ subroutine MOIST_DRIVER(IM,JM,LM, RC)
67196761
call MAPL_GetPointer(EXPORT, ZCBL, 'ZCBL' , RC=STATUS); VERIFY_(STATUS)
67206762
call MAPL_GetPointer(EXPORT, TT_PRCP, 'TPREC' , RC=STATUS); VERIFY_(STATUS)
67216763
call MAPL_GetPointer(EXPORT, HOURNORAIN, 'HOURNORAIN' , RC=STATUS); VERIFY_(STATUS)
6764+
call MAPL_GetPointer(EXPORT, TX , 'T' , RC=STATUS); VERIFY_(STATUS)
6765+
call MAPL_GetPointer(EXPORT, SLX , 'SL' , RC=STATUS); VERIFY_(STATUS)
6766+
call MAPL_GetPointer(EXPORT, QTX , 'QT' , RC=STATUS); VERIFY_(STATUS)
67226767

67236768
call MAPL_GetPointer(EXPORT, PRCP_RAIN, 'PRCP_RAIN' , RC=STATUS); VERIFY_(STATUS)
67246769
call MAPL_GetPointer(EXPORT, PRCP_SNOW, 'PRCP_SNOW' , RC=STATUS); VERIFY_(STATUS)
@@ -6736,6 +6781,7 @@ subroutine MOIST_DRIVER(IM,JM,LM, RC)
67366781
call MAPL_GetPointer(EXPORT, XQICN, 'QICNX1' , RC=STATUS); VERIFY_(STATUS)
67376782
call MAPL_GetPointer(EXPORT, XCLCN, 'CLCN' , RC=STATUS); VERIFY_(STATUS)
67386783
call MAPL_GetPointer(EXPORT, XCLLS, 'CLLS' , RC=STATUS); VERIFY_(STATUS)
6784+
call MAPL_GetPointer(EXPORT, QX1, 'QX1' , RC=STATUS); VERIFY_(STATUS)
67396785
call MAPL_GetPointer(EXPORT, QCTOT, 'QCTOT' , RC=STATUS); VERIFY_(STATUS)
67406786
call MAPL_GetPointer(EXPORT, QITOT, 'QITOT' , RC=STATUS); VERIFY_(STATUS)
67416787
call MAPL_GetPointer(EXPORT, QRTOT, 'QRTOT' , RC=STATUS); VERIFY_(STATUS)
@@ -12401,6 +12447,22 @@ subroutine MOIST_DRIVER(IM,JM,LM, RC)
1240112447
END WHERE
1240212448
endif
1240312449

12450+
if (associated(CLDBASEHGT)) then
12451+
CLDBASEx = MAPL_UNDEF
12452+
do i = 1,IM
12453+
do j = 1,JM
12454+
do k = LM-1, 1, -1
12455+
if (ZLE(i,j,k).gt.20000.) exit
12456+
if ( ( RAD_CF(i,j,k) .ge. 1e-2 ) .and. ( QTOT(i,j,k) .ge. 1e-6 ) ) then
12457+
CLDBASEx(i,j) = ZLE(i,j,k)
12458+
exit
12459+
end if
12460+
end do
12461+
end do
12462+
end do
12463+
CLDBASEHGT = CLDBASEx
12464+
end if
12465+
1240412466

1240512467
! Compute DBZ radar reflectivity
1240612468
if (associated(DBZ) .OR. associated(DBZ_MAX)) then
@@ -12709,6 +12771,7 @@ subroutine MOIST_DRIVER(IM,JM,LM, RC)
1270912771
if (associated(AN_ARF )) AN_ARF = AN_ARFX
1271012772
if (associated(CN_ARF )) CN_ARF = CN_ARFX
1271112773
if (associated(SC_ARF )) SC_ARF = SC_ARFX
12774+
if (associated(QX1 )) QX1 = Q1
1271212775
if (associated(XQLLS )) XQLLS = QLLS
1271312776
if (associated(XQILS )) XQILS = QILS
1271412777
if (associated(XCLLS )) XCLLS = CLLS
@@ -12731,8 +12794,9 @@ subroutine MOIST_DRIVER(IM,JM,LM, RC)
1273112794
if (associated(CCWP )) CCWP = SUM( CNV_QC *MASS , 3 )
1273212795
if (associated(TPW )) TPW = SUM( Q1 *MASS , 3 )
1273312796
if (associated(RH2 )) RH2 = max(MIN( Q1/GEOS_QSAT (TH1*PK, PLO) , 1.02 ),0.0)
12734-
12735-
12797+
if (associated(SLX )) SLX = GZLO + MAPL_CP*TEMP - MAPL_ALHL*(QLLS+QLCN) - MAPL_ALHS*(QILS+QICN)
12798+
if (associated(QTX )) QTX = Q1 + QLCN + QLLS + QICN + QILS
12799+
if (associated(TX )) TX = TEMP
1273612800

1273712801
if(adjustl(CLDMICRO)=="2MOMENT") then
1273812802
if (associated(CCNCOLUMN )) CCNCOLUMN = SUM(CCN1*MASS/(100.*PLO*r_air/TEMP) , 3)

0 commit comments

Comments
 (0)