Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

updates for integrated setup and coupled run of LADAS #81

Open
wants to merge 4 commits into
base: develop
Choose a base branch
from

Conversation

saraqzhang
Copy link
Contributor

@saraqzhang saraqzhang commented Jan 28, 2025

updates are implemented to integrate ldas_setup in the coupled LADAS setup procedure. adas fvsetup calls ldas_setup with optional command line inputs, so that coupled ldas experiments are setup according to adas experiment specifications such as exp path, exp id, begin date and gid.

Related PR: GEOS-ESM/GEOSadas#327

Copy link

This PR is being prevented from merging because you have added one of our blocking labels: Contingent - DNA, Needs Lead Approval, Contingent -- Do Not Approve. You'll need to remove it before this PR can be merged.

Copy link
Collaborator

@gmao-rreichle gmao-rreichle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@saraqzhang : I added a few inline comments that probably require further discussion at our next tag-up

@@ -153,6 +154,9 @@ class LDASsetup:

for key in rqdExeInpKeys :
assert key in self.rqdExeInp,' "%s" is required in the input file %s' % (key,self.exeinpfile)
if cmdLineArgs['nymdb' ] != 'None' :
self.date = f"{self.nymdb} 210000"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we will need to pass in HHMMSS as well, or at least HH. Should this ever run in FP, we cannot hardwire 21z.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

will add HHMMSS.

self.adas_expdir = os.path.dirname(self.exphome)
self.rqdExeInp[ 'ADAS_EXPDIR'] = self.adas_expdir
self.adas_expid = os.path.basename(self.adas_expdir)
self.rqdExeInp[ 'MET_TAG' ] = self.adas_expid + '__Nx+-'
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we really want to edit ldas_setup with '__Nx+-' knowing that this is already being changed? Can we go straight to the new "bkg" location of the lfo files?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will leave Nx+- option in till we get bkg updates in and tested

Comment on lines +1128 to +1134
for line in fileinput.input(tmprcfile,inplace=True):
print (line.rstrip().replace("# 'catch_progn_incr'"," 'catch_progn_incr'"))
for line in fileinput.input(tmprcfile,inplace=True):
print (line.rstrip().replace('catch_progn_incr.ref_time: 000000,','catch_progn_incr.ref_time: 013000,'))
for line in fileinput.input(tmprcfile,inplace=True):
print (line.rstrip().replace("'SMAP_L4_SM_gph'","# 'SMAP_L4_SM_gph'"))

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It might make more sense to add a new template of GEOSldas_HIST.rc that is specific to the LADAS, rather than edit GEOSldas_HIST.rc in this way

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we add a new template for central and one for atmens in GEOSldas_App/ , so that they will be installed along with GEOSldas_HIST.rc in install-SLES15/etc/ by adas build.

@@ -1710,6 +1728,11 @@ def parseCmdLine():
help='replace computing/sponsor account in batinp file',
type=str, default='None'
)
p_setup.add_argument(
'--nymdb',
help='replace BEG_DATE in expinp file ',
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure I understand the comment. Should this read:
'replaces BEG_DATE in expinp file' ?? (without the s in "replaces", it reads like an instruction, when I think this help text describes the effect of specifying --nymdb
Also, it looks like there's a typo: "exeinp" instead of "expinp"?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

spot on. maybe we can say "supersedes BEG_DATE in expinp file "

self.rqdExeInp[ 'EXP_ID' ] = self.adas_expid + '_LDAS'
if self.ladas_coupling == 2:
self.rqdExeInp[ 'EXP_ID' ] = self.adas_expid + '_LDAS4ens'
self.rqdExeInp[ 'MET_PATH' ] = self.adas_expdir +'/atmens/ensdiag/mem'
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See comment above -- avoid adding "./ensdiag/" when we are already changing to "bkg"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will leave this in till we get bkg updates in and tested

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants