Panzer
Version of the Day
|
#include <Panzer_Response_Functional.hpp>
Public Types | |
typedef EvalT::ScalarT | ScalarT |
Public Member Functions | |
Response_Functional (const std::string &responseName, MPI_Comm comm, const Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > &linObjFact=Teuchos::null) | |
virtual void | scatterResponse () |
This simply does global summation, then shoves the result into a vector. More... | |
virtual void | initializeResponse () |
virtual std::size_t | localSizeRequired () const |
What is the number of values you need locally. More... | |
virtual bool | vectorIsDistributed () const |
Is the vector distributed (or replicated) More... | |
Teuchos::RCP < Thyra::VectorBase< double > > | getGhostedVector () const |
Get ghosted responses (this will be filled by the evaluator) More... | |
void | adjustForDirichletConditions (const GlobalEvaluationData &localBCRows, const GlobalEvaluationData &globalBCRows) |
template<> | |
void | scatterResponse () |
Prepare the response for access by the user (do global communication) More... | |
template<> | |
void | scatterResponse () |
Prepare the response for access by the user (do global communication) More... | |
template<> | |
void | scatterResponse () |
Prepare the response for access by the user (do global communication) More... | |
template<> | |
void | adjustForDirichletConditions (const GlobalEvaluationData &localBCRows, const GlobalEvaluationData &globalBCRows) |
template<> | |
void | adjustForDirichletConditions (const GlobalEvaluationData &localBCRows, const GlobalEvaluationData &globalBCRows) |
Public Member Functions inherited from panzer::ResponseMESupport_Default< EvalT > | |
ResponseMESupport_Default (const std::string &responseName, MPI_Comm comm) | |
virtual | ~ResponseMESupport_Default () |
Teuchos::RCP< const Thyra::VectorSpaceBase< double > > | getVectorSpace () const |
Get the vector space for this response, vector space is constructed lazily. More... | |
void | setVector (const Teuchos::RCP< Thyra::VectorBase< double > > &destVec) |
void | setVectorSpace (Teuchos::RCP< const Thyra::VectorSpaceBase< double > > vs) |
set the vector space for this response More... | |
Teuchos::RCP < Thyra::VectorBase< double > > | getVector () const |
Access the response vector. More... | |
Public Member Functions inherited from panzer::ResponseMESupportBase< EvalT > | |
ResponseMESupportBase (const std::string &responseName) | |
virtual | ~ResponseMESupportBase () |
Public Member Functions inherited from panzer::ResponseBase | |
ResponseBase (const std::string &responseName) | |
virtual | ~ResponseBase () |
std::string | getName () const |
std::string | getLookupName () const |
virtual void | ghostToGlobal (int) |
Inherited from GlobalEvaluationData,. More... | |
virtual void | initializeData () |
Public Member Functions inherited from panzer::GlobalEvaluationData_Default | |
GlobalEvaluationData_Default () | |
GlobalEvaluationData_Default (const GlobalEvaluationData_Default &s) | |
virtual void | globalToGhost (int) |
void | setRequiresDirichletAdjustment (bool b) |
bool | requiresDirichletAdjustment () const |
Public Member Functions inherited from panzer::GlobalEvaluationData | |
virtual | ~GlobalEvaluationData ()=0 |
virtual void | print (std::ostream &os) const |
Diagnostic function for determinning what's in this object. More... | |
Public Attributes | |
ScalarT | value |
provide direct access, this thing is pretty simple More... | |
Private Member Functions | |
void | setSolnVectorSpace (const Teuchos::RCP< const Thyra::VectorSpaceBase< double > > &soln_vs) |
Set solution vector space. More... | |
Response_Functional () | |
Response_Functional (const Response_Functional &) | |
template<> | |
void | setSolnVectorSpace (const Teuchos::RCP< const Thyra::VectorSpaceBase< double > > &soln_vs) |
template<> | |
void | setSolnVectorSpace (const Teuchos::RCP< const Thyra::VectorSpaceBase< double > > &soln_vs) |
Private Attributes | |
Teuchos::RCP< const panzer::LinearObjFactory < panzer::Traits > > | linObjFactory_ |
Teuchos::RCP< const panzer::ThyraObjFactory < double > > | thyraObjFactory_ |
Teuchos::RCP< LinearObjContainer > | uniqueContainer_ |
Teuchos::RCP< LinearObjContainer > | ghostedContainer_ |
Additional Inherited Members | |
Static Public Member Functions inherited from panzer::ResponseBase | |
static std::string | buildLookupName (const std::string &responseName) |
Protected Member Functions inherited from panzer::ResponseMESupport_Default< EvalT > | |
Teuchos::RCP< const Teuchos::Comm< Thyra::Ordinal > > | getComm () const |
Get the teuchos comm object. More... | |
bool | useEpetra () const |
Is Epetra the right vector. More... | |
bool | useThyra () const |
Is Thyra the right vector. More... | |
Thyra::ArrayRCP< double > | getThyraVector () const |
Access the thyra vector. More... | |
Teuchos::RCP < Thyra::MultiVectorBase < double > > | getThyraMultiVector () const |
Access the thyra MultiVector. More... | |
This class provides a response storage for simple functionals of the solution (i.e. scalar values).
Definition at line 45 of file Panzer_Response_Functional.hpp.
typedef EvalT::ScalarT panzer::Response_Functional< EvalT >::ScalarT |
Definition at line 48 of file Panzer_Response_Functional.hpp.
|
inline |
Definition at line 50 of file Panzer_Response_Functional.hpp.
|
private |
|
private |
|
virtual |
This simply does global summation, then shoves the result into a vector.
Implements panzer::ResponseBase.
Definition at line 29 of file Panzer_Response_Functional_impl.hpp.
|
inlinevirtual |
Implements panzer::ResponseBase.
Definition at line 75 of file Panzer_Response_Functional.hpp.
|
inlinevirtual |
What is the number of values you need locally.
Implements panzer::ResponseMESupport_Default< EvalT >.
Definition at line 81 of file Panzer_Response_Functional.hpp.
|
inlinevirtual |
Is the vector distributed (or replicated)
Implements panzer::ResponseMESupport_Default< EvalT >.
Definition at line 84 of file Panzer_Response_Functional.hpp.
|
inline |
Get ghosted responses (this will be filled by the evaluator)
Definition at line 87 of file Panzer_Response_Functional.hpp.
|
virtual |
Adjust the container for applied dirichlet conditions. The adjustment considers if a boundary condition was set globally and locally and based on that result adjusts the container so that when the ghost to global operation is correct across processors.
[in] | localBCRows | Linear object container uses the X vector to indicate locally set dirichlet conditions. The format is if an entry of the vector is nonzero then it was set as a dirichlet condition. |
[in] | globalBCRows | Linear object container uses the X vector to indicate globally set dirichlet conditions. The format is if an entry of the vector is nonzero then it was set as a dirichlet condition. |
Implements panzer::GlobalEvaluationData_BCAdjustment.
Definition at line 160 of file Panzer_Response_Functional_impl.hpp.
|
private |
Set solution vector space.
Definition at line 137 of file Panzer_Response_Functional_impl.hpp.
|
virtual |
Prepare the response for access by the user (do global communication)
Implements panzer::ResponseBase.
Definition at line 57 of file Panzer_Response_Functional_impl.hpp.
|
virtual |
Prepare the response for access by the user (do global communication)
Implements panzer::ResponseBase.
Definition at line 78 of file Panzer_Response_Functional_impl.hpp.
|
virtual |
Prepare the response for access by the user (do global communication)
Implements panzer::ResponseBase.
Definition at line 99 of file Panzer_Response_Functional_impl.hpp.
|
private |
Definition at line 142 of file Panzer_Response_Functional_impl.hpp.
|
private |
Definition at line 151 of file Panzer_Response_Functional_impl.hpp.
|
virtual |
Adjust the container for applied dirichlet conditions. The adjustment considers if a boundary condition was set globally and locally and based on that result adjusts the container so that when the ghost to global operation is correct across processors.
[in] | localBCRows | Linear object container uses the X vector to indicate locally set dirichlet conditions. The format is if an entry of the vector is nonzero then it was set as a dirichlet condition. |
[in] | globalBCRows | Linear object container uses the X vector to indicate globally set dirichlet conditions. The format is if an entry of the vector is nonzero then it was set as a dirichlet condition. |
Implements panzer::GlobalEvaluationData_BCAdjustment.
Definition at line 165 of file Panzer_Response_Functional_impl.hpp.
|
virtual |
Adjust the container for applied dirichlet conditions. The adjustment considers if a boundary condition was set globally and locally and based on that result adjusts the container so that when the ghost to global operation is correct across processors.
[in] | localBCRows | Linear object container uses the X vector to indicate locally set dirichlet conditions. The format is if an entry of the vector is nonzero then it was set as a dirichlet condition. |
[in] | globalBCRows | Linear object container uses the X vector to indicate globally set dirichlet conditions. The format is if an entry of the vector is nonzero then it was set as a dirichlet condition. |
Implements panzer::GlobalEvaluationData_BCAdjustment.
Definition at line 176 of file Panzer_Response_Functional_impl.hpp.
ScalarT panzer::Response_Functional< EvalT >::value |
provide direct access, this thing is pretty simple
Definition at line 70 of file Panzer_Response_Functional.hpp.
|
private |
Definition at line 100 of file Panzer_Response_Functional.hpp.
|
private |
Definition at line 101 of file Panzer_Response_Functional.hpp.
|
private |
Definition at line 103 of file Panzer_Response_Functional.hpp.
|
private |
Definition at line 104 of file Panzer_Response_Functional.hpp.