11 #ifndef __Panzer_ResponseMESupport_Default_impl_hpp__
12 #define __Panzer_ResponseMESupport_Default_impl_hpp__
16 #ifdef PANZER_HAVE_EPETRA_STACK
17 template <
typename EvalT>
19 getEpetraVector()
const
27 template <
typename EvalT>
34 Teuchos::rcp_dynamic_cast<Thyra::SpmdVectorBase<double> >(tVector_,
true)->getNonconstLocalData(Teuchos::outArg(data));
39 #ifdef PANZER_HAVE_EPETRA_STACK
40 template <
typename EvalT>
45 "Reponse field \"" << this->getName() <<
"\" has previously been initialized as a "
46 "Thyra object, now trying to initalize as a Epetra! Error!");
49 if(map_==Teuchos::null) {
50 if(this->vectorIsDistributed())
59 template <
typename EvalT>
64 "Reponse field \"" << this->getName() <<
"\" has previously been initialized as a "
65 "Thyra object, now trying to initalize as a Epetra! Error!");
73 template <
typename EvalT>
78 "Reponse field \"" << this->getName() <<
"\" has previously been initialized as an "
79 "Epetra object, now trying to initalize as a Thyra object! Error!");
82 if(vSpace_==Teuchos::null) {
83 if(this->vectorIsDistributed())
84 vSpace_ = Thyra::defaultSpmdVectorSpace<double>(tComm_,this->localSizeRequired(),-1);
86 vSpace_ = Thyra::locallyReplicatedDefaultSpmdVectorSpace<double>(tComm_,this->localSizeRequired());
92 template <
typename EvalT>
97 "Reponse field \"" << this->getName() <<
"\" has previously been initialized as an "
98 "Epetra object, now trying to initalize as a Thyra object! Error!");
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
Thyra::ArrayRCP< double > getThyraVector() const
Access the thyra vector.
Teuchos::RCP< const Thyra::VectorSpaceBase< double > > getVectorSpace() const
Get the vector space for this response, vector space is constructed lazily.
#define TEUCHOS_ASSERT(assertion_test)
void setVector(const Teuchos::RCP< Thyra::VectorBase< double > > &destVec)