TBTK
Need a break? Support the development by playing Polarity Puzzles
ArrayAlgorithms.h File Reference

Implements Array algorithms. More...

#include "TBTK/Array.h"
#include <cmath>

Go to the source code of this file.

Classes

class  TBTK::Math::ArrayAlgorithms< DataType >
 

Functions

template<typename DataType >
Array< DataType > TBTK::Math::sin (const Array< DataType > &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::cos (const Array< DataType > &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::tan (const Array< DataType > &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::asin (const Array< DataType > &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::acos (const Array< DataType > &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::atan (const Array< DataType > &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::sinh (const Array< DataType > &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::cosh (const Array< DataType > &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::tanh (const Array< DataType > &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::asinh (const Array< DataType > &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::acosh (const Array< DataType > &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::atanh (const Array< DataType > &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::log (const Array< DataType > &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::log2 (const Array< DataType > &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::log10 (const Array< DataType > &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::pow (const Array< DataType > &array, double exponent)
 
template<typename DataType >
Array< DataType > TBTK::Math::exp (const Array< DataType > &array)
 
template<typename DataType >
std::enable_if< !std::is_same< DataType, std::complex< double > >::value, Array< DataType >>::type TBTK::Math::abs (const Array< DataType > &array)
 
template<typename DataType >
std::enable_if< std::is_same< DataType, std::complex< double > >::value, Array< double >>::type TBTK::Math::abs (const Array< DataType > &array)
 
Array< double > TBTK::Math::arg (const Array< std::complex< double >> &array)
 
Array< double > TBTK::Math::real (const Array< std::complex< double >> &array)
 
Array< double > TBTK::Math::imag (const Array< std::complex< double >> &array)
 
Array< std::complex< double > > TBTK::Math::conj (const Array< std::complex< double >> &array)
 
template<typename DataType >
Array< DataType > TBTK::Math::sqrt (const Array< DataType > &array)
 
template<typename DataType >
DataType TBTK::Math::max (const Array< DataType > &array)
 
template<typename DataType >
DataType TBTK::Math::min (const Array< DataType > &array)
 

Detailed Description

Implements Array algorithms.

Author
Kristofer Björnson

Function Documentation

◆ abs() [1/2]

template<typename DataType >
std::enable_if< !std::is_same<DataType, std::complex<double> >::value, Array<DataType>>::type TBTK::Math::abs ( const Array< DataType > &  array)

Elementwise absolute value.

Parameters
arrayInput Array.
Returns
The elementwise absolute value of the input Array.

◆ abs() [2/2]

template<typename DataType >
std::enable_if< std::is_same<DataType, std::complex<double> >::value, Array<double>>::type TBTK::Math::abs ( const Array< DataType > &  array)

Elementwise absolute value.

Parameters
arrayInput Array.
Returns
The elementwise absolute value of the input Array.

◆ acos()

template<typename DataType >
Array<DataType> TBTK::Math::acos ( const Array< DataType > &  array)

Elementwise arccosine.

Parameters
InputArray.
Returns
The elementwise arccosine of the input Array.

◆ acosh()

template<typename DataType >
Array<DataType> TBTK::Math::acosh ( const Array< DataType > &  array)

Elementwise hyperbolic arccosine.

Parameters
InputArray.
Returns
The elementwise hyperbolic arccosine of the input Array.

◆ arg()

Array<double> TBTK::Math::arg ( const Array< std::complex< double >> &  array)
inline

Elementwise argument.

Parameters
arrayInput Array.
Returns
The elementwise argument of the input Array.

◆ asin()

template<typename DataType >
Array<DataType> TBTK::Math::asin ( const Array< DataType > &  array)

Elementwise arcsine.

Parameters
InputArray.
Returns
The elementwise arcsine of the input Array.

◆ asinh()

template<typename DataType >
Array<DataType> TBTK::Math::asinh ( const Array< DataType > &  array)

Elementwise hyperbolic arcsine.

Parameters
InputArray.
Returns
The elementwise hyperbolic arcsine of the input Array.

◆ atan()

template<typename DataType >
Array<DataType> TBTK::Math::atan ( const Array< DataType > &  array)

Elementwise arctangens.

Parameters
InputArray.
Returns
The elementwise arctangens of the input Array.

◆ atanh()

template<typename DataType >
Array<DataType> TBTK::Math::atanh ( const Array< DataType > &  array)

Elementwise hyperbolic arctangens.

Parameters
InputArray.
Returns
The elementwise hyperbolic arctangens of the input Array.

◆ conj()

Array<std::complex<double> > TBTK::Math::conj ( const Array< std::complex< double >> &  array)
inline

Elementwise complex conjugate.

Parameters
arrayInput Array.
Returns
The elementwise complex conjugate of the input Array.

◆ cos()

template<typename DataType >
Array<DataType> TBTK::Math::cos ( const Array< DataType > &  array)

Elementwise cosine.

Parameters
InputArray.
Returns
The elementwise cosine of the input Array.

◆ cosh()

template<typename DataType >
Array<DataType> TBTK::Math::cosh ( const Array< DataType > &  array)

Elementwise hyperbolic cosine.

Parameters
InputArray.
Returns
The elementwise hyperbolic cosine of the input Array.

◆ exp()

template<typename DataType >
Array<DataType> TBTK::Math::exp ( const Array< DataType > &  array)

Elementwise exponential.

Parameters
arrayInput Array.
Returns
The elementwise exponential of the input Array.

◆ imag()

Array<double> TBTK::Math::imag ( const Array< std::complex< double >> &  array)
inline

Elementwise imaginary component of complex number.

Parameters
arrayInput Array.
Returns
The elementwise imaginary component of complex number of the input Array.

◆ log()

template<typename DataType >
Array<DataType> TBTK::Math::log ( const Array< DataType > &  array)

Elementwise natural logarithm.

Parameters
arrayInput Array.
Returns
The elementwise natural logarithm of the input Array.

◆ log10()

template<typename DataType >
Array<DataType> TBTK::Math::log10 ( const Array< DataType > &  array)

Elementwise base-10 logarithm.

Parameters
arrayInput Array.
Returns
The elementwise base-10 logarithm of the input Array.

◆ log2()

template<typename DataType >
Array<DataType> TBTK::Math::log2 ( const Array< DataType > &  array)

Elementwise base-2 logarithm.

Parameters
arrayInput Array.
Returns
The elementwise base-2 logarithm of the input Array.

◆ max()

template<typename DataType >
DataType TBTK::Math::max ( const Array< DataType > &  array)

Maximum value.

Parameters
arrayInput Array.
Returns
The maximum element of the input Array.

◆ min()

template<typename DataType >
DataType TBTK::Math::min ( const Array< DataType > &  array)

Minimum value.

Parameters
arrayInput Array.
Returns
The minimum element of the input Array.

◆ pow()

template<typename DataType >
Array<DataType> TBTK::Math::pow ( const Array< DataType > &  array,
double  exponent 
)

Elementwise exponent.

Parameters
arrayInput Array.
exponentThe exponent to rise the elements to.
Returns
The elementwise exponent of the input Array.

◆ real()

Array<double> TBTK::Math::real ( const Array< std::complex< double >> &  array)
inline

Elementwise real component of complex number.

Parameters
arrayInput Array.
Returns
The elementwise real componenet of complex number of the input Array.

◆ sin()

template<typename DataType >
Array<DataType> TBTK::Math::sin ( const Array< DataType > &  array)

Elementwise sine.

Parameters
InputArray.
Returns
The elementwise sine of the input Array.

◆ sinh()

template<typename DataType >
Array<DataType> TBTK::Math::sinh ( const Array< DataType > &  array)

Elementwise hyperbolic sine.

Parameters
InputArray.
Returns
The elementwise hyperbolic sine of the input Array.

◆ sqrt()

template<typename DataType >
Array<DataType> TBTK::Math::sqrt ( const Array< DataType > &  array)

Elementwise square root.

Parameters
arrayInput Array.
Returns
The elementwise square root of the input Array.

◆ tan()

template<typename DataType >
Array<DataType> TBTK::Math::tan ( const Array< DataType > &  array)

Elementwise tangens.

Parameters
InputArray.
Returns
The elementwise tangens of the input Array.

◆ tanh()

template<typename DataType >
Array<DataType> TBTK::Math::tanh ( const Array< DataType > &  array)

Elementwise hyperbolic tangens.

Parameters
InputArray.
Returns
The elementwise hyperbolic tangens of the input Array.