casacore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Public Member Functions | List of all members
casacore::MArrayMath_global_functions_MArray_mathematical_operations Struct Reference

Mathematical operations for MArray objects. More...

#include <MArrayMath.h>

Classes

class  MAvdevFunc
 
class  MFractileFunc
 
class  MMaxFunc
 
class  MMeanFunc
 
class  MMedianFunc
 
class  MMinFunc
 
class  MProductFunc
 
class  MRmsFunc
 
class  MStddevFunc
 
class  MSumFunc
 Define functors to perform a reduction function on an MArray object. More...
 
class  MSumSqrFunc
 
class  MVarianceFunc
 

Public Member Functions

template<typename T >
MArray< T > partialArrayMath (const MArray< T > &a, const IPosition &collapseAxes, const MArrayFunctorBase< T > &funcObj)
 Do partial reduction of an MArray object. More...
 
template<typename T , typename RES >
void partialArrayMath (MArray< RES > &res, const MArray< T > &a, const IPosition &collapseAxes, const MArrayFunctorBase< T, RES > &funcObj)
 
template<typename T >
MArray< T > boxedArrayMath (const MArray< T > &a, const IPosition &boxShape, const MArrayFunctorBase< T > &funcObj)
 
template<typename T , typename RES >
void boxedArrayMath (MArray< RES > &res, const MArray< T > &array, const IPosition &boxShape, const MArrayFunctorBase< T, RES > &funcObj)
 
template<typename T >
MArray< T > slidingArrayMath (const MArray< T > &array, const IPosition &halfBoxShape, const MArrayFunctorBase< T > &funcObj, Bool fillEdge=True)
 
template<typename T , typename RES >
void slidingArrayMath (MArray< RES > &res, const MArray< T > &array, const IPosition &halfBoxShape, const MArrayFunctorBase< T, RES > &funcObj, Bool fillEdge=True)
 
template<typename T >
MArray< T > operator+ (const MArray< T > &left, const MArray< T > &right)
 Add, subtract, etc. More...
 
template<typename T >
MArray< T > operator- (const MArray< T > &left, const MArray< T > &right)
 
template<typename T >
MArray< T > operator* (const MArray< T > &left, const MArray< T > &right)
 
template<typename T >
MArray< T > operator/ (const MArray< T > &left, const MArray< T > &right)
 
template<typename T >
MArray< T > operator% (const MArray< T > &left, const MArray< T > &right)
 
template<typename T >
MArray< T > operator& (const MArray< T > &left, const MArray< T > &right)
 
template<typename T >
MArray< T > operator| (const MArray< T > &left, const MArray< T > &right)
 
template<typename T >
MArray< T > operator^ (const MArray< T > &left, const MArray< T > &right)
 
template<typename T >
MArray< T > operator+ (const MArray< T > &left, const T &right)
 
template<typename T >
MArray< T > operator- (const MArray< T > &left, const T &right)
 
template<typename T >
MArray< T > operator* (const MArray< T > &left, const T &right)
 
template<typename T >
MArray< T > operator/ (const MArray< T > &left, const T &right)
 
template<typename T >
MArray< T > operator% (const MArray< T > &left, const T &right)
 
template<typename T >
MArray< T > operator& (const MArray< T > &left, const T &right)
 
template<typename T >
MArray< T > operator| (const MArray< T > &left, const T &right)
 
template<typename T >
MArray< T > operator^ (const MArray< T > &left, const T &right)
 
template<typename T >
MArray< T > operator+ (const T &left, const MArray< T > &right)
 
template<typename T >
MArray< T > operator- (const T &left, const MArray< T > &right)
 
template<typename T >
MArray< T > operator* (const T &left, const MArray< T > &right)
 
template<typename T >
MArray< T > operator/ (const T &left, const MArray< T > &right)
 
template<typename T >
MArray< T > operator% (const T &left, const MArray< T > &right)
 
template<typename T >
MArray< T > operator& (const T &left, const MArray< T > &right)
 
template<typename T >
MArray< T > operator| (const T &left, const MArray< T > &right)
 
template<typename T >
MArray< T > operator^ (const T &left, const MArray< T > &right)
 
