43 #ifndef __Panzer_Response_ExtremeValue_hpp__ 
   44 #define __Panzer_Response_ExtremeValue_hpp__ 
   53 #include "Thyra_VectorBase.hpp" 
   54 #include "Thyra_VectorSpaceBase.hpp" 
   56 #include "Epetra_Map.h" 
   57 #include "Epetra_Vector.h" 
   58 #include "Epetra_MpiComm.h" 
   73 template <
typename EvalT>
 
   94        using Teuchos::rcp_dynamic_cast;
 
  106        value = -std::numeric_limits<ScalarT>::max();
 
  108        value =  std::numeric_limits<ScalarT>::max();
 
Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > linObjFactory_
 
Teuchos::RCP< const panzer::ThyraObjFactory< double > > thyraObjFactory_
 
Teuchos::RCP< Thyra::VectorBase< double > > getGhostedVector() const 
Get ghosted responses (this will be filled by the evaluator) 
 
virtual void scatterResponse()
This simply does global summation, then shoves the result into a vector. 
 
Response_ExtremeValue(const std::string &responseName, MPI_Comm comm, bool useMax, const Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > &linObjFact=Teuchos::null)
 
ScalarT value
provide direct access, this thing is pretty simple 
 
virtual std::size_t localSizeRequired() const 
What is the number of values you need locally. 
 
void setSolnVectorSpace(const Teuchos::RCP< const Thyra::VectorSpaceBase< double > > &soln_vs)
Set solution vector space. 
 
Teuchos::RCP< LinearObjContainer > uniqueContainer_
 
virtual void initializeResponse()
 
Teuchos::RCP< LinearObjContainer > ghostedContainer_
 
void adjustForDirichletConditions(const GlobalEvaluationData &localBCRows, const GlobalEvaluationData &globalBCRows)
 
virtual bool vectorIsDistributed() const 
Is the vector distributed (or replicated)