newwave is hosted by Hepforge, IPPP Durham

New Wave - Noise Elimination With Wavelets At Vast Energies  0.1.0
NewWave Namespace Reference

Classes

class  PixelDefinitionException
 Thrown when a bad definition of the pixels is used. More...
class  NotCompiledException
 Thrown when a feature is called for which support was not compiled. More...
class  PixelArrayMismatch
 Thrown when the length of the PixelArray does not match the expected sequence length in the transforming engine. More...
class  GSLException
 Thrown when a GSL wavelet transform call fails. More...
class  PileUpThresholdException
 Thrown when a non-valid (i.e. negative) pile up threshold is set. More...
class  InvalidFrequencyBand
 Thrown when an attempt is made to access an invalid FrequencyBand. More...
class  WrongCoefficient
 Thrown when an attempt is made to add a coefficient to a non-matching frequency band. More...
class  NullEvent
class  FrequencyBand
 A frequency band contains all the wavelet coefficients of the same angular scale. More...
class  GSLEngine
 Implementation of the WaveletEngine using the GNU Scientific Library. More...
class  PixelRow
class  PixelDefinition
 Defines the range and coordinates of the "pixels" in the rasterised event. More...
class  RasterisedEvent
 A rasterised representation of the event. More...
class  WaveletBaseEvent
class  WaveletCoefficient
 Contains a single wavelet coefficient value, together with its levels. More...
class  WaveletEngine
 Abstract interface defining methods to perform a wavelet transform. More...
class  WaveletEvent
 A representation of the event in the wavelet domain. More...

Typedefs

typedef vector< PixelRowPixelArray

Functions

PixelRow operator/ (PixelRow left, const PixelRow &right)
 Divide each pixel in a row by another row.
bool isEven (size_t n)
 Is an integer an even number?
bool isOdd (size_t n)
 Is an integer an odd number?
bool isRadix2 (size_t n)
 Is an integer radix 2 (=2^m)
size_t nearestRadix2 (size_t n)
 Return the nearest radix 2 value above or equal to the input.
vector< double > makeRowFromArray (const PixelArray &array)
 Convert a 2D array into a row-major single row.
PixelArray makeArray (const vector< double > &row)
vector< double > operator/ (vector< double > left, const vector< double > &right)
 Divide each element of one vector by the other.
PixelArray operator/ (PixelArray left, const PixelArray &right)
 Divide each element of one array by the other.
double mod2Pi (double angle)
 convert an angle into the range $0 < \phi < 2\pi$

Variables

const double TWOPI = 2.0 * M_PI
 Constant defining $2\pi$.

Typedef Documentation

typedef vector<PixelRow> NewWave::PixelArray

Definition at line 71 of file PixelArray.hh.


Function Documentation

bool NewWave::isEven ( size_t  n) [inline]

Is an integer an even number?

Returns:
true if the input is even

Definition at line 22 of file Utils.hh.

bool NewWave::isOdd ( size_t  n) [inline]

Is an integer an odd number?

Returns:
true if the input is odd

Definition at line 28 of file Utils.hh.

bool NewWave::isRadix2 ( size_t  n) [inline]

Is an integer radix 2 (=2^m)

Interesting fact: radix shares its etymology with radish (a root)

Returns:
true if the input is radix 2

Definition at line 35 of file Utils.hh.

PixelArray NewWave::makeArray ( const vector< double > &  row) [inline]

Definition at line 73 of file Utils.hh.

vector<double> NewWave::makeRowFromArray ( const PixelArray &  array) [inline]

Convert a 2D array into a row-major single row.

Converts an array into a 1D vector. Given C/C++ memory management, this is probably unneccessary as the array will be stored in memory like that. We do not want results that depend on the internal behaviour of the particular system's memory management though, so play it safe.

Parameters:
arrayThe input 2D array
Returns:
a 1D vector representing the array

Definition at line 58 of file Utils.hh.

double NewWave::mod2Pi ( double  angle) [inline]

convert an angle into the range $0 < \phi < 2\pi$

Definition at line 114 of file Utils.hh.

size_t NewWave::nearestRadix2 ( size_t  n) [inline]

Return the nearest radix 2 value above or equal to the input.

Definition at line 38 of file Utils.hh.

PixelRow NewWave::operator/ ( PixelRow  left,
const PixelRow &  right 
) [inline]

Divide each pixel in a row by another row.

The PixelRow contains a vector<double> of pixel values, plus an additional vector<bool> recording whether each pixel has been filled. This allows the divide by zero error to be avoided because those pixels that have not been filled can be ignored

Definition at line 59 of file PixelArray.hh.

vector<double> NewWave::operator/ ( vector< double >  left,
const vector< double > &  right 
) [inline]

Divide each element of one vector by the other.

Parameters:
leftthe numerator
rightthe denominator
Returns:
a vector in which each element i is left[i] / right[i]

Definition at line 96 of file Utils.hh.

PixelArray NewWave::operator/ ( PixelArray  left,
const PixelArray &  right 
) [inline]

Divide each element of one array by the other.

Definition at line 105 of file Utils.hh.


Variable Documentation

const double NewWave::TWOPI = 2.0 * M_PI

Constant defining $2\pi$.

Definition at line 16 of file Utils.hh.