HWRF  trunk@4391
Public Member Functions | Public Attributes | List of all members
hwrf.gsi.FGATGSI Class Reference

Runs the GSI based on the HWRF FGAT scheme. More...

Detailed Description

Runs the GSI based on the HWRF FGAT scheme.

Definition at line 1103 of file gsi.py.

Inheritance diagram for hwrf.gsi.FGATGSI:
hwrf.gsi.GSIBase hwrf.hwrftask.HWRFTask produtil.datastore.Task produtil.datastore.Datum

Public Member Functions

def __init__ (self, dstore, conf, section, domain, wrf_in_prod, fgat_in_prods, sim, cycling_interval=None, taskname=None, atime=None, enkf_domains=None, ensda=None, kwargs)
 The FGATGSI constructor: More...
 
def parent_fhrs (self)
 Iterates over FGAT forecast hours, relative to the parent analysis time. More...
 
def fgat_fhrs (self)
 Iterates over FGAT forecast hours relative to this model. More...
 
def grab_more_inputs (self)
 Links to the current working directory gdas native spectral output files for all FGAT hours. More...
 
def copy_wrf_inout
 Copy WRF analysis or input files to this directory. More...
 
- Public Member Functions inherited from hwrf.gsi.GSIBase
def __init__ (self, dstore, conf, section, domain, wrf_in_prod, sim, taskname=None, atime=None, parent_atime=None, enkf_domains=None, ensda=None, kwargs)
 The GSIBase constructor: More...
 
def wrf_top_Pa (self)
 The WRF model top in pascals.
 
def atime (self)
 The analysis time of this GSI. More...
 
def parent_atime (self)
 Parent model analysis time. More...
 
def set_ensda (self, ensda, enkf_domains)
 Sets the hwrf.ensda.DAEnsemble to use, and the enkf domains. More...
 
def inputiter (self)
 Iterate over needed inputs. More...
 
def grab_enkf_input (self)
 Link or copy ensemble inputs. More...
 
def grab_bufr
 Link bufr files. More...
 
def grab_obstype_section
 Copies or links observations. More...
 
def grab_prepbufr (self, atime=None, kwargs)
 Links or copies the prepbufr file to the local directory. More...
 
def write_vitals
 Writes the tcvitals (from self.storminfo) to the specified file. More...
 
def wrfout_copier (self, file)
 Generate the wrfout file converter. More...
 
def grab_wrf_enkf (self, ensda)
 Links the WRF ENKF files to this directory. More...
 
def grab_gfs_enkf (self, atime=None, kwargs)
 Links the GFS ENKF files to this directory. More...
 
def copy_wrf_inout
 Copies the WRF analysis or input file to the specified filename. More...
 
def get_ghost (self, domain)
 Obtain output ghost product for the specified domain. More...
 
def get_wrfanl (self, domain)
 Obtain output ghost product for the specified domain. More...
 
def get_wrfinput (self)
 Obtain output wrfinput data for the outermost WRF domain. More...
 
def domain (self)
 The WRF domain for which GSI is being run. More...
 
def products
 Iterates over all output products of this Task. More...
 
def make_gsi_namelist
 Creates the GSI namelist in the specified file. More...
 
def after_gsi (self)
 Called by run() after the gsi executable completes. More...
 
def before_gsi (self)
 Called by run() just before running the gsi program. More...
 
def grab_more_inputs (self)
 Called by run() to obtain additional inputs before before_gsi() More...
 
def grab_bias_satang (self)
 Copies or links bias correction and satellite angle files.
 
def run_gsi_exe (self)
 Runs the actual GSI executable. More...
 
def deliver_products (self)
 Delivers output products. More...
 
def make_diag_files (self, tgtpre, nthreads)
 Creates GSI diagnostic files. More...
 
def run (self)
 Runs the GSI and delivers the results. More...
 
def grab_fix_parm (self)
 Links or copies to the local directory any fix or parm files needed by GSI. 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...
 

Public Attributes

 cycling_interval
 the time between forecast cycles, a datetime.timedelta
 
- Public Attributes inherited from hwrf.gsi.GSIBase
 used_regional_ensemble
 Was the regional ensemble used for forecast error covariances?
 
 global_ensemble_size
 The number of members in the global (parent model) ensemble.
 
 hybrid_da
 Was hybrid 3DVAR-ENKF data assimilation used?
 
 state
 
- Public Attributes inherited from hwrf.hwrftask.HWRFTask
 storminfo
 The hwrf.storminfo.StormInfo describing the vitals information for the storm processed by this HWRFTask. More...
 

Additional Inherited Members

- 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.gsi.FGATGSI.__init__ (   self,
  dstore,
  conf,
  section,
  domain,
  wrf_in_prod,
  fgat_in_prods,
  sim,
  cycling_interval = None,
  taskname = None,
  atime = None,
  enkf_domains = None,
  ensda = None,
  kwargs 
)

The FGATGSI constructor:

Parameters
dstorepassed to Datum: the Datastore object for this Task
confthe conf object for this task (passed to HWRFTask)
sectionthe conf section for this task (passed to HWRFTask)
domainthe WRFDomain for this GSI. Must have been initialized by a WRFSimulation
wrf_in_prodthe Product for the wrfinput_d01 or ghost_d0* file for that domain
fgat_in_prodsa mapping from analysis time to a product for all of the FGAT times
simthe hwrf.wrf.WRFSimulation that will be run as the forecast
cycling_intervalOptional: time between HWRF forecast cycles in seconds
tasknameOptional: the taskname for this product in the datastore
atimethe analysis time as a datetime.datetime. Default: conf.cycle
enkf_domainsa list of WRF domains that should be copied from the hwrf.ensda.EnsembleDA.
ensdaa subclass of hwrf.ensda.DAEnsemble that provides regional ensemble forecasts to generate the forecast error covariance
kwargsignored; passed to HWRFTask

Definition at line 1107 of file gsi.py.

Member Function Documentation

def hwrf.gsi.FGATGSI.copy_wrf_inout (   self,
  filename = 'wrf_inout',
  others = 'wrf_inou%d' 
)

Copy WRF analysis or input files to this directory.

Copies the WRF analysis or input file to the specified filename. Also copies the wrf input files for other FGAT hours to separate files specified by "others". The "others" must be a format that includes at least one integer argument.

Parameters
filenameignored
othersa string format with a d in it, used to generate output filenames

Definition at line 1183 of file gsi.py.

def hwrf.gsi.FGATGSI.fgat_fhrs (   self)

Iterates over FGAT forecast hours relative to this model.

Iterates over all FGAT forecast hours (as ints) relative to this model's analysis time. For example, -3, 0, and 3 for three-hourly FGAT off of GDAS.

Definition at line 1156 of file gsi.py.

def hwrf.gsi.FGATGSI.grab_more_inputs (   self)

Links to the current working directory gdas native spectral output files for all FGAT hours.

Definition at line 1166 of file gsi.py.

def hwrf.gsi.FGATGSI.parent_fhrs (   self)

Iterates over FGAT forecast hours, relative to the parent analysis time.

Iterates over all FGAT forecast hours (as ints) relative to the parent analysis time. For example, 3, 6, and 9 for three-hourly FGAT off of GDAS.

Definition at line 1145 of file gsi.py.

Referenced by hwrf.init.FGATInit.fhr_and_init(), hwrf.gsi.FGATGSI.grab_more_inputs(), and hwrf.gsi.GSIBase.inputiter().


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