template<typename T >
MArray< T > operator- (const MArray< T > &a)
 Negate the elements in an array. More...
 
template<typename T >
MArray< T > operator~ (const MArray< T > &a)
 Take the complement of the elements in an array. More...
 
template<typename T >
MArray< T > sin (const MArray< T > &a)
 Perform mathematical function on each element in an array. More...
 
template<typename T >
MArray< T > cos (const MArray< T > &a)
 
template<typename T >
MArray< T > tan (const MArray< T > &a)
 
template<typename T >
MArray< T > sinh (const MArray< T > &a)
 
template<typename T >
MArray< T > cosh (const MArray< T > &a)
 
template<typename T >
MArray< T > tanh (const MArray< T > &a)
 
template<typename T >
MArray< T > asin (const MArray< T > &a)
 
template<typename T >
MArray< T > acos (const MArray< T > &a)
 
template<typename T >
MArray< T > atan (const MArray< T > &a)
 
template<typename T >
MArray< T > atan2 (const MArray< T > &left, const MArray< T > &right)
 
template<typename T >
MArray< T > atan2 (const MArray< T > &left, const T &right)
 
template<typename T >
MArray< T > atan2 (const T &left, const MArray< T > &right)
 
template<typename T >
MArray< T > exp (const MArray< T > &a)
 
template<typename T >
MArray< T > log (const MArray< T > &a)
 
template<typename T >
MArray< T > log10 (const MArray< T > &a)
 
template<typename T >
MArray< T > sqrt (const MArray< T > &a)
 
template<typename T >
MArray< T > square (const MArray< T > &a)
 
template<typename T >
MArray< T > cube (const MArray< T > &a)
 
template<typename T >
MArray< T > pow (const MArray< T > &a, const MArray< T > &exp)
 
template<typename T >
MArray< T > pow (const T &a, const MArray< T > &exp)
 
template<typename T >
MArray< T > pow (const MArray< T > &a, const Double &exp)
 
template<typename T >
MArray< T > min (const MArray< T > &left, const MArray< T > &right)
 
template<typename T >
MArray< T > min (const MArray< T > &left, const T &right)
 
template<typename T >
MArray< T > min (const T &left, const MArray< T > &right)
 
template<typename T >
MArray< T > max (const MArray< T > &left, const MArray< T > &right)
 
template<typename T >
MArray< T > max (const MArray< T > &left, const T &right)
 
template<typename T >
MArray< T > max (const T &left, const MArray< T > &right)
 
template<typename T >
MArray< T > ceil (const MArray< T > &a)
 
template<typename T >
MArray< T > floor (const MArray< T > &a)
 
template<typename T >
MArray< T > round (const MArray< T > &a)
 
template<typename T >
MArray< T > sign (const MArray< T > &a)
 
template<typename T >
MArray< T > abs (const MArray< T > &a)
 
template<typename T >
MArray< T > fabs (const MArray< T > &a)
 
template<typename T >
MArray< T > fmod (const MArray< T > &left, const MArray< T > &right)
 
template<typename T >
MArray< T > fmod (const MArray< T > &left, const T &right)
 
template<typename T >
MArray< T > fmod (const T &left, const MArray< T > &right)
 
template<typename T >
MArray< T > floormod (const MArray< T > &left, const MArray< T > &right)
 
template<typename T >
MArray< T > floormod (const MArray< T > &left, const T &right)
 
template<typename T >
MArray< T > floormod (const T &left, const MArray< T > &right)
 
template<typename T >
MArray< T > conj (const MArray< T > &arr)
 
MArray< Floatreal (const MArray< Complex > &arr)
 
MArray< Floatimag (const MArray< Complex > &arr)
 
MArray< Floatamplitude (const MArray< Complex > &arr)
 
MArray< Floatphase (const MArray< Complex > &arr)
 
MArray< Doublereal (const MArray< DComplex > &arr)
 
MArray< Doubleimag (const MArray< DComplex > &arr)
 
MArray< Doubleamplitude (const MArray< DComplex > &arr)
 
MArray< Doublephase (const MArray< DComplex > &arr)
 
template<typename T >
sum (const MArray< T > &a)
 Reduce an array to a scalar using the unmasked elements only. More...
 
