Thyra::Vector< Scalar > Class Template Reference
[Development of linear Abstract Numerical Algorithms (ANAs)]

Read-write handle class for wrapping Thyra::VectorBase objects and allowing for operator-overloading linear algebra. More...

#include <Thyra_VectorDecl.hpp>

Inheritance diagram for Thyra::Vector< Scalar >:

[legend]
List of all members.

Product std::vector operations

void setBlock (int i, const ConstVector< Scalar > &v)
 set block
void setBlock (int i, const Vector< Scalar > &v)
 set block
Vector< Scalar > getBlock (int i)
 get modifiable block

Public Member Functions

 Vector (const VectorSpace< Scalar > &space)
 Construct from a std::vector space .
template<class Node1, class Node2>
 Vector (const Thyra::LC2< Scalar, Node1, Node2 > &x)
 Construct a std::vector from a 2-term LC.
template<class Node>
 Vector (const Thyra::OpTimesLC< Scalar, Node > &x)
 Construct a std::vector from an operator times a linear combination.
template<class Node1, class Node2>
Vectoroperator= (const Thyra::LC2< Scalar, Node1, Node2 > &x)
 Assign a linear combination of vectors to this std::vector.
template<class Node1, class Node2>
Vectoroperator+= (const Thyra::LC2< Scalar, Node1, Node2 > &x)
 Add and assign a linear combination of vectors to this std::vector.
template<class Node>
Vectoroperator= (const Thyra::OpTimesLC< Scalar, Node > &x)
 Assign a scaled linear combination to this std::vector.
template<class Node>
Vectoroperator+= (const Thyra::OpTimesLC< Scalar, Node > &x)
 Add and assign a scaled linear combination to this std::vector.
Vector< Scalar > & acceptCopyOf (const ConstVector< Scalar > &x)
Scalar operator[] (Index globalIndex) const
 
IndexObject operator[] (Index globalIndex)
 Index operator that allows changes to the element.

Related Functions

(Note that these are not member functions.)

OpTimesLC< Scalar, Thyra::ConstVector<
Scalar > > 
operator * (const Scalar &alpha, const Thyra::ConstVector< Scalar > &x)
 Overloaded multiplication operator for scalar times std::vector.
OpTimesLC< Scalar, Thyra::ConstVector<
Scalar > > 
operator * (const Thyra::ConstVector< Scalar > &x, const Scalar &alpha)
 Overloaded multiplication operator for scalar times std::vector.
Thyra::Vector< Scalar > formVector (const Thyra::Vector< Scalar > &x)
 Form a Vector from this object.
Vector< Scalar > dotStar (const Converter< Scalar, ConstVector< Scalar > > &x, const Converter< Scalar, ConstVector< Scalar > > &y)
 return[i] = x[i] * y[i].
Vector< Scalar > dotSlash (const Converter< Scalar, ConstVector< Scalar > > &x, const Converter< Scalar, ConstVector< Scalar > > &y)
 return[i] = x[i] / y[i].
Scalar maxloc (const Converter< Scalar, ConstVector< Scalar > > &x, Index &index)
 Return the max of a vector and its location.
Scalar minloc (const Converter< Scalar, ConstVector< Scalar > > &x, Index &index)
 Return the min of a vector and its location.
Scalar minloc (const Converter< Scalar, ConstVector< Scalar > > &x, const Scalar &bound, Index &index)
 Return the minimum element and its location (lowest index).
Scalar maxloc (const Converter< Scalar, ConstVector< Scalar > > &x, const Scalar &bound, Index &index)
 Return the maxium element and its location (lowest index).
void scaleInto (const Converter< Scalar, ConstVector< Scalar > > &x, const Scalar &alpha, Vector< Scalar > &result)
 result = alpha*x.
void scale (Vector< Scalar > &x, const Scalar &alpha)
 x = alpha*x.
void axpy (const Scalar &alpha, const Converter< Scalar, ConstVector< Scalar > > &x, Vector< Scalar > &y)
 y = alpha*x + y.

Detailed Description

template<class Scalar>
class Thyra::Vector< Scalar >

Read-write handle class for wrapping Thyra::VectorBase objects and allowing for operator-overloading linear algebra.
Examples:

sillierCgSolve.hpp, and silliestCgSolve.hpp.


Constructor & Destructor Documentation

template<class Scalar>
Thyra::Vector< Scalar >::Vector const VectorSpace< Scalar > &  space  )  [inline]
 

Construct from a std::vector space .

template<class Scalar>
template<class Node1, class Node2>
Thyra::Vector< Scalar >::Vector const Thyra::LC2< Scalar, Node1, Node2 > &  x  )  [inline]
 

Construct a std::vector from a 2-term LC.

template<class Scalar>
template<class Node>
Thyra::Vector< Scalar >::Vector const Thyra::OpTimesLC< Scalar, Node > &  x  )  [inline]
 

Construct a std::vector from an operator times a linear combination.


