46 #ifndef Xyce_N_NLS_NOX_Vector_h
47 #define Xyce_N_NLS_NOX_Vector_h
49 #include <N_LAS_fwd.h>
51 #include "NOX_Abstract_Vector.H"
70 class Vector :
public NOX::Abstract::Vector {
84 Vector(Xyce::Linear::Vector& vector, Xyce::Linear::System& lasSys);
90 Vector(
const Vector& source, NOX::CopyType type = NOX::DeepCopy);
104 #ifdef Xyce_NOX_SIZETYPE
105 NOX::size_type
length()
const;
113 NOX::Abstract::Vector&
init(
double value);
118 NOX::Abstract::Vector&
abs(
const Vector& source);
119 NOX::Abstract::Vector&
abs(
const NOX::Abstract::Vector& source);
125 NOX::Abstract::Vector&
operator=(
const NOX::Abstract::Vector& source);
131 NOX::Abstract::Vector&
reciprocal(
const NOX::Abstract::Vector& source);
136 NOX::Abstract::Vector&
scale(
double gamma);
142 NOX::Abstract::Vector&
scale(
const NOX::Abstract::Vector& y);
147 NOX::Abstract::Vector&
update(
double alpha,
const Vector& a,
149 NOX::Abstract::Vector&
update(
double alpha,
const NOX::Abstract::Vector& a,
155 NOX::Abstract::Vector&
update(
double alpha,
const Vector& a,
156 double beta,
const Vector& b,
158 NOX::Abstract::Vector&
update(
double alpha,
const NOX::Abstract::Vector& a,
159 double beta,
const NOX::Abstract::Vector& b,
165 NOX::Abstract::Vector&
random(
bool useSeed=
false,
int seed=1);
170 Teuchos::RCP<NOX::Abstract::Vector>
171 clone(NOX::CopyType type = NOX::DeepCopy)
const;
176 double norm(NOX::Abstract::Vector::NormType type = NOX::Abstract::Vector::TwoNorm)
const;
183 double norm(
const NOX::Abstract::Vector& weights)
const;
189 double innerProduct(
const NOX::Abstract::Vector& y)
const;
208 void print(std::ostream &os)
const;
231 #endif // Xyce_N_NLS_NOX_SharedSystem_h
Teuchos::RCP< NOX::Abstract::Vector > clone(NOX::CopyType type=NOX::DeepCopy) const
NOX::Abstract::Vector & reciprocal(const Vector &source)
NOX::Abstract::Vector & random(bool useSeed=false, int seed=1)
Xyce::Linear::Vector * getNativeVectorPtr() const
NOX::Abstract::Vector & operator=(const Vector &source)
NOX::Abstract::Vector & init(double value)
const Xyce::Linear::Vector & getNativeVectorRef_() const
Pure virtual class to augment a linear system.
Xyce::Linear::Vector * getNativeVectorPtr()
const Xyce::Linear::Vector & getNativeVectorRef() const
const T & value(const ParameterBase &entity, const Descriptor &descriptor)
Returns the value of the parameter for the entity.
NOX::Abstract::Vector & scale(double gamma)
Xyce::Linear::System & lasSys_
NOX::Abstract::Vector & update(double alpha, const Vector &a, double gamma=0.0)
Vector(Xyce::Linear::Vector &vector, Xyce::Linear::System &lasSys)
double norm(NOX::Abstract::Vector::NormType type=NOX::Abstract::Vector::TwoNorm) const
NOX::Abstract::Vector & abs(const Vector &source)
Xyce::Linear::Vector & getNativeVectorRef()
double innerProduct(const Vector &y) const
void print(std::ostream &os) const
Xyce::Linear::Vector * vectorPtr_