HWRF  trunk@4391
Public Member Functions | List of all members
hwrf.relocate.Merge Class Reference

This is a HWRF task that merges the WRF analysis files. More...

Detailed Description

This is a HWRF task that merges the WRF analysis files.

Definition at line 2247 of file relocate.py.

Inheritance diagram for hwrf.relocate.Merge:
hwrf.relocate.RelocationTask hwrf.hwrftask.HWRFTask produtil.datastore.Task produtil.datastore.Datum

Public Member Functions

def __init__ (self, dstore, conf, section, relocate, wrfinput, wrfanl, taskname=None, gsi_d01=None, gsi_d02=None, gsi_d03=None, ges_d02=None, ges_d03=None, kwargs)
 Merge constructor. More...
 
def set_ges (self, ges_d02, ges_d03)
 Sets the ges_d02 and ges_d03 first guess ghost file sources. More...
 
def get_wrfinput (self, domain)
 Returns the wrfinput output product for the specified domain or None if no such data is available. More...
 
def wrfanl_at_time (self, atime, domain)
 Returns the wrfanl output product for the specified domain and time or None if no such data is available. More...
 
def get_wrfanl (self, domain)
 Returns the wrfanl product for the specified domain or None if no such data is available. More...
 
def check_storm_radius (self)
 If no relocate was given, gets the storm radius file from a fix file. More...
 
def blend_gsi (self)
 Runs the hwrf_blend_gsi program if first guess data was supplied to the constructor. More...
 
def products
 Iterates over output products. More...
 
def run (self)
 Runs the merge. More...
 
def relocate_storm (self)
 Runs the hwrf_diffwrf_3dvar for all domains. More...
 
def inter_2to1 (self, domain)
 Runs the hwrf_inter_2to1 Fortran program to interpolate fields. More...
 
def inter_2to1ges (self, domain)
 Runs the hwrf_inter_2to1 Fortran program to interpolate fields. More...
 
def inter_2to2 (self)
 Runs the hwrf_inter_2to2 Fortran program to interpolate fields. More...
 
def inter_2to3 (self)
 Interpolates gsi_d02 analysis increment to d03 and adds the increment to d03 first guess.
 
def inter_2to6 (self)
 Runs the hwrf_inter_2to6 Fortran program to interpolate fields. More...
 
def inter_3to2 (self)
 Runs the hwrf_inter_3to2 Fortran program to interpolate fields. More...
 
def update_3dvar (self)
 Runs the hwrf_diffwrf_3dvar program to update the output domains. More...
 
- Public Member Functions inherited from hwrf.relocate.RelocationTask
def __init__ (self, dstore, conf, section, sim, domains, taskname=None, modin='GDAS1', wrfanl=None, wrfghost=None, wrfinput=None, parentTrack=None, trackName='track0', ghost_domains=None, dest_dir=None, gsi_d02=None, gsi_d03=None, gsi_d01=None, cycling_interval=-6 *3600, info=None, fgat_times=None, centrack=None, ensda=None, kwargs)
 RelocationTask constructor. More...
 
def get_wrfinput
 Returns the wrfinput output Product for the specified domain, or None if no such domain is known. More...
 
def get_wrfanl (self, domain)
 Returns the wrfanl output Product for this Task for the specified domain or None if no such product exists. More...
 
def get_ghost (self, domain)
 Returns the wrfghost output Product for this Task for the specified domain. More...
 
def wrfinput_at_time (self, atime, domain)
 Returns the wrfinput output file for the specified time and domain, or returns None if no such file exists. More...
 
def wrfanl_at_time (self, atime, domain)
 Returns the wrfanl output file for the specified time and domain, or None if no such file exists. More...
 
def copy_fixed (self)
 Copies the fixed files to the local directory. More...
 
def delete_temp (self)
 Deletes all temporary files created by the relocation jobs. More...
 
def products (self)
 Iterates over all products generated by this task. More...
 
def deliver_products (self, missing=None, logger=None, keep=False, frominfo=None, kwargs)
 Delivers products to intercom via Product.deliver. More...
 
def write_vitals
 Writes the tcvitals (from self.storminfo) to the specified file. More...
 
