11#ifndef __Panzer_Response_Probe_hpp__
12#define __Panzer_Response_Probe_hpp__
19#include "Teuchos_RCP.hpp"
21#include "Thyra_VectorBase.hpp"
22#include "Thyra_VectorSpaceBase.hpp"
24#include "PanzerDiscFE_config.hpp"
25#ifdef PANZER_HAVE_EPETRA_STACK
26#include "Epetra_Map.h"
27#include "Epetra_Vector.h"
28#include "Epetra_MpiComm.h"
43template <
typename EvalT>
70 {
return Teuchos::rcp_dynamic_cast<const ThyraObjContainer<double> >(
ghostedContainer_)->get_x_th(); }
82 Teuchos::RCP<const panzer::LinearObjFactory<panzer::Traits> >
linObjFactory_;
virtual bool vectorIsDistributed() const
Is the vector distributed (or replicated)
Teuchos::RCP< const panzer::ThyraObjFactory< double > > thyraObjFactory_
virtual std::size_t localSizeRequired() const
What is the number of values you need locally.
Response_Probe(const Response_Probe &)
Teuchos::RCP< LinearObjContainer > ghostedContainer_
Teuchos::RCP< Thyra::VectorBase< double > > getGhostedVector() const
Get ghosted responses (this will be filled by the evaluator)
virtual void initializeResponse()
void setSolnVectorSpace(const Teuchos::RCP< const Thyra::VectorSpaceBase< double > > &soln_vs)
Set solution vector space.
Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > linObjFactory_
Teuchos::RCP< LinearObjContainer > uniqueContainer_
void adjustForDirichletConditions(const GlobalEvaluationData &localBCRows, const GlobalEvaluationData &globalBCRows)
virtual void scatterResponse()
This simply does global summation, then shoves the result into a vector.