43#ifndef __Panzer_Response_Residual_hpp__
44#define __Panzer_Response_Residual_hpp__
48#include "Teuchos_RCP.hpp"
50#include "Thyra_VectorBase.hpp"
51#include "Thyra_LinearOpBase.hpp"
63template <
typename EvalT>
83 Teuchos::RCP<const panzer::LinearObjFactory<panzer::Traits> >
linObjFactory_;
85 Teuchos::RCP<Thyra::VectorBase<panzer::Traits::RealType> >
residual_;
93 , linObjFactory_(lof) {}
99 Teuchos::RCP<Thyra::VectorBase<panzer::Traits::RealType> > getGhostedResidual()
const;
104 Teuchos::RCP<Thyra::VectorBase<panzer::Traits::RealType> > getResidual()
const;
114 Teuchos::RCP<Thyra::VectorBase<panzer::Traits::RealType> > allocateResidualVector()
const;
132 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> >
jacobian_;
140 , linObjFactory_(lof) {}
146 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> > getGhostedJacobian()
const;
151 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> > getJacobian()
const;
161 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> > allocateJacobian()
const;
168#ifdef Panzer_BUILD_HESSIAN_SUPPORT
180 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> >
hessian_;
188 , linObjFactory_(lof) {}
194 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> > getGhostedHessian()
const;
199 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> > getHessian()
const;
209 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()