11#ifndef __Panzer_Response_Residual_hpp__
12#define __Panzer_Response_Residual_hpp__
16#include "Teuchos_RCP.hpp"
18#include "Thyra_VectorBase.hpp"
19#include "Thyra_LinearOpBase.hpp"
31template <
typename EvalT>
51 Teuchos::RCP<const panzer::LinearObjFactory<panzer::Traits> >
linObjFactory_;
53 Teuchos::RCP<Thyra::VectorBase<panzer::Traits::RealType> >
residual_;
61 , linObjFactory_(lof) {}
67 Teuchos::RCP<Thyra::VectorBase<panzer::Traits::RealType> > getGhostedResidual()
const;
72 Teuchos::RCP<Thyra::VectorBase<panzer::Traits::RealType> > getResidual()
const;
82 Teuchos::RCP<Thyra::VectorBase<panzer::Traits::RealType> > allocateResidualVector()
const;
98 Teuchos::RCP<const panzer::LinearObjFactory<panzer::Traits> >
linObjFactory_;
100 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> >
jacobian_;
108 , linObjFactory_(lof) {}
114 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> > getGhostedJacobian()
const;
119 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> > getJacobian()
const;
129 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> > allocateJacobian()
const;
136#ifdef Panzer_BUILD_HESSIAN_SUPPORT
148 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> >
hessian_;
156 , linObjFactory_(lof) {}
162 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> > getGhostedHessian()
const;
167 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> > getHessian()
const;
177 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> > allocateHessian()
const;
virtual void initializeResponse()
virtual ~Response_Residual()
Response_Residual(const std::string &responseName, const Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > &lof)
Teuchos::RCP< Thyra::LinearOpBase< panzer::Traits::RealType > > ghostedHessian_
Teuchos::RCP< Thyra::LinearOpBase< panzer::Traits::RealType > > hessian_
virtual void scatterResponse()
Prepare the response for access by the user (do global communication)
Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > linObjFactory_
Teuchos::RCP< Thyra::LinearOpBase< panzer::Traits::RealType > > jacobian_
Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > linObjFactory_
virtual void initializeResponse()
Teuchos::RCP< Thyra::LinearOpBase< panzer::Traits::RealType > > ghostedJacobian_
Response_Residual(const std::string &responseName, const Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > &lof)
virtual ~Response_Residual()
virtual void scatterResponse()
Prepare the response for access by the user (do global communication)
Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > linObjFactory_
virtual void initializeResponse()
Response_Residual(const std::string &responseName, const Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > &lof)
Teuchos::RCP< Thyra::VectorBase< panzer::Traits::RealType > > ghostedResidual_
Teuchos::RCP< Thyra::VectorBase< panzer::Traits::RealType > > residual_
virtual void scatterResponse()
Prepare the response for access by the user (do global communication)
virtual ~Response_Residual()
Response_Residual(const std::string &responseName, const Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > &)
virtual void initializeResponse()
virtual void scatterResponse()
Prepare the response for access by the user (do global communication)
virtual ~Response_Residual()