OpendTect  6.6
ceemdattrib.h
Go to the documentation of this file.
1 #pragma once
2 /*+
3  * (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
4  * AUTHOR : Paul
5  * DATE : Dec 2012
6 -*/
7 
8 #include "gendefs.h"
9 #include "attribprovider.h"
10 #include "arraynd.h"
11 #include "mathfunc.h"
12 #include "commondefs.h"
13 
23 namespace Attrib
24 {
25 
26 class CEEMD: public Provider
27 {
28 public:
29  static void initClass();
31 
32  static const char* attribName() { return "CEEMD"; }
33  static const char* stopimfStr() { return "stopimf"; }
34  static const char* stopsiftStr() { return "stopsift"; }
35  static const char* maxnrimfStr() { return "maxnrimf"; }
36  static const char* maxsiftStr() { return "maxsift"; }
37  static const char* emdmethodStr() { return "method"; }
38  static const char* attriboutputStr() { return "attriboutput"; }
39  static const char* symmetricboundaryStr() { return "symmetricboundary"; }
40  static const char* noisepercentageStr() { return "noisepercentage"; }
41  static const char* maxnoiseloopStr() { return "maxnoiseloop"; }
42  static const char* minstackcountStr() { return "minstackcount"; }
43  static const char* outputfreqStr() { return "outputfreq"; }
44  static const char* stepoutfreqStr() { return "stepoutfreq"; }
45  static const char* outputcompStr() { return "outputcomp"; }
46  static const char* usetfpanelStr() { return "usetfpanel"; }
47  static const char* transMethodNamesStr(int);
48  static const char* transOutputNamesStr(int);
49  void getCompNames( BufferStringSet& nms ) const;
51 
52 protected:
53  ~CEEMD() {}
55  static void updateDefaults(Desc&) {};
56  static void updateDesc(Desc&);
57 
59  bool areAllOutputsEnabled() const;
60  void getFirstAndLastOutEnabled(int& first, int& last) const;
61  int maxnrimf_; // Maximum number of intrinsic Mode Functions
62  int maxsift_; // Maximum number of sifting iterations
63  float outputfreq_; // Output frequency
64  float stepoutfreq_; // Step output frequency
65  int outputcomp_; // Output frequency
66  float stopsift_; // stop sifting if st.dev res.-imf < value
67  float stopimf_; // stop decomp. when st.dev imf < value
68  float noisepercentage_; // noise percentage for EEMD and CEEMD
69  // boundary extension symmetric or periodic
71  // use synthetic trace in ceemdtestprogram.h
73  bool usetfpanel_; // if panel is pressed use 0 to Nyquist
74  bool getInputOutput(int input,TypeSet<int>& res) const;
75  bool getInputData(const BinID&,int zintv);
76  bool computeData(const DataHolder&,const BinID& relpos,
77  int z0,int nrsamples,int threadid) const;
78  const Interval<float>* reqZMargin(int input,int output) const
79  {return &gate_;}
80  const Interval<int>* desZSampMargin(int input,int output) const
81  { return &dessampgate_; }
82 
85  int dataidx_;
86  int method_;
90 };
91 
92 }; // namespace Attrib
93 
Attrib::CEEMD::maxsift_
int maxsift_
Definition: ceemdattrib.h:62
Attrib::CEEMD::maxsiftStr
static const char * maxsiftStr()
Definition: ceemdattrib.h:36
Attrib::CEEMD::stopimfStr
static const char * stopimfStr()
Definition: ceemdattrib.h:33
Attrib::CEEMD::outputfreq_
float outputfreq_
Definition: ceemdattrib.h:63
Attrib::CEEMD::attribName
static const char * attribName()
Definition: ceemdattrib.h:32
Attrib::Provider
Provides the actual output to ...
Definition: attribprovider.h:44
Attrib::CEEMD::updateDefaults
static void updateDefaults(Desc &)
Definition: ceemdattrib.h:55
BufferStringSet
Set of BufferString objects.
Definition: bufstringset.h:26
commondefs.h
Attrib::CEEMD::outputfreqStr
static const char * outputfreqStr()
Definition: ceemdattrib.h:43
Attrib::CEEMD::maxnoiseloop_
int maxnoiseloop_
Definition: ceemdattrib.h:88
Attrib::CEEMD::minstackcountStr
static const char * minstackcountStr()
Definition: ceemdattrib.h:42
Attrib::CEEMD::initClass
static void initClass()
Attrib::DataHolder
Holds the attribute data.
Definition: attribdataholder.h:43
Attrib::CEEMD::computeData
bool computeData(const DataHolder &, const BinID &relpos, int z0, int nrsamples, int threadid) const
Attrib::CEEMD::getCompNames
void getCompNames(BufferStringSet &nms) const
Attrib::CEEMD::CEEMD
CEEMD(Desc &)
Attrib::CEEMD::getFirstAndLastOutEnabled
void getFirstAndLastOutEnabled(int &first, int &last) const
Attrib::CEEMD::usetfpanel_
bool usetfpanel_
Definition: ceemdattrib.h:73
Attrib::CEEMD::symmetricboundaryStr
static const char * symmetricboundaryStr()
Definition: ceemdattrib.h:39
Attrib::CEEMD::maxnrimf_
int maxnrimf_
Definition: ceemdattrib.h:61
Attrib::CEEMD::inputdata_
const DataHolder * inputdata_
Definition: ceemdattrib.h:89
Attrib::CEEMD::getInputData
bool getInputData(const BinID &, int zintv)
Attrib::CEEMD::getInputOutput
bool getInputOutput(int input, TypeSet< int > &res) const
Attrib::CEEMD::maxnrimfStr
static const char * maxnrimfStr()
Definition: ceemdattrib.h:35
arraynd.h
Attrib::CEEMD::noisepercentage_
float noisepercentage_
Definition: ceemdattrib.h:68
Attrib::CEEMD::~CEEMD
~CEEMD()
Definition: ceemdattrib.h:53
Attrib::CEEMD::stopsiftStr
static const char * stopsiftStr()
Definition: ceemdattrib.h:34
BinID
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:31
Attrib::CEEMD::attriboutput_
int attriboutput_
Definition: ceemdattrib.h:87
Attrib::CEEMD::gate_
Interval< float > gate_
Definition: ceemdattrib.h:83
Attrib::CEEMD::dataidx_
int dataidx_
Definition: ceemdattrib.h:85
Attrib::CEEMD::method_
int method_
Definition: ceemdattrib.h:86
Attrib::CEEMD::outputcomp_
int outputcomp_
Definition: ceemdattrib.h:65
Attrib::CEEMD::stepoutfreq_
float stepoutfreq_
Definition: ceemdattrib.h:64
gendefs.h
Attrib::CEEMD::symmetricboundary_
bool symmetricboundary_
Definition: ceemdattrib.h:70
Attrib::CEEMD::updateDesc
static void updateDesc(Desc &)
Attrib::CEEMD::stepoutfreqStr
static const char * stepoutfreqStr()
Definition: ceemdattrib.h:44
Attrib::CEEMD::maxnoiseloopStr
static const char * maxnoiseloopStr()
Definition: ceemdattrib.h:41
Attrib::CEEMD::prepPriorToOutputSetup
bool prepPriorToOutputSetup()
mathfunc.h
Attrib::CEEMD::usetestdata_
bool usetestdata_
Definition: ceemdattrib.h:72
Attrib::CEEMD::stopimf_
float stopimf_
Definition: ceemdattrib.h:67
Attrib::CEEMD::transMethodNamesStr
static const char * transMethodNamesStr(int)
Attrib::CEEMD::outputcompStr
static const char * outputcompStr()
Definition: ceemdattrib.h:45
Attrib::CEEMD::dessampgate_
Interval< int > dessampgate_
Definition: ceemdattrib.h:84
Attrib::CEEMD
Definition: ceemdattrib.h:27
attribprovider.h
Attrib::CEEMD::reqZMargin
const Interval< float > * reqZMargin(int input, int output) const
Definition: ceemdattrib.h:78
Attrib::CEEMD::stopsift_
float stopsift_
Definition: ceemdattrib.h:66
Attrib::CEEMD::emdmethodStr
static const char * emdmethodStr()
Definition: ceemdattrib.h:37
Attrib::CEEMD::noisepercentageStr
static const char * noisepercentageStr()
Definition: ceemdattrib.h:40
Attrib::CEEMD::allowParallelComputation
bool allowParallelComputation() const
Attrib::CEEMD::areAllOutputsEnabled
bool areAllOutputsEnabled() const
Attrib::CEEMD::transOutputNamesStr
static const char * transOutputNamesStr(int)
Attrib::CEEMD::desZSampMargin
const Interval< int > * desZSampMargin(int input, int output) const
Definition: ceemdattrib.h:80
Attrib
Semblance Attribute.
Definition: attribdataholder.h:25
Interval< float >
Attrib::CEEMD::createInstance
static Provider * createInstance(Desc &)
Attrib::Desc
Description of an attribute in an Attrib::DescSet. Each attribute has a name (e.g....
Definition: attribdesc.h:89
Attrib::CEEMD::attriboutputStr
static const char * attriboutputStr()
Definition: ceemdattrib.h:38
Attrib::CEEMD::usetfpanelStr
static const char * usetfpanelStr()
Definition: ceemdattrib.h:46
TypeSet< int >

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2021