OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Classes | Functions
Vector.h File Reference
#include "Algebra/Array1D.h"
#include "Utilities/SizeError.h"
#include <algorithm>
#include <numeric>
#include <cmath>
#include <functional>
Include dependency graph for Vector.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Vector< T >
 Vector. More...
 

Functions

template<class T >
Vector< Toperator+ (const Vector< T > &, const Vector< T > &)
 Vector addition. More...
 
template<class T >
Vector< Toperator- (const Vector< T > &, const Vector< T > &)
 Vector subtraction. More...
 
template<class T >
T operator* (const Vector< T > &, const Vector< T > &)
 Vector dot product. More...
 
template<class T >
Vector< Toperator* (const Vector< T > &, const T &)
 Vector multiplied by scalar. More...
 
template<class T >
Vector< Toperator/ (const Vector< T > &, const T &)
 Vector divided by scalar. More...
 
template<class T >
Vector< Toperator* (const T &, const Vector< T > &)
 Scalar multiplied by vector. More...
 
template<class T >
T euclidean_norm (const Vector< T > &)
 Euclidean norm. More...
 
template<class T >
T scaled_norm (const Array1D< T > D, const Vector< T > &V)
 Euclidean norm of diagonal matrix D times vector V. More...
 

Function Documentation

template<class T >
T euclidean_norm ( const Vector< T > &  V)
template<class T >
T operator* ( const Vector< T > &  V1,
const Vector< T > &  V2 
)

Vector dot product.

Definition at line 214 of file Vector.h.

References Array1D< T >::begin(), Array1D< T >::end(), and T.

Here is the call graph for this function:

template<class T >
Vector< T > operator* ( const Vector< T > &  V1,
const T x 
)

Vector multiplied by scalar.

Definition at line 220 of file Vector.h.

template<class T >
Vector< T > operator* ( const T x,
const Vector< T > &  V1 
)

Scalar multiplied by vector.

Definition at line 235 of file Vector.h.

References Array1D< T >::begin(), and Array1D< T >::end().

Here is the call graph for this function:

template<class T >
Vector< T > operator+ ( const Vector< T > &  V1,
const Vector< T > &  V2 
)

Vector addition.

Definition at line 194 of file Vector.h.

References Array1D< T >::begin(), Array1D< T >::end(), and Array1D< T >::size().

Here is the call graph for this function:

template<class T >
Vector< T > operator- ( const Vector< T > &  V1,
const Vector< T > &  V2 
)

Vector subtraction.

Definition at line 203 of file Vector.h.

References Array1D< T >::begin(), Array1D< T >::end(), and Array1D< T >::size().

Here is the call graph for this function:

template<class T >
Vector< T > operator/ ( const Vector< T > &  V1,
const T x 
)

Vector divided by scalar.

Definition at line 227 of file Vector.h.

template<class T >
T scaled_norm ( const Array1D< T D,
const Vector< T > &  V 
)

Euclidean norm of diagonal matrix D times vector V.

Definition at line 248 of file Vector.h.

References Array1D< T >::size(), sqrt(), sum(), and T.

Referenced by LMDif::execute(), and LMDif::lmpar().

Here is the call graph for this function: