46 #ifndef Xyce_N_NLS_NOX_Group_h
47 #define Xyce_N_NLS_NOX_Group_h
55 #include "NOX_Abstract_Group.H"
56 #include "Teuchos_RefCountPtr.hpp"
72 class Ifpack_IlukGraph;
73 class Ifpack_CrsRiluk;
90 class Group :
public virtual NOX::Abstract::Group {
95 Group(
const Group& source, NOX::CopyType type = NOX::DeepCopy);
100 NOX::Abstract::Group&
operator=(
const NOX::Abstract::Group& source);
103 void setX(
const NOX::Abstract::Vector& input);
106 void computeX(
const NOX::Abstract::Group& grp,
const NOX::Abstract::Vector& d,
double step);
108 NOX::Abstract::Group::ReturnType
computeF();
111 NOX::Abstract::Group::ReturnType
computeNewton(Teuchos::ParameterList& params);
113 NOX::Abstract::Group::ReturnType
applyJacobian(
const NOX::Abstract::Vector& input, NOX::Abstract::Vector& result)
const;
116 NOX::Abstract::Group::ReturnType
applyJacobianTranspose(
const NOX::Abstract::Vector& input, NOX::Abstract::Vector& result)
const;
117 NOX::Abstract::Group::ReturnType
120 NOX::Abstract::Group::ReturnType
122 const NOX::Abstract::Vector& input,
123 NOX::Abstract::Vector& result)
const;
125 NOX::Abstract::Group::ReturnType
127 Teuchos::ParameterList& params,
130 NOX::Abstract::Group::ReturnType
132 Teuchos::ParameterList& params,
133 const NOX::Abstract::Vector& input,
134 NOX::Abstract::Vector& result)
const;
141 const NOX::Abstract::Vector&
getX()
const;
142 const NOX::Abstract::Vector&
getF()
const;
145 const NOX::Abstract::Vector&
getNewton()
const;
147 Teuchos::RefCountPtr<NOX::Abstract::Group>
148 clone(NOX::CopyType type = NOX::DeepCopy)
const;
156 void throwError(std::string method, std::string message)
const;
192 #endif // Xyce_N_NLS_NOX_SharedSystem_h