|
Panzer Version of the Day
|
#include <Panzer_ExplicitModelEvaluator.hpp>

Private functions overridden from ModelEvaulatorDelegatorBase. | |
| bool | constantMassMatrix_ |
| Is the mass matrix constant. | |
| bool | massLumping_ |
| Use mass lumping, or a full solve. | |
| Teuchos::RCP< const panzer::ModelEvaluator< Scalar > > | panzerModel_ |
| Access to the panzer model evaluator pointer (thyra version) | |
| Teuchos::RCP< Thyra::LinearOpBase< Scalar > > | mass_ |
| Teuchos::RCP< const Thyra::LinearOpBase< Scalar > > | invMassMatrix_ |
| Teuchos::RCP< Thyra::VectorBase< Scalar > > | scrap_f_ |
| Teuchos::RCP< Thyra::VectorBase< Scalar > > | zero_ |
| Thyra::ModelEvaluatorBase::InArgs< Scalar > | prototypeInArgs_ |
| Thyra::ModelEvaluatorBase::OutArgs< Scalar > | prototypeOutArgs_ |
| void | evalModelImpl (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const |
| Evaluation of model, applies the mass matrix to the RHS. | |
| void | setOneTimeDirichletBeta (double beta, const Thyra::ModelEvaluator< Scalar > &me) const |
| ExplicitModelEvaluator () | |
Constructors/Initializers/Accessors | |
| ExplicitModelEvaluator (const Teuchos::RCP< Thyra::ModelEvaluator< Scalar > > &model, bool constantMassMatrix, bool useLumpedMass, bool applyMassInverse=true) | |
| Thyra::ModelEvaluatorBase::InArgs< Scalar > | getNominalValues () const |
| Build the nominal values, modifies the underlying models in args slightly. | |
| Thyra::ModelEvaluatorBase::InArgs< Scalar > | createInArgs () const |
| Build the in args, modifies the underlying models in args slightly. | |
| Thyra::ModelEvaluatorBase::OutArgs< Scalar > | createOutArgs () const |
| Build the out args, modifies the underlying models in args slightly. | |
| Teuchos::RCP< panzer::ModelEvaluator< Scalar > > | getPanzerUnderlyingModel () |
| Get the underlying panzer::ModelEvaluator. | |
| virtual void | applyInverseMassMatrix (const Teuchos::RCP< Thyra::MultiVectorBase< Scalar > > input, const Teuchos::RCP< Thyra::MultiVectorBase< Scalar > > output) const |
| virtual void | applyMassMatrix (const Teuchos::RCP< Thyra::MultiVectorBase< Scalar > > input, const Teuchos::RCP< Thyra::MultiVectorBase< Scalar > > output) const |
| void | applyDirichletBCs (const Teuchos::RCP< Thyra::VectorBase< Scalar > > &x, const Teuchos::RCP< Thyra::VectorBase< Scalar > > &f) const |
| void | buildInverseMassMatrix (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs) const |
| void | buildArgsPrototypes () |
| Build prototype in/out args. | |
Additional Inherited Members | |
Public Member Functions inherited from panzer::MassMatrixModelEvaluator< Scalar > | |
| void | setApplyMassInverse (const bool applyMassInverse) const |
Protected Attributes inherited from panzer::MassMatrixModelEvaluator< Scalar > | |
| bool | applyMassInverse_ |
| Apply mass matrix inverse within the evaluator. | |
This is a model evaluator decorator that will take an implicit model evaluator and make it explicit. If the model evaluator is not a panzer model evaluator then there may be problems with constructing the dirichlet conditions in the mass matrix. However, for a pzner model evaluator this has been taken care of.
Definition at line 35 of file Panzer_ExplicitModelEvaluator.hpp.
| panzer::ExplicitModelEvaluator< Scalar >::ExplicitModelEvaluator | ( | const Teuchos::RCP< Thyra::ModelEvaluator< Scalar > > & | model, |
| bool | constantMassMatrix, | ||
| bool | useLumpedMass, | ||
| bool | applyMassInverse = true |
||
| ) |
Take in a Thyra model evaluator and then turn it into an explicit model evaluator. Assume the mass matrix is constant unless the user specifies otherwise.
Definition at line 27 of file Panzer_ExplicitModelEvaluator_impl.hpp.
|
private |
| Thyra::ModelEvaluatorBase::InArgs< Scalar > panzer::ExplicitModelEvaluator< Scalar >::getNominalValues | ( | ) | const |
Build the nominal values, modifies the underlying models in args slightly.
Definition at line 56 of file Panzer_ExplicitModelEvaluator_impl.hpp.
| Thyra::ModelEvaluatorBase::InArgs< Scalar > panzer::ExplicitModelEvaluator< Scalar >::createInArgs | ( | ) | const |
Build the in args, modifies the underlying models in args slightly.
Definition at line 68 of file Panzer_ExplicitModelEvaluator_impl.hpp.
| Thyra::ModelEvaluatorBase::OutArgs< Scalar > panzer::ExplicitModelEvaluator< Scalar >::createOutArgs | ( | ) | const |
Build the out args, modifies the underlying models in args slightly.
Definition at line 75 of file Panzer_ExplicitModelEvaluator_impl.hpp.
| Teuchos::RCP< panzer::ModelEvaluator< Scalar > > panzer::ExplicitModelEvaluator< Scalar >::getPanzerUnderlyingModel | ( | ) |
Get the underlying panzer::ModelEvaluator.
Definition at line 82 of file Panzer_ExplicitModelEvaluator_impl.hpp.
|
inlinevirtual |
Implements panzer::MassMatrixModelEvaluator< Scalar >.
Definition at line 65 of file Panzer_ExplicitModelEvaluator.hpp.
|
inlinevirtual |
Implements panzer::MassMatrixModelEvaluator< Scalar >.
Definition at line 70 of file Panzer_ExplicitModelEvaluator.hpp.
|
inlineprivate |
Apply the dirichlet boundary conditions to the vector "f" using the "x" values as the current solution.
Definition at line 80 of file Panzer_ExplicitModelEvaluator.hpp.
|
private |
This method builds the inverse mass matrix from the underlying model evaluator. Not that this is constant method that modifies a mutable member.
Definition at line 136 of file Panzer_ExplicitModelEvaluator_impl.hpp.
|
private |
Build prototype in/out args.
Definition at line 205 of file Panzer_ExplicitModelEvaluator_impl.hpp.
|
private |
Evaluation of model, applies the mass matrix to the RHS.
Definition at line 89 of file Panzer_ExplicitModelEvaluator_impl.hpp.
|
private |
Set one time dirichlet beta using the underlying model evaluator. If this model evaluator is a MEDelegator then this method is called recursively, until the call succeeds (finding a panzer::ME) or fails because a delegator is no longer used. If it fails an exception is thrown. Note: The me used in this recursion is constant. This is consistent with the one time dirichlet beta call in the model evaluators.
Definition at line 225 of file Panzer_ExplicitModelEvaluator_impl.hpp.
|
private |
Is the mass matrix constant.
Definition at line 118 of file Panzer_ExplicitModelEvaluator.hpp.
|
private |
Use mass lumping, or a full solve.
Definition at line 121 of file Panzer_ExplicitModelEvaluator.hpp.
|
private |
Access to the panzer model evaluator pointer (thyra version)
Definition at line 124 of file Panzer_ExplicitModelEvaluator.hpp.
|
mutableprivate |
Definition at line 131 of file Panzer_ExplicitModelEvaluator.hpp.
|
mutableprivate |
Definition at line 132 of file Panzer_ExplicitModelEvaluator.hpp.
|
mutableprivate |
Definition at line 133 of file Panzer_ExplicitModelEvaluator.hpp.
|
mutableprivate |
Definition at line 134 of file Panzer_ExplicitModelEvaluator.hpp.
|
private |
Definition at line 137 of file Panzer_ExplicitModelEvaluator.hpp.
|
private |
Definition at line 138 of file Panzer_ExplicitModelEvaluator.hpp.