Skip to content

Commit df7ccea

Browse files
authored
Merge pull request #268 from mvertens/feature/add_dglc
Add a dglc component with noevolve mode
2 parents 9b92a2b + 6891809 commit df7ccea

36 files changed

+1837
-185
lines changed

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ endif()
9999
target_include_directories(dshr PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/streams>
100100
$<INSTALL_INTERFACE:mod>)
101101

102-
foreach(COMP datm dice dlnd docn drof dwav)
102+
foreach(COMP datm dice dglc dlnd docn drof dwav)
103103
add_subdirectory("${COMP}")
104104
if(BLD_STANDALONE)
105105
target_include_directories(${COMP} PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/share>

cime_config/buildlib

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@ def buildlib(bldroot, libroot, case):
184184
expect(False, nextline)
185185

186186
# Link the CDEPS component directories to the location expected by cime
187-
for comp in ("atm", "lnd", "ice", "ocn", "rof", "wav"):
187+
for comp in ("atm", "glc", "lnd", "ice", "ocn", "rof", "wav"):
188188
compname = case.get_value("COMP_{}".format(comp.upper()))
189189
comppath = os.path.join(case.get_value("EXEROOT"), comp, "obj")
190190
if compname == "d" + comp:

cime_config/testdefs/testlist_cdeps.xml

Lines changed: 0 additions & 150 deletions
This file was deleted.

datm/atm_comp_nuopc.F90

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ module cdeps_datm_comp
2929
use shr_const_mod , only : shr_const_cday
3030
use shr_sys_mod , only : shr_sys_abort
3131
use shr_cal_mod , only : shr_cal_ymd2date
32-
use shr_log_mod , only : shr_log_setLogUnit
32+
use shr_log_mod , only : shr_log_setLogUnit
3333
use dshr_methods_mod , only : dshr_state_diagnose, chkerr, memcheck
3434
use dshr_strdata_mod , only : shr_strdata_type, shr_strdata_init_from_config, shr_strdata_advance
3535
use dshr_strdata_mod , only : shr_strdata_get_stream_pointer, shr_strdata_setOrbs
@@ -264,7 +264,7 @@ subroutine InitializeAdvertise(gcomp, importState, exportState, clock, rc)
264264

265265
! Obtain flds_scalar values, mpi values, multi-instance values and
266266
! set logunit and set shr logging to my log file
267-
call dshr_init(gcomp, 'ATM', sdat, mpicom, my_task, inst_index, inst_suffix, &
267+
call dshr_init(gcomp, 'ATM', mpicom, my_task, inst_index, inst_suffix, &
268268
flds_scalar_name, flds_scalar_num, flds_scalar_index_nx, flds_scalar_index_ny, &
269269
logunit, rc=rc)
270270
if (ChkErr(rc,__LINE__,u_FILE_u)) return

datm/cime_config/testdefs/testlist_datm.xml

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
<?xml version="1.0"?>
22
<testlist version="2.0">
33

4-
<test compset="2000_DATM%QIA_SLND_DICE%SSMI_DOCN%DOM_SROF_SGLC_SWAV" grid="T42_T42" name="SMS_Ln9_P1" testmods="datm/scam">
4+
<test compset="2000_DATM%QIA_SLND_SICE_DOCN%DOM_SROF_SGLC_SWAV" grid="T42_T42" name="SMS_Ln9_P1" testmods="datm/scam">
55
<machines>
66
<machine name="derecho" compiler="intel" category="aux_cdeps"/>
7+
<machine name="betzy" compiler="intel" category="aux_cdeps_noresm"/>
78
</machines>
89
</test>
910
<test compset="2000_DATM%QIA_SLND_SICE_SOCN_SROF_SGLC_SWAV_SESP" grid="f10_f10_mg37" name="SMS_Ld5">
1011
<machines>
1112
<machine name="derecho" compiler="intel" category="aux_cdeps"/>
13+
<machine name="betzy" compiler="intel" category="aux_cdeps_noresm"/>
1214
</machines>
1315
<options>
1416
<option name="wallclock"> 00:10:00 </option>
@@ -17,6 +19,7 @@
1719
<test compset="2000_DATM%CRUv7_SLND_SICE_SOCN_SROF_SGLC_SWAV_SESP" grid="f10_f10_mg37" name="SMS_Ld5">
1820
<machines>
1921
<machine name="derecho" compiler="intel" category="aux_cdeps"/>
22+
<machine name="betzy" compiler="intel" category="aux_cdeps_noresm"/>
2023
</machines>
2124
<options>
2225
<option name="wallclock"> 00:10:00 </option>
@@ -25,6 +28,7 @@
2528
<test compset="HIST_DATM%GSWP3v1_SLND_SICE_SOCN_SROF_SGLC_SWAV_SESP" grid="f10_f10_mg37" name="SMS_Ld5">
2629
<machines>
2730
<machine name="derecho" compiler="intel" category="aux_cdeps"/>
31+
<machine name="betzy" compiler="intel" category="aux_cdeps_noresm"/>
2832
</machines>
2933
<options>
3034
<option name="wallclock"> 00:10:00 </option>
@@ -33,6 +37,7 @@
3337
<test compset="1850_DATM%GSWP3v1_SLND_SICE_SOCN_SROF_SGLC_SWAV_SESP" grid="f10_f10_mg37" name="SMS_Ld5">
3438
<machines>
3539
<machine name="derecho" compiler="intel" category="aux_cdeps"/>
40+
<machine name="betzy" compiler="intel" category="aux_cdeps_noresm"/>
3641
</machines>
3742
<options>
3843
<option name="wallclock"> 00:10:00 </option>
@@ -41,6 +46,7 @@
4146
<test compset="2010_DATM%GSWP3v1_SLND_SICE_SOCN_SROF_SGLC_SWAV_SESP" grid="f10_f10_mg37" name="SMS_Ld5">
4247
<machines>
4348
<machine name="derecho" compiler="intel" category="aux_cdeps"/>
49+
<machine name="betzy" compiler="intel" category="aux_cdeps_noresm"/>
4450
</machines>
4551
<options>
4652
<option name="wallclock"> 00:10:00 </option>
@@ -49,6 +55,7 @@
4955
<test compset="SSP585_DATM%GSWP3v1_SLND_SICE_SOCN_SROF_SGLC_SWAV_SESP" grid="f10_f10_mg37" name="SMS_Ld5">
5056
<machines>
5157
<machine name="derecho" compiler="intel" category="aux_cdeps"/>
58+
<machine name="betzy" compiler="intel" category="aux_cdeps_noresm"/>
5259
</machines>
5360
<options>
5461
<option name="wallclock"> 00:10:00 </option>
@@ -57,6 +64,7 @@
5764
<test compset="2000_DATM%NLDAS2_SLND_SICE_SOCN_SROF_SGLC_SWAV_SESP" grid="f10_f10_mg37" name="SMS_Ld5">
5865
<machines>
5966
<machine name="derecho" compiler="intel" category="aux_cdeps"/>
67+
<machine name="betzy" compiler="intel" category="aux_cdeps_noresm"/>
6068
</machines>
6169
<options>
6270
<option name="wallclock"> 00:10:00 </option>
@@ -65,6 +73,7 @@
6573
<test compset="2000_DATM%NYF_SLND_SICE_SOCN_SROF_SGLC_SWAV_SESP" grid="T62_g17" name="SMS_Ld5">
6674
<machines>
6775
<machine name="derecho" compiler="intel" category="aux_cdeps"/>
76+
<machine name="betzy" compiler="intel" category="aux_cdeps_noresm"/>
6877
</machines>
6978
<options>
7079
<option name="wallclock"> 00:10:00 </option>
@@ -73,6 +82,7 @@
7382
<test compset="2000_DATM%IAF_SLND_SICE_SOCN_SROF_SGLC_SWAV_SESP" grid="T62_g17" name="SMS_Ld5">
7483
<machines>
7584
<machine name="derecho" compiler="intel" category="aux_cdeps"/>
85+
<machine name="betzy" compiler="intel" category="aux_cdeps_noresm"/>
7686
</machines>
7787
<options>
7888
<option name="wallclock"> 00:10:00 </option>
@@ -81,6 +91,7 @@
8191
<test compset="2000_DATM%JRA_SLND_SICE_SOCN_SROF_SGLC_SWAV_SESP" grid="TL319_t061" name="SMS_Ld5">
8292
<machines>
8393
<machine name="derecho" compiler="intel" category="aux_cdeps"/>
94+
<machine name="betzy" compiler="intel" category="aux_cdeps_noresm"/>
8495
</machines>
8596
<options>
8697
<option name="wallclock"> 00:10:00 </option>
@@ -89,6 +100,7 @@
89100
<test compset="2000_DATM%JRA-1p4-2018_SLND_SICE_SOCN_SROF_SGLC_SWAV_SESP" grid="TL319_t061" name="SMS_Ld5">
90101
<machines>
91102
<machine name="derecho" compiler="intel" category="aux_cdeps"/>
103+
<machine name="betzy" compiler="intel" category="aux_cdeps_noresm"/>
92104
</machines>
93105
<options>
94106
<option name="wallclock"> 00:10:00 </option>
@@ -97,14 +109,7 @@
97109
<test compset="2000_DATM%1PT_SLND_SICE_SOCN_SROF_SGLC_SWAV_SESP" grid="1x1_mexicocityMEX" name="SMS_Ld5_P1" testmods="datm/1PT">
98110
<machines>
99111
<machine name="derecho" compiler="intel" category="aux_cdeps"/>
100-
</machines>
101-
<options>
102-
<option name="wallclock"> 00:10:00 </option>
103-
</options>
104-
</test>
105-
<test compset="2000_DATM%ERA5_SLND_SICE_SOCN_SROF_SGLC_SWAV_SESP" grid="TL319_t061" name="SMS_Ld5">
106-
<machines>
107-
<machine name="derecho" compiler="intel" category="aux_cdeps"/>
112+
<machine name="betzy" compiler="intel" category="aux_cdeps_noresm"/>
108113
</machines>
109114
<options>
110115
<option name="wallclock"> 00:10:00 </option>

datm/datm_datamode_core2_mod.F90

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ module datm_datamode_core2_mod
4040
! export state pointers
4141
real(r8), pointer :: Sa_u(:) => null()
4242
real(r8), pointer :: Sa_v(:) => null()
43+
real(r8), pointer :: Sa_u10m(:) => null()
44+
real(r8), pointer :: Sa_v10m(:) => null()
4345
real(r8), pointer :: Sa_z(:) => null()
4446
real(r8), pointer :: Sa_tbot(:) => null()
4547
real(r8), pointer :: Sa_ptem(:) => null()
@@ -115,6 +117,8 @@ subroutine datm_datamode_core2_advertise(exportState, fldsexport, flds_scalar_na
115117
call dshr_fldList_add(fldsExport, 'Sa_z' )
116118
call dshr_fldList_add(fldsExport, 'Sa_u' )
117119
call dshr_fldList_add(fldsExport, 'Sa_v' )
120+
call dshr_fldList_add(fldsExport, 'Sa_u10m' )
121+
call dshr_fldList_add(fldsExport, 'Sa_v10m' )
118122
call dshr_fldList_add(fldsExport, 'Sa_ptem' )
119123
call dshr_fldList_add(fldsExport, 'Sa_dens' )
120124
call dshr_fldList_add(fldsExport, 'Sa_pslv' )
@@ -219,6 +223,10 @@ subroutine datm_datamode_core2_init_pointers(exportState, sdat, datamode, factor
219223
if (ChkErr(rc,__LINE__,u_FILE_u)) return
220224
call dshr_state_getfldptr(exportState, 'Sa_v' , fldptr1=Sa_v , rc=rc)
221225
if (ChkErr(rc,__LINE__,u_FILE_u)) return
226+
call dshr_state_getfldptr(exportState, 'Sa_u10m' , fldptr1=Sa_u10m , rc=rc)
227+
if (ChkErr(rc,__LINE__,u_FILE_u)) return
228+
call dshr_state_getfldptr(exportState, 'Sa_v10m' , fldptr1=Sa_v10m , rc=rc)
229+
if (ChkErr(rc,__LINE__,u_FILE_u)) return
222230
call dshr_state_getfldptr(exportState, 'Sa_tbot' , fldptr1=Sa_tbot , rc=rc)
223231
if (ChkErr(rc,__LINE__,u_FILE_u)) return
224232
call dshr_state_getfldptr(exportState, 'Sa_pbot' , fldptr1=Sa_pbot , rc=rc)
@@ -315,6 +323,10 @@ subroutine datm_datamode_core2_advance(datamode, target_ymd, target_tod, target_
315323
Sa_u(n) = uprime*cos(winddFactor(n)*degtorad) - vprime*sin(winddFactor(n)*degtorad)
316324
Sa_v(n) = uprime*sin(winddFactor(n)*degtorad) + vprime*cos(winddFactor(n)*degtorad)
317325

326+
! Set Sa_u10m and Sa_v10m to Sa_u and Sa_v
327+
Sa_u10m(n) = Sa_u(n)
328+
Sa_v10m(n) = Sa_v(n)
329+
318330
!--- density and pslv taken directly from input stream, set pbot ---
319331
Sa_pbot(n) = Sa_pslv(n)
320332

datm/datm_datamode_jra_mod.F90

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,10 @@ module datm_datamode_jra_mod
2525

2626
! export state pointers
2727
real(r8), pointer :: Sa_z(:) => null()
28+
real(r8), pointer :: Sa_u(:) => null()
29+
real(r8), pointer :: Sa_v(:) => null()
30+
real(r8), pointer :: Sa_u10m(:) => null()
31+
real(r8), pointer :: Sa_v10m(:) => null()
2832
real(r8), pointer :: Sa_tbot(:) => null()
2933
real(r8), pointer :: Sa_ptem(:) => null()
3034
real(r8), pointer :: Sa_shum(:) => null()
@@ -88,6 +92,8 @@ subroutine datm_datamode_jra_advertise(exportState, fldsexport, flds_scalar_name
8892
call dshr_fldList_add(fldsExport, 'Sa_z' )
8993
call dshr_fldList_add(fldsExport, 'Sa_u' )
9094
call dshr_fldList_add(fldsExport, 'Sa_v' )
95+
call dshr_fldList_add(fldsExport, 'Sa_u10m' )
96+
call dshr_fldList_add(fldsExport, 'Sa_v10m' )
9197
call dshr_fldList_add(fldsExport, 'Sa_ptem' )
9298
call dshr_fldList_add(fldsExport, 'Sa_dens' )
9399
call dshr_fldList_add(fldsExport, 'Sa_pslv' )
@@ -174,6 +180,14 @@ subroutine datm_datamode_jra_init_pointers(exportState, sdat, rc)
174180
call shr_strdata_get_stream_pointer( sdat, 'Faxa_swdn' , strm_swdn , rc)
175181
if (ChkErr(rc,__LINE__,u_FILE_u)) return
176182

183+
call dshr_state_getfldptr(exportState, 'Sa_u' , fldptr1=Sa_u , rc=rc)
184+
if (ChkErr(rc,__LINE__,u_FILE_u)) return
185+
call dshr_state_getfldptr(exportState, 'Sa_v' , fldptr1=Sa_v , rc=rc)
186+
if (ChkErr(rc,__LINE__,u_FILE_u)) return
187+
call dshr_state_getfldptr(exportState, 'Sa_u10m' , fldptr1=Sa_u10m , rc=rc)
188+
if (ChkErr(rc,__LINE__,u_FILE_u)) return
189+
call dshr_state_getfldptr(exportState, 'Sa_v10m' , fldptr1=Sa_v10m , rc=rc)
190+
if (ChkErr(rc,__LINE__,u_FILE_u)) return
177191
call dshr_state_getfldptr(exportState, 'Sa_z' , fldptr1=Sa_z , rc=rc)
178192
if (ChkErr(rc,__LINE__,u_FILE_u)) return
179193
call dshr_state_getfldptr(exportState, 'Sa_tbot' , fldptr1=Sa_tbot , rc=rc)
@@ -253,6 +267,10 @@ subroutine datm_datamode_jra_advance(exportstate, target_ymd, target_tod, model_
253267
Sa_pbot(n) = Sa_pslv(n)
254268
Sa_ptem(n) = Sa_tbot(n)
255269

270+
! Set Sa_u10m and Sa_v10m to Sa_u and Sa_v
271+
Sa_u10m(n) = Sa_u(n)
272+
Sa_v10m(n) = Sa_v(n)
273+
256274
! density computation for JRA55 forcing
257275
Sa_dens(n) = Sa_pbot(n)/(rdair*Sa_tbot(n)*(1 + 0.608*Sa_shum(n)))
258276

0 commit comments

Comments
 (0)