Thyra_VectorStdOpsDecl.hpp File Reference

#include "Thyra_OperatorVectorTypes.hpp"

Include dependency graph for Thyra_VectorStdOpsDecl.hpp:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  Thyra

Functions

template<class Scalar>
Scalar sum (const VectorBase< Scalar > &v)
 Sum of vector elements: result = sum( v(i), i = 0...v.space()->dim()-1 ).
template<class Scalar>
Scalar scalarProd (const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 Scalar product result = <x,y>.
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
norm (const VectorBase< Scalar > &v)
 Natural norm: result = sqrt(<v,v>).
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
norm_1 (const VectorBase< Scalar > &v)
 One (1) norm: result = ||v||1.
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
norm_2 (const VectorBase< Scalar > &v)
 Euclidean (2) norm: result = ||v||2.
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
norm_2 (const VectorBase< Scalar > &w, const VectorBase< Scalar > &v)
 Weighted Euclidean (2) norm: result = sqrt( sum( w(i)*conj(v(i))*v(i)) ).
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
norm_inf (const VectorBase< Scalar > &v_rhs)
 Infinity norm: result = ||v||inf.
template<class Scalar>
Scalar dot (const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 Dot product: result = conj(x)'*y.
template<class Scalar>
Scalar get_ele (const VectorBase< Scalar > &v, Index i)
 Get single element: result = v(i).
template<class Scalar>
void set_ele (Index i, Scalar alpha, VectorBase< Scalar > *v)
 Set single element: v(i) = alpha.
template<class Scalar>
void put_scalar (const Scalar &alpha, VectorBase< Scalar > *y)
 Assign all elements to a scalar: y(i) = alpha, i = 0...y->space()->dim()-1.
template<class Scalar>
void copy (const VectorBase< Scalar > &x, VectorBase< Scalar > *y)
 VectorBase assignment: y(i) = x(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void add_scalar (const Scalar &alpha, VectorBase< Scalar > *y)
 Add a scalar to all elements: y(i) += alpha, i = 0...y->space()->dim()-1.
template<class Scalar>
void scale (const Scalar &alpha, VectorBase< Scalar > *y)
 Scale all elements by a scalar: y(i) *= alpha, i = 0...y->space()->dim()-1.
template<class Scalar>
void abs (VectorBase< Scalar > *y, const VectorBase< Scalar > &x)
 Element-wise absolute valuey(i) = abs(x(i)), i = 0...y->space()->dim()-1.
template<class Scalar>
void reciprocal (VectorBase< Scalar > *y, const VectorBase< Scalar > &x)
 Element-wise reciprocal: y(i) = 1/x(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void ele_wise_prod (const Scalar &alpha, const VectorBase< Scalar > &x, const VectorBase< Scalar > &v, VectorBase< Scalar > *y)
 Element-wise product update: y(i) += alpha * x(i) * v(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void Vp_StVtV (VectorBase< Scalar > *y, const Scalar &alpha, const VectorBase< Scalar > &x, const VectorBase< Scalar > &v)
 Element-wise product update: y(i) += alpha * x(i) * v(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void ele_wise_prod_update (const Scalar &alpha, const VectorBase< Scalar > &x, VectorBase< Scalar > *y)
 Element-wise product update: y(i) *= alpha * x(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void Vt_StV (VectorBase< Scalar > *y, const Scalar &alpha, const VectorBase< Scalar > &x)
 Element-wise product update: y(i) *= alpha * x(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void ele_wise_divide (const Scalar &alpha, const VectorBase< Scalar > &x, const VectorBase< Scalar > &v, VectorBase< Scalar > *y)
 Element-wise division update: y(i) += alpha * x(i) / v(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void linear_combination (const int m, const Scalar alpha[], const VectorBase< Scalar > *x[], const Scalar &beta, VectorBase< Scalar > *y)
 Linear combination: y(i) = beta*y(i) + sum( alpha[k]*x[k](i), k=0...m-1 ), i = 0...y->space()->dim()-1.
template<class Scalar>
void seed_randomize (unsigned int s)
 Seed the random number generator used in randomize().
template<class Scalar>
void randomize (Scalar l, Scalar u, VectorBase< Scalar > *v)
 Random vector generation: v(i) = rand(l,u), , i = 1...v->space()->dim().
template<class Scalar>
void assign (VectorBase< Scalar > *y, const Scalar &alpha)
 Assign all elements to a scalar: y(i) = alpha, i = 0...y->space()->dim()-1.
template<class Scalar>
void assign (VectorBase< Scalar > *y, const VectorBase< Scalar > &x)
 VectorBase assignment: y(i) = x(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void Vp_S (VectorBase< Scalar > *y, const Scalar &alpha)
 Add a scalar to all elements: y(i) += alpha, i = 0...y->space()->dim()-1.
template<class Scalar>
void Vt_S (VectorBase< Scalar > *y, const Scalar &alpha)
 Scale all elements by a scalar: y(i) *= alpha, i = 0...y->space()->dim()-1.
template<class Scalar>
void V_StV (VectorBase< Scalar > *y, const Scalar &alpha, const VectorBase< Scalar > &x)
 Assign scaled vector: y(i) = alpha * x(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void Vp_StV (VectorBase< Scalar > *y, const Scalar &alpha, const VectorBase< Scalar > &x)
 AXPY: y(i) = alpha * x(i) + y(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void Vp_V (VectorBase< Scalar > *y, const VectorBase< Scalar > &x, const Scalar &beta)
 y(i) = x(i) + beta*y(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void Vp_V (VectorBase< Scalar > *y, const VectorBase< Scalar > &x)
template<class Scalar>
void V_V (VectorBase< Scalar > *y, const VectorBase< Scalar > &x)
 y(i) = x(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void V_S (VectorBase< Scalar > *y, const Scalar &alpha)
 y(i) = alpha, i = 0...y->space()->dim()-1.
template<class Scalar>
void V_VpV (VectorBase< Scalar > *z, const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 z(i) = x(i) + y(i), i = 0...z->space()->dim()-1.
template<class Scalar>
void V_VmV (VectorBase< Scalar > *z, const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 z(i) = x(i) - y(i), i = 0...z->space()->dim()-1.
template<class Scalar>
void V_StVpV (VectorBase< Scalar > *z, const Scalar &alpha, const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 z(i) = alpha*x(i) + y(i), i = 0...z->space()->dim()-1.
template<class Scalar>
void V_StVpStV (VectorBase< Scalar > *z, const Scalar &alpha, const VectorBase< Scalar > &x, const Scalar &beta, const VectorBase< Scalar > &y)
 z(i) = alpha*x(i) + beta*y(i), i = 0...z->space()->dim()-1.
template<class Scalar>
Scalar min (const VectorBase< Scalar > &x)
 Min element: result = min{ x(i), i = 0...x.space()->dim()-1 } .
template<class Scalar>
void min (const VectorBase< Scalar > &x, Scalar *maxEle, Index *maxIndex)
 Min element and its index: Returns maxEle = x(k) and maxIndex = k such that x(k) <= x(i) for all i = 0...x.space()->dim()-1.
template<class Scalar>
void minGreaterThanBound (const VectorBase< Scalar > &x, const Scalar &bound, Scalar *minEle, Index *minIndex)
 Minimum element greater than some bound and its index: Returns minEle = x(k) and minIndex = k such that x(k) <= x(i) for all i where x(i) > bound.
template<class Scalar>
Scalar max (const VectorBase< Scalar > &x)
 Max element: result = max{ x(i), i = 1...n } .
template<class Scalar>
void max (const VectorBase< Scalar > &x, Scalar *maxEle, Index *maxIndex)
 Max element and its index: Returns maxEle = x(k) and maxIndex = k such that x(k) >= x(i) for i = 0...x.space()->dim()-1.
template<class Scalar>
void maxLessThanBound (const VectorBase< Scalar > &x, const Scalar &bound, Scalar *maxEle, Index *maxIndex)
 Max element less than bound and its index: Returns maxEle = x(k) and maxIndex = k such that x(k) >= x(i) for all i where x(i) < bound.


Generated on Thu Sep 18 12:33:09 2008 for Thyra Package Browser (Single Doxygen Collection) by doxygen 1.3.9.1