Vector with linear algebra naming convention. [Collection of vector operations for all scalar types.]

Collaboration diagram for Vector with linear algebra naming convention.:

Functions

template<class Scalar>
void Thyra::assign (const Ptr< 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 Thyra::assign (const Ptr< VectorBase< Scalar > > &y, const VectorBase< Scalar > &x)
Vector assignment: `y(i) = x(i), i = 0...y->space()->dim()-1`.
template<class Scalar>
void Thyra::Vp_S (const Ptr< 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 Thyra::Vt_S (const Ptr< 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 Thyra::V_StV (const Ptr< 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 Thyra::Vp_StV (const Ptr< 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 Thyra::Vp_V (const Ptr< VectorBase< Scalar > > &y, const VectorBase< Scalar > &x, const Scalar &beta=Teuchos::ScalarTraits< Scalar >::one())
`y(i) = x(i) + beta*y(i), i = 0...y->space()->dim()-1`.
template<class Scalar>
void Thyra::V_V (const Ptr< VectorBase< Scalar > > &y, const VectorBase< Scalar > &x)
`y(i) = x(i), i = 0...y->space()->dim()-1`.
template<class Scalar>
void Thyra::V_S (const Ptr< VectorBase< Scalar > > &y, const Scalar &alpha)
`y(i) = alpha, i = 0...y->space()->dim()-1`.
template<class Scalar>
void Thyra::V_VpV (const Ptr< 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 Thyra::V_VmV (const Ptr< 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 Thyra::V_StVpV (const Ptr< 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 Thyra::V_VpStV (const Ptr< VectorBase< Scalar > > &z, const VectorBase< Scalar > &x, const Scalar &alpha, const VectorBase< Scalar > &y)
`z(i) = x(i) + alpha*y(i), i = 0...z->space()->dim()-1`.
template<class Scalar>
void Thyra::V_StVpStV (const Ptr< 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`.

Detailed Description

These functions a just simpler ways to call the functions defined here.

The convention used here is described in the short note A Simple Convention for the Specification of Linear Algebra Function Prototypes in C++ .

Function Documentation

template<class Scalar>
 void Thyra::assign ( const Ptr< VectorBase< Scalar > > & v_lhs, const Scalar & alpha )

Assign all elements to a scalar: `y(i) = alpha, i = 0...y->space()->dim()-1`.

Definition at line 378 of file Thyra_VectorStdOps.hpp.

template<class Scalar>
 void Thyra::assign ( const Ptr< VectorBase< Scalar > > & v_lhs, const VectorBase< Scalar > & v_rhs )

Vector assignment: `y(i) = x(i), i = 0...y->space()->dim()-1`.

Definition at line 385 of file Thyra_VectorStdOps.hpp.

template<class Scalar>
 void Thyra::Vp_S ( const Ptr< VectorBase< Scalar > > & v_lhs, const Scalar & alpha )

Add a scalar to all elements: `y(i) += alpha, i = 0...y->space()->dim()-1`.

Definition at line 392 of file Thyra_VectorStdOps.hpp.

template<class Scalar>
 void Thyra::Vt_S ( const Ptr< VectorBase< Scalar > > & y, const Scalar & alpha )

Scale all elements by a scalar: `y(i) *= alpha, i = 0...y->space()->dim()-1`.

This takes care of the special cases of `alpha == 0.0` (set `y = 0.0`) and `alpha == 1.0` (don't do anything).

Definition at line 399 of file Thyra_VectorStdOps.hpp.

template<class Scalar>
 void Thyra::V_StV ( const Ptr< VectorBase< Scalar > > & y, const Scalar & alpha, const VectorBase< Scalar > & x )

Assign scaled vector: `y(i) = alpha * x(i), i = 0...y->space()->dim()-1`.

Examples:
sillyPowerMethod.hpp.

Definition at line 406 of file Thyra_VectorStdOps.hpp.

template<class Scalar>
 void Thyra::Vp_StV ( const Ptr< VectorBase< Scalar > > & v_lhs, const Scalar & alpha, const VectorBase< Scalar > & v_rhs )

AXPY: `y(i) = alpha * x(i) + y(i), i = 0...y->space()->dim()-1`.

Examples:
sillyCgSolve.hpp.

Definition at line 417 of file Thyra_VectorStdOps.hpp.

template<class Scalar>
 void Thyra::Vp_V ( const Ptr< VectorBase< Scalar > > & y, const VectorBase< Scalar > & x, const Scalar & beta = `Teuchos::ScalarTraits::one()` )

`y(i) = x(i) + beta*y(i), i = 0...y->space()->dim()-1`.

Definition at line 428 of file Thyra_VectorStdOps.hpp.

template<class Scalar>
 void Thyra::V_V ( const Ptr< VectorBase< Scalar > > & y, const VectorBase< Scalar > & x )

`y(i) = x(i), i = 0...y->space()->dim()-1`.

Examples:
sillyCgSolve.hpp, sillyCgSolve_mpi.cpp, and sillyCgSolve_serial.cpp.

Definition at line 441 of file Thyra_VectorStdOps.hpp.

template<class Scalar>
 void Thyra::V_S ( const Ptr< VectorBase< Scalar > > & y, const Scalar & alpha )

`y(i) = alpha, i = 0...y->space()->dim()-1`.

Examples:
sillyCgSolve_mpi.cpp, and sillyCgSolve_serial.cpp.

Definition at line 448 of file Thyra_VectorStdOps.hpp.

template<class Scalar>
 void Thyra::V_VpV ( const Ptr< VectorBase< Scalar > > & z, const VectorBase< Scalar > & x, const VectorBase< Scalar > & y )

`z(i) = x(i) + y(i), i = 0...z->space()->dim()-1`.

Definition at line 455 of file Thyra_VectorStdOps.hpp.

template<class Scalar>
 void Thyra::V_VmV ( const Ptr< VectorBase< Scalar > > & z, const VectorBase< Scalar > & x, const VectorBase< Scalar > & y )

`z(i) = x(i) - y(i), i = 0...z->space()->dim()-1`.

Definition at line 470 of file Thyra_VectorStdOps.hpp.

template<class Scalar>
 void Thyra::V_StVpV ( const Ptr< 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`.

Definition at line 485 of file Thyra_VectorStdOps.hpp.

template<class Scalar>
 void Thyra::V_VpStV ( const Ptr< VectorBase< Scalar > > & z, const VectorBase< Scalar > & x, const Scalar & alpha, const VectorBase< Scalar > & y )

`z(i) = x(i) + alpha*y(i), i = 0...z->space()->dim()-1`.

Definition at line 499 of file Thyra_VectorStdOps.hpp.

template<class Scalar>
 void Thyra::V_StVpStV ( const Ptr< 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`.

Definition at line 513 of file Thyra_VectorStdOps.hpp.

Generated on Wed May 12 21:26:56 2010 for Thyra Operator/Vector Support by  1.4.7