15 """!Write an error message to produtil.log.jlogger and exit with status 2.
16 @param msg the message to write"""
21 """!Sets MPI tuning variables for the local machine."""
25 logger.info(
'Not on WCOSS, so not setting WCOSS-specific vars.')
28 """!Runs one ENSDA member. The member to run is specified by the
29 ENSDA_MEMB environment variable."""
30 logger=logging.getLogger(
'exhwrf_ensda')
32 memb=ENV.get(
'ENSDA_MEMB',
'NOPE').lower()
34 fail(
'Aborting: you must specify ENSDA_MEMB')
36 jlogger.info(
'HWRF ensda member %03d starting'%imemb)
42 omemb=hwrf_expt.ensda.member(hwrf_expt.conf.cycle,imemb)
44 for prod
in omemb.products():
46 logger.error(
'No product: %s'%(prod.did,))
47 elif not prod.available:
48 logger.error(
'Product %s not available (location %s)'%(
49 repr(prod.did),repr(prod.location)))
51 dest=
'%s/%s.ensda_%03d.%s'%(
52 hwrf_expt.conf.getdir(
'com'),
53 hwrf_expt.conf.getstr(
'config',
'out_prefix'),
54 imemb,os.path.basename(prod.location))
55 logger.info(
'%s %s: send to %s'%(
56 str(prod.did),repr(imemb),str(dest)))
57 assert(os.path.isabs(dest))
58 copier=hwrf_expt.wrfcopier.compression_copier(prod.location)
60 logger.error(
'%s %s: not a NetCDF 3 file.'%(
61 str(prod.did),str(prod.location)))
64 prod.location,dest,logger=logger,
67 jlogger.info(
'HWRF ensda member %03d has completed'%imemb)
69 if __name__==
'__main__':
73 except Exception
as e:
74 jlogger.critical(
'HWRF ensda is aborting: '+str(e),exc_info=
True)
def deliver_file
This moves or copies the file "infile" to "outfile" in a unit operation; outfile will never be seen i...
Contains setup(), which initializes the produtil package.
def init_module
Initializes the HWRF object structure.
def set_vars
Sets MPI tuning variables for the local machine.
def setup(ignore_hup=False, dbnalert_logger=None, jobname=None, cluster=None, send_dbn=None, thread_logger=False, thread_stack=2 **24, kwargs)
Initializes the produtil package.
def set_vars_for_ensda_hwrf(logger)
Sets variables that seem to speed up the H15B (2015 pre-baseline) version of HWRF on Phase 2 WCOSS wh...
def fail(msg)
Write an error message to produtil.log.jlogger and exit with status 2.
def name()
Synonym for here.name.
def main()
Runs one ENSDA member.