Zoltan2
Loading...
Searching...
No Matches
Zoltan2::Sphynx< Adapter > Class Template Reference

#include <Zoltan2_Sphynx.hpp>

Inheritance diagram for Zoltan2::Sphynx< Adapter >:
Collaboration diagram for Zoltan2::Sphynx< Adapter >:

Public Types

enum  problemType { COMBINATORIAL , GENERALIZED , NORMALIZED }
using scalar_t = double
using lno_t = typename Adapter::lno_t
using gno_t = typename Adapter::gno_t
using node_t = typename Adapter::node_t
using offset_t = typename Adapter::offset_t
using part_t = typename Adapter::part_t
using weight_t = typename Adapter::scalar_t
using graph_t = Tpetra::CrsGraph<lno_t, gno_t, node_t>
using matrix_t = Tpetra::CrsMatrix<scalar_t, lno_t, gno_t, node_t>
using mvector_t = Tpetra::MultiVector<scalar_t, lno_t, gno_t, node_t>
using op_t = Tpetra::Operator<scalar_t, lno_t, gno_t, node_t>
typedef Anasazi::MultiVecTraits< scalar_t, mvector_tMVT
Public Types inherited from Zoltan2::Algorithm< Adapter >
typedef Adapter::lno_t lno_t
typedef Adapter::gno_t gno_t
typedef Adapter::scalar_t scalar_t
typedef Adapter::part_t part_t

Public Member Functions

 Sphynx (const RCP< const Environment > &env, const RCP< Teuchos::ParameterList > &params, const RCP< Teuchos::ParameterList > &sphynxParams, const RCP< const Comm< int > > &comm, const RCP< const XpetraCrsGraphAdapter< graph_t > > &adapter)
void partition (const Teuchos::RCP< PartitioningSolution< Adapter > > &solution)
int AnasaziWrapper (const int numEigenVectors)
template<typename problem_t>
void setPreconditioner (Teuchos::RCP< problem_t > &problem)
template<typename problem_t>
void setMueLuPreconditioner (Teuchos::RCP< problem_t > &problem)
template<typename problem_t>
void setJacobiPreconditioner (Teuchos::RCP< problem_t > &problem)
template<typename problem_t>
void setPolynomialPreconditioner (Teuchos::RCP< problem_t > &problem)
void eigenvecsToCoords (Teuchos::RCP< mvector_t > &eigenVectors, int computedNumEv, Teuchos::RCP< mvector_t > &coordinates)
void computeWeights (std::vector< const weight_t * > vecweights, std::vector< int > strides)
void MJwrapper (const Teuchos::RCP< const mvector_t > &coordinates, std::vector< const weight_t * > weights, std::vector< int > strides, const Teuchos::RCP< PartitioningSolution< Adapter > > &solution)
void setUserEigenvectors (const Teuchos::RCP< mvector_t > &userEvects)
void determineRegularity ()
void setDefaults ()
void computeLaplacian ()
void computeDegreeMatrix ()
Teuchos::RCP< matrix_tcomputeCombinatorialLaplacian ()
Teuchos::RCP< matrix_tcomputeNormalizedLaplacian (bool AHat=false)
Public Member Functions inherited from Zoltan2::Algorithm< Adapter >
virtual ~Algorithm ()
virtual int localOrder (const RCP< LocalOrderingSolution< lno_t > > &)
 Ordering method.
virtual int globalOrder (const RCP< GlobalOrderingSolution< gno_t > > &)
 Ordering method.
virtual void color (const RCP< ColoringSolution< Adapter > > &)
 Coloring method.
virtual void match ()
 Matching method.
virtual void partition (const RCP< PartitioningSolution< Adapter > > &)
 Partitioning method.
virtual void partitionMatrix (const RCP< MatrixPartitioningSolution< Adapter > > &)
 Matrix Partitioning method.
virtual void map (const RCP< MappingSolution< Adapter > > &)
 Mapping method.
virtual bool isPartitioningTreeBinary () const
 return if algorithm determins tree to be binary
virtual void getPartitionTree (part_t, part_t &, std::vector< part_t > &, std::vector< part_t > &, std::vector< part_t > &, std::vector< part_t > &) const
 for partitioning methods, fill arrays with partition tree info
virtual std::vector< coordinateModelPartBox > & getPartBoxesView () const
 for partitioning methods, return bounding boxes of the
virtual part_t pointAssign (int, scalar_t *) const
 pointAssign method: Available only for some partitioning algorithms
virtual void boxAssign (int, scalar_t *, scalar_t *, size_t &, part_t **) const
 boxAssign method: Available only for some partitioning algorithms
virtual void getCommunicationGraph (const PartitioningSolution< Adapter > *, ArrayRCP< part_t > &, ArrayRCP< part_t > &)
 returns serial communication graph of a computed partition
virtual int getRankForPart (part_t)
 In mapping, returns the rank to which a part is assigned.
virtual void getMyPartsView (part_t &, part_t *&)
 In mapping, returns a view of parts assigned to the current rank.

Detailed Description

template<typename Adapter>
class Zoltan2::Sphynx< Adapter >

Definition at line 67 of file Zoltan2_Sphynx.hpp.

Member Typedef Documentation

◆ scalar_t

template<typename Adapter>
using Zoltan2::Sphynx< Adapter >::scalar_t = double

Definition at line 72 of file Zoltan2_Sphynx.hpp.

◆ lno_t

template<typename Adapter>
using Zoltan2::Sphynx< Adapter >::lno_t = typename Adapter::lno_t

Definition at line 73 of file Zoltan2_Sphynx.hpp.

◆ gno_t

template<typename Adapter>
using Zoltan2::Sphynx< Adapter >::gno_t = typename Adapter::gno_t

Definition at line 74 of file Zoltan2_Sphynx.hpp.

◆ node_t

template<typename Adapter>
using Zoltan2::Sphynx< Adapter >::node_t = typename Adapter::node_t

Definition at line 75 of file Zoltan2_Sphynx.hpp.

◆ offset_t

template<typename Adapter>
using Zoltan2::Sphynx< Adapter >::offset_t = typename Adapter::offset_t

Definition at line 76 of file Zoltan2_Sphynx.hpp.

◆ part_t

template<typename Adapter>
using Zoltan2::Sphynx< Adapter >::part_t = typename Adapter::part_t

Definition at line 77 of file Zoltan2_Sphynx.hpp.

◆ weight_t

template<typename Adapter>
using Zoltan2::Sphynx< Adapter >::weight_t = typename Adapter::scalar_t

Definition at line 78 of file Zoltan2_Sphynx.hpp.

◆ graph_t

template<typename Adapter>
using Zoltan2::Sphynx< Adapter >::graph_t = Tpetra::CrsGraph<lno_t, gno_t, node_t>

Definition at line 80 of file Zoltan2_Sphynx.hpp.

◆ matrix_t

template<typename Adapter>
using Zoltan2::Sphynx< Adapter >::matrix_t = Tpetra::CrsMatrix<scalar_t, lno_t, gno_t, node_t>

Definition at line 81 of file Zoltan2_Sphynx.hpp.

◆ mvector_t

template<typename Adapter>
using Zoltan2::Sphynx< Adapter >::mvector_t = Tpetra::MultiVector<scalar_t, lno_t, gno_t, node_t>

Definition at line 82 of file Zoltan2_Sphynx.hpp.

◆ op_t

template<typename Adapter>
using Zoltan2::Sphynx< Adapter >::op_t = Tpetra::Operator<scalar_t, lno_t, gno_t, node_t>

Definition at line 83 of file Zoltan2_Sphynx.hpp.

◆ MVT

template<typename Adapter>
typedef Anasazi::MultiVecTraits<scalar_t,mvector_t> Zoltan2::Sphynx< Adapter >::MVT

Definition at line 86 of file Zoltan2_Sphynx.hpp.

Member Enumeration Documentation

◆ problemType

template<typename Adapter>
enum Zoltan2::Sphynx::problemType
Enumerator
COMBINATORIAL 
GENERALIZED 
NORMALIZED 

Definition at line 85 of file Zoltan2_Sphynx.hpp.

Constructor & Destructor Documentation

◆ Sphynx()

template<typename Adapter>
Zoltan2::Sphynx< Adapter >::Sphynx ( const RCP< const Environment > & env,
const RCP< Teuchos::ParameterList > & params,
const RCP< Teuchos::ParameterList > & sphynxParams,
const RCP< const Comm< int > > & comm,
const RCP< const XpetraCrsGraphAdapter< graph_t > > & adapter )
inline

Definition at line 93 of file Zoltan2_Sphynx.hpp.

Member Function Documentation

◆ partition()

template<typename Adapter>
void Zoltan2::Sphynx< Adapter >::partition ( const Teuchos::RCP< PartitioningSolution< Adapter > > & solution)

Definition at line 529 of file Zoltan2_Sphynx.hpp.

◆ AnasaziWrapper()

template<typename Adapter>
int Zoltan2::Sphynx< Adapter >::AnasaziWrapper ( const int numEigenVectors)

Definition at line 588 of file Zoltan2_Sphynx.hpp.

◆ setPreconditioner()

template<typename Adapter>
template<typename problem_t>
void Zoltan2::Sphynx< Adapter >::setPreconditioner ( Teuchos::RCP< problem_t > & problem)

Definition at line 775 of file Zoltan2_Sphynx.hpp.

◆ setMueLuPreconditioner()

template<typename Adapter>
template<typename problem_t>
void Zoltan2::Sphynx< Adapter >::setMueLuPreconditioner ( Teuchos::RCP< problem_t > & problem)

Definition at line 794 of file Zoltan2_Sphynx.hpp.

◆ setJacobiPreconditioner()

template<typename Adapter>
template<typename problem_t>
void Zoltan2::Sphynx< Adapter >::setJacobiPreconditioner ( Teuchos::RCP< problem_t > & problem)

Definition at line 884 of file Zoltan2_Sphynx.hpp.

◆ setPolynomialPreconditioner()

template<typename Adapter>
template<typename problem_t>
void Zoltan2::Sphynx< Adapter >::setPolynomialPreconditioner ( Teuchos::RCP< problem_t > & problem)

Definition at line 846 of file Zoltan2_Sphynx.hpp.

◆ eigenvecsToCoords()

template<typename Adapter>
void Zoltan2::Sphynx< Adapter >::eigenvecsToCoords ( Teuchos::RCP< mvector_t > & eigenVectors,
int computedNumEv,
Teuchos::RCP< mvector_t > & coordinates )

Definition at line 908 of file Zoltan2_Sphynx.hpp.

◆ computeWeights()

template<typename Adapter>
void Zoltan2::Sphynx< Adapter >::computeWeights ( std::vector< const weight_t * > vecweights,
std::vector< int > strides )

Definition at line 927 of file Zoltan2_Sphynx.hpp.

◆ MJwrapper()

template<typename Adapter>
void Zoltan2::Sphynx< Adapter >::MJwrapper ( const Teuchos::RCP< const mvector_t > & coordinates,
std::vector< const weight_t * > weights,
std::vector< int > strides,
const Teuchos::RCP< PartitioningSolution< Adapter > > & solution )

Definition at line 986 of file Zoltan2_Sphynx.hpp.

◆ setUserEigenvectors()

template<typename Adapter>
void Zoltan2::Sphynx< Adapter >::setUserEigenvectors ( const Teuchos::RCP< mvector_t > & userEvects)

Definition at line 517 of file Zoltan2_Sphynx.hpp.

◆ determineRegularity()

template<typename Adapter>
void Zoltan2::Sphynx< Adapter >::determineRegularity ( )
inline

Definition at line 183 of file Zoltan2_Sphynx.hpp.

◆ setDefaults()

template<typename Adapter>
void Zoltan2::Sphynx< Adapter >::setDefaults ( )
inline

Definition at line 238 of file Zoltan2_Sphynx.hpp.

◆ computeLaplacian()

template<typename Adapter>
void Zoltan2::Sphynx< Adapter >::computeLaplacian ( )
inline

Definition at line 326 of file Zoltan2_Sphynx.hpp.

◆ computeDegreeMatrix()

template<typename Adapter>
void Zoltan2::Sphynx< Adapter >::computeDegreeMatrix ( )
inline

Definition at line 338 of file Zoltan2_Sphynx.hpp.

◆ computeCombinatorialLaplacian()

template<typename Adapter>
Teuchos::RCP< matrix_t > Zoltan2::Sphynx< Adapter >::computeCombinatorialLaplacian ( )
inline

Definition at line 372 of file Zoltan2_Sphynx.hpp.

◆ computeNormalizedLaplacian()

template<typename Adapter>
Teuchos::RCP< matrix_t > Zoltan2::Sphynx< Adapter >::computeNormalizedLaplacian ( bool AHat = false)
inline

Definition at line 420 of file Zoltan2_Sphynx.hpp.


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