41 #ifndef CORE_DATATYPES_COLUMNMATRIXFUNCTIONS_H
42 #define CORE_DATATYPES_COLUMNMATRIXFUNCTIONS_H
44 #include <Core/Datatypes/ColumnMatrix.h>
45 #include <Core/Util/Assert.h>
85 std::vector<T> absoluteValues(this->nrows());
86 std::transform(this->begin(), this->end(), absoluteValues.begin(),
AbsoluteValue());
87 return *std::max_element(absoluteValues.begin(), absoluteValues.end());
111 template <
typename T>
120 template <
typename T>
130 template <
typename T>
140 template <
typename T>
153 template <
typename T>
161 template <
typename T>
172 template <
typename T>
183 template <
typename T>
197 template <
typename T>
207 template <
typename T>
216 template <
typename T>
225 result[i]=a[i]+b[i]+c[i];
229 template <
typename T>
void Sub(ColumnMatrixGeneric< T > &result, const ColumnMatrixGeneric< T > &a, const ColumnMatrixGeneric< T > &b)
Definition: ColumnMatrixFunctions.h:113
#define ASSERTEQ(c1, c2)
Definition: Assert.h:98
void linalg_add(size_type rows, double *res, double *a, double *b)
Definition: ColumnMatrix.cc:96
T Dot(const ColumnMatrixGeneric< T > &a, const ColumnMatrixGeneric< T > &b)
Definition: ColumnMatrixFunctions.h:155
void Mult(ColumnMatrixGeneric< T > &result, const ColumnMatrixGeneric< T > &a, const ColumnMatrixGeneric< T > &b)
Definition: ColumnMatrixFunctions.h:92
#define SCISHARE
Definition: share.h:39
void linalg_mult(size_type rows, double *res, double *a, double *b)
Definition: ColumnMatrix.cc:78
T infinity_norm() const
Definition: ColumnMatrixFunctions.h:83
#define ASSERTRANGE(c, l, h)
Definition: Assert.h:99
void ScMult_Add(ColumnMatrix &result, T s, const ColumnMatrix &a, const ColumnMatrix &b)
Definition: ColumnMatrixFunctions.h:132
long long size_type
Definition: Types.h:40
Definition: ColumnMatrixFunctions.h:74
dictionary data
Definition: eabLatVolData.py:11
Definition: ColumnMatrix.h:55
void AddScMult(ColumnMatrixGeneric< T > &result, const ColumnMatrixGeneric< T > &a, T s, const ColumnMatrixGeneric< T > &b)
Definition: ColumnMatrixFunctions.h:199
double linalg_norm2(size_type rows, const double *data)
Definition: ColumnMatrix.cc:49
virtual T * get_data_pointer() const
Definition: ColumnMatrix.h:200
double linalg_dot(size_type rows, double *a, double *b)
Definition: ColumnMatrix.cc:105
void linalg_sub(size_type rows, double *res, double *a, double *b)
Definition: ColumnMatrix.cc:87
void Copy(ColumnMatrixGeneric< T > &out, const ColumnMatrixGeneric< T > &in)
Definition: ColumnMatrixFunctions.h:174
long long index_type
Definition: Types.h:39
T vector_norm() const
Definition: ColumnMatrixFunctions.h:61
void linalg_smadd(size_type rows, double *res, double s, double *a, double *b)
Definition: ColumnMatrix.cc:137
int n
Definition: eab.py:9
void Add(ColumnMatrixGeneric< T > &result, const ColumnMatrixGeneric< T > &a, const ColumnMatrixGeneric< T > &b)
Definition: ColumnMatrixFunctions.h:209
double operator()(double x) const
Definition: ColumnMatrixFunctions.h:76
size_type nrows() const
Definition: Matrix.h:132