43 #ifndef __Panzer_ResponseMESupport_Default_impl_hpp__
44 #define __Panzer_ResponseMESupport_Default_impl_hpp__
48 #ifdef PANZER_HAVE_EPETRA_STACK
49 template <
typename EvalT>
51 getEpetraVector()
const
59 template <
typename EvalT>
66 Teuchos::rcp_dynamic_cast<Thyra::SpmdVectorBase<double> >(tVector_,
true)->getNonconstLocalData(Teuchos::outArg(data));
71 #ifdef PANZER_HAVE_EPETRA_STACK
72 template <
typename EvalT>
77 "Reponse field \"" << this->getName() <<
"\" has previously been initialized as a "
78 "Thyra object, now trying to initalize as a Epetra! Error!");
81 if(map_==Teuchos::null) {
82 if(this->vectorIsDistributed())
91 template <
typename EvalT>
96 "Reponse field \"" << this->getName() <<
"\" has previously been initialized as a "
97 "Thyra object, now trying to initalize as a Epetra! Error!");
105 template <
typename EvalT>
110 "Reponse field \"" << this->getName() <<
"\" has previously been initialized as an "
111 "Epetra object, now trying to initalize as a Thyra object! Error!");
114 if(vSpace_==Teuchos::null) {
115 if(this->vectorIsDistributed())
116 vSpace_ = Thyra::defaultSpmdVectorSpace<double>(tComm_,this->localSizeRequired(),-1);
118 vSpace_ = Thyra::locallyReplicatedDefaultSpmdVectorSpace<double>(tComm_,this->localSizeRequired());
124 template <
typename EvalT>
129 "Reponse field \"" << this->getName() <<
"\" has previously been initialized as an "
130 "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)