Zoltan2
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
Zoltan2::Sphynx< Adapter > Class Template Reference

#include <Zoltan2_Sphynx.hpp>

Inheritance diagram for Zoltan2::Sphynx< Adapter >:
Inheritance graph
[legend]
Collaboration diagram for Zoltan2::Sphynx< Adapter >:
Collaboration graph
[legend]

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 >
 
- 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 RCP< PartitioningSolution< Adapter > > &solution)
 Partitioning method.
 
int LOBPCGwrapper (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 determineRegularity ()
 
void setDefaults ()
 
void computeLaplacian ()
 
void computeDegreeMatrix ()
 
Teuchos::RCP< matrix_tcomputeCombinatorialLaplacian ()
 
Teuchos::RCP< matrix_tcomputeNormalizedLaplacian ()
 
- 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 100 of file Zoltan2_Sphynx.hpp.

Member Typedef Documentation

◆ scalar_t

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

Definition at line 105 of file Zoltan2_Sphynx.hpp.

◆ lno_t

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

Definition at line 106 of file Zoltan2_Sphynx.hpp.

◆ gno_t

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

Definition at line 107 of file Zoltan2_Sphynx.hpp.

◆ node_t

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

Definition at line 108 of file Zoltan2_Sphynx.hpp.

◆ offset_t

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

Definition at line 109 of file Zoltan2_Sphynx.hpp.

◆ part_t

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

Definition at line 110 of file Zoltan2_Sphynx.hpp.

◆ weight_t

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

Definition at line 111 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 113 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 114 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 115 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 116 of file Zoltan2_Sphynx.hpp.

Member Enumeration Documentation

◆ problemType

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

Definition at line 118 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 125 of file Zoltan2_Sphynx.hpp.

Member Function Documentation

◆ partition()

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

Partitioning method.

Reimplemented from Zoltan2::Algorithm< Adapter >.

Definition at line 538 of file Zoltan2_Sphynx.hpp.

◆ LOBPCGwrapper()

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

Definition at line 584 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 737 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 756 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 849 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 811 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 873 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 893 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 952 of file Zoltan2_Sphynx.hpp.

◆ determineRegularity()

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

Definition at line 219 of file Zoltan2_Sphynx.hpp.

◆ setDefaults()

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

Definition at line 273 of file Zoltan2_Sphynx.hpp.

◆ computeLaplacian()

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

Definition at line 357 of file Zoltan2_Sphynx.hpp.

◆ computeDegreeMatrix()

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

Definition at line 368 of file Zoltan2_Sphynx.hpp.

◆ computeCombinatorialLaplacian()

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

Definition at line 402 of file Zoltan2_Sphynx.hpp.

◆ computeNormalizedLaplacian()

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

Definition at line 445 of file Zoltan2_Sphynx.hpp.


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