9 #ifndef DP3_STEPS_MADFLAGGER_H_
10 #define DP3_STEPS_MADFLAGGER_H_
74 bool process(std::unique_ptr<base::DPBuffer>)
override;
84 void show(std::ostream&)
const override;
90 void showTimings(std::ostream&,
double duration)
const override;
95 void flag(
unsigned int index,
const std::vector<unsigned int>& timeEntries);
100 unsigned int bl,
int chan,
int corr,
int nchan,
int ncorr,
101 float& Z1,
float& Z2, std::vector<float>& tempBuffer,
108 void flagBaseline(
const std::vector<int>& ant1,
const std::vector<int>& ant2,
109 const std::vector<unsigned int>& timeEntries,
110 unsigned int ib,
unsigned int ncorr,
unsigned int nchan,
111 const float* bufDataPtr,
bool* bufFlagPtr,
float& Z1,
112 float& Z2, std::vector<float>& tempBuffer,
122 std::vector<unsigned int>
124 std::vector<unsigned int>
Buffer holding the data of a timeslot/band.
Class to keep counts of nr of flagged points.
General info about DP3 data processing attributes like averaging.
Definition: DPInfo.h:35
Class to keep counts of nr of flagged points.
Definition: FlagCounter.h:35
Implements a map of Key-Value pairs.
Definition: ParameterSet.h:31
DP3 step class to flag data based on Median Average Deviation (MAD) filtering.
Definition: MadFlagger.h:60
unsigned int itsFreqWindow
Definition: MadFlagger.h:127
std::string itsName
Definition: MadFlagger.h:117
void getExprValues(int maxNChan, int maxNTime)
Get the values of the expressions for each baseline.
std::string itsFreqWindowStr
Definition: MadFlagger.h:119
double itsMaxBLength
maximum baseline length
Definition: MadFlagger.h:136
std::vector< xt::xtensor< float, 3 > > itsAmplitudes
amplitudes of the data
Definition: MadFlagger.h:139
void showCounts(std::ostream &) const override
Show the flagger counts.
double itsMinBLength
minimum baseline length
Definition: MadFlagger.h:135
common::Fields getProvidedFields() const override
Definition: MadFlagger.h:70
void showTimings(std::ostream &, double duration) const override
Show the timings.
void computeFactors(const std::vector< unsigned int > &timeEntries, unsigned int bl, int chan, int corr, int nchan, int ncorr, float &Z1, float &Z2, std::vector< float > &tempBuffer, common::NSTimer &moveTimer, common::NSTimer &medianTimer)
MadFlagger(const common::ParameterSet &, const std::string &prefix)
std::vector< std::unique_ptr< base::DPBuffer > > itsBuffers
Definition: MadFlagger.h:138
std::vector< float > itsThresholdArr
threshold per baseline
Definition: MadFlagger.h:121
unsigned int itsTimeWindow
Definition: MadFlagger.h:128
void show(std::ostream &) const override
Show the step parameters.
std::string itsTimeWindowStr
Definition: MadFlagger.h:120
void updateInfo(const base::DPInfo &) override
double itsMoveTime
data move timer (sum all threads)
Definition: MadFlagger.h:143
std::vector< unsigned int > itsTimeWindowArr
time window size per baseline
Definition: MadFlagger.h:125
double itsMedianTime
median timer (sum of all threads)
Definition: MadFlagger.h:144
bool itsApplyAutoCorr
Definition: MadFlagger.h:132
void finish() override
Finish the processing of this step and subsequent steps.
unsigned int itsNTimesDone
Definition: MadFlagger.h:130
bool process(std::unique_ptr< base::DPBuffer >) override
base::FlagCounter itsFlagCounter
Definition: MadFlagger.h:140
float itsThreshold
Definition: MadFlagger.h:126
std::vector< unsigned int > itsFlagCorr
Definition: MadFlagger.h:131
common::NSTimer itsComputeTimer
move/median timer
Definition: MadFlagger.h:142
unsigned int itsNTimes
Definition: MadFlagger.h:129
common::Fields getRequiredFields() const override
Get the fields required by the current step.
Definition: MadFlagger.h:68
std::vector< int > itsAutoCorrIndex
baseline index of autocorrelations
Definition: MadFlagger.h:133
std::string itsThresholdStr
Definition: MadFlagger.h:118
common::NSTimer itsTimer
Definition: MadFlagger.h:141
unsigned int itsNrAutoCorr
Definition: MadFlagger.h:134
void flag(unsigned int index, const std::vector< unsigned int > &timeEntries)
std::vector< unsigned int > itsFreqWindowArr
freq window size per baseline
Definition: MadFlagger.h:123
std::vector< double > itsBLengths
length of each baseline
Definition: MadFlagger.h:137
Abstract base class for a DP3 step.
Definition: Step.h:52
static constexpr dp3::common::Fields kDataField
Definition: Step.h:60
static constexpr dp3::common::Fields kFlagsField
Definition: Step.h:62
This file has generic helper routines for testing steps.
Definition: AntennaConfig.h:53