![]() |
|
Public Member Functions | |
EchoTopOp (double threshold=20.0) | |
EchoTopOp (const EchoTopOp &op) | |
void | computeSingleProduct (const DataSetMap< src_t > &srcSweeps, DataSet< dst_t > &dstProduct) const override |
Traverse the data applicable for this product and create new, processed data (volume or polar product). | |
![]() | |
PolarProductOp (const std::string &name=__FUNCTION__, const std::string &description="") | |
PolarProductOp (const PolarProductOp &op) | |
![]() | |
VolumeOp (const std::string &name, const std::string &description="") | |
virtual Hi5Tree & | processVolume (const Hi5Tree &srcRoot, Hi5Tree &dstRoot) const final |
Traverse through given volume and create new, processed data (volume or polar product). | |
![]() | |
RadarProductOp (const std::string &name, const std::string &description) | |
Default constructor. | |
RadarProductOp (const RadarProductOp &product) | |
virtual const std::string & | getOutputQuantity (const std::string &inputQuantity="") const |
Returns the primary output quantity (ODIM what:quantity , like DBZH) | |
virtual void | processH5 (const Hi5Tree &src, Hi5Tree &dst) const |
virtual void | processDataSet (const DataSet< src_t > &srcSweep, DataSet< DstType< MD > > &dstProduct) const |
Process the data of a single sweep and and write the result to given product. | |
virtual void | processData (const Data< src_t > &srcData, Data< dst_t > &dstData) const |
![]() | |
const std::string & | getLastArguments () const |
virtual | ~ProductBase () |
Destructor. | |
void | setDataSelector (const DataSelector &selector) |
Copies the conditions of another selector. | |
const DataSelector & | getDataSelector () const |
Returns the data selector of this operator. | |
DataSelector & | getDataSelector () |
Returns the data selector of this operator. | |
void | help (std::ostream &ostr=std::cout, bool showDescription=true) const |
Dumps the help of this operator. | |
const drain::ReferenceMap & | getAllowedEncoding () const |
Returns a map of encoding parameters that can be changed by the user. | |
virtual void | setEncodingRequest (const std::string &p) |
Set encoding parameters for the result: type,gain,offset,undetect,nodata. | |
void | setAllowedEncoding (const std::string &keys) |
![]() | |
ProductConf () | |
Default constructor. | |
ProductConf (const ProductConf &conf) | |
Copy constructor. | |
![]() | |
BeanLike (const BeanLike &b) | |
BeanLike (const std::string &name, const std::string &description="") | |
virtual const std::string & | getName () const |
Return the name of an instance. | |
virtual const std::string & | getDescription () const |
Return a brief description. | |
bool | hasParameters () const |
template<class F > | |
F | getParameter (const std::string &p) const |
Gets a single parameter. | |
const map_t & | getParameters () const |
map_t & | getParameters () |
template<class F > | |
void | setParametersFromEntries (const F &args) |
void | setParameters (std::initializer_list< Variable::init_pair_t > args) |
Grants access to (if above hidden) | |
virtual void | setParameters (const std::string &p, char assignmentSymbol='=', char separatorSymbol=0) |
Sets comma-separated parameters in a predetermined order "a,b,c" or by specifing them "b=2". | |
template<class T > | |
void | setParameters (const std::map< std::string, T > &args) |
Set parameters. | |
template<class T > | |
void | setParameters (const SmartMap< T > &args) |
Set parameters. | |
void | setParameter (const std::string &p, const Castable &value) |
Sets a single parameter. | |
template<class T > | |
void | setParameter (const std::string &p, const VariableT< T > &value) |
template<class F > | |
void | setParameter (const std::string &p, const F &value) |
Sets a single parameter. | |
template<class F > | |
void | setParameter (const std::string &p, std::initializer_list< F > value) |
Sets a single parameter. | |
BeanLike & | operator= (const BeanLike &b) |
virtual std::ostream & | toStream (std::ostream &ostr, bool compact=true) const |
Static Public Member Functions | |
static double | getSlope (const Measurement &m1, const Measurement &m2) |
![]() | |
static void | completeEncoding (ODIM &productODIM, const std::string &targetEncoding) |
Modifies encoding. If type is changed, resets scaling first. | |
static void | applyODIM (ODIM &productODIM, const ODIM &srcODIM, bool applyDefaults=false) |
Sets target quantity and encoding, if unset. If input odim. | |
static void | setRackVersion (drain::VariableMap &metadata) |
Protected Attributes | |
double | threshold = 0.0 |
double | undetectReflectivity = NAN |
Unless NaN, use the value like a measured dBZ. | |
Measurement | reference = {-50.0, 15000.0} |
Virtual measurement high aloft, towards which reflectivity is expected to decrease. | |
MethodWeights< double > | weights = {1.0, 0.8, 0.6, 0.4, 0.2} |
Quality weights for interpolative, dry-interpolative, max-limited, min-limited. | |
double | weightDecay = 20.0 |
Span for linear decay of weights towards zero. | |
RadarWindowGeom | avgWindow |
Optional smoothin window. Width (metres) and height (degrees) (also used for reference) | |
bool | EXTENDED_OUTPUT = true |
![]() | |
bool | aboveSeaLevel |
![]() | |
std::string | lastArguments |
drain::ReferenceMap | allowedEncoding |
Defines which encoding parameters can be changed by the user from command line. | |
![]() | |
const std::string | name |
const std::string | description |
map_t | parameters |
Additional Inherited Members | |
![]() | |
typedef SrcType< MS const > | src_t |
Type of input, that is, source. | |
typedef DstType< MD > | dst_t |
Type of output, that is, destination. | |
![]() | |
enum | OutputDataVerbosity { DEFAULT =0 , INTERMEDIATE =1 , DEBUG =2 , QUALITY =4 } |
Determines if also intermediate results (1) are saved. See –store. | |
typedef drain::EnumFlagger< drain::MultiFlagger< OutputDataVerbosity > > | OutputFlagger |
![]() | |
typedef ReferenceMap | map_t |
![]() | |
MD | odim |
The default data parameters for encoding output (the product). | |
![]() | |
DataSelector | dataSelector |
std::string | targetEncoding |
How the (main) output is encoded. | |
ODIMPathElem | appendResults |
If set, appends outputs in an hdf5 structure instead of overwriting. | |
OutputFlagger | outputDataVerbosity = DEFAULT |
![]() | |
static const CoordinatePolicy | polarCoordPolicy |
![]() | |
void | copyPolarGeometry (const PolarODIM &srcODIM, PlainData< PolarDst > &dstData) const |
virtual void | setGeometry (const PolarODIM &srcODIM, PlainData< PolarDst > &dstData) const |
virtual void | deriveDstGeometry (const DataSetMap< PolarSrc > &srcSweeps, PolarODIM &dstOdim, bool MINIMISE_RSCALE=false) const |
Based on input data, find geometry that maximises range and ray count. | |
virtual void | determineMetadata (const DataSetMap< PolarSrc > &srcSweeps, PolarODIM &dstOdim) const |
Update timestamps etc. | |
![]() | |
virtual void | setGeometry (const MS &srcODIM, PlainData< dst_t > &dstData) const =0 |
Sets automagically the suitable dst parameters. | |
virtual void | initDst (const MS &srcODIM, PlainData< dst_t > &dstData) const |
initialises dst data by setting suitable ODIM metadata and geometry. | |
virtual void | setEncoding (const ODIM &srcODIM, PlainData< dst_t > &dstData) const |
Sets applicable encoding parametes (type, gain, offset, undetect, nodata) for this product. | |
void | setEncodingNEW (PlainData< dst_t > &dstData, const std::string quantity="", const std::string type="") const |
Sets applicable encoding parametes (type, gain, offset, undetect, nodata) for this product. | |
![]() | |
ProductBase (const std::string &name, const std::string &description) | |
Default constructor. | |
ProductBase (const ProductBase &product) | |
void | storeLastArguments (const std::string &p) override |
Called after setParameters() | |
![]() | |
virtual void | updateBean () const |
Called after setParameters() | |
![]() | |
static void | setODIMspecials (ODIM &productODIM) |
Sets target encoding. | |
|
overridevirtual |
Traverse the data applicable for this product and create new, processed data (volume or polar product).
The input data is stored in SweepMapSrc, as Map indexed with elevation angles, containing sweep data
Shared, because input data MAY contain different encoding(s)
Quality (confidence) (using storage type encoding)
Class codes (using storage type encoding)
Central differential
NOTE: variable slope
, computed with getSlope(), is dH/dZ[dB] (metres/dBZ) However for more useful visualizations, dstSlope data is 1000.0/slope
, so reports dBZ per km.
AVERAGING (optional)
Pointer to data array (DBZH)
Index of the bin at the ground distance D of all the elevation beams considered
Reliability/confidence of the measurement value, maximal (1.0) when reflectivity is the threshold value.
Pointer to the measurement
Pointer to the measurement
Azimuthal loop: [0,360[ degrees
Main: compute / approximate the echo top altitude. -------------------------------------------------------------—
Pick main product data and assign (modified) odim data
Reimplemented from RadarProductOp< MS, MD >.
|
inlinestatic |
Division by zero should not occur, as arguments m1 and m2 are distinguished by reflectivity less/greater than threshold. Also, reference point higher than -32 dBZ will be warned.