#include "Thyra_OperatorVectorTypes.hpp"#include "RTOpPack_ROpNorm1.hpp"#include "RTOpPack_ROpNorm2.hpp"#include "RTOpPack_ROpNormInf.hpp"Include dependency graph for Thyra_MultiVectorStdOpsDecl.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> | |
| void | norms (const MultiVectorBase< Scalar > &V, typename Teuchos::ScalarTraits< Scalar >::magnitudeType norms[]) |
| Column-wise multi-vector natural norm. | |
| template<class Scalar, class NormOp> | |
| void | reductions (const MultiVectorBase< Scalar > &V, const NormOp &op, typename Teuchos::ScalarTraits< Scalar >::magnitudeType norms[]) |
| Column-wise multi-vector reductions. | |
| template<class Scalar> | |
| void | norms_1 (const MultiVectorBase< Scalar > &V, typename Teuchos::ScalarTraits< Scalar >::magnitudeType norms[]) |
| Column-wise multi-vector one norm. | |
| template<class Scalar> | |
| void | norms_2 (const MultiVectorBase< Scalar > &V, typename Teuchos::ScalarTraits< Scalar >::magnitudeType norms[]) |
| Column-wise multi-vector 2 (Euclidean) norm. | |
| template<class Scalar> | |
| void | norms_inf (const MultiVectorBase< Scalar > &V, typename Teuchos::ScalarTraits< Scalar >::magnitudeType norms[]) |
| Column-wise multi-vector infinity norm. | |
| template<class Scalar> | |
| void | dots (const MultiVectorBase< Scalar > &V1, const MultiVectorBase< Scalar > &V2, Scalar dots[]) |
| Multi-vector dot product. | |
| template<class Scalar> | |
| void | sums (const MultiVectorBase< Scalar > &V, Scalar sums[]) |
| Multi-vector column sum. | |
| template<class Scalar> | |
| Teuchos::ScalarTraits< Scalar >::magnitudeType | norm_1 (const MultiVectorBase< Scalar > &V) |
| Take the induced matrix one norm of a multi-vector. | |
| template<class Scalar> | |
| void | scale (Scalar alpha, MultiVectorBase< Scalar > *V) |
| V = alpha*V. | |
| template<class Scalar> | |
| void | scaleUpdate (const VectorBase< Scalar > &a, const MultiVectorBase< Scalar > &U, MultiVectorBase< Scalar > *V) |
| A*U + V -> V (where A is a diagonal matrix with diagonal a). | |
| template<class Scalar> | |
| void | assign (MultiVectorBase< Scalar > *V, Scalar alpha) |
| V = alpha. | |
| template<class Scalar> | |
| void | assign (MultiVectorBase< Scalar > *V, const MultiVectorBase< Scalar > &U) |
| V = U. | |
| template<class Scalar> | |
| void | update (Scalar alpha, const MultiVectorBase< Scalar > &U, MultiVectorBase< Scalar > *V) |
| alpha*U + V -> V | |
| template<class Scalar> | |
| void | update (Scalar alpha[], Scalar beta, const MultiVectorBase< Scalar > &U, MultiVectorBase< Scalar > *V) |
| alpha[j-1]*beta*U(j) + V(j) - > V(j), for j = 0 ... U.domain()->dim()-1 | |
| template<class Scalar> | |
| void | update (const MultiVectorBase< Scalar > &U, Scalar alpha[], Scalar beta, MultiVectorBase< Scalar > *V) |
| U(j) + alpha[j-1]*beta*V(j) - > V(j), for j = 0 ... U.domain()->dim()-1. | |
| template<class Scalar> | |
| void | linear_combination (const int m, const Scalar alpha[], const MultiVectorBase< Scalar > *X[], const Scalar &beta, MultiVectorBase< Scalar > *Y) |
Y.col(j)(i) = beta*Y.col(j)(i) + sum( alpha[k]*X[k].col(j)(i), k=0...m-1 ), for i = 0...Y->range()->dim()-1, j = 0...Y->domain()->dim()-1. | |
| template<class Scalar> | |
| void | randomize (Scalar l, Scalar u, MultiVectorBase< Scalar > *V) |
| Generate a random multi-vector with elements uniformly distributed elements. | |
| template<class Scalar> | |
| void | V_VpV (MultiVectorBase< Scalar > *Z, const MultiVectorBase< Scalar > &X, const MultiVectorBase< Scalar > &Y) |
Z(i,j) = X(i,j) + Y(i,j), i = 0...Z->range()->dim()-1, j = 0...Z->domain()->dim()-1. | |
| template<class Scalar> | |
| void | V_VmV (MultiVectorBase< Scalar > *Z, const MultiVectorBase< Scalar > &X, const MultiVectorBase< Scalar > &Y) |
Z(i,j) = X(i,j) - Y(i,j), i = 0...Z->range()->dim()-1, j = 0...Z->domain()->dim()-1. | |
1.3.9.1