NOX
Development
|
Concrete class for a weighted L2 vector space. More...
#include <NOX_Epetra_VectorSpace_ScaledL2.H>
Public Member Functions | |
VectorSpaceScaledL2 (const Teuchos::RCP< NOX::Epetra::Scaling > &s, NOX::Epetra::Scaling::ScaleType st=NOX::Epetra::Scaling::Left) | |
Constructor. | |
virtual | ~VectorSpaceScaledL2 () |
Destructor. | |
virtual double | innerProduct (const Epetra_Vector &a, const Epetra_Vector &b) const |
Computes a scaled inner product. More... | |
virtual double | norm (const Epetra_Vector &a, NOX::Abstract::Vector::NormType=NOX::Abstract::Vector::TwoNorm) const |
Computes the scaled norm. More... | |
Public Member Functions inherited from NOX::Epetra::VectorSpace | |
VectorSpace () | |
Constructor. | |
virtual | ~VectorSpace () |
Destructor. | |
Protected Attributes | |
Teuchos::RCP < NOX::Epetra::Scaling > | scalingPtr |
Scaling vector used in the inner product. | |
NOX::Epetra::Scaling::ScaleType | scaleType |
Scaling type to apply to vector space. | |
Teuchos::RCP< Epetra_Vector > | tmpVectorPtr |
Temporary vector used in scaling computations. | |
Concrete class for a weighted L2 vector space.
This class allows users to override the inner product and norm used by the NOX::Epetra::Vector class. The most frequent use of this class is for introducing a weighted norm throughout NOX.
|
virtual |
Computes a scaled inner product.
Computes a scaled inner product: where is the set of scaling vectors associated with either left of right scaling.
Implements NOX::Epetra::VectorSpace.
References Teuchos::is_null(), and Teuchos::rcp().
|
virtual |
Computes the scaled norm.
Computes the scaled norm using where is the set of scaling vectors associated with either left of right scaling.
Implements NOX::Epetra::VectorSpace.
References Teuchos::is_null(), NOX::Abstract::Vector::MaxNorm, NOX::Abstract::Vector::OneNorm, Teuchos::rcp(), and NOX::Abstract::Vector::TwoNorm.