Diana Software
QVectorTools.hh
Go to the documentation of this file.
1 
2 #ifndef __Q_VECTOR_TOOLS_HH__
3 #define __Q_VECTOR_TOOLS_HH__
4 
5 #include "QVector.hh"
6 #include "QVectorC.hh"
7 
9 
10 namespace QVectorTools {
11 
13  Diana::QVector Zeros(UInt_t size);
15  Diana::QVector Range(UInt_t size);
17  Diana::QVector Range(UInt_t min,UInt_t max,UInt_t stride=1);
19  Diana::QVector LinSpace(Double_t min,Double_t max,UInt_t size);
21  Diana::QVector LogSpace(Double_t min,Double_t max,UInt_t size);
22 
24  namespace Random {
26  Diana::QVector Gauss(UInt_t Size,double mean=0,double std=1.);
28  Diana::QVector Uniform(UInt_t Size,double max=1);
30  Diana::QVector Uniform(UInt_t Size,double min,double max);
39  Diana::QVector NoiseWaveformFromANPS(const Diana::QVector &anps);
40 
41  };
42 
43 
52  };
53 
62  Diana::QVector Convolve(const Diana::QVector &vecA,const Diana::QVector &vecB,ConvolveReturn mode=kConvolveFull);
63 
72  Diana::QVector CircularConvolve(const Diana::QVector &vecA,const Diana::QVector &vecB);
73 
84  Diana::QVector ConvolveFFT(const Diana::QVector &vecA,const Diana::QVector &vecB,ConvolveReturn mode=kConvolveFull);
85 
86 
87  // ClassDef
88 };
89 
91 
92 #endif
double max
Definition: CheckOF.C:53
#define Q_END_NAMESPACE
Definition: QDiana.hh:22
#define Q_BEGIN_NAMESPACE
Definition: QDiana.hh:20
double min(const Diana::QVector &v)
Definition: QVector.cc:878
Diana::QVector Uniform(UInt_t Size, double max=1)
Return a uniform distributed vector of size Size.
Diana::QVector NoiseWaveformFromANPS(const Diana::QVector &anps)
Build a noise waveform from an ANPS.
Diana::QVector Gauss(UInt_t Size, double mean=0, double std=1.)
Diana::QVector LinSpace(Double_t min, Double_t max, UInt_t size)
Return a linear spaced values from min to max.
Diana::QVector LogSpace(Double_t min, Double_t max, UInt_t size)
Return a log spaced values from 10**min to 10**max.
ConvolveReturn
Return modes from convolutions.
Definition: QVectorTools.hh:45
@ kConvolveSame
Return a vector with size equal to the max of the two inputs.
Definition: QVectorTools.hh:51
@ kConvolveValid
Return only the valid samples where the two vectors fully overlap.
Definition: QVectorTools.hh:49
@ kConvolveFull
Return the full convolution with boundary effects.
Definition: QVectorTools.hh:47
Diana::QVector Range(UInt_t size)
Return an indexed range from zero to size.
Diana::QVector Convolve(const Diana::QVector &vecA, const Diana::QVector &vecB, ConvolveReturn mode=kConvolveFull)
Discrete convolution.
Diana::QVector CircularConvolve(const Diana::QVector &vecA, const Diana::QVector &vecB)
Discrete circular convolution.
Diana::QVector Zeros(UInt_t size)
Return a vector of zeros.
Diana::QVector ConvolveFFT(const Diana::QVector &vecA, const Diana::QVector &vecB, ConvolveReturn mode=kConvolveFull)
Convolution using FFT.