def make_ghost_namelist
 Writes the ghost namelist to namelist_ghost.input. More...
 
def make_analysis_namelist
 Writes the analysis namelist to namelist_analysis.input. More...
 
def parent_track (self)
 The Product object for the parent track file. More...
 
def modin (self)
 The DA mode. More...
 
def vortex (self)
 The vortex origin status. More...
 
def warm (self)
 The status of the current cycle. More...
 
def prev_cycle_dir (self)
 The previous cycle's COM directory. More...
 
def prev_cycle_sid (self)
 
def storm_intensity (self)
 The storm intensity. More...
 
def storm_basin (self)
 The storm basin. More...
 
def center_lat (self)
 The domain center latitude. More...
 
def center_lon (self)
 The domain center longitude. More...
 
def storm_id (self)
 The storm ID. More...
 
def fhr (self)
 The forecast hour. More...
 
def rinfo (self)
 The RelocationInfo. More...
 
def copy_inputs (self)
 Copies, or makes, one or more input files. More...
 
def set_ensda (self, ensda)
 
def get_centrack (self)
 Returns the Product for the center FGAT time track file if available, or otherwise the parent track file Product. More...
 
def set_centrack (self, centrack)
 Sets the Product for the center FGAT time track file. More...
 
def del_centrack (self)
 Unsets the center FGAT time track file so that get_centrack() will return the parent track file instead. More...
 
def create_atcf (self, case)
 Gets the parent vortex track file, either from a specified directory or from the tracker, run by a previous hwrf.init.HWRFInit object's tracker member. More...
 
def run_ext
 Helper function for running Fortran programs that need fort. More...
 
- Public Member Functions inherited from hwrf.hwrftask.HWRFTask
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...
 
- Public Member Functions inherited from produtil.datastore.Task
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...
 
- Public Member Functions inherited from produtil.datastore.Datum
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...
 

Additional Inherited Members

- Public Attributes inherited from hwrf.relocate.RelocationTask
 info
 A RelocationInfo object to trade relocation information with other stages of the relocation. More...
 
 fgat_times
 The list of FGAT hours. More...
 
 cycling_interval
 The positive datetime.timedelta time between cycles. More...
 
 sim
 The hwrf.wrf.WRFSimulation describing the WRF simulation.
 
 domains
 The list of domains from sim that match the domains with the same name provided to the constructor. More...
 
 dt_epsilon
 An epsilon value for time equality comparisons.
 
 ghost_domains
 The list of ghost domains passed to the constructor. More...
 
 dest_dir
 Delivery directory for outputs. More...
 
 modin
 The input model: GFS or GDAS1.
 
- Public Attributes inherited from hwrf.hwrftask.HWRFTask
 storminfo
 The hwrf.storminfo.StormInfo describing the vitals information for the storm processed by this HWRFTask. More...
 
- Properties inherited from hwrf.relocate.RelocationTask
 centrack
 The track file for the center FGAT hour. More...
 
- Properties inherited from hwrf.hwrftask.HWRFTask
 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...
 
- Properties inherited from produtil.datastore.Task
 state
 Read-write property: the job state. More...
 
 taskname
 Read-only property: the name of this task. More...
 
- Properties inherited from produtil.datastore.Datum
 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...
 

Constructor & Destructor Documentation

def hwrf.relocate.Merge.__init__ (   self,
  dstore,
  conf,
  section,
  relocate,
  wrfinput,
  wrfanl,
  taskname = None,
  gsi_d01 = None,
  gsi_d02 = None,
  gsi_d03 = None,
  ges_d02 = None,
  ges_d03 = None,
  kwargs 
)

Merge constructor.

Parameters
dstorethe produtil.datastore.Datastore for database storage
confthe hwrf.config.HWRFConfig for configuration info
sectionthe configuration section to use
relocatethe Stage3 of the middle FGAT time relocation
wrfinputThe source of parent model data wrfinput files.
wrfanlThe source of parent model data wrfanl files.
tasknamethe task name in the database
gsi_d01,gsi_d02,gsi_d03hwrf.gsi.FGATGSI classes for the GSI
ges_d02,ges_d03Ghost files for the first guess to GSI.
kwargspassed to hwrf.hwrftask.HWRFTask.__init__

