Source code for vortex_cen.algo.obs

# -*- coding: utf-8 -*-

"""
obs.py
------

Algo Components for the manipulation of any observation data.

.. inheritance-diagram:: vortex_cen.algo.obs
   :top-classes: vortex_cen.algo.components._CenParaBlindRun, vortex_cen.algo.components._CenTaylorRun,
                 vortex_cen.algo.components._CenTaylorVortexWorker, vortex_cen.algo.components._CenWorkerBlindRun
                 vortex.algo.components.AlgoComponent, vortex.algo.components.Parallel, vortex.algo.components.TaylorRun
   :private-bases:

.. autoclass:: ReconstructObservations
   :no-members:
   :show-inheritance:

.. autoclass:: ReconstructObservationsWorker
   :no-members:
   :show-inheritance:
"""
from bronx.fancies import loggers
from vortex_cen.algo.components import _CenTaylorRun, _CenTaylorVortexWorker
from snowtools.scripts.observations.create_new_SAFRAN_observations import replace_obs_tar

logger = loggers.getLogger(__name__)


[docs] class ReconstructObservations(_CenTaylorRun): """ Generate an ensemble of `ReconstructObservationsWorker` """ _footprint = dict( info = 'TODO', attr = dict( kind = dict( values = ['reconstruct_observations'], ), role_members = dict( info = "Role of RH inputs to use for members definition", values = ['Observations'], ), ), )
[docs] class ReconstructObservationsWorker(_CenTaylorVortexWorker): """ Update SAFRAN-ready observation files (R*, S* and T* files) with reconstructed hourly temperature observations. """ _footprint = dict( attr = dict( kind = dict( values = ['reconstruct_observations'] ), role_members = dict( info = "Role of RH inputs to use for members definition", values = ['Observations'], ), ) ) def _commons(self, rundir, thisdir, rdict, **kwargs): """ Method called by the main **vortex_task** method of the **_CenMixIn** class """ self.link_in('../listeo_reanalyse', 'listeo_reanalyse') replace_obs_tar('OBSERVATIONS.tar')