6 #include "Thyra_VectorSpaceBase.hpp" 13 Teuchos::RCP<Thyra::VectorBase<panzer::Traits::RealType> >
18 using Teuchos::rcp_dynamic_cast;
23 if(ghostedResidual_!=Teuchos::null)
24 return ghostedResidual_;
27 RCP<LinearObjContainer> loc = linObjFactory_->buildGhostedLinearObjContainer();
30 RCP<TOC> th_loc = rcp_dynamic_cast<TOC>(loc);
34 Teuchos::RCP<Thyra::VectorBase<panzer::Traits::RealType> >
48 Teuchos::RCP<Thyra::VectorBase<panzer::Traits::RealType> >
53 using Teuchos::rcp_dynamic_cast;
57 RCP<const ObjFactory> objFactory = rcp_dynamic_cast<
const ObjFactory>(linObjFactory_);
58 return Thyra::createMember(objFactory->getThyraRangeSpace());
64 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> >
69 using Teuchos::rcp_dynamic_cast;
74 if(ghostedJacobian_!=Teuchos::null)
75 return ghostedJacobian_;
78 RCP<LinearObjContainer> loc = linObjFactory_->buildGhostedLinearObjContainer();
81 RCP<TOC> th_loc = rcp_dynamic_cast<TOC>(loc);
85 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> >
99 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> >
104 using Teuchos::rcp_dynamic_cast;
108 RCP<const ObjFactory> objFactory = rcp_dynamic_cast<
const ObjFactory>(linObjFactory_);
115 #ifdef Panzer_BUILD_HESSIAN_SUPPORT 117 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> >
122 using Teuchos::rcp_dynamic_cast;
127 if(ghostedHessian_!=Teuchos::null)
128 return ghostedHessian_;
131 RCP<LinearObjContainer> loc = linObjFactory_->buildGhostedLinearObjContainer();
134 RCP<TOC> th_loc = rcp_dynamic_cast<TOC>(loc);
138 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> >
139 Response_Residual<panzer::Traits::Hessian>::
146 Response_Residual<panzer::Traits::Hessian>::
152 Teuchos::RCP<Thyra::LinearOpBase<panzer::Traits::RealType> >
153 Response_Residual<panzer::Traits::Hessian>::
154 allocateHessian()
const 157 using Teuchos::rcp_dynamic_cast;
159 typedef ThyraObjFactory<panzer::Traits::RealType> ObjFactory;
161 RCP<const ObjFactory> objFactory = rcp_dynamic_cast<
const ObjFactory>(linObjFactory_);
162 return objFactory->getThyraMatrix();
Teuchos::RCP< Thyra::VectorBase< panzer::Traits::RealType > > getGhostedResidual() const
virtual Teuchos::RCP< Thyra::VectorBase< ScalarT > > get_f_th() const =0
virtual Teuchos::RCP< Thyra::LinearOpBase< ScalarT > > get_A_th() const =0
virtual Teuchos::RCP< Thyra::LinearOpBase< ScalarT > > getThyraMatrix() const =0
Get a matrix operator.