HWRF
trunk@4391
|
A wrapper around the pom package that runs the POM initialization. More...
A wrapper around the pom package that runs the POM initialization.
This HWRFTask subclass is a wrapper around the pom package. It runs the POM initialization, and generates the POM namelist for the forecast run.
Definition at line 56 of file mpipomtc.py.
Public Member Functions | |
def | __init__ (self, dstore, conf, section, taskname=None, vitfile=None, fcstlen=None, outstep=86400, kwargs) |
Creates a POMInit. More... | |
def | run (self) |
Runs the POM initialization and copies the results to their destinations within the HWRF work area. More... | |
def | deliver_products |
Delivers files to their final destination Copies results to their destinations within the HWRF work areas. More... | |
def | run_init (self, inputdir, outputdir) |
Internal function that passes control to the pom package. More... | |
def | products |
Iterates over products. More... | |
def | inputiter (self) |
Iterates over all needed input data. More... | |
def | get_inputs (self) |
Obtains input data, links or copies to places expected by POM. More... | |
![]() | |
def | __init__ (self, dstore, conf, section, taskname=None, workdir=None, outdir=None, storminfo=UNSPECIFIED, taskvars=UNSPECIFIED, kwargs) |
Creates an HWRFTask. More... | |
def | isfakestorm (self) |
def | ismultistorm (self) |
def | get_workdir (self) |
Returns the directory the class should work in, as set by the "workdir" metadata value. More... | |
def | set_workdir (self, val) |
Sets the directory the class should work in. More... | |
def | get_outdir (self) |
Gets the directory that should receive output data. More... | |
def | set_outdir (self, val) |
Sets the directory that should receive output data. More... | |
def | realtime (self) |
Is this job a real-time forecast job? More... | |
def | redirect (self) |
Should subprograms' outputs be redirected to separate files? | |
def | scrub (self) |
Should temporary files be deleted as soon as they are not needed? | |
def | tvset (self, opt, val) |
Sets a taskvar option's value. More... | |
def | tvdel (self, opt) |
Deletes an object-local value set by tvset. More... | |
def | tvget (self, opt) |
Gets a taskvar's value. More... | |
def | tvhave |
Is a taskvar set? More... | |
def | taskvars (self) |
The dict of object-local values used for string substitution. More... | |
def | confint |
Alias for self.conf.getint for section self.section. More... | |
def | confstr |
Alias for self.conf.getstr for section self.section. More... | |
def | conffloat |
Alias for self.conf.getfloat for section self.section. More... | |
def | confbool |
Alias for self.conf.getbool for section self.section. More... | |
def | confget |
Alias for self.conf.get for section self.section. More... | |
def | confitems |
Alias for self.conf.items for section self.section. More... | |
def | confstrinterp (self, string, section=None, kwargs) |
Alias for self.icstr for backward compatibility. More... | |
def | conftimestrinterp (self, string, ftime, atime=None, section=None, kwargs) |
Alias for self.timestr for backward comaptibility. More... | |
def | confraw |
Get a raw configuration value before string expansion. More... | |
def | icstr (self, string, section=None, kwargs) |
Expands a string in the given conf section. More... | |
def | timestr (self, string, ftime, atime=None, section=None, kwargs) |
Expands a string in the given conf section, including time vars. More... | |
def | getdir |
Alias for hwrf.config.HWRFConfig.get() for the "dir" section. More... | |
def | getexe |
Alias for hwrf.config.HWRFConfig.get() for the "exe" section. More... | |
def | getconf (self) |
Returns this HWRFTask's hwrf.config.HWRFConfig object. More... | |
def | getsection (self) |
Returns this HWRFTask's section name in the HWRFConfig. More... | |
def | log |
Obtain a logging domain. More... | |
def | inputiter (self) |
Iterates over all inputs required by this task. More... | |
![]() | |
def | __init__ (self, dstore, taskname, logger=None, kwargs) |
Task constructor. More... | |
def | jlogfile (self) |
returns the jlogfile logger. More... | |
def | postmsg (self, message, args, kwargs) |
same as produtil.log.jlogger.info() More... | |
def | setstate (self, val) |
Sets the state of this job. More... | |
def | getstate (self) |
Returns the job state. More... | |
def | strstate (self) |
A string representation of the job state. More... | |
def | gettaskname (self) |
Returns the task name part of the database ID, which is the same as the prodname. More... | |
def | products (self, args, kwargs) |
Iterate over the products this task produces. More... | |
def | log (self) |
Returns the logger object for this task. More... | |
def | clean (self) |
Cleans up any unneeded data used by this task. More... | |
def | unrun (self) |
Undoes the effect of run(). More... | |
def | run (self) |
Performs the work this Task should do and generates all products. More... | |
def | is_completed (self) |
Is this task complete? More... | |
def | completed (self) |
Read-only property: is this task completed? Same as is_completed() More... | |
def | runpart (self) |
Run some of this task's work, deliver some products. More... | |
![]() | |
def | __init__ (self, dstore, prodname, category, meta=None, cache=30, location=None, kwargs) |
Datum constructor. More... | |
def | __enter__ (self) |
Acquires this object's thread lock. More... | |
def | __exit__ (self, etype, evalue, traceback) |
Releases this object's thread lock. More... | |
def | validate (self) |
Validates this object's Datastore, prodname and category. More... | |
def | getid (self) |
Returns the database ID of this datum. More... | |
def | getdatastore (self) |
Returns the datastore of this datum. More... | |
def | transaction (self) |
Creates, but does not lock, a Transaction for this datum's datastore. More... | |
def | getprodtype (self) |
Returns the product type of this Datum. More... | |
def | getprodname (self) |
Returns the product name part of the database ID. More... | |
def | getcategory (self) |
Returns the product category part of the database ID. More... | |
def | getlocation (self) |
Returns the "location" field of this Datum's database entry. More... | |
def | setlocation (self, v) |
Sets the "location" field of this Datum's database entry. More... | |
def | __hash__ (self) |
Integer hash function. More... | |
def | __str__ (self) |
Human-readable description of this Datum. More... | |
def | __repr__ (self) |
Python code-like description of this Datum. More... | |
def | __cmp__ (self, other) |
Compares two Datums' prodnames and categories. More... | |
def | set_loc_avail (self, loc, avail) |
Sets the location and availability of this Datum in a single transaction. More... | |
def | update (self) |
Discards all cached metadata and refreshes it from the Datastore. More... | |
def | __getitem__ (self, k) |
Returns the value of the specified metadata key or raises KeyError. More... | |
def | meta |
Return the value of a metadata key. More... | |
def | get |
Alias for self.meta() Returns the value of the specified metadata key or returns default if it is unset. More... | |
def | __setitem__ (self, k, v) |
Sets the value of the specified metadata key. More... | |
def | __delitem__ (self, k) |
Deletes the specified metadata key, which must not be "available" or "location". More... | |
def | __contains__ (self, k) |
Determines if a metadata key is set. More... | |
def | iteritems (self) |
Iterates over all metadata (key,value) pairs for this Datum, including "available" and "location". More... | |
Public Attributes | |
state | |
![]() | |
storminfo | |
The hwrf.storminfo.StormInfo describing the vitals information for the storm processed by this HWRFTask. More... | |
Additional Inherited Members | |
![]() | |
workdir | |
The directory in which this task should be run. More... | |
outdir | |
The directory in which this task should deliver its final output. More... | |
conf | |
This HWRFTask's hwrf.config.HWRFConfig object. More... | |
section | |
The confsection in self.section for this HWRFTask (read-only) More... | |
![]() | |
state | |
Read-write property: the job state. More... | |
taskname | |
Read-only property: the name of this task. More... | |
![]() | |
prodname = property(getprodname,None,None,) | |
Read-only property, an alias for getprodname(): the product name part of the database ID. More... | |
category = property(getcategory,None,None,) | |
Read-only property, an alias for getcategory(), the category name part of the database ID. More... | |
prodtype | |
Read-only property, an alias for getprodtype(), the product type. More... | |
did | |
Read-only property, an alias for getid(). More... | |
dstore | |
Read-only property, an alias for getdatastore(), the Datastore in which this Datum resides. More... | |
location | |
Read-write property, an alias for getlocation() and setlocation(). More... | |
def hwrf.mpipomtc.POMInit.__init__ | ( | self, | |
dstore, | |||
conf, | |||
section, | |||
taskname = None , |
|||
vitfile = None , |
|||
fcstlen = None , |
|||
outstep = 86400 , |
|||
kwargs | |||
) |
Creates a POMInit.
dstore | the produtil.datastore.Datastore to use |
conf | the HWRFConfig to use |
section | the section name for this task |
taskname | the task name. Default: section |
vitfile | the vitals file with tcvitals for all times this storm has existed. Default: self.icstr('{WORKhwrf}/{stormlabel}.vitals') |
fcstlen | The forecast length in hours. |
outstep | The output timestep in seconds. |
kwargs | Other keyword arguments are passed to the superclass constructor. |
Definition at line 63 of file mpipomtc.py.
def hwrf.mpipomtc.POMInit.deliver_products | ( | self, | |
oceandir, | |||
nmldir, | |||
redeliver = False |
|||
) |
Delivers files to their final destination Copies results to their destinations within the HWRF work areas.
oceandir | the OCEAN directory created by the pom package in run() |
nmldir | the directory in which the forecast namelist was made |
redeliver | if True, products are re-copied even if available=True |
Definition at line 159 of file mpipomtc.py.
Referenced by hwrf.mpipomtc.POMInit.run(), hwrf.ww3.WW3Init.run(), hwrf.wps.Geogrid.run(), hwrf.wps.Ungrib.run(), hwrf.wps.Metgrid.run(), and hwrf.relocate.Merge.run().
def hwrf.mpipomtc.POMInit.get_inputs | ( | self | ) |
Obtains input data, links or copies to places expected by POM.
Copies all inputs to locations expected by the pom package. Copies the GFS sanl and sfcanl, waiting for them if needed. Makes a new tcvitals file by parsing the old one, and generating a new one, discarding lines containing "INVEST".
Definition at line 263 of file mpipomtc.py.
Referenced by hwrf.mpipomtc.POMInit.run().
def hwrf.mpipomtc.POMInit.inputiter | ( | self | ) |
Iterates over all needed input data.
Definition at line 246 of file mpipomtc.py.
def hwrf.mpipomtc.POMInit.products | ( | self, | |
name = None |
|||
) |
Iterates over products.
Iterates over Product objects for all of the files that need to be copied to the forecast directory to run POM. The products will all have a "localname" metadata value telling the local filename they should have in the forecast directory.
name | If given, only the product with this name is yielded |
Definition at line 233 of file mpipomtc.py.
Referenced by hwrf.wrf.ExternalWRFTask.__init__(), hwrf.tracker.TrackerTask.call_completed_callbacks(), hwrf.wps.WPSTask.deliver_products(), hwrf.relocate.RelocationTask.deliver_products(), hwrf.wps.WPSTask.undeliver_products(), hwrf.prep.PrepHybrid.unrun(), hwrf.post.PostManyWRF.unrun(), hwrf.wrf.ExternalWRFTask.unrun(), and hwrf.wrf.ExternalWRFTask.wrf_check().
def hwrf.mpipomtc.POMInit.run | ( | self | ) |
Runs the POM initialization and copies the results to their destinations within the HWRF work area.
Definition at line 111 of file mpipomtc.py.
Referenced by produtil.datastore.Task.runpart().
def hwrf.mpipomtc.POMInit.run_init | ( | self, | |
inputdir, | |||
outputdir | |||
) |
Internal function that passes control to the pom package.
This internal implemenentation function passes control to the pom package. This is part of the implementation of run(). Do not call directly except for debugging.
inputdir | the ocean input data directory |
outputdir | the ocean data output directory |
Definition at line 199 of file mpipomtc.py.
Referenced by hwrf.mpipomtc.POMInit.run().