template<typename T >
sumsqr (const MArray< T > &a)
 
template<typename T >
product (const MArray< T > &a)
 
template<typename T >
min (const MArray< T > &a)
 
template<typename T >
max (const MArray< T > &a)
 
template<typename T >
mean (const MArray< T > &a)
 
template<typename T >
variance (const MArray< T > &a, T mean, uInt ddof)
 
template<typename T >
variance (const MArray< T > &a, uInt ddof)
 
template<typename T >
stddev (const MArray< T > &a, uInt ddof)
 
template<typename T >
stddev (const MArray< T > &a, T mean, uInt ddof)
 
template<typename T >
avdev (const MArray< T > &a, T mean)
 
template<typename T >
avdev (const MArray< T > &a)
 
template<typename T >
rms (const MArray< T > &a)
 
template<typename T >
median (const MArray< T > &a, Bool sorted, Bool takeEvenMean, Bool inPlace=False)
 
template<typename T >
median (const MArray< T > &a)
 
template<typename T >
median (const MArray< T > &a, Bool sorted)
 
template<typename T >
medianInPlace (const MArray< T > &a, Bool sorted=False)
 
template<typename T >
fractile (const MArray< T > &a, Float fraction, Bool sorted=False, Bool inPlace=False)
 Return the fractile of an array. More...
 
template<typename T >
MArray< T > partialSums (const MArray< T > &a, const IPosition &collapseAxes)
 Get partial sums, etc. More...
 
template<typename T >
MArray< T > partialSumSqrs (const MArray< T > &a, const IPosition &collapseAxes)
 
template<typename T >
MArray< T > partialProducts (const MArray< T > &a, const IPosition &collapseAxes)
 
template<typename T >
MArray< T > partialMins (const MArray< T > &a, const IPosition &collapseAxes)
 
template<typename T >
MArray< T > partialMaxs (const MArray< T > &a, const IPosition &collapseAxes)
 
template<typename T >
MArray< T > partialMeans (const MArray< T > &a, const IPosition &collapseAxes)
 
template<typename T >
MArray< T > partialVariances (const MArray< T > &a, const IPosition &collapseAxes, uInt ddof)
 
template<typename T >
MArray< T > partialStddevs (const MArray< T > &a, const IPosition &collapseAxes, uInt ddof)
 
template<typename T >
MArray< T > partialAvdevs (const MArray< T > &a, const IPosition &collapseAxes)
 
template<typename T >
MArray< T > partialRmss (const MArray< T > &a, const IPosition &collapseAxes)
 
template<typename T >
MArray< T > partialMedians (const MArray< T > &a, const IPosition &collapseAxes, Bool takeEvenMean=False, Bool inPlace=False)
 
template<typename T >
MArray< T > partialFractiles (const MArray< T > &a, const IPosition &collapseAxes, Float fraction, Bool inPlace=False)
 
template<typename T >
MArray< T > slidingSums (const MArray< T > &a, const IPosition &halfBoxSize, Bool fillEdge=True)
 Get sliding sums. More...
 
template<typename T >
MArray< T > slidingSumSqrs (const MArray< T > &a, const IPosition &halfBoxSize, Bool fillEdge=True)
 
template<typename T >
MArray< T > slidingProducts (const MArray< T > &a, const IPosition &halfBoxSize, Bool fillEdge=True)
 
template<typename T >
MArray< T > slidingMins (const MArray< T > &a, const IPosition &halfBoxSize, Bool fillEdge=True)
 
template<typename T >
MArray< T > slidingMaxs (const MArray< T > &a, const IPosition &halfBoxSize, Bool fillEdge=True)
 
template<typename T >
MArray< T > slidingMeans (const MArray< T > &a, const IPosition &halfBoxSize, Bool fillEdge=True)
 
template<typename T >
MArray< T > slidingVariances (const MArray< T > &a, const IPosition &halfBoxSize, uInt ddof, Bool fillEdge=True)
 
template<typename T >
MArray< T > slidingStddevs (const MArray< T > &a, const IPosition &halfBoxSize, uInt ddof, Bool fillEdge=True)
 
