16 #ifndef MATHUTILITIES_H
17 #define MATHUTILITIES_H
32 static double round(
double x );
38 static void getFrameMinMax(
const double* data,
int len,
double* min,
double* max );
43 static double mean(
const double* src,
int len );
49 static double mean(
const std::vector<double> &data,
50 int start,
int count );
56 static double sum(
const double* src,
int len );
63 static double median(
const double* src,
int len );
74 static double mod(
double x,
double y);
82 static void getAlphaNorm(
const double *data,
int len,
int alpha,
double* ANorm);
90 static double getAlphaNorm(
const std::vector <double> &data,
int alpha );
108 static double getLpNorm(
const std::vector<double> &data,
117 static std::vector<double>
normaliseLp(
const std::vector<double> &data,
119 double threshold = 1e-6);
130 static int getMax(
const std::vector<double> &data,
double* max = 0 );
164 static int gcd(
int a,
int b);
static int compareInt(const void *a, const void *b)
static bool isPowerOfTwo(int x)
static double mean(const std::vector< double > &data, int start, int count)
static double getLpNorm(const std::vector< double > &data, int p)
static double sum(const double *src, int len)
static double round(double x)
static int nearestPowerOfTwo(int x)
static int getMax(double *data, int length, double *max=0)
static int previousPowerOfTwo(int x)
static int getMax(const std::vector< double > &data, double *max=0)
static void circShift(double *data, int length, int shift)
static void getAlphaNorm(const double *data, int len, int alpha, double *ANorm)
static double mod(double x, double y)
static double getAlphaNorm(const std::vector< double > &data, int alpha)
static void normalise(double *data, int length, NormaliseType n=NormaliseUnitMax)
static double princarg(double ang)
static int nextPowerOfTwo(int x)
static void adaptiveThreshold(std::vector< double > &data)
static double mean(const double *src, int len)
static void getFrameMinMax(const double *data, int len, double *min, double *max)
static std::vector< double > normaliseLp(const std::vector< double > &data, int p, double threshold=1e-6)
static double factorial(int x)
static void normalise(std::vector< double > &data, NormaliseType n=NormaliseUnitMax)
static double median(const double *src, int len)
static int gcd(int a, int b)
PBD::PropertyDescriptor< timecnt_t > length
PBD::PropertyDescriptor< timepos_t > start
PBD::PropertyDescriptor< float > shift