NOX Development
|
Abstract interface for multi-vectors used by NOX. More...
#include <NOX_Abstract_MultiVector.H>
Public Types | |
typedef Teuchos::SerialDenseMatrix< int, double > | DenseMatrix |
Typename of dense matrices. | |
Public Member Functions | |
MultiVector () | |
Default constructor. Does nothing. | |
virtual | ~MultiVector () |
Destructor. Does nothing. | |
virtual NOX::Abstract::MultiVector & | init (double gamma)=0 |
Initialize every element of this multi-vector with gamma . | |
virtual NOX::Abstract::MultiVector & | random (bool useSeed=false, int seed=1)=0 |
Initialize each element of this multi-vector with a random value. | |
virtual NOX::Abstract::MultiVector & | operator= (const NOX::Abstract::MultiVector &source)=0 |
Copy source multi-vector source into this multi-vector. | |
virtual NOX::Abstract::MultiVector & | setBlock (const NOX::Abstract::MultiVector &source, const std::vector< int > &index)=0 |
Copy the vectors in source to a set of vectors in *this . The index.size() vectors in source are copied to a subset of vectors in *this indicated by the indices given in index . | |
virtual NOX::Abstract::MultiVector & | augment (const NOX::Abstract::MultiVector &source)=0 |
Append the vectors in source to *this . | |
virtual NOX::Abstract::Vector & | operator[] (int i)=0 |
Return a reference to the i-th column of the multivector as an abstract vector. | |
virtual const NOX::Abstract::Vector & | operator[] (int i) const =0 |
Return a const reference to the i-th column of the multivector as an abstract vector. | |
virtual NOX::Abstract::MultiVector & | scale (double gamma)=0 |
Scale each element of this multivector by gamma . | |
virtual NOX::Abstract::MultiVector & | update (double alpha, const NOX::Abstract::MultiVector &a, double gamma=0.0)=0 |
Compute x = (alpha * a) + (gamma * x) where a is a multi-vector and x = *this . | |
virtual NOX::Abstract::MultiVector & | update (double alpha, const NOX::Abstract::MultiVector &a, double beta, const NOX::Abstract::MultiVector &b, double gamma=0.0)=0 |
Compute x = (alpha * a) + (beta * b) + (gamma * x) where a and b are multi-vectors and x = *this . | |
virtual NOX::Abstract::MultiVector & | update (Teuchos::ETransp transb, double alpha, const NOX::Abstract::MultiVector &a, const DenseMatrix &b, double gamma=0.0)=0 |
Compute x = (alpha * a * op(b)) + (gamma * x) where a is a multivector, b is a dense matrix, x = *this , and op(b) = b if transb = Teuchos::NO_TRANS and op(b) is b transpose if transb = Teuchos::TRANS. | |
virtual Teuchos::RCP< NOX::Abstract::MultiVector > | clone (NOX::CopyType type=NOX::DeepCopy) const =0 |
Create a new Vector of the same underlying type by cloning "this", and return a pointer to the new vector. | |
virtual Teuchos::RCP< NOX::Abstract::MultiVector > | clone (int numvecs) const =0 |
Creates a new multi-vector with numvecs columns. | |
virtual Teuchos::RCP< NOX::Abstract::MultiVector > | subCopy (const std::vector< int > &index) const =0 |
Creates a new multi-vector with index.size() columns whose columns are copies of the columns of *this given by index . | |
virtual Teuchos::RCP< NOX::Abstract::MultiVector > | subView (const std::vector< int > &index) const =0 |
Creates a new multi-vector with ndex.size() columns that shares the columns of *this given by index . | |
virtual void | norm (std::vector< double > &result, NOX::Abstract::Vector::NormType type=NOX::Abstract::Vector::TwoNorm) const =0 |
Norm. | |
virtual void | multiply (double alpha, const NOX::Abstract::MultiVector &y, DenseMatrix &b) const =0 |
Computes the matrix-matrix product ![]() | |
virtual NOX::size_type | length () const =0 |
Return the length of multi-vector. | |
virtual int | numVectors () const =0 |
Return the number of vectors in the multi-vector. | |
virtual void | print (std::ostream &stream) const =0 |
Print the vector. This is meant for debugging purposes only. | |
Abstract interface for multi-vectors used by NOX.
|
inlinevirtual |
Destructor. Does nothing.
Reimplemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
|
pure virtual |
Append the vectors in source
to *this
.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
|
pure virtual |
Creates a new multi-vector with numvecs
columns.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, LOCA::Hopf::ComplexMultiVector, LOCA::Hopf::MooreSpence::ExtendedMultiVector, LOCA::MultiContinuation::ExtendedMultiVector, LOCA::PhaseTransition::ExtendedMultiVector, LOCA::Pitchfork::MooreSpence::ExtendedMultiVector, LOCA::TurningPoint::MooreSpence::ExtendedMultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
|
pure virtual |
Create a new Vector of the same underlying type by cloning "this", and return a pointer to the new vector.
If type is NOX::DeepCopy, then we need to create an exact replica of "this". Otherwise, if type is NOX::ShapeCopy, we need only replicate the shape of "this". Note that there is no assumption that a vector created by ShapeCopy is initialized to zeros.
Implemented in NOX::Epetra::MultiVector, NOX::Thyra::MultiVector, LOCA::Extended::MultiVector, LOCA::Hopf::ComplexMultiVector, LOCA::Hopf::MooreSpence::ExtendedMultiVector, LOCA::MultiContinuation::ExtendedMultiVector, LOCA::PhaseTransition::ExtendedMultiVector, LOCA::Pitchfork::MooreSpence::ExtendedMultiVector, LOCA::TurningPoint::MooreSpence::ExtendedMultiVector, and NOX::MultiVector.
Referenced by LOCA::Epetra::AnasaziOperator::Floquet::apply(), LOCA::AnasaziOperator::Cayley::apply(), LOCA::AnasaziOperator::Cayley2Matrix::apply(), LOCA::AnasaziOperator::ShiftInvert::apply(), LOCA::AnasaziOperator::ShiftInvert2Matrix::apply(), LOCA::BorderedSolver::Bordering::applyInverse(), LOCA::BorderedSolver::Bordering::applyInverseTranspose(), Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::Clone(), Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::CloneCopy(), LOCA::Hopf::ComplexMultiVector::ComplexMultiVector(), LOCA::DerivUtils::computeDwtJnDx(), LOCA::BorderedSolver::HouseholderQR::computeQR(), LOCA::PhaseTransition::ExtendedMultiVector::ExtendedMultiVector(), LOCA::TurningPoint::MooreSpence::ExtendedMultiVector::ExtendedMultiVector(), LOCA::Pitchfork::MooreSpence::ExtendedMultiVector::ExtendedMultiVector(), LOCA::Hopf::MooreSpence::ExtendedMultiVector::ExtendedMultiVector(), LOCA::MultiContinuation::ExtendedMultiVector::ExtendedMultiVector(), LOCA::AnasaziOperator::Cayley::preProcessSeedVector(), LOCA::AnasaziOperator::Cayley2Matrix::preProcessSeedVector(), LOCA::BorderedSolver::UpperTriangularBlockElimination::solve(), LOCA::BorderedSolver::EpetraHouseholder::solve(), LOCA::BorderedSolver::TpetraHouseholder::solve(), LOCA::TurningPoint::MooreSpence::PhippsBordering::solveContiguous(), LOCA::TurningPoint::MooreSpence::SalingerBordering::solveContiguous(), LOCA::Pitchfork::MooreSpence::PhippsBordering::solveContiguous(), LOCA::Pitchfork::MooreSpence::SalingerBordering::solveContiguous(), LOCA::Hopf::MooreSpence::SalingerBordering::solveContiguous(), LOCA::BorderedSolver::Bordering::solveFZero(), LOCA::BorderedSolver::Bordering::solveFZeroTrans(), LOCA::BorderedSolver::UpperTriangularBlockElimination::solveTranspose(), LOCA::BorderedSolver::EpetraHouseholder::solveTranspose(), LOCA::TurningPoint::MooreSpence::PhippsBordering::solveTransposeContiguous(), and LOCA::TurningPoint::MooreSpence::SalingerBordering::solveTransposeContiguous().
|
pure virtual |
Initialize every element of this multi-vector with gamma
.
Implemented in LOCA::Extended::MultiVector, NOX::MultiVector, NOX::Epetra::MultiVector, and NOX::Thyra::MultiVector.
Referenced by LOCA::BorderedSolver::HouseholderQR::applyCompactWY(), LOCA::BorderedSolver::EpetraAugmented::applyInverse(), LOCA::BorderedSolver::EpetraHouseholder::applyInverse(), LOCA::BorderedSolver::TpetraHouseholder::applyInverse(), LOCA::BorderedSolver::Nested::applyInverse(), LOCA::BorderedSolver::EpetraHouseholder::applyInverseTranspose(), LOCA::BorderedSolver::TpetraHouseholder::applyInverseTranspose(), LOCA::BorderedSolver::Nested::applyInverseTranspose(), LOCA::MultiContinuation::ConstrainedGroup::fillB(), Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::MvInit(), LOCA::BorderedSolver::LAPACKDirectSolve::solve(), LOCA::BorderedSolver::LowerTriangularBlockElimination::solve(), LOCA::BorderedSolver::UpperTriangularBlockElimination::solve(), LOCA::BorderedSolver::EpetraHouseholder::solve(), LOCA::BorderedSolver::TpetraHouseholder::solve(), LOCA::BorderedSolver::Bordering::solveFZero(), LOCA::BorderedSolver::Bordering::solveFZeroTrans(), LOCA::BorderedSolver::LowerTriangularBlockElimination::solveTranspose(), LOCA::BorderedSolver::UpperTriangularBlockElimination::solveTranspose(), and LOCA::BorderedSolver::EpetraHouseholder::solveTranspose().
|
pure virtual |
Return the length of multi-vector.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
Referenced by Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::GetGlobalLength().
|
pure virtual |
Computes the matrix-matrix product
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
Referenced by LOCA::BorderedSolver::EpetraAugmented::apply(), LOCA::BorderedSolver::EpetraHouseholder::apply(), LOCA::BorderedSolver::LAPACKDirectSolve::apply(), LOCA::BorderedSolver::TpetraHouseholder::apply(), LOCA::BorderedSolver::Bordering::apply(), LOCA::BorderedSolver::HouseholderQR::applyCompactWY(), LOCA::BorderedSolver::HouseholderQR::applyHouseholderVector(), LOCA::BorderedSolver::EpetraAugmented::applyTranspose(), LOCA::BorderedSolver::EpetraHouseholder::applyTranspose(), LOCA::BorderedSolver::LAPACKDirectSolve::applyTranspose(), LOCA::BorderedSolver::TpetraHouseholder::applyTranspose(), LOCA::BorderedSolver::Bordering::applyTranspose(), LOCA::BorderedSolver::HouseholderQR::computeQR(), LOCA::Pitchfork::MooreSpence::AbstractGroup::innerProduct(), LOCA::Pitchfork::MooreSpence::ExtendedGroup::lTransNorm(), LOCA::TurningPoint::MooreSpence::ExtendedGroup::lTransNorm(), LOCA::Hopf::MooreSpence::ExtendedGroup::lTransNorm(), LOCA::MultiContinuation::ConstraintInterfaceMVDX::multiplyDX(), Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::MvTransMv(), LOCA::TurningPoint::MooreSpence::PhippsBordering::solveTransposeContiguous(), and LOCA::TurningPoint::MooreSpence::SalingerBordering::solveTransposeContiguous().
|
pure virtual |
Norm.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
Referenced by Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::MvNorm().
|
pure virtual |
Return the number of vectors in the multi-vector.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
Referenced by LOCA::MultiContinuation::CompositeConstraint::addDX(), LOCA::Epetra::AnasaziOperator::Floquet::apply(), LOCA::AnasaziOperator::Cayley::apply(), LOCA::AnasaziOperator::Cayley2Matrix::apply(), LOCA::AnasaziOperator::ShiftInvert::apply(), LOCA::AnasaziOperator::ShiftInvert2Matrix::apply(), LOCA::BorderedSolver::Nested::apply(), LOCA::BorderedSolver::HouseholderQR::applyCompactWY(), LOCA::Epetra::Group::applyComplexInverseMultiVector(), LOCA::LAPACK::Group::applyComplexInverseMultiVector(), LOCA::Epetra::Group::applyComplexMultiVector(), LOCA::LAPACK::Group::applyComplexMultiVector(), LOCA::Epetra::Group::applyComplexTransposeInverseMultiVector(), LOCA::LAPACK::Group::applyComplexTransposeInverseMultiVector(), LOCA::Epetra::Group::applyComplexTransposeMultiVector(), LOCA::LAPACK::Group::applyComplexTransposeMultiVector(), LOCA::BorderedSolver::HouseholderQR::applyHouseholderVector(), LOCA::BorderedSolver::Bordering::applyInverse(), LOCA::BorderedSolver::Nested::applyInverse(), LOCA::BorderedSolver::Bordering::applyInverseTranspose(), LOCA::BorderedSolver::Nested::applyInverseTranspose(), NOX::LAPACK::Group::applyJacobianInverseMultiVector(), NOX::Abstract::Group::applyJacobianInverseMultiVector(), LOCA::Homotopy::DeflatedGroup::applyJacobianMultiVector(), NOX::Abstract::Group::applyJacobianMultiVector(), LOCA::Epetra::Group::applyJacobianTransposeInverseMultiVector(), LOCA::LAPACK::Group::applyJacobianTransposeInverseMultiVector(), LOCA::Homotopy::DeflatedGroup::applyJacobianTransposeMultiVector(), NOX::Abstract::Group::applyJacobianTransposeMultiVector(), NOX::Abstract::Group::applyRightPreconditioningMultiVector(), LOCA::Epetra::Group::applySecondShiftedMatrixMultiVector(), LOCA::Epetra::Group::applyShiftedMatrixInverseMultiVector(), LOCA::LAPACK::Group::applyShiftedMatrixInverseMultiVector(), LOCA::Epetra::Group::applyShiftedMatrixMultiVector(), LOCA::LAPACK::Group::applyShiftedMatrixMultiVector(), LOCA::BorderedSolver::Nested::applyTranspose(), LOCA::DerivUtils::computeDCeDxa(), LOCA::Epetra::ModelEvaluatorInterface::computeDfDp(), LOCA::Thyra::Group::computeDfDpMulti(), LOCA::Hopf::MooreSpence::ExtendedGroup::computeDfDpMulti(), LOCA::Pitchfork::MooreSpence::ExtendedGroup::computeDfDpMulti(), LOCA::TurningPoint::MooreSpence::ExtendedGroup::computeDfDpMulti(), LOCA::DerivUtils::computeDJnDxa(), LOCA::BorderedSolver::HouseholderQR::computeQR(), Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::GetNumberVecs(), LOCA::AnasaziOperator::Cayley::preProcessSeedVector(), LOCA::AnasaziOperator::Cayley2Matrix::preProcessSeedVector(), LOCA::BorderedSolver::LAPACKDirectSolve::solve(), LOCA::BorderedSolver::EpetraHouseholder::solve(), LOCA::BorderedSolver::TpetraHouseholder::solve(), LOCA::TurningPoint::MooreSpence::PhippsBordering::solveContiguous(), LOCA::TurningPoint::MooreSpence::SalingerBordering::solveContiguous(), LOCA::Pitchfork::MooreSpence::PhippsBordering::solveContiguous(), LOCA::Pitchfork::MooreSpence::SalingerBordering::solveContiguous(), LOCA::Hopf::MooreSpence::SalingerBordering::solveContiguous(), LOCA::BorderedSolver::Bordering::solveContiguousTrans(), LOCA::BorderedSolver::Bordering::solveFZeroTrans(), LOCA::BorderedSolver::EpetraHouseholder::solveTranspose(), LOCA::TurningPoint::MooreSpence::PhippsBordering::solveTransposeContiguous(), and LOCA::TurningPoint::MooreSpence::SalingerBordering::solveTransposeContiguous().
|
pure virtual |
Copy source multi-vector source
into this multi-vector.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, NOX::MultiVector, LOCA::Hopf::ComplexMultiVector, LOCA::Hopf::MooreSpence::ExtendedMultiVector, LOCA::MultiContinuation::ExtendedMultiVector, LOCA::PhaseTransition::ExtendedMultiVector, LOCA::Pitchfork::MooreSpence::ExtendedMultiVector, and LOCA::TurningPoint::MooreSpence::ExtendedMultiVector.
|
pure virtual |
Return a const reference to the i-th column of the multivector as an abstract vector.
It is assumed that any implementation of this method returns a vector that has a view of the underlying data in the multivector.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
|
pure virtual |
Return a reference to the i-th column of the multivector as an abstract vector.
It is assumed that any implementation of this method returns a vector that has a view of the underlying data in the multivector
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
|
pure virtual |
Print the vector. This is meant for debugging purposes only.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
Referenced by Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::MvPrint().
|
pure virtual |
Initialize each element of this multi-vector with a random value.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
Referenced by Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::MvRandom(), LOCA::Extended::MultiVector::random(), and NOX::MultiVector::random().
|
pure virtual |
Scale each element of this multivector by gamma
.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
Referenced by LOCA::MultiContinuation::CompositeConstraint::addDX(), LOCA::MultiContinuation::ConstraintInterfaceMVDX::addDX(), LOCA::DerivUtils::computeDCeDxa(), LOCA::DerivUtils::computeDJnDxa(), LOCA::DerivUtils::computeDwtJnDx(), LOCA::BorderedSolver::HouseholderQR::computeHouseholderVector(), Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::MvScale(), and LOCA::Extended::MultiVector::scale().
|
pure virtual |
Copy the vectors in source
to a set of vectors in *this
. The index.size()
vectors in source
are copied to a subset of vectors in *this
indicated by the indices given in index
.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
Referenced by Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::SetBlock().
|
pure virtual |
Creates a new multi-vector with index.size()
columns whose columns are copies of the columns of *this
given by index
.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, LOCA::Hopf::ComplexMultiVector, LOCA::Hopf::MooreSpence::ExtendedMultiVector, LOCA::MultiContinuation::ExtendedMultiVector, LOCA::PhaseTransition::ExtendedMultiVector, LOCA::Pitchfork::MooreSpence::ExtendedMultiVector, LOCA::TurningPoint::MooreSpence::ExtendedMultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
Referenced by Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::CloneCopy().
|
pure virtual |
Creates a new multi-vector with ndex.size()
columns that shares the columns of *this
given by index
.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, LOCA::Hopf::ComplexMultiVector, LOCA::Hopf::MooreSpence::ExtendedMultiVector, LOCA::MultiContinuation::ExtendedMultiVector, LOCA::PhaseTransition::ExtendedMultiVector, LOCA::Pitchfork::MooreSpence::ExtendedMultiVector, LOCA::TurningPoint::MooreSpence::ExtendedMultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
Referenced by Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::CloneView(), Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::CloneViewNonConst(), LOCA::Epetra::ModelEvaluatorInterface::computeDfDp(), LOCA::Thyra::Group::computeDfDpMulti(), LOCA::Homotopy::Group::computeDfDpMulti(), LOCA::BorderedSolver::HouseholderQR::computeQR(), LOCA::Homotopy::DeflatedGroup::fillA(), LOCA::Hopf::MinimallyAugmented::ExtendedGroup::fillA(), LOCA::MultiContinuation::ConstrainedGroup::fillA(), LOCA::Pitchfork::MinimallyAugmented::ExtendedGroup::fillA(), LOCA::Homotopy::DeflatedGroup::fillB(), LOCA::Hopf::MinimallyAugmented::ExtendedGroup::fillB(), LOCA::MultiContinuation::ConstrainedGroup::fillB(), LOCA::Pitchfork::MinimallyAugmented::ExtendedGroup::fillB(), LOCA::TurningPoint::MooreSpence::PhippsBordering::solveContiguous(), LOCA::TurningPoint::MooreSpence::SalingerBordering::solveContiguous(), LOCA::Pitchfork::MooreSpence::PhippsBordering::solveContiguous(), LOCA::Pitchfork::MooreSpence::SalingerBordering::solveContiguous(), LOCA::Hopf::MooreSpence::SalingerBordering::solveContiguous(), LOCA::BorderedSolver::Bordering::solveContiguous(), LOCA::BorderedSolver::Bordering::solveContiguousTrans(), LOCA::TurningPoint::MooreSpence::PhippsBordering::solveTransposeContiguous(), and LOCA::TurningPoint::MooreSpence::SalingerBordering::solveTransposeContiguous().
|
pure virtual |
Compute x = (alpha * a) + (beta * b) + (gamma * x) where a
and b
are multi-vectors and x
= *this
.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
|
pure virtual |
Compute x = (alpha * a) + (gamma * x) where a
is a multi-vector and x
= *this
.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.
Referenced by LOCA::MultiContinuation::ConstraintInterfaceMVDX::addDX(), LOCA::BorderedSolver::EpetraAugmented::apply(), LOCA::BorderedSolver::EpetraHouseholder::apply(), LOCA::BorderedSolver::LAPACKDirectSolve::apply(), LOCA::BorderedSolver::TpetraHouseholder::apply(), LOCA::BorderedSolver::Bordering::apply(), LOCA::BorderedSolver::HouseholderQR::applyCompactWY(), LOCA::BorderedSolver::HouseholderQR::applyHouseholderVector(), LOCA::Homotopy::Group::applyJacobianMultiVector(), LOCA::Homotopy::Group::applyJacobianTransposeMultiVector(), LOCA::DerivUtils::computeDCeDxa(), LOCA::Homotopy::Group::computeDfDpMulti(), LOCA::DerivUtils::computeDJnDxa(), LOCA::DerivUtils::computeDwtJnDx(), LOCA::BorderedSolver::EpetraHouseholder::computeUV(), LOCA::BorderedSolver::TpetraHouseholder::computeUV(), Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::MvAddMv(), Anasazi::MultiVecTraits< double, NOX::Abstract::MultiVector >::MvTimesMatAddMv(), LOCA::BorderedSolver::Bordering::solveFZero(), and LOCA::BorderedSolver::Bordering::solveFZeroTrans().
|
pure virtual |
Compute x = (alpha * a * op(b)) + (gamma * x) where a
is a multivector, b
is a dense matrix, x
= *this
, and op(b) = b if transb = Teuchos::NO_TRANS and op(b) is b transpose if transb = Teuchos::TRANS.
Implemented in NOX::Epetra::MultiVector, LOCA::Extended::MultiVector, NOX::Thyra::MultiVector, and NOX::MultiVector.