Definition at line 2252 of file relocate.py.

Member Function Documentation

def hwrf.relocate.Merge.blend_gsi (   self)

Runs the hwrf_blend_gsi program if first guess data was supplied to the constructor.

Definition at line 2352 of file relocate.py.

Referenced by hwrf.relocate.Merge.run().

def hwrf.relocate.Merge.check_storm_radius (   self)

If no relocate was given, gets the storm radius file from a fix file.

Also checks to see if the storm_radius file is present and non-empty, regardless of whether it came from the fix or relocate.

Definition at line 2333 of file relocate.py.

Referenced by hwrf.relocate.Merge.run().

def hwrf.relocate.Merge.get_wrfanl (   self,
  domain 
)

Returns the wrfanl product for the specified domain or None if no such data is available.

Parameters
domainthe domain of interest

Definition at line 2321 of file relocate.py.

def hwrf.relocate.Merge.get_wrfinput (   self,
  domain 
)

Returns the wrfinput output product for the specified domain or None if no such data is available.

Parameters
domainthe domain of interest

Definition at line 2307 of file relocate.py.

def hwrf.relocate.Merge.inter_2to1 (   self,
  domain 
)

Runs the hwrf_inter_2to1 Fortran program to interpolate fields.

Definition at line 2559 of file relocate.py.

Referenced by hwrf.relocate.Merge.run().

def hwrf.relocate.Merge.inter_2to1ges (   self,
  domain 
)

Runs the hwrf_inter_2to1 Fortran program to interpolate fields.

Definition at line 2572 of file relocate.py.

Referenced by hwrf.relocate.Merge.run().

def hwrf.relocate.Merge.inter_2to2 (   self)

Runs the hwrf_inter_2to2 Fortran program to interpolate fields.

Definition at line 2596 of file relocate.py.

Referenced by hwrf.relocate.Merge.run().

def hwrf.relocate.Merge.inter_2to6 (   self)

Runs the hwrf_inter_2to6 Fortran program to interpolate fields.

Definition at line 2628 of file relocate.py.

Referenced by hwrf.relocate.Merge.run().

def hwrf.relocate.Merge.inter_3to2 (   self)

Runs the hwrf_inter_3to2 Fortran program to interpolate fields.

Definition at line 2647 of file relocate.py.

Referenced by hwrf.relocate.Merge.run().

def hwrf.relocate.Merge.products (   self,
  domains = None 
)

Iterates over output products.

Parameters
domainsif present, only the products for these listed domains will be iterated.

Definition at line 2391 of file relocate.py.

Referenced by hwrf.wrf.ExternalWRFTask.__init__(), hwrf.tracker.TrackerTask.call_completed_callbacks(), hwrf.wps.WPSTask.deliver_products(), hwrf.wps.WPSTask.undeliver_products(), hwrf.wrf.ExternalWRFTask.unrun(), and hwrf.wrf.ExternalWRFTask.wrf_check().

def hwrf.relocate.Merge.relocate_storm (   self)

Runs the hwrf_diffwrf_3dvar for all domains.

Definition at line 2496 of file relocate.py.

Referenced by hwrf.relocate.Merge.run().

def hwrf.relocate.Merge.run (   self)

Runs the merge.

Definition at line 2401 of file relocate.py.

Referenced by produtil.datastore.Task.runpart().

def hwrf.relocate.Merge.set_ges (   self,
  ges_d02,
  ges_d03 
)

Sets the ges_d02 and ges_d03 first guess ghost file sources.

Definition at line 2299 of file relocate.py.

Referenced by hwrf.relocate.Merge.__init__().

def hwrf.relocate.Merge.update_3dvar (   self)

Runs the hwrf_diffwrf_3dvar program to update the output domains.

Definition at line 2675 of file relocate.py.

Referenced by hwrf.relocate.Merge.run().

def hwrf.relocate.Merge.wrfanl_at_time (   self,
  atime,
  domain 
)

Returns the wrfanl output product for the specified domain and time or None if no such data is available.

Parameters
atimethe time of interest
domainthe domain of interest

Definition at line 2314 of file relocate.py.


The documentation for this class was generated from the following file: