MueLu Version of the Day
Loading...
Searching...
No Matches
MueLu::Maxwell_Utils< Scalar, LocalOrdinal, GlobalOrdinal, Node > Class Template Reference

Utility functions for Maxwell. More...

#include <MueLu_Maxwell_Utils_decl.hpp>

Inheritance diagram for MueLu::Maxwell_Utils< Scalar, LocalOrdinal, GlobalOrdinal, Node >:
MueLu::VerboseObject

Public Types

typedef Teuchos::ScalarTraits< Scalar >::magnitudeType magnitudeType
 

Static Public Member Functions

static void detectBoundaryConditionsSM (RCP< Matrix > &SM_Matrix, RCP< Matrix > &D0_Matrix, magnitudeType rowSumTol, bool useKokkos_, Kokkos::View< bool *, typename Node::device_type::memory_space > &BCrowsKokkos, Kokkos::View< bool *, typename Node::device_type::memory_space > &BCcolsKokkos, Kokkos::View< bool *, typename Node::device_type::memory_space > &BCdomainKokkos, int &BCedges, int &BCnodes, Teuchos::ArrayRCP< bool > &BCrows, Teuchos::ArrayRCP< bool > &BCcols, Teuchos::ArrayRCP< bool > &BCdomain, bool &allEdgesBoundary, bool &allNodesBoundary)
 Detect Dirichlet boundary conditions.
 
static void detectBoundaryConditionsSM (RCP< Matrix > &SM_Matrix, RCP< Matrix > &D0_Matrix, magnitudeType rowSumTol, Kokkos::View< bool *, typename Node::device_type::memory_space > &BCrowsKokkos, Kokkos::View< bool *, typename Node::device_type::memory_space > &BCcolsKokkos, Kokkos::View< bool *, typename Node::device_type::memory_space > &BCdomainKokkos, int &BCedges, int &BCnodes, bool &allEdgesBoundary, bool &allNodesBoundary)
 Detect Dirichlet boundary conditions.
 
static RCP< Matrix > removeExplicitZeros (const RCP< Matrix > &A, const magnitudeType tolerance, const bool keepDiagonal=true, const size_t expectedNNZperRow=0)
 Remove explicit zeros.
 
static void removeExplicitZeros (Teuchos::ParameterList &parameterList, RCP< Matrix > &D0_Matrix, RCP< Matrix > &SM_Matrix, RCP< Matrix > &M1_Matrix, RCP< Matrix > &Ms_Matrix)
 
static void removeExplicitZeros (Teuchos::ParameterList &parameterList, RCP< Matrix > &D0_Matrix, RCP< Matrix > &SM_Matrix)
 
static void thresholdedAbs (const RCP< Matrix > &A, const magnitudeType thresholded)
 
static void setMatvecParams (Matrix &A, RCP< ParameterList > matvecParams)
 Sets matvec params on a matrix.
 
static RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > PtAPWrapper (const RCP< Matrix > &A, const RCP< Matrix > &P, Teuchos::ParameterList &params, const std::string &label)
 Performs an P^T AP.
 
- Static Public Member Functions inherited from MueLu::VerboseObject
static void SetDefaultVerbLevel (const VerbLevel defaultVerbLevel)
 Set the default (global) verbosity level.
 
static VerbLevel GetDefaultVerbLevel ()
 Get the default (global) verbosity level.
 
static void SetMueLuOStream (const Teuchos::RCP< Teuchos::FancyOStream > &mueluOStream)
 
static void SetMueLuOFileStream (const std::string &filename)
 
static Teuchos::RCP< Teuchos::FancyOStream > GetMueLuOStream ()
 

Additional Inherited Members

- Public Member Functions inherited from MueLu::VerboseObject
 VerboseObject ()
 
virtual ~VerboseObject ()
 Destructor.
 
VerbLevel GetVerbLevel () const
 Get the verbosity level.
 
void SetVerbLevel (const VerbLevel verbLevel)
 Set the verbosity level of this object.
 
int GetProcRankVerbose () const
 Get proc rank used for printing. Do not use this information for any other purpose.
 
int SetProcRankVerbose (int procRank) const
 Set proc rank used for printing.
 
bool IsPrint (MsgType type, int thisProcRankOnly=-1) const
 Find out whether we need to print out information for a specific message type.
 
Teuchos::FancyOStream & GetOStream (MsgType type, int thisProcRankOnly=0) const
 Get an output stream for outputting the input message type.
 
Teuchos::FancyOStream & GetBlackHole () const
 

Detailed Description

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
class MueLu::Maxwell_Utils< Scalar, LocalOrdinal, GlobalOrdinal, Node >

Utility functions for Maxwell.

Definition at line 36 of file MueLu_Maxwell_Utils_decl.hpp.

Member Typedef Documentation

