The linefilter class containes methods to track and remove quasi- monochromatic lines.
a TSeries by 2^N. The TSeries data are filtered before decimation to remove aliasing. Line Removal.
Definition at line 34 of file wavelinefilter.hh.
Public Member Functions | |
linefilter (void) | |
Build an empty linefilter. More... | |
linefilter (double f, double T=0., int fid=1, int nT=1) | |
linefilter constructor filter type (default fid = 1) and time interval T to estimate and remove interference (T=0 - the whole input TS is used). More... | |
linefilter (const linefilter &x) | |
Build a linefilter identical to an existing filter. More... | |
~linefilter (void) | |
Destroy the linefilter object and release the function storage. More... | |
void | apply (WaveData &ts) |
Operate on wavearray object. More... | |
double | axb (double, double) |
linefilter * | clone (void) const |
Clone a linefilter. More... | |
bool | DumpTrend (const char *, int=0) |
double | fScan (const WaveData &) |
double | getCurrentTime (void) const |
linedata | getHeteroLine (WaveData &) |
linedata | getLine (WaveData &) |
double | getOmega (const WaveData &, int=2) |
WaveData | getPSD (const WaveData &, int=1) |
double | getStartTime (void) const |
wavearray< float > | getTrend (int, char) |
double | Interference (WaveData &, double) |
long | intw (double) |
bool | inUse (void) const |
bool | LoadTrend (const char *) |
double | makeFilter (const WaveData &, int=0) |
unsigned int | maxLine (int) |
double | newRate (double) |
void | reset () |
Clear/release the internal History vector and reset the current time. More... | |
void | resize (size_t=0) |
void | setFilter (int nF=1, int nL=0, int nS=1, int nD=-1, int nB=5, int nR=6, int nW=8) |
void | setFScan (double f=0., double sn=2., double fS=0.45, int nS=20) |
double | wrap (double) |
Public Attributes | |
bool | badData |
bool | clean |
wavearray< double > | ct |
double | CurrentTime |
size_t | dumpStart |
double | fBand |
WaveData | Filter |
int | FilterID |
int | FilterState |
double | Frequency |
std::list< linedata > | lineList |
WaveData | LineSD |
unsigned int | nBand |
unsigned int | nFirst |
unsigned int | nLast |
int | nLPF |
WaveData | NoiseSD |
bool | noScan |
int | nRIF |
int | nScan |
int | nStep |
int | nSubs |
int | nWave |
bool | reFine |
double | Sample |
double | SeedFrequency |
double | SNR |
wavearray< double > | st |
double | StartTime |
double | Stride |
double | Window |
wavearray< double > | wt |
#include <wavelinefilter.hh>
linefilter::linefilter | ( | void | ) |
linefilter constructor filter type (default fid = 1) and time interval T to estimate and remove interference (T=0 - the whole input TS is used).
Constructor. Set parameters of the line filter
f | - line base frequency |
T | - time interval to estimate interference (T=0 - the whole TS is used) |
fid | - filter ID: 1 - use resampling and FFT with noise floor estimation 0 - use resampling and FFT, no noise floor estimation -1 - heterodyne estimation of amplitude and phase, frequency=const -2 - -1 + Hann window -3 - the same as -2, but sin(), cos() and Hann() are tabulated |
nT | - number of interval T sub0divisions |
Definition at line 38 of file wavelinefilter.cc.
linefilter::linefilter | ( | const linefilter & | x | ) |
Build a linefilter identical to an existing filter.
Copy constructor.
Definition at line 56 of file wavelinefilter.cc.
linefilter::~linefilter | ( | void | ) |
Destroy the linefilter object and release the function storage.
Virtual destructor.
Definition at line 54 of file wavelinefilter.cc.
void linefilter::apply | ( | WaveData & | ts | ) |
Operate on wavearray object.
Definition at line 1037 of file wavelinefilter.cc.
|
inline |
Definition at line 192 of file wavelinefilter.hh.
linefilter * linefilter::clone | ( | void | ) | const |
Clone a linefilter.
Definition at line 67 of file wavelinefilter.cc.
bool linefilter::DumpTrend | ( | const char * | fname, |
int | app = 0 |
||
) |
Definition at line 1336 of file wavelinefilter.cc.
double linefilter::fScan | ( | const WaveData & | TD | ) |
Definition at line 763 of file wavelinefilter.cc.
|
inline |
Definition at line 208 of file wavelinefilter.hh.
Definition at line 437 of file wavelinefilter.cc.
Definition at line 302 of file wavelinefilter.cc.
Definition at line 641 of file wavelinefilter.cc.
Definition at line 176 of file wavelinefilter.cc.
|
inline |
Definition at line 204 of file wavelinefilter.hh.
Definition at line 1151 of file wavelinefilter.cc.
double linefilter::Interference | ( | WaveData & | TD, |
double | omega | ||
) |
Definition at line 966 of file wavelinefilter.cc.
|
inline |
Definition at line 195 of file wavelinefilter.hh.
|
inline |
Definition at line 212 of file wavelinefilter.hh.
bool linefilter::LoadTrend | ( | const char * | fname | ) |
Definition at line 1420 of file wavelinefilter.cc.
Definition at line 247 of file wavelinefilter.cc.
Definition at line 71 of file wavelinefilter.cc.
|
inline |
Definition at line 185 of file wavelinefilter.hh.
void linefilter::reset | ( | ) |
Clear/release the internal History vector and reset the current time.
Definition at line 119 of file wavelinefilter.cc.
void linefilter::resize | ( | size_t | dS = 0 | ) |
Definition at line 130 of file wavelinefilter.cc.
void linefilter::setFilter | ( | int | nF = 1 , |
int | nL = 0 , |
||
int | nS = 1 , |
||
int | nD = -1 , |
||
int | nB = 5 , |
||
int | nR = 6 , |
||
int | nW = 8 |
||
) |
Definition at line 91 of file wavelinefilter.cc.
void linefilter::setFScan | ( | double | f = 0. , |
double | sn = 2. , |
||
double | fS = 0.45 , |
||
int | nS = 20 |
||
) |
Definition at line 152 of file wavelinefilter.cc.
|
inline |
Definition at line 198 of file wavelinefilter.hh.
bool linefilter::badData |
Definition at line 136 of file wavelinefilter.hh.
bool linefilter::clean |
Definition at line 135 of file wavelinefilter.hh.
wavearray<double> linefilter::ct |
Definition at line 149 of file wavelinefilter.hh.
double linefilter::CurrentTime |
Definition at line 145 of file wavelinefilter.hh.
size_t linefilter::dumpStart |
Definition at line 141 of file wavelinefilter.hh.
double linefilter::fBand |
Definition at line 132 of file wavelinefilter.hh.
WaveData linefilter::Filter |
Definition at line 157 of file wavelinefilter.hh.
int linefilter::FilterID |
Definition at line 122 of file wavelinefilter.hh.
int linefilter::FilterState |
Definition at line 142 of file wavelinefilter.hh.
double linefilter::Frequency |
Definition at line 123 of file wavelinefilter.hh.
Definition at line 153 of file wavelinefilter.hh.
WaveData linefilter::LineSD |
Definition at line 156 of file wavelinefilter.hh.
unsigned int linefilter::nBand |
Definition at line 130 of file wavelinefilter.hh.
unsigned int linefilter::nFirst |
Definition at line 126 of file wavelinefilter.hh.
unsigned int linefilter::nLast |
Definition at line 127 of file wavelinefilter.hh.
int linefilter::nLPF |
Definition at line 133 of file wavelinefilter.hh.
WaveData linefilter::NoiseSD |
Definition at line 155 of file wavelinefilter.hh.
bool linefilter::noScan |
Definition at line 137 of file wavelinefilter.hh.
int linefilter::nRIF |
Definition at line 138 of file wavelinefilter.hh.
int linefilter::nScan |
Definition at line 129 of file wavelinefilter.hh.
int linefilter::nStep |
Definition at line 128 of file wavelinefilter.hh.
int linefilter::nSubs |
Definition at line 131 of file wavelinefilter.hh.
int linefilter::nWave |
Definition at line 134 of file wavelinefilter.hh.
bool linefilter::reFine |
Definition at line 140 of file wavelinefilter.hh.
double linefilter::Sample |
Definition at line 147 of file wavelinefilter.hh.
double linefilter::SeedFrequency |
Definition at line 143 of file wavelinefilter.hh.
double linefilter::SNR |
Definition at line 139 of file wavelinefilter.hh.
wavearray<double> linefilter::st |
Definition at line 150 of file wavelinefilter.hh.
double linefilter::StartTime |
Definition at line 146 of file wavelinefilter.hh.
double linefilter::Stride |
Definition at line 125 of file wavelinefilter.hh.
double linefilter::Window |
Definition at line 124 of file wavelinefilter.hh.
wavearray<double> linefilter::wt |
Definition at line 151 of file wavelinefilter.hh.