Panzer
Version of the Day
|
#include <Panzer_EpetraLinearObjFactory_decl.hpp>
Public Member Functions | |
EpetraLinearObjFactory (const Teuchos::RCP< const Epetra_Comm > &comm, const Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, int > > &gidProvider, bool useDiscreteAdjoint=false) | |
EpetraLinearObjFactory (const Teuchos::RCP< const Teuchos::MpiComm< int > > &comm, const Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, int > > &gidProvider, bool useDiscreteAdjoint=false) | |
EpetraLinearObjFactory (const Teuchos::RCP< const Teuchos::MpiComm< int > > &comm, const Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, int > > &rowProvider, const Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, int > > &colProvider, bool useDiscreteAdjoint=false) | |
EpetraLinearObjFactory (const Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, int > > &rowProvider) | |
virtual | ~EpetraLinearObjFactory () |
virtual void | readVector (const std::string &identifier, LinearObjContainer &loc, int id) const |
virtual void | writeVector (const std::string &identifier, const LinearObjContainer &loc, int id) const |
virtual Teuchos::RCP < LinearObjContainer > | buildLinearObjContainer () const |
virtual Teuchos::RCP < LinearObjContainer > | buildPrimitiveLinearObjContainer () const |
virtual Teuchos::RCP < LinearObjContainer > | buildGhostedLinearObjContainer () const |
virtual Teuchos::RCP < LinearObjContainer > | buildPrimitiveGhostedLinearObjContainer () const |
virtual void | globalToGhostContainer (const LinearObjContainer &container, LinearObjContainer &ghostContainer, int) const |
virtual void | ghostToGlobalContainer (const LinearObjContainer &ghostContainer, LinearObjContainer &container, int) const |
virtual void | adjustForDirichletConditions (const LinearObjContainer &localBCRows, const LinearObjContainer &globalBCRows, LinearObjContainer &ghostedObjs, bool zeroVectorRows=false, bool adjustX=false) const |
virtual void | applyDirichletBCs (const LinearObjContainer &counter, LinearObjContainer &result) const |
virtual Teuchos::MpiComm< int > | getComm () const |
Teuchos::RCP< const Thyra::VectorSpaceBase< double > > | getThyraDomainSpace () const |
Get the domain space. More... | |
Teuchos::RCP< const Thyra::VectorSpaceBase< double > > | getThyraRangeSpace () const |
Get the range space. More... | |
Teuchos::RCP < Thyra::LinearOpBase< double > > | getThyraMatrix () const |
Get a matrix operator. More... | |
template<typename EvalT > | |
Teuchos::RCP < panzer::CloneableEvaluator > | buildScatter () const |
Use preconstructed scatter evaluators. More... | |
template<typename EvalT > | |
Teuchos::RCP < panzer::CloneableEvaluator > | buildGather () const |
Use preconstructed gather evaluators. More... | |
template<typename EvalT > | |
Teuchos::RCP < panzer::CloneableEvaluator > | buildGatherTangent () const |
Use preconstructed gather evaluators. More... | |
template<typename EvalT > | |
Teuchos::RCP < panzer::CloneableEvaluator > | buildGatherDomain () const |
Use preconstructed gather evaluators. More... | |
template<typename EvalT > | |
Teuchos::RCP < panzer::CloneableEvaluator > | buildGatherOrientation () const |
Use preconstructed gather evaluators. More... | |
template<typename EvalT > | |
Teuchos::RCP < panzer::CloneableEvaluator > | buildScatterDirichlet () const |
Use preconstructed dirichlet scatter evaluators. More... | |
void | initializeContainer (int, LinearObjContainer &loc) const |
void | initializeContainer (int mem, EpetraLinearObjContainer &loc) const |
void | initializeGhostedContainer (int, LinearObjContainer &loc) const |
void | initializeGhostedContainer (int mem, EpetraLinearObjContainer &loc) const |
virtual const Teuchos::RCP < Epetra_Map > | getMap () const |
get the map from the matrix More... | |
virtual const Teuchos::RCP < Epetra_Map > | getColMap () const |
get the map from the matrix More... | |
virtual const Teuchos::RCP < Epetra_Map > | getGhostedMap () const |
get the ghosted map from the matrix More... | |
virtual const Teuchos::RCP < Epetra_Map > | getGhostedColMap () const |
get the ghosted map from the matrix More... | |
virtual const Teuchos::RCP < Epetra_CrsGraph > | getGraph () const |
get the graph of the crs matrix More... | |
virtual const Teuchos::RCP < Epetra_CrsGraph > | getGhostedGraph () const |
get the ghosted graph of the crs matrix More... | |
virtual const Teuchos::RCP < Epetra_Import > | getGhostedImport () const |
get importer for converting an overalapped object to a "normal" object More... | |
virtual const Teuchos::RCP < Epetra_Import > | getGhostedColImport () const |
get importer for converting an overalapped object to a "normal" object More... | |
virtual const Teuchos::RCP < Epetra_Export > | getGhostedExport () const |
get exporter for converting an overalapped object to a "normal" object More... | |
virtual const Teuchos::RCP < Epetra_Export > | getGhostedColExport () const |
get exporter for converting an overalapped object to a "normal" object More... | |
virtual const Teuchos::RCP < const Epetra_Comm > | getEpetraComm () const |
get exporter for converting an overalapped object to a "normal" object More... | |
Teuchos::RCP< const panzer::UniqueGlobalIndexerBase > | getUniqueGlobalIndexerBase () const |
Get the unique global indexer this factory was created with. More... | |
Teuchos::RCP< const panzer::UniqueGlobalIndexerBase > | getGlobalIndexer () const |
Get the unique global indexer this factory was created with. More... | |
Teuchos::RCP< const panzer::UniqueGlobalIndexerBase > | getDomainGlobalIndexer () const |
Get the domain unique global indexer this factory was created with. More... | |
Teuchos::RCP< const panzer::UniqueGlobalIndexerBase > | getRangeGlobalIndexer () const |
Get the range unique global indexer this factory was created with. More... | |
![]() | |
virtual | ~LinearObjFactory () |
template<typename BuilderT > | |
void | buildGatherScatterEvaluators (const BuilderT &builder) |
template<typename EvalT > | |
Teuchos::RCP< PHX::Evaluator < Traits > > | buildScatter (const Teuchos::ParameterList &pl) const |
Use preconstructed scatter evaluators. More... | |
template<typename EvalT > | |
Teuchos::RCP< PHX::Evaluator < Traits > > | buildGather (const Teuchos::ParameterList &pl) const |
Use preconstructed gather evaluators. More... | |
template<typename EvalT > | |
Teuchos::RCP< PHX::Evaluator < Traits > > | buildGatherTangent (const Teuchos::ParameterList &pl) const |
Use preconstructed gather evaluators. More... | |
template<typename EvalT > | |
Teuchos::RCP< PHX::Evaluator < Traits > > | buildGatherDomain (const Teuchos::ParameterList &pl) const |
Use preconstructed gather evaluators. More... | |
template<typename EvalT > | |
Teuchos::RCP< PHX::Evaluator < Traits > > | buildGatherOrientation (const Teuchos::ParameterList &pl) const |
Use preconstructed gather evaluators. More... | |
template<typename EvalT > | |
Teuchos::RCP< PHX::Evaluator < Traits > > | buildScatterDirichlet (const Teuchos::ParameterList &pl) const |
Use preconstructed dirichlet scatter evaluators. More... | |
virtual void | beginFill (LinearObjContainer &loc) const |
virtual void | endFill (LinearObjContainer &loc) const |
![]() | |
virtual | ~ThyraObjFactory () |
Protected Attributes | |
Teuchos::RCP< const Epetra_Comm > | comm_ |
Teuchos::RCP< Epetra_Map > | map_ |
Teuchos::RCP< Epetra_Map > | cMap_ |
Teuchos::RCP< Epetra_Map > | ghostedMap_ |
Teuchos::RCP< Epetra_Map > | cGhostedMap_ |
Teuchos::RCP< Epetra_CrsGraph > | graph_ |
Teuchos::RCP< Epetra_CrsGraph > | ghostedGraph_ |
Teuchos::RCP< Epetra_Import > | importer_ |
Teuchos::RCP< Epetra_Import > | colImporter_ |
Teuchos::RCP< Epetra_Export > | exporter_ |
Teuchos::RCP< Epetra_Export > | colExporter_ |
bool | hasColProvider_ |
Teuchos::RCP< const UniqueGlobalIndexer < LocalOrdinalT, int > > | gidProvider_ |
Teuchos::RCP< const UniqueGlobalIndexer < LocalOrdinalT, int > > | colGidProvider_ |
Teuchos::RCP< const Teuchos::OpaqueWrapper < MPI_Comm > > | rawMpiComm_ |
Teuchos::RCP< const Thyra::VectorSpaceBase< double > > | rangeSpace_ |
Teuchos::RCP< const Thyra::VectorSpaceBase< double > > | domainSpace_ |
bool | useDiscreteAdjoint_ |
Definition at line 72 of file Panzer_EpetraLinearObjFactory_decl.hpp.
panzer::EpetraLinearObjFactory< Traits, LocalOrdinalT >::EpetraLinearObjFactory | ( | const Teuchos::RCP< const Epetra_Comm > & | comm, |
const Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, int > > & | gidProvider, | ||
bool | useDiscreteAdjoint = false |
||
) |
Definition at line 70 of file Panzer_EpetraLinearObjFactory_impl.hpp.
panzer::EpetraLinearObjFactory< Traits, LocalOrdinalT >::EpetraLinearObjFactory | ( | const Teuchos::RCP< const Teuchos::MpiComm< int > > & | comm, |
const Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, int > > & | gidProvider, | ||
bool | useDiscreteAdjoint = false |
||
) |
Definition at line 83 of file Panzer_EpetraLinearObjFactory_impl.hpp.
panzer::EpetraLinearObjFactory< Traits, LocalOrdinalT >::EpetraLinearObjFactory | ( | const Teuchos::RCP< const Teuchos::MpiComm< int > > & | comm, |
const Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, int > > & | rowProvider, | ||
const Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, int > > & | colProvider, | ||
bool | useDiscreteAdjoint = false |
||
) |
Definition at line 97 of file Panzer_EpetraLinearObjFactory_impl.hpp.
panzer::EpetraLinearObjFactory< Traits, LocalOrdinalT >::EpetraLinearObjFactory | ( | const Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, int > > & | rowProvider | ) |
This has been added for the case when you want an epetra LOF but don't have a comm. It simply can build scatter and gather evaluators. But not necessarily the objects that go into them.
Definition at line 112 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
Definition at line 123 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
Read in a vector from a file. Fill a particular vector in the linear object container.
[in] | identifier | Key for specifying which file(s) to read |
[in] | loc | Linear object container to fill with the vector |
[in] | id | Id for the field to be filled |
Implements panzer::LinearObjFactory< Traits >.
Definition at line 132 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
Write in a vector from a file. Fill a particular vector in the linear object container.
[in] | identifier | Key for specifying which file(s) to read |
[in] | loc | Linear object container to fill with the vector |
[in] | id | Id for the field to be filled |
Implements panzer::LinearObjFactory< Traits >.
Definition at line 175 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
Build a container with all the neccessary linear algebra objects. This is the non-ghosted version.
Implements panzer::LinearObjFactory< Traits >.
Definition at line 212 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
inlinevirtual |
Build a container with all the neccessary linear algebra objects, purely on the single physics. This gives linear algebra objects that are relevant for a single physics solve. In many cases this is simply a call to buildLinearObjContainer however, in a few important cases (for instance in stochastic galerkin methods) this will return a container for a single instantiation of the physics. This is the non-ghosted version.
Implements panzer::LinearObjFactory< Traits >.
Definition at line 103 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
virtual |
Build a container with all the neccessary linear algebra objects. This is the ghosted version.
Implements panzer::LinearObjFactory< Traits >.
Definition at line 220 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
inlinevirtual |
Build a container with all the neccessary linear algebra objects, purely on the single physics. This gives linear algebra objects that are relevant for a single physics solve. In many cases this is simply a call to buildGhostedLinearObjContainer however, in a few important cases (for instance in stochastic galerkin methods) this will return a container for a single instantiation of the physics. This is the ghosted version.
Implements panzer::LinearObjFactory< Traits >.
Definition at line 108 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
virtual |
Implements panzer::LinearObjFactory< Traits >.
Definition at line 228 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
Implements panzer::LinearObjFactory< Traits >.
Definition at line 250 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
Adjust the residual vector and Jacobian matrix (if they exist) for applied dirichlet conditions. The adjustment considers if a boundary condition was set globally and locally and based on that result adjust the ghosted matrix and residual vector so that when they are summed across processors they resulting Dirichlet condition is correct.
Implements panzer::LinearObjFactory< Traits >.
Definition at line 313 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
Adjust a vector by replacing selected rows with the value of the evaluated dirichlet conditions. This is handled through the standard container mechanism.
Implements panzer::LinearObjFactory< Traits >.
Definition at line 375 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
Acess to the MPI Comm used in constructing this LOF.
Implements panzer::LinearObjFactory< Traits >.
Definition at line 407 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
Get the domain space.
Implements panzer::ThyraObjFactory< double >.
Definition at line 415 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
Get the range space.
Implements panzer::ThyraObjFactory< double >.
Definition at line 432 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
Get a matrix operator.
Implements panzer::ThyraObjFactory< double >.
Definition at line 443 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
inline |
Use preconstructed scatter evaluators.
Definition at line 148 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
inline |
Use preconstructed gather evaluators.
Definition at line 153 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
inline |
Use preconstructed gather evaluators.
Definition at line 158 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
inline |
Use preconstructed gather evaluators.
Definition at line 163 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
inline |
Use preconstructed gather evaluators.
Definition at line 170 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
inline |
Use preconstructed dirichlet scatter evaluators.
Definition at line 175 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
virtual |
Initialize container with a specific set of member values.
Implements panzer::LinearObjFactory< Traits >.
Definition at line 452 of file Panzer_EpetraLinearObjFactory_impl.hpp.
void panzer::EpetraLinearObjFactory< Traits, LocalOrdinalT >::initializeContainer | ( | int | mem, |
EpetraLinearObjContainer & | loc | ||
) | const |
Initialize container with a specific set of member values.
Definition at line 459 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
Initialize container with a specific set of member values.
Implements panzer::LinearObjFactory< Traits >.
Definition at line 479 of file Panzer_EpetraLinearObjFactory_impl.hpp.
void panzer::EpetraLinearObjFactory< Traits, LocalOrdinalT >::initializeGhostedContainer | ( | int | mem, |
EpetraLinearObjContainer & | loc | ||
) | const |
Initialize container with a specific set of member values.
Definition at line 486 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
get the map from the matrix
Definition at line 514 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
get the map from the matrix
Definition at line 523 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
get the ghosted map from the matrix
Definition at line 531 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
get the ghosted map from the matrix
Definition at line 539 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
get the graph of the crs matrix
Definition at line 548 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
get the ghosted graph of the crs matrix
Definition at line 556 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
get importer for converting an overalapped object to a "normal" object
Definition at line 564 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
get importer for converting an overalapped object to a "normal" object
Definition at line 573 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
get exporter for converting an overalapped object to a "normal" object
Definition at line 585 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
get exporter for converting an overalapped object to a "normal" object
Definition at line 594 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
virtual |
get exporter for converting an overalapped object to a "normal" object
Definition at line 839 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
inlinevirtual |
Get the unique global indexer this factory was created with.
Implements panzer::LinearObjFactory< Traits >.
Definition at line 244 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
inline |
Get the unique global indexer this factory was created with.
Definition at line 248 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
inline |
Get the domain unique global indexer this factory was created with.
Definition at line 252 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
inline |
Get the range unique global indexer this factory was created with.
Definition at line 256 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
protected |
Definition at line 804 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protected |
Definition at line 797 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protected |
Definition at line 818 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protected |
Definition at line 811 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protected |
Definition at line 825 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protected |
Definition at line 832 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protected |
Definition at line 272 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protected |
Definition at line 286 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protected |
Definition at line 297 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protectedvirtual |
Definition at line 609 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protectedvirtual |
Definition at line 623 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protectedvirtual |
Definition at line 638 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protectedvirtual |
Definition at line 650 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protectedvirtual |
Definition at line 665 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protectedvirtual |
Definition at line 689 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protectedvirtual |
Definition at line 746 of file Panzer_EpetraLinearObjFactory_impl.hpp.
|
protected |
Definition at line 288 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
mutableprotected |
Definition at line 289 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
mutableprotected |
Definition at line 290 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
mutableprotected |
Definition at line 291 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
mutableprotected |
Definition at line 292 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
mutableprotected |
Definition at line 293 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
mutableprotected |
Definition at line 294 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
mutableprotected |
Definition at line 297 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
mutableprotected |
Definition at line 297 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
mutableprotected |
Definition at line 298 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
mutableprotected |
Definition at line 298 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
protected |
Definition at line 300 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
protected |
Definition at line 301 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
protected |
Definition at line 302 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
protected |
Definition at line 303 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
mutableprotected |
Definition at line 305 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
mutableprotected |
Definition at line 306 of file Panzer_EpetraLinearObjFactory_decl.hpp.
|
protected |
Definition at line 308 of file Panzer_EpetraLinearObjFactory_decl.hpp.