template<typename T >
MArray< T > slidingAvdevs (const MArray< T > &a, const IPosition &halfBoxSize, Bool fillEdge=True)
 
template<typename T >
MArray< T > slidingRmss (const MArray< T > &a, const IPosition &halfBoxSize, Bool fillEdge=True)
 
template<typename T >
MArray< T > slidingMedians (const MArray< T > &a, const IPosition &halfBoxSize, Bool takeEvenMean=False, Bool inPlace=False, Bool fillEdge=True)
 
template<typename T >
MArray< T > slidingFractiles (const MArray< T > &a, const IPosition &halfBoxSize, Float fraction, Bool inPlace=False, Bool fillEdge=True)
 
template<typename T >
MArray< T > boxedSums (const MArray< T > &a, const IPosition &boxSize)
 Get boxed sums. More...
 
template<typename T >
MArray< T > boxedSumSqrs (const MArray< T > &a, const IPosition &boxSize)
 
template<typename T >
MArray< T > boxedProducts (const MArray< T > &a, const IPosition &boxSize)
 
template<typename T >
MArray< T > boxedMins (const MArray< T > &a, const IPosition &boxSize)
 
template<typename T >
MArray< T > boxedMaxs (const MArray< T > &a, const IPosition &boxSize)
 
template<typename T >
MArray< T > boxedMeans (const MArray< T > &a, const IPosition &boxSize)
 
template<typename T >
MArray< T > boxedVariances (const MArray< T > &a, const IPosition &boxSize, uInt ddof)
 
template<typename T >
MArray< T > boxedStddevs (const MArray< T > &a, const IPosition &boxSize, uInt ddof)
 
template<typename T >
MArray< T > boxedAvdevs (const MArray< T > &a, const IPosition &boxSize)
 
template<typename T >
MArray< T > boxedRmss (const MArray< T > &a, const IPosition &boxSize)
 
template<typename T >
MArray< T > boxedMedians (const MArray< T > &a, const IPosition &boxSize, Bool takeEvenMean=False, Bool inPlace=False)
 
template<typename T >
MArray< T > boxedFractiles (const MArray< T > &a, const IPosition &boxSize, Float fraction, Bool inPlace=False)
 

Detailed Description

Mathematical operations for MArray objects.

Review Status

Reviewed By:
UNKNOWN
Test programs:
tMArrayMath

Prerequisite

Synopsis

These functions perform element by element mathematical operations on optionally masked arrays and/or scalars. If two arrays are used, the arrays must conform, except for allEQ which returns False if the arrays do not conform.

The functions in this file can be divided in 3 groups:

Definition at line 96 of file MArrayMath.h.

Member Function Documentation

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::abs ( const MArray< T > &  a)
inline

Definition at line 640 of file MArrayMath.h.

References casacore::abs(), and casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::acos ( const MArray< T > &  a)
inline

Definition at line 536 of file MArrayMath.h.

References casacore::acos(), and casacore::MArray< T >::array().

MArray<Float> casacore::MArrayMath_global_functions_MArray_mathematical_operations::amplitude ( const MArray< Complex > &  arr)
inline

Definition at line 685 of file MArrayMath.h.

References casacore::amplitude(), and casacore::MArray< T >::array().

MArray<Double> casacore::MArrayMath_global_functions_MArray_mathematical_operations::amplitude ( const MArray< DComplex > &  arr)
inline

Definition at line 697 of file MArrayMath.h.

References casacore::amplitude(), and casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::asin ( const MArray< T > &  a)
inline

Definition at line 532 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::asin().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::atan ( const MArray< T > &  a)
inline

