46 #include <Xyce_config.h>
55 #include "N_LAS_Vector.h"
56 #include "N_LAS_System.h"
57 #include "N_LAS_Builder.h"
58 #include "N_ERH_ErrorMgr.h"
62 using namespace N_NLS_NOX;
77 lasSys_(source.lasSys_),
82 error(
"N_NLS_NOX::Vector Copy Constructor - unable to create vector");
85 if (type == NOX::DeepCopy)
106 NOX::Abstract::Vector&
Vector::abs(
const NOX::Abstract::Vector& source)
108 return abs(dynamic_cast<const Vector&>(source));
119 return operator=(dynamic_cast<const Vector&>(source));
132 return reciprocal(dynamic_cast<const Vector&>(source));
149 return scale(dynamic_cast<const Vector&>(y));
158 NOX::Abstract::Vector&
Vector::update(
double alpha,
const NOX::Abstract::Vector& a,
161 return update(alpha, dynamic_cast<const Vector&>(a), gamma);
172 NOX::Abstract::Vector&
Vector::update(
double alpha,
const NOX::Abstract::Vector& a,
173 double beta,
const NOX::Abstract::Vector& b,
176 return update(alpha, dynamic_cast<const Vector&>(a),
177 beta, dynamic_cast<const Vector&>(b),
184 double beta,
const Vector& b,
199 Teuchos::RCP<NOX::Abstract::Vector>
202 Teuchos::RCP<Vector> ptr = Teuchos::rcp(
new Vector(*
this, type));
211 case NOX::Abstract::Vector::TwoNorm:
214 case NOX::Abstract::Vector::OneNorm:
217 case NOX::Abstract::Vector::MaxNorm:
221 error(
"N_NLS_NOX::Vector::norm - invalid norm type");
228 return norm(dynamic_cast<const Vector&>(weights));
233 error(
"N_NLS::NOX::Vector::norm with weights is not supported");