◆ magnitudeType

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
typedef Teuchos::ScalarTraits<Scalar>::magnitudeType MueLu::Maxwell_Utils< Scalar, LocalOrdinal, GlobalOrdinal, Node >::magnitudeType

Definition at line 41 of file MueLu_Maxwell_Utils_decl.hpp.

Member Function Documentation

◆ detectBoundaryConditionsSM() [1/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void MueLu::Maxwell_Utils< Scalar, LocalOrdinal, GlobalOrdinal, Node >::detectBoundaryConditionsSM ( RCP< Matrix > &  SM_Matrix,
RCP< Matrix > &  D0_Matrix,
magnitudeType  rowSumTol,
bool  useKokkos_,
Kokkos::View< bool *, typename Node::device_type::memory_space > &  BCrowsKokkos,
Kokkos::View< bool *, typename Node::device_type::memory_space > &  BCcolsKokkos,
Kokkos::View< bool *, typename Node::device_type::memory_space > &  BCdomainKokkos,
int &  BCedges,
int &  BCnodes,
Teuchos::ArrayRCP< bool > &  BCrows,
Teuchos::ArrayRCP< bool > &  BCcols,
Teuchos::ArrayRCP< bool > &  BCdomain,
bool &  allEdgesBoundary,
bool &  allNodesBoundary 
)
static

Detect Dirichlet boundary conditions.

Definition at line 31 of file MueLu_Maxwell_Utils_def.hpp.

◆ detectBoundaryConditionsSM() [2/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void MueLu::Maxwell_Utils< Scalar, LocalOrdinal, GlobalOrdinal, Node >::detectBoundaryConditionsSM ( RCP< Matrix > &  SM_Matrix,
RCP< Matrix > &  D0_Matrix,
magnitudeType  rowSumTol,
Kokkos::View< bool *, typename Node::device_type::memory_space > &  BCrowsKokkos,
Kokkos::View< bool *, typename Node::device_type::memory_space > &  BCcolsKokkos,
Kokkos::View< bool *, typename Node::device_type::memory_space > &  BCdomainKokkos,
int &  BCedges,
int &  BCnodes,
bool &  allEdgesBoundary,
bool &  allNodesBoundary 
)
static

Detect Dirichlet boundary conditions.

Definition at line 102 of file MueLu_Maxwell_Utils_def.hpp.

◆ removeExplicitZeros() [1/3]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > MueLu::Maxwell_Utils< Scalar, LocalOrdinal, GlobalOrdinal, Node >::removeExplicitZeros ( const RCP< Matrix > &  A,
const magnitudeType  tolerance,
const bool  keepDiagonal = true,
const size_t  expectedNNZperRow = 0 
)
static

Remove explicit zeros.

Definition at line 153 of file MueLu_Maxwell_Utils_def.hpp.

◆ removeExplicitZeros() [2/3]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void MueLu::Maxwell_Utils< Scalar, LocalOrdinal, GlobalOrdinal, Node >::removeExplicitZeros ( Teuchos::ParameterList &  parameterList,
RCP< Matrix > &  D0_Matrix,
RCP< Matrix > &  SM_Matrix,
RCP< Matrix > &  M1_Matrix,
RCP< Matrix > &  Ms_Matrix 
)
static

Definition at line 170 of file MueLu_Maxwell_Utils_def.hpp.

◆ removeExplicitZeros() [3/3]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
static void MueLu::Maxwell_Utils< Scalar, LocalOrdinal, GlobalOrdinal, Node >::removeExplicitZeros ( Teuchos::ParameterList &  parameterList,
RCP< Matrix > &  D0_Matrix,
RCP< Matrix > &  SM_Matrix 
)
inlinestatic

Definition at line 85 of file MueLu_Maxwell_Utils_decl.hpp.

◆ thresholdedAbs()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void MueLu::Maxwell_Utils< Scalar, LocalOrdinal, GlobalOrdinal, Node >::thresholdedAbs ( const RCP< Matrix > &  A,
const magnitudeType  thresholded 
)
static

Definition at line 216 of file MueLu_Maxwell_Utils_def.hpp.

◆ setMatvecParams()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void MueLu::Maxwell_Utils< Scalar, LocalOrdinal, GlobalOrdinal, Node >::setMatvecParams ( Matrix &  A,
RCP< ParameterList >  matvecParams 
)
static

Sets matvec params on a matrix.

Definition at line 250 of file MueLu_Maxwell_Utils_def.hpp.

◆ PtAPWrapper()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > MueLu::Maxwell_Utils< Scalar, LocalOrdinal, GlobalOrdinal, Node >::PtAPWrapper ( const RCP< Matrix > &  A,
const RCP< Matrix > &  P,
Teuchos::ParameterList &  params,
const std::string &  label 
)
static

Performs an P^T AP.

Definition at line 262 of file MueLu_Maxwell_Utils_def.hpp.


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