Definition at line 540 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::atan().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::atan2 ( const MArray< T > &  left,
const MArray< T > &  right 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::atan2 ( const MArray< T > &  left,
const T &  right 
)
inline

Definition at line 550 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::atan2().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::atan2 ( const T &  left,
const MArray< T > &  right 
)
inline

Definition at line 554 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::atan2().

template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::avdev ( const MArray< T > &  a,
mean 
)
inline
template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::avdev ( const MArray< T > &  a)
inline

Definition at line 829 of file MArrayMath.h.

References casacore::avdev(), and casacore::mean().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::boxedArrayMath ( const MArray< T > &  a,
const IPosition boxShape,
const MArrayFunctorBase< T > &  funcObj 
)
inline

Definition at line 251 of file MArrayMath.h.

References casacore::boxedArrayMath().

template<typename T , typename RES >
void casacore::MArrayMath_global_functions_MArray_mathematical_operations::boxedArrayMath ( MArray< RES > &  res,
const MArray< T > &  array,
const IPosition boxShape,
const MArrayFunctorBase< T, RES > &  funcObj 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::boxedAvdevs ( const MArray< T > &  a,
const IPosition boxSize 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::boxedFractiles ( const MArray< T > &  a,
const IPosition boxSize,
Float  fraction,
Bool  inPlace = False 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::boxedMaxs ( const MArray< T > &  a,
const IPosition boxSize 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::boxedMeans ( const MArray< T > &  a,
const IPosition boxSize 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::boxedMedians ( const MArray< T > &  a,
const IPosition boxSize,
Bool  takeEvenMean = False,
Bool  inPlace = False 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::boxedMins ( const MArray< T > &  a,
const IPosition boxSize 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::boxedProducts ( const MArray< T > &  a,
const IPosition boxSize 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::boxedRmss ( const MArray< T > &  a,
const IPosition boxSize 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::boxedStddevs ( const MArray< T > &  a,
const IPosition boxSize,
uInt  ddof 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::boxedSums ( const MArray< T > &  a,
const IPosition boxSize 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::boxedSumSqrs ( const MArray< T > &  a,
const IPosition boxSize 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::boxedVariances ( const MArray< T > &  a,
const IPosition boxSize,
uInt  ddof 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::ceil ( const MArray< T > &  a)
inline

Definition at line 624 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::ceil().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::conj ( const MArray< T > &  arr)
inline

Definition at line 676 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::conj().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::cos ( const MArray< T > &  a)
inline

Definition at line 512 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::cos().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::cosh ( const MArray< T > &  a)
inline

Definition at line 524 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::cosh().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::cube ( const MArray< T > &  a)
inline

Definition at line 578 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::cube().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::exp ( const MArray< T > &  a)
inline

Definition at line 558 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::exp().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::fabs ( const MArray< T > &  a)
inline

Definition at line 644 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::floor ( const MArray< T > &  a)
inline

Definition at line 628 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::floor().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::floormod ( const MArray< T > &  left,
const MArray< T > &  right 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::floormod ( const MArray< T > &  left,
const T &  right 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::floormod ( const T &  left,
const MArray< T > &  right 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::fmod ( const MArray< T > &  left,
const MArray< T > &  right 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::fmod ( const MArray< T > &  left,
const T &  right 
)
inline

Definition at line 654 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::fmod().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::fmod ( const T &  left,
const MArray< T > &  right 
)
inline

Definition at line 658 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::fmod().

template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::fractile ( const MArray< T > &  a,
Float  fraction,
Bool  sorted = False,
Bool  inPlace = False 
)
inline

Return the fractile of an array.

It returns the value at the given fraction of the array. A fraction of 0.5 is the same as the median, be it that no mean of the two middle elements is taken if the array has an even nr of elements. It uses kthLargest if the array is not sorted yet.

The normal fractile function needs at least one element, so shortcut.

Definition at line 878 of file MArrayMath.h.

References casacore::MArray< T >::array(), casacore::MArrayBase::empty(), casacore::MArray< T >::flatten(), casacore::fractile(), casacore::MArrayBase::hasMask(), casacore::SHARE, casacore::MArrayBase::size(), casacore::IPosition::storage(), and casacore::True.

MArray<Float> casacore::MArrayMath_global_functions_MArray_mathematical_operations::imag ( const MArray< Complex > &  arr)
inline

Definition at line 682 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::imag().

MArray<Double> casacore::MArrayMath_global_functions_MArray_mathematical_operations::imag ( const MArray< DComplex > &  arr)
inline

Definition at line 694 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::imag().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::log ( const MArray< T > &  a)
inline

Definition at line 562 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::log().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::log10 ( const MArray< T > &  a)
inline

Definition at line 566 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::log10().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::max ( const MArray< T > &  left,
const MArray< T > &  right 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::max ( const MArray< T > &  left,
const T &  right 
)
inline

Definition at line 616 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::max().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::max ( const T &  left,
const MArray< T > &  right 
)
inline

Definition at line 620 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::max().

template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::max ( const MArray< T > &  a)
inline
template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::mean ( const MArray< T > &  a)
inline
template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::median ( const MArray< T > &  a,
Bool  sorted,
Bool  takeEvenMean,
Bool  inPlace = False 
)
inline

The normal median function needs at least one element, so shortcut.

Median can be taken in place.

Definition at line 849 of file MArrayMath.h.

References casacore::MArray< T >::array(), casacore::MArrayBase::empty(), casacore::MArray< T >::flatten(), casacore::MArrayBase::hasMask(), casacore::median(), casacore::SHARE, casacore::MArrayBase::size(), casacore::IPosition::storage(), and casacore::True.

template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::median ( const MArray< T > &  a)
inline

Definition at line 863 of file MArrayMath.h.

References casacore::False, casacore::median(), and casacore::MArrayBase::size().

template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::median ( const MArray< T > &  a,
Bool  sorted 
)
inline
template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::medianInPlace ( const MArray< T > &  a,
Bool  sorted = False 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::min ( const MArray< T > &  left,
const MArray< T > &  right 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::min ( const MArray< T > &  left,
const T &  right 
)
inline

Definition at line 602 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::min().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::min ( const T &  left,
const MArray< T > &  right 
)
inline

Definition at line 606 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::min().

template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::min ( const MArray< T > &  a)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator% ( const MArray< T > &  left,
const MArray< T > &  right 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator% ( const MArray< T > &  left,
const T &  right 
)
inline

Definition at line 447 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator% ( const T &  left,
const MArray< T > &  right 
)
inline

Definition at line 479 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator& ( const MArray< T > &  left,
const MArray< T > &  right 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator& ( const MArray< T > &  left,
const T &  right 
)
inline

Definition at line 451 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator& ( const T &  left,
const MArray< T > &  right 
)
inline

Definition at line 483 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator* ( const MArray< T > &  left,
const MArray< T > &  right 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator* ( const MArray< T > &  left,
const T &  right 
)
inline

Definition at line 439 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator* ( const T &  left,
const MArray< T > &  right 
)
inline

Definition at line 471 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator+ ( const MArray< T > &  left,
const MArray< T > &  right 
)
inline

Add, subtract, etc.

2 arrays or array and scalar.

Definition at line 383 of file MArrayMath.h.

References casacore::MArray< T >::array(), casacore::MArrayBase::combineMask(), and casacore::MArrayBase::isNull().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator+ ( const MArray< T > &  left,
const T &  right 
)
inline

Definition at line 431 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator+ ( const T &  left,
const MArray< T > &  right 
)
inline

Definition at line 463 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator- ( const MArray< T > &  left,
const MArray< T > &  right 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator- ( const MArray< T > &  left,
const T &  right 
)
inline

Definition at line 435 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator- ( const T &  left,
const MArray< T > &  right 
)
inline

Definition at line 467 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator- ( const MArray< T > &  a)
inline

Negate the elements in an array.

Definition at line 497 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator/ ( const MArray< T > &  left,
const MArray< T > &  right 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator/ ( const MArray< T > &  left,
const T &  right 
)
inline

Definition at line 443 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator/ ( const T &  left,
const MArray< T > &  right 
)
inline

Definition at line 475 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator^ ( const MArray< T > &  left,
const MArray< T > &  right 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator^ ( const MArray< T > &  left,
const T &  right 
)
inline

Definition at line 459 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator^ ( const T &  left,
const MArray< T > &  right 
)
inline

Definition at line 491 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator| ( const MArray< T > &  left,
const MArray< T > &  right 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator| ( const MArray< T > &  left,
const T &  right 
)
inline

Definition at line 455 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator| ( const T &  left,
const MArray< T > &  right 
)
inline

Definition at line 487 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::operator~ ( const MArray< T > &  a)
inline

Take the complement of the elements in an array.

Definition at line 502 of file MArrayMath.h.

References casacore::MArray< T >::array().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::partialArrayMath ( const MArray< T > &  a,
const IPosition collapseAxes,
const MArrayFunctorBase< T > &  funcObj 
)
inline

Do partial reduction of an MArray object.

I.e., perform the operation on a subset of the array axes (the collapse axes).

Definition at line 188 of file MArrayMath.h.

template<typename T , typename RES >
void casacore::MArrayMath_global_functions_MArray_mathematical_operations::partialArrayMath ( MArray< RES > &  res,
const MArray< T > &  a,
const IPosition collapseAxes,
const MArrayFunctorBase< T, RES > &  funcObj 
)
inline

This can also be done as boxedArrayMath with a removeDegenerate thereafter.

It should be possible to parallelize this loop. Determine nr of iteration steps and iterate over that as an int. Do not use Array slicing, because that is not thread-safe. Instead create ArraySTLIterator directly from Array and blc,trc, so funcObj should accept iterators instead of Array. However, ArraySTLIterator needs the sliced array, not original. Maybe keep ref of itsSteps in iterator instead of array. Hmm, tricky for median and fractile. Better to make Array copy ctor thread-safe (thus use boost shared_ptr).

IPosition shape(a.array().shape().removeAxes (collapseAxes));

Definition at line 197 of file MArrayMath.h.

References AlwaysAssert, casacore::MArray< T >::array(), casacore::Array< T, Alloc >::data(), casacore::False, casacore::MArrayBase::hasMask(), casacore::MArrayBase::mask(), casacore::mask(), casacore::IPosition::removeAxes(), casacore::MArray< T >::resize(), casacore::MArrayBase::setMask(), casacore::ArrayBase::shape(), casacore::shape(), and casacore::True.

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::partialAvdevs ( const MArray< T > &  a,
const IPosition collapseAxes 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::partialFractiles ( const MArray< T > &  a,
const IPosition collapseAxes,
Float  fraction,
Bool  inPlace = False 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::partialMaxs ( const MArray< T > &  a,
const IPosition collapseAxes 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::partialMeans ( const MArray< T > &  a,
const IPosition collapseAxes 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::partialMedians ( const MArray< T > &  a,
const IPosition collapseAxes,
Bool  takeEvenMean = False,
Bool  inPlace = False 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::partialMins ( const MArray< T > &  a,
const IPosition collapseAxes 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::partialProducts ( const MArray< T > &  a,
const IPosition collapseAxes 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::partialRmss ( const MArray< T > &  a,
const IPosition collapseAxes 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::partialStddevs ( const MArray< T > &  a,
const IPosition collapseAxes,
uInt  ddof 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::partialSums ( const MArray< T > &  a,
const IPosition collapseAxes 
)
inline

Get partial sums, etc.

Definition at line 895 of file MArrayMath.h.

References casacore::MArray< T >::array(), casacore::MArrayBase::hasMask(), and casacore::MArrayBase::isNull().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::partialSumSqrs ( const MArray< T > &  a,
const IPosition collapseAxes 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::partialVariances ( const MArray< T > &  a,
const IPosition collapseAxes,
uInt  ddof 
)
inline
MArray<Float> casacore::MArrayMath_global_functions_MArray_mathematical_operations::phase ( const MArray< Complex > &  arr)
inline

Definition at line 688 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::phase().

MArray<Double> casacore::MArrayMath_global_functions_MArray_mathematical_operations::phase ( const MArray< DComplex > &  arr)
inline

Definition at line 700 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::phase().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::pow ( const MArray< T > &  a,
const MArray< T > &  exp 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::pow ( const T &  a,
const MArray< T > &  exp 
)
inline

Definition at line 588 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::pow().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::pow ( const MArray< T > &  a,
const Double exp 
)
inline

Definition at line 592 of file MArrayMath.h.

References casacore::MArray< T >::array(), casacore::exp(), and casacore::pow().

template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::product ( const MArray< T > &  a)
inline
MArray<Float> casacore::MArrayMath_global_functions_MArray_mathematical_operations::real ( const MArray< Complex > &  arr)
inline

Definition at line 679 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::real().

MArray<Double> casacore::MArrayMath_global_functions_MArray_mathematical_operations::real ( const MArray< DComplex > &  arr)
inline

Definition at line 691 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::real().

template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::rms ( const MArray< T > &  a)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::round ( const MArray< T > &  a)
inline

Definition at line 632 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::round().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::sign ( const MArray< T > &  a)
inline

Definition at line 636 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::sign().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::sin ( const MArray< T > &  a)
inline

Perform mathematical function on each element in an array.

Definition at line 508 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::sin().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::sinh ( const MArray< T > &  a)
inline

Definition at line 520 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::sinh().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::slidingArrayMath ( const MArray< T > &  array,
const IPosition halfBoxShape,
const MArrayFunctorBase< T > &  funcObj,
Bool  fillEdge = True 
)
inline

Definition at line 307 of file MArrayMath.h.

References casacore::slidingArrayMath().

template<typename T , typename RES >
void casacore::MArrayMath_global_functions_MArray_mathematical_operations::slidingArrayMath ( MArray< RES > &  res,
const MArray< T > &  array,
const IPosition halfBoxShape,
const MArrayFunctorBase< T, RES > &  funcObj,
Bool  fillEdge = True 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::slidingAvdevs ( const MArray< T > &  a,
const IPosition halfBoxSize,
Bool  fillEdge = True 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::slidingFractiles ( const MArray< T > &  a,
const IPosition halfBoxSize,
Float  fraction,
Bool  inPlace = False,
Bool  fillEdge = True 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::slidingMaxs ( const MArray< T > &  a,
const IPosition halfBoxSize,
Bool  fillEdge = True 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::slidingMeans ( const MArray< T > &  a,
const IPosition halfBoxSize,
Bool  fillEdge = True 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::slidingMedians ( const MArray< T > &  a,
const IPosition halfBoxSize,
Bool  takeEvenMean = False,
Bool  inPlace = False,
Bool  fillEdge = True 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::slidingMins ( const MArray< T > &  a,
const IPosition halfBoxSize,
Bool  fillEdge = True 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::slidingProducts ( const MArray< T > &  a,
const IPosition halfBoxSize,
Bool  fillEdge = True 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::slidingRmss ( const MArray< T > &  a,
const IPosition halfBoxSize,
Bool  fillEdge = True 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::slidingStddevs ( const MArray< T > &  a,
const IPosition halfBoxSize,
uInt  ddof,
Bool  fillEdge = True 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::slidingSums ( const MArray< T > &  a,
const IPosition halfBoxSize,
Bool  fillEdge = True 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::slidingSumSqrs ( const MArray< T > &  a,
const IPosition halfBoxSize,
Bool  fillEdge = True 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::slidingVariances ( const MArray< T > &  a,
const IPosition halfBoxSize,
uInt  ddof,
Bool  fillEdge = True 
)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::sqrt ( const MArray< T > &  a)
inline

Definition at line 570 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::sqrt().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::square ( const MArray< T > &  a)
inline

Definition at line 574 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::square().

template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::stddev ( const MArray< T > &  a,
uInt  ddof 
)
inline

Definition at line 803 of file MArrayMath.h.

References casacore::sqrt(), and casacore::variance().

template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::stddev ( const MArray< T > &  a,
mean,
uInt  ddof 
)
inline

Definition at line 809 of file MArrayMath.h.

References casacore::sqrt(), and casacore::variance().

template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::sum ( const MArray< T > &  a)
inline
template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::sumsqr ( const MArray< T > &  a)
inline
template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::tan ( const MArray< T > &  a)
inline

Definition at line 516 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::tan().

template<typename T >
MArray<T> casacore::MArrayMath_global_functions_MArray_mathematical_operations::tanh ( const MArray< T > &  a)
inline

Definition at line 528 of file MArrayMath.h.

References casacore::MArray< T >::array(), and casacore::tanh().

template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::variance ( const MArray< T > &  a,
mean,
uInt  ddof 
)
inline
template<typename T >
T casacore::MArrayMath_global_functions_MArray_mathematical_operations::variance ( const MArray< T > &  a,
uInt  ddof 
)
inline

Definition at line 797 of file MArrayMath.h.

References casacore::mean(), and casacore::variance().


The documentation for this struct was generated from the following file: