MueLu  Version of the Day
MueLu Namespace Reference

Namespace for MueLu classes and methods. More...

Namespaces

 Details
 
 Exceptions
 
 MemUtils
 

Classes

class  AdaptiveSaMLParameterListInterpreter
 
class  AdvSmootherPrototype
 
class  Aggregates
 Container class for aggregation information. More...
 
class  AggregationAlgorithmBase
 Pure virtual base class for all MueLu aggregation algorithms. More...
 
class  AggregationExportFactory
 Factory to export aggregation info or visualize aggregates using VTK. More...
 
class  AggregationPhase1Algorithm
 Algorithm for coarsening a graph with uncoupled aggregation. More...
 
class  AggregationPhase2aAlgorithm
 Among unaggregated points, see if we can make a reasonable size aggregate out of it.

Idea

Among unaggregated points, see if we can make a reasonable size aggregate out of it. We do this by looking at neighbors and seeing how many are unaggregated and on my processor. Loosely, base the number of new aggregates created on the percentage of unaggregated nodes. More...
 
class  AggregationPhase2bAlgorithm
 Add leftovers to existing aggregates

Idea

In phase 2b non-aggregated nodes are added to existing aggregates. All neighbors of the unaggregated node are checked and the corresponding aggregate weight is increased. The unaggregated node is added to the aggregate with the best weight. A simple penalty strategy makes sure that the non-aggregated nodes are added to different aggregates. The routine runs twice to cover non-aggregate nodes which have a node distance of two to existing aggregates. Assuming that the node distance is not greater than 3 (the aggregate diameter size), running the algorithm only twice should be sufficient. More...
 
class  AggregationPhase3Algorithm
 Handle leftover nodes. Try to avoid singleton nodes

Idea

In phase 3 we try to stick unaggregated nodes into a neighboring aggregate. We try to avoid singletons: we first try to build a new aggregate containing all neighboring non-aggregated nodes. If we cannot build a new aggregate, we add the non-aggregated node to the first adjacent aggregate. Only if there is no adjacent aggregate, we create a singleton node aggregate. More...
 
class  AlgebraicPermutationStrategy
 Algebraic permutation strategy. More...
 
class  AmalgamationFactory
 AmalgamationFactory for subblocks of strided map based amalgamation data. More...
 
class  AmalgamationInfo
 minimal container class for storing amalgamation information More...
 
class  Amesos2Smoother
 Class that encapsulates Amesos2 direct solvers. More...
 
class  Amesos2Smoother< double, int, int, Xpetra::EpetraNode >
 
class  AmesosSmoother
 Class that encapsulates Amesos direct solvers. More...
 
class  AMGXOperator
 Adapter for AmgX library from Nvidia. More...
 
class  AMGXOperator< double, int, int, Node >
 
class  BaseClass
 Base class for MueLu classes. More...
 
class  BlockedCoarseMapFactory
 Factory for generating coarse level map. Used by BlockedPFactory. More...
 
class  BlockedDirectSolver
 direct solver for nxn blocked matrices More...
 
class  BlockedGaussSeidelSmoother
 block Gauss-Seidel method for blocked matrices More...
 
class  BlockedPFactory
 Factory for building blocked, segregated prolongation operators. More...
 
class  BlockedRAPFactory
 Factory for building coarse matrices. More...
 
class  BraessSarazinSmoother
 BraessSarazin smoother for 2x2 block matrices. More...
 
class  BrickAggregationFactory
 
class  CGSolver
 Implements conjugate gradient algorithm for energy-minimization. More...
 
class  CloneRepartitionInterface
 Helper class which transforms an "Partition" array generated from a block in a blocked operator to a new "Partition" vector for another compatible block in the blocked operator. More...
 
class  CoalesceDropFactory
 Factory for creating a graph base on a given matrix. More...
 
class  CoarseMapFactory
 Factory for generating coarse level map. Used by TentativePFactory. More...
 
class  CoarseningVisualizationFactory
 Factory to visualize coarsening information using prolongation operators. More...
 
struct  CompPairs
 
class  ComputeAggregateSizesFunctor
 
class  Constraint
 Constraint space information for the potential prolongator. More...
 
class  ConstraintFactory
 Factory for building the constraint operator. More...
 
class  CoordinatesTransferFactory
 Class for transferring coordinates from a finer level to a coarser one. More...
 
class  CoupledAggregationCommHelper
 Helper class for providing arbitrated communication across processors. More...
 
class  CoupledAggregationFactory
 Factory for coarsening a graph with uncoupled aggregation. More...
 
class  CoupledRBMFactory
 Nullspace Factory for coupled acoustic-elastic problems. More...
 
class  DefaultProblemStrings
 Helper class to initialize DefaultProblemTypeLists_ in class MasterList. More...
 
class  DemoFactory
 empty factory for demonstration More...
 
class  Describable
 Base class for MueLu classes. More...
 
class  DetectDirichletFunctor
 
class  DirectSolver
 Class that encapsulates direct solvers. Autoselection of AmesosSmoother or Amesos2Smoother according to the compile time configuration of Trilinos. More...
 
class  DisableMultipleCallCheck
 An exception safe way to call the method TwoLevelFactoryBase::DisableMultipleCallCheck. More...
 
class  DropNegativeEntriesFactory
 Application-specific filtering for A. Can be used in context of graph coarsening and aggregation. More...
 
class  EminPFactory
 Factory for building Energy Minimization prolongators. More...
 
class  FacadeBGS2x2
 
class  FacadeClassBase
 
class  FacadeClassFactory
 
class  FacadeSimple
 
class  Factory
 
class  FactoryAcceptor
 
class  FactoryBase
 Base class for factories (e.g., R, P, and A_coarse). More...
 
class  FactoryFactory
 Factory that can generate other factories from. More...
 
class  FactoryManager
 This class specifies the default factory that should generate some data on a Level if the data does not exist and the generating factory has not been specified. More...
 
class  FactoryManagerBase
 Class that provides default factories within Needs class. More...
 
class  FactoryMonitor
 Timer to be used in factories. Similar to Monitor but with additional timers. More...
 
class  FakeSmootherPrototype
 
class  FilteredAFactory
 Factory for building filtered matrices using filtered graphs. More...
 
class  GenericRFactory
 Factory for building restriction operators using a prolongator factory. More...
 
class  GeoInterpFactory
 Factory for GMG Q2-Q1-Q2 interpolation. More...
 
class  GMRESSolver
 Implements conjugate gradient algorithm for energy-minimization. More...
 
class  Graph
 MueLu representation of a compressed row storage graph. More...
 
class  GraphBase
 MueLu representation of a graph. More...
 
class  Hierarchy
 Provides methods to build a multigrid hierarchy and apply multigrid cycles. More...
 
class  HierarchyFactory
 
class  HierarchyManager
 
class  HierarchyUtils
 
class  Ifpack2Smoother
 Class that encapsulates Ifpack2 smoothers. More...
 
class  Ifpack2Smoother< double, int, int, Xpetra::EpetraNode >
 
class  IfpackSmoother
 Class that encapsulates Ifpack smoothers. More...
 
class  IndefBlockedDiagonalSmoother
 Cheap Blocked diagonal smoother for indefinite 2x2 block matrices. More...
 
class  IsolatedNodeAggregationAlgorithm
 Ignores isolated nodes during aggregation. Marks the node to be "aggregated" without adding real aggregates for them. More...
 
class  IsorropiaInterface
 Interface to IsorropiaInterface to Isorropia allowing to access other rebalancing/repartitioning algorithms from Zoltan than RCB This includes methods (like PHG) which do not rely on user-provided coordinate or mesh information. This class produces node-based rebalancing information (stored in "AmalgamatedPartition") which is used as input for the RepartitionInterface class. More...
 
class  LeftoverAggregationAlgorithm
 
class  Level
 Class that holds all level-specific information. More...
 
class  LineDetectionFactory
 Factory for building line detection information. More...
 
class  LinkedList
 
class  LocalAggregationAlgorithm
 Algorithm for coarsening a graph with uncoupled aggregation. More...
 
class  LocalPermutationStrategy
 Local permutation strategy. More...
 
class  LWGraph
 Lightweight MueLu representation of a compressed row storage graph. More...
 
class  MapTransferFactory
 transfer factory for maps More...
 
class  MasterList
 Static class that holds the complete list of valid MueLu parameters. More...
 
class  MatlabSmoother
 Class that encapsulates Matlab smoothers. More...
 
class  MatrixAnalysisFactory
 This class checks matrix properties of A on current level. This factory can be plugged in everywhere in the factory layout of the MueLu preconditioner. It only needs A as input and pipes it through as output. More...
 
class  MergedBlockedMatrixFactory
 
class  MergedSmoother
 
class  MHDRAPFactory
 Factory for building coarse matrices. More...
 
class  ML2MueLuParameterTranslator
 Class that accepts ML-style parameters and builds a MueLu parameter list (easy input deck) More...
 
class  MLParameterListInterpreter
 Class that accepts ML-style parameters and builds a MueLu preconditioner. This interpreter uses the same default values as ML. This allows to compare ML/MueLu results. More...
 
class  Monitor
 Timer to be used in non-factories. More...
 
class  MpiTypeTraits
 
class  MpiTypeTraits< int >
 
class  MpiTypeTraits< long >
 
class  MpiTypeTraits< long long >
 
class  MpiTypeTraits< short >
 
class  MpiTypeTraits< unsigned >
 
struct  MueLu_Node_Struct
 
struct  MueLu_SuperNode_Struct
 
class  MuemexArg
 
class  MuemexData
 
class  MultiVectorTransferFactory
 Class for restricting a MultiVector from a finer to a coarser level. More...
 
class  MutuallyExclusiveTime
 This class wraps a Teuchos::Time and maintains a mutually exclusive property between wrapped timers. More...
 
class  MutuallyExclusiveTimeMonitor
 Similar to TimeMonitor, but uses MutuallyExclusiveTime objects. More...
 
class  myTriangle
 
class  myVec2
 
class  myVec3
 
class  NoFactory
 NoFactory that is used for data stored in level class for that no generating factory is available/necessary. More...
 
class  NullspaceFactory
 Factory for generating nullspace. More...
 
class  NullspacePresmoothFactory
 
class  OnePtAggregationAlgorithm
 Algorithm for coarsening a graph with uncoupled aggregation. keep special marked nodes as singleton node aggregates over all multigrid levels. More...
 
class  ParameterListAcceptor
 Abstract interface of a class accepting parameter lists. More...
 
class  ParameterListAcceptorImpl
 
class  ParameterListInterpreter
 
class  PatternFactory
 Factory for building nonzero patterns for energy minimization. More...
 
class  PerfUtils
 
class  PermutationFactory
 factory generates a row- and column permutation operators P and Q such that P*A*Q^T is a (hopefully) diagonal-dominant matrix. It's meant to be used with PermutingSmoother. More...
 
class  PermutingSmoother
 This class first calculates row- and column permutation operators and applies a smoother to the permuted linear system. More...
 
class  PFactory
 Factory that provides an interface for a concrete implementation of a prolongation operator. More...
 
class  PgPFactory
 Factory for building Petrov-Galerkin Smoothed Aggregation prolongators. More...
 
class  PreDropFunctionBaseClass
 
class  PreDropFunctionConstVal
 
class  PreserveDirichletAggregationAlgorithm
 Builds one-to-one aggregates for all Dirichlet boundary nodes. For some applications this might be necessary. (default = off) More...
 
class  PRFactory
 
class  PrintMonitor
 
class  ProjectorSmoother
 This class enables the elimination of the nullspace component of the solution through the use of projection. More...
 
class  Q2Q1Q2CoarseGridFactory
 Factory for GMG Q2-Q1-Q2 interpolation. More...
 
class  QR_InterfaceEx
 Interface to the Teuchos wrappers for LAPACK's QR. More...
 
class  RAPFactory
 Factory for building coarse matrices. More...
 
class  RAPShiftFactory
 Factory for building coarse grid matrices, when the matrix is of the form K+a*M. Useful when you want to change the shift variable ("a") at every level. Each level must store the stiffness matrix K and mass matrix M separately. More...
 
class  RebalanceAcFactory
 Factory for building coarse matrices. More...
 
class  RebalanceBlockAcFactory
 
class  RebalanceBlockInterpolationFactory
 Applies permutation to prolongation operators. More...
 
class  RebalanceBlockRestrictionFactory
 Applies permutation to restriction operators. More...
 
class  RebalanceMapFactory
 Factory which rebalances a map on current level using the Importer object generated by the RepartitionFactory. More...
 
class  RebalanceTransferFactory
 Applies permutation to grid transfer operators. More...
 
class  RefMaxwell
 Preconditioner (wrapped as a Tpetra::Operator) for Maxwell's equations in curl-curl form. More...
 
class  ReorderBlockAFactory
 Factory for building a reordered (nested) block operator. More...
 
class  RepartitionFactory
 Factory for building permutation matrix that can be be used to shuffle data (matrices, vectors) among processes. More...
 
class  RepartitionHeuristicFactory
 Factory for determing the number of partitions for rebalancing. More...
 
class  RepartitionInterface
 Helper class which transforms an "AmalgamatedPartition" array to an unamalgamated "Partition".This is a general class that allows to translate node-based rebalancing information (given by "AmalgamatedPartition") to DOF-based rebalancing information (stored as output in the "Partition" variable). It is meant to be used together with the IsorropiaInterface class which provides the node-based rebalancing information in the "AmalgamatedPartition" variable. It uses the striding information of "A" to transform the amalgamated rebalaning info into DOF-based rebalancing information that can be processed by the RepartitionFactory class. More...
 
class  RigidBodyModeFactory
 Nullspace Factory for building rigid body modes. More...
 
class  SaPFactory
 Factory for building Smoothed Aggregation prolongators.

Input/output of SaPFactory

More...
 
class  SchurComplementFactory
 Factory for building the Schur Complement for a 2x2 block matrix. More...
 
class  SegregatedAFactory
 Factory for building a new "segregated" A operator. Here, "segregated" means that the user provides a map (containing a subset of the row gids of the input matrix A) and the factory drops the off-diagonal entries (a,b) and (b,a) in A where "a" denotes a GID entry in the provided map and "b" denotes a GID that is not contained in the provided map. More...
 
class  SemiCoarsenPFactory
 Prolongator factory performing semi-coarsening. More...
 
class  SetFactoryManager
 An exception safe way to call the method 'Level::SetFactoryManager()'. More...
 
class  ShiftedLaplacian
 Shifted Laplacian Helmholtz solver. More...
 
class  ShiftedLaplacianOperator
 Wraps an existing MueLu::Hierarchy as a Tpetra::Operator, with an optional two-level correction. Intended to be used with MueLu::ShiftedLaplacian. More...
 
class  SimpleSmoother
 SIMPLE smoother for 2x2 block matrices. More...
 
class  SingleLevelFactoryBase
 Base class for factories that use one level (currentLevel). More...
 
class  SingleLevelMatlabFactory
 Factory for interacting with Matlab. More...
 
class  Smoother
 Base class for smoother factories. More...
 
class  SmootherBase
 Base class for smoothers. More...
 
class  SmootherFactory
 Generic Smoother Factory for generating the smoothers of the MG hierarchy. More...
 
class  SmootherFactoryBase
 
class  SmootherPrototype
 Base class for smoother prototypes. More...
 
class  SolverBase
 Base class for energy-minimization iterative solvers. More...
 
class  SteepestDescentSolver
 Implements steepest descent algorithm for energy-minimization. More...
 
class  SubBlockAFactory
 Factory for building a thresholded operator. More...
 
class  SubFactoryMonitor
 Timer to be used in factories. Similar to SubMonitor but adds a timer level by level. More...
 
class  SubMonitor
 Timer to be used in non-factories. Similar to Monitor, but doesn't print object description. More...
 
class  TekoSmoother
 Interface to block smoothers in Teko package. More...
 
class  TekoSmoother< double, int, GlobalOrdinal, Node >
 
class  TentativePFactory
 Factory for building tentative prolongator. More...
 
class  ThresholdAFilterFactory
 Factory for building a thresholded operator. More...
 
class  TimeMonitor
 Integrates Teuchos::TimeMonitor with MueLu verbosity system. More...
 
class  ToggleCoordinatesTransferFactory
 Class for transferring coordinates from a finer level to a coarser one. More...
 
class  TogglePFactory
 Prolongator factory which allows switching between two different prolongator strategies. More...
 
class  TopRAPFactory
 
class  TopSmootherFactory
 
class  TpetraOperator
 Wraps an existing MueLu::Hierarchy as a Tpetra::Operator. More...
 
class  TransPFactory
 Factory for building restriction operators. More...
 
class  TrilinosSmoother
 Class that encapsulates external library smoothers. More...
 
struct  Triplet
 
class  TwoLevelFactoryBase
 Base class for factories that use two levels (fineLevel and coarseLevel). More...
 
class  TwoLevelMatlabFactory
 Factory for interacting with Matlab. More...
 
class  UncoupledAggregationFactory
 Factory for building uncoupled aggregates. More...
 
class  UserAggregationFactory
 
class  UserPFactory
 
class  Utilities
 MueLu utility class. More...
 
class  Utilities< double, int, int, Xpetra::EpetraNode >
 
class  UtilitiesBase
 
class  UzawaSmoother
 Block triangle Uzawa smoother for 2x2 block matrices. More...
 
class  VariableContainer
 Class that stores all relevant data for a variable. More...
 
class  VerboseObject
 Verbose class for MueLu classes. More...
 
class  VisualizationHelpers
 Base class providing routines to visualize aggregates and coarsening information. More...
 
class  XpetraOperator
 Wraps an existing MueLu::Hierarchy as a Xpetra::Operator. More...
 
class  Zoltan2Interface
 Interface to Zoltan2 library.This interface provides access to partitioning methods in Zoltan2. Currently, it supports the RCB algorithm only. More...
 
class  Zoltan2Interface< double, int, int, Xpetra::EpetraNode >
 
class  ZoltanInterface
 Interface to Zoltan library.This interface provides access to partitioning methods in Zoltan. Currently, it supports the RCB algorithm only. More...
 

Typedefs

typedef struct MueLu::MueLu_Node_Struct MueLu_Node
 
typedef struct MueLu::MueLu_SuperNode_Struct MueLu_SuperNode
 
typedef short KeepType
 
typedef int VerbLevel
 
typedef Kokkos::Compat::KokkosDeviceWrapperNode< Kokkos::Serial, Kokkos::HostSpace > mm_node_t
 
typedef int mm_LocalOrd
 
typedef int mm_GlobalOrd
 
typedef std::complex< double > complex_t
 
typedef Tpetra::Map muemex_map_type
 
typedef Tpetra::CrsMatrix< double, mm_LocalOrd, mm_GlobalOrd, mm_node_tTpetra_CrsMatrix_double
 
typedef Tpetra::CrsMatrix< complex_t, mm_LocalOrd, mm_GlobalOrd, mm_node_tTpetra_CrsMatrix_complex
 
typedef Tpetra::MultiVector< double, mm_LocalOrd, mm_GlobalOrd, mm_node_tTpetra_MultiVector_double
 
typedef Tpetra::MultiVector< complex_t, mm_LocalOrd, mm_GlobalOrd, mm_node_tTpetra_MultiVector_complex
 
typedef Xpetra::Map< mm_LocalOrd, mm_GlobalOrd, mm_node_tXpetra_map
 
typedef Xpetra::Vector< mm_LocalOrd, mm_LocalOrd, mm_GlobalOrd, mm_node_tXpetra_ordinal_vector
 
typedef Xpetra::Matrix< double, mm_LocalOrd, mm_GlobalOrd, mm_node_tXpetra_Matrix_double
 
typedef Xpetra::Matrix< complex_t, mm_LocalOrd, mm_GlobalOrd, mm_node_tXpetra_Matrix_complex
 
typedef Xpetra::MultiVector< double, mm_LocalOrd, mm_GlobalOrd, mm_node_tXpetra_MultiVector_double
 
typedef Xpetra::MultiVector< complex_t, mm_LocalOrd, mm_GlobalOrd, mm_node_tXpetra_MultiVector_complex
 
typedef MueLu::Hierarchy< double, mm_LocalOrd, mm_GlobalOrd, mm_node_tHierarchy_double
 
typedef MueLu::Hierarchy< complex_t, mm_LocalOrd, mm_GlobalOrd, mm_node_tHierarchy_complex
 
typedef MueLu::Aggregates< mm_LocalOrd, mm_GlobalOrd, mm_node_tMAggregates
 
typedef MueLu::AmalgamationInfo< mm_LocalOrd, mm_GlobalOrd, mm_node_tMAmalInfo
 
typedef MueLu::GraphBase< mm_LocalOrd, mm_GlobalOrd, mm_node_tMGraph
 

Enumerations

enum  CANodeState { CA_READY = -11, CA_NOTSEL = -12, CA_SELECTED = -13 }
 
enum  CycleType { VCYCLE, WCYCLE }
 
enum  PreOrPost { PRE = 0x1, POST = 0x2, BOTH = 0x3 }
 
enum  NodeState {
  READY = 1, NOTSEL = 2, AGGREGATED = 3, ONEPT = 4,
  IGNORED = 5, BOUNDARY = 6
}
 
enum  ReturnType { Converged, Unconverged, Undefined }
 
enum  KeepEnum {
  UserData = 0x1, Keep = 0x2, Final = 0x4, NextRun = UserData | Keep,
  All = UserData | Keep | Final
}
 Keep status of a variable of Level. More...
 
enum  MsgType {
  Errors = 0x00000001, Warnings0 = 0x00000010, Warnings00 = 0x00000020, Warnings1 = 0x00000040,
  PerfWarnings = 0x00000080, Runtime0 = 0x00000100, Runtime1 = 0x00000200, RuntimeTimings = 0x00000400,
  NoTimeReport = 0x00000800, Parameters0 = 0x00001000, Parameters1 = 0x00002000, Statistics0 = 0x00010000,
  Statistics1 = 0x00020000, Statistics2 = 0x00040000, Timings0 = 0x00100000, Timings1 = 0x00200000,
  TimingsByLevel = 0x00400000, External = 0x01000000, Debug = 0x02000000, Test = 0x10000000,
  Warnings = Warnings0 | Warnings00 | Warnings1 | PerfWarnings, Runtime = Runtime0 | Runtime1, Parameters = Parameters0 | Parameters1, Statistics = Statistics0 | Statistics1 | Statistics2,
  Timings = Timings0 | Timings1 | TimingsByLevel, None = 0, Low = Errors | Warnings0 | Statistics0, Medium = Errors | Warnings0 | Runtime0 | Parameters0 | Statistics0 | Statistics1 | Timings0,
  High = Errors | Warnings | Runtime | Parameters | Statistics | Timings, Extreme = Errors | Warnings | Runtime | Parameters | Statistics | Timings | External, Default = High, NotSpecified = -1
}
 
enum  MinimizationNorm { ANORM = 0, L2NORM = 1, DINVANORM = 2 }
 
enum  MuemexType {
  INT, BOOL, DOUBLE, COMPLEX,
  STRING, XPETRA_MAP, XPETRA_ORDINAL_VECTOR, TPETRA_MULTIVECTOR_DOUBLE,
  TPETRA_MULTIVECTOR_COMPLEX, TPETRA_MATRIX_DOUBLE, TPETRA_MATRIX_COMPLEX, XPETRA_MATRIX_DOUBLE,
  XPETRA_MATRIX_COMPLEX, XPETRA_MULTIVECTOR_DOUBLE, XPETRA_MULTIVECTOR_COMPLEX, EPETRA_CRSMATRIX,
  EPETRA_MULTIVECTOR, AGGREGATES, AMALGAMATION_INFO, GRAPH
}
 

Functions

std::string const Version ()
 
void CreateSublists (const ParameterList &List, ParameterList &newList)
 
int LevenshteinDistance (const char *s, size_t len_s, const char *t, size_t len_t)
 
static bool areSame (const ParameterList &list1, const ParameterList &list2)
 Helper functions to compare two paramter lists. More...
 
static bool compare (const ParameterList &list1, const ParameterList &list2)
 
void MergeParameterList (const Teuchos::ParameterList &source, Teuchos::ParameterList &dest, bool overWrite)
 : merge two parameter lists More...
 
const Teuchos::ParameterListGetMLSubList (const Teuchos::ParameterList &paramList, const std::string &type, int levelID)
 
Teuchos::RCP< Teuchos::ParameterListExtractSetOfParameters (const Teuchos::ParameterList &paramList, const std::string &str)
 
void replaceAll (std::string &str, const std::string &from, const std::string &to)
 
template<typename Type >
bool replacePlaceholder (std::string &str, const std::string &placeholder, Type data)
 templated version to replace placeholder by data in "str" More...
 
template<typename Type >
bool actionInterpretParameter (Teuchos::ParameterList &mlParams, const std::string &paramName, std::string &str)
 
void printParameterListOptions (std::ostream &os, const Teuchos::ParameterList &p)
 
VerbLevel toMueLuVerbLevel (const Teuchos::EVerbosityLevel verbLevel)
 
template<typename T , typename W >
static bool compareTriplets (const Triplet< T, W > &a, const Triplet< T, W > &b)
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< MueLu::SmootherPrototype< Scalar, LocalOrdinal, GlobalOrdinal, Node > > GetAmesosSmoother (const std::string &type="", const Teuchos::ParameterList &paramList=Teuchos::ParameterList())
 Non-member templated function GetAmesosSmoother() returns a new AmesosSmoother object. More...
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< MueLu::SmootherPrototype< Scalar, LocalOrdinal, GlobalOrdinal, Node > > GetIfpackSmoother (const std::string &type="", const Teuchos::ParameterList &paramList=Teuchos::ParameterList(), const LocalOrdinal &overlap=0)
 
template<>
RCP< MueLu::SmootherPrototype< double, int, int, Xpetra::EpetraNode > > GetIfpackSmoother< double, int, int, Xpetra::EpetraNode > (const std::string &type, const Teuchos::ParameterList &paramList, const int &overlap)
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node1 , class Node2 >
Teuchos::RCP< SmootherBase< Scalar, LocalOrdinal, GlobalOrdinal, Node2 > > clone (const Teuchos::RCP< SmootherBase< Scalar, LocalOrdinal, GlobalOrdinal, Node1 > > &SB, const Teuchos::RCP< const Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node2 > > &cloneA, const RCP< Node2 > &node2)
 
template<class Scalar , class LocalOrdinal >
void LapackQR (Teuchos::LAPACK< LocalOrdinal, Scalar > &lapack, LocalOrdinal myAggSize, int intFineNSDim, ArrayRCP< Scalar > &localQR, ArrayRCP< Scalar > &tau, ArrayRCP< Scalar > &work, LocalOrdinal &workSize, LocalOrdinal &info)
 Non-member templated function to handle extracting Q from QR factorization. More...
 
template<class LocalOrdinal >
void LapackQR (Teuchos::LAPACK< LocalOrdinal, std::complex< double > > &lapack, LocalOrdinal myAggSize, int intFineNSDim, ArrayRCP< std::complex< double > > &localQR, ArrayRCP< std::complex< double > > &tau, ArrayRCP< std::complex< double > > &work, LocalOrdinal &workSize, LocalOrdinal &info)
 Non-member specialized function to handle extracting Q from QR factorization for Scalar==std::complex<double> More...
 
template<class Scalar , class LocalOrdinal >
CompPairs< Scalar, LocalOrdinal > CreateCmpPairs (const std::vector< Scalar > &v)
 
template<class Scalar , class LocalOrdinal >
void sortingPermutation (const std::vector< Scalar > &values, std::vector< LocalOrdinal > &v)
 
template<class Type >
void calculateStats (Type &minVal, Type &maxVal, double &avgVal, double &devVal, const RCP< const Teuchos::Comm< int > > &comm, const Type &v)
 
template<class Type >
std::string stringStats (const RCP< const Teuchos::Comm< int > > &comm, const Type &v, RCP< ParameterList > paramList=Teuchos::null)
 
template<class Map >
bool cmp_less (typename Map::value_type &v1, typename Map::value_type &v2)
 
long ExtractNonSerializableData (const Teuchos::ParameterList &inList, Teuchos::ParameterList &serialList, Teuchos::ParameterList &nonSerialList)
 
void TokenizeStringAndStripWhiteSpace (const std::string &stream, std::vector< std::string > &tokenList, const char *delimChars)
 
bool IsParamMuemexVariable (const std::string &name)
 
template<typename SC , typename LO , typename GO , typename NO >
RCP< Xpetra::CrsMatrixWrap< SC, LO, GO, NO > > Convert_Epetra_CrsMatrix_ToXpetra_CrsMatrixWrap (RCP< Epetra_CrsMatrix > &epAB)
 
template<typename SC , typename LO , typename GO , typename NO >
RCP< Xpetra::Matrix< SC, LO, GO, NO > > EpetraCrs_To_XpetraMatrix (const Teuchos::RCP< Epetra_CrsMatrix > &A)
 
template<typename SC , typename LO , typename GO , typename NO >
RCP< Xpetra::MultiVector< SC, LO, GO, NO > > EpetraMultiVector_To_XpetraMultiVector (const Teuchos::RCP< Epetra_MultiVector > &V)
 
template<typename SC , typename LO , typename GO , typename NO >
RCP< Xpetra::Matrix< SC, LO, GO, NO > > TpetraCrs_To_XpetraMatrix (const Teuchos::RCP< Tpetra::CrsMatrix< SC, LO, GO, NO > > &Atpetra)
 
template<typename SC , typename LO , typename GO , typename NO >
RCP< Xpetra::MultiVector< SC, LO, GO, NO > > TpetraCrs_To_XpetraMultiVector (const Teuchos::RCP< Tpetra::MultiVector< SC, LO, GO, NO > > &Vtpetra)
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > EpetraCrs_To_XpetraMatrix (const Teuchos::RCP< Epetra_CrsMatrix > &A)
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > EpetraMultiVector_To_XpetraMultiVector (const Teuchos::RCP< Epetra_MultiVector > &V)
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > TpetraCrs_To_XpetraMatrix (const Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &Atpetra)
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > TpetraMultiVector_To_XpetraMultiVector (const Teuchos::RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &Vtpetra)
 
template<class T >
std::string toString (const T &what)
 Little helper function to convert non-string types to strings. More...
 
template<class SC , class LO , class GO , class NO >
Kokkos::View< const bool *, typename NO::device_type > DetectDirichletRows (const Xpetra::Matrix< SC, LO, GO, NO > &A, const typename Teuchos::ScalarTraits< SC >::magnitudeType &tol)
 
Teuchos::RCP< MueLu::EpetraOperatorCreateEpetraPreconditioner (const Teuchos::RCP< Epetra_CrsMatrix > &inA, Teuchos::ParameterList &paramListIn, const Teuchos::RCP< Epetra_MultiVector > &inCoords=Teuchos::null, const Teuchos::RCP< Epetra_MultiVector > &inNullspace=Teuchos::null)
 Helper function to create a MueLu preconditioner that can be used by Epetra.Given a EpetraCrs_Matrix, this function returns a constructed MueLu preconditioner. More...
 
Teuchos::RCP< MueLu::EpetraOperatorCreateEpetraPreconditioner (const Teuchos::RCP< Epetra_CrsMatrix > &inA, const Teuchos::RCP< Epetra_MultiVector > &inCoords=Teuchos::null, const Teuchos::RCP< Epetra_MultiVector > &inNullspace=Teuchos::null)
 Helper function to create a MueLu preconditioner that can be used by Epetra.Given a Epetra_CrsMatrix, this function returns a constructed MueLu preconditioner. More...
 
Teuchos::RCP< MueLu::EpetraOperatorCreateEpetraPreconditioner (const Teuchos::RCP< Epetra_CrsMatrix > &A, const std::string &xmlFileName, const Teuchos::RCP< Epetra_MultiVector > &inCoords=Teuchos::null, const Teuchos::RCP< Epetra_MultiVector > &inNullspace=Teuchos::null)
 Helper function to create a MueLu preconditioner that can be used by Epetra.Given a Epetra_CrsMatrix, this function returns a constructed MueLu preconditioner. More...
 
void ReuseEpetraPreconditioner (const Teuchos::RCP< Epetra_CrsMatrix > &inA, MueLu::EpetraOperator &Op)
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP< MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > CreateTpetraPreconditioner (const Teuchos::RCP< Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &inA, Teuchos::ParameterList &inParamList, const Teuchos::RCP< Tpetra::MultiVector< double, LocalOrdinal, GlobalOrdinal, Node >> &inCoords=Teuchos::null, const Teuchos::RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &inNullspace=Teuchos::null)
 Helper function to create a MueLu or AMGX preconditioner that can be used by Tpetra.Given a Tpetra::Operator, this function returns a constructed MueLu preconditioner. More...
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
MUELU_DEPRECATED Teuchos::RCP< MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > CreateTpetraPreconditioner (const Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &inA, Teuchos::ParameterList &inParamList, const Teuchos::RCP< Tpetra::MultiVector< double, LocalOrdinal, GlobalOrdinal, Node >> &inCoords=Teuchos::null, const Teuchos::RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &inNullspace=Teuchos::null)
 Helper function to create a MueLu preconditioner that can be used by Tpetra.Given a Tpetra::CrsMatrix, this function returns a constructed MueLu preconditioner. This method is deprecated. More...
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
MUELU_DEPRECATED Teuchos::RCP< MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > CreateTpetraPreconditioner (const Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &inA, const Teuchos::RCP< Tpetra::MultiVector< double, LocalOrdinal, GlobalOrdinal, Node >> &inCoords=Teuchos::null, const Teuchos::RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &inNullspace=Teuchos::null)
 Helper function to create a MueLu preconditioner that can be used by Tpetra.Given a Tpetra::CrsMatrix, this function returns a constructed MueLu preconditioner. This method is deprecated. More...
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
MUELU_DEPRECATED Teuchos::RCP< MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > CreateTpetraPreconditioner (const Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &inA, const std::string &xmlFileName, const Teuchos::RCP< Tpetra::MultiVector< double, LocalOrdinal, GlobalOrdinal, Node >> &inCoords=Teuchos::null, const Teuchos::RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &inNullspace=Teuchos::null)
 Helper function to create a MueLu preconditioner that can be used by Tpetra.Given a Tpetra::CrsMatrix, this function returns a constructed MueLu preconditioner. This method is deprecated. More...
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP< MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > CreateTpetraPreconditioner (const Teuchos::RCP< Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &inA, const Teuchos::RCP< Tpetra::MultiVector< double, LocalOrdinal, GlobalOrdinal, Node >> &inCoords=Teuchos::null, const Teuchos::RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &inNullspace=Teuchos::null)
 Helper function to create a MueLu preconditioner that can be used by Tpetra.Given a Tpetra::Operator , this function returns a constructed MueLu preconditioner. More...
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP< MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > CreateTpetraPreconditioner (const Teuchos::RCP< Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &inA, const std::string &xmlFileName, const Teuchos::RCP< Tpetra::MultiVector< double, LocalOrdinal, GlobalOrdinal, Node >> &inCoords=Teuchos::null, const Teuchos::RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &inNullspace=Teuchos::null)
 Helper function to create a MueLu preconditioner that can be used by Tpetra.Given a Tpetra::Operator, this function returns a constructed MueLu preconditioner. More...
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void ReuseTpetraPreconditioner (const Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &inA, MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Op)
 Helper function to reuse an existing MueLu preconditioner. More...
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP< MueLu::Hierarchy< Scalar, LocalOrdinal, GlobalOrdinal, Node > > CreateXpetraPreconditioner (Teuchos::RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > op, const Teuchos::ParameterList &inParamList, Teuchos::RCP< Xpetra::MultiVector< double, LocalOrdinal, GlobalOrdinal, Node > > coords=Teuchos::null, Teuchos::RCP< Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > nullspace=Teuchos::null)
 
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void ReuseXpetraPreconditioner (const Teuchos::RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &A, Teuchos::RCP< MueLu::Hierarchy< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &H)
 Helper function to reuse an existing MueLu preconditioner. More...
 
int * mwIndex_to_int (int N, mwIndex *mwi_array)
 
template<>
mxArray * createMatlabSparse< double > (int numRows, int numCols, int nnz)
 
template<>
mxArray * createMatlabSparse< complex_t > (int numRows, int numCols, int nnz)
 
template<>
void fillMatlabArray< double > (double *array, const mxArray *mxa, int n)
 
template<>
void fillMatlabArray< complex_t > (complex_t *array, const mxArray *mxa, int n)
 
void callMatlabNoArgs (std::string function)
 
std::vector< RCP< MuemexArg > > callMatlab (std::string function, int numOutputs, std::vector< RCP< MuemexArg >> args)
 
template<>
mxArray * createMatlabMultiVector< double > (int numRows, int numCols)
 
template<>
mxArray * createMatlabMultiVector< complex_t > (int numRows, int numCols)
 
mxArray * saveAmalInfo (RCP< MAmalInfo > &amalInfo)
 
bool isValidMatlabAggregates (const mxArray *mxa)
 
bool isValidMatlabGraph (const mxArray *mxa)
 
std::vector< std::string > tokenizeList (const std::string &params)
 
Teuchos::RCP< Teuchos::ParameterListgetInputParamList ()
 
Teuchos::RCP< MuemexArgconvertMatlabVar (const mxArray *mxa)
 
template bool loadDataFromMatlab< bool > (const mxArray *mxa)
 
template int loadDataFromMatlab< int > (const mxArray *mxa)
 
template double loadDataFromMatlab< double > (const mxArray *mxa)
 
template complex_t loadDataFromMatlab< complex_t > (const mxArray *mxa)
 
template string loadDataFromMatlab< string > (const mxArray *mxa)
 
template RCP< Xpetra_ordinal_vectorloadDataFromMatlab< RCP< Xpetra_ordinal_vector > > (const mxArray *mxa)
 
template RCP< Tpetra_MultiVector_doubleloadDataFromMatlab< RCP< Tpetra_MultiVector_double > > (const mxArray *mxa)
 
template RCP< Tpetra_MultiVector_complexloadDataFromMatlab< RCP< Tpetra_MultiVector_complex > > (const mxArray *mxa)
 
template RCP< Tpetra_CrsMatrix_doubleloadDataFromMatlab< RCP< Tpetra_CrsMatrix_double > > (const mxArray *mxa)
 
template RCP< Tpetra_CrsMatrix_complexloadDataFromMatlab< RCP< Tpetra_CrsMatrix_complex > > (const mxArray *mxa)
 
template RCP< Xpetra_Matrix_doubleloadDataFromMatlab< RCP< Xpetra_Matrix_double > > (const mxArray *mxa)
 
template RCP< Xpetra_Matrix_complexloadDataFromMatlab< RCP< Xpetra_Matrix_complex > > (const mxArray *mxa)
 
template RCP< Xpetra_MultiVector_doubleloadDataFromMatlab< RCP< Xpetra_MultiVector_double > > (const mxArray *mxa)
 
template RCP< Xpetra_MultiVector_complexloadDataFromMatlab< RCP< Xpetra_MultiVector_complex > > (const mxArray *mxa)
 
template RCP< Epetra_CrsMatrixloadDataFromMatlab< RCP< Epetra_CrsMatrix > > (const mxArray *mxa)
 
template RCP< Epetra_MultiVectorloadDataFromMatlab< RCP< Epetra_MultiVector > > (const mxArray *mxa)
 
template RCP< MAggregatesloadDataFromMatlab< RCP< MAggregates > > (const mxArray *mxa)
 
template RCP< MAmalInfoloadDataFromMatlab< RCP< MAmalInfo > > (const mxArray *mxa)
 
template mxArray * saveDataToMatlab (bool &data)
 
template mxArray * saveDataToMatlab (int &data)
 
template mxArray * saveDataToMatlab (double &data)
 
template mxArray * saveDataToMatlab (complex_t &data)
 
template mxArray * saveDataToMatlab (string &data)
 
template mxArray * saveDataToMatlab (RCP< Xpetra_ordinal_vector > &data)
 
template mxArray * saveDataToMatlab (RCP< Tpetra_MultiVector_double > &data)
 
template mxArray * saveDataToMatlab (RCP< Tpetra_MultiVector_complex > &data)
 
template mxArray * saveDataToMatlab (RCP< Tpetra_CrsMatrix_double > &data)
 
template mxArray * saveDataToMatlab (RCP< Tpetra_CrsMatrix_complex > &data)
 
template mxArray * saveDataToMatlab (RCP< Xpetra_Matrix_double > &data)
 
template mxArray * saveDataToMatlab (RCP< Xpetra_Matrix_complex > &data)
 
template mxArray * saveDataToMatlab (RCP< Xpetra_MultiVector_double > &data)
 
template mxArray * saveDataToMatlab (RCP< Xpetra_MultiVector_complex > &data)
 
template mxArray * saveDataToMatlab (RCP< Epetra_CrsMatrix > &data)
 
template mxArray * saveDataToMatlab (RCP< Epetra_MultiVector > &data)
 
template mxArray * saveDataToMatlab (RCP< MAggregates > &data)
 
template mxArray * saveDataToMatlab (RCP< MAmalInfo > &data)
 
template vector< RCP< MuemexArg > > processNeeds< double > (const Factory *factory, string &needsParam, Level &lvl)
 
template vector< RCP< MuemexArg > > processNeeds< complex_t > (const Factory *factory, string &needsParam, Level &lvl)
 
template void processProvides< double > (vector< RCP< MuemexArg >> &mexOutput, const Factory *factory, string &providesParam, Level &lvl)
 
template void processProvides< complex_t > (vector< RCP< MuemexArg >> &mexOutput, const Factory *factory, string &providesParam, Level &lvl)
 
template<typename T >
MuemexType getMuemexType (const T &data)
 
template<typename T >
MuemexType getMuemexType ()
 
template<typename T >
loadDataFromMatlab (const mxArray *mxa)
 
template<typename T >
mxArray * saveDataToMatlab (T &data)
 
template<typename T >
void addLevelVariable (const T &data, std::string &name, Level &lvl, Factory *fact=NoFactory::get())
 
template<typename T >
const T & getLevelVariable (std::string &name, Level &lvl)
 
template<typename Scalar = double, typename LocalOrdinal = mm_LocalOrd, typename GlobalOrdinal = mm_GlobalOrd, typename Node = mm_node_t>
std::vector< Teuchos::RCP< MuemexArg > > processNeeds (const Factory *factory, std::string &needsParam, Level &lvl)
 
template<typename Scalar = double, typename LocalOrdinal = mm_LocalOrd, typename GlobalOrdinal = mm_GlobalOrd, typename Node = mm_node_t>
void processProvides (std::vector< Teuchos::RCP< MuemexArg >> &mexOutput, const Factory *factory, std::string &providesParam, Level &lvl)
 
template<typename Scalar >
mxArray * createMatlabSparse (int numRows, int numCols, int nnz)
 
template<typename Scalar >
mxArray * createMatlabMultiVector (int numRows, int numCols)
 
template<typename Scalar >
void fillMatlabArray (Scalar *array, const mxArray *mxa, int n)
 
std::vector< Teuchos::RCP< MuemexArg > > callMatlab (std::string function, int numOutputs, std::vector< Teuchos::RCP< MuemexArg >> args)
 
static std::string & ltrim (std::string &s)
 
static std::string & rtrim (std::string &s)
 
static std::string & trim (std::string &s)
 
template<>
MuemexType getMuemexType (const int &data)
 
template<>
MuemexType getMuemexType< int > ()
 
template<>
MuemexType getMuemexType< bool > ()
 
template<>
MuemexType getMuemexType (const double &data)
 
template<>
MuemexType getMuemexType< double > ()
 
template<>
MuemexType getMuemexType (const std::string &data)
 
template<>
MuemexType getMuemexType< string > ()
 
template<>
MuemexType getMuemexType (const complex_t &data)
 
template<>
MuemexType getMuemexType< complex_t > ()
 
template<>
MuemexType getMuemexType (const RCP< Xpetra_map > &data)
 
template<>
MuemexType getMuemexType< RCP< Xpetra_map > > ()
 
template<>
MuemexType getMuemexType (const RCP< Xpetra_ordinal_vector > &data)
 
template<>
MuemexType getMuemexType< RCP< Xpetra_ordinal_vector > > ()
 
template<>
MuemexType getMuemexType (const RCP< Tpetra_MultiVector_double > &data)
 
template<>
MuemexType getMuemexType< RCP< Tpetra_MultiVector_double > > ()
 
template<>
MuemexType getMuemexType (const RCP< Tpetra_MultiVector_complex > &data)
 
template<>
MuemexType getMuemexType< RCP< Tpetra_MultiVector_complex > > ()
 
template<>
MuemexType getMuemexType (const RCP< Tpetra_CrsMatrix_double > &data)
 
template<>
MuemexType getMuemexType< RCP< Tpetra_CrsMatrix_double > > ()
 
template<>
MuemexType getMuemexType (const RCP< Tpetra_CrsMatrix_complex > &data)
 
template<>
MuemexType getMuemexType< RCP< Tpetra_CrsMatrix_complex > > ()
 
template<>
MuemexType getMuemexType (const RCP< Xpetra_MultiVector_double > &data)
 
template<>
MuemexType getMuemexType< RCP< Xpetra_MultiVector_double > > ()
 
template<>
MuemexType getMuemexType (const RCP< Xpetra_MultiVector_complex > &data)
 
template<>
MuemexType getMuemexType< RCP< Xpetra_MultiVector_complex > > ()
 
template<>
MuemexType getMuemexType (const RCP< Xpetra_Matrix_double > &data)
 
template<>
MuemexType getMuemexType< RCP< Xpetra_Matrix_double > > ()
 
template<>
MuemexType getMuemexType (const RCP< Xpetra_Matrix_complex > &data)
 
template<>
MuemexType getMuemexType< RCP< Xpetra_Matrix_complex > > ()
 
template<>
MuemexType getMuemexType (const RCP< Epetra_CrsMatrix > &data)
 
template<>
MuemexType getMuemexType< RCP< Epetra_CrsMatrix > > ()
 
template<>
MuemexType getMuemexType (const RCP< Epetra_MultiVector > &data)
 
template<>
MuemexType getMuemexType< RCP< Epetra_MultiVector > > ()
 
template<>
MuemexType getMuemexType (const RCP< MAggregates > &data)
 
template<>
MuemexType getMuemexType< RCP< MAggregates > > ()
 
template<>
MuemexType getMuemexType (const RCP< MAmalInfo > &data)
 
template<>
MuemexType getMuemexType< RCP< MAmalInfo > > ()
 
template<>
MuemexType getMuemexType (const RCP< MGraph > &data)
 
template<>
MuemexType getMuemexType< RCP< MGraph > > ()
 
template<>
RCP< Xpetra_maploadDataFromMatlab< RCP< Xpetra_map > > (const mxArray *mxa)
 
template<>
RCP< Xpetra::Matrix< double, mm_LocalOrd, mm_GlobalOrd, mm_node_t > > loadDataFromMatlab< RCP< Xpetra::Matrix< double, mm_LocalOrd, mm_GlobalOrd, mm_node_t > > > (const mxArray *mxa)
 
template<>
RCP< Xpetra::Matrix< complex_t, mm_LocalOrd, mm_GlobalOrd, mm_node_t > > loadDataFromMatlab< RCP< Xpetra::Matrix< complex_t, mm_LocalOrd, mm_GlobalOrd, mm_node_t > > > (const mxArray *mxa)
 
template<>
RCP< Xpetra::MultiVector< double, mm_LocalOrd, mm_GlobalOrd, mm_node_t > > loadDataFromMatlab< RCP< Xpetra::MultiVector< double, mm_LocalOrd, mm_GlobalOrd, mm_node_t > > > (const mxArray *mxa)
 
template<>
RCP< Xpetra::MultiVector< complex_t, mm_LocalOrd, mm_GlobalOrd, mm_node_t > > loadDataFromMatlab< RCP< Xpetra::MultiVector< complex_t, mm_LocalOrd, mm_GlobalOrd, mm_node_t > > > (const mxArray *mxa)
 
template<>
RCP< MGraphloadDataFromMatlab< RCP< MGraph > > (const mxArray *mxa)
 
template<>
mxArray * saveDataToMatlab (RCP< Xpetra_map > &data)
 
template<>
mxArray * saveDataToMatlab (RCP< Tpetra::MultiVector< double, mm_LocalOrd, mm_GlobalOrd, mm_node_t >> &data)
 
template<>
mxArray * saveDataToMatlab (RCP< Tpetra::MultiVector< complex_t, mm_LocalOrd, mm_GlobalOrd, mm_node_t >> &data)
 
template<>
mxArray * saveDataToMatlab (RCP< Xpetra::MultiVector< double, mm_LocalOrd, mm_GlobalOrd, mm_node_t >> &data)
 
template<>
mxArray * saveDataToMatlab (RCP< Xpetra::MultiVector< complex_t, mm_LocalOrd, mm_GlobalOrd, mm_node_t >> &data)
 
template<>
mxArray * saveDataToMatlab (RCP< MGraph > &data)
 
template<typename T >
void addLevelVariable (const T &data, std::string &name, Level &lvl, const Factory *fact)
 
template<>
std::vector< Teuchos::RCP< MuemexArg > > processNeeds< double, mm_LocalOrd, long long, mm_node_t > (const Factory *factory, std::string &needsParam, Level &lvl)
 
template<>
std::vector< Teuchos::RCP< MuemexArg > > processNeeds< complex_t, mm_LocalOrd, long long, mm_node_t > (const Factory *factory, std::string &needsParam, Level &lvl)
 
template<>
void processProvides< double, mm_LocalOrd, long long, mm_node_t > (std::vector< Teuchos::RCP< MuemexArg >> &mexOutput, const Factory *factory, std::string &providesParam, Level &lvl)
 
template<>
void processProvides< complex_t, mm_LocalOrd, long long, mm_node_t > (std::vector< Teuchos::RCP< MuemexArg >> &mexOutput, const Factory *factory, std::string &providesParam, Level &lvl)
 

Variables

std::map< std::string, std::string > myParent_
 
bool rewrap_ints = sizeof(int) != sizeof(mwIndex)
 

Detailed Description

Namespace for MueLu classes and methods.

Typedef Documentation

◆ MueLu_Node

◆ MueLu_SuperNode

◆ KeepType

typedef short MueLu::KeepType

Definition at line 63 of file MueLu_KeepType.hpp.

◆ VerbLevel

typedef int MueLu::VerbLevel

Definition at line 107 of file MueLu_VerbosityLevel.hpp.

◆ mm_node_t

typedef Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> MueLu::mm_node_t

Definition at line 104 of file MueLu_MatlabUtils_decl.hpp.

◆ mm_LocalOrd

typedef int MueLu::mm_LocalOrd

Definition at line 105 of file MueLu_MatlabUtils_decl.hpp.

◆ mm_GlobalOrd

typedef int MueLu::mm_GlobalOrd

Definition at line 106 of file MueLu_MatlabUtils_decl.hpp.

◆ complex_t

typedef std::complex<double> MueLu::complex_t

Definition at line 107 of file MueLu_MatlabUtils_decl.hpp.

◆ muemex_map_type

typedef Tpetra::Map MueLu::muemex_map_type

Definition at line 108 of file MueLu_MatlabUtils_decl.hpp.

◆ Tpetra_CrsMatrix_double

typedef Tpetra::CrsMatrix<double, mm_LocalOrd, mm_GlobalOrd, mm_node_t> MueLu::Tpetra_CrsMatrix_double

Definition at line 109 of file MueLu_MatlabUtils_decl.hpp.

◆ Tpetra_CrsMatrix_complex

◆ Tpetra_MultiVector_double

typedef Tpetra::MultiVector<double, mm_LocalOrd, mm_GlobalOrd, mm_node_t> MueLu::Tpetra_MultiVector_double

Definition at line 111 of file MueLu_MatlabUtils_decl.hpp.

◆ Tpetra_MultiVector_complex

◆ Xpetra_map

◆ Xpetra_ordinal_vector

◆ Xpetra_Matrix_double

◆ Xpetra_Matrix_complex

◆ Xpetra_MultiVector_double

◆ Xpetra_MultiVector_complex

◆ Hierarchy_double

◆ Hierarchy_complex

◆ MAggregates

◆ MAmalInfo

◆ MGraph

Enumeration Type Documentation

◆ CANodeState

Enumerator
CA_READY 
CA_NOTSEL 
CA_SELECTED 

Definition at line 73 of file MueLu_LocalAggregationAlgorithm_decl.hpp.

◆ CycleType

Enumerator
VCYCLE 
WCYCLE 

Definition at line 52 of file MueLu_Types.hpp.

◆ PreOrPost

Enumerator
PRE 
POST 
BOTH 

Definition at line 57 of file MueLu_Types.hpp.

◆ NodeState

Enumerator
READY 
NOTSEL 
AGGREGATED 
ONEPT 
IGNORED 
BOUNDARY 

Definition at line 64 of file MueLu_Types.hpp.

◆ ReturnType

Enumerator
Converged 
Unconverged 
Undefined 

Definition at line 83 of file MueLu_Hierarchy_decl.hpp.

◆ KeepEnum

Keep status of a variable of Level.

Enumerator
UserData 

User data are always kept. This flag is set automatically when Level::Set("data", data) is used. The keep status of the variable is not propagated to coarser level (if you use Level::Build()).

Keep 

Always keep data, even accross run. This flag is set by Level::Keep(). This flag is propagated to coarser level by Level::Build().

Final 

Keep data only for this run. Used to keep data useful for Hierarchy::Iterate(). Data will be deleted if setup phase is re-run. This flag is set by default for A, P, R, PreSmoother and PostSmoother of NoFactory by Hierarchy::Setup(). Not propagated by Level::Build().

NextRun 

Both UserData and Keep flags force data to be kept and reused for the next run. Do not use MueLu::NextRun in AddKeepFlag. Use it only for testing keep == UserData || keep == Keep.

All 

Definition at line 53 of file MueLu_KeepType.hpp.

◆ MsgType

Enumerator
Errors 

Errors.

Warnings0 

Important warning messages (one line)

Warnings00 

Important warning messages (more verbose)

Warnings1 

Additional warnings.

PerfWarnings 

Performance warnings.

Runtime0 

One-liner description of what is happening.

Runtime1 

Description of what is happening (more verbose)

RuntimeTimings 

Timers that are enabled (using Timings0/Timings1) will be printed during the execution.

NoTimeReport 

By default, enabled timers appears in the teuchos time monitor summary. Use this option if you do not want to record timing information.

Parameters0 

Print class parameters.

Parameters1 

Print class parameters (more parameters, more verbose)

Statistics0 

Print statistics that do not involve significant additional computation.

Statistics1 

Print more statistics.

Statistics2 

Print even more statistics.

Timings0 

High level timing information (use Teuchos::TimeMonitor::summarize() to print)

Timings1 

Detailed timing information (use Teuchos::TimeMonitor::summarize() to print)

TimingsByLevel 

Record timing information level by level. Must be used in combinaison with Timings0/Timings1.

External 

Print external lib objects.

Debug 

Print additional debugging information.

Test 

Print skeleton for the run, i.e. factory calls and used parameters.

Warnings 

Print all warning messages.

Runtime 

Print description of what is going on.

Parameters 

Print parameters.

Statistics 

Print all statistics.

Timings 

Print all timing information.

None 
Low 
Medium 
High 
Extreme 
Default 
NotSpecified 

Definition at line 53 of file MueLu_VerbosityLevel.hpp.

◆ MinimizationNorm

Enumerator
ANORM 
L2NORM 
DINVANORM 

Definition at line 68 of file MueLu_PgPFactory_decl.hpp.

◆ MuemexType

Enumerator
INT 
BOOL 
DOUBLE 
COMPLEX 
STRING 
XPETRA_MAP 
XPETRA_ORDINAL_VECTOR 
TPETRA_MULTIVECTOR_DOUBLE 
TPETRA_MULTIVECTOR_COMPLEX 
TPETRA_MATRIX_DOUBLE 
TPETRA_MATRIX_COMPLEX 
XPETRA_MATRIX_DOUBLE 
XPETRA_MATRIX_COMPLEX 
XPETRA_MULTIVECTOR_DOUBLE 
XPETRA_MULTIVECTOR_COMPLEX 
EPETRA_CRSMATRIX 
EPETRA_MULTIVECTOR 
AGGREGATES 
AMALGAMATION_INFO 
GRAPH 

Definition at line 80 of file MueLu_MatlabUtils_decl.hpp.

Function Documentation

◆ Version()

std::string const MueLu::Version ( )
inline

Definition at line 58 of file MueLu_Version.hpp.

◆ CreateSublists()

void MueLu::CreateSublists ( const ParameterList List,
ParameterList newList 
)

Definition at line 64 of file MueLu_ParameterListUtils.cpp.

◆ LevenshteinDistance()

int MueLu::LevenshteinDistance ( const char *  s,
size_t  len_s,
const char *  t,
size_t  len_t 
)

Definition at line 54 of file Interface/MueLu_ParameterListInterpreter.cpp.

◆ areSame()

static bool MueLu::areSame ( const ParameterList list1,
const ParameterList list2 
)
inlinestatic

Helper functions to compare two paramter lists.

Definition at line 1526 of file MueLu_ParameterListInterpreter_def.hpp.

◆ compare()

static bool MueLu::compare ( const ParameterList list1,
const ParameterList list2 
)
static

Definition at line 1505 of file MueLu_ParameterListInterpreter_def.hpp.

◆ MergeParameterList()

void MueLu::MergeParameterList ( const Teuchos::ParameterList source,
Teuchos::ParameterList dest,
bool  overWrite 
)

: merge two parameter lists

Parameters
source[in]: parameter lists with source parameters which are to be merged in into the dest parameter list
dest[in,out]: parameter list with, e.g., default parameters which is extended by parameters from source parameter list
overWrite(bool): if true, overwrite parameters in dest with entries from source

Definition at line 58 of file MueLu_ParameterListUtils.cpp.

◆ GetMLSubList()

const Teuchos::ParameterList & MueLu::GetMLSubList ( const Teuchos::ParameterList paramList,
const std::string &  type,
int  levelID 
)

Definition at line 145 of file MueLu_ParameterListUtils.cpp.

◆ ExtractSetOfParameters()

Teuchos::RCP< Teuchos::ParameterList > MueLu::ExtractSetOfParameters ( const Teuchos::ParameterList paramList,
const std::string &  str 
)

Definition at line 160 of file MueLu_ParameterListUtils.cpp.

◆ replaceAll()

void MueLu::replaceAll ( std::string &  str,
const std::string &  from,
const std::string &  to 
)

replace all string occurences "from" with "to" in "str"

Parameters
strinput and output string
fromsearch string
toreplace with "to"

Definition at line 175 of file MueLu_ParameterListUtils.cpp.

◆ replacePlaceholder()

template<typename Type >
bool MueLu::replacePlaceholder ( std::string &  str,
const std::string &  placeholder,
Type  data 
)

templated version to replace placeholder by data in "str"

Definition at line 79 of file MueLu_ParameterListUtils.hpp.

◆ actionInterpretParameter()

template<typename Type >
bool MueLu::actionInterpretParameter ( Teuchos::ParameterList mlParams,
const std::string &  paramName,
std::string &  str 
)

Definition at line 87 of file MueLu_ParameterListUtils.hpp.

◆ printParameterListOptions()

void MueLu::printParameterListOptions ( std::ostream &  os,
const Teuchos::ParameterList p 
)
inline

Definition at line 19 of file MueLu_ParameterListAcceptor.hpp.

◆ toMueLuVerbLevel()

VerbLevel MueLu::toMueLuVerbLevel ( const Teuchos::EVerbosityLevel  verbLevel)

Definition at line 51 of file MueLu_VerbosityLevel.cpp.

◆ compareTriplets()

template<typename T , typename W >
static bool MueLu::compareTriplets ( const Triplet< T, W > &  a,
const Triplet< T, W > &  b 
)
static

Definition at line 377 of file MueLu_RepartitionFactory_def.hpp.

◆ GetAmesosSmoother()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP<MueLu::SmootherPrototype<Scalar, LocalOrdinal, GlobalOrdinal, Node> > MueLu::GetAmesosSmoother ( const std::string &  type = "",
const Teuchos::ParameterList paramList = Teuchos::ParameterList () 
)

Non-member templated function GetAmesosSmoother() returns a new AmesosSmoother object.

This function simplifies the usage of AmesosSmoother objects inside of templates as templates do not have to be specialized for <double, int, int> (see DirectSolver for an example).

Definition at line 194 of file MueLu_AmesosSmoother.hpp.

◆ GetIfpackSmoother()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP<MueLu::SmootherPrototype<Scalar, LocalOrdinal, GlobalOrdinal, Node> > MueLu::GetIfpackSmoother ( const std::string &  type = "",
const Teuchos::ParameterList paramList = Teuchos::ParameterList (),
const LocalOrdinal &  overlap = 0 
)

Non-member templated function GetIfpackSmoother() returns a new IfpackSmoother object when <Scalar, LocalOrdinal, GlobalOrdinal> == <double, int, int>. Otherwise, an exception is thrown. This function simplifies the usage of IfpackSmoother objects inside of templates as templates do not have to be specialized for <double, int, int> (see DirectSolver for an example).

Definition at line 204 of file MueLu_IfpackSmoother.hpp.

◆ GetIfpackSmoother< double, int, int, Xpetra::EpetraNode >()

template<>
RCP<MueLu::SmootherPrototype<double, int, int, Xpetra::EpetraNode> > MueLu::GetIfpackSmoother< double, int, int, Xpetra::EpetraNode > ( const std::string &  type,
const Teuchos::ParameterList paramList,
const int &  overlap 
)
inline

Definition at line 216 of file MueLu_IfpackSmoother.hpp.

◆ clone()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node1 , class Node2 >
Teuchos::RCP<SmootherBase<Scalar,LocalOrdinal,GlobalOrdinal,Node2> > MueLu::clone ( const Teuchos::RCP< SmootherBase< Scalar, LocalOrdinal, GlobalOrdinal, Node1 > > &  SB,
const Teuchos::RCP< const Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node2 > > &  cloneA,
const RCP< Node2 > &  node2 
)

Definition at line 64 of file MueLu_SmootherCloner.hpp.

◆ LapackQR() [1/2]

template<class Scalar , class LocalOrdinal >
void MueLu::LapackQR ( Teuchos::LAPACK< LocalOrdinal, Scalar > &  lapack,
LocalOrdinal  myAggSize,
int  intFineNSDim,
ArrayRCP< Scalar > &  localQR,
ArrayRCP< Scalar > &  tau,
ArrayRCP< Scalar > &  work,
LocalOrdinal &  workSize,
LocalOrdinal &  info 
)

Non-member templated function to handle extracting Q from QR factorization.

Non-member templated function to handle extracting Q from QR factorization for different Scalar types.

Definition at line 18 of file MueLu_QR_InterfaceEx_def.hpp.

◆ LapackQR() [2/2]

template<class LocalOrdinal >
void MueLu::LapackQR ( Teuchos::LAPACK< LocalOrdinal, std::complex< double > > &  lapack,
LocalOrdinal  myAggSize,
int  intFineNSDim,
ArrayRCP< std::complex< double > > &  localQR,
ArrayRCP< std::complex< double > > &  tau,
ArrayRCP< std::complex< double > > &  work,
LocalOrdinal &  workSize,
LocalOrdinal &  info 
)

Non-member specialized function to handle extracting Q from QR factorization for Scalar==std::complex<double>

Non-member specialized function to handle extracting Q from QR factorization for Scalar==complex.

Definition at line 28 of file MueLu_QR_InterfaceEx_def.hpp.

◆ CreateCmpPairs()

template<class Scalar , class LocalOrdinal >
CompPairs<Scalar,LocalOrdinal> MueLu::CreateCmpPairs ( const std::vector< Scalar > &  v)

Definition at line 41 of file MueLu_AlgebraicPermutationStrategy_decl.hpp.

◆ sortingPermutation()

template<class Scalar , class LocalOrdinal >
void MueLu::sortingPermutation ( const std::vector< Scalar > &  values,
std::vector< LocalOrdinal > &  v 
)

Definition at line 47 of file MueLu_AlgebraicPermutationStrategy_decl.hpp.

◆ calculateStats()

template<class Type >
void MueLu::calculateStats ( Type &  minVal,
Type &  maxVal,
double &  avgVal,
double &  devVal,
const RCP< const Teuchos::Comm< int > > &  comm,
const Type &  v 
)

Definition at line 67 of file MueLu_PerfUtils_def.hpp.

◆ stringStats()

template<class Type >
std::string MueLu::stringStats ( const RCP< const Teuchos::Comm< int > > &  comm,
const Type &  v,
RCP< ParameterList paramList = Teuchos::null 
)

Definition at line 82 of file MueLu_PerfUtils_def.hpp.

◆ cmp_less()

template<class Map >
bool MueLu::cmp_less ( typename Map::value_type &  v1,
typename Map::value_type &  v2 
)

Definition at line 98 of file MueLu_PerfUtils_def.hpp.

◆ ExtractNonSerializableData()

long MueLu::ExtractNonSerializableData ( const Teuchos::ParameterList inList,
Teuchos::ParameterList serialList,
Teuchos::ParameterList nonSerialList 
)

Removes the following non-serializable data (A,P,R,Nullspace,Coordinates) from level-specific sublists from inList and moves it to nonSerialList. Everything else is copied to serialList. This function returns the level number of the highest level for which non-serializable data was provided.

Definition at line 62 of file MueLu_Utilities.cpp.

◆ TokenizeStringAndStripWhiteSpace()

void MueLu::TokenizeStringAndStripWhiteSpace ( const std::string &  stream,
std::vector< std::string > &  tokenList,
const char *  token = "," 
)

Tokenizes a (comma)-separated string, removing all leading and trailing whitespace WARNING: This routine is not threadsafe on most architectures

Definition at line 101 of file MueLu_Utilities.cpp.

◆ IsParamMuemexVariable()

bool MueLu::IsParamMuemexVariable ( const std::string &  name)

Returns true if a parameter name is a valid Muemex custom level variable, e.g. "MultiVector myArray"

Definition at line 134 of file MueLu_Utilities.cpp.

◆ Convert_Epetra_CrsMatrix_ToXpetra_CrsMatrixWrap()

template<typename SC , typename LO , typename GO , typename NO >
RCP< Xpetra::CrsMatrixWrap< SC, LO, GO, NO > > MueLu::Convert_Epetra_CrsMatrix_ToXpetra_CrsMatrixWrap ( RCP< Epetra_CrsMatrix > &  epAB)

◆ EpetraCrs_To_XpetraMatrix() [1/2]

template<typename SC , typename LO , typename GO , typename NO >
RCP<Xpetra::Matrix<SC, LO, GO, NO> > MueLu::EpetraCrs_To_XpetraMatrix ( const Teuchos::RCP< Epetra_CrsMatrix > &  A)

Definition at line 854 of file MueLu_Utilities_decl.hpp.

◆ EpetraMultiVector_To_XpetraMultiVector() [1/2]

template<typename SC , typename LO , typename GO , typename NO >
RCP<Xpetra::MultiVector<SC, LO, GO, NO> > MueLu::EpetraMultiVector_To_XpetraMultiVector ( const Teuchos::RCP< Epetra_MultiVector > &  V)

Definition at line 869 of file MueLu_Utilities_decl.hpp.

◆ TpetraCrs_To_XpetraMatrix() [1/2]

template<typename SC , typename LO , typename GO , typename NO >
RCP<Xpetra::Matrix<SC, LO, GO, NO> > MueLu::TpetraCrs_To_XpetraMatrix ( const Teuchos::RCP< Tpetra::CrsMatrix< SC, LO, GO, NO > > &  Atpetra)

Definition at line 881 of file MueLu_Utilities_decl.hpp.

◆ TpetraCrs_To_XpetraMultiVector()

template<typename SC , typename LO , typename GO , typename NO >
RCP<Xpetra::MultiVector<SC, LO, GO, NO> > MueLu::TpetraCrs_To_XpetraMultiVector ( const Teuchos::RCP< Tpetra::MultiVector< SC, LO, GO, NO > > &  Vtpetra)

◆ EpetraCrs_To_XpetraMatrix() [2/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > MueLu::EpetraCrs_To_XpetraMatrix ( const Teuchos::RCP< Epetra_CrsMatrix > &  A)

Definition at line 854 of file MueLu_Utilities_decl.hpp.

◆ EpetraMultiVector_To_XpetraMultiVector() [2/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > MueLu::EpetraMultiVector_To_XpetraMultiVector ( const Teuchos::RCP< Epetra_MultiVector > &  V)

Definition at line 869 of file MueLu_Utilities_decl.hpp.

◆ TpetraCrs_To_XpetraMatrix() [2/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > MueLu::TpetraCrs_To_XpetraMatrix ( const Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  Atpetra)

Definition at line 881 of file MueLu_Utilities_decl.hpp.

◆ TpetraMultiVector_To_XpetraMultiVector()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > MueLu::TpetraMultiVector_To_XpetraMultiVector ( const Teuchos::RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  Vtpetra)

Definition at line 896 of file MueLu_Utilities_decl.hpp.

◆ toString()

template<class T >
std::string MueLu::toString ( const T &  what)

Little helper function to convert non-string types to strings.

Definition at line 903 of file MueLu_Utilities_decl.hpp.

◆ DetectDirichletRows()

template<class SC , class LO , class GO , class NO >
Kokkos::View<const bool*, typename NO::device_type> MueLu::DetectDirichletRows ( const Xpetra::Matrix< SC, LO, GO, NO > &  A,
const typename Teuchos::ScalarTraits< SC >::magnitudeType &  tol 
)

Definition at line 376 of file MueLu_Utilities_kokkos_def.hpp.

◆ CreateEpetraPreconditioner() [1/3]

Teuchos::RCP<MueLu::EpetraOperator> MueLu::CreateEpetraPreconditioner ( const Teuchos::RCP< Epetra_CrsMatrix > &  inA,
Teuchos::ParameterList paramListIn,
const Teuchos::RCP< Epetra_MultiVector > &  inCoords = Teuchos::null,
const Teuchos::RCP< Epetra_MultiVector > &  inNullspace = Teuchos::null 
)

Helper function to create a MueLu preconditioner that can be used by Epetra.Given a EpetraCrs_Matrix, this function returns a constructed MueLu preconditioner.

Parameters
[in]inAMatrix
[in]paramListInParameter list
[in]inCoords(optional) Coordinates. The first vector is x, the second (if necessary) y, the third (if necessary) z.
[in]inNullspace(optional) Near nullspace of the matrix.

Definition at line 36 of file MueLu_CreateEpetraPreconditioner.hpp.

◆ CreateEpetraPreconditioner() [2/3]

Teuchos::RCP<MueLu::EpetraOperator> MueLu::CreateEpetraPreconditioner ( const Teuchos::RCP< Epetra_CrsMatrix > &  inA,
const Teuchos::RCP< Epetra_MultiVector > &  inCoords = Teuchos::null,
const Teuchos::RCP< Epetra_MultiVector > &  inNullspace = Teuchos::null 
)

Helper function to create a MueLu preconditioner that can be used by Epetra.Given a Epetra_CrsMatrix, this function returns a constructed MueLu preconditioner.

Parameters
[in]inAMatrix
[in]inCoords(optional) Coordinates. The first vector is x, the second (if necessary) y, the third (if necessary) z.
[in]inNullspace(optional) Near nullspace of the matrix.

Definition at line 76 of file MueLu_CreateEpetraPreconditioner.hpp.

◆ CreateEpetraPreconditioner() [3/3]

Teuchos::RCP<MueLu::EpetraOperator> MueLu::CreateEpetraPreconditioner ( const Teuchos::RCP< Epetra_CrsMatrix > &  A,
const std::string &  xmlFileName,
const Teuchos::RCP< Epetra_MultiVector > &  inCoords = Teuchos::null,
const Teuchos::RCP< Epetra_MultiVector > &  inNullspace = Teuchos::null 
)

Helper function to create a MueLu preconditioner that can be used by Epetra.Given a Epetra_CrsMatrix, this function returns a constructed MueLu preconditioner.

Parameters
[in]inAMatrix
[in]xmlFileNameXML file containing MueLu options
[in]inCoords(optional) Coordinates. The first vector is x, the second (if necessary) y, the third (if necessary) z.
[in]inNullspace(optional) Near nullspace of the matrix.

Definition at line 93 of file MueLu_CreateEpetraPreconditioner.hpp.

◆ ReuseEpetraPreconditioner()

void MueLu::ReuseEpetraPreconditioner ( const Teuchos::RCP< Epetra_CrsMatrix > &  inA,
MueLu::EpetraOperator Op 
)

Definition at line 104 of file MueLu_CreateEpetraPreconditioner.hpp.

◆ CreateTpetraPreconditioner() [1/6]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP<MueLu::TpetraOperator<Scalar,LocalOrdinal,GlobalOrdinal,Node> > MueLu::CreateTpetraPreconditioner ( const Teuchos::RCP< Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  inA,
Teuchos::ParameterList inParamList,
const Teuchos::RCP< Tpetra::MultiVector< double, LocalOrdinal, GlobalOrdinal, Node >> &  inCoords = Teuchos::null,
const Teuchos::RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &  inNullspace = Teuchos::null 
)

Helper function to create a MueLu or AMGX preconditioner that can be used by Tpetra.Given a Tpetra::Operator, this function returns a constructed MueLu preconditioner.

Parameters
[in]inAMatrix
[in]inParamListParameter list
[in]inCoords(optional) Coordinates. The first vector is x, the second (if necessary) y, the third (if necessary) z.
[in]inNullspace(optional) Near nullspace of the matrix.

Definition at line 49 of file MueLu_CreateTpetraPreconditioner.hpp.

◆ CreateTpetraPreconditioner() [2/6]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
MUELU_DEPRECATED Teuchos::RCP<MueLu::TpetraOperator<Scalar,LocalOrdinal,GlobalOrdinal,Node> > MueLu::CreateTpetraPreconditioner ( const Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  inA,
Teuchos::ParameterList inParamList,
const Teuchos::RCP< Tpetra::MultiVector< double, LocalOrdinal, GlobalOrdinal, Node >> &  inCoords = Teuchos::null,
const Teuchos::RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &  inNullspace = Teuchos::null 
)

Helper function to create a MueLu preconditioner that can be used by Tpetra.Given a Tpetra::CrsMatrix, this function returns a constructed MueLu preconditioner. This method is deprecated.

Parameters
[in]inAMatrix
[in]inParamListParameter list
[in]inCoords(optional) Coordinates. The first vector is x, the second (if necessary) y, the third (if necessary) z.
[in]inNullspace(optional) Near nullspace of the matrix.

Definition at line 121 of file MueLu_CreateTpetraPreconditioner.hpp.

◆ CreateTpetraPreconditioner() [3/6]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
MUELU_DEPRECATED Teuchos::RCP<MueLu::TpetraOperator<Scalar,LocalOrdinal,GlobalOrdinal,Node> > MueLu::CreateTpetraPreconditioner ( const Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  inA,
const Teuchos::RCP< Tpetra::MultiVector< double, LocalOrdinal, GlobalOrdinal, Node >> &  inCoords = Teuchos::null,
const Teuchos::RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &  inNullspace = Teuchos::null 
)

Helper function to create a MueLu preconditioner that can be used by Tpetra.Given a Tpetra::CrsMatrix, this function returns a constructed MueLu preconditioner. This method is deprecated.

Parameters
[in]inAMatrix
[in]inCoords(optional) Coordinates. The first vector is x, the second (if necessary) y, the third (if necessary) z.
[in]inNullspace(optional) Near nullspace of the matrix.

Definition at line 145 of file MueLu_CreateTpetraPreconditioner.hpp.

◆ CreateTpetraPreconditioner() [4/6]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
MUELU_DEPRECATED Teuchos::RCP<MueLu::TpetraOperator<Scalar,LocalOrdinal,GlobalOrdinal,Node> > MueLu::CreateTpetraPreconditioner ( const Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  inA,
const std::string &  xmlFileName,
const Teuchos::RCP< Tpetra::MultiVector< double, LocalOrdinal, GlobalOrdinal, Node >> &  inCoords = Teuchos::null,
const Teuchos::RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &  inNullspace = Teuchos::null 
)

Helper function to create a MueLu preconditioner that can be used by Tpetra.Given a Tpetra::CrsMatrix, this function returns a constructed MueLu preconditioner. This method is deprecated.

Parameters
[in]inAMatrix
[in]xmlFileNameXML file containing MueLu options
[in]inCoords(optional) Coordinates. The first vector is x, the second (if necessary) y, the third (if necessary) z.
[in]inNullspace(optional) Near nullspace of the matrix.

Definition at line 170 of file MueLu_CreateTpetraPreconditioner.hpp.

◆ CreateTpetraPreconditioner() [5/6]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP<MueLu::TpetraOperator<Scalar,LocalOrdinal,GlobalOrdinal,Node> > MueLu::CreateTpetraPreconditioner ( const Teuchos::RCP< Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  inA,
const Teuchos::RCP< Tpetra::MultiVector< double, LocalOrdinal, GlobalOrdinal, Node >> &  inCoords = Teuchos::null,
const Teuchos::RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &  inNullspace = Teuchos::null 
)

Helper function to create a MueLu preconditioner that can be used by Tpetra.Given a Tpetra::Operator , this function returns a constructed MueLu preconditioner.

Parameters
[in]inAMatrix
[in]inCoords(optional) Coordinates. The first vector is x, the second (if necessary) y, the third (if necessary) z.
[in]inNullspace(optional) Near nullspace of the matrix.

Definition at line 195 of file MueLu_CreateTpetraPreconditioner.hpp.

◆ CreateTpetraPreconditioner() [6/6]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP<MueLu::TpetraOperator<Scalar,LocalOrdinal,GlobalOrdinal,Node> > MueLu::CreateTpetraPreconditioner ( const Teuchos::RCP< Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  inA,
const std::string &  xmlFileName,
const Teuchos::RCP< Tpetra::MultiVector< double, LocalOrdinal, GlobalOrdinal, Node >> &  inCoords = Teuchos::null,
const Teuchos::RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &  inNullspace = Teuchos::null 
)

Helper function to create a MueLu preconditioner that can be used by Tpetra.Given a Tpetra::Operator, this function returns a constructed MueLu preconditioner.

Parameters
[in]inAMatrix
[in]xmlFileNameXML file containing MueLu options
[in]inCoords(optional) Coordinates. The first vector is x, the second (if necessary) y, the third (if necessary) z.
[in]inNullspace(optional) Near nullspace of the matrix.

Definition at line 217 of file MueLu_CreateTpetraPreconditioner.hpp.

◆ ReuseTpetraPreconditioner()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void MueLu::ReuseTpetraPreconditioner ( const Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  inA,
MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node > &  Op 
)

Helper function to reuse an existing MueLu preconditioner.

Parameters
[in]inAMatrix
[in]OpExisting MueLu preconditioner.

Definition at line 236 of file MueLu_CreateTpetraPreconditioner.hpp.

◆ CreateXpetraPreconditioner()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP<MueLu::Hierarchy<Scalar,LocalOrdinal,GlobalOrdinal,Node> > MueLu::CreateXpetraPreconditioner ( Teuchos::RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > >  op,
const Teuchos::ParameterList inParamList,
Teuchos::RCP< Xpetra::MultiVector< double, LocalOrdinal, GlobalOrdinal, Node > >  coords = Teuchos::null,
Teuchos::RCP< Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > >  nullspace = Teuchos::null 
)

Definition at line 30 of file MueLu_CreateXpetraPreconditioner.hpp.

◆ ReuseXpetraPreconditioner()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void MueLu::ReuseXpetraPreconditioner ( const Teuchos::RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  A,
Teuchos::RCP< MueLu::Hierarchy< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &  H 
)

Helper function to reuse an existing MueLu preconditioner.

Parameters
[in]inAMatrix
[in]OpExisting MueLu preconditioner.

Definition at line 136 of file MueLu_CreateXpetraPreconditioner.hpp.

◆ mwIndex_to_int()

int * MueLu::mwIndex_to_int ( int  N,
mwIndex mwi_array 
)

Definition at line 85 of file MueLu_MatlabUtils.cpp.

◆ createMatlabSparse< double >()

template<>
mxArray * MueLu::createMatlabSparse< double > ( int  numRows,
int  numCols,
int  nnz 
)

Definition at line 98 of file MueLu_MatlabUtils.cpp.

◆ createMatlabSparse< complex_t >()

template<>
mxArray * MueLu::createMatlabSparse< complex_t > ( int  numRows,
int  numCols,
int  nnz 
)

Definition at line 103 of file MueLu_MatlabUtils.cpp.

◆ fillMatlabArray< double >()

template<>
void MueLu::fillMatlabArray< double > ( double *  array,
const mxArray *  mxa,
int  n 
)

Definition at line 108 of file MueLu_MatlabUtils.cpp.

◆ fillMatlabArray< complex_t >()

template<>
void MueLu::fillMatlabArray< complex_t > ( complex_t array,
const mxArray *  mxa,
int  n 
)

Definition at line 113 of file MueLu_MatlabUtils.cpp.

◆ callMatlabNoArgs()

void MueLu::callMatlabNoArgs ( std::string  function)

Definition at line 128 of file MueLu_MatlabUtils.cpp.

◆ callMatlab() [1/2]

std::vector<RCP<MuemexArg> > MueLu::callMatlab ( std::string  function,
int  numOutputs,
std::vector< RCP< MuemexArg >>  args 
)

Definition at line 135 of file MueLu_MatlabUtils.cpp.

◆ createMatlabMultiVector< double >()

template<>
mxArray * MueLu::createMatlabMultiVector< double > ( int  numRows,
int  numCols 
)

Definition at line 244 of file MueLu_MatlabUtils.cpp.

◆ createMatlabMultiVector< complex_t >()

template<>
mxArray * MueLu::createMatlabMultiVector< complex_t > ( int  numRows,
int  numCols 
)

Definition at line 249 of file MueLu_MatlabUtils.cpp.

◆ saveAmalInfo()

mxArray* MueLu::saveAmalInfo ( RCP< MAmalInfo > &  amalInfo)

Definition at line 254 of file MueLu_MatlabUtils.cpp.

◆ isValidMatlabAggregates()

bool MueLu::isValidMatlabAggregates ( const mxArray *  mxa)

Definition at line 260 of file MueLu_MatlabUtils.cpp.

◆ isValidMatlabGraph()

bool MueLu::isValidMatlabGraph ( const mxArray *  mxa)

Definition at line 289 of file MueLu_MatlabUtils.cpp.

◆ tokenizeList()

std::vector< std::string > MueLu::tokenizeList ( const std::string &  params)

Definition at line 309 of file MueLu_MatlabUtils.cpp.

◆ getInputParamList()

Teuchos::RCP< Teuchos::ParameterList > MueLu::getInputParamList ( )

Definition at line 335 of file MueLu_MatlabUtils.cpp.

◆ convertMatlabVar()

Teuchos::RCP< MuemexArg > MueLu::convertMatlabVar ( const mxArray *  mxa)

Definition at line 350 of file MueLu_MatlabUtils.cpp.

◆ loadDataFromMatlab< bool >()

bool MueLu::loadDataFromMatlab< bool > ( const mxArray *  mxa)

Definition at line 175 of file MueLu_MatlabUtils_def.hpp.

◆ loadDataFromMatlab< int >()

int MueLu::loadDataFromMatlab< int > ( const mxArray *  mxa)

Definition at line 146 of file MueLu_MatlabUtils_def.hpp.

◆ loadDataFromMatlab< double >()

double MueLu::loadDataFromMatlab< double > ( const mxArray *  mxa)

Definition at line 181 of file MueLu_MatlabUtils_def.hpp.

◆ loadDataFromMatlab< complex_t >()

complex_t MueLu::loadDataFromMatlab< complex_t > ( const mxArray *  mxa)

Definition at line 187 of file MueLu_MatlabUtils_def.hpp.

◆ loadDataFromMatlab< string >()

string MueLu::loadDataFromMatlab< string > ( const mxArray *  mxa)

Definition at line 195 of file MueLu_MatlabUtils_def.hpp.

◆ loadDataFromMatlab< RCP< Xpetra_ordinal_vector > >()

Definition at line 236 of file MueLu_MatlabUtils_def.hpp.

◆ loadDataFromMatlab< RCP< Tpetra_MultiVector_double > >()

◆ loadDataFromMatlab< RCP< Tpetra_MultiVector_complex > >()

◆ loadDataFromMatlab< RCP< Tpetra_CrsMatrix_double > >()

Definition at line 316 of file MueLu_MatlabUtils_def.hpp.

◆ loadDataFromMatlab< RCP< Tpetra_CrsMatrix_complex > >()

◆ loadDataFromMatlab< RCP< Xpetra_Matrix_double > >()

◆ loadDataFromMatlab< RCP< Xpetra_Matrix_complex > >()

◆ loadDataFromMatlab< RCP< Xpetra_MultiVector_double > >()

◆ loadDataFromMatlab< RCP< Xpetra_MultiVector_complex > >()

◆ loadDataFromMatlab< RCP< Epetra_CrsMatrix > >()

Definition at line 467 of file MueLu_MatlabUtils_def.hpp.

◆ loadDataFromMatlab< RCP< Epetra_MultiVector > >()

Definition at line 516 of file MueLu_MatlabUtils_def.hpp.

◆ loadDataFromMatlab< RCP< MAggregates > >()

RCP< MAggregates > MueLu::loadDataFromMatlab< RCP< MAggregates > > ( const mxArray *  mxa)

Definition at line 526 of file MueLu_MatlabUtils_def.hpp.

◆ loadDataFromMatlab< RCP< MAmalInfo > >()

RCP< MAmalInfo > MueLu::loadDataFromMatlab< RCP< MAmalInfo > > ( const mxArray *  mxa)

Definition at line 576 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [1/25]

mxArray * MueLu::saveDataToMatlab ( bool &  data)

Definition at line 673 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [2/25]

mxArray * MueLu::saveDataToMatlab ( int &  data)

Definition at line 664 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [3/25]

mxArray * MueLu::saveDataToMatlab ( double &  data)

Definition at line 682 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [4/25]

mxArray * MueLu::saveDataToMatlab ( complex_t data)

Definition at line 688 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [5/25]

mxArray * MueLu::saveDataToMatlab ( string &  data)

Definition at line 698 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [6/25]

mxArray * MueLu::saveDataToMatlab ( RCP< Xpetra_ordinal_vector > &  data)

Definition at line 722 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [7/25]

template mxArray* MueLu::saveDataToMatlab ( RCP< Tpetra_MultiVector_double > &  data)

◆ saveDataToMatlab() [8/25]

template mxArray* MueLu::saveDataToMatlab ( RCP< Tpetra_MultiVector_complex > &  data)

◆ saveDataToMatlab() [9/25]

mxArray * MueLu::saveDataToMatlab ( RCP< Tpetra_CrsMatrix_double > &  data)

Definition at line 752 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [10/25]

mxArray * MueLu::saveDataToMatlab ( RCP< Tpetra_CrsMatrix_complex > &  data)

Definition at line 759 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [11/25]

mxArray * MueLu::saveDataToMatlab ( RCP< Xpetra_Matrix_double > &  data)

Definition at line 766 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [12/25]

mxArray * MueLu::saveDataToMatlab ( RCP< Xpetra_Matrix_complex > &  data)

Definition at line 877 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [13/25]

mxArray * MueLu::saveDataToMatlab ( RCP< Xpetra_MultiVector_double > &  data)

◆ saveDataToMatlab() [14/25]

mxArray * MueLu::saveDataToMatlab ( RCP< Xpetra_MultiVector_complex > &  data)

◆ saveDataToMatlab() [15/25]

mxArray * MueLu::saveDataToMatlab ( RCP< Epetra_CrsMatrix > &  data)

Definition at line 1053 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [16/25]

mxArray * MueLu::saveDataToMatlab ( RCP< Epetra_MultiVector > &  data)

Definition at line 1060 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [17/25]

mxArray * MueLu::saveDataToMatlab ( RCP< MAggregates > &  data)

Definition at line 1069 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [18/25]

mxArray * MueLu::saveDataToMatlab ( RCP< MAmalInfo > &  data)

Definition at line 1157 of file MueLu_MatlabUtils_def.hpp.

◆ processNeeds< double >()

template vector<RCP<MuemexArg> > MueLu::processNeeds< double > ( const Factory factory,
string &  needsParam,
Level lvl 
)

◆ processNeeds< complex_t >()

template vector<RCP<MuemexArg> > MueLu::processNeeds< complex_t > ( const Factory factory,
string &  needsParam,
Level lvl 
)

◆ processProvides< double >()

template void MueLu::processProvides< double > ( vector< RCP< MuemexArg >> &  mexOutput,
const Factory factory,
string &  providesParam,
Level lvl 
)

◆ processProvides< complex_t >()

template void MueLu::processProvides< complex_t > ( vector< RCP< MuemexArg >> &  mexOutput,
const Factory factory,
string &  providesParam,
Level lvl 
)

◆ getMuemexType() [1/21]

template<typename T >
MuemexType MueLu::getMuemexType ( const T &  data)

Definition at line 68 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType() [2/21]

template<typename T >
MuemexType MueLu::getMuemexType ( )

◆ loadDataFromMatlab()

template<typename T >
T MueLu::loadDataFromMatlab ( const mxArray *  mxa)

◆ saveDataToMatlab() [19/25]

template<typename T >
mxArray* MueLu::saveDataToMatlab ( T &  data)

◆ addLevelVariable() [1/2]

template<typename T >
void MueLu::addLevelVariable ( const T &  data,
std::string &  name,
Level lvl,
Factory fact = NoFactory::get() 
)

◆ getLevelVariable()

template<typename T >
const T & MueLu::getLevelVariable ( std::string &  name,
Level lvl 
)

Definition at line 1307 of file MueLu_MatlabUtils_def.hpp.

◆ processNeeds()

template<typename Scalar = double, typename LocalOrdinal = mm_LocalOrd, typename GlobalOrdinal = mm_GlobalOrd, typename Node = mm_node_t>
std::vector< Teuchos::RCP< MuemexArg > > MueLu::processNeeds ( const Factory factory,
std::string &  needsParam,
Level lvl 
)

Definition at line 1321 of file MueLu_MatlabUtils_def.hpp.

◆ processProvides()

template<typename Scalar = double, typename LocalOrdinal = mm_LocalOrd, typename GlobalOrdinal = mm_GlobalOrd, typename Node = mm_node_t>
void MueLu::processProvides ( std::vector< Teuchos::RCP< MuemexArg >> &  mexOutput,
const Factory factory,
std::string &  providesParam,
Level lvl 
)

Definition at line 1453 of file MueLu_MatlabUtils_def.hpp.

◆ createMatlabSparse()

template<typename Scalar >
mxArray* MueLu::createMatlabSparse ( int  numRows,
int  numCols,
int  nnz 
)

◆ createMatlabMultiVector()

template<typename Scalar >
mxArray* MueLu::createMatlabMultiVector ( int  numRows,
int  numCols 
)

◆ fillMatlabArray()

template<typename Scalar >
void MueLu::fillMatlabArray ( Scalar *  array,
const mxArray *  mxa,
int  n 
)

◆ callMatlab() [2/2]

std::vector<Teuchos::RCP<MuemexArg> > MueLu::callMatlab ( std::string  function,
int  numOutputs,
std::vector< Teuchos::RCP< MuemexArg >>  args 
)

◆ ltrim()

static std::string& MueLu::ltrim ( std::string &  s)
inlinestatic

Definition at line 190 of file MueLu_MatlabUtils_decl.hpp.

◆ rtrim()

static std::string& MueLu::rtrim ( std::string &  s)
inlinestatic

Definition at line 196 of file MueLu_MatlabUtils_decl.hpp.

◆ trim()

static std::string& MueLu::trim ( std::string &  s)
inlinestatic

Definition at line 202 of file MueLu_MatlabUtils_decl.hpp.

◆ getMuemexType() [3/21]

template<>
MuemexType MueLu::getMuemexType ( const int &  data)

Definition at line 70 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< int >()

template<>
MuemexType MueLu::getMuemexType< int > ( )

Definition at line 71 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< bool >()

template<>
MuemexType MueLu::getMuemexType< bool > ( )

Definition at line 72 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType() [4/21]

template<>
MuemexType MueLu::getMuemexType ( const double &  data)

Definition at line 74 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< double >()

template<>
MuemexType MueLu::getMuemexType< double > ( )

Definition at line 75 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType() [5/21]

template<>
MuemexType MueLu::getMuemexType ( const std::string &  data)

Definition at line 77 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< string >()

template<>
MuemexType MueLu::getMuemexType< string > ( )

Definition at line 78 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType() [6/21]

template<>
MuemexType MueLu::getMuemexType ( const complex_t data)

Definition at line 80 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< complex_t >()

Definition at line 81 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType() [7/21]

template<>
MuemexType MueLu::getMuemexType ( const RCP< Xpetra_map > &  data)

Definition at line 83 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< RCP< Xpetra_map > >()

Definition at line 84 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType() [8/21]

template<>
MuemexType MueLu::getMuemexType ( const RCP< Xpetra_ordinal_vector > &  data)

Definition at line 86 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< RCP< Xpetra_ordinal_vector > >()

Definition at line 87 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType() [9/21]

template<>
MuemexType MueLu::getMuemexType ( const RCP< Tpetra_MultiVector_double > &  data)

Definition at line 89 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< RCP< Tpetra_MultiVector_double > >()

◆ getMuemexType() [10/21]

template<>
MuemexType MueLu::getMuemexType ( const RCP< Tpetra_MultiVector_complex > &  data)

Definition at line 92 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< RCP< Tpetra_MultiVector_complex > >()

◆ getMuemexType() [11/21]

template<>
MuemexType MueLu::getMuemexType ( const RCP< Tpetra_CrsMatrix_double > &  data)

Definition at line 95 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< RCP< Tpetra_CrsMatrix_double > >()

Definition at line 96 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType() [12/21]

template<>
MuemexType MueLu::getMuemexType ( const RCP< Tpetra_CrsMatrix_complex > &  data)

Definition at line 98 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< RCP< Tpetra_CrsMatrix_complex > >()

Definition at line 99 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType() [13/21]

template<>
MuemexType MueLu::getMuemexType ( const RCP< Xpetra_MultiVector_double > &  data)

Definition at line 101 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< RCP< Xpetra_MultiVector_double > >()

◆ getMuemexType() [14/21]

template<>
MuemexType MueLu::getMuemexType ( const RCP< Xpetra_MultiVector_complex > &  data)

Definition at line 104 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< RCP< Xpetra_MultiVector_complex > >()

◆ getMuemexType() [15/21]

template<>
MuemexType MueLu::getMuemexType ( const RCP< Xpetra_Matrix_double > &  data)

Definition at line 107 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< RCP< Xpetra_Matrix_double > >()

Definition at line 108 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType() [16/21]

template<>
MuemexType MueLu::getMuemexType ( const RCP< Xpetra_Matrix_complex > &  data)

Definition at line 110 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< RCP< Xpetra_Matrix_complex > >()

Definition at line 111 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType() [17/21]

template<>
MuemexType MueLu::getMuemexType ( const RCP< Epetra_CrsMatrix > &  data)

Definition at line 113 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< RCP< Epetra_CrsMatrix > >()

Definition at line 114 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType() [18/21]

template<>
MuemexType MueLu::getMuemexType ( const RCP< Epetra_MultiVector > &  data)

Definition at line 116 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< RCP< Epetra_MultiVector > >()

Definition at line 117 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType() [19/21]

template<>
MuemexType MueLu::getMuemexType ( const RCP< MAggregates > &  data)

Definition at line 119 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< RCP< MAggregates > >()

Definition at line 120 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType() [20/21]

template<>
MuemexType MueLu::getMuemexType ( const RCP< MAmalInfo > &  data)

Definition at line 122 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< RCP< MAmalInfo > >()

Definition at line 123 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType() [21/21]

template<>
MuemexType MueLu::getMuemexType ( const RCP< MGraph > &  data)

Definition at line 125 of file MueLu_MatlabUtils_def.hpp.

◆ getMuemexType< RCP< MGraph > >()

template<>
MuemexType MueLu::getMuemexType< RCP< MGraph > > ( )

Definition at line 126 of file MueLu_MatlabUtils_def.hpp.

◆ loadDataFromMatlab< RCP< Xpetra_map > >()

template<>
RCP<Xpetra_map> MueLu::loadDataFromMatlab< RCP< Xpetra_map > > ( const mxArray *  mxa)

Definition at line 207 of file MueLu_MatlabUtils_def.hpp.

◆ loadDataFromMatlab< RCP< Xpetra::Matrix< double, mm_LocalOrd, mm_GlobalOrd, mm_node_t > > >()

Definition at line 439 of file MueLu_MatlabUtils_def.hpp.

◆ loadDataFromMatlab< RCP< Xpetra::Matrix< complex_t, mm_LocalOrd, mm_GlobalOrd, mm_node_t > > >()

◆ loadDataFromMatlab< RCP< Xpetra::MultiVector< double, mm_LocalOrd, mm_GlobalOrd, mm_node_t > > >()

Definition at line 453 of file MueLu_MatlabUtils_def.hpp.

◆ loadDataFromMatlab< RCP< Xpetra::MultiVector< complex_t, mm_LocalOrd, mm_GlobalOrd, mm_node_t > > >()

◆ loadDataFromMatlab< RCP< MGraph > >()

template<>
RCP<MGraph> MueLu::loadDataFromMatlab< RCP< MGraph > > ( const mxArray *  mxa)

Definition at line 584 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [20/25]

template<>
mxArray* MueLu::saveDataToMatlab ( RCP< Xpetra_map > &  data)

Definition at line 704 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [21/25]

template<>
mxArray* MueLu::saveDataToMatlab ( RCP< Tpetra::MultiVector< double, mm_LocalOrd, mm_GlobalOrd, mm_node_t >> &  data)

Definition at line 738 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [22/25]

template<>
mxArray* MueLu::saveDataToMatlab ( RCP< Tpetra::MultiVector< complex_t, mm_LocalOrd, mm_GlobalOrd, mm_node_t >> &  data)

Definition at line 745 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [23/25]

template<>
mxArray* MueLu::saveDataToMatlab ( RCP< Xpetra::MultiVector< double, mm_LocalOrd, mm_GlobalOrd, mm_node_t >> &  data)

Definition at line 1011 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [24/25]

template<>
mxArray* MueLu::saveDataToMatlab ( RCP< Xpetra::MultiVector< complex_t, mm_LocalOrd, mm_GlobalOrd, mm_node_t >> &  data)

Definition at line 1032 of file MueLu_MatlabUtils_def.hpp.

◆ saveDataToMatlab() [25/25]

template<>
mxArray* MueLu::saveDataToMatlab ( RCP< MGraph > &  data)

Definition at line 1164 of file MueLu_MatlabUtils_def.hpp.

◆ addLevelVariable() [2/2]

template<typename T >
void MueLu::addLevelVariable ( const T &  data,
std::string &  name,
Level lvl,
const Factory fact 
)

Definition at line 1300 of file MueLu_MatlabUtils_def.hpp.

◆ processNeeds< double, mm_LocalOrd, long long, mm_node_t >()

template<>
std::vector<Teuchos::RCP<MuemexArg> > MueLu::processNeeds< double, mm_LocalOrd, long long, mm_node_t > ( const Factory factory,
std::string &  needsParam,
Level lvl 
)

Definition at line 1585 of file MueLu_MatlabUtils_def.hpp.

◆ processNeeds< complex_t, mm_LocalOrd, long long, mm_node_t >()

template<>
std::vector<Teuchos::RCP<MuemexArg> > MueLu::processNeeds< complex_t, mm_LocalOrd, long long, mm_node_t > ( const Factory factory,
std::string &  needsParam,
Level lvl 
)

Definition at line 1590 of file MueLu_MatlabUtils_def.hpp.

◆ processProvides< double, mm_LocalOrd, long long, mm_node_t >()

template<>
void MueLu::processProvides< double, mm_LocalOrd, long long, mm_node_t > ( std::vector< Teuchos::RCP< MuemexArg >> &  mexOutput,
const Factory factory,
std::string &  providesParam,
Level lvl 
)

Definition at line 1595 of file MueLu_MatlabUtils_def.hpp.

◆ processProvides< complex_t, mm_LocalOrd, long long, mm_node_t >()

template<>
void MueLu::processProvides< complex_t, mm_LocalOrd, long long, mm_node_t > ( std::vector< Teuchos::RCP< MuemexArg >> &  mexOutput,
const Factory factory,
std::string &  providesParam,
Level lvl 
)

Definition at line 1600 of file MueLu_MatlabUtils_def.hpp.

Variable Documentation

◆ myParent_

std::map< std::string, std::string > MueLu::myParent_

Definition at line 56 of file MueLu_MutuallyExclusiveTime.cpp.

◆ rewrap_ints

bool MueLu::rewrap_ints = sizeof(int) != sizeof(mwIndex)

Definition at line 83 of file MueLu_MatlabUtils.cpp.