57 lines
2.0 KiB
Python
Executable File
57 lines
2.0 KiB
Python
Executable File
#!/usr/bin/env python
|
|
|
|
import os, sys
|
|
|
|
class mksrfDataEntry_prog:
|
|
|
|
# Class data
|
|
year_start = 2101
|
|
year_end = 2300
|
|
ssp_rcp = "SSP1-2.6"
|
|
subdir = "pftcftdynharv.0.25x0.25.SSP1-2.6.simyr2101-2300.c20200320"
|
|
cdate = "200320"
|
|
desc = "SSP1RCP26x_clm5"
|
|
|
|
def parse_cmdline_args( self ):
|
|
"Parse the command line arguments for create data entry list"
|
|
from optparse import OptionParser, OptionGroup
|
|
|
|
parser = OptionParser( usage="%prog [options]" )
|
|
options = OptionGroup( parser, "Options" )
|
|
options.add_option( "-s", "--year_start", dest="year_start", default=self.year_start, \
|
|
help="Start year" )
|
|
options.add_option( "-f", "--year_end", dest="year_end", default=self.year_end, \
|
|
help="End year" )
|
|
options.add_option( "-d", "--subdir", dest="subdir", default=self.subdir, \
|
|
help="Subdirectory" )
|
|
options.add_option( "--cdate", dest="cdate", default=self.cdate, \
|
|
help="Creation date" )
|
|
options.add_option( "--desc", dest="desc", default=self.desc, \
|
|
help="Description string" )
|
|
parser.add_option_group(options)
|
|
(options, args) = parser.parse_args()
|
|
if len(args) != 0:
|
|
parser.error("incorrect number of arguments")
|
|
|
|
self.year_start = options.year_start
|
|
self.year_end = options.year_end
|
|
self.subdir = options.subdir
|
|
self.cdate = options.cdate
|
|
self.desc = options.desc
|
|
|
|
def printentry( self, year ):
|
|
"Print a single entry"
|
|
print '<mksrf_fvegtyp hgrid="0.25x0.25" ssp_rcp="%s" sim_year="%d" crop="on"' % (self.ssp_rcp, year)
|
|
print '>lnd/clm2/rawdata/%s/mksrf_landuse_%s_%s.c%s.nc' % (self.subdir, self.desc, year, self.cdate)
|
|
print '</mksrf_fvegtyp>\n'
|
|
|
|
entry = mksrfDataEntry_prog()
|
|
entry.parse_cmdline_args()
|
|
|
|
for year in range(entry.year_start, entry.year_end+1):
|
|
entry.printentry( year )
|
|
|
|
|
|
|
|
|