50 #ifndef _ZOLTAN2_ALGORITHM_HPP_ 51 #define _ZOLTAN2_ALGORITHM_HPP_ 54 template <
typename Adapter>
64 #define Z2_THROW_NOT_IMPLEMENTED_IN_ALGORITHM \ 66 std::ostringstream emsg; \ 67 emsg << __FILE__ << "," << __LINE__ \ 68 << " error: " << __func__zoltan2__ \ 69 << " is not implement in selected algorithm " \ 71 throw std::runtime_error(emsg.str()); \ 85 template <
typename Adapter>
90 typedef typename Adapter::lno_t
lno_t;
91 typedef typename Adapter::gno_t
gno_t;
93 typedef typename Adapter::part_t
part_t;
124 virtual std::vector<coordinateModelPartBox<scalar_t, part_t> > &
157 virtual void boxAssign(
int dim, scalar_t *lower, scalar_t *upper,
158 size_t &
nParts, part_t **partsFound)
const 175 ArrayRCP<part_t> &comXAdj,
176 ArrayRCP<part_t> &comAdj)
virtual void boxAssign(int dim, scalar_t *lower, scalar_t *upper, size_t &nParts, part_t **partsFound) const
boxAssign method: Available only for some partitioning algorithms
virtual void getCommunicationGraph(const PartitioningSolution< Adapter > *solution, ArrayRCP< part_t > &comXAdj, ArrayRCP< part_t > &comAdj)
returns serial communication graph of a computed partition
Defines the OrderingSolution class.
virtual std::vector< coordinateModelPartBox< scalar_t, part_t > > & getPartBoxesView() const
for partitioning methods, return bounding boxes of the
Defines the PartitioningSolution class.
Adapter::scalar_t scalar_t
A PartitioningSolution is a solution to a partitioning problem.
virtual void match()
Matching method.
Algorithm defines the base class for all algorithms.
virtual int order(const RCP< OrderingSolution< lno_t, gno_t > > &solution)
Ordering method.
virtual void partition(const RCP< PartitioningSolution< Adapter > > &solution)
Partitioning method.
virtual part_t pointAssign(int dim, scalar_t *point) const
pointAssign method: Available only for some partitioning algorithms
virtual void color(const RCP< ColoringSolution< Adapter > > &solution)
Coloring method.
Gathering definitions used in software development.
Defines the ColoringSolution class.
The class containing ordering solutions.
#define Z2_THROW_NOT_IMPLEMENTED_IN_ALGORITHM
The class containing coloring solution.