Member Function Documentation

template<class Scalar>
template<class Node1, class Node2>
Thyra::Vector< Scalar > & Thyra::Vector< Scalar >::operator= const Thyra::LC2< Scalar, Node1, Node2 > &  x  )  [inline]
 

Assign a linear combination of vectors to this std::vector.

template<class Scalar>
template<class Node1, class Node2>
Thyra::Vector< Scalar > & Thyra::Vector< Scalar >::operator+= const Thyra::LC2< Scalar, Node1, Node2 > &  x  )  [inline]
 

Add and assign a linear combination of vectors to this std::vector.

template<class Scalar>
template<class Node>
Thyra::Vector< Scalar > & Thyra::Vector< Scalar >::operator= const Thyra::OpTimesLC< Scalar, Node > &  x  )  [inline]
 

Assign a scaled linear combination to this std::vector.

template<class Scalar>
template<class Node>
Thyra::Vector< Scalar > & Thyra::Vector< Scalar >::operator+= const Thyra::OpTimesLC< Scalar, Node > &  x  )  [inline]
 

Add and assign a scaled linear combination to this std::vector.

template<class Scalar>
Vector< Scalar > & Thyra::Vector< Scalar >::acceptCopyOf const ConstVector< Scalar > &  x  )  [inline]
 

Write the contents of another std::vector into this std::vector

template<class Scalar>
Scalar Thyra::Vector< Scalar >::operator[] Index  globalIndex  )  const [inline, virtual]
 

Reimplemented from Thyra::ConstVector< Scalar >.

template<class Scalar>
IndexObject Thyra::Vector< Scalar >::operator[] Index  globalIndex  )  [inline]
 

Index operator that allows changes to the element.

Note: The object returned is of type IndexObject which allows for the customary operations to be performed.

template<class Scalar>
void Thyra::Vector< Scalar >::setBlock int  i,
const ConstVector< Scalar > &  v
[inline]
 

set block

template<class Scalar>
void Thyra::Vector< Scalar >::setBlock int  i,
const Vector< Scalar > &  v
[inline]
 

set block

template<class Scalar>
Vector< Scalar > Thyra::Vector< Scalar >::getBlock int  i  )  [inline]
 

get modifiable block


Friends And Related Function Documentation

template<class Scalar>
OpTimesLC< Scalar, Thyra::ConstVector< Scalar > > operator * const Scalar &  alpha,
const Thyra::ConstVector< Scalar > &  x
[related]
 

Overloaded multiplication operator for scalar times std::vector.

template<class Scalar>
OpTimesLC< Scalar, Thyra::ConstVector< Scalar > > operator * const Thyra::ConstVector< Scalar > &  x,
const Scalar &  alpha
[related]
 

Overloaded multiplication operator for scalar times std::vector.

template<class Scalar>
Thyra::Vector< Scalar > formVector const Thyra::Vector< Scalar > &  x  )  [related]
 

Form a Vector from this object.

For Vector, the operation is simply a pass-through.

template<class Scalar>
Vector< Scalar > dotStar const Converter< Scalar, ConstVector< Scalar > > &  x,
const Converter< Scalar, ConstVector< Scalar > > &  y
[related]
 

return[i] = x[i] * y[i].

template<class Scalar>
Vector< Scalar > dotSlash const Converter< Scalar, ConstVector< Scalar > > &  x,
const Converter< Scalar, ConstVector< Scalar > > &  y
[related]
 

return[i] = x[i] / y[i].

template<class Scalar>
Scalar maxloc const Converter< Scalar, ConstVector< Scalar > > &  x,
Index index
[related]
 

Return the max of a vector and its location.

template<class Scalar>
Scalar minloc const Converter< Scalar, ConstVector< Scalar > > &  x,
Index index
[related]
 

Return the min of a vector and its location.

template<class Scalar>
Scalar minloc const Converter< Scalar, ConstVector< Scalar > > &  x,
const Scalar &  bound,
Index index
[related]
 

Return the minimum element and its location (lowest index).

<scalar>

template<class Scalar>
Scalar maxloc const Converter< Scalar, ConstVector< Scalar > > &  x,
const Scalar &  bound,
Index index
[related]
 

Return the maxium element and its location (lowest index).

template<class Scalar>
void scaleInto const Converter< Scalar, ConstVector< Scalar > > &  x,
const Scalar &  alpha,
Vector< Scalar > &  result
[related]
 

result = alpha*x.

template<class Scalar>
void scale Vector< Scalar > &  x,
const Scalar &  alpha
[related]
 

x = alpha*x.

template<class Scalar>
void axpy const Scalar &  alpha,
const Converter< Scalar, ConstVector< Scalar > > &  x,
Vector< Scalar > &  y
[related]
 

y = alpha*x + y.


The documentation for this class was generated from the following files:
Generated on Sun Nov 23 12:13:07 2008 for Thyra Operator/Vector Support by  doxygen 1.3.9.1