Panzer  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
panzer::Response_Probe< EvalT > Class Template Reference

#include <Panzer_Response_Probe.hpp>

Inheritance diagram for panzer::Response_Probe< EvalT >:
Inheritance graph
[legend]

Public Types

typedef EvalT::ScalarT ScalarT
 

Public Member Functions

 Response_Probe (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 Epetra_MapgetMap () const
 Get the Epetra_Map for this response, map is constructed lazily. More...
 
void setVector (const Teuchos::RCP< Epetra_Vector > &destVec)
 
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
 
bool have_probe
 

Private Member Functions

void setSolnVectorSpace (const Teuchos::RCP< const Thyra::VectorSpaceBase< double > > &soln_vs)
 Set solution vector space. More...
 
 Response_Probe ()
 
 Response_Probe (const Response_Probe &)
 
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< LinearObjContaineruniqueContainer_
 
Teuchos::RCP< LinearObjContainerghostedContainer_
 

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...
 
Epetra_VectorgetEpetraVector () const
 Access the epetra vector. More...
 
Thyra::ArrayRCP< double > getThyraVector () const
 Access the thyra vector. More...
 
Teuchos::RCP
< Thyra::MultiVectorBase
< double > > 
getThyraMultiVector () const
 Access the thyra MultiVector. More...
 

Detailed Description

template<typename EvalT>
class panzer::Response_Probe< EvalT >

This class provides a response storage for the value of the solution at a point in space/time.

Definition at line 73 of file Panzer_Response_Probe.hpp.

Member Typedef Documentation

template<typename EvalT >
typedef EvalT::ScalarT panzer::Response_Probe< EvalT >::ScalarT

Definition at line 76 of file Panzer_Response_Probe.hpp.

Constructor & Destructor Documentation

template<typename EvalT >
panzer::Response_Probe< EvalT >::Response_Probe ( const std::string &  responseName,
MPI_Comm  comm,
const Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > &  linObjFact = Teuchos::null 
)

Definition at line 58 of file Panzer_Response_Probe_impl.hpp.

template<typename EvalT >
panzer::Response_Probe< EvalT >::Response_Probe ( )
private
template<typename EvalT >
panzer::Response_Probe< EvalT >::Response_Probe ( const Response_Probe< EvalT > &  )
private

Member Function Documentation

template<typename EvalT >
void panzer::Response_Probe< EvalT >::scatterResponse ( )
virtual

This simply does global summation, then shoves the result into a vector.

Implements panzer::ResponseBase.

Definition at line 88 of file Panzer_Response_Probe_impl.hpp.

template<typename EvalT >
void panzer::Response_Probe< EvalT >::initializeResponse ( )
virtual

Implements panzer::ResponseBase.

Definition at line 78 of file Panzer_Response_Probe_impl.hpp.

template<typename EvalT >
virtual std::size_t panzer::Response_Probe< EvalT >::localSizeRequired ( ) const
inlinevirtual

What is the number of values you need locally.

Implements panzer::ResponseMESupport_Default< EvalT >.

Definition at line 92 of file Panzer_Response_Probe.hpp.

template<typename EvalT >
virtual bool panzer::Response_Probe< EvalT >::vectorIsDistributed ( ) const
inlinevirtual

Is the vector distributed (or replicated)

Implements panzer::ResponseMESupport_Default< EvalT >.

Definition at line 95 of file Panzer_Response_Probe.hpp.

template<typename EvalT >
Teuchos::RCP<Thyra::VectorBase<double> > panzer::Response_Probe< EvalT >::getGhostedVector ( ) const
inline

Get ghosted responses (this will be filled by the evaluator)

Definition at line 98 of file Panzer_Response_Probe.hpp.

template<typename EvalT >
void panzer::Response_Probe< EvalT >::adjustForDirichletConditions ( const GlobalEvaluationData localBCRows,
const GlobalEvaluationData globalBCRows 
)
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.

Parameters
[in]localBCRowsLinear 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]globalBCRowsLinear 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 215 of file Panzer_Response_Probe_impl.hpp.

template<typename EvalT >
void panzer::Response_Probe< EvalT >::setSolnVectorSpace ( const Teuchos::RCP< const Thyra::VectorSpaceBase< double > > &  soln_vs)
private

Set solution vector space.

Definition at line 192 of file Panzer_Response_Probe_impl.hpp.

template<>
void panzer::Response_Probe< panzer::Traits::Jacobian >::scatterResponse ( )
virtual

Prepare the response for access by the user (do global communication)

Implements panzer::ResponseBase.

Definition at line 119 of file Panzer_Response_Probe_impl.hpp.

template<>
void panzer::Response_Probe< panzer::Traits::Hessian >::scatterResponse ( )
virtual

Prepare the response for access by the user (do global communication)

Implements panzer::ResponseBase.

Definition at line 136 of file Panzer_Response_Probe_impl.hpp.

template<>
void panzer::Response_Probe< panzer::Traits::Tangent >::scatterResponse ( )
virtual

Prepare the response for access by the user (do global communication)

Implements panzer::ResponseBase.

Definition at line 153 of file Panzer_Response_Probe_impl.hpp.

template<>
void panzer::Response_Probe< panzer::Traits::Jacobian >::setSolnVectorSpace ( const Teuchos::RCP< const Thyra::VectorSpaceBase< double > > &  soln_vs)
private

Definition at line 197 of file Panzer_Response_Probe_impl.hpp.

template<>
void panzer::Response_Probe< panzer::Traits::Hessian >::setSolnVectorSpace ( const Teuchos::RCP< const Thyra::VectorSpaceBase< double > > &  soln_vs)
private

Definition at line 206 of file Panzer_Response_Probe_impl.hpp.

template<>
void panzer::Response_Probe< panzer::Traits::Jacobian >::adjustForDirichletConditions ( const GlobalEvaluationData localBCRows,
const GlobalEvaluationData globalBCRows 
)
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.

Parameters
[in]localBCRowsLinear 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]globalBCRowsLinear 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 220 of file Panzer_Response_Probe_impl.hpp.

template<>
void panzer::Response_Probe< panzer::Traits::Hessian >::adjustForDirichletConditions ( const GlobalEvaluationData localBCRows,
const GlobalEvaluationData globalBCRows 
)
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.

Parameters
[in]localBCRowsLinear 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]globalBCRowsLinear 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 231 of file Panzer_Response_Probe_impl.hpp.

Member Data Documentation

template<typename EvalT >
ScalarT panzer::Response_Probe< EvalT >::value

Definition at line 78 of file Panzer_Response_Probe.hpp.

template<typename EvalT >
bool panzer::Response_Probe< EvalT >::have_probe

Definition at line 79 of file Panzer_Response_Probe.hpp.

template<typename EvalT >
Teuchos::RCP<const panzer::LinearObjFactory<panzer::Traits> > panzer::Response_Probe< EvalT >::linObjFactory_
private

Definition at line 111 of file Panzer_Response_Probe.hpp.

template<typename EvalT >
Teuchos::RCP<const panzer::ThyraObjFactory<double> > panzer::Response_Probe< EvalT >::thyraObjFactory_
private

Definition at line 112 of file Panzer_Response_Probe.hpp.

template<typename EvalT >
Teuchos::RCP<LinearObjContainer> panzer::Response_Probe< EvalT >::uniqueContainer_
private

Definition at line 114 of file Panzer_Response_Probe.hpp.

template<typename EvalT >
Teuchos::RCP<LinearObjContainer> panzer::Response_Probe< EvalT >::ghostedContainer_
private

Definition at line 115 of file Panzer_Response_Probe.hpp.


The documentation for this class was generated from the following files: