![]() |
Home | Libraries | People | FAQ | More |
boost::mpi::cartesian_topology — Describe the topology of a cartesian grid.
// In header: <boost/mpi/cartesian_communicator.hpp> class cartesian_topology : private { public: // construct/copy/destruct () = ; (cartesian_topology ) = ; (cartesian_topology &&); (); (cartesian_dimension > ); template<typename InitArr> (); (cartesian_dimension >); template< NDIM> (cartesian_dimension(&)); template<typename DimRg, typename PerRg> (, ); template<typename DimIter, typename PerIter> (, , ); cartesian_topology & (cartesian_topology ) = ; cartesian_topology & (cartesian_topology &&); ~(); // public member functions cartesian_dimension > & (); cartesian_dimension > () ; (, ) ; };
Behave mostly like a sequence of cartesian_dimension
with the notable exception that its size is fixed. This is a lightweight object, so that any constructor that could be considered missing could be replaced with a function (move constructor provided when supported).
cartesian_topology
public
construct/copy/destruct() = ;
(cartesian_topology ) = ;
(cartesian_topology && other);
( ndim);Create a N dimension space. Each dimension is initialized as non periodic of size 0.
(cartesian_dimension > dims);Use the provided dimensions specification as initial values.
template<typename InitArr> ( dims);Use dimensions specification provided in the sequence container as initial values. #param dims must be a sequence container.
(cartesian_dimension > dims);Use dimensions specification provided in the initialization list as initial values. #param dims can be of the form { dim_1, false}, .... {dim_n, true}.
template< NDIM> (cartesian_dimension(&) dims);Use dimensions specification provided in the array. #param dims can be of the form { dim_1, false}, .... {dim_n, true}.
template<typename DimRg, typename PerRg> ( dim_rg, period_rg);Use dimensions specification provided in the input ranges The ranges do not need to be the same size. If the sizes are different, the missing values will be complete with zeros of the dim and assumed non periodic.
Parameters: |
|
template<typename DimIter, typename PerIter> ( dit, pit, n);Iterator based initializer. Will use the first n iterated values. Both iterators can be single pass.
Parameters: |
|
cartesian_topology & (cartesian_topology ) = ;
cartesian_topology & (cartesian_topology && other);
~();
cartesian_topology
public member functionscartesian_dimension > & ();
Export as an stl sequence.
cartesian_dimension > () ;
Export as an stl sequence.
( dims, periodics) ;
Split the topology in two sequences of sizes and periodicities.