diff --git a/doc/Doxyfile b/doc/Doxyfile index ae7d9732..ad5ff398 100644 --- a/doc/Doxyfile +++ b/doc/Doxyfile @@ -834,7 +834,7 @@ WARN_IF_INCOMPLETE_DOC = YES # WARN_IF_INCOMPLETE_DOC # The default value is: NO. -WARN_NO_PARAMDOC = NO +WARN_NO_PARAMDOC = YES # If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when # a warning is encountered. If the WARN_AS_ERROR tag is set to FAIL_ON_WARNINGS @@ -2279,7 +2279,8 @@ INCLUDE_FILE_PATTERNS = # recursively expanded use the := operator instead of the = operator. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES. -PREDEFINED = protected=private +PREDEFINED = protected=private \ + MPL_DOXYGEN_SHOULD_SKIP_THIS # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this # tag can be used to specify a list of macro names that should be expanded. The diff --git a/docs/html/annotated.html b/docs/html/annotated.html index d3d667de..43cb285c 100644 --- a/docs/html/annotated.html +++ b/docs/html/annotated.html @@ -88,16 +88,16 @@
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 1234]
- - + + - - - + + + @@ -200,9 +200,6 @@ - - -
 Nmpl
 Nimpl
 Nmpl
 Nimpl
 Cabsolute_dataHelper class for heterogeneous_layout and make_absolute
 Cabsolute_data< const T * >Helper class for heterogeneous_layout and make_absolute
 Cabsolute_data< T * >Helper class for heterogeneous_layout and make_absolute
 Cabsolute_dataHelper class for heterogeneous_layout, make_absolute(T *x, const layout<T> &l) and make_absolute(const T *x, const layout<T> &l)
 Cabsolute_data< const T * >Helper class for heterogeneous_layout, make_absolute(T *x, const layout<T> &l) and make_absolute(const T *x, const layout<T> &l)
 Cabsolute_data< T * >Helper class for heterogeneous_layout, make_absolute(T *x, const layout<T> &l) and make_absolute(const T *x, const layout<T> &l)
 Cbase_struct_builderBase class used to manage information about structures/classes and their public members
 Cbit_andFunction object for calculating the bitwise conjunction of two values in reduction operations as communicator::reduce
 Cbit_orFunction object for calculating the bitwise (inclusive) disjunction of two values in reduction operations as communicator::reduce
 Ctag_tClass for representing tag parameters in communication operations
 Cvector_layoutLayout representing contiguous storage several objects
 Nstd
 Ctuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >
 Ctuple_size< mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >
diff --git a/docs/html/annotated_dup.js b/docs/html/annotated_dup.js index 454a8041..db7f8dab 100644 --- a/docs/html/annotated_dup.js +++ b/docs/html/annotated_dup.js @@ -1,17 +1,17 @@ var annotated_dup = [ - [ "mpl", "namespacempl.html", [ - [ "impl", "namespacempl_1_1impl.html", [ - [ "irequest", "classmpl_1_1impl_1_1irequest.html", "classmpl_1_1impl_1_1irequest" ], - [ "prequest", "classmpl_1_1impl_1_1prequest.html", "classmpl_1_1impl_1_1prequest" ], - [ "request", "classmpl_1_1impl_1_1request.html", "classmpl_1_1impl_1_1request" ], - [ "request_pool", "classmpl_1_1impl_1_1request__pool.html", "classmpl_1_1impl_1_1request__pool" ], + [ "mpl", null, [ + [ "impl", null, [ + [ "irequest", "classmpl_1_1impl_1_1irequest.html", null ], + [ "prequest", "classmpl_1_1impl_1_1prequest.html", null ], + [ "request", "classmpl_1_1impl_1_1request.html", null ], + [ "request_pool", "classmpl_1_1impl_1_1request__pool.html", null ], [ "topology_communicator", "classmpl_1_1impl_1_1topology__communicator.html", "classmpl_1_1impl_1_1topology__communicator" ] ] ], [ "absolute_data", "classmpl_1_1absolute__data.html", null ], [ "absolute_data< const T * >", "classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html", "classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4" ], [ "absolute_data< T * >", "classmpl_1_1absolute__data_3_01_t_01_5_01_4.html", "classmpl_1_1absolute__data_3_01_t_01_5_01_4" ], - [ "base_struct_builder", "classmpl_1_1base__struct__builder.html", "classmpl_1_1base__struct__builder" ], + [ "base_struct_builder", "classmpl_1_1base__struct__builder.html", null ], [ "bit_and", "structmpl_1_1bit__and.html", "structmpl_1_1bit__and" ], [ "bit_or", "structmpl_1_1bit__or.html", "structmpl_1_1bit__or" ], [ "bit_xor", "structmpl_1_1bit__xor.html", "structmpl_1_1bit__xor" ], @@ -40,8 +40,8 @@ var annotated_dup = [ "invalid_rank", "classmpl_1_1invalid__rank.html", "classmpl_1_1invalid__rank" ], [ "invalid_size", "classmpl_1_1invalid__size.html", "classmpl_1_1invalid__size" ], [ "invalid_tag", "classmpl_1_1invalid__tag.html", "classmpl_1_1invalid__tag" ], - [ "irequest", "classmpl_1_1irequest.html", "classmpl_1_1irequest" ], - [ "irequest_pool", "classmpl_1_1irequest__pool.html", "classmpl_1_1irequest__pool" ], + [ "irequest", "classmpl_1_1irequest.html", null ], + [ "irequest_pool", "classmpl_1_1irequest__pool.html", null ], [ "iterator_layout", "classmpl_1_1iterator__layout.html", "classmpl_1_1iterator__layout" ], [ "layout", "classmpl_1_1layout.html", "classmpl_1_1layout" ], [ "layouts", "classmpl_1_1layouts.html", "classmpl_1_1layouts" ], @@ -66,27 +66,23 @@ var annotated_dup = [ "op_traits< multiplies< T > >", "structmpl_1_1op__traits_3_01multiplies_3_01_t_01_4_01_4.html", null ], [ "op_traits< plus< T > >", "structmpl_1_1op__traits_3_01plus_3_01_t_01_4_01_4.html", null ], [ "plus", "structmpl_1_1plus.html", "structmpl_1_1plus" ], - [ "prequest", "classmpl_1_1prequest.html", "classmpl_1_1prequest" ], - [ "prequest_pool", "classmpl_1_1prequest__pool.html", "classmpl_1_1prequest__pool" ], + [ "prequest", "classmpl_1_1prequest.html", null ], + [ "prequest_pool", "classmpl_1_1prequest__pool.html", null ], [ "ranks", "classmpl_1_1ranks.html", "classmpl_1_1ranks" ], - [ "shift_ranks", "structmpl_1_1shift__ranks.html", "structmpl_1_1shift__ranks" ], + [ "shift_ranks", "structmpl_1_1shift__ranks.html", null ], [ "status_t", "classmpl_1_1status__t.html", "classmpl_1_1status__t" ], [ "strided_vector_layout", "classmpl_1_1strided__vector__layout.html", "classmpl_1_1strided__vector__layout" ], - [ "struct_builder", "classmpl_1_1struct__builder.html", "classmpl_1_1struct__builder" ], - [ "struct_builder< std::array< T, N > >", "classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html", "classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4" ], - [ "struct_builder< std::pair< T1, T2 > >", "classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html", "classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4" ], - [ "struct_builder< std::tuple< Ts... > >", "classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html", "classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4" ], - [ "struct_builder< T[N0]>", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4" ], - [ "struct_builder< T[N0][N1]>", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4" ], - [ "struct_builder< T[N0][N1][N2]>", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4" ], - [ "struct_builder< T[N0][N1][N2][N3]>", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4" ], + [ "struct_builder", "classmpl_1_1struct__builder.html", null ], + [ "struct_builder< std::array< T, N > >", "classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html", null ], + [ "struct_builder< std::pair< T1, T2 > >", "classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html", null ], + [ "struct_builder< std::tuple< Ts... > >", "classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html", null ], + [ "struct_builder< T[N0]>", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html", null ], + [ "struct_builder< T[N0][N1]>", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html", null ], + [ "struct_builder< T[N0][N1][N2]>", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html", null ], + [ "struct_builder< T[N0][N1][N2][N3]>", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html", null ], [ "struct_layout", "classmpl_1_1struct__layout.html", "classmpl_1_1struct__layout" ], [ "subarray_layout", "classmpl_1_1subarray__layout.html", "classmpl_1_1subarray__layout" ], [ "tag_t", "classmpl_1_1tag__t.html", "classmpl_1_1tag__t" ], [ "vector_layout", "classmpl_1_1vector__layout.html", "classmpl_1_1vector__layout" ] - ] ], - [ "std", "namespacestd.html", [ - [ "tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >", "structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html", "structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4" ], - [ "tuple_size< mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >", "structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html", null ] ] ] ]; \ No newline at end of file diff --git a/docs/html/arrays_8cc-example.html b/docs/html/arrays_8cc-example.html index 56199b4d..ca6bbbb6 100644 --- a/docs/html/arrays_8cc-example.html +++ b/docs/html/arrays_8cc-example.html @@ -94,20 +94,20 @@
int main() {
-
const mpl::communicator &comm_world{mpl::environment::comm_world()};
+
const mpl::communicator &comm_world{mpl::environment::comm_world()};
// run the program with two or more processes
-
if (comm_world.size() < 2)
-
comm_world.abort(EXIT_FAILURE);
+
if (comm_world.size() < 2)
+
comm_world.abort(EXIT_FAILURE);
// send / receive a single array
{
const int n{10};
double arr[n];
-
if (comm_world.rank() == 0) {
+
if (comm_world.rank() == 0) {
std::iota(arr, arr + n, 1);
-
comm_world.send(arr, 1);
+
comm_world.send(arr, 1);
}
-
if (comm_world.rank() == 1) {
-
comm_world.recv(arr, 0);
+
if (comm_world.rank() == 1) {
+
comm_world.recv(arr, 0);
for (int j{0}; j < n; ++j)
std::cout << "arr[" << j << "] = " << arr[j] << '\n';
}
@@ -116,14 +116,14 @@
{
const int n_0{2}, n_1{3};
double arr[n_0][n_1];
-
if (comm_world.rank() == 0) {
+
if (comm_world.rank() == 0) {
for (int j_1{0}; j_1 < n_1; ++j_1)
for (int j_0{0}; j_0 < n_0; ++j_0)
arr[j_0][j_1] = (j_0 + 1) + 100 * (j_1 + 1);
-
comm_world.send(arr, 1);
+
comm_world.send(arr, 1);
}
-
if (comm_world.rank() == 1) {
-
comm_world.recv(arr, 0);
+
if (comm_world.rank() == 1) {
+
comm_world.recv(arr, 0);
for (int j_1{0}; j_1 < n_1; ++j_1) {
for (int j_0{0}; j_0 < n_0; ++j_0)
std::cout << "arr[" << j_0 << ", " << j_1 << "] = " << arr[j_0][j_1] << '\n';
@@ -132,11 +132,10 @@
}
return EXIT_SUCCESS;
}
-
mpl::communicator
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:250
-
mpl::communicator::abort
void abort(int err) const
Aborts all processes associated to the communicator.
Definition: comm_group.hpp:606
-
mpl::communicator::size
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:559
-
mpl::communicator::rank
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:567
-
mpl::environment::comm_world
const communicator & comm_world()
Provides access to a predefined communicator that allows communication with all processes.
Definition: environment.hpp:141
+
mpl::communicator
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:253
+
mpl::communicator::abort
void abort(int err) const
Aborts all processes associated to the communicator.
Definition: comm_group.hpp:614
+
mpl::communicator::size
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:564
+
mpl::communicator::rank
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:572
diff --git a/docs/html/blocking_8cc-example.html b/docs/html/blocking_8cc-example.html index 706e1e8c..b78cebd7 100644 --- a/docs/html/blocking_8cc-example.html +++ b/docs/html/blocking_8cc-example.html @@ -92,50 +92,49 @@
#include <mpl/mpl.hpp>
int main() {
-
const mpl::communicator &comm_world{mpl::environment::comm_world()};
+
const mpl::communicator &comm_world{mpl::environment::comm_world()};
// run the program with two or more processes
-
if (comm_world.size() < 2)
+
if (comm_world.size() < 2)
return EXIT_FAILURE;
// process 0 sends
enum class tag_enum : short { tag = 1 };
-
if (comm_world.rank() == 0) {
+
if (comm_world.rank() == 0) {
// see MPI Standard for the semantics of standard send, buffered send,
// synchronous send and ready send
double x{1.23456};
-
comm_world.send(x, 1, tag_enum::tag); // send x to rank 1 via standard send
+
comm_world.send(x, 1, tag_enum::tag); // send x to rank 1 via standard send
++x;
{
// create a buffer for buffered send,
// memory will be freed on leaving the scope
-
int size{comm_world.bsend_size<decltype(x)>()};
-
mpl::bsend_buffer buff{size};
-
comm_world.bsend(x, 1); // send x to rank 1 via buffered send
+
int size{comm_world.bsend_size<decltype(x)>()};
+
mpl::bsend_buffer buff{size};
+
comm_world.bsend(x, 1); // send x to rank 1 via buffered send
}
++x;
-
comm_world.ssend(x, 1); // send x to rank 1 via synchronous send
+
comm_world.ssend(x, 1); // send x to rank 1 via synchronous send
++x;
-
comm_world.rsend(x, 1); // send x to rank 1 via ready send
+
comm_world.rsend(x, 1); // send x to rank 1 via ready send
}
// process 1 receives
-
if (comm_world.rank() == 1) {
+
if (comm_world.rank() == 1) {
double x;
-
comm_world.recv(x, 0, tag_enum::tag); // receive x from rank 0
+
comm_world.recv(x, 0, tag_enum::tag); // receive x from rank 0
std::cout << "x = " << x << '\n';
-
comm_world.recv(x, 0); // receive x from rank 0
+
comm_world.recv(x, 0); // receive x from rank 0
std::cout << "x = " << x << '\n';
-
comm_world.recv(x, 0); // receive x from rank 0
+
comm_world.recv(x, 0); // receive x from rank 0
std::cout << "x = " << x << '\n';
-
comm_world.recv(x, 0); // receive x from rank 0
+
comm_world.recv(x, 0); // receive x from rank 0
std::cout << "x = " << x << '\n';
}
return EXIT_SUCCESS;
}
mpl::bsend_buffer
Buffer manager for buffered send operations.
Definition: environment.hpp:191
-
mpl::communicator
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:250
-
mpl::communicator::bsend_size
int bsend_size(int number=1) const
determines the message buffer size
Definition: comm_group.hpp:902
-
mpl::communicator::size
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:559
-
mpl::communicator::rank
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:567
-
mpl::environment::comm_world
const communicator & comm_world()
Provides access to a predefined communicator that allows communication with all processes.
Definition: environment.hpp:141
+
mpl::communicator
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:253
+
mpl::communicator::bsend_size
int bsend_size(int number=1) const
Determines the message buffer size.
Definition: comm_group.hpp:911
+
mpl::communicator::size
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:564
+
mpl::communicator::rank
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:572
diff --git a/docs/html/blocking_vector_8cc-example.html b/docs/html/blocking_vector_8cc-example.html index a445cf2a..4edda3d8 100644 --- a/docs/html/blocking_vector_8cc-example.html +++ b/docs/html/blocking_vector_8cc-example.html @@ -105,53 +105,52 @@
}
int main() {
-
const mpl::communicator &comm_world{mpl::environment::comm_world()};
+
const mpl::communicator &comm_world{mpl::environment::comm_world()};
// run the program with two or more processes
-
if (comm_world.size() < 2)
+
if (comm_world.size() < 2)
return EXIT_FAILURE;
const int n{12};
std::vector<int> v(n); // vector of n elements lying contiguously in memory
-
mpl::contiguous_layout<int> l(n); // corresponding memory layout
+
mpl::contiguous_layout<int> l(n); // corresponding memory layout
// process 0 sends
-
if (comm_world.rank() == 0) {
+
if (comm_world.rank() == 0) {
// see MPI Standard for the semantics of standard send, buffered send,
// synchronous send and ready sendG
std::iota(v.begin(), v.end(), 0); // fill vector with some data
auto add_one{[](int x) { return x + 1; }};
-
comm_world.send(v.data(), l, 1); // send vector to rank 1 via standard send
+
comm_world.send(v.data(), l, 1); // send vector to rank 1 via standard send
std::transform(v.begin(), v.end(), v.begin(), add_one); // update data
{
// create a buffer for buffered send,
// memory will be freed on leaving the scope
-
const int size{comm_world.bsend_size(l)};
-
mpl::bsend_buffer buff{size};
-
comm_world.bsend(v.data(), l, 1); // send x to rank 1 via buffered send
+
const int size{comm_world.bsend_size(l)};
+
mpl::bsend_buffer buff{size};
+
comm_world.bsend(v.data(), l, 1); // send x to rank 1 via buffered send
}
std::transform(v.begin(), v.end(), v.begin(), add_one); // update data
-
comm_world.ssend(v.data(), l, 1); // send x to rank 1 via synchronous send
+
comm_world.ssend(v.data(), l, 1); // send x to rank 1 via synchronous send
std::transform(v.begin(), v.end(), v.begin(), add_one); // update data
-
comm_world.rsend(v.data(), l, 1); // send x to rank 1 via ready send
+
comm_world.rsend(v.data(), l, 1); // send x to rank 1 via ready send
}
// process 1 receives
-
if (comm_world.rank() == 1) {
-
comm_world.recv(v.data(), l, 0); // receive vector from rank 0
+
if (comm_world.rank() == 1) {
+
comm_world.recv(v.data(), l, 0); // receive vector from rank 0
print_range("v = ", v.begin(), v.end());
-
comm_world.recv(v.data(), l, 0); // receive vector from rank 0
+
comm_world.recv(v.data(), l, 0); // receive vector from rank 0
print_range("v = ", v.begin(), v.end());
-
comm_world.recv(v.data(), l, 0); // receive vector from rank 0
+
comm_world.recv(v.data(), l, 0); // receive vector from rank 0
print_range("v = ", v.begin(), v.end());
-
comm_world.recv(v.data(), l, 0); // receive vector from rank 0
+
comm_world.recv(v.data(), l, 0); // receive vector from rank 0
print_range("v = ", v.begin(), v.end());
}
return EXIT_SUCCESS;
}
mpl::bsend_buffer
Buffer manager for buffered send operations.
Definition: environment.hpp:191
-
mpl::communicator
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:250
-
mpl::communicator::bsend_size
int bsend_size(int number=1) const
determines the message buffer size
Definition: comm_group.hpp:902
-
mpl::communicator::size
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:559
-
mpl::communicator::rank
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:567
+
mpl::communicator
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:253
+
mpl::communicator::bsend_size
int bsend_size(int number=1) const
Determines the message buffer size.
Definition: comm_group.hpp:911
+
mpl::communicator::size
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:564
+
mpl::communicator::rank
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:572
mpl::contiguous_layout
Layout representing contiguous storage several objects.
Definition: layout.hpp:458
-
mpl::environment::comm_world
const communicator & comm_world()
Provides access to a predefined communicator that allows communication with all processes.
Definition: environment.hpp:141
diff --git a/docs/html/cartesian__communicator_8hpp_source.html b/docs/html/cartesian__communicator_8hpp_source.html index 6c790207..d3bf2fce 100644 --- a/docs/html/cartesian__communicator_8hpp_source.html +++ b/docs/html/cartesian__communicator_8hpp_source.html @@ -96,11 +96,11 @@
8#include <tuple>
9#include <iterator>
10
-
11namespace mpl {
+
11namespace mpl {
12
16 struct shift_ranks {
-
17 int source{0};
-
18 int destination{0};
+
17 int source{0};
+
18 int destination{0};
19 };
20
21 //--------------------------------------------------------------------
@@ -130,11 +130,11 @@
58 using base::data;
59
60 public:
-
61 using value_type = typename base::value_type;
-
62 using reference = typename base::reference;
-
63 using const_reference = typename base::const_reference;
-
64 using iterator = typename base::iterator;
-
65 using const_iterator = typename base::const_iterator;
+
61 using value_type = typename base::value_type;
+
62 using reference = typename base::reference;
+
63 using const_reference = typename base::const_reference;
+
64 using iterator = typename base::iterator;
+
65 using const_iterator = typename base::const_iterator;
66
68 vector() = default;
69
@@ -150,13 +150,13 @@
83
86 [[nodiscard]] int dimensions() const { return static_cast<int>(base::size()); }
87
-
90 reference operator[](int index) { return base::operator[](index); }
+
90 reference operator[](int index) { return base::operator[](index); }
91
-
94 const_reference operator[](int index) const { return base::operator[](index); }
+
94 const_reference operator[](int index) const { return base::operator[](index); }
95
98 void add(int coordinate) { push_back(coordinate); }
99
-
100 friend class cartesian_communicator;
+
100 friend class cartesian_communicator;
101 };
102
103
@@ -165,11 +165,11 @@
108 using base::data;
109
110 public:
-
111 using value_type = typename base::value_type;
-
112 using reference = typename base::reference;
-
113 using const_reference = typename base::const_reference;
-
114 using iterator = typename base::iterator;
-
115 using const_iterator = typename base::const_iterator;
+
111 using value_type = typename base::value_type;
+
112 using reference = typename base::reference;
+
113 using const_reference = typename base::const_reference;
+
114 using iterator = typename base::iterator;
+
115 using const_iterator = typename base::const_iterator;
116
118 included_tags() = default;
119
@@ -185,13 +185,13 @@
133
136 [[nodiscard]] int size() const { return static_cast<int>(base::size()); }
137
-
140 reference operator[](int index) { return base::operator[](index); }
+
140 reference operator[](int index) { return base::operator[](index); }
141
-
144 const_reference operator[](int index) const { return base::operator[](index); }
+
144 const_reference operator[](int index) const { return base::operator[](index); }
145
148 void add(included_tag is_included) { push_back(is_included); }
149
-
150 friend class cartesian_communicator;
+
150 friend class cartesian_communicator;
151 };
152
153
@@ -208,7 +208,7 @@
166
167 public:
168 template<std::size_t N>
-
169 [[nodiscard]] decltype(auto) get() const {
+
169 [[nodiscard]] decltype(auto) get() const {
170 if constexpr (N == 0)
171 return dim_ * 1;
172 else if constexpr (N == 1)
@@ -216,29 +216,29 @@
174 : periodicity_tag::periodic;
175 }
176
-
177 dimension_periodicity_proxy &operator=(const std::tuple<int, periodicity_tag> &t) {
+
177 dimension_periodicity_proxy &operator=(const std::tuple<int, periodicity_tag> &t) {
178 dim_ = std::get<int>(t);
179 is_periodic_ = std::get<periodicity_tag>(t) == periodic;
180 return *this;
181 }
182
-
183 bool operator==(const std::tuple<int, periodicity_tag> &t) const {
+
183 bool operator==(const std::tuple<int, periodicity_tag> &t) const {
184 return dim_ == std::get<int>(t) &&
185 (static_cast<bool>(is_periodic_) ==
186 (std::get<periodicity_tag>(t) == periodicity_tag::periodic));
187 }
188
-
189 bool operator!=(const std::tuple<int, periodicity_tag> &t) const {
+
189 bool operator!=(const std::tuple<int, periodicity_tag> &t) const {
190 return not(*this == t);
191 }
192
-
193 friend dimensions;
+
193 friend dimensions;
194 };
195
196
-
197 using value_type = std::tuple<int, periodicity_tag>;
-
198 using reference = dimension_periodicity_proxy;
-
199 using const_reference = std::tuple<int, periodicity_tag>;
+
197 using value_type = std::tuple<int, periodicity_tag>;
+
198 using reference = dimension_periodicity_proxy;
+
199 using const_reference = std::tuple<int, periodicity_tag>;
200
201
203 class iterator {
@@ -246,32 +246,32 @@
205 int index_{0};
206
207 public:
-
208 using difference_type = std::ptrdiff_t;
-
209 using iterator_category = std::input_iterator_tag;
-
210 using value_type = dimensions::value_type;
-
211 using pointer = value_type *;
-
212 using reference = dimensions::reference;
+
208 using difference_type = std::ptrdiff_t;
+
209 using iterator_category = std::input_iterator_tag;
+
210 using value_type = dimensions::value_type;
+
211 using pointer = value_type *;
+
212 using reference = dimensions::reference;
213
-
214 explicit iterator(dimensions *dims, int index = 0) : dimensions_{dims}, index_{index} {}
+
214 explicit iterator(dimensions *dims, int index = 0) : dimensions_{dims}, index_{index} {}
215
-
216 reference operator*() const { return (*dimensions_)[index_]; }
+
216 reference operator*() const { return (*dimensions_)[index_]; }
217
-
218 iterator &operator++() {
+
218 iterator &operator++() {
219 ++index_;
220 return *this;
221 }
222
-
223 iterator operator++(int) {
+
223 iterator operator++(int) {
224 const iterator tmp{*this};
225 ++(*this);
226 return tmp;
227 }
228
-
229 friend bool operator==(const iterator &a, const iterator &b) {
+
229 friend bool operator==(const iterator &a, const iterator &b) {
230 return a.dimensions_ == b.dimensions_ and a.index_ == b.index_;
231 };
232
-
233 friend bool operator!=(const iterator &a, const iterator &b) {
+
233 friend bool operator!=(const iterator &a, const iterator &b) {
234 return a.dimensions_ != b.dimensions_ or a.index_ != b.index_;
235 };
236 };
@@ -282,33 +282,33 @@
242 int index_{0};
243
244 public:
-
245 using difference_type = std::ptrdiff_t;
-
246 using iterator_category = std::input_iterator_tag;
-
247 using value_type = dimensions::value_type;
-
248 using pointer = const value_type *;
-
249 using reference = dimensions::const_reference;
+
245 using difference_type = std::ptrdiff_t;
+
246 using iterator_category = std::input_iterator_tag;
+
247 using value_type = dimensions::value_type;
+
248 using pointer = const value_type *;
+
249 using reference = dimensions::const_reference;
250
-
251 explicit const_iterator(const dimensions *dims, int index = 0)
+
251 explicit const_iterator(const dimensions *dims, int index = 0)
252 : dimensions_{dims}, index_{index} {}
253
-
254 reference operator*() const { return (*dimensions_)[index_]; }
+
254 reference operator*() const { return (*dimensions_)[index_]; }
255
-
256 const_iterator &operator++() {
+
256 const_iterator &operator++() {
257 ++index_;
258 return *this;
259 }
260
-
261 const_iterator operator++(int) {
+
261 const_iterator operator++(int) {
262 const const_iterator tmp{*this};
263 ++(*this);
264 return tmp;
265 }
266
-
267 friend bool operator==(const const_iterator &a, const const_iterator &b) {
+
267 friend bool operator==(const const_iterator &a, const const_iterator &b) {
268 return a.dimensions_ == b.dimensions_ and a.index_ == b.index_;
269 };
270
-
271 friend bool operator!=(const const_iterator &a, const const_iterator &b) {
+
271 friend bool operator!=(const const_iterator &a, const const_iterator &b) {
272 return a.dimensions_ != b.dimensions_ or a.index_ != b.index_;
273 };
274 };
@@ -345,7 +345,7 @@
333 return periodic_[dimension] == 0 ? non_periodic : periodic;
334 }
335
-
340 [[nodiscard]] const_reference operator[](int dimension) const {
+
340 [[nodiscard]] const_reference operator[](int dimension) const {
341 return {dims_[dimension], periodicity(dimension)};
342 }
343
@@ -353,19 +353,19 @@
349 return {dims_[dimension], periodic_[dimension]};
350 }
351
-
352 [[nodiscard]] iterator begin() { return iterator{this}; }
-
353 [[nodiscard]] const_iterator begin() const { return const_iterator{this}; }
-
354 [[nodiscard]] const_iterator cbegin() const { return const_iterator{this}; }
-
355 [[nodiscard]] iterator end() { return iterator{this, dimensionality()}; }
-
356 [[nodiscard]] const_iterator end() const {
-
357 return const_iterator{this, dimensionality()};
+
352 [[nodiscard]] iterator begin() { return iterator{this}; }
+
353 [[nodiscard]] const_iterator begin() const { return const_iterator{this}; }
+
354 [[nodiscard]] const_iterator cbegin() const { return const_iterator{this}; }
+
355 [[nodiscard]] iterator end() { return iterator{this, dimensionality()}; }
+
356 [[nodiscard]] const_iterator end() const {
+
357 return const_iterator{this, dimensionality()};
358 }
-
359 [[nodiscard]] const_iterator cend() const {
-
360 return const_iterator{this, dimensionality()};
+
359 [[nodiscard]] const_iterator cend() const {
+
360 return const_iterator{this, dimensionality()};
361 }
362
-
363 friend class cartesian_communicator;
-
364 friend dimensions dims_create(int, dimensions);
+
363 friend class cartesian_communicator;
+
364 friend dimensions dims_create(int, dimensions);
365 };
366
367
@@ -470,7 +470,7 @@
521
522 //--------------------------------------------------------------------
523
-
534 inline cartesian_communicator::dimensions dims_create(
+
534 inline cartesian_communicator::dimensions dims_create(
535 int size, cartesian_communicator::dimensions dims) {
536 if (MPI_Dims_create(size, static_cast<int>(dims.dims_.size()), dims.dims_.data()) !=
537 MPI_SUCCESS)
@@ -480,99 +480,57 @@
541
542} // namespace mpl
543
-
544
-
545namespace std {
-
546 template<>
-
547 struct tuple_size<mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy>
-
548 : std::integral_constant<std::size_t, 2> {};
-
549
-
550 template<std::size_t N>
-
551 struct tuple_element<N,
-
552 mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy> {
-
553 using type =
-
554 decltype(std::declval<
-
555 mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy>()
-
556 .get<N>());
-
557 };
-
558} // namespace std
-
559
-
560#endif
+
544#if !(defined MPL_DOXYGEN_SHOULD_SKIP_THIS)
+
545
+
546namespace std {
+
547 template<>
+
548 struct tuple_size<mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy>
+
549 : std::integral_constant<std::size_t, 2> {};
+
550
+
551 template<std::size_t N>
+
552 struct tuple_element<N,
+
553 mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy> {
+
554 using type =
+
555 decltype(std::declval<
+
556 mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy>()
+
557 .get<N>());
+
558 };
+
559} // namespace std
+
560
+
561#endif
+
562
+
563#endif
mpl::cartesian_communicator::dimensions::const_iterator
Iterator class for constant access.
Definition: cartesian_communicator.hpp:240
-
mpl::cartesian_communicator::dimensions::const_iterator::operator++
const_iterator & operator++()
Definition: cartesian_communicator.hpp:256
-
mpl::cartesian_communicator::dimensions::const_iterator::value_type
dimensions::value_type value_type
Definition: cartesian_communicator.hpp:247
-
mpl::cartesian_communicator::dimensions::const_iterator::pointer
const value_type * pointer
Definition: cartesian_communicator.hpp:248
-
mpl::cartesian_communicator::dimensions::const_iterator::reference
dimensions::const_reference reference
Definition: cartesian_communicator.hpp:249
-
mpl::cartesian_communicator::dimensions::const_iterator::operator!=
friend bool operator!=(const const_iterator &a, const const_iterator &b)
Definition: cartesian_communicator.hpp:271
-
mpl::cartesian_communicator::dimensions::const_iterator::difference_type
std::ptrdiff_t difference_type
Definition: cartesian_communicator.hpp:245
-
mpl::cartesian_communicator::dimensions::const_iterator::operator*
reference operator*() const
Definition: cartesian_communicator.hpp:254
-
mpl::cartesian_communicator::dimensions::const_iterator::operator++
const_iterator operator++(int)
Definition: cartesian_communicator.hpp:261
-
mpl::cartesian_communicator::dimensions::const_iterator::operator==
friend bool operator==(const const_iterator &a, const const_iterator &b)
Definition: cartesian_communicator.hpp:267
-
mpl::cartesian_communicator::dimensions::const_iterator::iterator_category
std::input_iterator_tag iterator_category
Definition: cartesian_communicator.hpp:246
-
mpl::cartesian_communicator::dimensions::const_iterator::const_iterator
const_iterator(const dimensions *dims, int index=0)
Definition: cartesian_communicator.hpp:251
mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy
Definition: cartesian_communicator.hpp:160
-
mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy::get
decltype(auto) get() const
Definition: cartesian_communicator.hpp:169
-
mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy::operator!=
bool operator!=(const std::tuple< int, periodicity_tag > &t) const
Definition: cartesian_communicator.hpp:189
-
mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy::operator=
dimension_periodicity_proxy & operator=(const std::tuple< int, periodicity_tag > &t)
Definition: cartesian_communicator.hpp:177
-
mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy::operator==
bool operator==(const std::tuple< int, periodicity_tag > &t) const
Definition: cartesian_communicator.hpp:183
-
mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy::dimensions
friend dimensions
Definition: cartesian_communicator.hpp:193
mpl::cartesian_communicator::dimensions::iterator
Iterator class for non-constant access.
Definition: cartesian_communicator.hpp:203
-
mpl::cartesian_communicator::dimensions::iterator::pointer
value_type * pointer
Definition: cartesian_communicator.hpp:211
-
mpl::cartesian_communicator::dimensions::iterator::operator!=
friend bool operator!=(const iterator &a, const iterator &b)
Definition: cartesian_communicator.hpp:233
-
mpl::cartesian_communicator::dimensions::iterator::iterator
iterator(dimensions *dims, int index=0)
Definition: cartesian_communicator.hpp:214
-
mpl::cartesian_communicator::dimensions::iterator::operator==
friend bool operator==(const iterator &a, const iterator &b)
Definition: cartesian_communicator.hpp:229
-
mpl::cartesian_communicator::dimensions::iterator::difference_type
std::ptrdiff_t difference_type
Definition: cartesian_communicator.hpp:208
-
mpl::cartesian_communicator::dimensions::iterator::operator++
iterator & operator++()
Definition: cartesian_communicator.hpp:218
-
mpl::cartesian_communicator::dimensions::iterator::iterator_category
std::input_iterator_tag iterator_category
Definition: cartesian_communicator.hpp:209
-
mpl::cartesian_communicator::dimensions::iterator::operator++
iterator operator++(int)
Definition: cartesian_communicator.hpp:223
-
mpl::cartesian_communicator::dimensions::iterator::value_type
dimensions::value_type value_type
Definition: cartesian_communicator.hpp:210
-
mpl::cartesian_communicator::dimensions::iterator::operator*
reference operator*() const
Definition: cartesian_communicator.hpp:216
mpl::cartesian_communicator::dimensions
Characterizes the dimensionality, size and periodicity of a communicator with Cartesian process topol...
Definition: cartesian_communicator.hpp:156
-
mpl::cartesian_communicator::dimensions::cend
const_iterator cend() const
Definition: cartesian_communicator.hpp:359
-
mpl::cartesian_communicator::dimensions::value_type
std::tuple< int, periodicity_tag > value_type
Definition: cartesian_communicator.hpp:197
mpl::cartesian_communicator::dimensions::size
int size(int dimension) const
Determines the number of processes along a dimension.
Definition: cartesian_communicator.hpp:327
mpl::cartesian_communicator::dimensions::dimensions
dimensions(std::initializer_list< std::tuple< int, periodicity_tag > > list)
Constructs a new dimensions object.
Definition: cartesian_communicator.hpp:304
-
mpl::cartesian_communicator::dimensions::reference
dimension_periodicity_proxy reference
Definition: cartesian_communicator.hpp:198
-
mpl::cartesian_communicator::dimensions::const_reference
std::tuple< int, periodicity_tag > const_reference
Definition: cartesian_communicator.hpp:199
-
mpl::cartesian_communicator::dimensions::begin
const_iterator begin() const
Definition: cartesian_communicator.hpp:353
mpl::cartesian_communicator::dimensions::dimensions
dimensions()=default
Constructs a new empty dimensions object.
-
mpl::cartesian_communicator::dimensions::end
const_iterator end() const
Definition: cartesian_communicator.hpp:356
mpl::cartesian_communicator::dimensions::operator[]
const_reference operator[](int dimension) const
Determines number of processes along a dimension and the periodicity of a dimension.
Definition: cartesian_communicator.hpp:340
mpl::cartesian_communicator::dimensions::dimensions
dimensions(std::initializer_list< periodicity_tag > list)
Constructs a new dimensions object.
Definition: cartesian_communicator.hpp:293
mpl::cartesian_communicator::dimensions::operator[]
reference operator[](int dimension)
Determines number of processes along a dimension and the periodicity of a dimension.
Definition: cartesian_communicator.hpp:348
-
mpl::cartesian_communicator::dimensions::begin
iterator begin()
Definition: cartesian_communicator.hpp:352
-
mpl::cartesian_communicator::dimensions::cbegin
const_iterator cbegin() const
Definition: cartesian_communicator.hpp:354
mpl::cartesian_communicator::dimensions::dimensionality
int dimensionality() const
Determines the dimensionality.
Definition: cartesian_communicator.hpp:322
mpl::cartesian_communicator::dimensions::add
void add(int size, periodicity_tag periodicity)
Adds a additional dimension to a list of dimensions.
Definition: cartesian_communicator.hpp:315
mpl::cartesian_communicator::dimensions::dimensions
dimensions(int size)
Constructs a new dimensions object.
Definition: cartesian_communicator.hpp:286
-
mpl::cartesian_communicator::dimensions::end
iterator end()
Definition: cartesian_communicator.hpp:355
mpl::cartesian_communicator::dimensions::periodicity
periodicity_tag periodicity(int dimension) const
Determines the periodicity of a dimension.
Definition: cartesian_communicator.hpp:332
mpl::cartesian_communicator::dimensions::dims_create
friend dimensions dims_create(int, dimensions)
Decomposes a given number of processes over a Cartesian grid made of the number of dimensions specifi...
Definition: cartesian_communicator.hpp:534
mpl::cartesian_communicator::included_tags
Represents the inclusion or exclusion along all dimensions of a Cartesian process topology when creat...
Definition: cartesian_communicator.hpp:106
-
mpl::cartesian_communicator::included_tags::const_iterator
typename base::const_iterator const_iterator
Definition: cartesian_communicator.hpp:115
mpl::cartesian_communicator::included_tags::operator[]
reference operator[](int index)
Access list element.
Definition: cartesian_communicator.hpp:140
mpl::cartesian_communicator::included_tags::size
int size() const
Determines the number of inclusion tags.
Definition: cartesian_communicator.hpp:136
-
mpl::cartesian_communicator::included_tags::value_type
typename base::value_type value_type
Definition: cartesian_communicator.hpp:111
-
mpl::cartesian_communicator::included_tags::iterator
typename base::iterator iterator
Definition: cartesian_communicator.hpp:114
mpl::cartesian_communicator::included_tags::included_tags
included_tags(int dimension)
Creates a non-empty inclusion tags list with default values excluded.
Definition: cartesian_communicator.hpp:122
mpl::cartesian_communicator::included_tags::operator[]
const_reference operator[](int index) const
Access list element.
Definition: cartesian_communicator.hpp:144
-
mpl::cartesian_communicator::included_tags::reference
typename base::reference reference
Definition: cartesian_communicator.hpp:112
mpl::cartesian_communicator::included_tags::included_tags
included_tags(std::initializer_list< included_tag > init)
Creates a non-empty inclusion tags list with values given by the list.
Definition: cartesian_communicator.hpp:126
-
mpl::cartesian_communicator::included_tags::const_reference
typename base::const_reference const_reference
Definition: cartesian_communicator.hpp:113
mpl::cartesian_communicator::included_tags::add
void add(included_tag is_included)
Add an additional element to the end of the vector.
Definition: cartesian_communicator.hpp:148
mpl::cartesian_communicator::included_tags::included_tags
included_tags()=default
Creates an empty inclusion tags list.
mpl::cartesian_communicator::vector
Represents a discrete position in a Cartesian process topology.
Definition: cartesian_communicator.hpp:56
-
mpl::cartesian_communicator::vector::reference
typename base::reference reference
Definition: cartesian_communicator.hpp:62
mpl::cartesian_communicator::vector::operator[]
const_reference operator[](int index) const
Access a vector element.
Definition: cartesian_communicator.hpp:94
mpl::cartesian_communicator::vector::operator[]
reference operator[](int index)
Access a vector element.
Definition: cartesian_communicator.hpp:90
mpl::cartesian_communicator::vector::add
void add(int coordinate)
Add an additional element to the end of the vector.
Definition: cartesian_communicator.hpp:98
-
mpl::cartesian_communicator::vector::const_reference
typename base::const_reference const_reference
Definition: cartesian_communicator.hpp:63
mpl::cartesian_communicator::vector::vector
vector(std::initializer_list< int > init)
Creates a multi-dimensional vector with components given by the list.
Definition: cartesian_communicator.hpp:76
mpl::cartesian_communicator::vector::dimensions
int dimensions() const
Determines the number of dimensions.
Definition: cartesian_communicator.hpp:86
-
mpl::cartesian_communicator::vector::iterator
typename base::iterator iterator
Definition: cartesian_communicator.hpp:64
mpl::cartesian_communicator::vector::vector
vector(int dimension)
Creates a multi-dimensional vector with components equal to zero.
Definition: cartesian_communicator.hpp:72
mpl::cartesian_communicator::vector::vector
vector()=default
Creates a zero-dimensional vector.
-
mpl::cartesian_communicator::vector::const_iterator
typename base::const_iterator const_iterator
Definition: cartesian_communicator.hpp:65
-
mpl::cartesian_communicator::vector::value_type
typename base::value_type value_type
Definition: cartesian_communicator.hpp:61
mpl::cartesian_communicator
Communicator with Cartesian topology.
Definition: cartesian_communicator.hpp:24
mpl::cartesian_communicator::get_dimensions
dimensions get_dimensions() const
Determines the size and the periodicity of each dimension of the communicator with Cartesian topology...
Definition: cartesian_communicator.hpp:498
mpl::cartesian_communicator::cartesian_communicator
cartesian_communicator()=default
Creates an empty communicator with no associated process.
@@ -593,25 +551,19 @@
mpl::cartesian_communicator::coordinates
vector coordinates() const
Determines the Cartesian location of this process.
Definition: cartesian_communicator.hpp:487
mpl::cartesian_communicator::cartesian_communicator
cartesian_communicator(const cartesian_communicator &other, const included_tags &is_included)
Creates a new communicator with Cartesian process topology by partitioning a Cartesian topology.
Definition: cartesian_communicator.hpp:402
mpl::cartesian_communicator::periodic
static constexpr periodicity_tag periodic
indicates that a dimension in a Cartesian process topology is periodic
Definition: cartesian_communicator.hpp:37
-
mpl::cartesian_communicator::rank
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:567
+
mpl::cartesian_communicator::rank
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:572
mpl::cartesian_communicator::periodicity_tag
periodicity_tag
Periodicity indicator for a dimension in a Cartesian process topology.
Definition: cartesian_communicator.hpp:27
mpl::cartesian_communicator::periodicity_tag::non_periodic
@ non_periodic
dimension is non-periodic
mpl::cartesian_communicator::periodicity_tag::periodic
@ periodic
dimension is periodic
mpl::cartesian_communicator::coordinates
vector coordinates(int rank) const
Determines the Cartesian location of a process with a given rank.
Definition: cartesian_communicator.hpp:479
-
mpl::communicator
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:250
-
mpl::communicator::is_valid
bool is_valid() const
Checks if a communicator is valid, i.e., is not an empty communicator with no associated process.
Definition: comm_group.hpp:601
-
mpl::communicator::rank
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:567
+
mpl::communicator
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:253
+
mpl::communicator::is_valid
bool is_valid() const
Checks if a communicator is valid, i.e., is not an empty communicator with no associated process.
Definition: comm_group.hpp:609
+
mpl::communicator::rank
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:572
mpl::impl::topology_communicator
Base class for communicators with a topology.
Definition: topology_communicator.hpp:11
mpl::invalid_dim
Will be thrown in case of invalid dimension.
Definition: error.hpp:53
mpl::invalid_size
Will be thrown in case of invalid size argument.
Definition: error.hpp:35
mpl::ranks
Represents a collection of ranks.
Definition: ranks.hpp:13
-
mpl
Definition: cartesian_communicator.hpp:11
-
mpl::dims_create
cartesian_communicator::dimensions dims_create(int size, cartesian_communicator::dimensions dims)
Decomposes a given number of processes over a Cartesian grid made of the number of dimensions specifi...
Definition: cartesian_communicator.hpp:534
-
std
Definition: cartesian_communicator.hpp:545
mpl::shift_ranks
Helper class to represent source and destination ranks within a Cartesian communicator.
Definition: cartesian_communicator.hpp:16
-
mpl::shift_ranks::destination
int destination
Definition: cartesian_communicator.hpp:18
-
mpl::shift_ranks::source
int source
Definition: cartesian_communicator.hpp:17
-
std::tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >::type
decltype(std::declval< mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >() .get< N >()) type
Definition: cartesian_communicator.hpp:556
diff --git a/docs/html/classes.html b/docs/html/classes.html index 5a7f7dd8..f11d05fe 100644 --- a/docs/html/classes.html +++ b/docs/html/classes.html @@ -90,58 +90,58 @@
A
-
absolute_data (mpl)
absolute_data< const T * > (mpl)
absolute_data< T * > (mpl)
+
absolute_data (mpl)
absolute_data< const T * > (mpl)
absolute_data< T * > (mpl)
B
-
base_struct_builder (mpl)
bit_and (mpl)
bit_or (mpl)
bit_xor (mpl)
bsend_buffer (mpl)
+
base_struct_builder (mpl)
bit_and (mpl)
bit_or (mpl)
bit_xor (mpl)
bsend_buffer (mpl)
C
-
cartesian_communicator (mpl)
communicator::comm_collective_tag (mpl)
communicator (mpl)
cartesian_communicator::dimensions::const_iterator (mpl)
contiguous_layout (mpl)
contiguous_layouts (mpl)
+
cartesian_communicator (mpl)
communicator::comm_collective_tag (mpl)
communicator (mpl)
cartesian_communicator::dimensions::const_iterator (mpl)
contiguous_layout (mpl)
contiguous_layouts (mpl)
D
-
group::difference_tag (mpl)
cartesian_communicator::dimensions::dimension_periodicity_proxy (mpl)
cartesian_communicator::dimensions (mpl)
distributed_grid::dimensions (mpl)
local_grid::dimensions (mpl)
displacements (mpl)
distributed_graph_communicator (mpl)
distributed_grid (mpl)
+
group::difference_tag (mpl)
cartesian_communicator::dimensions::dimension_periodicity_proxy (mpl)
cartesian_communicator::dimensions (mpl)
distributed_grid::dimensions (mpl)
local_grid::dimensions (mpl)
displacements (mpl)
distributed_graph_communicator (mpl)
distributed_grid (mpl)
E
-
graph_communicator::edge_set (mpl)
empty_layout (mpl)
error (mpl)
group::exclude_tag (mpl)
+
graph_communicator::edge_set (mpl)
empty_layout (mpl)
error (mpl)
group::exclude_tag (mpl)
G
-
graph_communicator (mpl)
group (mpl)
communicator::group_collective_tag (mpl)
+
graph_communicator (mpl)
group (mpl)
communicator::group_collective_tag (mpl)
H
-
heterogeneous_layout (mpl)
hindexed_block_layout (mpl)
hindexed_layout (mpl)
+
heterogeneous_layout (mpl)
hindexed_block_layout (mpl)
hindexed_layout (mpl)
I
-
group::include_tag (mpl)
cartesian_communicator::included_tags (mpl)
indexed_block_layout (mpl)
indexed_layout (mpl)
group::intersection_tag (mpl)
invalid_argument (mpl)
invalid_count (mpl)
invalid_datatype_bound (mpl)
invalid_dim (mpl)
invalid_layout (mpl)
invalid_rank (mpl)
invalid_size (mpl)
invalid_tag (mpl)
irequest (mpl::impl)
irequest (mpl)
irequest_pool (mpl)
cartesian_communicator::dimensions::iterator (mpl)
iterator_layout (mpl)
+
group::include_tag (mpl)
cartesian_communicator::included_tags (mpl)
indexed_block_layout (mpl)
indexed_layout (mpl)
group::intersection_tag (mpl)
invalid_argument (mpl)
invalid_count (mpl)
invalid_datatype_bound (mpl)
invalid_dim (mpl)
invalid_layout (mpl)
invalid_rank (mpl)
invalid_size (mpl)
invalid_tag (mpl)
irequest (mpl::impl)
irequest (mpl)
irequest_pool (mpl)
cartesian_communicator::dimensions::iterator (mpl)
iterator_layout (mpl)
L
-
layout (mpl)
layouts (mpl)
local_grid (mpl)
logical_and (mpl)
logical_or (mpl)
logical_xor (mpl)
+
layout (mpl)
layouts (mpl)
local_grid (mpl)
logical_and (mpl)
logical_or (mpl)
logical_xor (mpl)
M
-
max (mpl)
min (mpl)
mprobe_status (mpl)
multiplies (mpl)
+
max (mpl)
min (mpl)
mprobe_status (mpl)
multiplies (mpl)
N
-
distributed_graph_communicator::neighbours_set (mpl)
graph_communicator::node_list (mpl)
null_layout (mpl)
+
distributed_graph_communicator::neighbours_set (mpl)
graph_communicator::node_list (mpl)
null_layout (mpl)
O
-
op_traits (mpl)
op_traits< bit_and< T > > (mpl)
op_traits< bit_or< T > > (mpl)
op_traits< bit_xor< T > > (mpl)
op_traits< logical_and< T > > (mpl)
op_traits< logical_or< T > > (mpl)
op_traits< logical_xor< T > > (mpl)
op_traits< max< T > > (mpl)
op_traits< min< T > > (mpl)
op_traits< multiplies< T > > (mpl)
op_traits< plus< T > > (mpl)
+
op_traits (mpl)
op_traits< bit_and< T > > (mpl)
op_traits< bit_or< T > > (mpl)
op_traits< bit_xor< T > > (mpl)
op_traits< logical_and< T > > (mpl)
op_traits< logical_or< T > > (mpl)
op_traits< logical_xor< T > > (mpl)
op_traits< max< T > > (mpl)
op_traits< min< T > > (mpl)
op_traits< multiplies< T > > (mpl)
op_traits< plus< T > > (mpl)
P
-
heterogeneous_layout::parameter (mpl)
hindexed_block_layout::parameter (mpl)
hindexed_layout::parameter (mpl)
indexed_block_layout::parameter (mpl)
indexed_layout::parameter (mpl)
iterator_layout::parameter (mpl)
subarray_layout::parameter (mpl)
plus (mpl)
prequest (mpl::impl)
prequest (mpl)
prequest_pool (mpl)
+
heterogeneous_layout::parameter (mpl)
hindexed_block_layout::parameter (mpl)
hindexed_layout::parameter (mpl)
indexed_block_layout::parameter (mpl)
indexed_layout::parameter (mpl)
iterator_layout::parameter (mpl)
subarray_layout::parameter (mpl)
plus (mpl)
prequest (mpl::impl)
prequest (mpl)
prequest_pool (mpl)
R
-
distributed_graph_communicator::rank_weight_pair (mpl)
ranks (mpl)
request (mpl::impl)
request_pool (mpl::impl)
+
distributed_graph_communicator::rank_weight_pair (mpl)
ranks (mpl)
request (mpl::impl)
request_pool (mpl::impl)
S
-
shift_ranks (mpl)
distributed_grid::size_overlap_pair (mpl)
communicator::split_shared_memory_tag (mpl)
communicator::split_tag (mpl)
status_t (mpl)
strided_vector_layout (mpl)
struct_builder (mpl)
struct_builder< std::array< T, N > > (mpl)
struct_builder< std::pair< T1, T2 > > (mpl)
struct_builder< std::tuple< Ts... > > (mpl)
struct_builder< T[N0]> (mpl)
struct_builder< T[N0][N1]> (mpl)
struct_builder< T[N0][N1][N2]> (mpl)
struct_builder< T[N0][N1][N2][N3]> (mpl)
struct_layout (mpl)
subarray_layout (mpl)
+
shift_ranks (mpl)
distributed_grid::size_overlap_pair (mpl)
communicator::split_shared_memory_tag (mpl)
communicator::split_tag (mpl)
status_t (mpl)
strided_vector_layout (mpl)
struct_builder (mpl)
struct_builder< std::array< T, N > > (mpl)
struct_builder< std::pair< T1, T2 > > (mpl)
struct_builder< std::tuple< Ts... > > (mpl)
struct_builder< T[N0]> (mpl)
struct_builder< T[N0][N1]> (mpl)
struct_builder< T[N0][N1][N2]> (mpl)
struct_builder< T[N0][N1][N2][N3]> (mpl)
struct_layout (mpl)
subarray_layout (mpl)
T
-
tag_t (mpl)
topology_communicator (mpl::impl)
tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy > (std)
tuple_size< mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy > (std)
+
tag_t (mpl)
topology_communicator (mpl::impl)
U
-
group::Union_tag (mpl)
+
group::Union_tag (mpl)
V
-
cartesian_communicator::vector (mpl)
vector_layout (mpl)
+
cartesian_communicator::vector (mpl)
vector_layout (mpl)
diff --git a/docs/html/classmpl_1_1absolute__data.html b/docs/html/classmpl_1_1absolute__data.html index 3346cb7e..27f67459 100644 --- a/docs/html/classmpl_1_1absolute__data.html +++ b/docs/html/classmpl_1_1absolute__data.html @@ -87,19 +87,19 @@
-

Helper class for heterogeneous_layout and make_absolute. +

Helper class for heterogeneous_layout, make_absolute(T *x, const layout<T> &l) and make_absolute(const T *x, const layout<T> &l). More...

Collaboration diagram for mpl::absolute_data< T >:
Collaboration graph
- +

Detailed Description

template<typename T>
-class mpl::absolute_data< T >

Helper class for heterogeneous_layout and make_absolute.

+class mpl::absolute_data< T >

Helper class for heterogeneous_layout, make_absolute(T *x, const layout<T> &l) and make_absolute(const T *x, const layout<T> &l).

Template Parameters
@@ -116,7 +116,7 @@ diff --git a/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4-members.html b/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4-members.html index 121fc2eb..f5242518 100644 --- a/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4-members.html +++ b/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4-members.html @@ -89,7 +89,7 @@

This is the complete list of members for mpl::absolute_data< T * >, including all inherited members.

Tdata type
- +
heterogeneous_layoutmpl::absolute_data< T * >friend
heterogeneous_layout (defined in mpl::absolute_data< T * >)mpl::absolute_data< T * >friend
make_absolutempl::absolute_data< T * >friend
diff --git a/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4.html b/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4.html index 8e734c9b..aba0c906 100644 --- a/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4.html +++ b/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4.html @@ -90,7 +90,7 @@
-

Helper class for heterogeneous_layout and make_absolute. +

Helper class for heterogeneous_layout, make_absolute(T *x, const layout<T> &l) and make_absolute(const T *x, const layout<T> &l). More...

#include <layout.hpp>

@@ -99,7 +99,7 @@
Collaboration graph
- +
@@ -108,12 +108,12 @@ - +
class heterogeneous_layout
 
absolute_data< T * > make_absolute (T *, const layout< T > &)
 helper function for heterogeneous_layout More...
 Helper function for the class heterogeneous_layout. More...
 

Detailed Description

template<typename T>
-class mpl::absolute_data< T * >

Helper class for heterogeneous_layout and make_absolute.

+class mpl::absolute_data< T * >

Helper class for heterogeneous_layout, make_absolute(T *x, const layout<T> &l) and make_absolute(const T *x, const layout<T> &l).

Template Parameters
@@ -121,7 +121,7 @@ -

Definition at line 1473 of file layout.hpp.

+

Definition at line 1475 of file layout.hpp.

Friends And Related Function Documentation

◆ heterogeneous_layout

@@ -145,7 +145,7 @@

-

Definition at line 1480 of file layout.hpp.

+

Definition at line 1482 of file layout.hpp.

@@ -185,7 +185,7 @@

-

helper function for heterogeneous_layout

+

Helper function for the class heterogeneous_layout.

Template Parameters

Tdata type
@@ -199,9 +199,9 @@

See also
make_absolute(T *x, const layout<T> &l) function and heterogeneous_layout class
+
See also
make_absolute(T *x, const layout<T> &l) function and heterogeneous_layout class
-

Definition at line 1631 of file layout.hpp.

+

Definition at line 1634 of file layout.hpp.

@@ -213,7 +213,7 @@

diff --git a/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4.js b/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4.js index e69be3e3..58e630f1 100644 --- a/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4.js +++ b/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4.js @@ -1,5 +1,4 @@ var classmpl_1_1absolute__data_3_01_t_01_5_01_4 = [ - [ "heterogeneous_layout", "classmpl_1_1absolute__data_3_01_t_01_5_01_4.html#a345f190da284e84ef033bec2677fdd5f", null ], [ "make_absolute", "classmpl_1_1absolute__data_3_01_t_01_5_01_4.html#ac0dc61784adeaeaf328f741871add748", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4__coll__graph.map b/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4__coll__graph.map index c2bcb3c3..a5ccade4 100644 --- a/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4__coll__graph.map +++ b/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4__coll__graph.map @@ -1,3 +1,3 @@ - + diff --git a/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4__coll__graph.md5 b/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4__coll__graph.md5 index 908dfd16..eff22f92 100644 --- a/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4__coll__graph.md5 +++ b/docs/html/classmpl_1_1absolute__data_3_01_t_01_5_01_4__coll__graph.md5 @@ -1 +1 @@ -c6358bb1c8e3cdf857e6dcdc5c47d43c \ No newline at end of file +e877dba80251fbe724c8db8da54aab6b \ No newline at end of file diff --git a/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4-members.html b/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4-members.html index 5a172009..444d50a6 100644 --- a/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4-members.html +++ b/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4-members.html @@ -89,7 +89,7 @@

This is the complete list of members for mpl::absolute_data< const T * >, including all inherited members.

Tdata type
- +
heterogeneous_layoutmpl::absolute_data< const T * >friend
heterogeneous_layout (defined in mpl::absolute_data< const T * >)mpl::absolute_data< const T * >friend
make_absolutempl::absolute_data< const T * >friend
diff --git a/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html b/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html index b8474e25..204b2168 100644 --- a/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html +++ b/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html @@ -90,7 +90,7 @@
-

Helper class for heterogeneous_layout and make_absolute. +

Helper class for heterogeneous_layout, make_absolute(T *x, const layout<T> &l) and make_absolute(const T *x, const layout<T> &l). More...

#include <layout.hpp>

@@ -99,7 +99,7 @@
Collaboration graph
- +
@@ -108,12 +108,12 @@ - +
class heterogeneous_layout
 
absolute_data< const T * > make_absolute (const T *, const layout< T > &)
 helper function for heterogeneous_layout More...
 Helper function for the class heterogeneous_layout. More...
 

Detailed Description

template<typename T>
-class mpl::absolute_data< const T * >

Helper class for heterogeneous_layout and make_absolute.

+class mpl::absolute_data< const T * >

Helper class for heterogeneous_layout, make_absolute(T *x, const layout<T> &l) and make_absolute(const T *x, const layout<T> &l).

Template Parameters
@@ -121,7 +121,7 @@ -

Definition at line 1489 of file layout.hpp.

+

Definition at line 1492 of file layout.hpp.

Friends And Related Function Documentation

◆ heterogeneous_layout

@@ -145,7 +145,7 @@

-

Definition at line 1496 of file layout.hpp.

+

Definition at line 1499 of file layout.hpp.

@@ -185,7 +185,7 @@

-

helper function for heterogeneous_layout

+

Helper function for the class heterogeneous_layout.

Template Parameters

Tdata type
@@ -199,9 +199,9 @@

See also
make_absolute(const T *x, const layout<T> &l) function and heterogeneous_layout class
+
See also
make_absolute(const T *x, const layout<T> &l) function and heterogeneous_layout class
-

Definition at line 1641 of file layout.hpp.

+

Definition at line 1644 of file layout.hpp.

@@ -213,7 +213,7 @@

diff --git a/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.js b/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.js index d4e24520..d5e0d391 100644 --- a/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.js +++ b/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.js @@ -1,5 +1,4 @@ var classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4 = [ - [ "heterogeneous_layout", "classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html#a345f190da284e84ef033bec2677fdd5f", null ], [ "make_absolute", "classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html#a8f6bbd313a30534934c9a4004d1d3f0f", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4__coll__graph.map b/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4__coll__graph.map index c6c79496..e522f3db 100644 --- a/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4__coll__graph.map +++ b/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4__coll__graph.map @@ -1,3 +1,3 @@ - + diff --git a/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4__coll__graph.md5 b/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4__coll__graph.md5 index 295c5308..42bf951a 100644 --- a/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4__coll__graph.md5 +++ b/docs/html/classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4__coll__graph.md5 @@ -1 +1 @@ -eb79c842a372e7caf27a9cdffa89aa0b \ No newline at end of file +ffacabc9748282b596090aed0db43fdb \ No newline at end of file diff --git a/docs/html/classmpl_1_1absolute__data__coll__graph.map b/docs/html/classmpl_1_1absolute__data__coll__graph.map index fd2474c1..e33c59b0 100644 --- a/docs/html/classmpl_1_1absolute__data__coll__graph.map +++ b/docs/html/classmpl_1_1absolute__data__coll__graph.map @@ -1,3 +1,3 @@ - + diff --git a/docs/html/classmpl_1_1absolute__data__coll__graph.md5 b/docs/html/classmpl_1_1absolute__data__coll__graph.md5 index bdad179e..78b01716 100644 --- a/docs/html/classmpl_1_1absolute__data__coll__graph.md5 +++ b/docs/html/classmpl_1_1absolute__data__coll__graph.md5 @@ -1 +1 @@ -670a1a130ba5f74bd782180274b5f80d \ No newline at end of file +9621323c2544a5fd5d7fc3cb54ad6258 \ No newline at end of file diff --git a/docs/html/classmpl_1_1base__struct__builder-members.html b/docs/html/classmpl_1_1base__struct__builder-members.html index 6bb1c5a6..5960195c 100644 --- a/docs/html/classmpl_1_1base__struct__builder-members.html +++ b/docs/html/classmpl_1_1base__struct__builder-members.html @@ -89,9 +89,9 @@

This is the complete list of members for mpl::base_struct_builder< T >, including all inherited members.

Tdata type
- - - + + +
base_struct_builder(const base_struct_builder &)=deletempl::base_struct_builder< T >
detail::datatype_traits_impl< T, void >mpl::base_struct_builder< T >friend
operator=(const base_struct_builder &)=deletempl::base_struct_builder< T >
base_struct_builder(const base_struct_builder &)=delete (defined in mpl::base_struct_builder< T >)mpl::base_struct_builder< T >
detail::datatype_traits_impl< T, void > (defined in mpl::base_struct_builder< T >)mpl::base_struct_builder< T >friend
operator=(const base_struct_builder &)=delete (defined in mpl::base_struct_builder< T >)mpl::base_struct_builder< T >
diff --git a/docs/html/classmpl_1_1base__struct__builder.html b/docs/html/classmpl_1_1base__struct__builder.html index a4cfcfaa..a75f4218 100644 --- a/docs/html/classmpl_1_1base__struct__builder.html +++ b/docs/html/classmpl_1_1base__struct__builder.html @@ -106,9 +106,11 @@ - + - +

Public Member Functions

 base_struct_builder (const base_struct_builder &)=delete
base_struct_builder (const base_struct_builder &)=delete
 
void operator= (const base_struct_builder &)=delete
+void operator= (const base_struct_builder &)=delete
 

@@ -128,65 +130,7 @@
See also
struct_builder

Definition at line 161 of file datatype.hpp.

-

Constructor & Destructor Documentation

- -

◆ base_struct_builder()

- -
-
-
-template<typename T >
- - - - - -
- - - - - - - - -
mpl::base_struct_builder< T >::base_struct_builder (const base_struct_builder< T > & )
-
-delete
-
- -
-
-

Member Function Documentation

- -

◆ operator=()

- -
-
-
-template<typename T >
- - - - - -
- - - - - - - - -
void mpl::base_struct_builder< T >::operator= (const base_struct_builder< T > & )
-
-delete
-
- -
-
-

Friends And Related Function Documentation

+

Friends And Related Function Documentation

◆ detail::datatype_traits_impl< T, void >

@@ -221,7 +165,7 @@

diff --git a/docs/html/classmpl_1_1base__struct__builder.js b/docs/html/classmpl_1_1base__struct__builder.js deleted file mode 100644 index dfb27db4..00000000 --- a/docs/html/classmpl_1_1base__struct__builder.js +++ /dev/null @@ -1,6 +0,0 @@ -var classmpl_1_1base__struct__builder = -[ - [ "base_struct_builder", "classmpl_1_1base__struct__builder.html#a3138dac289f89c80ea2e7f0467f7a7c3", null ], - [ "operator=", "classmpl_1_1base__struct__builder.html#a89fee93a94ed5fe7d423733cb3ba4224", null ], - [ "detail::datatype_traits_impl< T, void >", "classmpl_1_1base__struct__builder.html#adff83dea1d51c8281fbf5ca3717206fa", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1bsend__buffer.html b/docs/html/classmpl_1_1bsend__buffer.html index c43d4dee..26998ebf 100644 --- a/docs/html/classmpl_1_1bsend__buffer.html +++ b/docs/html/classmpl_1_1bsend__buffer.html @@ -105,8 +105,9 @@ - - + + @@ -130,40 +131,13 @@

Detailed Description

Buffer manager for buffered send operations.

Note
There must be not more than one instance of the class bsend_buffer at any time per process.
-
Examples
blocking.cc, blocking_vector.cc, and nonblocking.cc.
+
Examples
blocking.cc, blocking_vector.cc, and nonblocking.cc.

Definition at line 191 of file environment.hpp.

Constructor & Destructor Documentation

- -

◆ bsend_buffer() [1/4]

- -
-
-

Public Member Functions

 bsend_buffer ()=delete
 deleted default constructor More...
bsend_buffer ()=delete
 deleted default constructor
 
 bsend_buffer (const bsend_buffer &other)=delete
 deleted copy constructor More...
- - - - -
- - - - - - - -
mpl::bsend_buffer::bsend_buffer ()
-
-delete
-
- -

deleted default constructor

- -
- -

◆ bsend_buffer() [2/4]

+

◆ bsend_buffer() [1/3]

@@ -197,7 +171,7 @@

-

◆ bsend_buffer() [3/4]

+

◆ bsend_buffer() [2/3]

@@ -231,7 +205,7 @@

-

◆ bsend_buffer() [4/4]

+

◆ bsend_buffer() [3/3]

@@ -261,7 +235,7 @@

Note
The size given should be the sum of the sizes of all outstanding buffered send operations that will be sent during the lifetime of the bsend_buffer object, plus bsend_overhead for each buffered send operation. Use communicator_bsend_size to calculate the required buffer size.
+
Note
The size given should be the sum of the sizes of all outstanding buffered send operations that will be sent during the lifetime of the bsend_buffer object, plus bsend_overhead for each buffered send operation. Use communicator_bsend_size to calculate the required buffer size.
See also
communicator::bsend and communicator::ibsend

Definition at line 214 of file environment.hpp.

@@ -375,7 +349,7 @@

diff --git a/docs/html/classmpl_1_1cartesian__communicator.html b/docs/html/classmpl_1_1cartesian__communicator.html index 73dcc05d..70b347b9 100644 --- a/docs/html/classmpl_1_1cartesian__communicator.html +++ b/docs/html/classmpl_1_1cartesian__communicator.html @@ -156,8 +156,9 @@

- - + + @@ -318,11 +319,11 @@ - + - + @@ -475,31 +476,33 @@ + + - + - + - + - + - + - + @@ -999,7 +1002,7 @@

Definition at line 281 of file comm_group.hpp.

+

Definition at line 284 of file comm_group.hpp.

@@ -1068,35 +1071,8 @@

Constructor & Destructor Documentation

- -

◆ cartesian_communicator() [1/5]

- -
-
-

Public Member Functions

 cartesian_communicator ()=default
 Creates an empty communicator with no associated process. More...
cartesian_communicator ()=default
 Creates an empty communicator with no associated process.
 
 cartesian_communicator (const cartesian_communicator &other)
 Creates a new communicator which is equivalent to an existing one. More...
 
template<typename T >
int bsend_size (int number=1) const
 determines the message buffer size More...
 Determines the message buffer size. More...
 
template<typename T >
int bsend_size (const layout< T > &l, int number=1) const
 determines the message buffer size More...
 Determines the message buffer size. More...
 
template<typename T >
void bsend (const T &data, int destination, tag_t t=tag_t(0)) const
 Non-blocking test for an incoming message. More...
 
mprobe_status mprobe (int source, tag_t t=tag_t(0)) const
 Blocking matched test for an incoming message. More...
 
std::optional< mprobe_statusimprobe (int source, tag_t t=tag_t(0)) const
 Blocking matched test for an incoming message. More...
 
template<typename T >
status_t mrecv (T &data, message_t &m) const
status_t mrecv (T &data, message_t &m) const
 Receives a message with a single value by a message handle. More...
 
template<typename T >
status_t mrecv (T *data, const layout< T > &l, message_t &m) const
status_t mrecv (T *data, const layout< T > &l, message_t &m) const
 Receives a message with a several values having a specific memory layout by a message handle. More...
 
template<typename iterT >
status_t mrecv (iterT begin, iterT end, message_t &m) const
status_t mrecv (iterT begin, iterT end, message_t &m) const
 Receives a message with a several values given by a pair of iterators by a message handle. More...
 
template<typename T >
irequest imrecv (T &data, message_t &m) const
irequest imrecv (T &data, message_t &m) const
 Receives a message with a single value via a non-blocking receive operation by a message handle. More...
 
template<typename T >
irequest imrecv (T *data, const layout< T > &l, message_t &m) const
irequest imrecv (T *data, const layout< T > &l, message_t &m) const
 Receives a message with several values having a specific memory layout via a non-blocking receive operation by a message handle. More...
 
template<typename iterT >
irequest imrecv (iterT begin, iterT end, message_t &m) const
irequest imrecv (iterT begin, iterT end, message_t &m) const
 Receives a message with a several values given by a pair of iterators via a non-blocking receive operation. More...
 
template<typename T >
- - - - -
- - - - - - - -
mpl::cartesian_communicator::cartesian_communicator ()
-
-default
-
- -

Creates an empty communicator with no associated process.

- -
- -

◆ cartesian_communicator() [2/5]

+

◆ cartesian_communicator() [1/4]

@@ -1133,7 +1109,7 @@

-

◆ cartesian_communicator() [3/5]

+

◆ cartesian_communicator() [2/4]

@@ -1188,7 +1164,7 @@

-

◆ cartesian_communicator() [4/5]

+

◆ cartesian_communicator() [3/4]

@@ -1236,7 +1212,7 @@

-

◆ cartesian_communicator() [5/5]

+

◆ cartesian_communicator() [4/4]

@@ -1362,10 +1338,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
parallel_sort_mpl.cc.
+
Examples
parallel_sort_mpl.cc.
-

Definition at line 2784 of file comm_group.hpp.

+

Definition at line 2803 of file comm_group.hpp.

@@ -1435,7 +1411,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2799 of file comm_group.hpp.

+

Definition at line 2818 of file comm_group.hpp.

@@ -1505,7 +1481,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2880 of file comm_group.hpp.

+

Definition at line 2899 of file comm_group.hpp.

@@ -1582,7 +1558,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2859 of file comm_group.hpp.

+

Definition at line 2878 of file comm_group.hpp.

@@ -1645,10 +1621,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc, and communicator.cc.
+
Examples
collective.cc, and communicator.cc.
-

Definition at line 4009 of file comm_group.hpp.

+

Definition at line 4030 of file comm_group.hpp.

@@ -1719,7 +1695,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 4026 of file comm_group.hpp.

+

Definition at line 4047 of file comm_group.hpp.

@@ -1776,7 +1752,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4086 of file comm_group.hpp.

+

Definition at line 4107 of file comm_group.hpp.

@@ -1840,7 +1816,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4103 of file comm_group.hpp.

+

Definition at line 4124 of file comm_group.hpp.

@@ -1910,7 +1886,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3258 of file comm_group.hpp.

+

Definition at line 3277 of file comm_group.hpp.

@@ -1966,7 +1942,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3236 of file comm_group.hpp.

+

Definition at line 3255 of file comm_group.hpp.

@@ -2011,7 +1987,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3328 of file comm_group.hpp.

+

Definition at line 3347 of file comm_group.hpp.

@@ -2067,7 +2043,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3349 of file comm_group.hpp.

+

Definition at line 3368 of file comm_group.hpp.

@@ -2150,10 +2126,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
matrix_gather.cc, and parallel_sort_mpl.cc.
+
Examples
matrix_gather.cc, and parallel_sort_mpl.cc.
-

Definition at line 3427 of file comm_group.hpp.

+

Definition at line 3446 of file comm_group.hpp.

@@ -2223,7 +2199,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 3467 of file comm_group.hpp.

+

Definition at line 3486 of file comm_group.hpp.

@@ -2279,7 +2255,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3660 of file comm_group.hpp.

+

Definition at line 3679 of file comm_group.hpp.

@@ -2342,7 +2318,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3631 of file comm_group.hpp.

+

Definition at line 3650 of file comm_group.hpp.

@@ -2371,10 +2347,10 @@

Note
This is a collective operation and must be called by all processes in the communicator.
-
Examples
collective.cc, and communicator.cc.
+
Examples
collective.cc, and communicator.cc.
-

Definition at line 2394 of file comm_group.hpp.

+

Definition at line 2413 of file comm_group.hpp.

@@ -2429,10 +2405,10 @@

Note
This is a collective operation and must be called by all processes in the communicator.

-
Examples
collective.cc.
+
Examples
collective.cc.
-

Definition at line 2417 of file comm_group.hpp.

+

Definition at line 2436 of file comm_group.hpp.

@@ -2495,7 +2471,7 @@

Note
This is a collective operation and must be called by all processes in the communicator.

-

Definition at line 2431 of file comm_group.hpp.

+

Definition at line 2450 of file comm_group.hpp.

@@ -2558,7 +2534,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 959 of file comm_group.hpp.

+

Definition at line 969 of file comm_group.hpp.

@@ -2627,7 +2603,7 @@

Definition at line 975 of file comm_group.hpp.

+

Definition at line 985 of file comm_group.hpp.

@@ -2697,7 +2673,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 996 of file comm_group.hpp.

+

Definition at line 1006 of file comm_group.hpp.

@@ -2761,7 +2737,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 1141 of file comm_group.hpp.

+

Definition at line 1151 of file comm_group.hpp.

@@ -2831,7 +2807,7 @@

Returns
persistent communication request
-

Definition at line 1160 of file comm_group.hpp.

+

Definition at line 1170 of file comm_group.hpp.

@@ -2902,7 +2878,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1185 of file comm_group.hpp.

+

Definition at line 1195 of file comm_group.hpp.

@@ -2942,7 +2918,7 @@

-

determines the message buffer size

+

Determines the message buffer size.

Template Parameters
@@ -2956,8 +2932,9 @@

Returns
message buffer size
-

Definition at line 914 of file comm_group.hpp.

+

Definition at line 924 of file comm_group.hpp.

@@ -2987,7 +2964,7 @@

-

determines the message buffer size

+

Determines the message buffer size.

Template Parameters

Ttype of the data to send in a later buffered send operation, must meet the requirements as described in the data types section
@@ -2996,14 +2973,15 @@

Parameters

Ttype of the data to send in a later buffered send operation, must meet the requirements as described in the data types section
- +
numberquantity of elements of type T to send in a single buffered message or in a series of buffered send operations
numberquantity of elements of type T to send in a single buffered message or in a series of buffered send operations
-
Examples
blocking.cc, blocking_vector.cc, and nonblocking.cc.
+
Returns
message buffer size
+
Examples
blocking.cc, blocking_vector.cc, and nonblocking.cc.
-

Definition at line 902 of file comm_group.hpp.

+

Definition at line 911 of file comm_group.hpp.

@@ -3032,9 +3010,15 @@

Compares to another communicator.

+
Parameters
+ + +
othercommunicator to compare with
+
+
Returns
equality type
-

Definition at line 591 of file comm_group.hpp.

+

Definition at line 599 of file comm_group.hpp.

@@ -3195,7 +3179,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 4453 of file comm_group.hpp.

+

Definition at line 4474 of file comm_group.hpp.

@@ -3266,7 +3250,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4470 of file comm_group.hpp.

+

Definition at line 4491 of file comm_group.hpp.

@@ -3323,7 +3307,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4529 of file comm_group.hpp.

+

Definition at line 4550 of file comm_group.hpp.

@@ -3387,7 +3371,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4546 of file comm_group.hpp.

+

Definition at line 4567 of file comm_group.hpp.

@@ -3443,7 +3427,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2566 of file comm_group.hpp.

+

Definition at line 2585 of file comm_group.hpp.

@@ -3505,10 +3489,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc, and gather.cc.
+
Examples
collective.cc, and gather.cc.
-

Definition at line 2486 of file comm_group.hpp.

+

Definition at line 2505 of file comm_group.hpp.

@@ -3571,7 +3555,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.

-

Definition at line 2582 of file comm_group.hpp.

+

Definition at line 2601 of file comm_group.hpp.

@@ -3648,7 +3632,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2504 of file comm_group.hpp.

+

Definition at line 2523 of file comm_group.hpp.

@@ -3711,7 +3695,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2740 of file comm_group.hpp.

+

Definition at line 2759 of file comm_group.hpp.

@@ -3788,7 +3772,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2672 of file comm_group.hpp.

+

Definition at line 2691 of file comm_group.hpp.

@@ -3871,10 +3855,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
distributed_grid_scatter_gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, matrix_gather.cc, and vibrating_string_mpl.cc.
+
Examples
distributed_grid_scatter_gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, matrix_gather.cc, and vibrating_string_mpl.cc.
-

Definition at line 2644 of file comm_group.hpp.

+

Definition at line 2663 of file comm_group.hpp.

@@ -3961,7 +3945,7 @@

Returns
request representing the ongoing message transfer

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2817 of file comm_group.hpp.

+

Definition at line 2836 of file comm_group.hpp.

@@ -4032,7 +4016,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2836 of file comm_group.hpp.

+

Definition at line 2855 of file comm_group.hpp.

@@ -4103,7 +4087,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2921 of file comm_group.hpp.

+

Definition at line 2940 of file comm_group.hpp.

@@ -4181,7 +4165,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2899 of file comm_group.hpp.

+

Definition at line 2918 of file comm_group.hpp.

@@ -4246,7 +4230,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4045 of file comm_group.hpp.

+

Definition at line 4066 of file comm_group.hpp.

@@ -4318,7 +4302,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4066 of file comm_group.hpp.

+

Definition at line 4087 of file comm_group.hpp.

@@ -4376,7 +4360,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4122 of file comm_group.hpp.

+

Definition at line 4143 of file comm_group.hpp.

@@ -4441,7 +4425,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4142 of file comm_group.hpp.

+

Definition at line 4163 of file comm_group.hpp.

@@ -4512,7 +4496,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. The memory layouts of the incoming and the outgoing messages are described by sendl and recvl. Both layouts might differ but must be compatible, i.e., must hold the same number of elements of type T. The i-th memory block with the layout sendl in the array senddata is sent to the i-th process. When the message transfer has finished, the i-th memory block with the layout recvl in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3305 of file comm_group.hpp.

+

Definition at line 3324 of file comm_group.hpp.

@@ -4569,7 +4553,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends one element of type T to each process (including itself) and receives one element of type T from each process. The i-th element in the array senddata is sent to the i-th process. When the message transfer has finished, the i-th element in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3279 of file comm_group.hpp.

+

Definition at line 3298 of file comm_group.hpp.

@@ -4615,7 +4599,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends one element of type T to each process (including itself) and receives one element of type T from each process. The i-th element in the array sendrecvdata is sent to the i-th process. When the message transfer has finished, the i-th element in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3370 of file comm_group.hpp.

+

Definition at line 3389 of file comm_group.hpp.

@@ -4672,7 +4656,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. The memory layouts of the incoming and the outgoing messages are described by sendrecvl. The i-th memory block with the layout sendrecvl in the array sendrecvdata is sent to the i-th process. When the message transfer has finished, the i-th memory block with the layout sendrecvl in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3395 of file comm_group.hpp.

+

Definition at line 3414 of file comm_group.hpp.

@@ -4757,7 +4741,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffers senddata and recvdata, respectively. The i-th memory block with the layout sendls[i] in the array senddata starts senddispls[i] bytes after the address given in senddata. The i-th memory block is sent to the i-th process. The i-th memory block with the layout recvls[i] in the array recvdata starts recvdispls[i] bytes after the address given in recvdata. When the function has finished, the i-th memory block in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3564 of file comm_group.hpp.

+

Definition at line 3583 of file comm_group.hpp.

@@ -4828,7 +4812,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffers senddata and recvdata, respectively. The i-th memory block with the layout sendls[i] in the array senddata starts at the address given in senddata. The i-th memory block is sent to the i-th process. The i-th memory block with the layout recvls[i] in the array recvdata starts at the address given in recvdata. Note that the memory layouts need to include appropriate holes at the beginning in order to avoid overlapping send- or receive blocks. When the function has finished, the i-th memory block in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3607 of file comm_group.hpp.

+

Definition at line 3626 of file comm_group.hpp.

@@ -4878,13 +4862,14 @@

Parameters
- +
sendrecvdatapointer to continuous storage for incoming and outgoing messages
sendrecvlsmemory layouts of the data to send and to receive
sendrecvlsmemory layouts of the data to send and to receive
+
Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffer sendrecvdata. The i-th memory block with the layout sendrecvls[i] in the array sendrecvdata starts at the address given in sendrecvdata. The i-th memory block is sent to the i-th process. Note that the memory layouts need to include appropriate holes at the beginning in order to avoid overlapping send-receive blocks. When the function has finished, the i-th memory block in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3720 of file comm_group.hpp.

+

Definition at line 3741 of file comm_group.hpp.

@@ -4941,13 +4926,14 @@

sendrecvdatapointer to continuous storage for outgoing and incoming messages sendrecvlsmemory layouts of the data to send and to receive - sendrecvdisplsdisplacements of the data to send and to receive + sendrecvdisplsdisplacements of the data to send and to receive +
Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffer sendecvdata. The i-th memory block with the layout sendlrecvs[i] in the array sendrecvdata starts sendrecvdispls[i] bytes after the address given in sendrecvdata. The i-th memory block is sent to the i-th process. When the function has finished, the i-th memory block in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3683 of file comm_group.hpp.

+

Definition at line 3703 of file comm_group.hpp.

@@ -4978,7 +4964,7 @@

Returns
communication request
Note
This is a collective operation and must be called by all processes in the communicator.
-

Definition at line 2401 of file comm_group.hpp.

+

Definition at line 2420 of file comm_group.hpp.

@@ -5035,7 +5021,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called by all processes in the communicator.
-

Definition at line 2447 of file comm_group.hpp.

+

Definition at line 2466 of file comm_group.hpp.

@@ -5099,7 +5085,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called by all processes in the communicator.
-

Definition at line 2465 of file comm_group.hpp.

+

Definition at line 2484 of file comm_group.hpp.

@@ -5163,7 +5149,7 @@

Returns
request representing the ongoing message transfer
Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1074 of file comm_group.hpp.

+

Definition at line 1084 of file comm_group.hpp.

@@ -5233,7 +5219,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 1092 of file comm_group.hpp.

+

Definition at line 1102 of file comm_group.hpp.

@@ -5304,7 +5290,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
Returns
request representing the ongoing message transfer
-

Definition at line 1117 of file comm_group.hpp.

+

Definition at line 1127 of file comm_group.hpp.

@@ -5369,7 +5355,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4489 of file comm_group.hpp.

+

Definition at line 4510 of file comm_group.hpp.

@@ -5441,7 +5427,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4510 of file comm_group.hpp.

+

Definition at line 4531 of file comm_group.hpp.

@@ -5499,7 +5485,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4565 of file comm_group.hpp.

+

Definition at line 4586 of file comm_group.hpp.

@@ -5564,7 +5550,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4585 of file comm_group.hpp.

+

Definition at line 4606 of file comm_group.hpp.

@@ -5621,7 +5607,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2600 of file comm_group.hpp.

+

Definition at line 2619 of file comm_group.hpp.

@@ -5685,7 +5671,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2524 of file comm_group.hpp.

+

Definition at line 2543 of file comm_group.hpp.

@@ -5749,7 +5735,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2620 of file comm_group.hpp.

+

Definition at line 2639 of file comm_group.hpp.

@@ -5827,7 +5813,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2546 of file comm_group.hpp.

+

Definition at line 2565 of file comm_group.hpp.

@@ -5891,7 +5877,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2763 of file comm_group.hpp.

+

Definition at line 2782 of file comm_group.hpp.

@@ -5969,7 +5955,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2723 of file comm_group.hpp.

+

Definition at line 2742 of file comm_group.hpp.

@@ -6054,7 +6040,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2693 of file comm_group.hpp.

+

Definition at line 2712 of file comm_group.hpp.

@@ -6092,7 +6078,17 @@

-

Definition at line 2067 of file comm_group.hpp.

+

Blocking matched test for an incoming message.

+
Parameters
+ + + +
sourcerank of the sending process
ttag associated to this message
+
+
+
Returns
message handle and status of the pending message if there is a pending message by the given source and with the given tag
+ +

Definition at line 2086 of file comm_group.hpp.

@@ -6122,7 +6118,7 @@

- message_t &  + message_t &  m  @@ -6156,7 +6152,7 @@

Returns
request representing the ongoing message transfer
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 2201 of file comm_group.hpp.

+

Definition at line 2220 of file comm_group.hpp.

@@ -6180,7 +6176,7 @@

- message_t &  + message_t &  m  @@ -6213,7 +6209,7 @@

Returns
request representing the ongoing receive operation
Note
Receiving STL containers is not supported.
-

Definition at line 2168 of file comm_group.hpp.

+

Definition at line 2187 of file comm_group.hpp.

@@ -6243,7 +6239,7 @@

- message_t &  + message_t &  m  @@ -6276,7 +6272,7 @@

Returns
request representing the ongoing receive operation
-

Definition at line 2181 of file comm_group.hpp.

+

Definition at line 2200 of file comm_group.hpp.

@@ -6885,7 +6881,7 @@

Returns
status of the pending message if there is any pending message
-

Definition at line 2043 of file comm_group.hpp.

+

Definition at line 2053 of file comm_group.hpp.

@@ -6956,7 +6952,7 @@

Returns
request representing the ongoing message transfer
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1946 of file comm_group.hpp.

+

Definition at line 1956 of file comm_group.hpp.

@@ -7022,7 +7018,7 @@

Examples
heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
-

Definition at line 1906 of file comm_group.hpp.

+

Definition at line 1916 of file comm_group.hpp.

@@ -7092,7 +7088,7 @@

Returns
request representing the ongoing receive operation
-

Definition at line 1922 of file comm_group.hpp.

+

Definition at line 1932 of file comm_group.hpp.

@@ -7157,7 +7153,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3936 of file comm_group.hpp.

+

Definition at line 3957 of file comm_group.hpp.

@@ -7229,7 +7225,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3780 of file comm_group.hpp.

+

Definition at line 3801 of file comm_group.hpp.

@@ -7301,7 +7297,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3987 of file comm_group.hpp.

+

Definition at line 4008 of file comm_group.hpp.

@@ -7380,7 +7376,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3803 of file comm_group.hpp.

+

Definition at line 3824 of file comm_group.hpp.

@@ -7445,7 +7441,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3910 of file comm_group.hpp.

+

Definition at line 3931 of file comm_group.hpp.

@@ -7517,7 +7513,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3959 of file comm_group.hpp.

+

Definition at line 3980 of file comm_group.hpp.

@@ -7589,7 +7585,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4279 of file comm_group.hpp.

+

Definition at line 4300 of file comm_group.hpp.

@@ -7654,7 +7650,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4206 of file comm_group.hpp.

+

Definition at line 4227 of file comm_group.hpp.

@@ -7726,7 +7722,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4230 of file comm_group.hpp.

+

Definition at line 4251 of file comm_group.hpp.

@@ -7790,7 +7786,7 @@

Returns
request representing the ongoing message transfer
Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1624 of file comm_group.hpp.

+

Definition at line 1634 of file comm_group.hpp.

@@ -7860,7 +7856,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 1642 of file comm_group.hpp.

+

Definition at line 1652 of file comm_group.hpp.

@@ -7931,7 +7927,7 @@

Returns
request representing the ongoing message transfer
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1667 of file comm_group.hpp.

+

Definition at line 1677 of file comm_group.hpp.

@@ -7961,10 +7957,10 @@

Returns
true if communicator is valid
Note
A default constructed communicator is a non valid communicator.
-
Examples
communicator.cc.
+
Examples
communicator.cc.
-

Definition at line 601 of file comm_group.hpp.

+

Definition at line 609 of file comm_group.hpp.

@@ -8029,7 +8025,7 @@

Returns
request representing the ongoing reduction operation

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4337 of file comm_group.hpp.

+

Definition at line 4358 of file comm_group.hpp.

@@ -8101,7 +8097,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4358 of file comm_group.hpp.

+

Definition at line 4379 of file comm_group.hpp.

@@ -8159,7 +8155,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4412 of file comm_group.hpp.

+

Definition at line 4433 of file comm_group.hpp.

@@ -8224,7 +8220,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4432 of file comm_group.hpp.

+

Definition at line 4453 of file comm_group.hpp.

@@ -8302,7 +8298,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3000 of file comm_group.hpp.

+

Definition at line 3019 of file comm_group.hpp.

@@ -8366,7 +8362,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2978 of file comm_group.hpp.

+

Definition at line 2997 of file comm_group.hpp.

@@ -8417,7 +8413,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3048 of file comm_group.hpp.

+

Definition at line 3067 of file comm_group.hpp.

@@ -8475,7 +8471,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3066 of file comm_group.hpp.

+

Definition at line 3085 of file comm_group.hpp.

@@ -8560,7 +8556,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3140 of file comm_group.hpp.

+

Definition at line 3159 of file comm_group.hpp.

@@ -8638,7 +8634,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3171 of file comm_group.hpp.

+

Definition at line 3190 of file comm_group.hpp.

@@ -8702,7 +8698,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3211 of file comm_group.hpp.

+

Definition at line 3230 of file comm_group.hpp.

@@ -8768,7 +8764,7 @@

Examples
heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
-

Definition at line 771 of file comm_group.hpp.

+

Definition at line 779 of file comm_group.hpp.

@@ -8838,7 +8834,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 789 of file comm_group.hpp.

+

Definition at line 797 of file comm_group.hpp.

@@ -8909,7 +8905,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
Returns
request representing the ongoing message transfer
-

Definition at line 814 of file comm_group.hpp.

+

Definition at line 822 of file comm_group.hpp.

@@ -8973,7 +8969,7 @@

Returns
request representing the ongoing message transfer
Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1347 of file comm_group.hpp.

+

Definition at line 1357 of file comm_group.hpp.

@@ -9043,7 +9039,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 1365 of file comm_group.hpp.

+

Definition at line 1375 of file comm_group.hpp.

@@ -9114,7 +9110,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
Returns
request representing the ongoing message transfer
-

Definition at line 1390 of file comm_group.hpp.

+

Definition at line 1400 of file comm_group.hpp.

@@ -9152,7 +9148,17 @@

-

Definition at line 2057 of file comm_group.hpp.

+

Blocking matched test for an incoming message.

+
Parameters
+ + + +
sourcerank of the sending process
ttag associated to this message
+
+
+
Returns
message handle and status of the pending message
+ +

Definition at line 2071 of file comm_group.hpp.

@@ -9182,7 +9188,7 @@

- message_t &  + message_t &  m  @@ -9216,7 +9222,7 @@

Returns
status of the receive operation
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 2136 of file comm_group.hpp.

+

Definition at line 2155 of file comm_group.hpp.

@@ -9240,7 +9246,7 @@

- message_t &  + message_t &  m  @@ -9273,7 +9279,7 @@

Returns
status of the receive operation
Note
Receiving STL containers is not supported.
-

Definition at line 2102 of file comm_group.hpp.

+

Definition at line 2121 of file comm_group.hpp.

@@ -9303,7 +9309,7 @@

- message_t &  + message_t &  m  @@ -9336,7 +9342,7 @@

Returns
status of the receive operation
-

Definition at line 2115 of file comm_group.hpp.

+

Definition at line 2134 of file comm_group.hpp.

@@ -9918,9 +9924,15 @@

Tests for identity of communicators.

+
Parameters
+ + +
othercommunicator to compare with
+
+
Returns
true if not identical
-

Definition at line 583 of file comm_group.hpp.

+

Definition at line 590 of file comm_group.hpp.

@@ -10023,9 +10035,15 @@

Tests for identity of communicators.

+
Parameters
+ + +
othercommunicator to compare with
+
+
Returns
true if identical
-

Definition at line 575 of file comm_group.hpp.

+

Definition at line 581 of file comm_group.hpp.

@@ -10072,10 +10090,10 @@

Returns
status of the pending message
-
Examples
probe.cc.
+
Examples
probe.cc.
-

Definition at line 2030 of file comm_group.hpp.

+

Definition at line 2040 of file comm_group.hpp.

@@ -10105,7 +10123,7 @@

Returns
the rank of the calling process in the communicator

-

Definition at line 567 of file comm_group.hpp.

+

Definition at line 572 of file comm_group.hpp.

@@ -10213,7 +10231,7 @@

Returns
status of the receive operation
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1845 of file comm_group.hpp.

+

Definition at line 1855 of file comm_group.hpp.

@@ -10277,7 +10295,7 @@

Returns
status of the receive operation
Note
Receiving STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1807 of file comm_group.hpp.

+

Definition at line 1817 of file comm_group.hpp.

@@ -10347,7 +10365,7 @@

Returns
status of the receive operation
-

Definition at line 1822 of file comm_group.hpp.

+

Definition at line 1832 of file comm_group.hpp.

@@ -10418,7 +10436,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 2013 of file comm_group.hpp.

+

Definition at line 2023 of file comm_group.hpp.

@@ -10482,7 +10500,7 @@

Returns
persistent communication request
Note
Receiving STL containers is not supported.
-

Definition at line 1970 of file comm_group.hpp.

+

Definition at line 1980 of file comm_group.hpp.

@@ -10552,7 +10570,7 @@

Returns
persistent communication request
-

Definition at line 1989 of file comm_group.hpp.

+

Definition at line 1999 of file comm_group.hpp.

@@ -10616,7 +10634,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3847 of file comm_group.hpp.

+

Definition at line 3868 of file comm_group.hpp.

@@ -10686,10 +10704,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc, reduce_lcm.cc, and reduce_min_loc.cc.
+
Examples
collective.cc, reduce_lcm.cc, and reduce_min_loc.cc.
-

Definition at line 3738 of file comm_group.hpp.

+

Definition at line 3759 of file comm_group.hpp.

@@ -10760,7 +10778,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 3889 of file comm_group.hpp.

+

Definition at line 3910 of file comm_group.hpp.

@@ -10838,7 +10856,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3759 of file comm_group.hpp.

+

Definition at line 3780 of file comm_group.hpp.

@@ -10902,7 +10920,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3825 of file comm_group.hpp.

+

Definition at line 3846 of file comm_group.hpp.

@@ -10973,7 +10991,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3866 of file comm_group.hpp.

+

Definition at line 3887 of file comm_group.hpp.

@@ -11044,7 +11062,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4255 of file comm_group.hpp.

+

Definition at line 4276 of file comm_group.hpp.

@@ -11108,7 +11126,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4164 of file comm_group.hpp.

+

Definition at line 4185 of file comm_group.hpp.

@@ -11179,7 +11197,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4184 of file comm_group.hpp.

+

Definition at line 4205 of file comm_group.hpp.

@@ -11242,7 +11260,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1509 of file comm_group.hpp.

+

Definition at line 1519 of file comm_group.hpp.

@@ -11311,7 +11329,7 @@

Definition at line 1525 of file comm_group.hpp.

+

Definition at line 1535 of file comm_group.hpp.

@@ -11381,7 +11399,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1546 of file comm_group.hpp.

+

Definition at line 1556 of file comm_group.hpp.

@@ -11445,7 +11463,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 1691 of file comm_group.hpp.

+

Definition at line 1701 of file comm_group.hpp.

@@ -11515,7 +11533,7 @@

Returns
persistent communication request
-

Definition at line 1710 of file comm_group.hpp.

+

Definition at line 1720 of file comm_group.hpp.

@@ -11586,7 +11604,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1735 of file comm_group.hpp.

+

Definition at line 1745 of file comm_group.hpp.

@@ -11650,7 +11668,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4301 of file comm_group.hpp.

+

Definition at line 4322 of file comm_group.hpp.

@@ -11721,7 +11739,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4318 of file comm_group.hpp.

+

Definition at line 4339 of file comm_group.hpp.

@@ -11778,7 +11796,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4377 of file comm_group.hpp.

+

Definition at line 4398 of file comm_group.hpp.

@@ -11842,7 +11860,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4394 of file comm_group.hpp.

+

Definition at line 4415 of file comm_group.hpp.

@@ -11919,7 +11937,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2957 of file comm_group.hpp.

+

Definition at line 2976 of file comm_group.hpp.

@@ -11981,10 +11999,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc.
+
Examples
collective.cc.
-

Definition at line 2939 of file comm_group.hpp.

+

Definition at line 2958 of file comm_group.hpp.

@@ -12034,7 +12052,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.

-

Definition at line 3018 of file comm_group.hpp.

+

Definition at line 3037 of file comm_group.hpp.

@@ -12091,7 +12109,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3032 of file comm_group.hpp.

+

Definition at line 3051 of file comm_group.hpp.

@@ -12177,7 +12195,7 @@

Examples
distributed_grid_scatter_gather.cc, heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
-

Definition at line 3091 of file comm_group.hpp.

+

Definition at line 3110 of file comm_group.hpp.

@@ -12254,7 +12272,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3119 of file comm_group.hpp.

+

Definition at line 3138 of file comm_group.hpp.

@@ -12317,7 +12335,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3188 of file comm_group.hpp.

+

Definition at line 3207 of file comm_group.hpp.

@@ -12380,7 +12398,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 657 of file comm_group.hpp.

+

Definition at line 665 of file comm_group.hpp.

@@ -12449,7 +12467,7 @@

Definition at line 673 of file comm_group.hpp.

+

Definition at line 681 of file comm_group.hpp.

@@ -12519,7 +12537,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 694 of file comm_group.hpp.

+

Definition at line 702 of file comm_group.hpp.

@@ -12583,7 +12601,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 838 of file comm_group.hpp.

+

Definition at line 846 of file comm_group.hpp.

@@ -12653,7 +12671,7 @@

Returns
persistent communication request
-

Definition at line 857 of file comm_group.hpp.

+

Definition at line 865 of file comm_group.hpp.

@@ -12724,7 +12742,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 882 of file comm_group.hpp.

+

Definition at line 890 of file comm_group.hpp.

@@ -12810,7 +12828,7 @@

Examples
distributed_grid.cc.
-

Definition at line 2227 of file comm_group.hpp.

+

Definition at line 2246 of file comm_group.hpp.

@@ -12908,7 +12926,7 @@

Returns
status of the receive operation
-

Definition at line 2254 of file comm_group.hpp.

+

Definition at line 2273 of file comm_group.hpp.

@@ -13007,7 +13025,7 @@

Returns
status of the receive operation
-

Definition at line 2289 of file comm_group.hpp.

+

Definition at line 2308 of file comm_group.hpp.

@@ -13091,7 +13109,7 @@

Returns
status of the receive operation
-

Definition at line 2376 of file comm_group.hpp.

+

Definition at line 2395 of file comm_group.hpp.

@@ -13168,7 +13186,7 @@

Returns
status of the receive operation
-

Definition at line 2324 of file comm_group.hpp.

+

Definition at line 2343 of file comm_group.hpp.

@@ -13252,7 +13270,7 @@

Returns
status of the receive operation
-

Definition at line 2348 of file comm_group.hpp.

+

Definition at line 2367 of file comm_group.hpp.

@@ -13331,10 +13349,10 @@

Returns
number of processes
-
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
+
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
-

Definition at line 559 of file comm_group.hpp.

+

Definition at line 564 of file comm_group.hpp.

@@ -13397,7 +13415,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.

-

Definition at line 1236 of file comm_group.hpp.

+

Definition at line 1246 of file comm_group.hpp.

@@ -13466,7 +13484,7 @@

Definition at line 1251 of file comm_group.hpp.

+

Definition at line 1261 of file comm_group.hpp.

@@ -13536,7 +13554,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1272 of file comm_group.hpp.

+

Definition at line 1282 of file comm_group.hpp.

@@ -13600,7 +13618,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 1414 of file comm_group.hpp.

+

Definition at line 1424 of file comm_group.hpp.

@@ -13670,7 +13688,7 @@

Returns
persistent communication request
-

Definition at line 1433 of file comm_group.hpp.

+

Definition at line 1443 of file comm_group.hpp.

@@ -13741,7 +13759,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1458 of file comm_group.hpp.

+

Definition at line 1468 of file comm_group.hpp.

@@ -13768,7 +13786,7 @@

Definition at line 313 of file comm_group.hpp.

+

Definition at line 316 of file comm_group.hpp.

@@ -13793,7 +13811,7 @@

indicates that communicators are identical, i.e., communicators have same the members in same rank order but different context

-

Definition at line 300 of file comm_group.hpp.

+

Definition at line 303 of file comm_group.hpp.

@@ -13845,7 +13863,7 @@

Definition at line 320 of file comm_group.hpp.

+

Definition at line 323 of file comm_group.hpp.

@@ -13870,7 +13888,7 @@

indicates that communicators are identical, i.e., communicators represent the same communication context

-

Definition at line 297 of file comm_group.hpp.

+

Definition at line 300 of file comm_group.hpp.

@@ -13921,7 +13939,7 @@

indicates that a dimension in a Cartesian process topology is non-periodic

-
Examples
distributed_grid.cc, distributed_grid_scatter_gather.cc, heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
+
Examples
distributed_grid.cc, distributed_grid_scatter_gather.cc, heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.

Definition at line 35 of file cartesian_communicator.hpp.

@@ -13949,7 +13967,7 @@

indicates that a dimension in a Cartesian process topology is periodic

-
Examples
distributed_grid.cc, and distributed_grid_scatter_gather.cc.
+
Examples
distributed_grid.cc, and distributed_grid_scatter_gather.cc.

Definition at line 37 of file cartesian_communicator.hpp.

@@ -13977,7 +13995,7 @@

indicates that communicators are similar, i.e., communicators have same tha members in different rank order

-

Definition at line 303 of file comm_group.hpp.

+

Definition at line 306 of file comm_group.hpp.

@@ -14002,10 +14020,10 @@

Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgroups.

-
Examples
communicator.cc.
+
Examples
communicator.cc.
-

Definition at line 327 of file comm_group.hpp.

+

Definition at line 330 of file comm_group.hpp.

@@ -14031,7 +14049,7 @@

Definition at line 334 of file comm_group.hpp.

+

Definition at line 337 of file comm_group.hpp.

@@ -14056,7 +14074,7 @@

indicates that communicators are unequal, i.e., communicators have different sets of members

-

Definition at line 306 of file comm_group.hpp.

+

Definition at line 309 of file comm_group.hpp.

@@ -14068,7 +14086,7 @@

diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions-members.html b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions-members.html index 7c37b4cb..4697e94c 100644 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions-members.html +++ b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions-members.html @@ -90,26 +90,26 @@

This is the complete list of members for mpl::cartesian_communicator::dimensions, including all inherited members.

- - - - - - + + + + + + - - + + - + - +
add(int size, periodicity_tag periodicity)mpl::cartesian_communicator::dimensionsinline
begin()mpl::cartesian_communicator::dimensionsinline
begin() constmpl::cartesian_communicator::dimensionsinline
cartesian_communicatormpl::cartesian_communicator::dimensionsfriend
cbegin() constmpl::cartesian_communicator::dimensionsinline
cend() constmpl::cartesian_communicator::dimensionsinline
const_reference typedefmpl::cartesian_communicator::dimensions
begin() (defined in mpl::cartesian_communicator::dimensions)mpl::cartesian_communicator::dimensionsinline
begin() const (defined in mpl::cartesian_communicator::dimensions)mpl::cartesian_communicator::dimensionsinline
cartesian_communicator (defined in mpl::cartesian_communicator::dimensions)mpl::cartesian_communicator::dimensionsfriend
cbegin() const (defined in mpl::cartesian_communicator::dimensions)mpl::cartesian_communicator::dimensionsinline
cend() const (defined in mpl::cartesian_communicator::dimensions)mpl::cartesian_communicator::dimensionsinline
const_reference typedef (defined in mpl::cartesian_communicator::dimensions)mpl::cartesian_communicator::dimensions
dimensionality() constmpl::cartesian_communicator::dimensionsinline
dimensions()=defaultmpl::cartesian_communicator::dimensions
dimensions(int size)mpl::cartesian_communicator::dimensionsinlineexplicit
dimensions(std::initializer_list< periodicity_tag > list)mpl::cartesian_communicator::dimensionsinline
dimensions(std::initializer_list< std::tuple< int, periodicity_tag > > list)mpl::cartesian_communicator::dimensionsinline
dims_creatempl::cartesian_communicator::dimensionsfriend
end()mpl::cartesian_communicator::dimensionsinline
end() constmpl::cartesian_communicator::dimensionsinline
end() (defined in mpl::cartesian_communicator::dimensions)mpl::cartesian_communicator::dimensionsinline
end() const (defined in mpl::cartesian_communicator::dimensions)mpl::cartesian_communicator::dimensionsinline
operator[](int dimension) constmpl::cartesian_communicator::dimensionsinline
operator[](int dimension)mpl::cartesian_communicator::dimensionsinline
periodicity(int dimension) constmpl::cartesian_communicator::dimensionsinline
reference typedefmpl::cartesian_communicator::dimensions
reference typedef (defined in mpl::cartesian_communicator::dimensions)mpl::cartesian_communicator::dimensions
size(int dimension) constmpl::cartesian_communicator::dimensionsinline
value_type typedefmpl::cartesian_communicator::dimensions
value_type typedef (defined in mpl::cartesian_communicator::dimensions)mpl::cartesian_communicator::dimensions
diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions.html b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions.html index b8cab2cf..23aedaa3 100644 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions.html +++ b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions.html @@ -128,8 +128,9 @@ - - + + @@ -152,10 +153,10 @@ - + - + @@ -181,7 +182,7 @@

Public Member Functions

 dimensions ()=default
 Constructs a new empty dimensions object. More...
dimensions ()=default
 Constructs a new empty dimensions object.
 
 dimensions (int size)
 Constructs a new dimensions object. More...
periodicity_tag periodicity (int dimension) const
 Determines the periodicity of a dimension. More...
 
const_reference operator[] (int dimension) const
const_reference operator[] (int dimension) const
 Determines number of processes along a dimension and the periodicity of a dimension. More...
 
reference operator[] (int dimension)
reference operator[] (int dimension)
 Determines number of processes along a dimension and the periodicity of a dimension. More...
 
iterator begin ()

Detailed Description

@@ -235,35 +236,8 @@

Constructor & Destructor Documentation

- -

◆ dimensions() [1/4]

- -
-
- - - - - -
- - - - - - - -
mpl::cartesian_communicator::dimensions::dimensions ()
-
-default
-
- -

Constructs a new empty dimensions object.

- -
-
-

◆ dimensions() [2/4]

+

◆ dimensions() [1/3]

@@ -300,7 +274,7 @@

-

◆ dimensions() [3/4]

+

◆ dimensions() [2/3]

@@ -331,7 +305,7 @@

-

◆ dimensions() [4/4]

+

◆ dimensions() [3/3]

@@ -611,7 +585,7 @@

- + @@ -648,7 +622,7 @@

reference mpl::cartesian_communicator::dimensions::operator[] reference mpl::cartesian_communicator::dimensions::operator[] ( int  dimension)
- + @@ -831,7 +805,7 @@

diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions.js b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions.js index e0ba22cf..5704fd0f 100644 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions.js +++ b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions.js @@ -1,27 +1,17 @@ var classmpl_1_1cartesian__communicator_1_1dimensions = [ - [ "const_iterator", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator" ], - [ "dimension_periodicity_proxy", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy" ], - [ "iterator", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator" ], - [ "const_reference", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a52bc3894703534c57d950bf23228ff6f", null ], - [ "reference", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a2f0de8706bb7698b56f2e46b859ecd25", null ], - [ "value_type", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a0e2e337b0ef4cbfe65e84719f6f18b56", null ], + [ "const_iterator", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html", null ], + [ "dimension_periodicity_proxy", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html", null ], + [ "iterator", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html", null ], [ "dimensions", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a66a3ce1f62e1e85e9d94bbf73d59be8c", null ], [ "dimensions", "classmpl_1_1cartesian__communicator_1_1dimensions.html#ab2ef164390601631c8551b0112a7637f", null ], [ "dimensions", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a797a227c86268a426e3c78d2cc0bde0e", null ], [ "dimensions", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a1c0bd8407ba113ff99fb79a562c63111", null ], [ "add", "classmpl_1_1cartesian__communicator_1_1dimensions.html#aa77b8602f4cfcf88b8ac53ecf548e2ed", null ], - [ "begin", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a8347304cab220bd077fc5e3dc62052f8", null ], - [ "begin", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a667d98ea7708b6934ec8e85431a84087", null ], - [ "cbegin", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a83beb2f3d7934fa15cc2fe9d73601d5d", null ], - [ "cend", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a0061b4a1b2f65b3a987204a51626ca4e", null ], [ "dimensionality", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a85e2294bef52fe881817325a471cbbdd", null ], - [ "end", "classmpl_1_1cartesian__communicator_1_1dimensions.html#abe4772eeabdce64a87a2e8be98ddb196", null ], - [ "end", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a6cb868c4a70a860b986d6bda59067c6f", null ], [ "operator[]", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a80fafe9770e980d59b9628564d4c74cd", null ], [ "operator[]", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a786ec6e005db9b3beeadcc3ad8527d70", null ], [ "periodicity", "classmpl_1_1cartesian__communicator_1_1dimensions.html#ae4711dea9668fee29fd5e6fc2cc72a6f", null ], [ "size", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a1b76409115713a0bda67f72748f773da", null ], - [ "cartesian_communicator", "classmpl_1_1cartesian__communicator_1_1dimensions.html#a6087bfa57412c9e8b80b6f380ebaaf7a", null ], [ "dims_create", "classmpl_1_1cartesian__communicator_1_1dimensions.html#afac55447acc7a9624d5f2cc75c78af85", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator-members.html b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator-members.html index a4af5a30..b8a0f968 100644 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator-members.html +++ b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator-members.html @@ -89,17 +89,17 @@

This is the complete list of members for mpl::cartesian_communicator::dimensions::const_iterator, including all inherited members.

const_reference mpl::cartesian_communicator::dimensions::operator[] const_reference mpl::cartesian_communicator::dimensions::operator[] ( int  dimension)
- - - - - - - - - - - + + + + + + + + + + +
const_iterator(const dimensions *dims, int index=0)mpl::cartesian_communicator::dimensions::const_iteratorinlineexplicit
difference_type typedefmpl::cartesian_communicator::dimensions::const_iterator
iterator_category typedefmpl::cartesian_communicator::dimensions::const_iterator
operator!=mpl::cartesian_communicator::dimensions::const_iteratorfriend
operator*() constmpl::cartesian_communicator::dimensions::const_iteratorinline
operator++()mpl::cartesian_communicator::dimensions::const_iteratorinline
operator++(int)mpl::cartesian_communicator::dimensions::const_iteratorinline
operator==mpl::cartesian_communicator::dimensions::const_iteratorfriend
pointer typedefmpl::cartesian_communicator::dimensions::const_iterator
reference typedefmpl::cartesian_communicator::dimensions::const_iterator
value_type typedefmpl::cartesian_communicator::dimensions::const_iterator
const_iterator(const dimensions *dims, int index=0) (defined in mpl::cartesian_communicator::dimensions::const_iterator)mpl::cartesian_communicator::dimensions::const_iteratorinlineexplicit
difference_type typedef (defined in mpl::cartesian_communicator::dimensions::const_iterator)mpl::cartesian_communicator::dimensions::const_iterator
iterator_category typedef (defined in mpl::cartesian_communicator::dimensions::const_iterator)mpl::cartesian_communicator::dimensions::const_iterator
operator!= (defined in mpl::cartesian_communicator::dimensions::const_iterator)mpl::cartesian_communicator::dimensions::const_iteratorfriend
operator*() const (defined in mpl::cartesian_communicator::dimensions::const_iterator)mpl::cartesian_communicator::dimensions::const_iteratorinline
operator++() (defined in mpl::cartesian_communicator::dimensions::const_iterator)mpl::cartesian_communicator::dimensions::const_iteratorinline
operator++(int) (defined in mpl::cartesian_communicator::dimensions::const_iterator)mpl::cartesian_communicator::dimensions::const_iteratorinline
operator== (defined in mpl::cartesian_communicator::dimensions::const_iterator)mpl::cartesian_communicator::dimensions::const_iteratorfriend
pointer typedef (defined in mpl::cartesian_communicator::dimensions::const_iterator)mpl::cartesian_communicator::dimensions::const_iterator
reference typedef (defined in mpl::cartesian_communicator::dimensions::const_iterator)mpl::cartesian_communicator::dimensions::const_iterator
value_type typedef (defined in mpl::cartesian_communicator::dimensions::const_iterator)mpl::cartesian_communicator::dimensions::const_iterator

diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html index bd120804..55db98d1 100644 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html +++ b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html @@ -111,18 +111,18 @@   using iterator_category = std::input_iterator_tag   -using value_type = dimensions::value_type +using value_type = dimensions::value_type   -using pointer = const value_type * +using pointer = const value_type *   -using reference = dimensions::const_reference +using reference = dimensions::const_reference   - + @@ -148,7 +148,7 @@

Public Member Functions

 const_iterator (const dimensions *dims, int index=0)
 
reference operator* () const
reference operator* () const
 
const_iteratoroperator++ ()
 
- +
using mpl::cartesian_communicator::dimensions::const_iterator::difference_type = std::ptrdiff_tusing mpl::cartesian_communicator::dimensions::const_iterator::difference_type = std::ptrdiff_t

@@ -271,7 +271,7 @@

- + @@ -428,7 +428,7 @@

diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.js b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.js deleted file mode 100644 index 591013d1..00000000 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.js +++ /dev/null @@ -1,14 +0,0 @@ -var classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator = -[ - [ "difference_type", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a9124b5277e84386543372a744c1f3263", null ], - [ "iterator_category", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#acda97b96d05cf49d244e973870831ffc", null ], - [ "pointer", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a32dd93ebdc5b3f3c1379c8555dc266a1", null ], - [ "reference", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a3df2e96495b39551a49133cf423e31f5", null ], - [ "value_type", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a240a9c896e65954b25b9444db1e7f745", null ], - [ "const_iterator", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#afb583e0b115e329d7303d1d9b99884fa", null ], - [ "operator*", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a96670119c07635bab19f68b1c865c0a7", null ], - [ "operator++", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a0749daf0892e8c7c0d5b5da5bc8d0749", null ], - [ "operator++", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a9cc5ab905da7e4568ca31d9d7034992a", null ], - [ "operator!=", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a5fbca5b71055f2b793ae1607239b13a0", null ], - [ "operator==", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#ab0ac7de651351823aece097eb3be1cfb", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy-members.html b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy-members.html index bd7d427a..0611afb8 100644 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy-members.html +++ b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy-members.html @@ -89,11 +89,11 @@

This is the complete list of members for mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy, including all inherited members.

reference mpl::cartesian_communicator::dimensions::const_iterator::operator* reference mpl::cartesian_communicator::dimensions::const_iterator::operator* ( ) const
- - - - - + + + + +
dimensionsmpl::cartesian_communicator::dimensions::dimension_periodicity_proxy
get() constmpl::cartesian_communicator::dimensions::dimension_periodicity_proxyinline
operator!=(const std::tuple< int, periodicity_tag > &t) constmpl::cartesian_communicator::dimensions::dimension_periodicity_proxyinline
operator=(const std::tuple< int, periodicity_tag > &t)mpl::cartesian_communicator::dimensions::dimension_periodicity_proxyinline
operator==(const std::tuple< int, periodicity_tag > &t) constmpl::cartesian_communicator::dimensions::dimension_periodicity_proxyinline
dimensions (defined in mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy)mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy
get() const (defined in mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy)mpl::cartesian_communicator::dimensions::dimension_periodicity_proxyinline
operator!=(const std::tuple< int, periodicity_tag > &t) const (defined in mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy)mpl::cartesian_communicator::dimensions::dimension_periodicity_proxyinline
operator=(const std::tuple< int, periodicity_tag > &t) (defined in mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy)mpl::cartesian_communicator::dimensions::dimension_periodicity_proxyinline
operator==(const std::tuple< int, periodicity_tag > &t) const (defined in mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy)mpl::cartesian_communicator::dimensions::dimension_periodicity_proxyinline

diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html index 32a442aa..05cc93bb 100644 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html +++ b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html @@ -90,8 +90,6 @@
mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy Class Reference

- -

#include <cartesian_communicator.hpp>

Collaboration diagram for mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy:
diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.js b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.js deleted file mode 100644 index 02c63e5f..00000000 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.js +++ /dev/null @@ -1,8 +0,0 @@ -var classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy = -[ - [ "get", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a0555d632d9963ded11815f6c21e8c009", null ], - [ "operator!=", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a1303b66cdd13a09584a89b44bff40d7a", null ], - [ "operator=", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a3353907d5c2825712c2a80362a891f52", null ], - [ "operator==", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a4fcb9247987978603e60fafd6b1b0efc", null ], - [ "dimensions", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a86e6c75a53843e5dcda1c2e48763e463", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator-members.html b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator-members.html index 0801e9b9..a80c7eda 100644 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator-members.html +++ b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator-members.html @@ -89,17 +89,17 @@

This is the complete list of members for mpl::cartesian_communicator::dimensions::iterator, including all inherited members.

- - - - - - - - - - - + + + + + + + + + + +
difference_type typedefmpl::cartesian_communicator::dimensions::iterator
iterator(dimensions *dims, int index=0)mpl::cartesian_communicator::dimensions::iteratorinlineexplicit
iterator_category typedefmpl::cartesian_communicator::dimensions::iterator
operator!=mpl::cartesian_communicator::dimensions::iteratorfriend
operator*() constmpl::cartesian_communicator::dimensions::iteratorinline
operator++()mpl::cartesian_communicator::dimensions::iteratorinline
operator++(int)mpl::cartesian_communicator::dimensions::iteratorinline
operator==mpl::cartesian_communicator::dimensions::iteratorfriend
pointer typedefmpl::cartesian_communicator::dimensions::iterator
reference typedefmpl::cartesian_communicator::dimensions::iterator
value_type typedefmpl::cartesian_communicator::dimensions::iterator
difference_type typedef (defined in mpl::cartesian_communicator::dimensions::iterator)mpl::cartesian_communicator::dimensions::iterator
iterator(dimensions *dims, int index=0) (defined in mpl::cartesian_communicator::dimensions::iterator)mpl::cartesian_communicator::dimensions::iteratorinlineexplicit
iterator_category typedef (defined in mpl::cartesian_communicator::dimensions::iterator)mpl::cartesian_communicator::dimensions::iterator
operator!= (defined in mpl::cartesian_communicator::dimensions::iterator)mpl::cartesian_communicator::dimensions::iteratorfriend
operator*() const (defined in mpl::cartesian_communicator::dimensions::iterator)mpl::cartesian_communicator::dimensions::iteratorinline
operator++() (defined in mpl::cartesian_communicator::dimensions::iterator)mpl::cartesian_communicator::dimensions::iteratorinline
operator++(int) (defined in mpl::cartesian_communicator::dimensions::iterator)mpl::cartesian_communicator::dimensions::iteratorinline
operator== (defined in mpl::cartesian_communicator::dimensions::iterator)mpl::cartesian_communicator::dimensions::iteratorfriend
pointer typedef (defined in mpl::cartesian_communicator::dimensions::iterator)mpl::cartesian_communicator::dimensions::iterator
reference typedef (defined in mpl::cartesian_communicator::dimensions::iterator)mpl::cartesian_communicator::dimensions::iterator
value_type typedef (defined in mpl::cartesian_communicator::dimensions::iterator)mpl::cartesian_communicator::dimensions::iterator
diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html index aaec4b04..c0496779 100644 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html +++ b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html @@ -111,18 +111,18 @@   using iterator_category = std::input_iterator_tag   -using value_type = dimensions::value_type +using value_type = dimensions::value_type   -using pointer = value_type * +using pointer = value_type *   -using reference = dimensions::reference +using reference = dimensions::reference   - + @@ -148,7 +148,7 @@

Public Member Functions

 iterator (dimensions *dims, int index=0)
 
reference operator* () const
reference operator* () const
 
iteratoroperator++ ()
 
- +
using mpl::cartesian_communicator::dimensions::iterator::difference_type = std::ptrdiff_tusing mpl::cartesian_communicator::dimensions::iterator::difference_type = std::ptrdiff_t
@@ -271,7 +271,7 @@

- + @@ -428,7 +428,7 @@

diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.js b/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.js deleted file mode 100644 index 7a815da5..00000000 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.js +++ /dev/null @@ -1,14 +0,0 @@ -var classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator = -[ - [ "difference_type", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a9e59695e3620081c6b31448102398296", null ], - [ "iterator_category", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#acaa75ca51d75d81868f0ea74d9a3fa05", null ], - [ "pointer", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a3cf701146a093e49ac1906d9969f7a79", null ], - [ "reference", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#acc37d5d5bfa96b9560bb466407f8bf5c", null ], - [ "value_type", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#ad4a9eef4a8a7cb42a4a4d303c9c1a613", null ], - [ "iterator", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a7823145e46bc588bc50f4e06f38ab349", null ], - [ "operator*", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#aef35daadcb5e7c9292367318d1e4ad2a", null ], - [ "operator++", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#ac2db8b996b26b13b844e0f715f1eee3f", null ], - [ "operator++", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#acb32b214c2b2a45fd4d770f2f32d414a", null ], - [ "operator!=", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a55a8ee0e80dad1a7da9d751c25bc0386", null ], - [ "operator==", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a81d10d7799462c7ca5e7cf19119ca356", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1included__tags-members.html b/docs/html/classmpl_1_1cartesian__communicator_1_1included__tags-members.html index fe2e24bd..aa2c97cb 100644 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1included__tags-members.html +++ b/docs/html/classmpl_1_1cartesian__communicator_1_1included__tags-members.html @@ -90,18 +90,18 @@

This is the complete list of members for mpl::cartesian_communicator::included_tags, including all inherited members.

reference mpl::cartesian_communicator::dimensions::iterator::operator* reference mpl::cartesian_communicator::dimensions::iterator::operator* ( ) const
- - - + + + - + - + - +
add(included_tag is_included)mpl::cartesian_communicator::included_tagsinline
cartesian_communicatormpl::cartesian_communicator::included_tagsfriend
const_iterator typedefmpl::cartesian_communicator::included_tags
const_reference typedefmpl::cartesian_communicator::included_tags
cartesian_communicator (defined in mpl::cartesian_communicator::included_tags)mpl::cartesian_communicator::included_tagsfriend
const_iterator typedef (defined in mpl::cartesian_communicator::included_tags)mpl::cartesian_communicator::included_tags
const_reference typedef (defined in mpl::cartesian_communicator::included_tags)mpl::cartesian_communicator::included_tags
included_tags()=defaultmpl::cartesian_communicator::included_tags
included_tags(int dimension)mpl::cartesian_communicator::included_tagsinlineexplicit
included_tags(std::initializer_list< included_tag > init)mpl::cartesian_communicator::included_tagsinline
iterator typedefmpl::cartesian_communicator::included_tags
iterator typedef (defined in mpl::cartesian_communicator::included_tags)mpl::cartesian_communicator::included_tags
operator[](int index)mpl::cartesian_communicator::included_tagsinline
operator[](int index) constmpl::cartesian_communicator::included_tagsinline
reference typedefmpl::cartesian_communicator::included_tags
reference typedef (defined in mpl::cartesian_communicator::included_tags)mpl::cartesian_communicator::included_tags
size() constmpl::cartesian_communicator::included_tagsinline
value_type typedefmpl::cartesian_communicator::included_tags
value_type typedef (defined in mpl::cartesian_communicator::included_tags)mpl::cartesian_communicator::included_tags

diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1included__tags.html b/docs/html/classmpl_1_1cartesian__communicator_1_1included__tags.html index 5ed7c233..d32692ba 100644 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1included__tags.html +++ b/docs/html/classmpl_1_1cartesian__communicator_1_1included__tags.html @@ -130,8 +130,9 @@ - - + + @@ -142,10 +143,10 @@ - + - + @@ -169,7 +170,7 @@

Public Member Functions

 included_tags ()=default
 Creates an empty inclusion tags list. More...
included_tags ()=default
 Creates an empty inclusion tags list.
 
 included_tags (int dimension)
 Creates a non-empty inclusion tags list with default values excluded. More...
int size () const
 Determines the number of inclusion tags. More...
 
reference operator[] (int index)
reference operator[] (int index)
 Access list element. More...
 
const_reference operator[] (int index) const
const_reference operator[] (int index) const
 Access list element. More...
 
void add (included_tag is_included)
- +
using mpl::cartesian_communicator::included_tags::const_iterator = typename base::const_iteratorusing mpl::cartesian_communicator::included_tags::const_iterator = typename base::const_iterator
@@ -243,35 +244,8 @@

Constructor & Destructor Documentation

- -

◆ included_tags() [1/3]

- -
-
- - - - - -
- - - - - - - -
mpl::cartesian_communicator::included_tags::included_tags ()
-
-default
-
- -

Creates an empty inclusion tags list.

- -
-
-

◆ included_tags() [2/3]

+

◆ included_tags() [1/2]

@@ -307,7 +281,7 @@

-

◆ included_tags() [3/3]

+

◆ included_tags() [2/2]

@@ -389,7 +363,7 @@

- + @@ -425,7 +399,7 @@

reference mpl::cartesian_communicator::included_tags::operator[] reference mpl::cartesian_communicator::included_tags::operator[] ( int  index)
- + @@ -514,7 +488,7 @@

diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1included__tags.js b/docs/html/classmpl_1_1cartesian__communicator_1_1included__tags.js index ef84d622..6424d299 100644 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1included__tags.js +++ b/docs/html/classmpl_1_1cartesian__communicator_1_1included__tags.js @@ -1,16 +1,10 @@ var classmpl_1_1cartesian__communicator_1_1included__tags = [ - [ "const_iterator", "classmpl_1_1cartesian__communicator_1_1included__tags.html#a1aa72f4e0fcca8b7a149adeb640ead4e", null ], - [ "const_reference", "classmpl_1_1cartesian__communicator_1_1included__tags.html#ab46ef7e9748d1f33a0f8ff71d104e7e1", null ], - [ "iterator", "classmpl_1_1cartesian__communicator_1_1included__tags.html#a6d15151da59d0483bb7da33aba71dc60", null ], - [ "reference", "classmpl_1_1cartesian__communicator_1_1included__tags.html#a841f9c67444cbd1589f1ea3066edfe38", null ], - [ "value_type", "classmpl_1_1cartesian__communicator_1_1included__tags.html#a4d4e69a2220d0670cabbbf3dd566000a", null ], [ "included_tags", "classmpl_1_1cartesian__communicator_1_1included__tags.html#ae18657b9e6cee8ffa9549f3b4bc3e104", null ], [ "included_tags", "classmpl_1_1cartesian__communicator_1_1included__tags.html#a7c5d657f45d984865283fdb5dfd4edbc", null ], [ "included_tags", "classmpl_1_1cartesian__communicator_1_1included__tags.html#a949beacb76cdab143f823228f22cbf47", null ], [ "add", "classmpl_1_1cartesian__communicator_1_1included__tags.html#ac2cfb27c6cb4ef1d70aa4e7139fa60ad", null ], [ "operator[]", "classmpl_1_1cartesian__communicator_1_1included__tags.html#a373c7869e0aa251e05fb578a2aea95e9", null ], [ "operator[]", "classmpl_1_1cartesian__communicator_1_1included__tags.html#a82a715985b94853367abcfb164082ac4", null ], - [ "size", "classmpl_1_1cartesian__communicator_1_1included__tags.html#a39edb9ac5555118a37675167b577b11d", null ], - [ "cartesian_communicator", "classmpl_1_1cartesian__communicator_1_1included__tags.html#a6087bfa57412c9e8b80b6f380ebaaf7a", null ] + [ "size", "classmpl_1_1cartesian__communicator_1_1included__tags.html#a39edb9ac5555118a37675167b577b11d", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1vector-members.html b/docs/html/classmpl_1_1cartesian__communicator_1_1vector-members.html index a690a71f..0dc48fc7 100644 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1vector-members.html +++ b/docs/html/classmpl_1_1cartesian__communicator_1_1vector-members.html @@ -90,15 +90,15 @@

This is the complete list of members for mpl::cartesian_communicator::vector, including all inherited members.

const_reference mpl::cartesian_communicator::included_tags::operator[] const_reference mpl::cartesian_communicator::included_tags::operator[] ( int  index)
- - - + + + - + - - + + diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1vector.html b/docs/html/classmpl_1_1cartesian__communicator_1_1vector.html index 6ecd8771..73d09979 100644 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1vector.html +++ b/docs/html/classmpl_1_1cartesian__communicator_1_1vector.html @@ -130,8 +130,9 @@
add(int coordinate)mpl::cartesian_communicator::vectorinline
cartesian_communicatormpl::cartesian_communicator::vectorfriend
const_iterator typedefmpl::cartesian_communicator::vector
const_reference typedefmpl::cartesian_communicator::vector
cartesian_communicator (defined in mpl::cartesian_communicator::vector)mpl::cartesian_communicator::vectorfriend
const_iterator typedef (defined in mpl::cartesian_communicator::vector)mpl::cartesian_communicator::vector
const_reference typedef (defined in mpl::cartesian_communicator::vector)mpl::cartesian_communicator::vector
dimensions() constmpl::cartesian_communicator::vectorinline
iterator typedefmpl::cartesian_communicator::vector
iterator typedef (defined in mpl::cartesian_communicator::vector)mpl::cartesian_communicator::vector
operator[](int index)mpl::cartesian_communicator::vectorinline
operator[](int index) constmpl::cartesian_communicator::vectorinline
reference typedefmpl::cartesian_communicator::vector
value_type typedefmpl::cartesian_communicator::vector
reference typedef (defined in mpl::cartesian_communicator::vector)mpl::cartesian_communicator::vector
value_type typedef (defined in mpl::cartesian_communicator::vector)mpl::cartesian_communicator::vector
vector()=defaultmpl::cartesian_communicator::vector
vector(int dimension)mpl::cartesian_communicator::vectorinlineexplicit
vector(std::initializer_list< int > init)mpl::cartesian_communicator::vectorinline
- - + + @@ -142,10 +143,10 @@ - + - + @@ -169,7 +170,7 @@

Public Member Functions

 vector ()=default
 Creates a zero-dimensional vector. More...
vector ()=default
 Creates a zero-dimensional vector.
 
 vector (int dimension)
 Creates a multi-dimensional vector with components equal to zero. More...
int dimensions () const
 Determines the number of dimensions. More...
 
reference operator[] (int index)
reference operator[] (int index)
 Access a vector element. More...
 
const_reference operator[] (int index) const
const_reference operator[] (int index) const
 Access a vector element. More...
 
void add (int coordinate)
- +
using mpl::cartesian_communicator::vector::const_iterator = typename base::const_iteratorusing mpl::cartesian_communicator::vector::const_iterator = typename base::const_iterator

@@ -243,35 +244,8 @@

Constructor & Destructor Documentation

- -

◆ vector() [1/3]

- -
-
- - - - - -
- - - - - - - -
mpl::cartesian_communicator::vector::vector ()
-
-default
-
- -

Creates a zero-dimensional vector.

- -
-
-

◆ vector() [2/3]

+

◆ vector() [1/2]

@@ -307,7 +281,7 @@

-

◆ vector() [3/3]

+

◆ vector() [2/2]

@@ -419,7 +393,7 @@

- + @@ -455,7 +429,7 @@

reference mpl::cartesian_communicator::vector::operator[] reference mpl::cartesian_communicator::vector::operator[] ( int  index)
- + @@ -514,7 +488,7 @@

diff --git a/docs/html/classmpl_1_1cartesian__communicator_1_1vector.js b/docs/html/classmpl_1_1cartesian__communicator_1_1vector.js index e8fb714d..976b709d 100644 --- a/docs/html/classmpl_1_1cartesian__communicator_1_1vector.js +++ b/docs/html/classmpl_1_1cartesian__communicator_1_1vector.js @@ -1,16 +1,10 @@ var classmpl_1_1cartesian__communicator_1_1vector = [ - [ "const_iterator", "classmpl_1_1cartesian__communicator_1_1vector.html#ad9f677e798824f15bd7ae99bac9ec985", null ], - [ "const_reference", "classmpl_1_1cartesian__communicator_1_1vector.html#a6d37006e6cad284e3761d2dc9642ee88", null ], - [ "iterator", "classmpl_1_1cartesian__communicator_1_1vector.html#a95eab3eb70b4574c8850af64b20b41f3", null ], - [ "reference", "classmpl_1_1cartesian__communicator_1_1vector.html#a0dab1fa97a7c8b5862f4c808e1475c6c", null ], - [ "value_type", "classmpl_1_1cartesian__communicator_1_1vector.html#af62280a6766d3cfe8db967ab0ee5ac50", null ], [ "vector", "classmpl_1_1cartesian__communicator_1_1vector.html#aadb32224556177212bda389440645f2d", null ], [ "vector", "classmpl_1_1cartesian__communicator_1_1vector.html#a9ad2fab87c4ee7bc0c95ad0a12c519c4", null ], [ "vector", "classmpl_1_1cartesian__communicator_1_1vector.html#a6f1970d433943ef7aa5b1bd281aa92ce", null ], [ "add", "classmpl_1_1cartesian__communicator_1_1vector.html#a3d9a6b783c4c02ff2948fff730f8de8d", null ], [ "dimensions", "classmpl_1_1cartesian__communicator_1_1vector.html#a90ce86dd81472bbcdf612649366be94c", null ], [ "operator[]", "classmpl_1_1cartesian__communicator_1_1vector.html#a3d22ddb853627dcb5d33d690c28a44ac", null ], - [ "operator[]", "classmpl_1_1cartesian__communicator_1_1vector.html#a20fb79f818b48bbc40b88adefae3734a", null ], - [ "cartesian_communicator", "classmpl_1_1cartesian__communicator_1_1vector.html#a6087bfa57412c9e8b80b6f380ebaaf7a", null ] + [ "operator[]", "classmpl_1_1cartesian__communicator_1_1vector.html#a20fb79f818b48bbc40b88adefae3734a", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1communicator-members.html b/docs/html/classmpl_1_1communicator-members.html index 956b9d1b..90533c5a 100644 --- a/docs/html/classmpl_1_1communicator-members.html +++ b/docs/html/classmpl_1_1communicator-members.html @@ -117,7 +117,7 @@

- + @@ -128,8 +128,8 @@ - - + + @@ -142,8 +142,8 @@ - - + + diff --git a/docs/html/classmpl_1_1communicator.html b/docs/html/classmpl_1_1communicator.html index 8b48a566..2b25d63c 100644 --- a/docs/html/classmpl_1_1communicator.html +++ b/docs/html/classmpl_1_1communicator.html @@ -150,8 +150,9 @@
const_reference mpl::cartesian_communicator::vector::operator[] const_reference mpl::cartesian_communicator::vector::operator[] ( int  index)
bsend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) constmpl::communicatorinline
bsend_size(int number=1) constmpl::communicatorinline
bsend_size(const layout< T > &l, int number=1) constmpl::communicatorinline
cartesian_communicatormpl::communicatorfriend
cartesian_communicator (defined in mpl::communicator)mpl::communicatorfriend
comm_collectivempl::communicatorstatic
communicator()=defaultmpl::communicator
communicator(const communicator &other)mpl::communicatorinline
communicator(split_shared_memory_tag split_shared_memory, const communicator &other, key_type key=0)mpl::communicatorinlineexplicit
compare(const communicator &other) constmpl::communicatorinline
congruentmpl::communicatorstatic
distributed_graph_communicatormpl::communicatorfriend
environment::detail::envmpl::communicatorfriend
distributed_graph_communicator (defined in mpl::communicator)mpl::communicatorfriend
environment::detail::env (defined in mpl::communicator)mpl::communicatorfriend
equality_type enum namempl::communicator
exscan(F f, const T &senddata, T &recvdata) constmpl::communicatorinline
exscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) constmpl::communicatorinline
gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) constmpl::communicatorinline
gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) constmpl::communicatorinline
gatherv(int root_rank, const T *senddata, const layout< T > &sendl) constmpl::communicatorinline
graph_communicatormpl::communicatorfriend
groupmpl::communicatorfriend
graph_communicator (defined in mpl::communicator)mpl::communicatorfriend
group (defined in mpl::communicator)mpl::communicatorfriend
group_collectivempl::communicatorstatic
iallgather(const T &senddata, T *recvdata) constmpl::communicatorinline
iallgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) constmpl::communicatorinline
- - + + @@ -241,11 +242,11 @@ - + - + @@ -398,31 +399,33 @@ + + - + - + - + - + - + - + @@ -889,7 +892,7 @@
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
-

Definition at line 250 of file comm_group.hpp.

+

Definition at line 253 of file comm_group.hpp.

Member Enumeration Documentation

◆ equality_type

@@ -923,40 +926,13 @@

Definition at line 281 of file comm_group.hpp.

+

Definition at line 284 of file comm_group.hpp.

Constructor & Destructor Documentation

- -

◆ communicator() [1/7]

- -
-
-

Public Member Functions

 communicator ()=default
 Creates an empty communicator with no associated process. More...
communicator ()=default
 Creates an empty communicator with no associated process.
 
 communicator (const communicator &other)
 Creates a new communicator which is equivalent to an existing one. More...
 
template<typename T >
int bsend_size (int number=1) const
 determines the message buffer size More...
 Determines the message buffer size. More...
 
template<typename T >
int bsend_size (const layout< T > &l, int number=1) const
 determines the message buffer size More...
 Determines the message buffer size. More...
 
template<typename T >
void bsend (const T &data, int destination, tag_t t=tag_t(0)) const
 Non-blocking test for an incoming message. More...
 
mprobe_status mprobe (int source, tag_t t=tag_t(0)) const
 Blocking matched test for an incoming message. More...
 
std::optional< mprobe_statusimprobe (int source, tag_t t=tag_t(0)) const
 Blocking matched test for an incoming message. More...
 
template<typename T >
status_t mrecv (T &data, message_t &m) const
status_t mrecv (T &data, message_t &m) const
 Receives a message with a single value by a message handle. More...
 
template<typename T >
status_t mrecv (T *data, const layout< T > &l, message_t &m) const
status_t mrecv (T *data, const layout< T > &l, message_t &m) const
 Receives a message with a several values having a specific memory layout by a message handle. More...
 
template<typename iterT >
status_t mrecv (iterT begin, iterT end, message_t &m) const
status_t mrecv (iterT begin, iterT end, message_t &m) const
 Receives a message with a several values given by a pair of iterators by a message handle. More...
 
template<typename T >
irequest imrecv (T &data, message_t &m) const
irequest imrecv (T &data, message_t &m) const
 Receives a message with a single value via a non-blocking receive operation by a message handle. More...
 
template<typename T >
irequest imrecv (T *data, const layout< T > &l, message_t &m) const
irequest imrecv (T *data, const layout< T > &l, message_t &m) const
 Receives a message with several values having a specific memory layout via a non-blocking receive operation by a message handle. More...
 
template<typename iterT >
irequest imrecv (iterT begin, iterT end, message_t &m) const
irequest imrecv (iterT begin, iterT end, message_t &m) const
 Receives a message with a several values given by a pair of iterators via a non-blocking receive operation. More...
 
template<typename T >
- - - - -
- - - - - - - -
mpl::communicator::communicator ()
-
-default
-

- -

Creates an empty communicator with no associated process.

- -
-
-

◆ communicator() [2/7]

+

◆ communicator() [1/6]

-

Definition at line 432 of file comm_group.hpp.

+

Definition at line 435 of file comm_group.hpp.

-

◆ communicator() [3/7]

+

◆ communicator() [2/6]

@@ -1024,12 +1000,12 @@

Definition at line 436 of file comm_group.hpp.

+

Definition at line 439 of file comm_group.hpp.

-

◆ communicator() [4/7]

+

◆ communicator() [3/6]

-

Definition at line 447 of file comm_group.hpp.

+

Definition at line 450 of file comm_group.hpp.

-

◆ communicator() [5/7]

+

◆ communicator() [4/6]

-

Definition at line 460 of file comm_group.hpp.

+

Definition at line 463 of file comm_group.hpp.

-

◆ communicator() [6/7]

+

◆ communicator() [5/6]

-

◆ communicator() [7/7]

+

◆ communicator() [6/6]

@@ -1304,7 +1280,7 @@

Definition at line 504 of file comm_group.hpp.

+

Definition at line 507 of file comm_group.hpp.

@@ -1341,10 +1317,10 @@

Note
Method provides just a "best attempt" to abort processes.
-
Examples
arrays.cc, iterators.cc, standard_types.cc, stl_container.cc, and struct.cc.
+
Examples
arrays.cc, iterators.cc, standard_types.cc, stl_container.cc, and struct.cc.
-

Definition at line 606 of file comm_group.hpp.

+

Definition at line 614 of file comm_group.hpp.

@@ -1399,10 +1375,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-
Examples
parallel_sort_mpl.cc.
+
Examples
parallel_sort_mpl.cc.
-

Definition at line 2784 of file comm_group.hpp.

+

Definition at line 2803 of file comm_group.hpp.

@@ -1472,7 +1448,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 2799 of file comm_group.hpp.

+

Definition at line 2818 of file comm_group.hpp.

@@ -1542,7 +1518,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2880 of file comm_group.hpp.

+

Definition at line 2899 of file comm_group.hpp.

@@ -1619,7 +1595,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2859 of file comm_group.hpp.

+

Definition at line 2878 of file comm_group.hpp.

@@ -1682,10 +1658,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc, and communicator.cc.
+
Examples
collective.cc, and communicator.cc.
-

Definition at line 4009 of file comm_group.hpp.

+

Definition at line 4030 of file comm_group.hpp.

@@ -1756,7 +1732,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 4026 of file comm_group.hpp.

+

Definition at line 4047 of file comm_group.hpp.

@@ -1813,7 +1789,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4086 of file comm_group.hpp.

+

Definition at line 4107 of file comm_group.hpp.

@@ -1877,7 +1853,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4103 of file comm_group.hpp.

+

Definition at line 4124 of file comm_group.hpp.

@@ -1947,7 +1923,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3258 of file comm_group.hpp.

+

Definition at line 3277 of file comm_group.hpp.

@@ -2003,7 +1979,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3236 of file comm_group.hpp.

+

Definition at line 3255 of file comm_group.hpp.

@@ -2048,7 +2024,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3328 of file comm_group.hpp.

+

Definition at line 3347 of file comm_group.hpp.

@@ -2104,7 +2080,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3349 of file comm_group.hpp.

+

Definition at line 3368 of file comm_group.hpp.

@@ -2187,10 +2163,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
matrix_gather.cc, and parallel_sort_mpl.cc.
+
Examples
matrix_gather.cc, and parallel_sort_mpl.cc.
-

Definition at line 3427 of file comm_group.hpp.

+

Definition at line 3446 of file comm_group.hpp.

@@ -2260,7 +2236,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 3467 of file comm_group.hpp.

+

Definition at line 3486 of file comm_group.hpp.

@@ -2316,7 +2292,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3660 of file comm_group.hpp.

+

Definition at line 3679 of file comm_group.hpp.

@@ -2379,7 +2355,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3631 of file comm_group.hpp.

+

Definition at line 3650 of file comm_group.hpp.

@@ -2408,10 +2384,10 @@

Note
This is a collective operation and must be called by all processes in the communicator.
-
Examples
collective.cc, and communicator.cc.
+
Examples
collective.cc, and communicator.cc.
-

Definition at line 2394 of file comm_group.hpp.

+

Definition at line 2413 of file comm_group.hpp.

@@ -2466,10 +2442,10 @@

Note
This is a collective operation and must be called by all processes in the communicator.

-
Examples
collective.cc.
+
Examples
collective.cc.
-

Definition at line 2417 of file comm_group.hpp.

+

Definition at line 2436 of file comm_group.hpp.

@@ -2532,7 +2508,7 @@

Note
This is a collective operation and must be called by all processes in the communicator.

-

Definition at line 2431 of file comm_group.hpp.

+

Definition at line 2450 of file comm_group.hpp.

@@ -2595,7 +2571,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 959 of file comm_group.hpp.

+

Definition at line 969 of file comm_group.hpp.

@@ -2664,7 +2640,7 @@

Definition at line 975 of file comm_group.hpp.

+

Definition at line 985 of file comm_group.hpp.

@@ -2734,7 +2710,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 996 of file comm_group.hpp.

+

Definition at line 1006 of file comm_group.hpp.

@@ -2798,7 +2774,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 1141 of file comm_group.hpp.

+

Definition at line 1151 of file comm_group.hpp.

@@ -2868,7 +2844,7 @@

Returns
persistent communication request
-

Definition at line 1160 of file comm_group.hpp.

+

Definition at line 1170 of file comm_group.hpp.

@@ -2939,7 +2915,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1185 of file comm_group.hpp.

+

Definition at line 1195 of file comm_group.hpp.

@@ -2979,7 +2955,7 @@

-

determines the message buffer size

+

Determines the message buffer size.

Template Parameters
@@ -2993,8 +2969,9 @@

Returns
message buffer size
-

Definition at line 914 of file comm_group.hpp.

+

Definition at line 924 of file comm_group.hpp.

@@ -3024,7 +3001,7 @@

-

determines the message buffer size

+

Determines the message buffer size.

Template Parameters

Ttype of the data to send in a later buffered send operation, must meet the requirements as described in the data types section
@@ -3033,14 +3010,15 @@

Parameters

Ttype of the data to send in a later buffered send operation, must meet the requirements as described in the data types section
- +
numberquantity of elements of type T to send in a single buffered message or in a series of buffered send operations
numberquantity of elements of type T to send in a single buffered message or in a series of buffered send operations
-
Examples
blocking.cc, blocking_vector.cc, and nonblocking.cc.
+
Returns
message buffer size
+
Examples
blocking.cc, blocking_vector.cc, and nonblocking.cc.
-

Definition at line 902 of file comm_group.hpp.

+

Definition at line 911 of file comm_group.hpp.

@@ -3069,9 +3047,15 @@

Compares to another communicator.

+
Parameters
+ + +
othercommunicator to compare with
+
+
Returns
equality type
-

Definition at line 591 of file comm_group.hpp.

+

Definition at line 599 of file comm_group.hpp.

@@ -3135,7 +3119,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 4453 of file comm_group.hpp.

+

Definition at line 4474 of file comm_group.hpp.

@@ -3206,7 +3190,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4470 of file comm_group.hpp.

+

Definition at line 4491 of file comm_group.hpp.

@@ -3263,7 +3247,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4529 of file comm_group.hpp.

+

Definition at line 4550 of file comm_group.hpp.

@@ -3327,7 +3311,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4546 of file comm_group.hpp.

+

Definition at line 4567 of file comm_group.hpp.

@@ -3383,7 +3367,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2566 of file comm_group.hpp.

+

Definition at line 2585 of file comm_group.hpp.

@@ -3445,10 +3429,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc, and gather.cc.
+
Examples
collective.cc, and gather.cc.
-

Definition at line 2486 of file comm_group.hpp.

+

Definition at line 2505 of file comm_group.hpp.

@@ -3511,7 +3495,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.

-

Definition at line 2582 of file comm_group.hpp.

+

Definition at line 2601 of file comm_group.hpp.

@@ -3588,7 +3572,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2504 of file comm_group.hpp.

+

Definition at line 2523 of file comm_group.hpp.

@@ -3651,7 +3635,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2740 of file comm_group.hpp.

+

Definition at line 2759 of file comm_group.hpp.

@@ -3728,7 +3712,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2672 of file comm_group.hpp.

+

Definition at line 2691 of file comm_group.hpp.

@@ -3811,10 +3795,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
distributed_grid_scatter_gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, matrix_gather.cc, and vibrating_string_mpl.cc.
+
Examples
distributed_grid_scatter_gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, matrix_gather.cc, and vibrating_string_mpl.cc.
-

Definition at line 2644 of file comm_group.hpp.

+

Definition at line 2663 of file comm_group.hpp.

@@ -3871,7 +3855,7 @@

Returns
request representing the ongoing message transfer

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2817 of file comm_group.hpp.

+

Definition at line 2836 of file comm_group.hpp.

@@ -3942,7 +3926,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2836 of file comm_group.hpp.

+

Definition at line 2855 of file comm_group.hpp.

@@ -4013,7 +3997,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2921 of file comm_group.hpp.

+

Definition at line 2940 of file comm_group.hpp.

@@ -4091,7 +4075,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2899 of file comm_group.hpp.

+

Definition at line 2918 of file comm_group.hpp.

@@ -4156,7 +4140,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4045 of file comm_group.hpp.

+

Definition at line 4066 of file comm_group.hpp.

@@ -4228,7 +4212,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4066 of file comm_group.hpp.

+

Definition at line 4087 of file comm_group.hpp.

@@ -4286,7 +4270,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4122 of file comm_group.hpp.

+

Definition at line 4143 of file comm_group.hpp.

@@ -4351,7 +4335,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4142 of file comm_group.hpp.

+

Definition at line 4163 of file comm_group.hpp.

@@ -4422,7 +4406,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. The memory layouts of the incoming and the outgoing messages are described by sendl and recvl. Both layouts might differ but must be compatible, i.e., must hold the same number of elements of type T. The i-th memory block with the layout sendl in the array senddata is sent to the i-th process. When the message transfer has finished, the i-th memory block with the layout recvl in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3305 of file comm_group.hpp.

+

Definition at line 3324 of file comm_group.hpp.

@@ -4479,7 +4463,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends one element of type T to each process (including itself) and receives one element of type T from each process. The i-th element in the array senddata is sent to the i-th process. When the message transfer has finished, the i-th element in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3279 of file comm_group.hpp.

+

Definition at line 3298 of file comm_group.hpp.

@@ -4525,7 +4509,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends one element of type T to each process (including itself) and receives one element of type T from each process. The i-th element in the array sendrecvdata is sent to the i-th process. When the message transfer has finished, the i-th element in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3370 of file comm_group.hpp.

+

Definition at line 3389 of file comm_group.hpp.

@@ -4582,7 +4566,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. The memory layouts of the incoming and the outgoing messages are described by sendrecvl. The i-th memory block with the layout sendrecvl in the array sendrecvdata is sent to the i-th process. When the message transfer has finished, the i-th memory block with the layout sendrecvl in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3395 of file comm_group.hpp.

+

Definition at line 3414 of file comm_group.hpp.

@@ -4667,7 +4651,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffers senddata and recvdata, respectively. The i-th memory block with the layout sendls[i] in the array senddata starts senddispls[i] bytes after the address given in senddata. The i-th memory block is sent to the i-th process. The i-th memory block with the layout recvls[i] in the array recvdata starts recvdispls[i] bytes after the address given in recvdata. When the function has finished, the i-th memory block in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3564 of file comm_group.hpp.

+

Definition at line 3583 of file comm_group.hpp.

@@ -4738,7 +4722,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffers senddata and recvdata, respectively. The i-th memory block with the layout sendls[i] in the array senddata starts at the address given in senddata. The i-th memory block is sent to the i-th process. The i-th memory block with the layout recvls[i] in the array recvdata starts at the address given in recvdata. Note that the memory layouts need to include appropriate holes at the beginning in order to avoid overlapping send- or receive blocks. When the function has finished, the i-th memory block in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3607 of file comm_group.hpp.

+

Definition at line 3626 of file comm_group.hpp.

@@ -4788,13 +4772,14 @@

Parameters
- +
sendrecvdatapointer to continuous storage for incoming and outgoing messages
sendrecvlsmemory layouts of the data to send and to receive
sendrecvlsmemory layouts of the data to send and to receive
+
Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffer sendrecvdata. The i-th memory block with the layout sendrecvls[i] in the array sendrecvdata starts at the address given in sendrecvdata. The i-th memory block is sent to the i-th process. Note that the memory layouts need to include appropriate holes at the beginning in order to avoid overlapping send-receive blocks. When the function has finished, the i-th memory block in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3720 of file comm_group.hpp.

+

Definition at line 3741 of file comm_group.hpp.

@@ -4851,13 +4836,14 @@

sendrecvdatapointer to continuous storage for outgoing and incoming messages sendrecvlsmemory layouts of the data to send and to receive - sendrecvdisplsdisplacements of the data to send and to receive + sendrecvdisplsdisplacements of the data to send and to receive +
Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffer sendecvdata. The i-th memory block with the layout sendlrecvs[i] in the array sendrecvdata starts sendrecvdispls[i] bytes after the address given in sendrecvdata. The i-th memory block is sent to the i-th process. When the function has finished, the i-th memory block in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3683 of file comm_group.hpp.

+

Definition at line 3703 of file comm_group.hpp.

@@ -4888,7 +4874,7 @@

Returns
communication request
Note
This is a collective operation and must be called by all processes in the communicator.
-

Definition at line 2401 of file comm_group.hpp.

+

Definition at line 2420 of file comm_group.hpp.

@@ -4945,7 +4931,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called by all processes in the communicator.
-

Definition at line 2447 of file comm_group.hpp.

+

Definition at line 2466 of file comm_group.hpp.

@@ -5009,7 +4995,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called by all processes in the communicator.
-

Definition at line 2465 of file comm_group.hpp.

+

Definition at line 2484 of file comm_group.hpp.

@@ -5073,7 +5059,7 @@

Returns
request representing the ongoing message transfer
Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1074 of file comm_group.hpp.

+

Definition at line 1084 of file comm_group.hpp.

@@ -5143,7 +5129,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 1092 of file comm_group.hpp.

+

Definition at line 1102 of file comm_group.hpp.

@@ -5214,7 +5200,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
Returns
request representing the ongoing message transfer
-

Definition at line 1117 of file comm_group.hpp.

+

Definition at line 1127 of file comm_group.hpp.

@@ -5279,7 +5265,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4489 of file comm_group.hpp.

+

Definition at line 4510 of file comm_group.hpp.

@@ -5351,7 +5337,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4510 of file comm_group.hpp.

+

Definition at line 4531 of file comm_group.hpp.

@@ -5409,7 +5395,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4565 of file comm_group.hpp.

+

Definition at line 4586 of file comm_group.hpp.

@@ -5474,7 +5460,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4585 of file comm_group.hpp.

+

Definition at line 4606 of file comm_group.hpp.

@@ -5531,7 +5517,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2600 of file comm_group.hpp.

+

Definition at line 2619 of file comm_group.hpp.

@@ -5595,7 +5581,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2524 of file comm_group.hpp.

+

Definition at line 2543 of file comm_group.hpp.

@@ -5659,7 +5645,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2620 of file comm_group.hpp.

+

Definition at line 2639 of file comm_group.hpp.

@@ -5737,7 +5723,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2546 of file comm_group.hpp.

+

Definition at line 2565 of file comm_group.hpp.

@@ -5801,7 +5787,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2763 of file comm_group.hpp.

+

Definition at line 2782 of file comm_group.hpp.

@@ -5879,7 +5865,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2723 of file comm_group.hpp.

+

Definition at line 2742 of file comm_group.hpp.

@@ -5964,7 +5950,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2693 of file comm_group.hpp.

+

Definition at line 2712 of file comm_group.hpp.

@@ -6002,7 +5988,17 @@

-

Definition at line 2067 of file comm_group.hpp.

+

Blocking matched test for an incoming message.

+
Parameters
+ + + +
sourcerank of the sending process
ttag associated to this message
+
+
+
Returns
message handle and status of the pending message if there is a pending message by the given source and with the given tag
+ +

Definition at line 2086 of file comm_group.hpp.

@@ -6032,7 +6028,7 @@

- message_t &  + message_t &  m  @@ -6066,7 +6062,7 @@

Returns
request representing the ongoing message transfer
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 2201 of file comm_group.hpp.

+

Definition at line 2220 of file comm_group.hpp.

@@ -6090,7 +6086,7 @@

- message_t &  + message_t &  m  @@ -6123,7 +6119,7 @@

Returns
request representing the ongoing receive operation
Note
Receiving STL containers is not supported.
-

Definition at line 2168 of file comm_group.hpp.

+

Definition at line 2187 of file comm_group.hpp.

@@ -6153,7 +6149,7 @@

- message_t &  + message_t &  m  @@ -6186,7 +6182,7 @@

Returns
request representing the ongoing receive operation
-

Definition at line 2181 of file comm_group.hpp.

+

Definition at line 2200 of file comm_group.hpp.

@@ -6234,7 +6230,7 @@

Returns
status of the pending message if there is any pending message
-

Definition at line 2043 of file comm_group.hpp.

+

Definition at line 2053 of file comm_group.hpp.

@@ -6305,7 +6301,7 @@

Returns
request representing the ongoing message transfer
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1946 of file comm_group.hpp.

+

Definition at line 1956 of file comm_group.hpp.

@@ -6371,7 +6367,7 @@

Examples
heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
-

Definition at line 1906 of file comm_group.hpp.

+

Definition at line 1916 of file comm_group.hpp.

@@ -6441,7 +6437,7 @@

Returns
request representing the ongoing receive operation
-

Definition at line 1922 of file comm_group.hpp.

+

Definition at line 1932 of file comm_group.hpp.

@@ -6506,7 +6502,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3936 of file comm_group.hpp.

+

Definition at line 3957 of file comm_group.hpp.

@@ -6578,7 +6574,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3780 of file comm_group.hpp.

+

Definition at line 3801 of file comm_group.hpp.

@@ -6650,7 +6646,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3987 of file comm_group.hpp.

+

Definition at line 4008 of file comm_group.hpp.

@@ -6729,7 +6725,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3803 of file comm_group.hpp.

+

Definition at line 3824 of file comm_group.hpp.

@@ -6794,7 +6790,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3910 of file comm_group.hpp.

+

Definition at line 3931 of file comm_group.hpp.

@@ -6866,7 +6862,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3959 of file comm_group.hpp.

+

Definition at line 3980 of file comm_group.hpp.

@@ -6938,7 +6934,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4279 of file comm_group.hpp.

+

Definition at line 4300 of file comm_group.hpp.

@@ -7003,7 +6999,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4206 of file comm_group.hpp.

+

Definition at line 4227 of file comm_group.hpp.

@@ -7075,7 +7071,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4230 of file comm_group.hpp.

+

Definition at line 4251 of file comm_group.hpp.

@@ -7139,7 +7135,7 @@

Returns
request representing the ongoing message transfer
Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1624 of file comm_group.hpp.

+

Definition at line 1634 of file comm_group.hpp.

@@ -7209,7 +7205,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 1642 of file comm_group.hpp.

+

Definition at line 1652 of file comm_group.hpp.

@@ -7280,7 +7276,7 @@

Returns
request representing the ongoing message transfer
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1667 of file comm_group.hpp.

+

Definition at line 1677 of file comm_group.hpp.

@@ -7310,10 +7306,10 @@

Returns
true if communicator is valid
Note
A default constructed communicator is a non valid communicator.
-
Examples
communicator.cc.
+
Examples
communicator.cc.
-

Definition at line 601 of file comm_group.hpp.

+

Definition at line 609 of file comm_group.hpp.

@@ -7378,7 +7374,7 @@

Returns
request representing the ongoing reduction operation

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4337 of file comm_group.hpp.

+

Definition at line 4358 of file comm_group.hpp.

@@ -7450,7 +7446,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4358 of file comm_group.hpp.

+

Definition at line 4379 of file comm_group.hpp.

@@ -7508,7 +7504,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4412 of file comm_group.hpp.

+

Definition at line 4433 of file comm_group.hpp.

@@ -7573,7 +7569,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4432 of file comm_group.hpp.

+

Definition at line 4453 of file comm_group.hpp.

@@ -7651,7 +7647,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3000 of file comm_group.hpp.

+

Definition at line 3019 of file comm_group.hpp.

@@ -7715,7 +7711,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2978 of file comm_group.hpp.

+

Definition at line 2997 of file comm_group.hpp.

@@ -7766,7 +7762,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3048 of file comm_group.hpp.

+

Definition at line 3067 of file comm_group.hpp.

@@ -7824,7 +7820,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3066 of file comm_group.hpp.

+

Definition at line 3085 of file comm_group.hpp.

@@ -7909,7 +7905,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3140 of file comm_group.hpp.

+

Definition at line 3159 of file comm_group.hpp.

@@ -7987,7 +7983,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3171 of file comm_group.hpp.

+

Definition at line 3190 of file comm_group.hpp.

@@ -8051,7 +8047,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3211 of file comm_group.hpp.

+

Definition at line 3230 of file comm_group.hpp.

@@ -8117,7 +8113,7 @@

Examples
heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
-

Definition at line 771 of file comm_group.hpp.

+

Definition at line 779 of file comm_group.hpp.

@@ -8187,7 +8183,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 789 of file comm_group.hpp.

+

Definition at line 797 of file comm_group.hpp.

@@ -8258,7 +8254,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
Returns
request representing the ongoing message transfer
-

Definition at line 814 of file comm_group.hpp.

+

Definition at line 822 of file comm_group.hpp.

@@ -8322,7 +8318,7 @@

Returns
request representing the ongoing message transfer
Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1347 of file comm_group.hpp.

+

Definition at line 1357 of file comm_group.hpp.

@@ -8392,7 +8388,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 1365 of file comm_group.hpp.

+

Definition at line 1375 of file comm_group.hpp.

@@ -8463,7 +8459,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
Returns
request representing the ongoing message transfer
-

Definition at line 1390 of file comm_group.hpp.

+

Definition at line 1400 of file comm_group.hpp.

@@ -8501,7 +8497,17 @@

-

Definition at line 2057 of file comm_group.hpp.

+

Blocking matched test for an incoming message.

+
Parameters
+ + + +
sourcerank of the sending process
ttag associated to this message
+
+
+
Returns
message handle and status of the pending message
+ +

Definition at line 2071 of file comm_group.hpp.

@@ -8531,7 +8537,7 @@

- message_t &  + message_t &  m  @@ -8565,7 +8571,7 @@

Returns
status of the receive operation
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 2136 of file comm_group.hpp.

+

Definition at line 2155 of file comm_group.hpp.

@@ -8589,7 +8595,7 @@

- message_t &  + message_t &  m  @@ -8622,7 +8628,7 @@

Returns
status of the receive operation
Note
Receiving STL containers is not supported.
-

Definition at line 2102 of file comm_group.hpp.

+

Definition at line 2121 of file comm_group.hpp.

@@ -8652,7 +8658,7 @@

- message_t &  + message_t &  m  @@ -8685,7 +8691,7 @@

Returns
status of the receive operation
-

Definition at line 2115 of file comm_group.hpp.

+

Definition at line 2134 of file comm_group.hpp.

@@ -8714,9 +8720,15 @@

Tests for identity of communicators.

+
Parameters
+ + +
othercommunicator to compare with
+
+
Returns
true if not identical
-

Definition at line 583 of file comm_group.hpp.

+

Definition at line 590 of file comm_group.hpp.

@@ -8751,9 +8763,10 @@

Returns
this communicator
Note
This is a collective operation that needs to be carried out by all processes of the communicator other.
-

Definition at line 541 of file comm_group.hpp.

+

Definition at line 546 of file comm_group.hpp.

@@ -8788,9 +8801,10 @@

Returns
this communicator
Note
This is a collective operation that needs to be carried out by all processes of the communicator other. Communicators should not be copied unless a new independent communicator is wanted. Communicators should be passed via references to functions to avoid unnecessary copying.
-

Definition at line 522 of file comm_group.hpp.

+

Definition at line 526 of file comm_group.hpp.

@@ -8819,9 +8833,15 @@

Tests for identity of communicators.

+
Parameters
+ + +
othercommunicator to compare with
+
+
Returns
true if identical
-

Definition at line 575 of file comm_group.hpp.

+

Definition at line 581 of file comm_group.hpp.

@@ -8868,10 +8888,10 @@

Returns
status of the pending message
-
Examples
probe.cc.
+
Examples
probe.cc.
-

Definition at line 2030 of file comm_group.hpp.

+

Definition at line 2040 of file comm_group.hpp.

@@ -8900,10 +8920,10 @@

Returns
the rank of the calling process in the communicator

-
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
+
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
-

Definition at line 567 of file comm_group.hpp.

+

Definition at line 572 of file comm_group.hpp.

@@ -8974,7 +8994,7 @@

Returns
status of the receive operation

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1845 of file comm_group.hpp.

+

Definition at line 1855 of file comm_group.hpp.

@@ -9038,7 +9058,7 @@

Returns
status of the receive operation
Note
Receiving STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1807 of file comm_group.hpp.

+

Definition at line 1817 of file comm_group.hpp.

@@ -9108,7 +9128,7 @@

Returns
status of the receive operation
-

Definition at line 1822 of file comm_group.hpp.

+

Definition at line 1832 of file comm_group.hpp.

@@ -9179,7 +9199,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 2013 of file comm_group.hpp.

+

Definition at line 2023 of file comm_group.hpp.

@@ -9243,7 +9263,7 @@

Returns
persistent communication request
Note
Receiving STL containers is not supported.
-

Definition at line 1970 of file comm_group.hpp.

+

Definition at line 1980 of file comm_group.hpp.

@@ -9313,7 +9333,7 @@

Returns
persistent communication request
-

Definition at line 1989 of file comm_group.hpp.

+

Definition at line 1999 of file comm_group.hpp.

@@ -9377,7 +9397,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3847 of file comm_group.hpp.

+

Definition at line 3868 of file comm_group.hpp.

@@ -9447,10 +9467,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc, reduce_lcm.cc, and reduce_min_loc.cc.
+
Examples
collective.cc, reduce_lcm.cc, and reduce_min_loc.cc.
-

Definition at line 3738 of file comm_group.hpp.

+

Definition at line 3759 of file comm_group.hpp.

@@ -9521,7 +9541,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 3889 of file comm_group.hpp.

+

Definition at line 3910 of file comm_group.hpp.

@@ -9599,7 +9619,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3759 of file comm_group.hpp.

+

Definition at line 3780 of file comm_group.hpp.

@@ -9663,7 +9683,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3825 of file comm_group.hpp.

+

Definition at line 3846 of file comm_group.hpp.

@@ -9734,7 +9754,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3866 of file comm_group.hpp.

+

Definition at line 3887 of file comm_group.hpp.

@@ -9805,7 +9825,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4255 of file comm_group.hpp.

+

Definition at line 4276 of file comm_group.hpp.

@@ -9869,7 +9889,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4164 of file comm_group.hpp.

+

Definition at line 4185 of file comm_group.hpp.

@@ -9940,7 +9960,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4184 of file comm_group.hpp.

+

Definition at line 4205 of file comm_group.hpp.

@@ -10003,7 +10023,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1509 of file comm_group.hpp.

+

Definition at line 1519 of file comm_group.hpp.

@@ -10072,7 +10092,7 @@

Definition at line 1525 of file comm_group.hpp.

+

Definition at line 1535 of file comm_group.hpp.

@@ -10142,7 +10162,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1546 of file comm_group.hpp.

+

Definition at line 1556 of file comm_group.hpp.

@@ -10206,7 +10226,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 1691 of file comm_group.hpp.

+

Definition at line 1701 of file comm_group.hpp.

@@ -10276,7 +10296,7 @@

Returns
persistent communication request
-

Definition at line 1710 of file comm_group.hpp.

+

Definition at line 1720 of file comm_group.hpp.

@@ -10347,7 +10367,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1735 of file comm_group.hpp.

+

Definition at line 1745 of file comm_group.hpp.

@@ -10411,7 +10431,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4301 of file comm_group.hpp.

+

Definition at line 4322 of file comm_group.hpp.

@@ -10482,7 +10502,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4318 of file comm_group.hpp.

+

Definition at line 4339 of file comm_group.hpp.

@@ -10539,7 +10559,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4377 of file comm_group.hpp.

+

Definition at line 4398 of file comm_group.hpp.

@@ -10603,7 +10623,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4394 of file comm_group.hpp.

+

Definition at line 4415 of file comm_group.hpp.

@@ -10680,7 +10700,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2957 of file comm_group.hpp.

+

Definition at line 2976 of file comm_group.hpp.

@@ -10742,10 +10762,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc.
+
Examples
collective.cc.
-

Definition at line 2939 of file comm_group.hpp.

+

Definition at line 2958 of file comm_group.hpp.

@@ -10795,7 +10815,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.

-

Definition at line 3018 of file comm_group.hpp.

+

Definition at line 3037 of file comm_group.hpp.

@@ -10852,7 +10872,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3032 of file comm_group.hpp.

+

Definition at line 3051 of file comm_group.hpp.

@@ -10938,7 +10958,7 @@

Examples
distributed_grid_scatter_gather.cc, heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
-

Definition at line 3091 of file comm_group.hpp.

+

Definition at line 3110 of file comm_group.hpp.

@@ -11015,7 +11035,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3119 of file comm_group.hpp.

+

Definition at line 3138 of file comm_group.hpp.

@@ -11078,7 +11098,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3188 of file comm_group.hpp.

+

Definition at line 3207 of file comm_group.hpp.

@@ -11141,7 +11161,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 657 of file comm_group.hpp.

+

Definition at line 665 of file comm_group.hpp.

@@ -11210,7 +11230,7 @@

Definition at line 673 of file comm_group.hpp.

+

Definition at line 681 of file comm_group.hpp.

@@ -11280,7 +11300,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 694 of file comm_group.hpp.

+

Definition at line 702 of file comm_group.hpp.

@@ -11344,7 +11364,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 838 of file comm_group.hpp.

+

Definition at line 846 of file comm_group.hpp.

@@ -11414,7 +11434,7 @@

Returns
persistent communication request
-

Definition at line 857 of file comm_group.hpp.

+

Definition at line 865 of file comm_group.hpp.

@@ -11485,7 +11505,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 882 of file comm_group.hpp.

+

Definition at line 890 of file comm_group.hpp.

@@ -11571,7 +11591,7 @@

Examples
distributed_grid.cc.
-

Definition at line 2227 of file comm_group.hpp.

+

Definition at line 2246 of file comm_group.hpp.

@@ -11669,7 +11689,7 @@

Returns
status of the receive operation
-

Definition at line 2254 of file comm_group.hpp.

+

Definition at line 2273 of file comm_group.hpp.

@@ -11768,7 +11788,7 @@

Returns
status of the receive operation
-

Definition at line 2289 of file comm_group.hpp.

+

Definition at line 2308 of file comm_group.hpp.

@@ -11852,7 +11872,7 @@

Returns
status of the receive operation
-

Definition at line 2376 of file comm_group.hpp.

+

Definition at line 2395 of file comm_group.hpp.

@@ -11929,7 +11949,7 @@

Returns
status of the receive operation
-

Definition at line 2324 of file comm_group.hpp.

+

Definition at line 2343 of file comm_group.hpp.

@@ -12013,7 +12033,7 @@

Returns
status of the receive operation
-

Definition at line 2348 of file comm_group.hpp.

+

Definition at line 2367 of file comm_group.hpp.

@@ -12042,10 +12062,10 @@

Returns
number of processes
-
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
+
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
-

Definition at line 559 of file comm_group.hpp.

+

Definition at line 564 of file comm_group.hpp.

@@ -12108,7 +12128,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.

-

Definition at line 1236 of file comm_group.hpp.

+

Definition at line 1246 of file comm_group.hpp.

@@ -12177,7 +12197,7 @@

Definition at line 1251 of file comm_group.hpp.

+

Definition at line 1261 of file comm_group.hpp.

@@ -12247,7 +12267,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1272 of file comm_group.hpp.

+

Definition at line 1282 of file comm_group.hpp.

@@ -12311,7 +12331,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 1414 of file comm_group.hpp.

+

Definition at line 1424 of file comm_group.hpp.

@@ -12381,7 +12401,7 @@

Returns
persistent communication request
-

Definition at line 1433 of file comm_group.hpp.

+

Definition at line 1443 of file comm_group.hpp.

@@ -12452,7 +12472,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1458 of file comm_group.hpp.

+

Definition at line 1468 of file comm_group.hpp.

@@ -12477,7 +12497,7 @@

-

Definition at line 610 of file comm_group.hpp.

+

Definition at line 618 of file comm_group.hpp.

@@ -12501,7 +12521,7 @@

-

Definition at line 614 of file comm_group.hpp.

+

Definition at line 622 of file comm_group.hpp.

@@ -12525,7 +12545,7 @@

-

Definition at line 616 of file comm_group.hpp.

+

Definition at line 624 of file comm_group.hpp.

@@ -12549,7 +12569,7 @@

-

Definition at line 612 of file comm_group.hpp.

+

Definition at line 620 of file comm_group.hpp.

@@ -12573,7 +12593,7 @@

-

Definition at line 608 of file comm_group.hpp.

+

Definition at line 616 of file comm_group.hpp.

@@ -12600,7 +12620,7 @@

Definition at line 313 of file comm_group.hpp.

+

Definition at line 316 of file comm_group.hpp.

@@ -12625,7 +12645,7 @@

indicates that communicators are identical, i.e., communicators have same the members in same rank order but different context

-

Definition at line 300 of file comm_group.hpp.

+

Definition at line 303 of file comm_group.hpp.

@@ -12651,7 +12671,7 @@

Definition at line 320 of file comm_group.hpp.

+

Definition at line 323 of file comm_group.hpp.

@@ -12676,7 +12696,7 @@

indicates that communicators are identical, i.e., communicators represent the same communication context

-

Definition at line 297 of file comm_group.hpp.

+

Definition at line 300 of file comm_group.hpp.

@@ -12701,7 +12721,7 @@

indicates that communicators are similar, i.e., communicators have same tha members in different rank order

-

Definition at line 303 of file comm_group.hpp.

+

Definition at line 306 of file comm_group.hpp.

@@ -12726,10 +12746,10 @@

Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgroups.

-
Examples
communicator.cc.
+
Examples
communicator.cc.
-

Definition at line 327 of file comm_group.hpp.

+

Definition at line 330 of file comm_group.hpp.

@@ -12755,7 +12775,7 @@

Definition at line 334 of file comm_group.hpp.

+

Definition at line 337 of file comm_group.hpp.

@@ -12780,7 +12800,7 @@

indicates that communicators are unequal, i.e., communicators have different sets of members

-

Definition at line 306 of file comm_group.hpp.

+

Definition at line 309 of file comm_group.hpp.

@@ -12792,7 +12812,7 @@

diff --git a/docs/html/classmpl_1_1communicator.js b/docs/html/classmpl_1_1communicator.js index 335564bd..6bf22bb0 100644 --- a/docs/html/classmpl_1_1communicator.js +++ b/docs/html/classmpl_1_1communicator.js @@ -189,10 +189,5 @@ var classmpl_1_1communicator = [ "ssend", "classmpl_1_1communicator.html#abeb99f29459a82f9027dfc8b4bd60add", null ], [ "ssend_init", "classmpl_1_1communicator.html#a871cba17f8d1891fb0613f9a23c38866", null ], [ "ssend_init", "classmpl_1_1communicator.html#a17526ad519286bf2fa81a3701c0afe03", null ], - [ "ssend_init", "classmpl_1_1communicator.html#a3f433b69dace132e01bea64624fff4b3", null ], - [ "cartesian_communicator", "classmpl_1_1communicator.html#a6087bfa57412c9e8b80b6f380ebaaf7a", null ], - [ "distributed_graph_communicator", "classmpl_1_1communicator.html#a38537ffedd59ba7ac4018e44dd2c06c6", null ], - [ "environment::detail::env", "classmpl_1_1communicator.html#a7c53dda9ff4a482df724cab0edf000b3", null ], - [ "graph_communicator", "classmpl_1_1communicator.html#a864a79402650e1b3c453bf86a588dd1d", null ], - [ "group", "classmpl_1_1communicator.html#a670720b16047bf7556aea242ff96a7fb", null ] + [ "ssend_init", "classmpl_1_1communicator.html#a3f433b69dace132e01bea64624fff4b3", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1communicator_1_1comm__collective__tag.html b/docs/html/classmpl_1_1communicator_1_1comm__collective__tag.html index 09ca4ce7..c976ab43 100644 --- a/docs/html/classmpl_1_1communicator_1_1comm__collective__tag.html +++ b/docs/html/classmpl_1_1communicator_1_1comm__collective__tag.html @@ -102,7 +102,7 @@

Detailed Description

Indicates the creation of a new communicator by a call that in collective for all processes in the given communicator.

-

Definition at line 310 of file comm_group.hpp.

+

Definition at line 313 of file comm_group.hpp.


The documentation for this class was generated from the following file: @@ -111,7 +111,7 @@ diff --git a/docs/html/classmpl_1_1communicator_1_1group__collective__tag.html b/docs/html/classmpl_1_1communicator_1_1group__collective__tag.html index d561551f..aa55e153 100644 --- a/docs/html/classmpl_1_1communicator_1_1group__collective__tag.html +++ b/docs/html/classmpl_1_1communicator_1_1group__collective__tag.html @@ -102,7 +102,7 @@

Detailed Description

Indicates the creation of a new communicator by a call that in collective for all processes in the given group.

-

Definition at line 317 of file comm_group.hpp.

+

Definition at line 320 of file comm_group.hpp.


The documentation for this class was generated from the following file: @@ -111,7 +111,7 @@ diff --git a/docs/html/classmpl_1_1communicator_1_1split__shared__memory__tag.html b/docs/html/classmpl_1_1communicator_1_1split__shared__memory__tag.html index b694d0c4..98b20d51 100644 --- a/docs/html/classmpl_1_1communicator_1_1split__shared__memory__tag.html +++ b/docs/html/classmpl_1_1communicator_1_1split__shared__memory__tag.html @@ -102,7 +102,7 @@

Detailed Description

Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgroups each of which can create a shared memory region.

-

Definition at line 331 of file comm_group.hpp.

+

Definition at line 334 of file comm_group.hpp.


The documentation for this class was generated from the following file: @@ -111,7 +111,7 @@ diff --git a/docs/html/classmpl_1_1communicator_1_1split__tag.html b/docs/html/classmpl_1_1communicator_1_1split__tag.html index ba787010..4d356feb 100644 --- a/docs/html/classmpl_1_1communicator_1_1split__tag.html +++ b/docs/html/classmpl_1_1communicator_1_1split__tag.html @@ -102,7 +102,7 @@

Detailed Description

Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgroups.

-

Definition at line 324 of file comm_group.hpp.

+

Definition at line 327 of file comm_group.hpp.


The documentation for this class was generated from the following file: @@ -111,7 +111,7 @@ diff --git a/docs/html/classmpl_1_1contiguous__layout-members.html b/docs/html/classmpl_1_1contiguous__layout-members.html index f9d9a56c..0d41f252 100644 --- a/docs/html/classmpl_1_1contiguous__layout-members.html +++ b/docs/html/classmpl_1_1contiguous__layout-members.html @@ -93,12 +93,12 @@ byte_lower_bound() constmpl::layout< T >inline byte_resize(ssize_t lb, ssize_t extent)mpl::layout< T >inline byte_upper_bound() constmpl::layout< T >inline - communicatormpl::contiguous_layout< T >friend + communicator (defined in mpl::contiguous_layout< T >)mpl::contiguous_layout< T >friend contiguous_layout(size_t count=0)mpl::contiguous_layout< T >inlineexplicit contiguous_layout(size_t count, const contiguous_layout< T > &l)mpl::contiguous_layout< T >inlineexplicit contiguous_layout(const contiguous_layout< T > &l)mpl::contiguous_layout< T >inline contiguous_layout(contiguous_layout &&l) noexceptmpl::contiguous_layout< T >inline - contiguous_layouts< T >mpl::contiguous_layout< T >friend + contiguous_layouts< T > (defined in mpl::contiguous_layout< T >)mpl::contiguous_layout< T >friend extent() constmpl::layout< T >inline layout()mpl::layout< T >inline layout(const layout &l)mpl::layout< T >inline diff --git a/docs/html/classmpl_1_1contiguous__layout.html b/docs/html/classmpl_1_1contiguous__layout.html index 4dc271d0..7f87f839 100644 --- a/docs/html/classmpl_1_1contiguous__layout.html +++ b/docs/html/classmpl_1_1contiguous__layout.html @@ -116,10 +116,10 @@ - + - + @@ -137,46 +137,46 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -205,7 +205,7 @@ vector_layout
contiguous_layouts
-
Examples
blocking_vector.cc, collective.cc, gather.cc, gatherv.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
+
Examples
blocking_vector.cc, collective.cc, gather.cc, gatherv.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.

Definition at line 458 of file layout.hpp.

@@ -224,7 +224,7 @@

mpl::contiguous_layout< T >::contiguous_layout

- + @@ -262,7 +262,7 @@

mpl::contiguous_layout< T >::contiguous_layout

- + @@ -386,7 +386,7 @@

Public Member Functions

 contiguous_layout (size_t count=0)
 contiguous_layout (size_t count=0)
 constructs layout for contiguous storage several objects of type T More...
 
 contiguous_layout (size_t count, const contiguous_layout< T > &l)
 contiguous_layout (size_t count, const contiguous_layout< T > &l)
 constructs layout for data with memory layout that is a homogenous sequence of some other contiguous layout More...
 
 contiguous_layout (const contiguous_layout< T > &l)
void swap (contiguous_layout< T > &other)
 exchanges two contiguous layouts More...
 
ssize_t byte_extent () const
ssize_t byte_extent () const
 Get the byte extent of the layout. More...
 
ssize_t byte_lower_bound () const
ssize_t byte_lower_bound () const
 Get the byte lower bound of the layout. More...
 
ssize_t byte_upper_bound () const
ssize_t byte_upper_bound () const
 Get the byte upper bound of the layout. More...
 
ssize_t extent () const
ssize_t extent () const
 Get the extent of the layout. More...
 
ssize_t lower_bound () const
ssize_t lower_bound () const
 Get the lower bound of the layout. More...
 
ssize_t upper_bound () const
ssize_t upper_bound () const
 Get the upper bound of the layout. More...
 
ssize_t true_byte_extent () const
ssize_t true_byte_extent () const
 Get the true byte extent of the layout. More...
 
ssize_t true_byte_lower_bound () const
ssize_t true_byte_lower_bound () const
 Get the true byte lower bound of the layout. More...
 
ssize_t true_byte_upper_bound () const
ssize_t true_byte_upper_bound () const
 Get the true byte upper bound of the layout. More...
 
ssize_t true_extent () const
ssize_t true_extent () const
 Get the true extent of the layout. More...
 
ssize_t true_lower_bound () const
ssize_t true_lower_bound () const
 Get the true lower bound of the layout. More...
 
ssize_t true_upper_bound () const
ssize_t true_upper_bound () const
 Get the true upper bound of the layout. More...
 
void byte_resize (ssize_t lb, ssize_t extent)
void byte_resize (ssize_t lb, ssize_t extent)
 Resize the layout. More...
 
void resize (ssize_t lb, ssize_t extent)
void resize (ssize_t lb, ssize_t extent)
 Resize the layout. More...
 
void swap (layout &l)
(size_t size_t  count = 0)
(size_t size_t  count,
- + @@ -420,7 +420,7 @@

ssize_t mpl::layout< T >::byte_extent ssize_t mpl::layout< T >::byte_extent ( ) const
- + @@ -458,13 +458,13 @@

void mpl::layout< T >::byte_resize

- + - + @@ -505,7 +505,7 @@

ssize_t mpl::layout< T >::byte_lower_bound ssize_t mpl::layout< T >::byte_lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -541,7 +541,7 @@

ssize_t mpl::layout< T >::byte_upper_bound ssize_t mpl::layout< T >::byte_upper_bound ( ) const
- + @@ -575,7 +575,7 @@

ssize_t mpl::layout< T >::extent ssize_t mpl::layout< T >::extent ( ) const
- + @@ -691,13 +691,13 @@

void mpl::layout< T >::resize

- + - + @@ -721,7 +721,7 @@

Examples
layouts.cc.
+
Examples
layouts.cc.

Definition at line 314 of file layout.hpp.

@@ -816,7 +816,7 @@

ssize_t mpl::layout< T >::lower_bound ssize_t mpl::layout< T >::lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -850,7 +850,7 @@

ssize_t mpl::layout< T >::true_byte_extent ssize_t mpl::layout< T >::true_byte_extent ( ) const
- + @@ -886,7 +886,7 @@

ssize_t mpl::layout< T >::true_byte_lower_bound ssize_t mpl::layout< T >::true_byte_lower_bound ( ) const
- + @@ -922,7 +922,7 @@

ssize_t mpl::layout< T >::true_byte_upper_bound ssize_t mpl::layout< T >::true_byte_upper_bound ( ) const
- + @@ -956,7 +956,7 @@

ssize_t mpl::layout< T >::true_extent ssize_t mpl::layout< T >::true_extent ( ) const
- + @@ -992,7 +992,7 @@

ssize_t mpl::layout< T >::true_lower_bound ssize_t mpl::layout< T >::true_lower_bound ( ) const
- + @@ -1028,7 +1028,7 @@

ssize_t mpl::layout< T >::true_upper_bound ssize_t mpl::layout< T >::true_upper_bound ( ) const
- + @@ -1113,7 +1113,7 @@

diff --git a/docs/html/classmpl_1_1contiguous__layout.js b/docs/html/classmpl_1_1contiguous__layout.js index b0fba694..559408cb 100644 --- a/docs/html/classmpl_1_1contiguous__layout.js +++ b/docs/html/classmpl_1_1contiguous__layout.js @@ -21,7 +21,5 @@ var classmpl_1_1contiguous__layout = [ "true_extent", "classmpl_1_1contiguous__layout.html#a0890ec4684e6a465170f88932e116d30", null ], [ "true_lower_bound", "classmpl_1_1contiguous__layout.html#a4b0e56adef2f212d061f971b2ecafd0a", null ], [ "true_upper_bound", "classmpl_1_1contiguous__layout.html#a80713f15de3244b019294ee277c8c650", null ], - [ "upper_bound", "classmpl_1_1contiguous__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f", null ], - [ "communicator", "classmpl_1_1contiguous__layout.html#a28e4940a8d711c15cada064a12ba0788", null ], - [ "contiguous_layouts< T >", "classmpl_1_1contiguous__layout.html#adda8d9c92a93fd7e1c7dddf5cd113403", null ] + [ "upper_bound", "classmpl_1_1contiguous__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1contiguous__layouts-members.html b/docs/html/classmpl_1_1contiguous__layouts-members.html index 58f387aa..0546a442 100644 --- a/docs/html/classmpl_1_1contiguous__layouts-members.html +++ b/docs/html/classmpl_1_1contiguous__layouts-members.html @@ -89,10 +89,10 @@

This is the complete list of members for mpl::contiguous_layouts< T >, including all inherited members.

ssize_t mpl::layout< T >::upper_bound ssize_t mpl::layout< T >::upper_bound ( ) const
- + - +
communicatormpl::contiguous_layouts< T >friend
communicator (defined in mpl::contiguous_layouts< T >)mpl::contiguous_layouts< T >friend
contiguous_layouts()mpl::contiguous_layouts< T >inline
contiguous_layouts(size_type n)mpl::contiguous_layouts< T >inlineexplicit
impl::topology_communicatormpl::contiguous_layouts< T >friend
impl::topology_communicator (defined in mpl::contiguous_layouts< T >)mpl::contiguous_layouts< T >friend
diff --git a/docs/html/classmpl_1_1contiguous__layouts.html b/docs/html/classmpl_1_1contiguous__layouts.html index 94d3c497..85d4059b 100644 --- a/docs/html/classmpl_1_1contiguous__layouts.html +++ b/docs/html/classmpl_1_1contiguous__layouts.html @@ -140,7 +140,7 @@

-

Definition at line 1700 of file layout.hpp.

+

Definition at line 1703 of file layout.hpp.

Constructor & Destructor Documentation

◆ contiguous_layouts() [1/2]

@@ -169,7 +169,7 @@

Definition at line 1709 of file layout.hpp.

+

Definition at line 1712 of file layout.hpp.

@@ -207,7 +207,7 @@

Definition at line 1713 of file layout.hpp.

+

Definition at line 1716 of file layout.hpp.

@@ -234,7 +234,7 @@

-

Definition at line 1723 of file layout.hpp.

+

Definition at line 1726 of file layout.hpp.

@@ -260,7 +260,7 @@

-

Definition at line 1724 of file layout.hpp.

+

Definition at line 1727 of file layout.hpp.

@@ -272,7 +272,7 @@

diff --git a/docs/html/classmpl_1_1contiguous__layouts.js b/docs/html/classmpl_1_1contiguous__layouts.js index cf31d426..f6076484 100644 --- a/docs/html/classmpl_1_1contiguous__layouts.js +++ b/docs/html/classmpl_1_1contiguous__layouts.js @@ -1,7 +1,5 @@ var classmpl_1_1contiguous__layouts = [ [ "contiguous_layouts", "classmpl_1_1contiguous__layouts.html#a51ef8713bb2454de686381fd012e2845", null ], - [ "contiguous_layouts", "classmpl_1_1contiguous__layouts.html#a7c7201b2a4367597aac88ccfcbb9b797", null ], - [ "communicator", "classmpl_1_1contiguous__layouts.html#a28e4940a8d711c15cada064a12ba0788", null ], - [ "impl::topology_communicator", "classmpl_1_1contiguous__layouts.html#a1eb8b54fe4aac54b7d7dd0ef16a2a82e", null ] + [ "contiguous_layouts", "classmpl_1_1contiguous__layouts.html#a7c7201b2a4367597aac88ccfcbb9b797", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1displacements-members.html b/docs/html/classmpl_1_1displacements-members.html index 39692571..ed67c6d7 100644 --- a/docs/html/classmpl_1_1displacements-members.html +++ b/docs/html/classmpl_1_1displacements-members.html @@ -94,8 +94,8 @@ displacements(const displacements &other)=defaultmpl::displacements displacements(displacements &&other)=defaultmpl::displacements operator()() constmpl::displacementsinline - size_type typedefmpl::displacements - value_type typedefmpl::displacements + size_type typedef (defined in mpl::displacements)mpl::displacements + value_type typedef (defined in mpl::displacements)mpl::displacements diff --git a/docs/html/classmpl_1_1displacements.html b/docs/html/classmpl_1_1displacements.html index 3fccca9f..e1873ccb 100644 --- a/docs/html/classmpl_1_1displacements.html +++ b/docs/html/classmpl_1_1displacements.html @@ -123,7 +123,7 @@ - + @@ -151,7 +151,7 @@

Public Member Functions

 displacements (size_type n=0)
 displacements (size_type n=0)
 Constructs a set of displacements with displacement zero. More...
 
 displacements (std::initializer_list< MPI_Aint > init)
- +
using mpl::displacements::size_type = base::size_typeusing mpl::displacements::size_type = base::size_type
@@ -189,7 +189,7 @@

mpl::displacements::displacements ( - size_type  + size_type  n = 0) @@ -356,7 +356,7 @@

diff --git a/docs/html/classmpl_1_1displacements.js b/docs/html/classmpl_1_1displacements.js index bb4627ca..a4217d14 100644 --- a/docs/html/classmpl_1_1displacements.js +++ b/docs/html/classmpl_1_1displacements.js @@ -1,7 +1,5 @@ var classmpl_1_1displacements = [ - [ "size_type", "classmpl_1_1displacements.html#a0a9d79ddab90f97db23951542f9529ec", null ], - [ "value_type", "classmpl_1_1displacements.html#a6507f2260c13ced0a18e3d32af0c04a6", null ], [ "displacements", "classmpl_1_1displacements.html#ae1e24fef18246a0ca1cd857a691a02ce", null ], [ "displacements", "classmpl_1_1displacements.html#a9b3133c451300e447c43374b8e785783", null ], [ "displacements", "classmpl_1_1displacements.html#a4fa9b3a5848ac407a2c80db370d4fcd9", null ], diff --git a/docs/html/classmpl_1_1distributed__graph__communicator.html b/docs/html/classmpl_1_1distributed__graph__communicator.html index 788d9e36..83b89097 100644 --- a/docs/html/classmpl_1_1distributed__graph__communicator.html +++ b/docs/html/classmpl_1_1distributed__graph__communicator.html @@ -143,8 +143,9 @@ - - + + @@ -299,11 +300,11 @@ - + - + @@ -456,31 +457,33 @@ + + - + - + - + - + - + - + @@ -966,40 +969,13 @@

Definition at line 281 of file comm_group.hpp.

+

Definition at line 284 of file comm_group.hpp.

Constructor & Destructor Documentation

- -

◆ distributed_graph_communicator() [1/4]

- -
-
-

Public Member Functions

 distributed_graph_communicator ()=default
 Creates an empty communicator with no associated process. More...
distributed_graph_communicator ()=default
 Creates an empty communicator with no associated process.
 
 distributed_graph_communicator (const distributed_graph_communicator &other)
 Creates a new communicator which is equivalent to an existing one. More...
 
template<typename T >
int bsend_size (int number=1) const
 determines the message buffer size More...
 Determines the message buffer size. More...
 
template<typename T >
int bsend_size (const layout< T > &l, int number=1) const
 determines the message buffer size More...
 Determines the message buffer size. More...
 
template<typename T >
void bsend (const T &data, int destination, tag_t t=tag_t(0)) const
 Non-blocking test for an incoming message. More...
 
mprobe_status mprobe (int source, tag_t t=tag_t(0)) const
 Blocking matched test for an incoming message. More...
 
std::optional< mprobe_statusimprobe (int source, tag_t t=tag_t(0)) const
 Blocking matched test for an incoming message. More...
 
template<typename T >
status_t mrecv (T &data, message_t &m) const
status_t mrecv (T &data, message_t &m) const
 Receives a message with a single value by a message handle. More...
 
template<typename T >
status_t mrecv (T *data, const layout< T > &l, message_t &m) const
status_t mrecv (T *data, const layout< T > &l, message_t &m) const
 Receives a message with a several values having a specific memory layout by a message handle. More...
 
template<typename iterT >
status_t mrecv (iterT begin, iterT end, message_t &m) const
status_t mrecv (iterT begin, iterT end, message_t &m) const
 Receives a message with a several values given by a pair of iterators by a message handle. More...
 
template<typename T >
irequest imrecv (T &data, message_t &m) const
irequest imrecv (T &data, message_t &m) const
 Receives a message with a single value via a non-blocking receive operation by a message handle. More...
 
template<typename T >
irequest imrecv (T *data, const layout< T > &l, message_t &m) const
irequest imrecv (T *data, const layout< T > &l, message_t &m) const
 Receives a message with several values having a specific memory layout via a non-blocking receive operation by a message handle. More...
 
template<typename iterT >
irequest imrecv (iterT begin, iterT end, message_t &m) const
irequest imrecv (iterT begin, iterT end, message_t &m) const
 Receives a message with a several values given by a pair of iterators via a non-blocking receive operation. More...
 
template<typename T >
- - - - -
- - - - - - - -
mpl::distributed_graph_communicator::distributed_graph_communicator ()
-
-default
-
- -

Creates an empty communicator with no associated process.

- -
- -

◆ distributed_graph_communicator() [2/4]

+

◆ distributed_graph_communicator() [1/3]

@@ -1036,7 +1012,7 @@

-

◆ distributed_graph_communicator() [3/4]

+

◆ distributed_graph_communicator() [2/3]

@@ -1072,7 +1048,7 @@

-

◆ distributed_graph_communicator() [4/4]

+

◆ distributed_graph_communicator() [3/3]

@@ -1224,10 +1200,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
parallel_sort_mpl.cc.
+
Examples
parallel_sort_mpl.cc.
-

Definition at line 2784 of file comm_group.hpp.

+

Definition at line 2803 of file comm_group.hpp.

@@ -1297,7 +1273,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2799 of file comm_group.hpp.

+

Definition at line 2818 of file comm_group.hpp.

@@ -1367,7 +1343,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2880 of file comm_group.hpp.

+

Definition at line 2899 of file comm_group.hpp.

@@ -1444,7 +1420,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2859 of file comm_group.hpp.

+

Definition at line 2878 of file comm_group.hpp.

@@ -1507,10 +1483,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc, and communicator.cc.
+
Examples
collective.cc, and communicator.cc.
-

Definition at line 4009 of file comm_group.hpp.

+

Definition at line 4030 of file comm_group.hpp.

@@ -1581,7 +1557,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 4026 of file comm_group.hpp.

+

Definition at line 4047 of file comm_group.hpp.

@@ -1638,7 +1614,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4086 of file comm_group.hpp.

+

Definition at line 4107 of file comm_group.hpp.

@@ -1702,7 +1678,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4103 of file comm_group.hpp.

+

Definition at line 4124 of file comm_group.hpp.

@@ -1772,7 +1748,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3258 of file comm_group.hpp.

+

Definition at line 3277 of file comm_group.hpp.

@@ -1828,7 +1804,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3236 of file comm_group.hpp.

+

Definition at line 3255 of file comm_group.hpp.

@@ -1873,7 +1849,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3328 of file comm_group.hpp.

+

Definition at line 3347 of file comm_group.hpp.

@@ -1929,7 +1905,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3349 of file comm_group.hpp.

+

Definition at line 3368 of file comm_group.hpp.

@@ -2012,10 +1988,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
matrix_gather.cc, and parallel_sort_mpl.cc.
+
Examples
matrix_gather.cc, and parallel_sort_mpl.cc.
-

Definition at line 3427 of file comm_group.hpp.

+

Definition at line 3446 of file comm_group.hpp.

@@ -2085,7 +2061,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 3467 of file comm_group.hpp.

+

Definition at line 3486 of file comm_group.hpp.

@@ -2141,7 +2117,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3660 of file comm_group.hpp.

+

Definition at line 3679 of file comm_group.hpp.

@@ -2204,7 +2180,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3631 of file comm_group.hpp.

+

Definition at line 3650 of file comm_group.hpp.

@@ -2233,10 +2209,10 @@

Note
This is a collective operation and must be called by all processes in the communicator.
-
Examples
collective.cc, and communicator.cc.
+
Examples
collective.cc, and communicator.cc.
-

Definition at line 2394 of file comm_group.hpp.

+

Definition at line 2413 of file comm_group.hpp.

@@ -2291,10 +2267,10 @@

Note
This is a collective operation and must be called by all processes in the communicator.

-
Examples
collective.cc.
+
Examples
collective.cc.
-

Definition at line 2417 of file comm_group.hpp.

+

Definition at line 2436 of file comm_group.hpp.

@@ -2357,7 +2333,7 @@

Note
This is a collective operation and must be called by all processes in the communicator.

-

Definition at line 2431 of file comm_group.hpp.

+

Definition at line 2450 of file comm_group.hpp.

@@ -2420,7 +2396,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 959 of file comm_group.hpp.

+

Definition at line 969 of file comm_group.hpp.

@@ -2489,7 +2465,7 @@

Definition at line 975 of file comm_group.hpp.

+

Definition at line 985 of file comm_group.hpp.

@@ -2559,7 +2535,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 996 of file comm_group.hpp.

+

Definition at line 1006 of file comm_group.hpp.

@@ -2623,7 +2599,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 1141 of file comm_group.hpp.

+

Definition at line 1151 of file comm_group.hpp.

@@ -2693,7 +2669,7 @@

Returns
persistent communication request
-

Definition at line 1160 of file comm_group.hpp.

+

Definition at line 1170 of file comm_group.hpp.

@@ -2764,7 +2740,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1185 of file comm_group.hpp.

+

Definition at line 1195 of file comm_group.hpp.

@@ -2804,7 +2780,7 @@

-

determines the message buffer size

+

Determines the message buffer size.

Template Parameters
@@ -2818,8 +2794,9 @@

Returns
message buffer size
-

Definition at line 914 of file comm_group.hpp.

+

Definition at line 924 of file comm_group.hpp.

@@ -2849,7 +2826,7 @@

-

determines the message buffer size

+

Determines the message buffer size.

Template Parameters

Ttype of the data to send in a later buffered send operation, must meet the requirements as described in the data types section
@@ -2858,14 +2835,15 @@

Parameters

Ttype of the data to send in a later buffered send operation, must meet the requirements as described in the data types section
- +
numberquantity of elements of type T to send in a single buffered message or in a series of buffered send operations
numberquantity of elements of type T to send in a single buffered message or in a series of buffered send operations
-
Examples
blocking.cc, blocking_vector.cc, and nonblocking.cc.
+
Returns
message buffer size
+
Examples
blocking.cc, blocking_vector.cc, and nonblocking.cc.
-

Definition at line 902 of file comm_group.hpp.

+

Definition at line 911 of file comm_group.hpp.

@@ -2894,9 +2872,15 @@

Compares to another communicator.

+
Parameters
+ + +
othercommunicator to compare with
+
+
Returns
equality type
-

Definition at line 591 of file comm_group.hpp.

+

Definition at line 599 of file comm_group.hpp.

@@ -2960,7 +2944,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 4453 of file comm_group.hpp.

+

Definition at line 4474 of file comm_group.hpp.

@@ -3031,7 +3015,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4470 of file comm_group.hpp.

+

Definition at line 4491 of file comm_group.hpp.

@@ -3088,7 +3072,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4529 of file comm_group.hpp.

+

Definition at line 4550 of file comm_group.hpp.

@@ -3152,7 +3136,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4546 of file comm_group.hpp.

+

Definition at line 4567 of file comm_group.hpp.

@@ -3208,7 +3192,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2566 of file comm_group.hpp.

+

Definition at line 2585 of file comm_group.hpp.

@@ -3270,10 +3254,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc, and gather.cc.
+
Examples
collective.cc, and gather.cc.
-

Definition at line 2486 of file comm_group.hpp.

+

Definition at line 2505 of file comm_group.hpp.

@@ -3336,7 +3320,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.

-

Definition at line 2582 of file comm_group.hpp.

+

Definition at line 2601 of file comm_group.hpp.

@@ -3413,7 +3397,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2504 of file comm_group.hpp.

+

Definition at line 2523 of file comm_group.hpp.

@@ -3476,7 +3460,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2740 of file comm_group.hpp.

+

Definition at line 2759 of file comm_group.hpp.

@@ -3553,7 +3537,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2672 of file comm_group.hpp.

+

Definition at line 2691 of file comm_group.hpp.

@@ -3636,10 +3620,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
distributed_grid_scatter_gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, matrix_gather.cc, and vibrating_string_mpl.cc.
+
Examples
distributed_grid_scatter_gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, matrix_gather.cc, and vibrating_string_mpl.cc.
-

Definition at line 2644 of file comm_group.hpp.

+

Definition at line 2663 of file comm_group.hpp.

@@ -3696,7 +3680,7 @@

Returns
request representing the ongoing message transfer

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2817 of file comm_group.hpp.

+

Definition at line 2836 of file comm_group.hpp.

@@ -3767,7 +3751,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2836 of file comm_group.hpp.

+

Definition at line 2855 of file comm_group.hpp.

@@ -3838,7 +3822,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2921 of file comm_group.hpp.

+

Definition at line 2940 of file comm_group.hpp.

@@ -3916,7 +3900,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2899 of file comm_group.hpp.

+

Definition at line 2918 of file comm_group.hpp.

@@ -3981,7 +3965,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4045 of file comm_group.hpp.

+

Definition at line 4066 of file comm_group.hpp.

@@ -4053,7 +4037,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4066 of file comm_group.hpp.

+

Definition at line 4087 of file comm_group.hpp.

@@ -4111,7 +4095,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4122 of file comm_group.hpp.

+

Definition at line 4143 of file comm_group.hpp.

@@ -4176,7 +4160,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4142 of file comm_group.hpp.

+

Definition at line 4163 of file comm_group.hpp.

@@ -4247,7 +4231,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. The memory layouts of the incoming and the outgoing messages are described by sendl and recvl. Both layouts might differ but must be compatible, i.e., must hold the same number of elements of type T. The i-th memory block with the layout sendl in the array senddata is sent to the i-th process. When the message transfer has finished, the i-th memory block with the layout recvl in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3305 of file comm_group.hpp.

+

Definition at line 3324 of file comm_group.hpp.

@@ -4304,7 +4288,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends one element of type T to each process (including itself) and receives one element of type T from each process. The i-th element in the array senddata is sent to the i-th process. When the message transfer has finished, the i-th element in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3279 of file comm_group.hpp.

+

Definition at line 3298 of file comm_group.hpp.

@@ -4350,7 +4334,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends one element of type T to each process (including itself) and receives one element of type T from each process. The i-th element in the array sendrecvdata is sent to the i-th process. When the message transfer has finished, the i-th element in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3370 of file comm_group.hpp.

+

Definition at line 3389 of file comm_group.hpp.

@@ -4407,7 +4391,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. The memory layouts of the incoming and the outgoing messages are described by sendrecvl. The i-th memory block with the layout sendrecvl in the array sendrecvdata is sent to the i-th process. When the message transfer has finished, the i-th memory block with the layout sendrecvl in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3395 of file comm_group.hpp.

+

Definition at line 3414 of file comm_group.hpp.

@@ -4492,7 +4476,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffers senddata and recvdata, respectively. The i-th memory block with the layout sendls[i] in the array senddata starts senddispls[i] bytes after the address given in senddata. The i-th memory block is sent to the i-th process. The i-th memory block with the layout recvls[i] in the array recvdata starts recvdispls[i] bytes after the address given in recvdata. When the function has finished, the i-th memory block in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3564 of file comm_group.hpp.

+

Definition at line 3583 of file comm_group.hpp.

@@ -4563,7 +4547,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffers senddata and recvdata, respectively. The i-th memory block with the layout sendls[i] in the array senddata starts at the address given in senddata. The i-th memory block is sent to the i-th process. The i-th memory block with the layout recvls[i] in the array recvdata starts at the address given in recvdata. Note that the memory layouts need to include appropriate holes at the beginning in order to avoid overlapping send- or receive blocks. When the function has finished, the i-th memory block in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3607 of file comm_group.hpp.

+

Definition at line 3626 of file comm_group.hpp.

@@ -4613,13 +4597,14 @@

Parameters
- +
sendrecvdatapointer to continuous storage for incoming and outgoing messages
sendrecvlsmemory layouts of the data to send and to receive
sendrecvlsmemory layouts of the data to send and to receive
+
Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffer sendrecvdata. The i-th memory block with the layout sendrecvls[i] in the array sendrecvdata starts at the address given in sendrecvdata. The i-th memory block is sent to the i-th process. Note that the memory layouts need to include appropriate holes at the beginning in order to avoid overlapping send-receive blocks. When the function has finished, the i-th memory block in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3720 of file comm_group.hpp.

+

Definition at line 3741 of file comm_group.hpp.

@@ -4676,13 +4661,14 @@

sendrecvdatapointer to continuous storage for outgoing and incoming messages sendrecvlsmemory layouts of the data to send and to receive - sendrecvdisplsdisplacements of the data to send and to receive + sendrecvdisplsdisplacements of the data to send and to receive +
Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffer sendecvdata. The i-th memory block with the layout sendlrecvs[i] in the array sendrecvdata starts sendrecvdispls[i] bytes after the address given in sendrecvdata. The i-th memory block is sent to the i-th process. When the function has finished, the i-th memory block in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3683 of file comm_group.hpp.

+

Definition at line 3703 of file comm_group.hpp.

@@ -4713,7 +4699,7 @@

Returns
communication request
Note
This is a collective operation and must be called by all processes in the communicator.
-

Definition at line 2401 of file comm_group.hpp.

+

Definition at line 2420 of file comm_group.hpp.

@@ -4770,7 +4756,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called by all processes in the communicator.
-

Definition at line 2447 of file comm_group.hpp.

+

Definition at line 2466 of file comm_group.hpp.

@@ -4834,7 +4820,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called by all processes in the communicator.
-

Definition at line 2465 of file comm_group.hpp.

+

Definition at line 2484 of file comm_group.hpp.

@@ -4898,7 +4884,7 @@

Returns
request representing the ongoing message transfer
Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1074 of file comm_group.hpp.

+

Definition at line 1084 of file comm_group.hpp.

@@ -4968,7 +4954,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 1092 of file comm_group.hpp.

+

Definition at line 1102 of file comm_group.hpp.

@@ -5039,7 +5025,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
Returns
request representing the ongoing message transfer
-

Definition at line 1117 of file comm_group.hpp.

+

Definition at line 1127 of file comm_group.hpp.

@@ -5104,7 +5090,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4489 of file comm_group.hpp.

+

Definition at line 4510 of file comm_group.hpp.

@@ -5176,7 +5162,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4510 of file comm_group.hpp.

+

Definition at line 4531 of file comm_group.hpp.

@@ -5234,7 +5220,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4565 of file comm_group.hpp.

+

Definition at line 4586 of file comm_group.hpp.

@@ -5299,7 +5285,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4585 of file comm_group.hpp.

+

Definition at line 4606 of file comm_group.hpp.

@@ -5356,7 +5342,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2600 of file comm_group.hpp.

+

Definition at line 2619 of file comm_group.hpp.

@@ -5420,7 +5406,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2524 of file comm_group.hpp.

+

Definition at line 2543 of file comm_group.hpp.

@@ -5484,7 +5470,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2620 of file comm_group.hpp.

+

Definition at line 2639 of file comm_group.hpp.

@@ -5562,7 +5548,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2546 of file comm_group.hpp.

+

Definition at line 2565 of file comm_group.hpp.

@@ -5626,7 +5612,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2763 of file comm_group.hpp.

+

Definition at line 2782 of file comm_group.hpp.

@@ -5704,7 +5690,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2723 of file comm_group.hpp.

+

Definition at line 2742 of file comm_group.hpp.

@@ -5789,7 +5775,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2693 of file comm_group.hpp.

+

Definition at line 2712 of file comm_group.hpp.

@@ -5827,7 +5813,17 @@

-

Definition at line 2067 of file comm_group.hpp.

+

Blocking matched test for an incoming message.

+
Parameters
+ + + +
sourcerank of the sending process
ttag associated to this message
+
+
+
Returns
message handle and status of the pending message if there is a pending message by the given source and with the given tag
+ +

Definition at line 2086 of file comm_group.hpp.

@@ -5857,7 +5853,7 @@

- message_t &  + message_t &  m  @@ -5891,7 +5887,7 @@

Returns
request representing the ongoing message transfer
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 2201 of file comm_group.hpp.

+

Definition at line 2220 of file comm_group.hpp.

@@ -5915,7 +5911,7 @@

- message_t &  + message_t &  m  @@ -5948,7 +5944,7 @@

Returns
request representing the ongoing receive operation
Note
Receiving STL containers is not supported.
-

Definition at line 2168 of file comm_group.hpp.

+

Definition at line 2187 of file comm_group.hpp.

@@ -5978,7 +5974,7 @@

- message_t &  + message_t &  m  @@ -6011,7 +6007,7 @@

Returns
request representing the ongoing receive operation
-

Definition at line 2181 of file comm_group.hpp.

+

Definition at line 2200 of file comm_group.hpp.

@@ -6710,7 +6706,7 @@

Returns
status of the pending message if there is any pending message
-

Definition at line 2043 of file comm_group.hpp.

+

Definition at line 2053 of file comm_group.hpp.

@@ -6781,7 +6777,7 @@

Returns
request representing the ongoing message transfer
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1946 of file comm_group.hpp.

+

Definition at line 1956 of file comm_group.hpp.

@@ -6847,7 +6843,7 @@

Examples
heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
-

Definition at line 1906 of file comm_group.hpp.

+

Definition at line 1916 of file comm_group.hpp.

@@ -6917,7 +6913,7 @@

Returns
request representing the ongoing receive operation
-

Definition at line 1922 of file comm_group.hpp.

+

Definition at line 1932 of file comm_group.hpp.

@@ -6982,7 +6978,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3936 of file comm_group.hpp.

+

Definition at line 3957 of file comm_group.hpp.

@@ -7054,7 +7050,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3780 of file comm_group.hpp.

+

Definition at line 3801 of file comm_group.hpp.

@@ -7126,7 +7122,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3987 of file comm_group.hpp.

+

Definition at line 4008 of file comm_group.hpp.

@@ -7205,7 +7201,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3803 of file comm_group.hpp.

+

Definition at line 3824 of file comm_group.hpp.

@@ -7270,7 +7266,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3910 of file comm_group.hpp.

+

Definition at line 3931 of file comm_group.hpp.

@@ -7342,7 +7338,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3959 of file comm_group.hpp.

+

Definition at line 3980 of file comm_group.hpp.

@@ -7414,7 +7410,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4279 of file comm_group.hpp.

+

Definition at line 4300 of file comm_group.hpp.

@@ -7479,7 +7475,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4206 of file comm_group.hpp.

+

Definition at line 4227 of file comm_group.hpp.

@@ -7551,7 +7547,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4230 of file comm_group.hpp.

+

Definition at line 4251 of file comm_group.hpp.

@@ -7615,7 +7611,7 @@

Returns
request representing the ongoing message transfer
Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1624 of file comm_group.hpp.

+

Definition at line 1634 of file comm_group.hpp.

@@ -7685,7 +7681,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 1642 of file comm_group.hpp.

+

Definition at line 1652 of file comm_group.hpp.

@@ -7756,7 +7752,7 @@

Returns
request representing the ongoing message transfer
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1667 of file comm_group.hpp.

+

Definition at line 1677 of file comm_group.hpp.

@@ -7786,10 +7782,10 @@

Returns
true if communicator is valid
Note
A default constructed communicator is a non valid communicator.
-
Examples
communicator.cc.
+
Examples
communicator.cc.
-

Definition at line 601 of file comm_group.hpp.

+

Definition at line 609 of file comm_group.hpp.

@@ -7854,7 +7850,7 @@

Returns
request representing the ongoing reduction operation

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4337 of file comm_group.hpp.

+

Definition at line 4358 of file comm_group.hpp.

@@ -7926,7 +7922,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4358 of file comm_group.hpp.

+

Definition at line 4379 of file comm_group.hpp.

@@ -7984,7 +7980,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4412 of file comm_group.hpp.

+

Definition at line 4433 of file comm_group.hpp.

@@ -8049,7 +8045,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4432 of file comm_group.hpp.

+

Definition at line 4453 of file comm_group.hpp.

@@ -8127,7 +8123,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3000 of file comm_group.hpp.

+

Definition at line 3019 of file comm_group.hpp.

@@ -8191,7 +8187,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2978 of file comm_group.hpp.

+

Definition at line 2997 of file comm_group.hpp.

@@ -8242,7 +8238,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3048 of file comm_group.hpp.

+

Definition at line 3067 of file comm_group.hpp.

@@ -8300,7 +8296,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3066 of file comm_group.hpp.

+

Definition at line 3085 of file comm_group.hpp.

@@ -8385,7 +8381,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3140 of file comm_group.hpp.

+

Definition at line 3159 of file comm_group.hpp.

@@ -8463,7 +8459,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3171 of file comm_group.hpp.

+

Definition at line 3190 of file comm_group.hpp.

@@ -8527,7 +8523,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3211 of file comm_group.hpp.

+

Definition at line 3230 of file comm_group.hpp.

@@ -8593,7 +8589,7 @@

Examples
heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
-

Definition at line 771 of file comm_group.hpp.

+

Definition at line 779 of file comm_group.hpp.

@@ -8663,7 +8659,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 789 of file comm_group.hpp.

+

Definition at line 797 of file comm_group.hpp.

@@ -8734,7 +8730,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
Returns
request representing the ongoing message transfer
-

Definition at line 814 of file comm_group.hpp.

+

Definition at line 822 of file comm_group.hpp.

@@ -8798,7 +8794,7 @@

Returns
request representing the ongoing message transfer
Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1347 of file comm_group.hpp.

+

Definition at line 1357 of file comm_group.hpp.

@@ -8868,7 +8864,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 1365 of file comm_group.hpp.

+

Definition at line 1375 of file comm_group.hpp.

@@ -8939,7 +8935,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
Returns
request representing the ongoing message transfer
-

Definition at line 1390 of file comm_group.hpp.

+

Definition at line 1400 of file comm_group.hpp.

@@ -8977,7 +8973,17 @@

-

Definition at line 2057 of file comm_group.hpp.

+

Blocking matched test for an incoming message.

+
Parameters
+ + + +
sourcerank of the sending process
ttag associated to this message
+
+
+
Returns
message handle and status of the pending message
+ +

Definition at line 2071 of file comm_group.hpp.

@@ -9007,7 +9013,7 @@

- message_t &  + message_t &  m  @@ -9041,7 +9047,7 @@

Returns
status of the receive operation
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 2136 of file comm_group.hpp.

+

Definition at line 2155 of file comm_group.hpp.

@@ -9065,7 +9071,7 @@

- message_t &  + message_t &  m  @@ -9098,7 +9104,7 @@

Returns
status of the receive operation
Note
Receiving STL containers is not supported.
-

Definition at line 2102 of file comm_group.hpp.

+

Definition at line 2121 of file comm_group.hpp.

@@ -9128,7 +9134,7 @@

- message_t &  + message_t &  m  @@ -9161,7 +9167,7 @@

Returns
status of the receive operation
-

Definition at line 2115 of file comm_group.hpp.

+

Definition at line 2134 of file comm_group.hpp.

@@ -9743,9 +9749,15 @@

Tests for identity of communicators.

+
Parameters
+ + +
othercommunicator to compare with
+
+
Returns
true if not identical
-

Definition at line 583 of file comm_group.hpp.

+

Definition at line 590 of file comm_group.hpp.

@@ -9848,9 +9860,15 @@

Tests for identity of communicators.

+
Parameters
+ + +
othercommunicator to compare with
+
+
Returns
true if identical
-

Definition at line 575 of file comm_group.hpp.

+

Definition at line 581 of file comm_group.hpp.

@@ -9957,10 +9975,10 @@

Returns
status of the pending message
-
Examples
probe.cc.
+
Examples
probe.cc.
-

Definition at line 2030 of file comm_group.hpp.

+

Definition at line 2040 of file comm_group.hpp.

@@ -9989,10 +10007,10 @@

Returns
the rank of the calling process in the communicator

-
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
+
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
-

Definition at line 567 of file comm_group.hpp.

+

Definition at line 572 of file comm_group.hpp.

@@ -10063,7 +10081,7 @@

Returns
status of the receive operation

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1845 of file comm_group.hpp.

+

Definition at line 1855 of file comm_group.hpp.

@@ -10127,7 +10145,7 @@

Returns
status of the receive operation
Note
Receiving STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1807 of file comm_group.hpp.

+

Definition at line 1817 of file comm_group.hpp.

@@ -10197,7 +10215,7 @@

Returns
status of the receive operation
-

Definition at line 1822 of file comm_group.hpp.

+

Definition at line 1832 of file comm_group.hpp.

@@ -10268,7 +10286,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 2013 of file comm_group.hpp.

+

Definition at line 2023 of file comm_group.hpp.

@@ -10332,7 +10350,7 @@

Returns
persistent communication request
Note
Receiving STL containers is not supported.
-

Definition at line 1970 of file comm_group.hpp.

+

Definition at line 1980 of file comm_group.hpp.

@@ -10402,7 +10420,7 @@

Returns
persistent communication request
-

Definition at line 1989 of file comm_group.hpp.

+

Definition at line 1999 of file comm_group.hpp.

@@ -10466,7 +10484,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3847 of file comm_group.hpp.

+

Definition at line 3868 of file comm_group.hpp.

@@ -10536,10 +10554,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc, reduce_lcm.cc, and reduce_min_loc.cc.
+
Examples
collective.cc, reduce_lcm.cc, and reduce_min_loc.cc.
-

Definition at line 3738 of file comm_group.hpp.

+

Definition at line 3759 of file comm_group.hpp.

@@ -10610,7 +10628,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 3889 of file comm_group.hpp.

+

Definition at line 3910 of file comm_group.hpp.

@@ -10688,7 +10706,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3759 of file comm_group.hpp.

+

Definition at line 3780 of file comm_group.hpp.

@@ -10752,7 +10770,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3825 of file comm_group.hpp.

+

Definition at line 3846 of file comm_group.hpp.

@@ -10823,7 +10841,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3866 of file comm_group.hpp.

+

Definition at line 3887 of file comm_group.hpp.

@@ -10894,7 +10912,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4255 of file comm_group.hpp.

+

Definition at line 4276 of file comm_group.hpp.

@@ -10958,7 +10976,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4164 of file comm_group.hpp.

+

Definition at line 4185 of file comm_group.hpp.

@@ -11029,7 +11047,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4184 of file comm_group.hpp.

+

Definition at line 4205 of file comm_group.hpp.

@@ -11092,7 +11110,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1509 of file comm_group.hpp.

+

Definition at line 1519 of file comm_group.hpp.

@@ -11161,7 +11179,7 @@

Definition at line 1525 of file comm_group.hpp.

+

Definition at line 1535 of file comm_group.hpp.

@@ -11231,7 +11249,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1546 of file comm_group.hpp.

+

Definition at line 1556 of file comm_group.hpp.

@@ -11295,7 +11313,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 1691 of file comm_group.hpp.

+

Definition at line 1701 of file comm_group.hpp.

@@ -11365,7 +11383,7 @@

Returns
persistent communication request
-

Definition at line 1710 of file comm_group.hpp.

+

Definition at line 1720 of file comm_group.hpp.

@@ -11436,7 +11454,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1735 of file comm_group.hpp.

+

Definition at line 1745 of file comm_group.hpp.

@@ -11500,7 +11518,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4301 of file comm_group.hpp.

+

Definition at line 4322 of file comm_group.hpp.

@@ -11571,7 +11589,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4318 of file comm_group.hpp.

+

Definition at line 4339 of file comm_group.hpp.

@@ -11628,7 +11646,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4377 of file comm_group.hpp.

+

Definition at line 4398 of file comm_group.hpp.

@@ -11692,7 +11710,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4394 of file comm_group.hpp.

+

Definition at line 4415 of file comm_group.hpp.

@@ -11769,7 +11787,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2957 of file comm_group.hpp.

+

Definition at line 2976 of file comm_group.hpp.

@@ -11831,10 +11849,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc.
+
Examples
collective.cc.
-

Definition at line 2939 of file comm_group.hpp.

+

Definition at line 2958 of file comm_group.hpp.

@@ -11884,7 +11902,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.

-

Definition at line 3018 of file comm_group.hpp.

+

Definition at line 3037 of file comm_group.hpp.

@@ -11941,7 +11959,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3032 of file comm_group.hpp.

+

Definition at line 3051 of file comm_group.hpp.

@@ -12027,7 +12045,7 @@

Examples
distributed_grid_scatter_gather.cc, heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
-

Definition at line 3091 of file comm_group.hpp.

+

Definition at line 3110 of file comm_group.hpp.

@@ -12104,7 +12122,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3119 of file comm_group.hpp.

+

Definition at line 3138 of file comm_group.hpp.

@@ -12167,7 +12185,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3188 of file comm_group.hpp.

+

Definition at line 3207 of file comm_group.hpp.

@@ -12230,7 +12248,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 657 of file comm_group.hpp.

+

Definition at line 665 of file comm_group.hpp.

@@ -12299,7 +12317,7 @@

Definition at line 673 of file comm_group.hpp.

+

Definition at line 681 of file comm_group.hpp.

@@ -12369,7 +12387,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 694 of file comm_group.hpp.

+

Definition at line 702 of file comm_group.hpp.

@@ -12433,7 +12451,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 838 of file comm_group.hpp.

+

Definition at line 846 of file comm_group.hpp.

@@ -12503,7 +12521,7 @@

Returns
persistent communication request
-

Definition at line 857 of file comm_group.hpp.

+

Definition at line 865 of file comm_group.hpp.

@@ -12574,7 +12592,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 882 of file comm_group.hpp.

+

Definition at line 890 of file comm_group.hpp.

@@ -12660,7 +12678,7 @@

Examples
distributed_grid.cc.
-

Definition at line 2227 of file comm_group.hpp.

+

Definition at line 2246 of file comm_group.hpp.

@@ -12758,7 +12776,7 @@

Returns
status of the receive operation
-

Definition at line 2254 of file comm_group.hpp.

+

Definition at line 2273 of file comm_group.hpp.

@@ -12857,7 +12875,7 @@

Returns
status of the receive operation
-

Definition at line 2289 of file comm_group.hpp.

+

Definition at line 2308 of file comm_group.hpp.

@@ -12941,7 +12959,7 @@

Returns
status of the receive operation
-

Definition at line 2376 of file comm_group.hpp.

+

Definition at line 2395 of file comm_group.hpp.

@@ -13018,7 +13036,7 @@

Returns
status of the receive operation
-

Definition at line 2324 of file comm_group.hpp.

+

Definition at line 2343 of file comm_group.hpp.

@@ -13102,7 +13120,7 @@

Returns
status of the receive operation
-

Definition at line 2348 of file comm_group.hpp.

+

Definition at line 2367 of file comm_group.hpp.

@@ -13131,10 +13149,10 @@

Returns
number of processes
-
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
+
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
-

Definition at line 559 of file comm_group.hpp.

+

Definition at line 564 of file comm_group.hpp.

@@ -13197,7 +13215,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.

-

Definition at line 1236 of file comm_group.hpp.

+

Definition at line 1246 of file comm_group.hpp.

@@ -13266,7 +13284,7 @@

Definition at line 1251 of file comm_group.hpp.

+

Definition at line 1261 of file comm_group.hpp.

@@ -13336,7 +13354,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1272 of file comm_group.hpp.

+

Definition at line 1282 of file comm_group.hpp.

@@ -13400,7 +13418,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 1414 of file comm_group.hpp.

+

Definition at line 1424 of file comm_group.hpp.

@@ -13470,7 +13488,7 @@

Returns
persistent communication request
-

Definition at line 1433 of file comm_group.hpp.

+

Definition at line 1443 of file comm_group.hpp.

@@ -13541,7 +13559,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1458 of file comm_group.hpp.

+

Definition at line 1468 of file comm_group.hpp.

@@ -13568,7 +13586,7 @@

Definition at line 313 of file comm_group.hpp.

+

Definition at line 316 of file comm_group.hpp.

@@ -13593,7 +13611,7 @@

indicates that communicators are identical, i.e., communicators have same the members in same rank order but different context

-

Definition at line 300 of file comm_group.hpp.

+

Definition at line 303 of file comm_group.hpp.

@@ -13619,7 +13637,7 @@

Definition at line 320 of file comm_group.hpp.

+

Definition at line 323 of file comm_group.hpp.

@@ -13644,7 +13662,7 @@

indicates that communicators are identical, i.e., communicators represent the same communication context

-

Definition at line 297 of file comm_group.hpp.

+

Definition at line 300 of file comm_group.hpp.

@@ -13669,7 +13687,7 @@

indicates that communicators are similar, i.e., communicators have same tha members in different rank order

-

Definition at line 303 of file comm_group.hpp.

+

Definition at line 306 of file comm_group.hpp.

@@ -13694,10 +13712,10 @@

Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgroups.

-
Examples
communicator.cc.
+
Examples
communicator.cc.
-

Definition at line 327 of file comm_group.hpp.

+

Definition at line 330 of file comm_group.hpp.

@@ -13723,7 +13741,7 @@

Definition at line 334 of file comm_group.hpp.

+

Definition at line 337 of file comm_group.hpp.

@@ -13748,7 +13766,7 @@

indicates that communicators are unequal, i.e., communicators have different sets of members

-

Definition at line 306 of file comm_group.hpp.

+

Definition at line 309 of file comm_group.hpp.

@@ -13760,7 +13778,7 @@

diff --git a/docs/html/classmpl_1_1distributed__graph__communicator_1_1neighbours__set-members.html b/docs/html/classmpl_1_1distributed__graph__communicator_1_1neighbours__set-members.html index 7df86a08..48ab7ca4 100644 --- a/docs/html/classmpl_1_1distributed__graph__communicator_1_1neighbours__set-members.html +++ b/docs/html/classmpl_1_1distributed__graph__communicator_1_1neighbours__set-members.html @@ -90,14 +90,14 @@

This is the complete list of members for mpl::distributed_graph_communicator::neighbours_set, including all inherited members.

- - - + + + - + - +
add(const value_type &edge)mpl::distributed_graph_communicator::neighbours_setinline
const_iterator typedefmpl::distributed_graph_communicator::neighbours_set
const_reference typedefmpl::distributed_graph_communicator::neighbours_set
iterator typedefmpl::distributed_graph_communicator::neighbours_set
const_iterator typedef (defined in mpl::distributed_graph_communicator::neighbours_set)mpl::distributed_graph_communicator::neighbours_set
const_reference typedef (defined in mpl::distributed_graph_communicator::neighbours_set)mpl::distributed_graph_communicator::neighbours_set
iterator typedef (defined in mpl::distributed_graph_communicator::neighbours_set)mpl::distributed_graph_communicator::neighbours_set
neighbours_set()=defaultmpl::distributed_graph_communicator::neighbours_set
neighbours_set(std::initializer_list< value_type > init)mpl::distributed_graph_communicator::neighbours_setinline
reference typedefmpl::distributed_graph_communicator::neighbours_set
reference typedef (defined in mpl::distributed_graph_communicator::neighbours_set)mpl::distributed_graph_communicator::neighbours_set
size() constmpl::distributed_graph_communicator::neighbours_setinline
value_type typedefmpl::distributed_graph_communicator::neighbours_set
value_type typedef (defined in mpl::distributed_graph_communicator::neighbours_set)mpl::distributed_graph_communicator::neighbours_set
diff --git a/docs/html/classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html b/docs/html/classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html index 2126c821..c4cb7ab3 100644 --- a/docs/html/classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html +++ b/docs/html/classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html @@ -129,16 +129,17 @@ - - + + - + - +

Public Member Functions

 neighbours_set ()=default
 Creates an empty set of edges. More...
neighbours_set ()=default
 Creates an empty set of edges.
 
 neighbours_set (std::initializer_list< value_type > init)
 neighbours_set (std::initializer_list< value_type > init)
 Creates a set of edges given by the list. More...
 
int size () const
 Determines the number edges. More...
 
void add (const value_type &edge)
void add (const value_type &edge)
 Add an additional edge to the set. More...
 
@@ -154,7 +155,7 @@

- +
using mpl::distributed_graph_communicator::neighbours_set::const_iterator = typename base::const_iteratorusing mpl::distributed_graph_communicator::neighbours_set::const_iterator = typename base::const_iterator
@@ -228,35 +229,8 @@

Constructor & Destructor Documentation

- -

◆ neighbours_set() [1/2]

- -
-
- - - - - -
- - - - - - - -
mpl::distributed_graph_communicator::neighbours_set::neighbours_set ()
-
-default
-
- -

Creates an empty set of edges.

- -
-
-

◆ neighbours_set() [2/2]

+

◆ neighbours_set()

diff --git a/docs/html/classmpl_1_1distributed__graph__communicator_1_1neighbours__set.js b/docs/html/classmpl_1_1distributed__graph__communicator_1_1neighbours__set.js index 6fe06378..3dafd80e 100644 --- a/docs/html/classmpl_1_1distributed__graph__communicator_1_1neighbours__set.js +++ b/docs/html/classmpl_1_1distributed__graph__communicator_1_1neighbours__set.js @@ -1,10 +1,5 @@ var classmpl_1_1distributed__graph__communicator_1_1neighbours__set = [ - [ "const_iterator", "classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a5425d74e6c4cea81f2d26501e09d256b", null ], - [ "const_reference", "classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#ac78cd1aea35357b5a113b50abec60a75", null ], - [ "iterator", "classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a855d65e72816eaa7d08fc4db9feb5df0", null ], - [ "reference", "classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a8bfae66c480cea453e5efc29a48caa86", null ], - [ "value_type", "classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#abde052dc7aa30e7322ae4f110e099a28", null ], [ "neighbours_set", "classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#ac33e4cd06803a0e689a73d737a39f815", null ], [ "neighbours_set", "classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#aa7dded0f45c35d7c28a87e443ddac33f", null ], [ "add", "classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a16981b82ed0e23bc5ee44294fec1b4af", null ], diff --git a/docs/html/classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair-members.html b/docs/html/classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair-members.html index b8677ba5..2079940b 100644 --- a/docs/html/classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair-members.html +++ b/docs/html/classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair-members.html @@ -89,9 +89,9 @@

This is the complete list of members for mpl::distributed_graph_communicator::rank_weight_pair, including all inherited members.

- + - +
rankmpl::distributed_graph_communicator::rank_weight_pair
rank (defined in mpl::distributed_graph_communicator::rank_weight_pair)mpl::distributed_graph_communicator::rank_weight_pair
rank_weight_pair(int rank, int weight=0)mpl::distributed_graph_communicator::rank_weight_pairinline
weightmpl::distributed_graph_communicator::rank_weight_pair
weight (defined in mpl::distributed_graph_communicator::rank_weight_pair)mpl::distributed_graph_communicator::rank_weight_pair
diff --git a/docs/html/classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html b/docs/html/classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html index d3eea86e..4b72fb9c 100644 --- a/docs/html/classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html +++ b/docs/html/classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html @@ -106,7 +106,7 @@ - +

Public Member Functions

 rank_weight_pair (int rank, int weight=0)
 rank_weight_pair (int rank, int weight=0)
 Creates a rank-weight pair. More...
 
@@ -203,7 +203,7 @@

diff --git a/docs/html/classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.js b/docs/html/classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.js index 660e1ed4..231ff0ff 100644 --- a/docs/html/classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.js +++ b/docs/html/classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.js @@ -1,6 +1,4 @@ var classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair = [ - [ "rank_weight_pair", "classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#a26f5274dd9650e3feb1c245e4560bb19", null ], - [ "rank", "classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#a8e6c3be2673ad743f58a418650176ba6", null ], - [ "weight", "classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#afae44c103e3457db3608ccbe5a0a0b03", null ] + [ "rank_weight_pair", "classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#a26f5274dd9650e3feb1c245e4560bb19", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1distributed__grid.html b/docs/html/classmpl_1_1distributed__grid.html index f1a02202..0f3ba138 100644 --- a/docs/html/classmpl_1_1distributed__grid.html +++ b/docs/html/classmpl_1_1distributed__grid.html @@ -951,7 +951,7 @@

Returns
grid index
-
Examples
distributed_grid.cc.
+
Examples
distributed_grid.cc.

Definition at line 257 of file distributed_grid.hpp.

@@ -992,7 +992,7 @@

Returns
grid index

-
Examples
distributed_grid.cc.
+
Examples
distributed_grid.cc.

Definition at line 263 of file distributed_grid.hpp.

@@ -1553,7 +1553,7 @@

Returns
local grid size

-
Examples
distributed_grid_scatter_gather.cc.
+
Examples
distributed_grid_scatter_gather.cc.

Definition at line 239 of file distributed_grid.hpp.

@@ -1606,7 +1606,7 @@

diff --git a/docs/html/classmpl_1_1distributed__grid_1_1dimensions-members.html b/docs/html/classmpl_1_1distributed__grid_1_1dimensions-members.html index 92e3eef9..04821447 100644 --- a/docs/html/classmpl_1_1distributed__grid_1_1dimensions-members.html +++ b/docs/html/classmpl_1_1distributed__grid_1_1dimensions-members.html @@ -89,27 +89,27 @@

This is the complete list of members for mpl::distributed_grid< dim, T, A >::dimensions, including all inherited members.

- - - - - - + + + + + + - - - - - - - - + + + + + + + + - + - +
begin()mpl::distributed_grid< dim, T, A >::dimensionsinline
begin() constmpl::distributed_grid< dim, T, A >::dimensionsinline
cbegin() constmpl::distributed_grid< dim, T, A >::dimensionsinline
cend() constmpl::distributed_grid< dim, T, A >::dimensionsinline
const_iterator typedefmpl::distributed_grid< dim, T, A >::dimensions
const_reference typedefmpl::distributed_grid< dim, T, A >::dimensions
begin() (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensionsinline
begin() const (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensionsinline
cbegin() const (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensionsinline
cend() const (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensionsinline
const_iterator typedef (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensions
const_reference typedef (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensions
dimensionality() constmpl::distributed_grid< dim, T, A >::dimensionsinline
dimensions(const size_overlap_pair &size_0)mpl::distributed_grid< dim, T, A >::dimensionsinline
dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1)mpl::distributed_grid< dim, T, A >::dimensionsinline
dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1, const size_overlap_pair &size_2)mpl::distributed_grid< dim, T, A >::dimensionsinline
dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1, const size_overlap_pair &size_2, const size_overlap_pair &size_3)mpl::distributed_grid< dim, T, A >::dimensionsinline
distributed_gridmpl::distributed_grid< dim, T, A >::dimensionsfriend
end()mpl::distributed_grid< dim, T, A >::dimensionsinline
end() constmpl::distributed_grid< dim, T, A >::dimensionsinline
iterator typedefmpl::distributed_grid< dim, T, A >::dimensions
dimensions(const size_overlap_pair &size_0) (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensionsinline
dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1) (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensionsinline
dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1, const size_overlap_pair &size_2) (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensionsinline
dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1, const size_overlap_pair &size_2, const size_overlap_pair &size_3) (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensionsinline
distributed_grid (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensionsfriend
end() (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensionsinline
end() const (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensionsinline
iterator typedef (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensions
operator[](size_type dimension) constmpl::distributed_grid< dim, T, A >::dimensionsinline
operator[](size_type dimension)mpl::distributed_grid< dim, T, A >::dimensionsinline
overlap(size_type dimension) constmpl::distributed_grid< dim, T, A >::dimensionsinline
reference typedefmpl::distributed_grid< dim, T, A >::dimensions
reference typedef (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensions
size(size_type dimension) constmpl::distributed_grid< dim, T, A >::dimensionsinline
value_type typedefmpl::distributed_grid< dim, T, A >::dimensions
value_type typedef (defined in mpl::distributed_grid< dim, T, A >::dimensions)mpl::distributed_grid< dim, T, A >::dimensions
diff --git a/docs/html/classmpl_1_1distributed__grid_1_1dimensions.html b/docs/html/classmpl_1_1distributed__grid_1_1dimensions.html index 879693e7..b8166e8a 100644 --- a/docs/html/classmpl_1_1distributed__grid_1_1dimensions.html +++ b/docs/html/classmpl_1_1distributed__grid_1_1dimensions.html @@ -113,9 +113,9 @@   using const_reference = const size_overlap_pair &   -using iterator = typename std::array< size_overlap_pair, dim >::iterator +using iterator = typename std::array< size_overlap_pair, dim >::iterator   -using const_iterator = typename std::array< size_overlap_pair, dim >::const_iterator +using const_iterator = typename std::array< size_overlap_pair, dim >::const_iterator   - + - + - + - + - + - + - + - +

@@ -137,23 +137,23 @@

size_type overlap (size_type dimension) const
 Determines the overlap size of a dimension. More...
 
const_reference operator[] (size_type dimension) const
const_reference operator[] (size_type dimension) const
 Determines then total size along a dimension and the overlap of a dimension. More...
 
reference operator[] (size_type dimension)
reference operator[] (size_type dimension)
 Determines then total size along a dimension and the overlap of a dimension. More...
 
iterator begin ()
iterator begin ()
 
const_iterator begin () const
const_iterator begin () const
 
const_iterator cbegin () const
const_iterator cbegin () const
 
iterator end ()
iterator end ()
 
const_iterator end () const
const_iterator end () const
 
const_iterator cend () const
const_iterator cend () const
 
- +

@@ -176,7 +176,7 @@

using mpl::distributed_grid< dim, T, A >::dimensions::const_iterator = typename std::array<size_overlap_pair, dim>::const_iteratorusing mpl::distributed_grid< dim, T, A >::dimensions::const_iterator = typename std::array<size_overlap_pair, dim>::const_iterator
@@ -212,7 +212,7 @@

- using mpl::distributed_grid< dim, T, A >::dimensions::iterator = typename std::array<size_overlap_pair, dim>::iterator + using mpl::distributed_grid< dim, T, A >::dimensions::iterator = typename std::array<size_overlap_pair, dim>::iterator

@@ -439,7 +439,7 @@

- + @@ -468,7 +468,7 @@

iterator mpl::distributed_grid< dim, T, A >::dimensions::begin iterator mpl::distributed_grid< dim, T, A >::dimensions::begin ( )
- + @@ -497,7 +497,7 @@

const_iterator mpl::distributed_grid< dim, T, A >::dimensions::begin const_iterator mpl::distributed_grid< dim, T, A >::dimensions::begin ( ) const
- + @@ -526,7 +526,7 @@

const_iterator mpl::distributed_grid< dim, T, A >::dimensions::cbegin const_iterator mpl::distributed_grid< dim, T, A >::dimensions::cbegin ( ) const
- + @@ -587,7 +587,7 @@

const_iterator mpl::distributed_grid< dim, T, A >::dimensions::cend const_iterator mpl::distributed_grid< dim, T, A >::dimensions::cend ( ) const
- + @@ -616,7 +616,7 @@

iterator mpl::distributed_grid< dim, T, A >::dimensions::end iterator mpl::distributed_grid< dim, T, A >::dimensions::end ( )
- + @@ -645,7 +645,7 @@

const_iterator mpl::distributed_grid< dim, T, A >::dimensions::end const_iterator mpl::distributed_grid< dim, T, A >::dimensions::end ( ) const
- + @@ -684,7 +684,7 @@

reference mpl::distributed_grid< dim, T, A >::dimensions::operator[] reference mpl::distributed_grid< dim, T, A >::dimensions::operator[] ( size_type  dimension)
- + @@ -824,7 +824,7 @@

diff --git a/docs/html/classmpl_1_1distributed__grid_1_1dimensions.js b/docs/html/classmpl_1_1distributed__grid_1_1dimensions.js index 0ebf3f8e..7f84d713 100644 --- a/docs/html/classmpl_1_1distributed__grid_1_1dimensions.js +++ b/docs/html/classmpl_1_1distributed__grid_1_1dimensions.js @@ -1,24 +1,8 @@ var classmpl_1_1distributed__grid_1_1dimensions = [ - [ "const_iterator", "classmpl_1_1distributed__grid_1_1dimensions.html#a633df14d612a5a06aecb6a7a4f2775f0", null ], - [ "const_reference", "classmpl_1_1distributed__grid_1_1dimensions.html#ac16a09ce9008a9260e3d750562a45ced", null ], - [ "iterator", "classmpl_1_1distributed__grid_1_1dimensions.html#ab6a1c5e822586134f597b059eb00000d", null ], - [ "reference", "classmpl_1_1distributed__grid_1_1dimensions.html#a777b0b3479a3be7b092eebfe42a2e923", null ], - [ "value_type", "classmpl_1_1distributed__grid_1_1dimensions.html#a1104ae5dc102133af3801569848e3052", null ], - [ "dimensions", "classmpl_1_1distributed__grid_1_1dimensions.html#a12485247b1062d3f0f73c858185f51bb", null ], - [ "dimensions", "classmpl_1_1distributed__grid_1_1dimensions.html#aa006903038282202482f8d5fed47d765", null ], - [ "dimensions", "classmpl_1_1distributed__grid_1_1dimensions.html#a6b31044ed4f19efd4b5f11e922c197ce", null ], - [ "dimensions", "classmpl_1_1distributed__grid_1_1dimensions.html#a71f1e2fb5473cb5f4740f77b4981bca6", null ], - [ "begin", "classmpl_1_1distributed__grid_1_1dimensions.html#ad909c366be2bae287f8ea2051ae4be4a", null ], - [ "begin", "classmpl_1_1distributed__grid_1_1dimensions.html#a4aa7c8f061a34d093429d3116d1f4738", null ], - [ "cbegin", "classmpl_1_1distributed__grid_1_1dimensions.html#a970cdde63ec39539cf1f2cd8e8b290da", null ], - [ "cend", "classmpl_1_1distributed__grid_1_1dimensions.html#a39a982a284a1c264dc9b2c633be8f920", null ], [ "dimensionality", "classmpl_1_1distributed__grid_1_1dimensions.html#a4234269aff1b0e9aaeb3646c5c5e59c4", null ], - [ "end", "classmpl_1_1distributed__grid_1_1dimensions.html#a691847323bb99bfaaadc32aea94b77a4", null ], - [ "end", "classmpl_1_1distributed__grid_1_1dimensions.html#ab40f9a1d115aee074419bc689b607d8b", null ], [ "operator[]", "classmpl_1_1distributed__grid_1_1dimensions.html#a9be7d0688024430750b7375e48f0ddb5", null ], [ "operator[]", "classmpl_1_1distributed__grid_1_1dimensions.html#a894d21035df664610e1400581025ca7d", null ], [ "overlap", "classmpl_1_1distributed__grid_1_1dimensions.html#a67917c6df24d025069ae3d703edd69aa", null ], - [ "size", "classmpl_1_1distributed__grid_1_1dimensions.html#a7ef66eeee954466bec93ae54ce2f1de9", null ], - [ "distributed_grid", "classmpl_1_1distributed__grid_1_1dimensions.html#aed92b0c67390eff049ba51342c40fa6f", null ] + [ "size", "classmpl_1_1distributed__grid_1_1dimensions.html#a7ef66eeee954466bec93ae54ce2f1de9", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1distributed__grid_1_1size__overlap__pair.html b/docs/html/classmpl_1_1distributed__grid_1_1size__overlap__pair.html index 51cf194e..9d18c158 100644 --- a/docs/html/classmpl_1_1distributed__grid_1_1size__overlap__pair.html +++ b/docs/html/classmpl_1_1distributed__grid_1_1size__overlap__pair.html @@ -216,7 +216,7 @@

diff --git a/docs/html/classmpl_1_1empty__layout.html b/docs/html/classmpl_1_1empty__layout.html index 299aa127..6c39965c 100644 --- a/docs/html/classmpl_1_1empty__layout.html +++ b/docs/html/classmpl_1_1empty__layout.html @@ -133,46 +133,46 @@

- + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -189,7 +189,7 @@
See also
inherits all member methods of layout
-
Examples
matrix_gather.cc.
+
Examples
matrix_gather.cc.

Definition at line 401 of file layout.hpp.

@@ -314,7 +314,7 @@

const_reference mpl::distributed_grid< dim, T, A >::dimensions::operator[] const_reference mpl::distributed_grid< dim, T, A >::dimensions::operator[] ( size_type  dimension)
void swap (empty_layout< T > &other)
 exchanges two empty layouts More...
 
ssize_t byte_extent () const
ssize_t byte_extent () const
 Get the byte extent of the layout. More...
 
ssize_t byte_lower_bound () const
ssize_t byte_lower_bound () const
 Get the byte lower bound of the layout. More...
 
ssize_t byte_upper_bound () const
ssize_t byte_upper_bound () const
 Get the byte upper bound of the layout. More...
 
ssize_t extent () const
ssize_t extent () const
 Get the extent of the layout. More...
 
ssize_t lower_bound () const
ssize_t lower_bound () const
 Get the lower bound of the layout. More...
 
ssize_t upper_bound () const
ssize_t upper_bound () const
 Get the upper bound of the layout. More...
 
ssize_t true_byte_extent () const
ssize_t true_byte_extent () const
 Get the true byte extent of the layout. More...
 
ssize_t true_byte_lower_bound () const
ssize_t true_byte_lower_bound () const
 Get the true byte lower bound of the layout. More...
 
ssize_t true_byte_upper_bound () const
ssize_t true_byte_upper_bound () const
 Get the true byte upper bound of the layout. More...
 
ssize_t true_extent () const
ssize_t true_extent () const
 Get the true extent of the layout. More...
 
ssize_t true_lower_bound () const
ssize_t true_lower_bound () const
 Get the true lower bound of the layout. More...
 
ssize_t true_upper_bound () const
ssize_t true_upper_bound () const
 Get the true upper bound of the layout. More...
 
void byte_resize (ssize_t lb, ssize_t extent)
void byte_resize (ssize_t lb, ssize_t extent)
 Resize the layout. More...
 
void resize (ssize_t lb, ssize_t extent)
void resize (ssize_t lb, ssize_t extent)
 Resize the layout. More...
 
void swap (layout &l)
- + @@ -348,7 +348,7 @@

ssize_t mpl::layout< T >::byte_extent ssize_t mpl::layout< T >::byte_extent ( ) const
- + @@ -386,13 +386,13 @@

void mpl::layout< T >::byte_resize

- + - + @@ -433,7 +433,7 @@

ssize_t mpl::layout< T >::byte_lower_bound ssize_t mpl::layout< T >::byte_lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -469,7 +469,7 @@

ssize_t mpl::layout< T >::byte_upper_bound ssize_t mpl::layout< T >::byte_upper_bound ( ) const
- + @@ -503,7 +503,7 @@

ssize_t mpl::layout< T >::extent ssize_t mpl::layout< T >::extent ( ) const
- + @@ -615,13 +615,13 @@

void mpl::layout< T >::resize

- + - + @@ -645,7 +645,7 @@

Examples
layouts.cc.
+
Examples
layouts.cc.

Definition at line 314 of file layout.hpp.

@@ -740,7 +740,7 @@

ssize_t mpl::layout< T >::lower_bound ssize_t mpl::layout< T >::lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -774,7 +774,7 @@

ssize_t mpl::layout< T >::true_byte_extent ssize_t mpl::layout< T >::true_byte_extent ( ) const
- + @@ -810,7 +810,7 @@

ssize_t mpl::layout< T >::true_byte_lower_bound ssize_t mpl::layout< T >::true_byte_lower_bound ( ) const
- + @@ -846,7 +846,7 @@

ssize_t mpl::layout< T >::true_byte_upper_bound ssize_t mpl::layout< T >::true_byte_upper_bound ( ) const
- + @@ -880,7 +880,7 @@

ssize_t mpl::layout< T >::true_extent ssize_t mpl::layout< T >::true_extent ( ) const
- + @@ -916,7 +916,7 @@

ssize_t mpl::layout< T >::true_lower_bound ssize_t mpl::layout< T >::true_lower_bound ( ) const
- + @@ -952,7 +952,7 @@

ssize_t mpl::layout< T >::true_upper_bound ssize_t mpl::layout< T >::true_upper_bound ( ) const
- + @@ -984,7 +984,7 @@

diff --git a/docs/html/classmpl_1_1error.html b/docs/html/classmpl_1_1error.html index 8b1899d0..711b51ff 100644 --- a/docs/html/classmpl_1_1error.html +++ b/docs/html/classmpl_1_1error.html @@ -204,7 +204,7 @@

diff --git a/docs/html/classmpl_1_1graph__communicator.html b/docs/html/classmpl_1_1graph__communicator.html index 7de7be31..6b6ff8af 100644 --- a/docs/html/classmpl_1_1graph__communicator.html +++ b/docs/html/classmpl_1_1graph__communicator.html @@ -143,8 +143,9 @@

ssize_t mpl::layout< T >::upper_bound ssize_t mpl::layout< T >::upper_bound ( ) const
- - + + @@ -296,11 +297,11 @@ - + - + @@ -453,31 +454,33 @@ + + - + - + - + - + - + - + @@ -963,40 +966,13 @@

Definition at line 281 of file comm_group.hpp.

+

Definition at line 284 of file comm_group.hpp.

Constructor & Destructor Documentation

- -

◆ graph_communicator() [1/4]

- -
-
-

Public Member Functions

 graph_communicator ()=default
 Creates an empty communicator with no associated process. More...
graph_communicator ()=default
 Creates an empty communicator with no associated process.
 
 graph_communicator (const graph_communicator &other)
 Creates a new communicator which is equivalent to an existing one. More...
 
template<typename T >
int bsend_size (int number=1) const
 determines the message buffer size More...
 Determines the message buffer size. More...
 
template<typename T >
int bsend_size (const layout< T > &l, int number=1) const
 determines the message buffer size More...
 Determines the message buffer size. More...
 
template<typename T >
void bsend (const T &data, int destination, tag_t t=tag_t(0)) const
 Non-blocking test for an incoming message. More...
 
mprobe_status mprobe (int source, tag_t t=tag_t(0)) const
 Blocking matched test for an incoming message. More...
 
std::optional< mprobe_statusimprobe (int source, tag_t t=tag_t(0)) const
 Blocking matched test for an incoming message. More...
 
template<typename T >
status_t mrecv (T &data, message_t &m) const
status_t mrecv (T &data, message_t &m) const
 Receives a message with a single value by a message handle. More...
 
template<typename T >
status_t mrecv (T *data, const layout< T > &l, message_t &m) const
status_t mrecv (T *data, const layout< T > &l, message_t &m) const
 Receives a message with a several values having a specific memory layout by a message handle. More...
 
template<typename iterT >
status_t mrecv (iterT begin, iterT end, message_t &m) const
status_t mrecv (iterT begin, iterT end, message_t &m) const
 Receives a message with a several values given by a pair of iterators by a message handle. More...
 
template<typename T >
irequest imrecv (T &data, message_t &m) const
irequest imrecv (T &data, message_t &m) const
 Receives a message with a single value via a non-blocking receive operation by a message handle. More...
 
template<typename T >
irequest imrecv (T *data, const layout< T > &l, message_t &m) const
irequest imrecv (T *data, const layout< T > &l, message_t &m) const
 Receives a message with several values having a specific memory layout via a non-blocking receive operation by a message handle. More...
 
template<typename iterT >
irequest imrecv (iterT begin, iterT end, message_t &m) const
irequest imrecv (iterT begin, iterT end, message_t &m) const
 Receives a message with a several values given by a pair of iterators via a non-blocking receive operation. More...
 
template<typename T >
- - - - -
- - - - - - - -
mpl::graph_communicator::graph_communicator ()
-
-default
-

- -

Creates an empty communicator with no associated process.

- -
- -

◆ graph_communicator() [2/4]

+

◆ graph_communicator() [1/3]

@@ -1033,7 +1009,7 @@

-

◆ graph_communicator() [3/4]

+

◆ graph_communicator() [2/3]

@@ -1069,7 +1045,7 @@

-

◆ graph_communicator() [4/4]

+

◆ graph_communicator() [3/3]

-
Examples
arrays.cc, iterators.cc, standard_types.cc, stl_container.cc, and struct.cc.
+
Examples
arrays.cc, iterators.cc, standard_types.cc, stl_container.cc, and struct.cc.
-

Definition at line 606 of file comm_group.hpp.

+

Definition at line 614 of file comm_group.hpp.

@@ -1214,10 +1190,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-
Examples
parallel_sort_mpl.cc.
+
Examples
parallel_sort_mpl.cc.
-

Definition at line 2784 of file comm_group.hpp.

+

Definition at line 2803 of file comm_group.hpp.

@@ -1287,7 +1263,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 2799 of file comm_group.hpp.

+

Definition at line 2818 of file comm_group.hpp.

@@ -1357,7 +1333,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2880 of file comm_group.hpp.

+

Definition at line 2899 of file comm_group.hpp.

@@ -1434,7 +1410,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2859 of file comm_group.hpp.

+

Definition at line 2878 of file comm_group.hpp.

@@ -1497,10 +1473,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc, and communicator.cc.
+
Examples
collective.cc, and communicator.cc.
-

Definition at line 4009 of file comm_group.hpp.

+

Definition at line 4030 of file comm_group.hpp.

@@ -1571,7 +1547,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 4026 of file comm_group.hpp.

+

Definition at line 4047 of file comm_group.hpp.

@@ -1628,7 +1604,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4086 of file comm_group.hpp.

+

Definition at line 4107 of file comm_group.hpp.

@@ -1692,7 +1668,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4103 of file comm_group.hpp.

+

Definition at line 4124 of file comm_group.hpp.

@@ -1762,7 +1738,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3258 of file comm_group.hpp.

+

Definition at line 3277 of file comm_group.hpp.

@@ -1818,7 +1794,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3236 of file comm_group.hpp.

+

Definition at line 3255 of file comm_group.hpp.

@@ -1863,7 +1839,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3328 of file comm_group.hpp.

+

Definition at line 3347 of file comm_group.hpp.

@@ -1919,7 +1895,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3349 of file comm_group.hpp.

+

Definition at line 3368 of file comm_group.hpp.

@@ -2002,10 +1978,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
matrix_gather.cc, and parallel_sort_mpl.cc.
+
Examples
matrix_gather.cc, and parallel_sort_mpl.cc.
-

Definition at line 3427 of file comm_group.hpp.

+

Definition at line 3446 of file comm_group.hpp.

@@ -2075,7 +2051,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 3467 of file comm_group.hpp.

+

Definition at line 3486 of file comm_group.hpp.

@@ -2131,7 +2107,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3660 of file comm_group.hpp.

+

Definition at line 3679 of file comm_group.hpp.

@@ -2194,7 +2170,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3631 of file comm_group.hpp.

+

Definition at line 3650 of file comm_group.hpp.

@@ -2223,10 +2199,10 @@

Note
This is a collective operation and must be called by all processes in the communicator.
-
Examples
collective.cc, and communicator.cc.
+
Examples
collective.cc, and communicator.cc.
-

Definition at line 2394 of file comm_group.hpp.

+

Definition at line 2413 of file comm_group.hpp.

@@ -2281,10 +2257,10 @@

Note
This is a collective operation and must be called by all processes in the communicator.

-
Examples
collective.cc.
+
Examples
collective.cc.
-

Definition at line 2417 of file comm_group.hpp.

+

Definition at line 2436 of file comm_group.hpp.

@@ -2347,7 +2323,7 @@

Note
This is a collective operation and must be called by all processes in the communicator.

-

Definition at line 2431 of file comm_group.hpp.

+

Definition at line 2450 of file comm_group.hpp.

@@ -2410,7 +2386,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 959 of file comm_group.hpp.

+

Definition at line 969 of file comm_group.hpp.

@@ -2479,7 +2455,7 @@

Definition at line 975 of file comm_group.hpp.

+

Definition at line 985 of file comm_group.hpp.

@@ -2549,7 +2525,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 996 of file comm_group.hpp.

+

Definition at line 1006 of file comm_group.hpp.

@@ -2613,7 +2589,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 1141 of file comm_group.hpp.

+

Definition at line 1151 of file comm_group.hpp.

@@ -2683,7 +2659,7 @@

Returns
persistent communication request
-

Definition at line 1160 of file comm_group.hpp.

+

Definition at line 1170 of file comm_group.hpp.

@@ -2754,7 +2730,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1185 of file comm_group.hpp.

+

Definition at line 1195 of file comm_group.hpp.

@@ -2794,7 +2770,7 @@

-

determines the message buffer size

+

Determines the message buffer size.

Template Parameters
@@ -2808,8 +2784,9 @@

Returns
message buffer size
-

Definition at line 914 of file comm_group.hpp.

+

Definition at line 924 of file comm_group.hpp.

@@ -2839,7 +2816,7 @@

-

determines the message buffer size

+

Determines the message buffer size.

Template Parameters

Ttype of the data to send in a later buffered send operation, must meet the requirements as described in the data types section
@@ -2848,14 +2825,15 @@

Parameters

Ttype of the data to send in a later buffered send operation, must meet the requirements as described in the data types section
- +
numberquantity of elements of type T to send in a single buffered message or in a series of buffered send operations
numberquantity of elements of type T to send in a single buffered message or in a series of buffered send operations
-
Examples
blocking.cc, blocking_vector.cc, and nonblocking.cc.
+
Returns
message buffer size
+
Examples
blocking.cc, blocking_vector.cc, and nonblocking.cc.
-

Definition at line 902 of file comm_group.hpp.

+

Definition at line 911 of file comm_group.hpp.

@@ -2884,9 +2862,15 @@

Compares to another communicator.

+
Parameters
+ + +
othercommunicator to compare with
+
+
Returns
equality type
-

Definition at line 591 of file comm_group.hpp.

+

Definition at line 599 of file comm_group.hpp.

@@ -3017,7 +3001,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 4453 of file comm_group.hpp.

+

Definition at line 4474 of file comm_group.hpp.

@@ -3088,7 +3072,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4470 of file comm_group.hpp.

+

Definition at line 4491 of file comm_group.hpp.

@@ -3145,7 +3129,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4529 of file comm_group.hpp.

+

Definition at line 4550 of file comm_group.hpp.

@@ -3209,7 +3193,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4546 of file comm_group.hpp.

+

Definition at line 4567 of file comm_group.hpp.

@@ -3265,7 +3249,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2566 of file comm_group.hpp.

+

Definition at line 2585 of file comm_group.hpp.

@@ -3327,10 +3311,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc, and gather.cc.
+
Examples
collective.cc, and gather.cc.
-

Definition at line 2486 of file comm_group.hpp.

+

Definition at line 2505 of file comm_group.hpp.

@@ -3393,7 +3377,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.

-

Definition at line 2582 of file comm_group.hpp.

+

Definition at line 2601 of file comm_group.hpp.

@@ -3470,7 +3454,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2504 of file comm_group.hpp.

+

Definition at line 2523 of file comm_group.hpp.

@@ -3533,7 +3517,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2740 of file comm_group.hpp.

+

Definition at line 2759 of file comm_group.hpp.

@@ -3610,7 +3594,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2672 of file comm_group.hpp.

+

Definition at line 2691 of file comm_group.hpp.

@@ -3693,10 +3677,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
distributed_grid_scatter_gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, matrix_gather.cc, and vibrating_string_mpl.cc.
+
Examples
distributed_grid_scatter_gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, matrix_gather.cc, and vibrating_string_mpl.cc.
-

Definition at line 2644 of file comm_group.hpp.

+

Definition at line 2663 of file comm_group.hpp.

@@ -3753,7 +3737,7 @@

Returns
request representing the ongoing message transfer

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2817 of file comm_group.hpp.

+

Definition at line 2836 of file comm_group.hpp.

@@ -3824,7 +3808,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2836 of file comm_group.hpp.

+

Definition at line 2855 of file comm_group.hpp.

@@ -3895,7 +3879,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2921 of file comm_group.hpp.

+

Definition at line 2940 of file comm_group.hpp.

@@ -3973,7 +3957,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2899 of file comm_group.hpp.

+

Definition at line 2918 of file comm_group.hpp.

@@ -4038,7 +4022,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4045 of file comm_group.hpp.

+

Definition at line 4066 of file comm_group.hpp.

@@ -4110,7 +4094,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4066 of file comm_group.hpp.

+

Definition at line 4087 of file comm_group.hpp.

@@ -4168,7 +4152,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4122 of file comm_group.hpp.

+

Definition at line 4143 of file comm_group.hpp.

@@ -4233,7 +4217,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4142 of file comm_group.hpp.

+

Definition at line 4163 of file comm_group.hpp.

@@ -4304,7 +4288,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. The memory layouts of the incoming and the outgoing messages are described by sendl and recvl. Both layouts might differ but must be compatible, i.e., must hold the same number of elements of type T. The i-th memory block with the layout sendl in the array senddata is sent to the i-th process. When the message transfer has finished, the i-th memory block with the layout recvl in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3305 of file comm_group.hpp.

+

Definition at line 3324 of file comm_group.hpp.

@@ -4361,7 +4345,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends one element of type T to each process (including itself) and receives one element of type T from each process. The i-th element in the array senddata is sent to the i-th process. When the message transfer has finished, the i-th element in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3279 of file comm_group.hpp.

+

Definition at line 3298 of file comm_group.hpp.

@@ -4407,7 +4391,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends one element of type T to each process (including itself) and receives one element of type T from each process. The i-th element in the array sendrecvdata is sent to the i-th process. When the message transfer has finished, the i-th element in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3370 of file comm_group.hpp.

+

Definition at line 3389 of file comm_group.hpp.

@@ -4464,7 +4448,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. The memory layouts of the incoming and the outgoing messages are described by sendrecvl. The i-th memory block with the layout sendrecvl in the array sendrecvdata is sent to the i-th process. When the message transfer has finished, the i-th memory block with the layout sendrecvl in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3395 of file comm_group.hpp.

+

Definition at line 3414 of file comm_group.hpp.

@@ -4549,7 +4533,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffers senddata and recvdata, respectively. The i-th memory block with the layout sendls[i] in the array senddata starts senddispls[i] bytes after the address given in senddata. The i-th memory block is sent to the i-th process. The i-th memory block with the layout recvls[i] in the array recvdata starts recvdispls[i] bytes after the address given in recvdata. When the function has finished, the i-th memory block in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3564 of file comm_group.hpp.

+

Definition at line 3583 of file comm_group.hpp.

@@ -4620,7 +4604,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffers senddata and recvdata, respectively. The i-th memory block with the layout sendls[i] in the array senddata starts at the address given in senddata. The i-th memory block is sent to the i-th process. The i-th memory block with the layout recvls[i] in the array recvdata starts at the address given in recvdata. Note that the memory layouts need to include appropriate holes at the beginning in order to avoid overlapping send- or receive blocks. When the function has finished, the i-th memory block in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3607 of file comm_group.hpp.

+

Definition at line 3626 of file comm_group.hpp.

@@ -4670,13 +4654,14 @@

Parameters
- +
sendrecvdatapointer to continuous storage for incoming and outgoing messages
sendrecvlsmemory layouts of the data to send and to receive
sendrecvlsmemory layouts of the data to send and to receive
+
Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffer sendrecvdata. The i-th memory block with the layout sendrecvls[i] in the array sendrecvdata starts at the address given in sendrecvdata. The i-th memory block is sent to the i-th process. Note that the memory layouts need to include appropriate holes at the beginning in order to avoid overlapping send-receive blocks. When the function has finished, the i-th memory block in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3720 of file comm_group.hpp.

+

Definition at line 3741 of file comm_group.hpp.

@@ -4733,13 +4718,14 @@

sendrecvdatapointer to continuous storage for outgoing and incoming messages sendrecvlsmemory layouts of the data to send and to receive - sendrecvdisplsdisplacements of the data to send and to receive + sendrecvdisplsdisplacements of the data to send and to receive +
Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffer sendecvdata. The i-th memory block with the layout sendlrecvs[i] in the array sendrecvdata starts sendrecvdispls[i] bytes after the address given in sendrecvdata. The i-th memory block is sent to the i-th process. When the function has finished, the i-th memory block in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3683 of file comm_group.hpp.

+

Definition at line 3703 of file comm_group.hpp.

@@ -4770,7 +4756,7 @@

Returns
communication request
Note
This is a collective operation and must be called by all processes in the communicator.
-

Definition at line 2401 of file comm_group.hpp.

+

Definition at line 2420 of file comm_group.hpp.

@@ -4827,7 +4813,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called by all processes in the communicator.
-

Definition at line 2447 of file comm_group.hpp.

+

Definition at line 2466 of file comm_group.hpp.

@@ -4891,7 +4877,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called by all processes in the communicator.
-

Definition at line 2465 of file comm_group.hpp.

+

Definition at line 2484 of file comm_group.hpp.

@@ -4955,7 +4941,7 @@

Returns
request representing the ongoing message transfer
Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1074 of file comm_group.hpp.

+

Definition at line 1084 of file comm_group.hpp.

@@ -5025,7 +5011,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 1092 of file comm_group.hpp.

+

Definition at line 1102 of file comm_group.hpp.

@@ -5096,7 +5082,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
Returns
request representing the ongoing message transfer
-

Definition at line 1117 of file comm_group.hpp.

+

Definition at line 1127 of file comm_group.hpp.

@@ -5161,7 +5147,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4489 of file comm_group.hpp.

+

Definition at line 4510 of file comm_group.hpp.

@@ -5233,7 +5219,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4510 of file comm_group.hpp.

+

Definition at line 4531 of file comm_group.hpp.

@@ -5291,7 +5277,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4565 of file comm_group.hpp.

+

Definition at line 4586 of file comm_group.hpp.

@@ -5356,7 +5342,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4585 of file comm_group.hpp.

+

Definition at line 4606 of file comm_group.hpp.

@@ -5413,7 +5399,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2600 of file comm_group.hpp.

+

Definition at line 2619 of file comm_group.hpp.

@@ -5477,7 +5463,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2524 of file comm_group.hpp.

+

Definition at line 2543 of file comm_group.hpp.

@@ -5541,7 +5527,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2620 of file comm_group.hpp.

+

Definition at line 2639 of file comm_group.hpp.

@@ -5619,7 +5605,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2546 of file comm_group.hpp.

+

Definition at line 2565 of file comm_group.hpp.

@@ -5683,7 +5669,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2763 of file comm_group.hpp.

+

Definition at line 2782 of file comm_group.hpp.

@@ -5761,7 +5747,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2723 of file comm_group.hpp.

+

Definition at line 2742 of file comm_group.hpp.

@@ -5846,7 +5832,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2693 of file comm_group.hpp.

+

Definition at line 2712 of file comm_group.hpp.

@@ -5884,7 +5870,17 @@

-

Definition at line 2067 of file comm_group.hpp.

+

Blocking matched test for an incoming message.

+
Parameters
+ + + +
sourcerank of the sending process
ttag associated to this message
+
+
+
Returns
message handle and status of the pending message if there is a pending message by the given source and with the given tag
+ +

Definition at line 2086 of file comm_group.hpp.

@@ -5914,7 +5910,7 @@

- message_t &  + message_t &  m  @@ -5948,7 +5944,7 @@

Returns
request representing the ongoing message transfer
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 2201 of file comm_group.hpp.

+

Definition at line 2220 of file comm_group.hpp.

@@ -5972,7 +5968,7 @@

- message_t &  + message_t &  m  @@ -6005,7 +6001,7 @@

Returns
request representing the ongoing receive operation
Note
Receiving STL containers is not supported.
-

Definition at line 2168 of file comm_group.hpp.

+

Definition at line 2187 of file comm_group.hpp.

@@ -6035,7 +6031,7 @@

- message_t &  + message_t &  m  @@ -6068,7 +6064,7 @@

Returns
request representing the ongoing receive operation
-

Definition at line 2181 of file comm_group.hpp.

+

Definition at line 2200 of file comm_group.hpp.

@@ -6677,7 +6673,7 @@

Returns
status of the pending message if there is any pending message
-

Definition at line 2043 of file comm_group.hpp.

+

Definition at line 2053 of file comm_group.hpp.

@@ -6748,7 +6744,7 @@

Returns
request representing the ongoing message transfer
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1946 of file comm_group.hpp.

+

Definition at line 1956 of file comm_group.hpp.

@@ -6814,7 +6810,7 @@

Examples
heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
-

Definition at line 1906 of file comm_group.hpp.

+

Definition at line 1916 of file comm_group.hpp.

@@ -6884,7 +6880,7 @@

Returns
request representing the ongoing receive operation
-

Definition at line 1922 of file comm_group.hpp.

+

Definition at line 1932 of file comm_group.hpp.

@@ -6949,7 +6945,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3936 of file comm_group.hpp.

+

Definition at line 3957 of file comm_group.hpp.

@@ -7021,7 +7017,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3780 of file comm_group.hpp.

+

Definition at line 3801 of file comm_group.hpp.

@@ -7093,7 +7089,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3987 of file comm_group.hpp.

+

Definition at line 4008 of file comm_group.hpp.

@@ -7172,7 +7168,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3803 of file comm_group.hpp.

+

Definition at line 3824 of file comm_group.hpp.

@@ -7237,7 +7233,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3910 of file comm_group.hpp.

+

Definition at line 3931 of file comm_group.hpp.

@@ -7309,7 +7305,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3959 of file comm_group.hpp.

+

Definition at line 3980 of file comm_group.hpp.

@@ -7381,7 +7377,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4279 of file comm_group.hpp.

+

Definition at line 4300 of file comm_group.hpp.

@@ -7446,7 +7442,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4206 of file comm_group.hpp.

+

Definition at line 4227 of file comm_group.hpp.

@@ -7518,7 +7514,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4230 of file comm_group.hpp.

+

Definition at line 4251 of file comm_group.hpp.

@@ -7582,7 +7578,7 @@

Returns
request representing the ongoing message transfer
Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1624 of file comm_group.hpp.

+

Definition at line 1634 of file comm_group.hpp.

@@ -7652,7 +7648,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 1642 of file comm_group.hpp.

+

Definition at line 1652 of file comm_group.hpp.

@@ -7723,7 +7719,7 @@

Returns
request representing the ongoing message transfer
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1667 of file comm_group.hpp.

+

Definition at line 1677 of file comm_group.hpp.

@@ -7753,10 +7749,10 @@

Returns
true if communicator is valid
Note
A default constructed communicator is a non valid communicator.
-
Examples
communicator.cc.
+
Examples
communicator.cc.
-

Definition at line 601 of file comm_group.hpp.

+

Definition at line 609 of file comm_group.hpp.

@@ -7821,7 +7817,7 @@

Returns
request representing the ongoing reduction operation

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4337 of file comm_group.hpp.

+

Definition at line 4358 of file comm_group.hpp.

@@ -7893,7 +7889,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4358 of file comm_group.hpp.

+

Definition at line 4379 of file comm_group.hpp.

@@ -7951,7 +7947,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4412 of file comm_group.hpp.

+

Definition at line 4433 of file comm_group.hpp.

@@ -8016,7 +8012,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4432 of file comm_group.hpp.

+

Definition at line 4453 of file comm_group.hpp.

@@ -8094,7 +8090,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3000 of file comm_group.hpp.

+

Definition at line 3019 of file comm_group.hpp.

@@ -8158,7 +8154,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2978 of file comm_group.hpp.

+

Definition at line 2997 of file comm_group.hpp.

@@ -8209,7 +8205,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3048 of file comm_group.hpp.

+

Definition at line 3067 of file comm_group.hpp.

@@ -8267,7 +8263,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3066 of file comm_group.hpp.

+

Definition at line 3085 of file comm_group.hpp.

@@ -8352,7 +8348,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3140 of file comm_group.hpp.

+

Definition at line 3159 of file comm_group.hpp.

@@ -8430,7 +8426,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3171 of file comm_group.hpp.

+

Definition at line 3190 of file comm_group.hpp.

@@ -8494,7 +8490,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3211 of file comm_group.hpp.

+

Definition at line 3230 of file comm_group.hpp.

@@ -8560,7 +8556,7 @@

Examples
heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
-

Definition at line 771 of file comm_group.hpp.

+

Definition at line 779 of file comm_group.hpp.

@@ -8630,7 +8626,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 789 of file comm_group.hpp.

+

Definition at line 797 of file comm_group.hpp.

@@ -8701,7 +8697,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
Returns
request representing the ongoing message transfer
-

Definition at line 814 of file comm_group.hpp.

+

Definition at line 822 of file comm_group.hpp.

@@ -8765,7 +8761,7 @@

Returns
request representing the ongoing message transfer
Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1347 of file comm_group.hpp.

+

Definition at line 1357 of file comm_group.hpp.

@@ -8835,7 +8831,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 1365 of file comm_group.hpp.

+

Definition at line 1375 of file comm_group.hpp.

@@ -8906,7 +8902,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
Returns
request representing the ongoing message transfer
-

Definition at line 1390 of file comm_group.hpp.

+

Definition at line 1400 of file comm_group.hpp.

@@ -8944,7 +8940,17 @@

-

Definition at line 2057 of file comm_group.hpp.

+

Blocking matched test for an incoming message.

+
Parameters
+ + + +
sourcerank of the sending process
ttag associated to this message
+
+
+
Returns
message handle and status of the pending message
+ +

Definition at line 2071 of file comm_group.hpp.

@@ -8974,7 +8980,7 @@

- message_t &  + message_t &  m  @@ -9008,7 +9014,7 @@

Returns
status of the receive operation
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 2136 of file comm_group.hpp.

+

Definition at line 2155 of file comm_group.hpp.

@@ -9032,7 +9038,7 @@

- message_t &  + message_t &  m  @@ -9065,7 +9071,7 @@

Returns
status of the receive operation
Note
Receiving STL containers is not supported.
-

Definition at line 2102 of file comm_group.hpp.

+

Definition at line 2121 of file comm_group.hpp.

@@ -9095,7 +9101,7 @@

- message_t &  + message_t &  m  @@ -9128,7 +9134,7 @@

Returns
status of the receive operation
-

Definition at line 2115 of file comm_group.hpp.

+

Definition at line 2134 of file comm_group.hpp.

@@ -9777,9 +9783,15 @@

Tests for identity of communicators.

+
Parameters
+ + +
othercommunicator to compare with
+
+
Returns
true if not identical
-

Definition at line 583 of file comm_group.hpp.

+

Definition at line 590 of file comm_group.hpp.

@@ -9882,9 +9894,15 @@

Tests for identity of communicators.

+
Parameters
+ + +
othercommunicator to compare with
+
+
Returns
true if identical
-

Definition at line 575 of file comm_group.hpp.

+

Definition at line 581 of file comm_group.hpp.

@@ -9931,10 +9949,10 @@

Returns
status of the pending message
-
Examples
probe.cc.
+
Examples
probe.cc.
-

Definition at line 2030 of file comm_group.hpp.

+

Definition at line 2040 of file comm_group.hpp.

@@ -9963,10 +9981,10 @@

Returns
the rank of the calling process in the communicator

-
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
+
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
-

Definition at line 567 of file comm_group.hpp.

+

Definition at line 572 of file comm_group.hpp.

@@ -10037,7 +10055,7 @@

Returns
status of the receive operation

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1845 of file comm_group.hpp.

+

Definition at line 1855 of file comm_group.hpp.

@@ -10101,7 +10119,7 @@

Returns
status of the receive operation
Note
Receiving STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1807 of file comm_group.hpp.

+

Definition at line 1817 of file comm_group.hpp.

@@ -10171,7 +10189,7 @@

Returns
status of the receive operation
-

Definition at line 1822 of file comm_group.hpp.

+

Definition at line 1832 of file comm_group.hpp.

@@ -10242,7 +10260,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 2013 of file comm_group.hpp.

+

Definition at line 2023 of file comm_group.hpp.

@@ -10306,7 +10324,7 @@

Returns
persistent communication request
Note
Receiving STL containers is not supported.
-

Definition at line 1970 of file comm_group.hpp.

+

Definition at line 1980 of file comm_group.hpp.

@@ -10376,7 +10394,7 @@

Returns
persistent communication request
-

Definition at line 1989 of file comm_group.hpp.

+

Definition at line 1999 of file comm_group.hpp.

@@ -10440,7 +10458,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3847 of file comm_group.hpp.

+

Definition at line 3868 of file comm_group.hpp.

@@ -10510,10 +10528,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc, reduce_lcm.cc, and reduce_min_loc.cc.
+
Examples
collective.cc, reduce_lcm.cc, and reduce_min_loc.cc.
-

Definition at line 3738 of file comm_group.hpp.

+

Definition at line 3759 of file comm_group.hpp.

@@ -10584,7 +10602,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 3889 of file comm_group.hpp.

+

Definition at line 3910 of file comm_group.hpp.

@@ -10662,7 +10680,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3759 of file comm_group.hpp.

+

Definition at line 3780 of file comm_group.hpp.

@@ -10726,7 +10744,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3825 of file comm_group.hpp.

+

Definition at line 3846 of file comm_group.hpp.

@@ -10797,7 +10815,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3866 of file comm_group.hpp.

+

Definition at line 3887 of file comm_group.hpp.

@@ -10868,7 +10886,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4255 of file comm_group.hpp.

+

Definition at line 4276 of file comm_group.hpp.

@@ -10932,7 +10950,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4164 of file comm_group.hpp.

+

Definition at line 4185 of file comm_group.hpp.

@@ -11003,7 +11021,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4184 of file comm_group.hpp.

+

Definition at line 4205 of file comm_group.hpp.

@@ -11066,7 +11084,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1509 of file comm_group.hpp.

+

Definition at line 1519 of file comm_group.hpp.

@@ -11135,7 +11153,7 @@

Definition at line 1525 of file comm_group.hpp.

+

Definition at line 1535 of file comm_group.hpp.

@@ -11205,7 +11223,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1546 of file comm_group.hpp.

+

Definition at line 1556 of file comm_group.hpp.

@@ -11269,7 +11287,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 1691 of file comm_group.hpp.

+

Definition at line 1701 of file comm_group.hpp.

@@ -11339,7 +11357,7 @@

Returns
persistent communication request
-

Definition at line 1710 of file comm_group.hpp.

+

Definition at line 1720 of file comm_group.hpp.

@@ -11410,7 +11428,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1735 of file comm_group.hpp.

+

Definition at line 1745 of file comm_group.hpp.

@@ -11474,7 +11492,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4301 of file comm_group.hpp.

+

Definition at line 4322 of file comm_group.hpp.

@@ -11545,7 +11563,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4318 of file comm_group.hpp.

+

Definition at line 4339 of file comm_group.hpp.

@@ -11602,7 +11620,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4377 of file comm_group.hpp.

+

Definition at line 4398 of file comm_group.hpp.

@@ -11666,7 +11684,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4394 of file comm_group.hpp.

+

Definition at line 4415 of file comm_group.hpp.

@@ -11743,7 +11761,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2957 of file comm_group.hpp.

+

Definition at line 2976 of file comm_group.hpp.

@@ -11805,10 +11823,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc.
+
Examples
collective.cc.
-

Definition at line 2939 of file comm_group.hpp.

+

Definition at line 2958 of file comm_group.hpp.

@@ -11858,7 +11876,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.

-

Definition at line 3018 of file comm_group.hpp.

+

Definition at line 3037 of file comm_group.hpp.

@@ -11915,7 +11933,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3032 of file comm_group.hpp.

+

Definition at line 3051 of file comm_group.hpp.

@@ -12001,7 +12019,7 @@

Examples
distributed_grid_scatter_gather.cc, heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
-

Definition at line 3091 of file comm_group.hpp.

+

Definition at line 3110 of file comm_group.hpp.

@@ -12078,7 +12096,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3119 of file comm_group.hpp.

+

Definition at line 3138 of file comm_group.hpp.

@@ -12141,7 +12159,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3188 of file comm_group.hpp.

+

Definition at line 3207 of file comm_group.hpp.

@@ -12204,7 +12222,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 657 of file comm_group.hpp.

+

Definition at line 665 of file comm_group.hpp.

@@ -12273,7 +12291,7 @@

Definition at line 673 of file comm_group.hpp.

+

Definition at line 681 of file comm_group.hpp.

@@ -12343,7 +12361,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 694 of file comm_group.hpp.

+

Definition at line 702 of file comm_group.hpp.

@@ -12407,7 +12425,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 838 of file comm_group.hpp.

+

Definition at line 846 of file comm_group.hpp.

@@ -12477,7 +12495,7 @@

Returns
persistent communication request
-

Definition at line 857 of file comm_group.hpp.

+

Definition at line 865 of file comm_group.hpp.

@@ -12548,7 +12566,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 882 of file comm_group.hpp.

+

Definition at line 890 of file comm_group.hpp.

@@ -12634,7 +12652,7 @@

Examples
distributed_grid.cc.
-

Definition at line 2227 of file comm_group.hpp.

+

Definition at line 2246 of file comm_group.hpp.

@@ -12732,7 +12750,7 @@

Returns
status of the receive operation
-

Definition at line 2254 of file comm_group.hpp.

+

Definition at line 2273 of file comm_group.hpp.

@@ -12831,7 +12849,7 @@

Returns
status of the receive operation
-

Definition at line 2289 of file comm_group.hpp.

+

Definition at line 2308 of file comm_group.hpp.

@@ -12915,7 +12933,7 @@

Returns
status of the receive operation
-

Definition at line 2376 of file comm_group.hpp.

+

Definition at line 2395 of file comm_group.hpp.

@@ -12992,7 +13010,7 @@

Returns
status of the receive operation
-

Definition at line 2324 of file comm_group.hpp.

+

Definition at line 2343 of file comm_group.hpp.

@@ -13076,7 +13094,7 @@

Returns
status of the receive operation
-

Definition at line 2348 of file comm_group.hpp.

+

Definition at line 2367 of file comm_group.hpp.

@@ -13105,10 +13123,10 @@

Returns
number of processes
-
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
+
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
-

Definition at line 559 of file comm_group.hpp.

+

Definition at line 564 of file comm_group.hpp.

@@ -13171,7 +13189,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.

-

Definition at line 1236 of file comm_group.hpp.

+

Definition at line 1246 of file comm_group.hpp.

@@ -13240,7 +13258,7 @@

Definition at line 1251 of file comm_group.hpp.

+

Definition at line 1261 of file comm_group.hpp.

@@ -13310,7 +13328,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1272 of file comm_group.hpp.

+

Definition at line 1282 of file comm_group.hpp.

@@ -13374,7 +13392,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 1414 of file comm_group.hpp.

+

Definition at line 1424 of file comm_group.hpp.

@@ -13444,7 +13462,7 @@

Returns
persistent communication request
-

Definition at line 1433 of file comm_group.hpp.

+

Definition at line 1443 of file comm_group.hpp.

@@ -13515,7 +13533,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1458 of file comm_group.hpp.

+

Definition at line 1468 of file comm_group.hpp.

@@ -13542,7 +13560,7 @@

Definition at line 313 of file comm_group.hpp.

+

Definition at line 316 of file comm_group.hpp.

@@ -13567,7 +13585,7 @@

indicates that communicators are identical, i.e., communicators have same the members in same rank order but different context

-

Definition at line 300 of file comm_group.hpp.

+

Definition at line 303 of file comm_group.hpp.

@@ -13593,7 +13611,7 @@

Definition at line 320 of file comm_group.hpp.

+

Definition at line 323 of file comm_group.hpp.

@@ -13618,7 +13636,7 @@

indicates that communicators are identical, i.e., communicators represent the same communication context

-

Definition at line 297 of file comm_group.hpp.

+

Definition at line 300 of file comm_group.hpp.

@@ -13643,7 +13661,7 @@

indicates that communicators are similar, i.e., communicators have same tha members in different rank order

-

Definition at line 303 of file comm_group.hpp.

+

Definition at line 306 of file comm_group.hpp.

@@ -13668,10 +13686,10 @@

Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgroups.

-
Examples
communicator.cc.
+
Examples
communicator.cc.
-

Definition at line 327 of file comm_group.hpp.

+

Definition at line 330 of file comm_group.hpp.

@@ -13697,7 +13715,7 @@

Definition at line 334 of file comm_group.hpp.

+

Definition at line 337 of file comm_group.hpp.

@@ -13722,7 +13740,7 @@

indicates that communicators are unequal, i.e., communicators have different sets of members

-

Definition at line 306 of file comm_group.hpp.

+

Definition at line 309 of file comm_group.hpp.

@@ -13734,7 +13752,7 @@

diff --git a/docs/html/classmpl_1_1graph__communicator_1_1edge__set-members.html b/docs/html/classmpl_1_1graph__communicator_1_1edge__set-members.html index 743b7a6b..1d96bdbd 100644 --- a/docs/html/classmpl_1_1graph__communicator_1_1edge__set-members.html +++ b/docs/html/classmpl_1_1graph__communicator_1_1edge__set-members.html @@ -90,14 +90,14 @@

This is the complete list of members for mpl::graph_communicator::edge_set, including all inherited members.

- - + + - - + + - +
add(const value_type &edge)mpl::graph_communicator::edge_setinline
const_iterator typedefmpl::graph_communicator::edge_set
const_reference typedefmpl::graph_communicator::edge_set
const_iterator typedef (defined in mpl::graph_communicator::edge_set)mpl::graph_communicator::edge_set
const_reference typedef (defined in mpl::graph_communicator::edge_set)mpl::graph_communicator::edge_set
edge_set()=defaultmpl::graph_communicator::edge_set
edge_set(std::initializer_list< value_type > init)mpl::graph_communicator::edge_setinline
iterator typedefmpl::graph_communicator::edge_set
reference typedefmpl::graph_communicator::edge_set
iterator typedef (defined in mpl::graph_communicator::edge_set)mpl::graph_communicator::edge_set
reference typedef (defined in mpl::graph_communicator::edge_set)mpl::graph_communicator::edge_set
size() constmpl::graph_communicator::edge_setinline
value_type typedefmpl::graph_communicator::edge_set
value_type typedef (defined in mpl::graph_communicator::edge_set)mpl::graph_communicator::edge_set
diff --git a/docs/html/classmpl_1_1graph__communicator_1_1edge__set.html b/docs/html/classmpl_1_1graph__communicator_1_1edge__set.html index 664c788a..80ee5b77 100644 --- a/docs/html/classmpl_1_1graph__communicator_1_1edge__set.html +++ b/docs/html/classmpl_1_1graph__communicator_1_1edge__set.html @@ -129,16 +129,17 @@ - - + + - + - +

Public Member Functions

 edge_set ()=default
 Creates an empty set of edges. More...
edge_set ()=default
 Creates an empty set of edges.
 
 edge_set (std::initializer_list< value_type > init)
 edge_set (std::initializer_list< value_type > init)
 Creates a set of edges given by the list. More...
 
int size () const
 Determines the number edges. More...
 
void add (const value_type &edge)
void add (const value_type &edge)
 Add an additional edge to the set. More...
 
@@ -154,7 +155,7 @@

- +
using mpl::graph_communicator::edge_set::const_iterator = typename base::const_iteratorusing mpl::graph_communicator::edge_set::const_iterator = typename base::const_iterator
@@ -228,35 +229,8 @@

Constructor & Destructor Documentation

- -

◆ edge_set() [1/2]

- -
-
- - - - - -
- - - - - - - -
mpl::graph_communicator::edge_set::edge_set ()
-
-default
-
- -

Creates an empty set of edges.

- -
-
-

◆ edge_set() [2/2]

+

◆ edge_set()

@@ -267,7 +241,7 @@

mpl::graph_communicator::edge_set::edge_set ( - std::initializer_list< value_type >  + std::initializer_list< value_type >  init) @@ -304,7 +278,7 @@

void mpl::graph_communicator::edge_set::add ( - const value_type &  + const value_type &  edge) @@ -366,7 +340,7 @@

diff --git a/docs/html/classmpl_1_1graph__communicator_1_1edge__set.js b/docs/html/classmpl_1_1graph__communicator_1_1edge__set.js index d62b3b6e..a7ecfdc1 100644 --- a/docs/html/classmpl_1_1graph__communicator_1_1edge__set.js +++ b/docs/html/classmpl_1_1graph__communicator_1_1edge__set.js @@ -1,10 +1,5 @@ var classmpl_1_1graph__communicator_1_1edge__set = [ - [ "const_iterator", "classmpl_1_1graph__communicator_1_1edge__set.html#a015685ec461e590fa7272cbf91220d18", null ], - [ "const_reference", "classmpl_1_1graph__communicator_1_1edge__set.html#ab383a23d687c47ad7b85309f81ffdb1b", null ], - [ "iterator", "classmpl_1_1graph__communicator_1_1edge__set.html#a108a464ce7190e45fe9aa162ffcd779c", null ], - [ "reference", "classmpl_1_1graph__communicator_1_1edge__set.html#acc11f382d1c7534095f6392fec035fe6", null ], - [ "value_type", "classmpl_1_1graph__communicator_1_1edge__set.html#abcf980f8207f9165319e4ea0b1785112", null ], [ "edge_set", "classmpl_1_1graph__communicator_1_1edge__set.html#a17430180fb679bda0388e2e5a9ee18f8", null ], [ "edge_set", "classmpl_1_1graph__communicator_1_1edge__set.html#a552f6b7dfdeeaf97dda2450135f23783", null ], [ "add", "classmpl_1_1graph__communicator_1_1edge__set.html#ab94d3075422b9dc7eeb87af9e32c0b43", null ], diff --git a/docs/html/classmpl_1_1graph__communicator_1_1node__list-members.html b/docs/html/classmpl_1_1graph__communicator_1_1node__list-members.html index 96896919..3735152d 100644 --- a/docs/html/classmpl_1_1graph__communicator_1_1node__list-members.html +++ b/docs/html/classmpl_1_1graph__communicator_1_1node__list-members.html @@ -90,18 +90,18 @@

This is the complete list of members for mpl::graph_communicator::node_list, including all inherited members.

- - - - + + + + - + - +
add(int node)mpl::graph_communicator::node_listinline
const_iterator typedefmpl::graph_communicator::node_list
const_reference typedefmpl::graph_communicator::node_list
graph_communicatormpl::graph_communicator::node_listfriend
iterator typedefmpl::graph_communicator::node_list
const_iterator typedef (defined in mpl::graph_communicator::node_list)mpl::graph_communicator::node_list
const_reference typedef (defined in mpl::graph_communicator::node_list)mpl::graph_communicator::node_list
graph_communicator (defined in mpl::graph_communicator::node_list)mpl::graph_communicator::node_listfriend
iterator typedef (defined in mpl::graph_communicator::node_list)mpl::graph_communicator::node_list
node_list()=defaultmpl::graph_communicator::node_list
node_list(int nodes)mpl::graph_communicator::node_listinlineexplicit
node_list(std::initializer_list< int > init)mpl::graph_communicator::node_listinline
operator[](int index)mpl::graph_communicator::node_listinline
operator[](int index) constmpl::graph_communicator::node_listinline
reference typedefmpl::graph_communicator::node_list
reference typedef (defined in mpl::graph_communicator::node_list)mpl::graph_communicator::node_list
size() constmpl::graph_communicator::node_listinline
value_type typedefmpl::graph_communicator::node_list
value_type typedef (defined in mpl::graph_communicator::node_list)mpl::graph_communicator::node_list
diff --git a/docs/html/classmpl_1_1graph__communicator_1_1node__list.html b/docs/html/classmpl_1_1graph__communicator_1_1node__list.html index e64724b4..fe533bbb 100644 --- a/docs/html/classmpl_1_1graph__communicator_1_1node__list.html +++ b/docs/html/classmpl_1_1graph__communicator_1_1node__list.html @@ -130,8 +130,9 @@ - - + + @@ -142,10 +143,10 @@ - + - + @@ -169,7 +170,7 @@

Public Member Functions

 node_list ()=default
 Creates an empty node list. More...
node_list ()=default
 Creates an empty node list.
 
 node_list (int nodes)
 Creates non-empty list of nodes. More...
int size () const
 Determines the number of nodes. More...
 
reference operator[] (int index)
reference operator[] (int index)
 Access a list element. More...
 
const_reference operator[] (int index) const
const_reference operator[] (int index) const
 Access a list element. More...
 
void add (int node)
- +
using mpl::graph_communicator::node_list::const_iterator = typename base::const_iteratorusing mpl::graph_communicator::node_list::const_iterator = typename base::const_iterator
@@ -243,35 +244,8 @@

Constructor & Destructor Documentation

- -

◆ node_list() [1/3]

- -
-
- - - - - -
- - - - - - - -
mpl::graph_communicator::node_list::node_list ()
-
-default
-
- -

Creates an empty node list.

- -
-
-

◆ node_list() [2/3]

+

◆ node_list() [1/2]

@@ -307,7 +281,7 @@

-

◆ node_list() [3/3]

+

◆ node_list() [2/2]

@@ -389,7 +363,7 @@

- + @@ -425,7 +399,7 @@

reference mpl::graph_communicator::node_list::operator[] reference mpl::graph_communicator::node_list::operator[] ( int  index)
- + @@ -514,7 +488,7 @@

diff --git a/docs/html/classmpl_1_1graph__communicator_1_1node__list.js b/docs/html/classmpl_1_1graph__communicator_1_1node__list.js index 5a092ba8..48f9e037 100644 --- a/docs/html/classmpl_1_1graph__communicator_1_1node__list.js +++ b/docs/html/classmpl_1_1graph__communicator_1_1node__list.js @@ -1,16 +1,10 @@ var classmpl_1_1graph__communicator_1_1node__list = [ - [ "const_iterator", "classmpl_1_1graph__communicator_1_1node__list.html#a5586635b21b9dbc9cb1d50c1cf9471a1", null ], - [ "const_reference", "classmpl_1_1graph__communicator_1_1node__list.html#aa84022c75e433a413319022844309f84", null ], - [ "iterator", "classmpl_1_1graph__communicator_1_1node__list.html#a8678648832d56e5b555d19e491e6268a", null ], - [ "reference", "classmpl_1_1graph__communicator_1_1node__list.html#a199f783f69146375fd4890c1b318189f", null ], - [ "value_type", "classmpl_1_1graph__communicator_1_1node__list.html#a51b3fcd822115593a2af29b5745aa224", null ], [ "node_list", "classmpl_1_1graph__communicator_1_1node__list.html#a9321529165dbf31bdacaed44c2c3bd89", null ], [ "node_list", "classmpl_1_1graph__communicator_1_1node__list.html#a6705675a9a7343424dece2f056060f4a", null ], [ "node_list", "classmpl_1_1graph__communicator_1_1node__list.html#afe55816c0169408a56e42c412f04e86f", null ], [ "add", "classmpl_1_1graph__communicator_1_1node__list.html#a25f3935b78cf4dd11a589620e727536a", null ], [ "operator[]", "classmpl_1_1graph__communicator_1_1node__list.html#a5f60260b8bd1bdc7fe8c7b7945e27b8c", null ], [ "operator[]", "classmpl_1_1graph__communicator_1_1node__list.html#aab4b2d09a2edf289b646510d0bf55eda", null ], - [ "size", "classmpl_1_1graph__communicator_1_1node__list.html#aceebd8bb0abded270a3246abb4996efe", null ], - [ "graph_communicator", "classmpl_1_1graph__communicator_1_1node__list.html#a864a79402650e1b3c453bf86a588dd1d", null ] + [ "size", "classmpl_1_1graph__communicator_1_1node__list.html#aceebd8bb0abded270a3246abb4996efe", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1group-members.html b/docs/html/classmpl_1_1group-members.html index 05621033..4e0f9791 100644 --- a/docs/html/classmpl_1_1group-members.html +++ b/docs/html/classmpl_1_1group-members.html @@ -89,7 +89,7 @@

This is the complete list of members for mpl::group, including all inherited members.

const_reference mpl::graph_communicator::node_list::operator[] const_reference mpl::graph_communicator::node_list::operator[] ( int  index)
- + diff --git a/docs/html/classmpl_1_1group.html b/docs/html/classmpl_1_1group.html index 13ce872b..0f2c8668 100644 --- a/docs/html/classmpl_1_1group.html +++ b/docs/html/classmpl_1_1group.html @@ -141,8 +141,9 @@
communicatormpl::groupfriend
communicator (defined in mpl::group)mpl::groupfriend
compare(const group &other) constmpl::groupinline
differencempl::groupstatic
equality_type enum namempl::group
- - + + @@ -269,35 +270,8 @@

Constructor & Destructor Documentation

- -

◆ group() [1/9]

- -
-
-

Public Member Functions

 group ()=default
 Creates an empty process group. More...
group ()=default
 Creates an empty process group.
 
 group (const group &other)
 Creates a new process group by copying an existing one. More...
- - - - -
- - - - - - - -
mpl::group::group ()
-
-default
-

- -

Creates an empty process group.

- -
-
-

◆ group() [2/9]

+

◆ group() [1/8]

-

Definition at line 4595 of file comm_group.hpp.

+

Definition at line 4616 of file comm_group.hpp.

-

◆ group() [3/9]

+

◆ group() [2/8]

@@ -370,7 +344,7 @@

-

◆ group() [4/9]

+

◆ group() [3/8]

@@ -401,12 +375,12 @@

Definition at line 4597 of file comm_group.hpp.

+

Definition at line 4618 of file comm_group.hpp.

-

◆ group() [5/9]

+

◆ group() [4/8]

@@ -455,12 +429,12 @@

Definition at line 4599 of file comm_group.hpp.

+

Definition at line 4620 of file comm_group.hpp.

-

◆ group() [6/9]

+

◆ group() [5/8]

@@ -509,12 +483,12 @@

Definition at line 4603 of file comm_group.hpp.

+

Definition at line 4624 of file comm_group.hpp.

-

◆ group() [7/9]

+

◆ group() [6/8]

@@ -563,12 +537,12 @@

Definition at line 4607 of file comm_group.hpp.

+

Definition at line 4628 of file comm_group.hpp.

-

◆ group() [8/9]

+

◆ group() [7/8]

@@ -617,12 +591,12 @@

Definition at line 4611 of file comm_group.hpp.

+

Definition at line 4632 of file comm_group.hpp.

-

◆ group() [9/9]

+

◆ group() [8/8]

@@ -671,7 +645,7 @@

Definition at line 4615 of file comm_group.hpp.

+

Definition at line 4636 of file comm_group.hpp.

@@ -730,9 +704,15 @@

Compares to another process group.

+
Parameters
+ + +
otherprocess group to compare with
+
+
Returns
equality type
-

Definition at line 238 of file comm_group.hpp.

+

Definition at line 241 of file comm_group.hpp.

@@ -761,9 +741,15 @@

Tests for identity of process groups.

+
Parameters
+ + +
otherprocess group to compare with
+
+
Returns
true if not identical
-

Definition at line 230 of file comm_group.hpp.

+

Definition at line 232 of file comm_group.hpp.

@@ -867,9 +853,15 @@

Tests for identity of process groups.

+
Parameters
+ + +
otherprocess group to compare with
+
+
Returns
true if identical
-

Definition at line 222 of file comm_group.hpp.

+

Definition at line 223 of file comm_group.hpp.

@@ -1050,7 +1042,7 @@

-

Definition at line 244 of file comm_group.hpp.

+

Definition at line 247 of file comm_group.hpp.

@@ -1269,7 +1261,7 @@

diff --git a/docs/html/classmpl_1_1group.js b/docs/html/classmpl_1_1group.js index 8efe8d40..3c49b256 100644 --- a/docs/html/classmpl_1_1group.js +++ b/docs/html/classmpl_1_1group.js @@ -28,6 +28,5 @@ var classmpl_1_1group = [ "rank", "classmpl_1_1group.html#ac820bf356be8b94134cb08f8efa087ba", null ], [ "size", "classmpl_1_1group.html#a58537237d16d0ac6ecb5680e33997f26", null ], [ "translate", "classmpl_1_1group.html#a1c11d89daec6af7b0ed1b5668d355656", null ], - [ "translate", "classmpl_1_1group.html#a38cdae96823a5ce04c1e4a637ca82d5a", null ], - [ "communicator", "classmpl_1_1group.html#a28e4940a8d711c15cada064a12ba0788", null ] + [ "translate", "classmpl_1_1group.html#a38cdae96823a5ce04c1e4a637ca82d5a", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1group_1_1_union__tag.html b/docs/html/classmpl_1_1group_1_1_union__tag.html index a915b8ed..2513b9f5 100644 --- a/docs/html/classmpl_1_1group_1_1_union__tag.html +++ b/docs/html/classmpl_1_1group_1_1_union__tag.html @@ -111,7 +111,7 @@ diff --git a/docs/html/classmpl_1_1group_1_1difference__tag.html b/docs/html/classmpl_1_1group_1_1difference__tag.html index 4611c12b..79972f20 100644 --- a/docs/html/classmpl_1_1group_1_1difference__tag.html +++ b/docs/html/classmpl_1_1group_1_1difference__tag.html @@ -111,7 +111,7 @@ diff --git a/docs/html/classmpl_1_1group_1_1exclude__tag.html b/docs/html/classmpl_1_1group_1_1exclude__tag.html index 24d4f9c4..be54032d 100644 --- a/docs/html/classmpl_1_1group_1_1exclude__tag.html +++ b/docs/html/classmpl_1_1group_1_1exclude__tag.html @@ -111,7 +111,7 @@ diff --git a/docs/html/classmpl_1_1group_1_1include__tag.html b/docs/html/classmpl_1_1group_1_1include__tag.html index a721bff3..54178c04 100644 --- a/docs/html/classmpl_1_1group_1_1include__tag.html +++ b/docs/html/classmpl_1_1group_1_1include__tag.html @@ -111,7 +111,7 @@ diff --git a/docs/html/classmpl_1_1group_1_1intersection__tag.html b/docs/html/classmpl_1_1group_1_1intersection__tag.html index 5cc75fe5..12f81df2 100644 --- a/docs/html/classmpl_1_1group_1_1intersection__tag.html +++ b/docs/html/classmpl_1_1group_1_1intersection__tag.html @@ -111,7 +111,7 @@ diff --git a/docs/html/classmpl_1_1heterogeneous__layout.html b/docs/html/classmpl_1_1heterogeneous__layout.html index a14dfb03..4494a846 100644 --- a/docs/html/classmpl_1_1heterogeneous__layout.html +++ b/docs/html/classmpl_1_1heterogeneous__layout.html @@ -147,46 +147,46 @@ void swap (heterogeneous_layout &other)  exchanges two heterogeneous layouts More...
  -ssize_t byte_extent () const +ssize_t byte_extent () const  Get the byte extent of the layout. More...
  -ssize_t byte_lower_bound () const +ssize_t byte_lower_bound () const  Get the byte lower bound of the layout. More...
  -ssize_t byte_upper_bound () const +ssize_t byte_upper_bound () const  Get the byte upper bound of the layout. More...
  -ssize_t extent () const +ssize_t extent () const  Get the extent of the layout. More...
  -ssize_t lower_bound () const +ssize_t lower_bound () const  Get the lower bound of the layout. More...
  -ssize_t upper_bound () const +ssize_t upper_bound () const  Get the upper bound of the layout. More...
  -ssize_t true_byte_extent () const +ssize_t true_byte_extent () const  Get the true byte extent of the layout. More...
  -ssize_t true_byte_lower_bound () const +ssize_t true_byte_lower_bound () const  Get the true byte lower bound of the layout. More...
  -ssize_t true_byte_upper_bound () const +ssize_t true_byte_upper_bound () const  Get the true byte upper bound of the layout. More...
  -ssize_t true_extent () const +ssize_t true_extent () const  Get the true extent of the layout. More...
  -ssize_t true_lower_bound () const +ssize_t true_lower_bound () const  Get the true lower bound of the layout. More...
  -ssize_t true_upper_bound () const +ssize_t true_upper_bound () const  Get the true upper bound of the layout. More...
  -void byte_resize (ssize_t lb, ssize_t extent) +void byte_resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  -void resize (ssize_t lb, ssize_t extent) +void resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  void swap (layout &l) @@ -195,12 +195,12 @@

Detailed Description

Layout representing heterogeneous data at specific memory locations.

-
See also
inherits all member methods of layout
-
Note
absolute must be used as send/receive buffer argument when sending or receiving data of heterogeneous layout.
-
Examples
layouts.cc.
+
See also
inherits all member methods of the class layout
+
Note
absolute must be used as send/receive buffer argument when sending or receiving data of heterogeneous layout.
+
Examples
layouts.cc.
-

Definition at line 1506 of file layout.hpp.

+

Definition at line 1509 of file layout.hpp.

Constructor & Destructor Documentation

◆ heterogeneous_layout() [1/5]

@@ -227,7 +227,7 @@

Definition at line 1577 of file layout.hpp.

+

Definition at line 1580 of file layout.hpp.

@@ -263,7 +263,7 @@

Definition at line 1581 of file layout.hpp.

+

Definition at line 1584 of file layout.hpp.

@@ -329,7 +329,7 @@

Definition at line 1589 of file layout.hpp.

+

Definition at line 1592 of file layout.hpp.

@@ -399,7 +399,7 @@

Definition at line 1598 of file layout.hpp.

+

Definition at line 1601 of file layout.hpp.

@@ -414,7 +414,7 @@

- + @@ -446,7 +446,7 @@

ssize_t mpl::layout< void >::byte_extent ssize_t mpl::layout< void >::byte_extent ( ) const
- + @@ -482,13 +482,13 @@

void mpl::layout< void >::byte_resize

- + - + @@ -527,7 +527,7 @@

ssize_t mpl::layout< void >::byte_lower_bound ssize_t mpl::layout< void >::byte_lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -561,7 +561,7 @@

ssize_t mpl::layout< void >::byte_upper_bound ssize_t mpl::layout< void >::byte_upper_bound ( ) const
- + @@ -593,7 +593,7 @@

ssize_t mpl::layout< void >::extent ssize_t mpl::layout< void >::extent ( ) const
- + @@ -699,13 +699,13 @@

void mpl::layout< void >::resize

- + - + @@ -766,7 +766,7 @@

Definition at line 1612 of file layout.hpp.

+

Definition at line 1615 of file layout.hpp.

@@ -816,7 +816,7 @@

ssize_t mpl::layout< void >::lower_bound ssize_t mpl::layout< void >::lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -848,7 +848,7 @@

ssize_t mpl::layout< void >::true_byte_extent ssize_t mpl::layout< void >::true_byte_extent ( ) const
- + @@ -882,7 +882,7 @@

ssize_t mpl::layout< void >::true_byte_lower_bound ssize_t mpl::layout< void >::true_byte_lower_bound ( ) const
- + @@ -916,7 +916,7 @@

ssize_t mpl::layout< void >::true_byte_upper_bound ssize_t mpl::layout< void >::true_byte_upper_bound ( ) const
- + @@ -948,7 +948,7 @@

ssize_t mpl::layout< void >::true_extent ssize_t mpl::layout< void >::true_extent ( ) const
- + @@ -982,7 +982,7 @@

ssize_t mpl::layout< void >::true_lower_bound ssize_t mpl::layout< void >::true_lower_bound ( ) const
- + @@ -1016,7 +1016,7 @@

ssize_t mpl::layout< void >::true_upper_bound ssize_t mpl::layout< void >::true_upper_bound ( ) const
- + @@ -1048,7 +1048,7 @@

diff --git a/docs/html/classmpl_1_1heterogeneous__layout_1_1parameter-members.html b/docs/html/classmpl_1_1heterogeneous__layout_1_1parameter-members.html index c983eb13..59304a92 100644 --- a/docs/html/classmpl_1_1heterogeneous__layout_1_1parameter-members.html +++ b/docs/html/classmpl_1_1heterogeneous__layout_1_1parameter-members.html @@ -91,7 +91,7 @@

ssize_t mpl::layout< void >::upper_bound ssize_t mpl::layout< void >::upper_bound ( ) const
- +
add(const T &x, const Ts &...xs)mpl::heterogeneous_layout::parameterinline
add(const absolute_data< T * > &x, const Ts &...xs)mpl::heterogeneous_layout::parameterinline
heterogeneous_layoutmpl::heterogeneous_layout::parameterfriend
heterogeneous_layout (defined in mpl::heterogeneous_layout::parameter)mpl::heterogeneous_layout::parameterfriend
parameter()=defaultmpl::heterogeneous_layout::parameter
parameter(const Ts &...xs)mpl::heterogeneous_layout::parameterinlineexplicit
diff --git a/docs/html/classmpl_1_1heterogeneous__layout_1_1parameter.html b/docs/html/classmpl_1_1heterogeneous__layout_1_1parameter.html index fc108d3b..f0228585 100644 --- a/docs/html/classmpl_1_1heterogeneous__layout_1_1parameter.html +++ b/docs/html/classmpl_1_1heterogeneous__layout_1_1parameter.html @@ -106,8 +106,9 @@ - - + + @@ -130,37 +131,10 @@

Detailed Description

Class representing the parameters to characterize a heterogeneous layout.

-

Definition at line 1511 of file layout.hpp.

+

Definition at line 1514 of file layout.hpp.

Constructor & Destructor Documentation

- -

◆ parameter() [1/2]

- -
-
-

Public Member Functions

 parameter ()=default
 creates parameters for a heterogeneous layout representing an empty data set More...
parameter ()=default
 creates parameters for a heterogeneous layout representing an empty data set
 
template<typename... Ts>
 parameter (const Ts &...xs)
- - - - -
- - - - - - - -
mpl::heterogeneous_layout::parameter::parameter ()
-
-default
-
- -

creates parameters for a heterogeneous layout representing an empty data set

- -
- -

◆ parameter() [2/2]

+

◆ parameter()

@@ -199,7 +173,7 @@

Definition at line 1526 of file layout.hpp.

+

Definition at line 1529 of file layout.hpp.

@@ -266,7 +240,7 @@

Definition at line 1550 of file layout.hpp.

+

Definition at line 1553 of file layout.hpp.

@@ -332,7 +306,7 @@

Definition at line 1536 of file layout.hpp.

+

Definition at line 1539 of file layout.hpp.

@@ -357,7 +331,7 @@

-

Definition at line 1557 of file layout.hpp.

+

Definition at line 1560 of file layout.hpp.

@@ -369,7 +343,7 @@

diff --git a/docs/html/classmpl_1_1heterogeneous__layout_1_1parameter.js b/docs/html/classmpl_1_1heterogeneous__layout_1_1parameter.js index 0dba763e..fe057861 100644 --- a/docs/html/classmpl_1_1heterogeneous__layout_1_1parameter.js +++ b/docs/html/classmpl_1_1heterogeneous__layout_1_1parameter.js @@ -3,6 +3,5 @@ var classmpl_1_1heterogeneous__layout_1_1parameter = [ "parameter", "classmpl_1_1heterogeneous__layout_1_1parameter.html#a513ff59ef3a4f879b4505410e428147d", null ], [ "parameter", "classmpl_1_1heterogeneous__layout_1_1parameter.html#a3e6002677c2e8ffdeba903453ff6120f", null ], [ "add", "classmpl_1_1heterogeneous__layout_1_1parameter.html#adfbbfebde35bdcb9a004ac6ae0128d13", null ], - [ "add", "classmpl_1_1heterogeneous__layout_1_1parameter.html#a4e576170d803d71eb3e0bcc402ea632d", null ], - [ "heterogeneous_layout", "classmpl_1_1heterogeneous__layout_1_1parameter.html#a345f190da284e84ef033bec2677fdd5f", null ] + [ "add", "classmpl_1_1heterogeneous__layout_1_1parameter.html#a4e576170d803d71eb3e0bcc402ea632d", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1hindexed__block__layout.html b/docs/html/classmpl_1_1hindexed__block__layout.html index b7a0079c..9c307c43 100644 --- a/docs/html/classmpl_1_1hindexed__block__layout.html +++ b/docs/html/classmpl_1_1hindexed__block__layout.html @@ -146,46 +146,46 @@ void swap (hindexed_block_layout< T > &other)  exchanges two indexed layouts More...
  -ssize_t byte_extent () const +ssize_t byte_extent () const  Get the byte extent of the layout. More...
  -ssize_t byte_lower_bound () const +ssize_t byte_lower_bound () const  Get the byte lower bound of the layout. More...
  -ssize_t byte_upper_bound () const +ssize_t byte_upper_bound () const  Get the byte upper bound of the layout. More...
  -ssize_t extent () const +ssize_t extent () const  Get the extent of the layout. More...
  -ssize_t lower_bound () const +ssize_t lower_bound () const  Get the lower bound of the layout. More...
  -ssize_t upper_bound () const +ssize_t upper_bound () const  Get the upper bound of the layout. More...
  -ssize_t true_byte_extent () const +ssize_t true_byte_extent () const  Get the true byte extent of the layout. More...
  -ssize_t true_byte_lower_bound () const +ssize_t true_byte_lower_bound () const  Get the true byte lower bound of the layout. More...
  -ssize_t true_byte_upper_bound () const +ssize_t true_byte_upper_bound () const  Get the true byte upper bound of the layout. More...
  -ssize_t true_extent () const +ssize_t true_extent () const  Get the true extent of the layout. More...
  -ssize_t true_lower_bound () const +ssize_t true_lower_bound () const  Get the true lower bound of the layout. More...
  -ssize_t true_upper_bound () const +ssize_t true_upper_bound () const  Get the true upper bound of the layout. More...
  -void byte_resize (ssize_t lb, ssize_t extent) +void byte_resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  -void resize (ssize_t lb, ssize_t extent) +void resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  void swap (layout &l) @@ -432,7 +432,7 @@

- + @@ -466,7 +466,7 @@

ssize_t mpl::layout< T >::byte_extent ssize_t mpl::layout< T >::byte_extent ( ) const
- + @@ -504,13 +504,13 @@

void mpl::layout< T >::byte_resize

- + - + @@ -551,7 +551,7 @@

ssize_t mpl::layout< T >::byte_lower_bound ssize_t mpl::layout< T >::byte_lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -587,7 +587,7 @@

ssize_t mpl::layout< T >::byte_upper_bound ssize_t mpl::layout< T >::byte_upper_bound ( ) const
- + @@ -621,7 +621,7 @@

ssize_t mpl::layout< T >::extent ssize_t mpl::layout< T >::extent ( ) const
- + @@ -733,13 +733,13 @@

void mpl::layout< T >::resize

- + - + @@ -763,7 +763,7 @@

Examples
layouts.cc.
+
Examples
layouts.cc.

Definition at line 314 of file layout.hpp.

@@ -858,7 +858,7 @@

ssize_t mpl::layout< T >::lower_bound ssize_t mpl::layout< T >::lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -892,7 +892,7 @@

ssize_t mpl::layout< T >::true_byte_extent ssize_t mpl::layout< T >::true_byte_extent ( ) const
- + @@ -928,7 +928,7 @@

ssize_t mpl::layout< T >::true_byte_lower_bound ssize_t mpl::layout< T >::true_byte_lower_bound ( ) const
- + @@ -964,7 +964,7 @@

ssize_t mpl::layout< T >::true_byte_upper_bound ssize_t mpl::layout< T >::true_byte_upper_bound ( ) const
- + @@ -998,7 +998,7 @@

ssize_t mpl::layout< T >::true_extent ssize_t mpl::layout< T >::true_extent ( ) const
- + @@ -1034,7 +1034,7 @@

ssize_t mpl::layout< T >::true_lower_bound ssize_t mpl::layout< T >::true_lower_bound ( ) const
- + @@ -1070,7 +1070,7 @@

ssize_t mpl::layout< T >::true_upper_bound ssize_t mpl::layout< T >::true_upper_bound ( ) const
- + @@ -1102,7 +1102,7 @@

diff --git a/docs/html/classmpl_1_1hindexed__block__layout_1_1parameter-members.html b/docs/html/classmpl_1_1hindexed__block__layout_1_1parameter-members.html index e67982d5..bedbd812 100644 --- a/docs/html/classmpl_1_1hindexed__block__layout_1_1parameter-members.html +++ b/docs/html/classmpl_1_1hindexed__block__layout_1_1parameter-members.html @@ -90,7 +90,7 @@

This is the complete list of members for mpl::hindexed_block_layout< T >::parameter, including all inherited members.

ssize_t mpl::layout< T >::upper_bound ssize_t mpl::layout< T >::upper_bound ( ) const
- + diff --git a/docs/html/classmpl_1_1hindexed__block__layout_1_1parameter.html b/docs/html/classmpl_1_1hindexed__block__layout_1_1parameter.html index c584ca8d..189f4849 100644 --- a/docs/html/classmpl_1_1hindexed__block__layout_1_1parameter.html +++ b/docs/html/classmpl_1_1hindexed__block__layout_1_1parameter.html @@ -106,17 +106,18 @@
add(ssize_t displacement)mpl::hindexed_block_layout< T >::parameterinline
hindexed_block_layoutmpl::hindexed_block_layout< T >::parameterfriend
hindexed_block_layout (defined in mpl::hindexed_block_layout< T >::parameter)mpl::hindexed_block_layout< T >::parameterfriend
parameter()=defaultmpl::hindexed_block_layout< T >::parameter
parameter(const List_T &list)mpl::hindexed_block_layout< T >::parameterinlineexplicit
parameter(std::initializer_list< ssize_t > list)mpl::hindexed_block_layout< T >::parameterinline
- - + + - + - +

Public Member Functions

 parameter ()=default
 creates an hindexed block layout parameter for an empty sequence More...
parameter ()=default
 creates an hindexed block layout parameter for an empty sequence
 
template<typename List_T >
 parameter (const List_T &list)
 converts a container into a parameters More...
 
 parameter (std::initializer_list< ssize_t > list)
 parameter (std::initializer_list< ssize_t > list)
 converts an initializer list into an hindexed block layout parameter More...
 
void add (ssize_t displacement)
void add (ssize_t displacement)
 add an additional block More...
 
@@ -131,37 +132,8 @@

Definition at line 1071 of file layout.hpp.

Constructor & Destructor Documentation

- -

◆ parameter() [1/3]

- -
-
-
-template<typename T >
-
- - - - -
- - - - - - - -
mpl::hindexed_block_layout< T >::parameter::parameter ()
-
-default
-
- -

creates an hindexed block layout parameter for an empty sequence

- -
- -

◆ parameter() [2/3]

+

◆ parameter() [1/2]

@@ -207,7 +179,7 @@

-

◆ parameter() [3/3]

+

◆ parameter() [2/2]

@@ -220,7 +192,7 @@

mpl::hindexed_block_layout< T >::parameter::parameter ( - std::initializer_list< ssize_t >  + std::initializer_list< ssize_t >  list) @@ -259,7 +231,7 @@

void mpl::hindexed_block_layout< T >::parameter::add ( - ssize_t  + ssize_t  displacement) @@ -318,7 +290,7 @@

diff --git a/docs/html/classmpl_1_1hindexed__block__layout_1_1parameter.js b/docs/html/classmpl_1_1hindexed__block__layout_1_1parameter.js index 1a8a6392..f2c01b24 100644 --- a/docs/html/classmpl_1_1hindexed__block__layout_1_1parameter.js +++ b/docs/html/classmpl_1_1hindexed__block__layout_1_1parameter.js @@ -3,6 +3,5 @@ var classmpl_1_1hindexed__block__layout_1_1parameter = [ "parameter", "classmpl_1_1hindexed__block__layout_1_1parameter.html#a5577f0cc7963c4a58195922e1da85403", null ], [ "parameter", "classmpl_1_1hindexed__block__layout_1_1parameter.html#ac31e4f491add1a9bad604b9c8303d3a3", null ], [ "parameter", "classmpl_1_1hindexed__block__layout_1_1parameter.html#ada60546fd361cd67a04fe083a5c09f35", null ], - [ "add", "classmpl_1_1hindexed__block__layout_1_1parameter.html#a6699819fb72a60027c750f93aa0df8c1", null ], - [ "hindexed_block_layout", "classmpl_1_1hindexed__block__layout_1_1parameter.html#a69ff431775bd1969641bcb73a6ee8668", null ] + [ "add", "classmpl_1_1hindexed__block__layout_1_1parameter.html#a6699819fb72a60027c750f93aa0df8c1", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1hindexed__layout.html b/docs/html/classmpl_1_1hindexed__layout.html index fc902053..f32cea7b 100644 --- a/docs/html/classmpl_1_1hindexed__layout.html +++ b/docs/html/classmpl_1_1hindexed__layout.html @@ -146,46 +146,46 @@ void swap (hindexed_layout< T > &other)  exchanges two indexed layouts More...
  -ssize_t byte_extent () const +ssize_t byte_extent () const  Get the byte extent of the layout. More...
  -ssize_t byte_lower_bound () const +ssize_t byte_lower_bound () const  Get the byte lower bound of the layout. More...
  -ssize_t byte_upper_bound () const +ssize_t byte_upper_bound () const  Get the byte upper bound of the layout. More...
  -ssize_t extent () const +ssize_t extent () const  Get the extent of the layout. More...
  -ssize_t lower_bound () const +ssize_t lower_bound () const  Get the lower bound of the layout. More...
  -ssize_t upper_bound () const +ssize_t upper_bound () const  Get the upper bound of the layout. More...
  -ssize_t true_byte_extent () const +ssize_t true_byte_extent () const  Get the true byte extent of the layout. More...
  -ssize_t true_byte_lower_bound () const +ssize_t true_byte_lower_bound () const  Get the true byte lower bound of the layout. More...
  -ssize_t true_byte_upper_bound () const +ssize_t true_byte_upper_bound () const  Get the true byte upper bound of the layout. More...
  -ssize_t true_extent () const +ssize_t true_extent () const  Get the true extent of the layout. More...
  -ssize_t true_lower_bound () const +ssize_t true_lower_bound () const  Get the true lower bound of the layout. More...
  -ssize_t true_upper_bound () const +ssize_t true_upper_bound () const  Get the true upper bound of the layout. More...
  -void byte_resize (ssize_t lb, ssize_t extent) +void byte_resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  -void resize (ssize_t lb, ssize_t extent) +void resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  void swap (layout &l) @@ -414,7 +414,7 @@

- + @@ -448,7 +448,7 @@

ssize_t mpl::layout< T >::byte_extent ssize_t mpl::layout< T >::byte_extent ( ) const
- + @@ -486,13 +486,13 @@

void mpl::layout< T >::byte_resize

- + - + @@ -533,7 +533,7 @@

ssize_t mpl::layout< T >::byte_lower_bound ssize_t mpl::layout< T >::byte_lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -569,7 +569,7 @@

ssize_t mpl::layout< T >::byte_upper_bound ssize_t mpl::layout< T >::byte_upper_bound ( ) const
- + @@ -603,7 +603,7 @@

ssize_t mpl::layout< T >::extent ssize_t mpl::layout< T >::extent ( ) const
- + @@ -715,13 +715,13 @@

void mpl::layout< T >::resize

- + - + @@ -745,7 +745,7 @@

Examples
layouts.cc.
+
Examples
layouts.cc.

Definition at line 314 of file layout.hpp.

@@ -840,7 +840,7 @@

ssize_t mpl::layout< T >::lower_bound ssize_t mpl::layout< T >::lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -874,7 +874,7 @@

ssize_t mpl::layout< T >::true_byte_extent ssize_t mpl::layout< T >::true_byte_extent ( ) const
- + @@ -910,7 +910,7 @@

ssize_t mpl::layout< T >::true_byte_lower_bound ssize_t mpl::layout< T >::true_byte_lower_bound ( ) const
- + @@ -946,7 +946,7 @@

ssize_t mpl::layout< T >::true_byte_upper_bound ssize_t mpl::layout< T >::true_byte_upper_bound ( ) const
- + @@ -980,7 +980,7 @@

ssize_t mpl::layout< T >::true_extent ssize_t mpl::layout< T >::true_extent ( ) const
- + @@ -1016,7 +1016,7 @@

ssize_t mpl::layout< T >::true_lower_bound ssize_t mpl::layout< T >::true_lower_bound ( ) const
- + @@ -1052,7 +1052,7 @@

ssize_t mpl::layout< T >::true_upper_bound ssize_t mpl::layout< T >::true_upper_bound ( ) const
- + @@ -1084,7 +1084,7 @@

diff --git a/docs/html/classmpl_1_1hindexed__layout_1_1parameter-members.html b/docs/html/classmpl_1_1hindexed__layout_1_1parameter-members.html index 1c4994dd..f4408904 100644 --- a/docs/html/classmpl_1_1hindexed__layout_1_1parameter-members.html +++ b/docs/html/classmpl_1_1hindexed__layout_1_1parameter-members.html @@ -90,7 +90,7 @@

This is the complete list of members for mpl::hindexed_layout< T >::parameter, including all inherited members.

ssize_t mpl::layout< T >::upper_bound ssize_t mpl::layout< T >::upper_bound ( ) const
- + diff --git a/docs/html/classmpl_1_1hindexed__layout_1_1parameter.html b/docs/html/classmpl_1_1hindexed__layout_1_1parameter.html index e79b419e..8fb31643 100644 --- a/docs/html/classmpl_1_1hindexed__layout_1_1parameter.html +++ b/docs/html/classmpl_1_1hindexed__layout_1_1parameter.html @@ -106,17 +106,18 @@
add(int blocklength, ssize_t displacement)mpl::hindexed_layout< T >::parameterinline
hindexed_layoutmpl::hindexed_layout< T >::parameterfriend
hindexed_layout (defined in mpl::hindexed_layout< T >::parameter)mpl::hindexed_layout< T >::parameterfriend
parameter()=defaultmpl::hindexed_layout< T >::parameter
parameter(const List_T &list)mpl::hindexed_layout< T >::parameterinlineexplicit
parameter(std::initializer_list< std::tuple< int, ssize_t > > list)mpl::hindexed_layout< T >::parameterinline
- - + + - + - +

Public Member Functions

 parameter ()=default
 creates parameters for an empty sequence More...
parameter ()=default
 creates parameters for an empty sequence
 
template<typename List_T >
 parameter (const List_T &list)
 converts a container into a hindexed layout parameter More...
 
 parameter (std::initializer_list< std::tuple< int, ssize_t > > list)
 parameter (std::initializer_list< std::tuple< int, ssize_t > > list)
 converts an initializer list into a hindexed layout parameter More...
 
void add (int blocklength, ssize_t displacement)
void add (int blocklength, ssize_t displacement)
 add an additional block More...
 
@@ -131,37 +132,8 @@

Definition at line 841 of file layout.hpp.

Constructor & Destructor Documentation

- -

◆ parameter() [1/3]

- -
-
-
-template<typename T >
-
- - - - -
- - - - - - - -
mpl::hindexed_layout< T >::parameter::parameter ()
-
-default
-

- -

creates parameters for an empty sequence

- -
-

-

◆ parameter() [2/3]

+

◆ parameter() [1/2]

@@ -207,7 +179,7 @@

-

◆ parameter() [3/3]

+

◆ parameter() [2/2]

@@ -220,7 +192,7 @@

mpl::hindexed_layout< T >::parameter::parameter ( - std::initializer_list< std::tuple< int, ssize_t > >  + std::initializer_list< std::tuple< int, ssize_t > >  list) @@ -265,7 +237,7 @@

- ssize_t  + ssize_t  displacement  @@ -329,7 +301,7 @@

diff --git a/docs/html/classmpl_1_1hindexed__layout_1_1parameter.js b/docs/html/classmpl_1_1hindexed__layout_1_1parameter.js index d007457c..199ec124 100644 --- a/docs/html/classmpl_1_1hindexed__layout_1_1parameter.js +++ b/docs/html/classmpl_1_1hindexed__layout_1_1parameter.js @@ -3,6 +3,5 @@ var classmpl_1_1hindexed__layout_1_1parameter = [ "parameter", "classmpl_1_1hindexed__layout_1_1parameter.html#ac1f84b65ffbb428a02e099c7e7b1b16a", null ], [ "parameter", "classmpl_1_1hindexed__layout_1_1parameter.html#ab8f9a7e2e4c17f1cd55ad7f268fc7ac0", null ], [ "parameter", "classmpl_1_1hindexed__layout_1_1parameter.html#a137203f563366d04c169371675dba0ea", null ], - [ "add", "classmpl_1_1hindexed__layout_1_1parameter.html#a22fbba95008c8cf65c704ca1711f3a1c", null ], - [ "hindexed_layout", "classmpl_1_1hindexed__layout_1_1parameter.html#adc58655b3738b34c8feb41b014aa8227", null ] + [ "add", "classmpl_1_1hindexed__layout_1_1parameter.html#a22fbba95008c8cf65c704ca1711f3a1c", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1impl_1_1irequest-members.html b/docs/html/classmpl_1_1impl_1_1irequest-members.html index e6248141..a12208c5 100644 --- a/docs/html/classmpl_1_1impl_1_1irequest-members.html +++ b/docs/html/classmpl_1_1impl_1_1irequest-members.html @@ -89,9 +89,9 @@

This is the complete list of members for mpl::impl::irequest, including all inherited members.

- - - + + +
irequest(MPI_Request req)mpl::impl::irequestinlineexplicit
request< irequest >mpl::impl::irequestfriend
request_pool< mpl::irequest >mpl::impl::irequestfriend
irequest(MPI_Request req) (defined in mpl::impl::irequest)mpl::impl::irequestinlineexplicit
request< irequest > (defined in mpl::impl::irequest)mpl::impl::irequestfriend
request_pool< mpl::irequest > (defined in mpl::impl::irequest)mpl::impl::irequestfriend

diff --git a/docs/html/classmpl_1_1impl_1_1irequest.html b/docs/html/classmpl_1_1impl_1_1irequest.html index 3b66d38a..deb81a44 100644 --- a/docs/html/classmpl_1_1impl_1_1irequest.html +++ b/docs/html/classmpl_1_1impl_1_1irequest.html @@ -90,8 +90,6 @@
mpl::impl::irequest Class Reference
- -

#include <request.hpp>

Collaboration diagram for mpl::impl::irequest:
@@ -202,7 +200,7 @@

diff --git a/docs/html/classmpl_1_1impl_1_1irequest.js b/docs/html/classmpl_1_1impl_1_1irequest.js deleted file mode 100644 index 3bad8207..00000000 --- a/docs/html/classmpl_1_1impl_1_1irequest.js +++ /dev/null @@ -1,6 +0,0 @@ -var classmpl_1_1impl_1_1irequest = -[ - [ "irequest", "classmpl_1_1impl_1_1irequest.html#a1f093c2ed5b963f78f55f8c9fee06f07", null ], - [ "request< irequest >", "classmpl_1_1impl_1_1irequest.html#afc6c0627314f63682b958c13cf936247", null ], - [ "request_pool< mpl::irequest >", "classmpl_1_1impl_1_1irequest.html#aa9403354e473e9978d6e49bc4389c9fe", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1impl_1_1prequest-members.html b/docs/html/classmpl_1_1impl_1_1prequest-members.html index c75f7ef1..87d5bf56 100644 --- a/docs/html/classmpl_1_1impl_1_1prequest-members.html +++ b/docs/html/classmpl_1_1impl_1_1prequest-members.html @@ -89,9 +89,9 @@

This is the complete list of members for mpl::impl::prequest, including all inherited members.

- - - + + +
prequest(MPI_Request req)mpl::impl::prequestinlineexplicit
request< prequest >mpl::impl::prequestfriend
request_pool< mpl::prequest >mpl::impl::prequestfriend
prequest(MPI_Request req) (defined in mpl::impl::prequest)mpl::impl::prequestinlineexplicit
request< prequest > (defined in mpl::impl::prequest)mpl::impl::prequestfriend
request_pool< mpl::prequest > (defined in mpl::impl::prequest)mpl::impl::prequestfriend
diff --git a/docs/html/classmpl_1_1impl_1_1prequest.html b/docs/html/classmpl_1_1impl_1_1prequest.html index ddc2690d..93896069 100644 --- a/docs/html/classmpl_1_1impl_1_1prequest.html +++ b/docs/html/classmpl_1_1impl_1_1prequest.html @@ -90,8 +90,6 @@
mpl::impl::prequest Class Reference
- -

#include <request.hpp>

Collaboration diagram for mpl::impl::prequest:
@@ -202,7 +200,7 @@

diff --git a/docs/html/classmpl_1_1impl_1_1prequest.js b/docs/html/classmpl_1_1impl_1_1prequest.js deleted file mode 100644 index ce502a1b..00000000 --- a/docs/html/classmpl_1_1impl_1_1prequest.js +++ /dev/null @@ -1,6 +0,0 @@ -var classmpl_1_1impl_1_1prequest = -[ - [ "prequest", "classmpl_1_1impl_1_1prequest.html#af3844c4d36b3642909a2d6ce76794fd5", null ], - [ "request< prequest >", "classmpl_1_1impl_1_1prequest.html#a8c7c30bf6b0c6ffc75d78caeac645230", null ], - [ "request_pool< mpl::prequest >", "classmpl_1_1impl_1_1prequest.html#a99278de2244bd4d9129a7a07c40dd721", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1impl_1_1request-members.html b/docs/html/classmpl_1_1impl_1_1request-members.html index 14256ca4..be47995d 100644 --- a/docs/html/classmpl_1_1impl_1_1request-members.html +++ b/docs/html/classmpl_1_1impl_1_1request-members.html @@ -89,18 +89,18 @@

This is the complete list of members for mpl::impl::request< T >, including all inherited members.

- - - - - - - - - - - - + + + + + + + + + + + +
cancel()mpl::impl::request< T >inline
get_status()mpl::impl::request< T >inline
operator=(const request &)=deletempl::impl::request< T >
operator=(request &&other) noexceptmpl::impl::request< T >inline
request()=deletempl::impl::request< T >
request(const request &)=deletempl::impl::request< T >
request(const irequest &req)mpl::impl::request< T >inlineexplicit
request(const prequest &req)mpl::impl::request< T >inlineexplicit
request(request &&other) noexceptmpl::impl::request< T >inline
test()mpl::impl::request< T >inline
wait()mpl::impl::request< T >inline
~request()mpl::impl::request< T >inline
cancel() (defined in mpl::impl::request< T >)mpl::impl::request< T >inline
get_status() (defined in mpl::impl::request< T >)mpl::impl::request< T >inline
operator=(const request &)=delete (defined in mpl::impl::request< T >)mpl::impl::request< T >
operator=(request &&other) noexcept (defined in mpl::impl::request< T >)mpl::impl::request< T >inline
request()=delete (defined in mpl::impl::request< T >)mpl::impl::request< T >
request(const request &)=delete (defined in mpl::impl::request< T >)mpl::impl::request< T >
request(const irequest &req) (defined in mpl::impl::request< T >)mpl::impl::request< T >inlineexplicit
request(const prequest &req) (defined in mpl::impl::request< T >)mpl::impl::request< T >inlineexplicit
request(request &&other) noexcept (defined in mpl::impl::request< T >)mpl::impl::request< T >inline
test() (defined in mpl::impl::request< T >)mpl::impl::request< T >inline
wait() (defined in mpl::impl::request< T >)mpl::impl::request< T >inline
~request() (defined in mpl::impl::request< T >)mpl::impl::request< T >inline
diff --git a/docs/html/classmpl_1_1impl_1_1request.html b/docs/html/classmpl_1_1impl_1_1request.html index 6a177f34..70e3d16a 100644 --- a/docs/html/classmpl_1_1impl_1_1request.html +++ b/docs/html/classmpl_1_1impl_1_1request.html @@ -89,8 +89,6 @@
mpl::impl::request< T > Class Template Reference
- -

#include <request.hpp>

Collaboration diagram for mpl::impl::request< T >:
@@ -102,9 +100,8 @@ - - - + @@ -112,9 +109,8 @@ - - - + @@ -132,63 +128,8 @@ class mpl::impl::request< T >

Definition at line 52 of file request.hpp.

Constructor & Destructor Documentation

- -

◆ request() [1/5]

- -
-
-
-template<typename T >
-

Public Member Functions

 request ()=delete
 
 request (const request &)=delete
request (const request &)=delete
 
 request (const irequest &req)
 
 
 request (request &&other) noexcept
 
 ~request ()
 
void operator= (const request &)=delete
+void operator= (const request &)=delete
 
requestoperator= (request &&other) noexcept
 
- - - - -
- - - - - - - -
mpl::impl::request< T >::request ()
-
-delete
-
- -
-
- -

◆ request() [2/5]

- -
-
-
-template<typename T >
- - - - - -
- - - - - - - - -
mpl::impl::request< T >::request (const request< T > & )
-
-delete
-
- -
-
-

◆ request() [3/5]

+

◆ request() [1/3]

@@ -218,7 +159,7 @@

-

◆ request() [4/5]

+

◆ request() [2/3]

@@ -248,7 +189,7 @@

-

◆ request() [5/5]

+

◆ request() [3/3]

@@ -363,38 +304,10 @@

Definition at line 98 of file request.hpp.

-

-
- -

◆ operator=() [1/2]

- -
-
-
-template<typename T >
- - - - - -
- - - - - - - - -
void mpl::impl::request< T >::operator= (const request< T > & )
-
-delete
-
-
-

◆ operator=() [2/2]

+

◆ operator=()

@@ -489,7 +402,7 @@

diff --git a/docs/html/classmpl_1_1impl_1_1request.js b/docs/html/classmpl_1_1impl_1_1request.js deleted file mode 100644 index 7b28739a..00000000 --- a/docs/html/classmpl_1_1impl_1_1request.js +++ /dev/null @@ -1,15 +0,0 @@ -var classmpl_1_1impl_1_1request = -[ - [ "request", "classmpl_1_1impl_1_1request.html#a50d6175fd7b272b5c4a5b0ac26b8724c", null ], - [ "request", "classmpl_1_1impl_1_1request.html#a5593bb18f48fc5f74da74ff604936fd2", null ], - [ "request", "classmpl_1_1impl_1_1request.html#ae54279c8f5ad406e91b5fc0eb0acab33", null ], - [ "request", "classmpl_1_1impl_1_1request.html#aec0305ea4db43ce204b10419ea47ab88", null ], - [ "request", "classmpl_1_1impl_1_1request.html#a1182379a389ccf58d502142d550eed1a", null ], - [ "~request", "classmpl_1_1impl_1_1request.html#ab53c21c706def81d4953a618ab426c08", null ], - [ "cancel", "classmpl_1_1impl_1_1request.html#ad2ddcfa49b35df4120235692fdebdef2", null ], - [ "get_status", "classmpl_1_1impl_1_1request.html#a8ed5bdb05a4a5caf7dc2c08832b6fc73", null ], - [ "operator=", "classmpl_1_1impl_1_1request.html#a33283c16ad83120ba14976a109ee9040", null ], - [ "operator=", "classmpl_1_1impl_1_1request.html#a89cc002a4f4c608d7ecdc3ef03fa575a", null ], - [ "test", "classmpl_1_1impl_1_1request.html#a9731fa2fb0157e792af4d9e5ade4103b", null ], - [ "wait", "classmpl_1_1impl_1_1request.html#aedca3ad316f078b0190b9396197a7605", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1impl_1_1request__pool-members.html b/docs/html/classmpl_1_1impl_1_1request__pool-members.html index 1939624d..82cd03f3 100644 --- a/docs/html/classmpl_1_1impl_1_1request__pool-members.html +++ b/docs/html/classmpl_1_1impl_1_1request__pool-members.html @@ -89,25 +89,25 @@

This is the complete list of members for mpl::impl::request_pool< T >, including all inherited members.

- - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + +
cancel(size_type i)mpl::impl::request_pool< T >inline
cancelall()mpl::impl::request_pool< T >inline
empty() constmpl::impl::request_pool< T >inline
get_status(size_type i) constmpl::impl::request_pool< T >inline
operator=(const request_pool &)=deletempl::impl::request_pool< T >
operator=(request_pool &&other) noexceptmpl::impl::request_pool< T >inline
push(T &&other)mpl::impl::request_pool< T >inline
request_pool()=defaultmpl::impl::request_pool< T >
request_pool(const request_pool &)=deletempl::impl::request_pool< T >
request_pool(request_pool &&other) noexceptmpl::impl::request_pool< T >inline
size() constmpl::impl::request_pool< T >inline
size_type typedefmpl::impl::request_pool< T >
testall()mpl::impl::request_pool< T >inline
testany()mpl::impl::request_pool< T >inline
testsome(I iter)mpl::impl::request_pool< T >inline
waitall()mpl::impl::request_pool< T >inline
waitany()mpl::impl::request_pool< T >inline
waitsome(I iter)mpl::impl::request_pool< T >inline
~request_pool()mpl::impl::request_pool< T >inline
cancel(size_type i) (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >inline
cancelall() (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >inline
empty() const (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >inline
get_status(size_type i) const (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >inline
operator=(const request_pool &)=delete (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >
operator=(request_pool &&other) noexcept (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >inline
push(T &&other) (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >inline
request_pool()=default (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >
request_pool(const request_pool &)=delete (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >
request_pool(request_pool &&other) noexcept (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >inline
size() const (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >inline
size_type typedef (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >
testall() (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >inline
testany() (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >inline
testsome(I iter) (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >inline
waitall() (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >inline
waitany() (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >inline
waitsome(I iter) (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >inline
~request_pool() (defined in mpl::impl::request_pool< T >)mpl::impl::request_pool< T >inline

diff --git a/docs/html/classmpl_1_1impl_1_1request__pool.html b/docs/html/classmpl_1_1impl_1_1request__pool.html index f766b6ab..917b6cb9 100644 --- a/docs/html/classmpl_1_1impl_1_1request__pool.html +++ b/docs/html/classmpl_1_1impl_1_1request__pool.html @@ -90,8 +90,6 @@
mpl::impl::request_pool< T > Class Template Reference
- -

#include <request.hpp>

Collaboration diagram for mpl::impl::request_pool< T >:
@@ -103,38 +101,36 @@ - +

Public Types

using size_type = std::vector< MPI_Request >::size_type
using size_type = std::vector< MPI_Request >::size_type
 
- - - + - - - + - + - + - + - + - + @@ -161,7 +157,7 @@

- +

Public Member Functions

 request_pool ()=default
 
 request_pool (const request_pool &)=delete
request_pool (const request_pool &)=delete
 
 request_pool (request_pool &&other) noexcept
 
 ~request_pool ()
 
void operator= (const request_pool &)=delete
+void operator= (const request_pool &)=delete
 
request_pooloperator= (request_pool &&other) noexcept
 
size_type size () const
size_type size () const
 
bool empty () const
 
const status_tget_status (size_type i) const
const status_tget_status (size_type i) const
 
void cancel (size_type i)
void cancel (size_type i)
 
void cancelall ()
 
void push (T &&other)
 
std::pair< bool, size_typewaitany ()
std::pair< bool, size_type > waitany ()
 
std::pair< bool, size_typetestany ()
std::pair< bool, size_type > testany ()
 
void waitall ()
 
using mpl::impl::request_pool< T >::size_type = std::vector<MPI_Request>::size_typeusing mpl::impl::request_pool< T >::size_type = std::vector<MPI_Request>::size_type
@@ -171,63 +167,8 @@

Constructor & Destructor Documentation

- -

◆ request_pool() [1/3]

- -
-
-
-template<typename T >
- - - - - -
- - - - - - - -
mpl::impl::request_pool< T >::request_pool ()
-
-default
-
- -
-
- -

◆ request_pool() [2/3]

- -
-
-
-template<typename T >
- - - - - -
- - - - - - - - -
mpl::impl::request_pool< T >::request_pool (const request_pool< T > & )
-
-delete
-
- -
-
-

◆ request_pool() [3/3]

+

◆ request_pool()

@@ -300,7 +241,7 @@

void mpl::impl::request_pool< T >::cancel ( - size_type  + size_type  i) @@ -388,7 +329,7 @@

const status_t & mpl::impl::request_pool< T >::get_status ( - size_type  + size_type  i) const @@ -402,38 +343,10 @@

Definition at line 149 of file request.hpp.

-

-
- -

◆ operator=() [1/2]

- -
-
-
-template<typename T >
- - - - - -
- - - - - - - - -
void mpl::impl::request_pool< T >::operator= (const request_pool< T > & )
-
-delete
-
-
-

◆ operator=() [2/2]

+

◆ operator=()

@@ -504,7 +417,7 @@

- + @@ -562,7 +475,7 @@

size_type mpl::impl::request_pool< T >::size size_type mpl::impl::request_pool< T >::size ( ) const
- + @@ -652,7 +565,7 @@

std::pair< bool, size_type > mpl::impl::request_pool< T >::testany std::pair< bool, size_type > mpl::impl::request_pool< T >::testany ( )
- + @@ -709,7 +622,7 @@

diff --git a/docs/html/classmpl_1_1impl_1_1request__pool.js b/docs/html/classmpl_1_1impl_1_1request__pool.js deleted file mode 100644 index e16abfa0..00000000 --- a/docs/html/classmpl_1_1impl_1_1request__pool.js +++ /dev/null @@ -1,22 +0,0 @@ -var classmpl_1_1impl_1_1request__pool = -[ - [ "size_type", "classmpl_1_1impl_1_1request__pool.html#a5b3f8f3986dc6bc5852939446531c767", null ], - [ "request_pool", "classmpl_1_1impl_1_1request__pool.html#ab431bc48d9e0a81eeac03ae8a53592ba", null ], - [ "request_pool", "classmpl_1_1impl_1_1request__pool.html#a541dc0dc092a1cf68f983ef23318e3e7", null ], - [ "request_pool", "classmpl_1_1impl_1_1request__pool.html#a55de4601b01500daff1468db92ab2ac9", null ], - [ "~request_pool", "classmpl_1_1impl_1_1request__pool.html#aedfd5afa202dcc4f82d06d45ba23a198", null ], - [ "cancel", "classmpl_1_1impl_1_1request__pool.html#a09521b62f5b53546c854e89644245b70", null ], - [ "cancelall", "classmpl_1_1impl_1_1request__pool.html#a4191612db45d53cab3a294f3ac2f9018", null ], - [ "empty", "classmpl_1_1impl_1_1request__pool.html#acdd1055b70611cd8796d0c22ccfb2397", null ], - [ "get_status", "classmpl_1_1impl_1_1request__pool.html#a7761f370d4bbef127a41fc1f4b0f39f9", null ], - [ "operator=", "classmpl_1_1impl_1_1request__pool.html#ade8d3d85e937db0607a6da284d290891", null ], - [ "operator=", "classmpl_1_1impl_1_1request__pool.html#aad75fcd95d200f87043b6bf59074f5e2", null ], - [ "push", "classmpl_1_1impl_1_1request__pool.html#a9b2ce42dc5ec15f8875673e07f6d77bf", null ], - [ "size", "classmpl_1_1impl_1_1request__pool.html#a40b2e7f51521f6cbf1ba99c26547dade", null ], - [ "testall", "classmpl_1_1impl_1_1request__pool.html#a5ebba7b0471ba84cf591abace463072f", null ], - [ "testany", "classmpl_1_1impl_1_1request__pool.html#a0119c4bd3e340044868b9c26bae2a6f9", null ], - [ "testsome", "classmpl_1_1impl_1_1request__pool.html#a0adfe04dd4bf29535b6687562fb88989", null ], - [ "waitall", "classmpl_1_1impl_1_1request__pool.html#a1e864f5b3e62bb28db94bec090235401", null ], - [ "waitany", "classmpl_1_1impl_1_1request__pool.html#a1acdccf04f454806bac255279ac53974", null ], - [ "waitsome", "classmpl_1_1impl_1_1request__pool.html#ab076cdb8feb7b1270497af73430e4fde", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1impl_1_1topology__communicator.html b/docs/html/classmpl_1_1impl_1_1topology__communicator.html index fe082c11..b6f26e9b 100644 --- a/docs/html/classmpl_1_1impl_1_1topology__communicator.html +++ b/docs/html/classmpl_1_1impl_1_1topology__communicator.html @@ -134,8 +134,9 @@

std::pair< bool, size_type > mpl::impl::request_pool< T >::waitany std::pair< bool, size_type > mpl::impl::request_pool< T >::waitany ( )
- - + + @@ -260,11 +261,11 @@ - + - + @@ -417,31 +418,33 @@ + + - + - + - + - + - + - + @@ -927,7 +930,7 @@

Definition at line 281 of file comm_group.hpp.

+

Definition at line 284 of file comm_group.hpp.

@@ -964,10 +967,10 @@

Note
Method provides just a "best attempt" to abort processes.
-
Examples
arrays.cc, iterators.cc, standard_types.cc, stl_container.cc, and struct.cc.
+
Examples
arrays.cc, iterators.cc, standard_types.cc, stl_container.cc, and struct.cc.
-

Definition at line 606 of file comm_group.hpp.

+

Definition at line 614 of file comm_group.hpp.

@@ -1022,10 +1025,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-
Examples
parallel_sort_mpl.cc.
+
Examples
parallel_sort_mpl.cc.
-

Definition at line 2784 of file comm_group.hpp.

+

Definition at line 2803 of file comm_group.hpp.

@@ -1095,7 +1098,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 2799 of file comm_group.hpp.

+

Definition at line 2818 of file comm_group.hpp.

@@ -1165,7 +1168,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2880 of file comm_group.hpp.

+

Definition at line 2899 of file comm_group.hpp.

@@ -1242,7 +1245,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2859 of file comm_group.hpp.

+

Definition at line 2878 of file comm_group.hpp.

@@ -1305,10 +1308,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc, and communicator.cc.
+
Examples
collective.cc, and communicator.cc.
-

Definition at line 4009 of file comm_group.hpp.

+

Definition at line 4030 of file comm_group.hpp.

@@ -1379,7 +1382,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 4026 of file comm_group.hpp.

+

Definition at line 4047 of file comm_group.hpp.

@@ -1436,7 +1439,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4086 of file comm_group.hpp.

+

Definition at line 4107 of file comm_group.hpp.

@@ -1500,7 +1503,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4103 of file comm_group.hpp.

+

Definition at line 4124 of file comm_group.hpp.

@@ -1570,7 +1573,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3258 of file comm_group.hpp.

+

Definition at line 3277 of file comm_group.hpp.

@@ -1626,7 +1629,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3236 of file comm_group.hpp.

+

Definition at line 3255 of file comm_group.hpp.

@@ -1671,7 +1674,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3328 of file comm_group.hpp.

+

Definition at line 3347 of file comm_group.hpp.

@@ -1727,7 +1730,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3349 of file comm_group.hpp.

+

Definition at line 3368 of file comm_group.hpp.

@@ -1810,10 +1813,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
matrix_gather.cc, and parallel_sort_mpl.cc.
+
Examples
matrix_gather.cc, and parallel_sort_mpl.cc.
-

Definition at line 3427 of file comm_group.hpp.

+

Definition at line 3446 of file comm_group.hpp.

@@ -1883,7 +1886,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 3467 of file comm_group.hpp.

+

Definition at line 3486 of file comm_group.hpp.

@@ -1939,7 +1942,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3660 of file comm_group.hpp.

+

Definition at line 3679 of file comm_group.hpp.

@@ -2002,7 +2005,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3631 of file comm_group.hpp.

+

Definition at line 3650 of file comm_group.hpp.

@@ -2031,10 +2034,10 @@

Note
This is a collective operation and must be called by all processes in the communicator.
-
Examples
collective.cc, and communicator.cc.
+
Examples
collective.cc, and communicator.cc.
-

Definition at line 2394 of file comm_group.hpp.

+

Definition at line 2413 of file comm_group.hpp.

@@ -2089,10 +2092,10 @@

Note
This is a collective operation and must be called by all processes in the communicator.

-
Examples
collective.cc.
+
Examples
collective.cc.
-

Definition at line 2417 of file comm_group.hpp.

+

Definition at line 2436 of file comm_group.hpp.

@@ -2155,7 +2158,7 @@

Note
This is a collective operation and must be called by all processes in the communicator.

-

Definition at line 2431 of file comm_group.hpp.

+

Definition at line 2450 of file comm_group.hpp.

@@ -2218,7 +2221,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 959 of file comm_group.hpp.

+

Definition at line 969 of file comm_group.hpp.

@@ -2287,7 +2290,7 @@

Definition at line 975 of file comm_group.hpp.

+

Definition at line 985 of file comm_group.hpp.

@@ -2357,7 +2360,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 996 of file comm_group.hpp.

+

Definition at line 1006 of file comm_group.hpp.

@@ -2421,7 +2424,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 1141 of file comm_group.hpp.

+

Definition at line 1151 of file comm_group.hpp.

@@ -2491,7 +2494,7 @@

Returns
persistent communication request
-

Definition at line 1160 of file comm_group.hpp.

+

Definition at line 1170 of file comm_group.hpp.

@@ -2562,7 +2565,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1185 of file comm_group.hpp.

+

Definition at line 1195 of file comm_group.hpp.

@@ -2602,7 +2605,7 @@

-

determines the message buffer size

+

Determines the message buffer size.

Template Parameters

Public Member Functions

void operator= (const topology_communicator &)=delete
 Deleted copy assignment operator. More...
+void operator= (const topology_communicator &)=delete
 Deleted copy assignment operator.
 
template<typename T >
void neighbor_allgather (const T &senddata, T *recvdata) const
 
template<typename T >
int bsend_size (int number=1) const
 determines the message buffer size More...
 Determines the message buffer size. More...
 
template<typename T >
int bsend_size (const layout< T > &l, int number=1) const
 determines the message buffer size More...
 Determines the message buffer size. More...
 
template<typename T >
void bsend (const T &data, int destination, tag_t t=tag_t(0)) const
 Non-blocking test for an incoming message. More...
 
mprobe_status mprobe (int source, tag_t t=tag_t(0)) const
 Blocking matched test for an incoming message. More...
 
std::optional< mprobe_statusimprobe (int source, tag_t t=tag_t(0)) const
 Blocking matched test for an incoming message. More...
 
template<typename T >
status_t mrecv (T &data, message_t &m) const
status_t mrecv (T &data, message_t &m) const
 Receives a message with a single value by a message handle. More...
 
template<typename T >
status_t mrecv (T *data, const layout< T > &l, message_t &m) const
status_t mrecv (T *data, const layout< T > &l, message_t &m) const
 Receives a message with a several values having a specific memory layout by a message handle. More...
 
template<typename iterT >
status_t mrecv (iterT begin, iterT end, message_t &m) const
status_t mrecv (iterT begin, iterT end, message_t &m) const
 Receives a message with a several values given by a pair of iterators by a message handle. More...
 
template<typename T >
irequest imrecv (T &data, message_t &m) const
irequest imrecv (T &data, message_t &m) const
 Receives a message with a single value via a non-blocking receive operation by a message handle. More...
 
template<typename T >
irequest imrecv (T *data, const layout< T > &l, message_t &m) const
irequest imrecv (T *data, const layout< T > &l, message_t &m) const
 Receives a message with several values having a specific memory layout via a non-blocking receive operation by a message handle. More...
 
template<typename iterT >
irequest imrecv (iterT begin, iterT end, message_t &m) const
irequest imrecv (iterT begin, iterT end, message_t &m) const
 Receives a message with a several values given by a pair of iterators via a non-blocking receive operation. More...
 
template<typename T >
@@ -2616,8 +2619,9 @@

Returns
message buffer size
-

Definition at line 914 of file comm_group.hpp.

+

Definition at line 924 of file comm_group.hpp.

@@ -2647,7 +2651,7 @@

-

determines the message buffer size

+

Determines the message buffer size.

Template Parameters

Ttype of the data to send in a later buffered send operation, must meet the requirements as described in the data types section
@@ -2656,14 +2660,15 @@

Parameters

Ttype of the data to send in a later buffered send operation, must meet the requirements as described in the data types section
- +
numberquantity of elements of type T to send in a single buffered message or in a series of buffered send operations
numberquantity of elements of type T to send in a single buffered message or in a series of buffered send operations
-
Examples
blocking.cc, blocking_vector.cc, and nonblocking.cc.
+
Returns
message buffer size
+
Examples
blocking.cc, blocking_vector.cc, and nonblocking.cc.
-

Definition at line 902 of file comm_group.hpp.

+

Definition at line 911 of file comm_group.hpp.

@@ -2692,9 +2697,15 @@

Compares to another communicator.

+
Parameters
+ + +
othercommunicator to compare with
+
+
Returns
equality type
-

Definition at line 591 of file comm_group.hpp.

+

Definition at line 599 of file comm_group.hpp.

@@ -2758,7 +2769,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4453 of file comm_group.hpp.

+

Definition at line 4474 of file comm_group.hpp.

@@ -2829,7 +2840,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4470 of file comm_group.hpp.

+

Definition at line 4491 of file comm_group.hpp.

@@ -2886,7 +2897,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4529 of file comm_group.hpp.

+

Definition at line 4550 of file comm_group.hpp.

@@ -2950,7 +2961,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4546 of file comm_group.hpp.

+

Definition at line 4567 of file comm_group.hpp.

@@ -3006,7 +3017,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2566 of file comm_group.hpp.

+

Definition at line 2585 of file comm_group.hpp.

@@ -3068,10 +3079,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc, and gather.cc.
+
Examples
collective.cc, and gather.cc.
-

Definition at line 2486 of file comm_group.hpp.

+

Definition at line 2505 of file comm_group.hpp.

@@ -3134,7 +3145,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.

-

Definition at line 2582 of file comm_group.hpp.

+

Definition at line 2601 of file comm_group.hpp.

@@ -3211,7 +3222,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2504 of file comm_group.hpp.

+

Definition at line 2523 of file comm_group.hpp.

@@ -3274,7 +3285,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2740 of file comm_group.hpp.

+

Definition at line 2759 of file comm_group.hpp.

@@ -3351,7 +3362,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2672 of file comm_group.hpp.

+

Definition at line 2691 of file comm_group.hpp.

@@ -3434,10 +3445,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
distributed_grid_scatter_gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, matrix_gather.cc, and vibrating_string_mpl.cc.
+
Examples
distributed_grid_scatter_gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, matrix_gather.cc, and vibrating_string_mpl.cc.
-

Definition at line 2644 of file comm_group.hpp.

+

Definition at line 2663 of file comm_group.hpp.

@@ -3494,7 +3505,7 @@

Returns
request representing the ongoing message transfer

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2817 of file comm_group.hpp.

+

Definition at line 2836 of file comm_group.hpp.

@@ -3565,7 +3576,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2836 of file comm_group.hpp.

+

Definition at line 2855 of file comm_group.hpp.

@@ -3636,7 +3647,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2921 of file comm_group.hpp.

+

Definition at line 2940 of file comm_group.hpp.

@@ -3714,7 +3725,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2899 of file comm_group.hpp.

+

Definition at line 2918 of file comm_group.hpp.

@@ -3779,7 +3790,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4045 of file comm_group.hpp.

+

Definition at line 4066 of file comm_group.hpp.

@@ -3851,7 +3862,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4066 of file comm_group.hpp.

+

Definition at line 4087 of file comm_group.hpp.

@@ -3909,7 +3920,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4122 of file comm_group.hpp.

+

Definition at line 4143 of file comm_group.hpp.

@@ -3974,7 +3985,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4142 of file comm_group.hpp.

+

Definition at line 4163 of file comm_group.hpp.

@@ -4045,7 +4056,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. The memory layouts of the incoming and the outgoing messages are described by sendl and recvl. Both layouts might differ but must be compatible, i.e., must hold the same number of elements of type T. The i-th memory block with the layout sendl in the array senddata is sent to the i-th process. When the message transfer has finished, the i-th memory block with the layout recvl in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3305 of file comm_group.hpp.

+

Definition at line 3324 of file comm_group.hpp.

@@ -4102,7 +4113,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends one element of type T to each process (including itself) and receives one element of type T from each process. The i-th element in the array senddata is sent to the i-th process. When the message transfer has finished, the i-th element in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3279 of file comm_group.hpp.

+

Definition at line 3298 of file comm_group.hpp.

@@ -4148,7 +4159,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends one element of type T to each process (including itself) and receives one element of type T from each process. The i-th element in the array sendrecvdata is sent to the i-th process. When the message transfer has finished, the i-th element in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3370 of file comm_group.hpp.

+

Definition at line 3389 of file comm_group.hpp.

@@ -4205,7 +4216,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. The memory layouts of the incoming and the outgoing messages are described by sendrecvl. The i-th memory block with the layout sendrecvl in the array sendrecvdata is sent to the i-th process. When the message transfer has finished, the i-th memory block with the layout sendrecvl in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3395 of file comm_group.hpp.

+

Definition at line 3414 of file comm_group.hpp.

@@ -4290,7 +4301,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffers senddata and recvdata, respectively. The i-th memory block with the layout sendls[i] in the array senddata starts senddispls[i] bytes after the address given in senddata. The i-th memory block is sent to the i-th process. The i-th memory block with the layout recvls[i] in the array recvdata starts recvdispls[i] bytes after the address given in recvdata. When the function has finished, the i-th memory block in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3564 of file comm_group.hpp.

+

Definition at line 3583 of file comm_group.hpp.

@@ -4361,7 +4372,7 @@

Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffers senddata and recvdata, respectively. The i-th memory block with the layout sendls[i] in the array senddata starts at the address given in senddata. The i-th memory block is sent to the i-th process. The i-th memory block with the layout recvls[i] in the array recvdata starts at the address given in recvdata. Note that the memory layouts need to include appropriate holes at the beginning in order to avoid overlapping send- or receive blocks. When the function has finished, the i-th memory block in the array recvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3607 of file comm_group.hpp.

+

Definition at line 3626 of file comm_group.hpp.

@@ -4411,13 +4422,14 @@

Parameters
- +
sendrecvdatapointer to continuous storage for incoming and outgoing messages
sendrecvlsmemory layouts of the data to send and to receive
sendrecvlsmemory layouts of the data to send and to receive
+
Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffer sendrecvdata. The i-th memory block with the layout sendrecvls[i] in the array sendrecvdata starts at the address given in sendrecvdata. The i-th memory block is sent to the i-th process. Note that the memory layouts need to include appropriate holes at the beginning in order to avoid overlapping send-receive blocks. When the function has finished, the i-th memory block in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3720 of file comm_group.hpp.

+

Definition at line 3741 of file comm_group.hpp.

@@ -4474,13 +4486,14 @@

sendrecvdatapointer to continuous storage for outgoing and incoming messages sendrecvlsmemory layouts of the data to send and to receive - sendrecvdisplsdisplacements of the data to send and to receive + sendrecvdisplsdisplacements of the data to send and to receive +
Returns
request representing the ongoing message transfer

Each process in the communicator sends elements of type T to each process (including itself) and receives elements of type T from each process. Send- and receive-data are stored in consecutive blocks of variable size in the buffer sendecvdata. The i-th memory block with the layout sendlrecvs[i] in the array sendrecvdata starts sendrecvdispls[i] bytes after the address given in sendrecvdata. The i-th memory block is sent to the i-th process. When the function has finished, the i-th memory block in the array sendrecvdata was received from the i-th process.

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3683 of file comm_group.hpp.

+

Definition at line 3703 of file comm_group.hpp.

@@ -4511,7 +4524,7 @@

Returns
communication request
Note
This is a collective operation and must be called by all processes in the communicator.
-

Definition at line 2401 of file comm_group.hpp.

+

Definition at line 2420 of file comm_group.hpp.

@@ -4568,7 +4581,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called by all processes in the communicator.
-

Definition at line 2447 of file comm_group.hpp.

+

Definition at line 2466 of file comm_group.hpp.

@@ -4632,7 +4645,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called by all processes in the communicator.
-

Definition at line 2465 of file comm_group.hpp.

+

Definition at line 2484 of file comm_group.hpp.

@@ -4696,7 +4709,7 @@

Returns
request representing the ongoing message transfer
Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1074 of file comm_group.hpp.

+

Definition at line 1084 of file comm_group.hpp.

@@ -4766,7 +4779,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 1092 of file comm_group.hpp.

+

Definition at line 1102 of file comm_group.hpp.

@@ -4837,7 +4850,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
Returns
request representing the ongoing message transfer
-

Definition at line 1117 of file comm_group.hpp.

+

Definition at line 1127 of file comm_group.hpp.

@@ -4902,7 +4915,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4489 of file comm_group.hpp.

+

Definition at line 4510 of file comm_group.hpp.

@@ -4974,7 +4987,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4510 of file comm_group.hpp.

+

Definition at line 4531 of file comm_group.hpp.

@@ -5032,7 +5045,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4565 of file comm_group.hpp.

+

Definition at line 4586 of file comm_group.hpp.

@@ -5097,7 +5110,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4585 of file comm_group.hpp.

+

Definition at line 4606 of file comm_group.hpp.

@@ -5154,7 +5167,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2600 of file comm_group.hpp.

+

Definition at line 2619 of file comm_group.hpp.

@@ -5218,7 +5231,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2524 of file comm_group.hpp.

+

Definition at line 2543 of file comm_group.hpp.

@@ -5282,7 +5295,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2620 of file comm_group.hpp.

+

Definition at line 2639 of file comm_group.hpp.

@@ -5360,7 +5373,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2546 of file comm_group.hpp.

+

Definition at line 2565 of file comm_group.hpp.

@@ -5424,7 +5437,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 2763 of file comm_group.hpp.

+

Definition at line 2782 of file comm_group.hpp.

@@ -5502,7 +5515,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2723 of file comm_group.hpp.

+

Definition at line 2742 of file comm_group.hpp.

@@ -5587,7 +5600,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2693 of file comm_group.hpp.

+

Definition at line 2712 of file comm_group.hpp.

@@ -5625,7 +5638,17 @@

-

Definition at line 2067 of file comm_group.hpp.

+

Blocking matched test for an incoming message.

+
Parameters
+ + + +
sourcerank of the sending process
ttag associated to this message
+
+
+
Returns
message handle and status of the pending message if there is a pending message by the given source and with the given tag
+ +

Definition at line 2086 of file comm_group.hpp.

@@ -5655,7 +5678,7 @@

- message_t &  + message_t &  m  @@ -5689,7 +5712,7 @@

Returns
request representing the ongoing message transfer
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 2201 of file comm_group.hpp.

+

Definition at line 2220 of file comm_group.hpp.

@@ -5713,7 +5736,7 @@

- message_t &  + message_t &  m  @@ -5746,7 +5769,7 @@

Returns
request representing the ongoing receive operation
Note
Receiving STL containers is not supported.
-

Definition at line 2168 of file comm_group.hpp.

+

Definition at line 2187 of file comm_group.hpp.

@@ -5776,7 +5799,7 @@

- message_t &  + message_t &  m  @@ -5809,7 +5832,7 @@

Returns
request representing the ongoing receive operation
-

Definition at line 2181 of file comm_group.hpp.

+

Definition at line 2200 of file comm_group.hpp.

@@ -6418,7 +6441,7 @@

Returns
status of the pending message if there is any pending message
-

Definition at line 2043 of file comm_group.hpp.

+

Definition at line 2053 of file comm_group.hpp.

@@ -6489,7 +6512,7 @@

Returns
request representing the ongoing message transfer
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1946 of file comm_group.hpp.

+

Definition at line 1956 of file comm_group.hpp.

@@ -6555,7 +6578,7 @@

Examples
heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
-

Definition at line 1906 of file comm_group.hpp.

+

Definition at line 1916 of file comm_group.hpp.

@@ -6625,7 +6648,7 @@

Returns
request representing the ongoing receive operation
-

Definition at line 1922 of file comm_group.hpp.

+

Definition at line 1932 of file comm_group.hpp.

@@ -6690,7 +6713,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3936 of file comm_group.hpp.

+

Definition at line 3957 of file comm_group.hpp.

@@ -6762,7 +6785,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3780 of file comm_group.hpp.

+

Definition at line 3801 of file comm_group.hpp.

@@ -6834,7 +6857,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3987 of file comm_group.hpp.

+

Definition at line 4008 of file comm_group.hpp.

@@ -6913,7 +6936,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3803 of file comm_group.hpp.

+

Definition at line 3824 of file comm_group.hpp.

@@ -6978,7 +7001,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3910 of file comm_group.hpp.

+

Definition at line 3931 of file comm_group.hpp.

@@ -7050,7 +7073,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3959 of file comm_group.hpp.

+

Definition at line 3980 of file comm_group.hpp.

@@ -7122,7 +7145,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4279 of file comm_group.hpp.

+

Definition at line 4300 of file comm_group.hpp.

@@ -7187,7 +7210,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4206 of file comm_group.hpp.

+

Definition at line 4227 of file comm_group.hpp.

@@ -7259,7 +7282,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4230 of file comm_group.hpp.

+

Definition at line 4251 of file comm_group.hpp.

@@ -7323,7 +7346,7 @@

Returns
request representing the ongoing message transfer
Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1624 of file comm_group.hpp.

+

Definition at line 1634 of file comm_group.hpp.

@@ -7393,7 +7416,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 1642 of file comm_group.hpp.

+

Definition at line 1652 of file comm_group.hpp.

@@ -7464,7 +7487,7 @@

Returns
request representing the ongoing message transfer
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1667 of file comm_group.hpp.

+

Definition at line 1677 of file comm_group.hpp.

@@ -7494,10 +7517,10 @@

Returns
true if communicator is valid
Note
A default constructed communicator is a non valid communicator.
-
Examples
communicator.cc.
+
Examples
communicator.cc.
-

Definition at line 601 of file comm_group.hpp.

+

Definition at line 609 of file comm_group.hpp.

@@ -7562,7 +7585,7 @@

Returns
request representing the ongoing reduction operation

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4337 of file comm_group.hpp.

+

Definition at line 4358 of file comm_group.hpp.

@@ -7634,7 +7657,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4358 of file comm_group.hpp.

+

Definition at line 4379 of file comm_group.hpp.

@@ -7692,7 +7715,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4412 of file comm_group.hpp.

+

Definition at line 4433 of file comm_group.hpp.

@@ -7757,7 +7780,7 @@

Returns
request representing the ongoing reduction operation
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4432 of file comm_group.hpp.

+

Definition at line 4453 of file comm_group.hpp.

@@ -7835,7 +7858,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3000 of file comm_group.hpp.

+

Definition at line 3019 of file comm_group.hpp.

@@ -7899,7 +7922,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2978 of file comm_group.hpp.

+

Definition at line 2997 of file comm_group.hpp.

@@ -7950,7 +7973,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3048 of file comm_group.hpp.

+

Definition at line 3067 of file comm_group.hpp.

@@ -8008,7 +8031,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3066 of file comm_group.hpp.

+

Definition at line 3085 of file comm_group.hpp.

@@ -8093,7 +8116,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3140 of file comm_group.hpp.

+

Definition at line 3159 of file comm_group.hpp.

@@ -8171,7 +8194,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3171 of file comm_group.hpp.

+

Definition at line 3190 of file comm_group.hpp.

@@ -8235,7 +8258,7 @@

Returns
request representing the ongoing message transfer
Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3211 of file comm_group.hpp.

+

Definition at line 3230 of file comm_group.hpp.

@@ -8301,7 +8324,7 @@

Examples
heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
-

Definition at line 771 of file comm_group.hpp.

+

Definition at line 779 of file comm_group.hpp.

@@ -8371,7 +8394,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 789 of file comm_group.hpp.

+

Definition at line 797 of file comm_group.hpp.

@@ -8442,7 +8465,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
Returns
request representing the ongoing message transfer
-

Definition at line 814 of file comm_group.hpp.

+

Definition at line 822 of file comm_group.hpp.

@@ -8506,7 +8529,7 @@

Returns
request representing the ongoing message transfer
Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1347 of file comm_group.hpp.

+

Definition at line 1357 of file comm_group.hpp.

@@ -8576,7 +8599,7 @@

Returns
request representing the ongoing message transfer
-

Definition at line 1365 of file comm_group.hpp.

+

Definition at line 1375 of file comm_group.hpp.

@@ -8647,7 +8670,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
Returns
request representing the ongoing message transfer
-

Definition at line 1390 of file comm_group.hpp.

+

Definition at line 1400 of file comm_group.hpp.

@@ -8685,7 +8708,17 @@

-

Definition at line 2057 of file comm_group.hpp.

+

Blocking matched test for an incoming message.

+
Parameters
+ + + +
sourcerank of the sending process
ttag associated to this message
+
+
+
Returns
message handle and status of the pending message
+ +

Definition at line 2071 of file comm_group.hpp.

@@ -8715,7 +8748,7 @@

- message_t &  + message_t &  m  @@ -8749,7 +8782,7 @@

Returns
status of the receive operation
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 2136 of file comm_group.hpp.

+

Definition at line 2155 of file comm_group.hpp.

@@ -8773,7 +8806,7 @@

- message_t &  + message_t &  m  @@ -8806,7 +8839,7 @@

Returns
status of the receive operation
Note
Receiving STL containers is not supported.
-

Definition at line 2102 of file comm_group.hpp.

+

Definition at line 2121 of file comm_group.hpp.

@@ -8836,7 +8869,7 @@

- message_t &  + message_t &  m  @@ -8869,7 +8902,7 @@

Returns
status of the receive operation
-

Definition at line 2115 of file comm_group.hpp.

+

Definition at line 2134 of file comm_group.hpp.

@@ -9451,37 +9484,15 @@

Tests for identity of communicators.

+
Parameters
+ + +
othercommunicator to compare with
+
+
Returns
true if not identical
-

Definition at line 583 of file comm_group.hpp.

- - - - -

◆ operator=()

- -
-
- - - - - -
- - - - - - - - -
void mpl::impl::topology_communicator::operator= (const topology_communicator)
-
-delete
-
- -

Deleted copy assignment operator.

+

Definition at line 590 of file comm_group.hpp.

@@ -9510,9 +9521,15 @@

Tests for identity of communicators.

+
Parameters
+ + +
othercommunicator to compare with
+
+
Returns
true if identical
-

Definition at line 575 of file comm_group.hpp.

+

Definition at line 581 of file comm_group.hpp.

@@ -9559,10 +9576,10 @@

Returns
status of the pending message
-
Examples
probe.cc.
+
Examples
probe.cc.
-

Definition at line 2030 of file comm_group.hpp.

+

Definition at line 2040 of file comm_group.hpp.

@@ -9591,10 +9608,10 @@

Returns
the rank of the calling process in the communicator

-
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
+
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
-

Definition at line 567 of file comm_group.hpp.

+

Definition at line 572 of file comm_group.hpp.

@@ -9665,7 +9682,7 @@

Returns
status of the receive operation

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1845 of file comm_group.hpp.

+

Definition at line 1855 of file comm_group.hpp.

@@ -9729,7 +9746,7 @@

Returns
status of the receive operation
Note
Receiving STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1807 of file comm_group.hpp.

+

Definition at line 1817 of file comm_group.hpp.

@@ -9799,7 +9816,7 @@

Returns
status of the receive operation
-

Definition at line 1822 of file comm_group.hpp.

+

Definition at line 1832 of file comm_group.hpp.

@@ -9870,7 +9887,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 2013 of file comm_group.hpp.

+

Definition at line 2023 of file comm_group.hpp.

@@ -9934,7 +9951,7 @@

Returns
persistent communication request
Note
Receiving STL containers is not supported.
-

Definition at line 1970 of file comm_group.hpp.

+

Definition at line 1980 of file comm_group.hpp.

@@ -10004,7 +10021,7 @@

Returns
persistent communication request
-

Definition at line 1989 of file comm_group.hpp.

+

Definition at line 1999 of file comm_group.hpp.

@@ -10068,7 +10085,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3847 of file comm_group.hpp.

+

Definition at line 3868 of file comm_group.hpp.

@@ -10138,10 +10155,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc, reduce_lcm.cc, and reduce_min_loc.cc.
+
Examples
collective.cc, reduce_lcm.cc, and reduce_min_loc.cc.
-

Definition at line 3738 of file comm_group.hpp.

+

Definition at line 3759 of file comm_group.hpp.

@@ -10212,7 +10229,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.

-

Definition at line 3889 of file comm_group.hpp.

+

Definition at line 3910 of file comm_group.hpp.

@@ -10290,7 +10307,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3759 of file comm_group.hpp.

+

Definition at line 3780 of file comm_group.hpp.

@@ -10354,7 +10371,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3825 of file comm_group.hpp.

+

Definition at line 3846 of file comm_group.hpp.

@@ -10425,7 +10442,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3866 of file comm_group.hpp.

+

Definition at line 3887 of file comm_group.hpp.

@@ -10496,7 +10513,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4255 of file comm_group.hpp.

+

Definition at line 4276 of file comm_group.hpp.

@@ -10560,7 +10577,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4164 of file comm_group.hpp.

+

Definition at line 4185 of file comm_group.hpp.

@@ -10631,7 +10648,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4184 of file comm_group.hpp.

+

Definition at line 4205 of file comm_group.hpp.

@@ -10694,7 +10711,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1509 of file comm_group.hpp.

+

Definition at line 1519 of file comm_group.hpp.

@@ -10763,7 +10780,7 @@

Definition at line 1525 of file comm_group.hpp.

+

Definition at line 1535 of file comm_group.hpp.

@@ -10833,7 +10850,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1546 of file comm_group.hpp.

+

Definition at line 1556 of file comm_group.hpp.

@@ -10897,7 +10914,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 1691 of file comm_group.hpp.

+

Definition at line 1701 of file comm_group.hpp.

@@ -10967,7 +10984,7 @@

Returns
persistent communication request
-

Definition at line 1710 of file comm_group.hpp.

+

Definition at line 1720 of file comm_group.hpp.

@@ -11038,7 +11055,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1735 of file comm_group.hpp.

+

Definition at line 1745 of file comm_group.hpp.

@@ -11102,7 +11119,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4301 of file comm_group.hpp.

+

Definition at line 4322 of file comm_group.hpp.

@@ -11173,7 +11190,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4318 of file comm_group.hpp.

+

Definition at line 4339 of file comm_group.hpp.

@@ -11230,7 +11247,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4377 of file comm_group.hpp.

+

Definition at line 4398 of file comm_group.hpp.

@@ -11294,7 +11311,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 4394 of file comm_group.hpp.

+

Definition at line 4415 of file comm_group.hpp.

@@ -11371,7 +11388,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 2957 of file comm_group.hpp.

+

Definition at line 2976 of file comm_group.hpp.

@@ -11433,10 +11450,10 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-
Examples
collective.cc.
+
Examples
collective.cc.
-

Definition at line 2939 of file comm_group.hpp.

+

Definition at line 2958 of file comm_group.hpp.

@@ -11486,7 +11503,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.

-

Definition at line 3018 of file comm_group.hpp.

+

Definition at line 3037 of file comm_group.hpp.

@@ -11543,7 +11560,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3032 of file comm_group.hpp.

+

Definition at line 3051 of file comm_group.hpp.

@@ -11629,7 +11646,7 @@

Examples
distributed_grid_scatter_gather.cc, heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
-

Definition at line 3091 of file comm_group.hpp.

+

Definition at line 3110 of file comm_group.hpp.

@@ -11706,7 +11723,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator.
-

Definition at line 3119 of file comm_group.hpp.

+

Definition at line 3138 of file comm_group.hpp.

@@ -11769,7 +11786,7 @@

Note
This is a collective operation and must be called (possibly by utilizing anther overload) by all processes in the communicator. This particular overload can only be called by non-root processes.
-

Definition at line 3188 of file comm_group.hpp.

+

Definition at line 3207 of file comm_group.hpp.

@@ -11832,7 +11849,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 657 of file comm_group.hpp.

+

Definition at line 665 of file comm_group.hpp.

@@ -11901,7 +11918,7 @@

Definition at line 673 of file comm_group.hpp.

+

Definition at line 681 of file comm_group.hpp.

@@ -11971,7 +11988,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 694 of file comm_group.hpp.

+

Definition at line 702 of file comm_group.hpp.

@@ -12035,7 +12052,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 838 of file comm_group.hpp.

+

Definition at line 846 of file comm_group.hpp.

@@ -12105,7 +12122,7 @@

Returns
persistent communication request
-

Definition at line 857 of file comm_group.hpp.

+

Definition at line 865 of file comm_group.hpp.

@@ -12176,7 +12193,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 882 of file comm_group.hpp.

+

Definition at line 890 of file comm_group.hpp.

@@ -12262,7 +12279,7 @@

Examples
distributed_grid.cc.
-

Definition at line 2227 of file comm_group.hpp.

+

Definition at line 2246 of file comm_group.hpp.

@@ -12360,7 +12377,7 @@

Returns
status of the receive operation
-

Definition at line 2254 of file comm_group.hpp.

+

Definition at line 2273 of file comm_group.hpp.

@@ -12459,7 +12476,7 @@

Returns
status of the receive operation
-

Definition at line 2289 of file comm_group.hpp.

+

Definition at line 2308 of file comm_group.hpp.

@@ -12543,7 +12560,7 @@

Returns
status of the receive operation
-

Definition at line 2376 of file comm_group.hpp.

+

Definition at line 2395 of file comm_group.hpp.

@@ -12620,7 +12637,7 @@

Returns
status of the receive operation
-

Definition at line 2324 of file comm_group.hpp.

+

Definition at line 2343 of file comm_group.hpp.

@@ -12704,7 +12721,7 @@

Returns
status of the receive operation
-

Definition at line 2348 of file comm_group.hpp.

+

Definition at line 2367 of file comm_group.hpp.

@@ -12733,10 +12750,10 @@

Returns
number of processes
-
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
+
Examples
arrays.cc, blocking.cc, blocking_vector.cc, collective.cc, communicator.cc, distributed_grid.cc, distributed_grid_scatter_gather.cc, gather.cc, gatherv.cc, heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, hello_world.cc, iterators.cc, layouts.cc, matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, parallel_sort_mpl.cc, probe.cc, reduce_lcm.cc, reduce_min_loc.cc, standard_types.cc, stl_container.cc, struct.cc, subarray.cc, and vibrating_string_mpl.cc.
-

Definition at line 559 of file comm_group.hpp.

+

Definition at line 564 of file comm_group.hpp.

@@ -12799,7 +12816,7 @@

Note
Sending STL containers is a convenience feature, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.

-

Definition at line 1236 of file comm_group.hpp.

+

Definition at line 1246 of file comm_group.hpp.

@@ -12868,7 +12885,7 @@

Definition at line 1251 of file comm_group.hpp.

+

Definition at line 1261 of file comm_group.hpp.

@@ -12938,7 +12955,7 @@

Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1272 of file comm_group.hpp.

+

Definition at line 1282 of file comm_group.hpp.

@@ -13002,7 +13019,7 @@

Returns
persistent communication request
Note
Sending STL containers is not supported.
-

Definition at line 1414 of file comm_group.hpp.

+

Definition at line 1424 of file comm_group.hpp.

@@ -13072,7 +13089,7 @@

Returns
persistent communication request
-

Definition at line 1433 of file comm_group.hpp.

+

Definition at line 1443 of file comm_group.hpp.

@@ -13143,7 +13160,7 @@

Returns
persistent communication request
Note
This is a convenience method, which may have non-optimal performance characteristics. Use alternative overloads in performance critical code sections.
-

Definition at line 1458 of file comm_group.hpp.

+

Definition at line 1468 of file comm_group.hpp.

@@ -13170,7 +13187,7 @@

Definition at line 313 of file comm_group.hpp.

+

Definition at line 316 of file comm_group.hpp.

@@ -13195,7 +13212,7 @@

indicates that communicators are identical, i.e., communicators have same the members in same rank order but different context

-

Definition at line 300 of file comm_group.hpp.

+

Definition at line 303 of file comm_group.hpp.

@@ -13221,7 +13238,7 @@

Definition at line 320 of file comm_group.hpp.

+

Definition at line 323 of file comm_group.hpp.

@@ -13246,7 +13263,7 @@

indicates that communicators are identical, i.e., communicators represent the same communication context

-

Definition at line 297 of file comm_group.hpp.

+

Definition at line 300 of file comm_group.hpp.

@@ -13271,7 +13288,7 @@

indicates that communicators are similar, i.e., communicators have same tha members in different rank order

-

Definition at line 303 of file comm_group.hpp.

+

Definition at line 306 of file comm_group.hpp.

@@ -13296,10 +13313,10 @@

Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgroups.

-
Examples
communicator.cc.
+
Examples
communicator.cc.
-

Definition at line 327 of file comm_group.hpp.

+

Definition at line 330 of file comm_group.hpp.

@@ -13325,7 +13342,7 @@

Definition at line 334 of file comm_group.hpp.

+

Definition at line 337 of file comm_group.hpp.

@@ -13350,7 +13367,7 @@

indicates that communicators are unequal, i.e., communicators have different sets of members

-

Definition at line 306 of file comm_group.hpp.

+

Definition at line 309 of file comm_group.hpp.

@@ -13362,7 +13379,7 @@

diff --git a/docs/html/classmpl_1_1indexed__block__layout.html b/docs/html/classmpl_1_1indexed__block__layout.html index ce031aca..bc9f20b6 100644 --- a/docs/html/classmpl_1_1indexed__block__layout.html +++ b/docs/html/classmpl_1_1indexed__block__layout.html @@ -146,46 +146,46 @@ void swap (indexed_block_layout< T > &other)  exchanges two indexed layouts More...
  -ssize_t byte_extent () const +ssize_t byte_extent () const  Get the byte extent of the layout. More...
  -ssize_t byte_lower_bound () const +ssize_t byte_lower_bound () const  Get the byte lower bound of the layout. More...
  -ssize_t byte_upper_bound () const +ssize_t byte_upper_bound () const  Get the byte upper bound of the layout. More...
  -ssize_t extent () const +ssize_t extent () const  Get the extent of the layout. More...
  -ssize_t lower_bound () const +ssize_t lower_bound () const  Get the lower bound of the layout. More...
  -ssize_t upper_bound () const +ssize_t upper_bound () const  Get the upper bound of the layout. More...
  -ssize_t true_byte_extent () const +ssize_t true_byte_extent () const  Get the true byte extent of the layout. More...
  -ssize_t true_byte_lower_bound () const +ssize_t true_byte_lower_bound () const  Get the true byte lower bound of the layout. More...
  -ssize_t true_byte_upper_bound () const +ssize_t true_byte_upper_bound () const  Get the true byte upper bound of the layout. More...
  -ssize_t true_extent () const +ssize_t true_extent () const  Get the true extent of the layout. More...
  -ssize_t true_lower_bound () const +ssize_t true_lower_bound () const  Get the true lower bound of the layout. More...
  -ssize_t true_upper_bound () const +ssize_t true_upper_bound () const  Get the true upper bound of the layout. More...
  -void byte_resize (ssize_t lb, ssize_t extent) +void byte_resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  -void resize (ssize_t lb, ssize_t extent) +void resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  void swap (layout &l) @@ -202,7 +202,7 @@

See also
inherits all member methods of layout
-
Examples
layouts.cc.
+
Examples
layouts.cc.

Definition at line 955 of file layout.hpp.

@@ -434,7 +434,7 @@

- + @@ -468,7 +468,7 @@

ssize_t mpl::layout< T >::byte_extent ssize_t mpl::layout< T >::byte_extent ( ) const
- + @@ -506,13 +506,13 @@

void mpl::layout< T >::byte_resize

- + - + @@ -553,7 +553,7 @@

ssize_t mpl::layout< T >::byte_lower_bound ssize_t mpl::layout< T >::byte_lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -589,7 +589,7 @@

ssize_t mpl::layout< T >::byte_upper_bound ssize_t mpl::layout< T >::byte_upper_bound ( ) const
- + @@ -623,7 +623,7 @@

ssize_t mpl::layout< T >::extent ssize_t mpl::layout< T >::extent ( ) const
- + @@ -735,13 +735,13 @@

void mpl::layout< T >::resize

- + - + @@ -765,7 +765,7 @@

Examples
layouts.cc.
+
Examples
layouts.cc.

Definition at line 314 of file layout.hpp.

@@ -860,7 +860,7 @@

ssize_t mpl::layout< T >::lower_bound ssize_t mpl::layout< T >::lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -894,7 +894,7 @@

ssize_t mpl::layout< T >::true_byte_extent ssize_t mpl::layout< T >::true_byte_extent ( ) const
- + @@ -930,7 +930,7 @@

ssize_t mpl::layout< T >::true_byte_lower_bound ssize_t mpl::layout< T >::true_byte_lower_bound ( ) const
- + @@ -966,7 +966,7 @@

ssize_t mpl::layout< T >::true_byte_upper_bound ssize_t mpl::layout< T >::true_byte_upper_bound ( ) const
- + @@ -1000,7 +1000,7 @@

ssize_t mpl::layout< T >::true_extent ssize_t mpl::layout< T >::true_extent ( ) const
- + @@ -1036,7 +1036,7 @@

ssize_t mpl::layout< T >::true_lower_bound ssize_t mpl::layout< T >::true_lower_bound ( ) const
- + @@ -1072,7 +1072,7 @@

ssize_t mpl::layout< T >::true_upper_bound ssize_t mpl::layout< T >::true_upper_bound ( ) const
- + @@ -1104,7 +1104,7 @@

diff --git a/docs/html/classmpl_1_1indexed__block__layout_1_1parameter-members.html b/docs/html/classmpl_1_1indexed__block__layout_1_1parameter-members.html index 880f1c8f..618f3dc3 100644 --- a/docs/html/classmpl_1_1indexed__block__layout_1_1parameter-members.html +++ b/docs/html/classmpl_1_1indexed__block__layout_1_1parameter-members.html @@ -90,7 +90,7 @@

This is the complete list of members for mpl::indexed_block_layout< T >::parameter, including all inherited members.

ssize_t mpl::layout< T >::upper_bound ssize_t mpl::layout< T >::upper_bound ( ) const
- + diff --git a/docs/html/classmpl_1_1indexed__block__layout_1_1parameter.html b/docs/html/classmpl_1_1indexed__block__layout_1_1parameter.html index 64c51214..6ae3aeaf 100644 --- a/docs/html/classmpl_1_1indexed__block__layout_1_1parameter.html +++ b/docs/html/classmpl_1_1indexed__block__layout_1_1parameter.html @@ -106,8 +106,9 @@
add(int displacement)mpl::indexed_block_layout< T >::parameterinline
indexed_block_layoutmpl::indexed_block_layout< T >::parameterfriend
indexed_block_layout (defined in mpl::indexed_block_layout< T >::parameter)mpl::indexed_block_layout< T >::parameterfriend
parameter()=defaultmpl::indexed_block_layout< T >::parameter
parameter(const List_T &list)mpl::indexed_block_layout< T >::parameterinlineexplicit
parameter(std::initializer_list< int > list)mpl::indexed_block_layout< T >::parameterinline
- - + + @@ -131,37 +132,8 @@

Definition at line 960 of file layout.hpp.

Constructor & Destructor Documentation

- -

◆ parameter() [1/3]

- -
-
-
-template<typename T >
-

Public Member Functions

 parameter ()=default
 creates parameters for an indexed layout representing an empty sequence More...
parameter ()=default
 creates parameters for an indexed layout representing an empty sequence
 
template<typename List_T >
 parameter (const List_T &list)
- - - - -
- - - - - - - -
mpl::indexed_block_layout< T >::parameter::parameter ()
-
-default
-
- -

creates parameters for an indexed layout representing an empty sequence

- -
- -

◆ parameter() [2/3]

+

◆ parameter() [1/2]

@@ -207,7 +179,7 @@

-

◆ parameter() [3/3]

+

◆ parameter() [2/2]

@@ -318,7 +290,7 @@

diff --git a/docs/html/classmpl_1_1indexed__block__layout_1_1parameter.js b/docs/html/classmpl_1_1indexed__block__layout_1_1parameter.js index c10ef8c5..956fdabe 100644 --- a/docs/html/classmpl_1_1indexed__block__layout_1_1parameter.js +++ b/docs/html/classmpl_1_1indexed__block__layout_1_1parameter.js @@ -3,6 +3,5 @@ var classmpl_1_1indexed__block__layout_1_1parameter = [ "parameter", "classmpl_1_1indexed__block__layout_1_1parameter.html#a702595e25a34275d3057c27dae064688", null ], [ "parameter", "classmpl_1_1indexed__block__layout_1_1parameter.html#a4b2073a35551d6b746134e15f19dbbc5", null ], [ "parameter", "classmpl_1_1indexed__block__layout_1_1parameter.html#a5bb1c084eb68e977508c6982b270af5b", null ], - [ "add", "classmpl_1_1indexed__block__layout_1_1parameter.html#a3f34394906bb3098855aee75cf44edd3", null ], - [ "indexed_block_layout", "classmpl_1_1indexed__block__layout_1_1parameter.html#a17af34d4276ce99356fc0b943e6bce54", null ] + [ "add", "classmpl_1_1indexed__block__layout_1_1parameter.html#a3f34394906bb3098855aee75cf44edd3", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1indexed__layout.html b/docs/html/classmpl_1_1indexed__layout.html index c95b60d4..709d2f75 100644 --- a/docs/html/classmpl_1_1indexed__layout.html +++ b/docs/html/classmpl_1_1indexed__layout.html @@ -146,46 +146,46 @@ void swap (indexed_layout< T > &other)  exchanges two indexed layouts More...
  -ssize_t byte_extent () const +ssize_t byte_extent () const  Get the byte extent of the layout. More...
  -ssize_t byte_lower_bound () const +ssize_t byte_lower_bound () const  Get the byte lower bound of the layout. More...
  -ssize_t byte_upper_bound () const +ssize_t byte_upper_bound () const  Get the byte upper bound of the layout. More...
  -ssize_t extent () const +ssize_t extent () const  Get the extent of the layout. More...
  -ssize_t lower_bound () const +ssize_t lower_bound () const  Get the lower bound of the layout. More...
  -ssize_t upper_bound () const +ssize_t upper_bound () const  Get the upper bound of the layout. More...
  -ssize_t true_byte_extent () const +ssize_t true_byte_extent () const  Get the true byte extent of the layout. More...
  -ssize_t true_byte_lower_bound () const +ssize_t true_byte_lower_bound () const  Get the true byte lower bound of the layout. More...
  -ssize_t true_byte_upper_bound () const +ssize_t true_byte_upper_bound () const  Get the true byte upper bound of the layout. More...
  -ssize_t true_extent () const +ssize_t true_extent () const  Get the true extent of the layout. More...
  -ssize_t true_lower_bound () const +ssize_t true_lower_bound () const  Get the true lower bound of the layout. More...
  -ssize_t true_upper_bound () const +ssize_t true_upper_bound () const  Get the true upper bound of the layout. More...
  -void byte_resize (ssize_t lb, ssize_t extent) +void byte_resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  -void resize (ssize_t lb, ssize_t extent) +void resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  void swap (layout &l) @@ -202,7 +202,7 @@

See also
inherits all member methods of layout
-
Examples
gatherv.cc, layouts.cc, parallel_sort_mpl.cc, and vibrating_string_mpl.cc.
+
Examples
gatherv.cc, layouts.cc, parallel_sort_mpl.cc, and vibrating_string_mpl.cc.

Definition at line 723 of file layout.hpp.

@@ -414,7 +414,7 @@

- + @@ -448,7 +448,7 @@

ssize_t mpl::layout< T >::byte_extent ssize_t mpl::layout< T >::byte_extent ( ) const
- + @@ -486,13 +486,13 @@

void mpl::layout< T >::byte_resize

- + - + @@ -533,7 +533,7 @@

ssize_t mpl::layout< T >::byte_lower_bound ssize_t mpl::layout< T >::byte_lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -569,7 +569,7 @@

ssize_t mpl::layout< T >::byte_upper_bound ssize_t mpl::layout< T >::byte_upper_bound ( ) const
- + @@ -603,7 +603,7 @@

ssize_t mpl::layout< T >::extent ssize_t mpl::layout< T >::extent ( ) const
- + @@ -715,13 +715,13 @@

void mpl::layout< T >::resize

- + - + @@ -745,7 +745,7 @@

Examples
layouts.cc.
+
Examples
layouts.cc.

Definition at line 314 of file layout.hpp.

@@ -840,7 +840,7 @@

ssize_t mpl::layout< T >::lower_bound ssize_t mpl::layout< T >::lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -874,7 +874,7 @@

ssize_t mpl::layout< T >::true_byte_extent ssize_t mpl::layout< T >::true_byte_extent ( ) const
- + @@ -910,7 +910,7 @@

ssize_t mpl::layout< T >::true_byte_lower_bound ssize_t mpl::layout< T >::true_byte_lower_bound ( ) const
- + @@ -946,7 +946,7 @@

ssize_t mpl::layout< T >::true_byte_upper_bound ssize_t mpl::layout< T >::true_byte_upper_bound ( ) const
- + @@ -980,7 +980,7 @@

ssize_t mpl::layout< T >::true_extent ssize_t mpl::layout< T >::true_extent ( ) const
- + @@ -1016,7 +1016,7 @@

ssize_t mpl::layout< T >::true_lower_bound ssize_t mpl::layout< T >::true_lower_bound ( ) const
- + @@ -1052,7 +1052,7 @@

ssize_t mpl::layout< T >::true_upper_bound ssize_t mpl::layout< T >::true_upper_bound ( ) const
- + @@ -1084,7 +1084,7 @@

diff --git a/docs/html/classmpl_1_1indexed__layout_1_1parameter-members.html b/docs/html/classmpl_1_1indexed__layout_1_1parameter-members.html index 39d53865..d52abd66 100644 --- a/docs/html/classmpl_1_1indexed__layout_1_1parameter-members.html +++ b/docs/html/classmpl_1_1indexed__layout_1_1parameter-members.html @@ -90,7 +90,7 @@

This is the complete list of members for mpl::indexed_layout< T >::parameter, including all inherited members.

ssize_t mpl::layout< T >::upper_bound ssize_t mpl::layout< T >::upper_bound ( ) const
- + diff --git a/docs/html/classmpl_1_1indexed__layout_1_1parameter.html b/docs/html/classmpl_1_1indexed__layout_1_1parameter.html index ae20f643..cce63152 100644 --- a/docs/html/classmpl_1_1indexed__layout_1_1parameter.html +++ b/docs/html/classmpl_1_1indexed__layout_1_1parameter.html @@ -106,8 +106,9 @@
add(int blocklength, int displacement)mpl::indexed_layout< T >::parameterinline
indexed_layoutmpl::indexed_layout< T >::parameterfriend
indexed_layout (defined in mpl::indexed_layout< T >::parameter)mpl::indexed_layout< T >::parameterfriend
parameter()=defaultmpl::indexed_layout< T >::parameter
parameter(const List_T &list)mpl::indexed_layout< T >::parameterinline
parameter(std::initializer_list< std::tuple< int, int > > list)mpl::indexed_layout< T >::parameterinline
- - + + @@ -131,37 +132,8 @@

Definition at line 728 of file layout.hpp.

Constructor & Destructor Documentation

- -

◆ parameter() [1/3]

- -
-
-
-template<typename T >
-

Public Member Functions

 parameter ()=default
 creates parameters for an indexed layout representing an empty sequence More...
parameter ()=default
 creates parameters for an indexed layout representing an empty sequence
 
template<typename List_T >
 parameter (const List_T &list)
- - - - -
- - - - - - - -
mpl::indexed_layout< T >::parameter::parameter ()
-
-default
-
- -

creates parameters for an indexed layout representing an empty sequence

- -
- -

◆ parameter() [2/3]

+

◆ parameter() [1/2]

@@ -207,7 +179,7 @@

-

◆ parameter() [3/3]

+

◆ parameter() [2/2]

@@ -329,7 +301,7 @@

diff --git a/docs/html/classmpl_1_1indexed__layout_1_1parameter.js b/docs/html/classmpl_1_1indexed__layout_1_1parameter.js index 69be342f..e0826201 100644 --- a/docs/html/classmpl_1_1indexed__layout_1_1parameter.js +++ b/docs/html/classmpl_1_1indexed__layout_1_1parameter.js @@ -3,6 +3,5 @@ var classmpl_1_1indexed__layout_1_1parameter = [ "parameter", "classmpl_1_1indexed__layout_1_1parameter.html#a200ede70b91a8a0ef5cf50cfa52e8635", null ], [ "parameter", "classmpl_1_1indexed__layout_1_1parameter.html#a6062daa18018ab29118a60a86bf54937", null ], [ "parameter", "classmpl_1_1indexed__layout_1_1parameter.html#a663702e0127ea25518e32acbbf95c7c9", null ], - [ "add", "classmpl_1_1indexed__layout_1_1parameter.html#a00e184b92d6c09a49438d48979194f99", null ], - [ "indexed_layout", "classmpl_1_1indexed__layout_1_1parameter.html#a97dc21015db1900818c4f2cbedf2823c", null ] + [ "add", "classmpl_1_1indexed__layout_1_1parameter.html#a00e184b92d6c09a49438d48979194f99", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1invalid__argument-members.html b/docs/html/classmpl_1_1invalid__argument-members.html index d921c76d..d34ee147 100644 --- a/docs/html/classmpl_1_1invalid__argument-members.html +++ b/docs/html/classmpl_1_1invalid__argument-members.html @@ -90,7 +90,7 @@

This is the complete list of members for mpl::invalid_argument, including all inherited members.

- +
error(const char *const str="unknown")mpl::errorinlineexplicit
invalid_argument()mpl::invalid_argumentinline
invalid_argument() (defined in mpl::invalid_argument)mpl::invalid_argumentinline
what() const noexcept overridempl::errorinline

diff --git a/docs/html/classmpl_1_1invalid__argument.html b/docs/html/classmpl_1_1invalid__argument.html index 3975faa5..d352d2c7 100644 --- a/docs/html/classmpl_1_1invalid__argument.html +++ b/docs/html/classmpl_1_1invalid__argument.html @@ -117,8 +117,6 @@ - -

Public Member Functions

 invalid_argument ()
 
const char * what () const noexcept override
 
@@ -191,7 +189,7 @@

diff --git a/docs/html/classmpl_1_1invalid__argument.js b/docs/html/classmpl_1_1invalid__argument.js index 1014854e..474c41ee 100644 --- a/docs/html/classmpl_1_1invalid__argument.js +++ b/docs/html/classmpl_1_1invalid__argument.js @@ -1,5 +1,4 @@ var classmpl_1_1invalid__argument = [ - [ "invalid_argument", "classmpl_1_1invalid__argument.html#a561fcad448834774831ed758c927c911", null ], [ "what", "classmpl_1_1invalid__argument.html#a74cba88f95894c0abf2baff78a88076e", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1invalid__count-members.html b/docs/html/classmpl_1_1invalid__count-members.html index ab840407..9941a570 100644 --- a/docs/html/classmpl_1_1invalid__count-members.html +++ b/docs/html/classmpl_1_1invalid__count-members.html @@ -90,7 +90,7 @@

This is the complete list of members for mpl::invalid_count, including all inherited members.

- +
error(const char *const str="unknown")mpl::errorinlineexplicit
invalid_count()mpl::invalid_countinline
invalid_count() (defined in mpl::invalid_count)mpl::invalid_countinline
what() const noexcept overridempl::errorinline
diff --git a/docs/html/classmpl_1_1invalid__count.html b/docs/html/classmpl_1_1invalid__count.html index aa93a407..45a15c9a 100644 --- a/docs/html/classmpl_1_1invalid__count.html +++ b/docs/html/classmpl_1_1invalid__count.html @@ -117,8 +117,6 @@ - -

Public Member Functions

 invalid_count ()
 
const char * what () const noexcept override
 
@@ -191,7 +189,7 @@

diff --git a/docs/html/classmpl_1_1invalid__count.js b/docs/html/classmpl_1_1invalid__count.js index 93ea942e..c95ad06a 100644 --- a/docs/html/classmpl_1_1invalid__count.js +++ b/docs/html/classmpl_1_1invalid__count.js @@ -1,5 +1,4 @@ var classmpl_1_1invalid__count = [ - [ "invalid_count", "classmpl_1_1invalid__count.html#ae565237bd4635f06cb5daa665ac316c3", null ], [ "what", "classmpl_1_1invalid__count.html#a74cba88f95894c0abf2baff78a88076e", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1invalid__datatype__bound-members.html b/docs/html/classmpl_1_1invalid__datatype__bound-members.html index 29d17d99..b6c22adf 100644 --- a/docs/html/classmpl_1_1invalid__datatype__bound-members.html +++ b/docs/html/classmpl_1_1invalid__datatype__bound-members.html @@ -90,7 +90,7 @@

This is the complete list of members for mpl::invalid_datatype_bound, including all inherited members.

- +
error(const char *const str="unknown")mpl::errorinlineexplicit
invalid_datatype_bound()mpl::invalid_datatype_boundinline
invalid_datatype_bound() (defined in mpl::invalid_datatype_bound)mpl::invalid_datatype_boundinline
what() const noexcept overridempl::errorinline
diff --git a/docs/html/classmpl_1_1invalid__datatype__bound.html b/docs/html/classmpl_1_1invalid__datatype__bound.html index 443b7693..f1c74aaa 100644 --- a/docs/html/classmpl_1_1invalid__datatype__bound.html +++ b/docs/html/classmpl_1_1invalid__datatype__bound.html @@ -117,8 +117,6 @@ - -

Public Member Functions

 invalid_datatype_bound ()
 
const char * what () const noexcept override
 
@@ -191,7 +189,7 @@

diff --git a/docs/html/classmpl_1_1invalid__datatype__bound.js b/docs/html/classmpl_1_1invalid__datatype__bound.js index 89d5fb8f..1a4b83b4 100644 --- a/docs/html/classmpl_1_1invalid__datatype__bound.js +++ b/docs/html/classmpl_1_1invalid__datatype__bound.js @@ -1,5 +1,4 @@ var classmpl_1_1invalid__datatype__bound = [ - [ "invalid_datatype_bound", "classmpl_1_1invalid__datatype__bound.html#ae8bb5417f504c1140e7312d85c35c79d", null ], [ "what", "classmpl_1_1invalid__datatype__bound.html#a74cba88f95894c0abf2baff78a88076e", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1invalid__dim-members.html b/docs/html/classmpl_1_1invalid__dim-members.html index e3b06def..3600a435 100644 --- a/docs/html/classmpl_1_1invalid__dim-members.html +++ b/docs/html/classmpl_1_1invalid__dim-members.html @@ -90,7 +90,7 @@

This is the complete list of members for mpl::invalid_dim, including all inherited members.

- +
error(const char *const str="unknown")mpl::errorinlineexplicit
invalid_dim()mpl::invalid_diminline
invalid_dim() (defined in mpl::invalid_dim)mpl::invalid_diminline
what() const noexcept overridempl::errorinline
diff --git a/docs/html/classmpl_1_1invalid__dim.html b/docs/html/classmpl_1_1invalid__dim.html index 70827ece..78628034 100644 --- a/docs/html/classmpl_1_1invalid__dim.html +++ b/docs/html/classmpl_1_1invalid__dim.html @@ -117,8 +117,6 @@ - -

Public Member Functions

 invalid_dim ()
 
const char * what () const noexcept override
 
@@ -191,7 +189,7 @@

diff --git a/docs/html/classmpl_1_1invalid__dim.js b/docs/html/classmpl_1_1invalid__dim.js index bc401267..bbbb4d41 100644 --- a/docs/html/classmpl_1_1invalid__dim.js +++ b/docs/html/classmpl_1_1invalid__dim.js @@ -1,5 +1,4 @@ var classmpl_1_1invalid__dim = [ - [ "invalid_dim", "classmpl_1_1invalid__dim.html#a35fcdedad1a82a8df4961ec9f8c2b13f", null ], [ "what", "classmpl_1_1invalid__dim.html#a74cba88f95894c0abf2baff78a88076e", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1invalid__layout-members.html b/docs/html/classmpl_1_1invalid__layout-members.html index aa4329d0..a6626d1a 100644 --- a/docs/html/classmpl_1_1invalid__layout-members.html +++ b/docs/html/classmpl_1_1invalid__layout-members.html @@ -90,7 +90,7 @@

This is the complete list of members for mpl::invalid_layout, including all inherited members.

- +
error(const char *const str="unknown")mpl::errorinlineexplicit
invalid_layout()mpl::invalid_layoutinline
invalid_layout() (defined in mpl::invalid_layout)mpl::invalid_layoutinline
what() const noexcept overridempl::errorinline
diff --git a/docs/html/classmpl_1_1invalid__layout.html b/docs/html/classmpl_1_1invalid__layout.html index 9d8db032..7420296f 100644 --- a/docs/html/classmpl_1_1invalid__layout.html +++ b/docs/html/classmpl_1_1invalid__layout.html @@ -117,8 +117,6 @@ - -

Public Member Functions

 invalid_layout ()
 
const char * what () const noexcept override
 
@@ -191,7 +189,7 @@

diff --git a/docs/html/classmpl_1_1invalid__layout.js b/docs/html/classmpl_1_1invalid__layout.js index a88b00e4..cccdd307 100644 --- a/docs/html/classmpl_1_1invalid__layout.js +++ b/docs/html/classmpl_1_1invalid__layout.js @@ -1,5 +1,4 @@ var classmpl_1_1invalid__layout = [ - [ "invalid_layout", "classmpl_1_1invalid__layout.html#aba5a34fef955a918716733b36085baa5", null ], [ "what", "classmpl_1_1invalid__layout.html#a74cba88f95894c0abf2baff78a88076e", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1invalid__rank-members.html b/docs/html/classmpl_1_1invalid__rank-members.html index 44490ece..f4f232ab 100644 --- a/docs/html/classmpl_1_1invalid__rank-members.html +++ b/docs/html/classmpl_1_1invalid__rank-members.html @@ -90,7 +90,7 @@

This is the complete list of members for mpl::invalid_rank, including all inherited members.

- +
error(const char *const str="unknown")mpl::errorinlineexplicit
invalid_rank()mpl::invalid_rankinline
invalid_rank() (defined in mpl::invalid_rank)mpl::invalid_rankinline
what() const noexcept overridempl::errorinline
diff --git a/docs/html/classmpl_1_1invalid__rank.html b/docs/html/classmpl_1_1invalid__rank.html index fa7f86e7..17e0c22d 100644 --- a/docs/html/classmpl_1_1invalid__rank.html +++ b/docs/html/classmpl_1_1invalid__rank.html @@ -117,8 +117,6 @@ - -

Public Member Functions

 invalid_rank ()
 
const char * what () const noexcept override
 
@@ -191,7 +189,7 @@

diff --git a/docs/html/classmpl_1_1invalid__rank.js b/docs/html/classmpl_1_1invalid__rank.js index 4c91487f..6ab86bec 100644 --- a/docs/html/classmpl_1_1invalid__rank.js +++ b/docs/html/classmpl_1_1invalid__rank.js @@ -1,5 +1,4 @@ var classmpl_1_1invalid__rank = [ - [ "invalid_rank", "classmpl_1_1invalid__rank.html#ad37eac9d409ae80bc126da73cb048294", null ], [ "what", "classmpl_1_1invalid__rank.html#a74cba88f95894c0abf2baff78a88076e", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1invalid__size-members.html b/docs/html/classmpl_1_1invalid__size-members.html index 0b673acc..e2a1835a 100644 --- a/docs/html/classmpl_1_1invalid__size-members.html +++ b/docs/html/classmpl_1_1invalid__size-members.html @@ -90,7 +90,7 @@

This is the complete list of members for mpl::invalid_size, including all inherited members.

- +
error(const char *const str="unknown")mpl::errorinlineexplicit
invalid_size()mpl::invalid_sizeinline
invalid_size() (defined in mpl::invalid_size)mpl::invalid_sizeinline
what() const noexcept overridempl::errorinline
diff --git a/docs/html/classmpl_1_1invalid__size.html b/docs/html/classmpl_1_1invalid__size.html index edd420af..81992869 100644 --- a/docs/html/classmpl_1_1invalid__size.html +++ b/docs/html/classmpl_1_1invalid__size.html @@ -117,8 +117,6 @@ - -

Public Member Functions

 invalid_size ()
 
const char * what () const noexcept override
 
@@ -191,7 +189,7 @@

diff --git a/docs/html/classmpl_1_1invalid__size.js b/docs/html/classmpl_1_1invalid__size.js index dccc8e05..7653aada 100644 --- a/docs/html/classmpl_1_1invalid__size.js +++ b/docs/html/classmpl_1_1invalid__size.js @@ -1,5 +1,4 @@ var classmpl_1_1invalid__size = [ - [ "invalid_size", "classmpl_1_1invalid__size.html#af22c29b8f2a1b74d134a8c221d89bc58", null ], [ "what", "classmpl_1_1invalid__size.html#a74cba88f95894c0abf2baff78a88076e", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1invalid__tag-members.html b/docs/html/classmpl_1_1invalid__tag-members.html index 47106498..bcfe844a 100644 --- a/docs/html/classmpl_1_1invalid__tag-members.html +++ b/docs/html/classmpl_1_1invalid__tag-members.html @@ -90,7 +90,7 @@

This is the complete list of members for mpl::invalid_tag, including all inherited members.

- +
error(const char *const str="unknown")mpl::errorinlineexplicit
invalid_tag()mpl::invalid_taginline
invalid_tag() (defined in mpl::invalid_tag)mpl::invalid_taginline
what() const noexcept overridempl::errorinline
diff --git a/docs/html/classmpl_1_1invalid__tag.html b/docs/html/classmpl_1_1invalid__tag.html index faac43ac..886d2831 100644 --- a/docs/html/classmpl_1_1invalid__tag.html +++ b/docs/html/classmpl_1_1invalid__tag.html @@ -117,8 +117,6 @@ - -

Public Member Functions

 invalid_tag ()
 
const char * what () const noexcept override
 
@@ -191,7 +189,7 @@

diff --git a/docs/html/classmpl_1_1invalid__tag.js b/docs/html/classmpl_1_1invalid__tag.js index b5f876a0..63b9a38e 100644 --- a/docs/html/classmpl_1_1invalid__tag.js +++ b/docs/html/classmpl_1_1invalid__tag.js @@ -1,5 +1,4 @@ var classmpl_1_1invalid__tag = [ - [ "invalid_tag", "classmpl_1_1invalid__tag.html#a7e4700f381c0e849e1c0a6b51aee9465", null ], [ "what", "classmpl_1_1invalid__tag.html#a74cba88f95894c0abf2baff78a88076e", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1irequest-members.html b/docs/html/classmpl_1_1irequest-members.html index 795d10e6..28f87eae 100644 --- a/docs/html/classmpl_1_1irequest-members.html +++ b/docs/html/classmpl_1_1irequest-members.html @@ -89,24 +89,12 @@

This is the complete list of members for mpl::irequest, including all inherited members.

- - - - - - - - - - - - - - - - - - + + + + + +
cancel()mpl::impl::request< impl::irequest >inline
get_status()mpl::impl::request< impl::irequest >inline
impl::request_pool< irequest >mpl::irequestfriend
irequest(const impl::irequest &r)mpl::irequestinline
irequest(const irequest &)=deletempl::irequest
irequest(irequest &&r) noexceptmpl::irequestinline
operator=(const irequest &)=deletempl::irequest
operator=(irequest &&other) noexceptmpl::irequestinline
request< impl::irequest >::operator=(const request &)=deletempl::impl::request< impl::irequest >
request< impl::irequest >::operator=(request &&other) noexceptmpl::impl::request< impl::irequest >inline
request()=deletempl::impl::request< impl::irequest >
request(const request &)=deletempl::impl::request< impl::irequest >
request(const irequest &req)mpl::impl::request< impl::irequest >inlineexplicit
request(const prequest &req)mpl::impl::request< impl::irequest >inlineexplicit
request(request &&other) noexceptmpl::impl::request< impl::irequest >inline
test()mpl::impl::request< impl::irequest >inline
wait()mpl::impl::request< impl::irequest >inline
~request()mpl::impl::request< impl::irequest >inline
impl::request_pool< irequest > (defined in mpl::irequest)mpl::irequestfriend
irequest(const impl::irequest &r) (defined in mpl::irequest)mpl::irequestinline
irequest(const irequest &)=delete (defined in mpl::irequest)mpl::irequest
irequest(irequest &&r) noexcept (defined in mpl::irequest)mpl::irequestinline
operator=(const irequest &)=delete (defined in mpl::irequest)mpl::irequest
operator=(irequest &&other) noexcept (defined in mpl::irequest)mpl::irequestinline
diff --git a/docs/html/classmpl_1_1irequest.html b/docs/html/classmpl_1_1irequest.html index 7dbfd4bc..cdc02cf0 100644 --- a/docs/html/classmpl_1_1irequest.html +++ b/docs/html/classmpl_1_1irequest.html @@ -118,11 +118,13 @@ Public Member Functions

 irequest (const impl::irequest &r)   - irequest (const irequest &)=delete +irequest (const irequest &)=delete    irequest (irequest &&r) noexcept   -void operator= (const irequest &)=delete + +void operator= (const irequest &)=delete   irequestoperator= (irequest &&other) noexcept   @@ -142,13 +144,13 @@

Detailed Description

Represents a non-blocking communication request.

-
Examples
matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, and stl_container.cc.
+
Examples
matrix_gather.cc, nonblocking.cc, nonblocking_mult.cc, and stl_container.cc.

Definition at line 224 of file request.hpp.

Constructor & Destructor Documentation

-

◆ irequest() [1/3]

+

◆ irequest() [1/2]

@@ -173,36 +175,10 @@

Definition at line 229 of file request.hpp.

-

-
- -

◆ irequest() [2/3]

- -
-
- - - - - -
- - - - - - - - -
mpl::irequest::irequest (const irequest)
-
-delete
-
-
-

◆ irequest() [3/3]

+

◆ irequest() [2/2]

@@ -282,36 +258,10 @@

Definition at line 98 of file request.hpp.

-

-
- -

◆ operator=() [1/2]

- -
-
- - - - - -
- - - - - - - - -
void mpl::irequest::operator= (const irequest)
-
-delete
-
-
-

◆ operator=() [2/2]

+

◆ operator=()

@@ -387,7 +337,7 @@

-
Examples
nonblocking.cc, and nonblocking_mult.cc.
+
Examples
nonblocking.cc, and nonblocking_mult.cc.

Definition at line 92 of file request.hpp.

@@ -427,7 +377,7 @@

diff --git a/docs/html/classmpl_1_1irequest.js b/docs/html/classmpl_1_1irequest.js deleted file mode 100644 index 8d360e4b..00000000 --- a/docs/html/classmpl_1_1irequest.js +++ /dev/null @@ -1,13 +0,0 @@ -var classmpl_1_1irequest = -[ - [ "irequest", "classmpl_1_1irequest.html#a67a88cdd06a34645ed430bbd6922a8b9", null ], - [ "irequest", "classmpl_1_1irequest.html#ae4f7b65e9d801916ac0cb47c3c379de2", null ], - [ "irequest", "classmpl_1_1irequest.html#aad342024a6c6fe73177850401fe2130d", null ], - [ "cancel", "classmpl_1_1irequest.html#ad2ddcfa49b35df4120235692fdebdef2", null ], - [ "get_status", "classmpl_1_1irequest.html#a8ed5bdb05a4a5caf7dc2c08832b6fc73", null ], - [ "operator=", "classmpl_1_1irequest.html#af5b70e2988f99a85b17ce3e4f80fee36", null ], - [ "operator=", "classmpl_1_1irequest.html#afc1a5562cbe2971ed389b6733dfd551e", null ], - [ "test", "classmpl_1_1irequest.html#a9731fa2fb0157e792af4d9e5ade4103b", null ], - [ "wait", "classmpl_1_1irequest.html#aedca3ad316f078b0190b9396197a7605", null ], - [ "impl::request_pool< irequest >", "classmpl_1_1irequest.html#ac0fb8b83ea79062c37d219742c871bcc", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1irequest__pool-members.html b/docs/html/classmpl_1_1irequest__pool-members.html index e5a4ec8b..1c6795aa 100644 --- a/docs/html/classmpl_1_1irequest__pool-members.html +++ b/docs/html/classmpl_1_1irequest__pool-members.html @@ -89,30 +89,11 @@

This is the complete list of members for mpl::irequest_pool, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - + + + + +
cancel(size_type i)mpl::impl::request_pool< irequest >inline
cancelall()mpl::impl::request_pool< irequest >inline
empty() constmpl::impl::request_pool< irequest >inline
get_status(size_type i) constmpl::impl::request_pool< irequest >inline
irequest_pool()=defaultmpl::irequest_pool
irequest_pool(const irequest_pool &)=deletempl::irequest_pool
irequest_pool(irequest_pool &&r) noexceptmpl::irequest_poolinline
operator=(const irequest_pool &)=deletempl::irequest_pool
operator=(irequest_pool &&other) noexceptmpl::irequest_poolinline
request_pool< irequest >::operator=(const request_pool &)=deletempl::impl::request_pool< irequest >
request_pool< irequest >::operator=(request_pool &&other) noexceptmpl::impl::request_pool< irequest >inline
push(irequest &&other)mpl::impl::request_pool< irequest >inline
request_pool()=defaultmpl::impl::request_pool< irequest >
request_pool(const request_pool &)=deletempl::impl::request_pool< irequest >
request_pool(request_pool &&other) noexceptmpl::impl::request_pool< irequest >inline
size() constmpl::impl::request_pool< irequest >inline
size_type typedefmpl::impl::request_pool< irequest >
testall()mpl::impl::request_pool< irequest >inline
testany()mpl::impl::request_pool< irequest >inline
testsome(I iter)mpl::impl::request_pool< irequest >inline
waitall()mpl::impl::request_pool< irequest >inline
waitany()mpl::impl::request_pool< irequest >inline
waitsome(I iter)mpl::impl::request_pool< irequest >inline
~request_pool()mpl::impl::request_pool< irequest >inline
irequest_pool()=default (defined in mpl::irequest_pool)mpl::irequest_pool
irequest_pool(const irequest_pool &)=delete (defined in mpl::irequest_pool)mpl::irequest_pool
irequest_pool(irequest_pool &&r) noexcept (defined in mpl::irequest_pool)mpl::irequest_poolinline
operator=(const irequest_pool &)=delete (defined in mpl::irequest_pool)mpl::irequest_pool
operator=(irequest_pool &&other) noexcept (defined in mpl::irequest_pool)mpl::irequest_poolinline
diff --git a/docs/html/classmpl_1_1irequest__pool.html b/docs/html/classmpl_1_1irequest__pool.html index b693533d..2618ca5b 100644 --- a/docs/html/classmpl_1_1irequest__pool.html +++ b/docs/html/classmpl_1_1irequest__pool.html @@ -116,36 +116,36 @@ - +

Public Types

using size_type = std::vector< MPI_Request >::size_type
using size_type = std::vector< MPI_Request >::size_type
 
- - - + - + - + - + - + - + - + @@ -158,7 +158,7 @@

Public Member Functions

 irequest_pool ()=default
 
 irequest_pool (const irequest_pool &)=delete
irequest_pool (const irequest_pool &)=delete
 
 irequest_pool (irequest_pool &&r) noexcept
 
void operator= (const irequest_pool &)=delete
+void operator= (const irequest_pool &)=delete
 
irequest_pooloperator= (irequest_pool &&other) noexcept
 
size_type size () const
size_type size () const
 
bool empty () const
 
const status_tget_status (size_type i) const
const status_tget_status (size_type i) const
 
void cancel (size_type i)
void cancel (size_type i)
 
void cancelall ()
 
void push (irequest &&other)
 
std::pair< bool, size_typewaitany ()
std::pair< bool, size_type > waitany ()
 
std::pair< bool, size_typetestany ()
std::pair< bool, size_type > testany ()
 
void waitall ()
 

Detailed Description

Container for managing a list of non-blocking communication requests.

-
Examples
heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, nonblocking.cc, nonblocking_mult.cc, and vibrating_string_mpl.cc.
+
Examples
heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, nonblocking.cc, nonblocking_mult.cc, and vibrating_string_mpl.cc.

Definition at line 249 of file request.hpp.

@@ -173,7 +173,7 @@

- +
using mpl::impl::request_pool< irequest >::size_type = std::vector<MPI_Request>::size_typeusing mpl::impl::request_pool< irequest >::size_type = std::vector<MPI_Request>::size_type
@@ -188,59 +188,8 @@

Constructor & Destructor Documentation

- -

◆ irequest_pool() [1/3]

- -
-
- - - - - -
- - - - - - - -
mpl::irequest_pool::irequest_pool ()
-
-default
-
- -
-
- -

◆ irequest_pool() [2/3]

- -
-
- - - - - -
- - - - - - - - -
mpl::irequest_pool::irequest_pool (const irequest_pool)
-
-delete
-
- -
-
-

◆ irequest_pool() [3/3]

+

◆ irequest_pool()

@@ -280,7 +229,7 @@

void mpl::impl::request_pool< irequest >::cancel ( - size_type  + size_type  i) @@ -362,7 +311,7 @@

const status_t & mpl::impl::request_pool< irequest >::get_status ( - size_type  + size_type  i) const @@ -376,36 +325,10 @@

Definition at line 149 of file request.hpp.

-

-
- -

◆ operator=() [1/2]

- -
-
- - - - - -
- - - - - - - - -
void mpl::irequest_pool::operator= (const irequest_pool)
-
-delete
-
-
-

◆ operator=() [2/2]

+

◆ operator=()

@@ -455,7 +378,7 @@

-
Examples
heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, nonblocking.cc, nonblocking_mult.cc, and vibrating_string_mpl.cc.
+
Examples
heat_equation_Jacobi_method.cc, heat_equation_successive_over-relaxation.cc, nonblocking.cc, nonblocking_mult.cc, and vibrating_string_mpl.cc.

Definition at line 158 of file request.hpp.

@@ -472,7 +395,7 @@

- + @@ -526,7 +449,7 @@

size_type mpl::impl::request_pool< irequest >::size size_type mpl::impl::request_pool< irequest >::size ( ) const
- + @@ -593,7 +516,7 @@

-
Examples
heat_equation_successive_over-relaxation.cc, nonblocking.cc, nonblocking_mult.cc, and vibrating_string_mpl.cc.
+
Examples
heat_equation_successive_over-relaxation.cc, nonblocking.cc, nonblocking_mult.cc, and vibrating_string_mpl.cc.

Definition at line 186 of file request.hpp.

@@ -610,7 +533,7 @@

std::pair< bool, size_type > mpl::impl::request_pool< irequest >::testany std::pair< bool, size_type > mpl::impl::request_pool< irequest >::testany ( )
- + @@ -650,7 +573,7 @@

-
Examples
nonblocking.cc.
+
Examples
nonblocking.cc.

Definition at line 197 of file request.hpp.

@@ -665,7 +588,7 @@

diff --git a/docs/html/classmpl_1_1irequest__pool.js b/docs/html/classmpl_1_1irequest__pool.js deleted file mode 100644 index ba5925dd..00000000 --- a/docs/html/classmpl_1_1irequest__pool.js +++ /dev/null @@ -1,21 +0,0 @@ -var classmpl_1_1irequest__pool = -[ - [ "size_type", "classmpl_1_1irequest__pool.html#a5b3f8f3986dc6bc5852939446531c767", null ], - [ "irequest_pool", "classmpl_1_1irequest__pool.html#ae02a4f735ff77cf1e85ae79c399e5b8a", null ], - [ "irequest_pool", "classmpl_1_1irequest__pool.html#a1a8d4dfb6f2d6b2a12fb752a0c3cd37c", null ], - [ "irequest_pool", "classmpl_1_1irequest__pool.html#a0a59a78777963e261f6c89db28f07f28", null ], - [ "cancel", "classmpl_1_1irequest__pool.html#a09521b62f5b53546c854e89644245b70", null ], - [ "cancelall", "classmpl_1_1irequest__pool.html#a4191612db45d53cab3a294f3ac2f9018", null ], - [ "empty", "classmpl_1_1irequest__pool.html#acdd1055b70611cd8796d0c22ccfb2397", null ], - [ "get_status", "classmpl_1_1irequest__pool.html#a7761f370d4bbef127a41fc1f4b0f39f9", null ], - [ "operator=", "classmpl_1_1irequest__pool.html#a79a2d05644a537414fdfdb90de9dd7ab", null ], - [ "operator=", "classmpl_1_1irequest__pool.html#aed3ca89d2b316935ff07d39fb0f6be61", null ], - [ "push", "classmpl_1_1irequest__pool.html#a9b2ce42dc5ec15f8875673e07f6d77bf", null ], - [ "size", "classmpl_1_1irequest__pool.html#a40b2e7f51521f6cbf1ba99c26547dade", null ], - [ "testall", "classmpl_1_1irequest__pool.html#a5ebba7b0471ba84cf591abace463072f", null ], - [ "testany", "classmpl_1_1irequest__pool.html#a0119c4bd3e340044868b9c26bae2a6f9", null ], - [ "testsome", "classmpl_1_1irequest__pool.html#a0adfe04dd4bf29535b6687562fb88989", null ], - [ "waitall", "classmpl_1_1irequest__pool.html#a1e864f5b3e62bb28db94bec090235401", null ], - [ "waitany", "classmpl_1_1irequest__pool.html#a1acdccf04f454806bac255279ac53974", null ], - [ "waitsome", "classmpl_1_1irequest__pool.html#ab076cdb8feb7b1270497af73430e4fde", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1iterator__layout.html b/docs/html/classmpl_1_1iterator__layout.html index 404aac90..e81fa805 100644 --- a/docs/html/classmpl_1_1iterator__layout.html +++ b/docs/html/classmpl_1_1iterator__layout.html @@ -154,46 +154,46 @@

- + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -211,7 +211,7 @@
Note
Iterators that have been used to create objects of this type must not become invalid during the object's life time. Iterator must allow read access.
See also
inherits all member methods of layout
-
Examples
layouts.cc.
+
Examples
layouts.cc.

Definition at line 1184 of file layout.hpp.

@@ -544,7 +544,7 @@

std::pair< bool, size_type > mpl::impl::request_pool< irequest >::waitany std::pair< bool, size_type > mpl::impl::request_pool< irequest >::waitany ( )
void swap (iterator_layout< T > &other)
 exchanges two iterator layouts More...
 
ssize_t byte_extent () const
ssize_t byte_extent () const
 Get the byte extent of the layout. More...
 
ssize_t byte_lower_bound () const
ssize_t byte_lower_bound () const
 Get the byte lower bound of the layout. More...
 
ssize_t byte_upper_bound () const
ssize_t byte_upper_bound () const
 Get the byte upper bound of the layout. More...
 
ssize_t extent () const
ssize_t extent () const
 Get the extent of the layout. More...
 
ssize_t lower_bound () const
ssize_t lower_bound () const
 Get the lower bound of the layout. More...
 
ssize_t upper_bound () const
ssize_t upper_bound () const
 Get the upper bound of the layout. More...
 
ssize_t true_byte_extent () const
ssize_t true_byte_extent () const
 Get the true byte extent of the layout. More...
 
ssize_t true_byte_lower_bound () const
ssize_t true_byte_lower_bound () const
 Get the true byte lower bound of the layout. More...
 
ssize_t true_byte_upper_bound () const
ssize_t true_byte_upper_bound () const
 Get the true byte upper bound of the layout. More...
 
ssize_t true_extent () const
ssize_t true_extent () const
 Get the true extent of the layout. More...
 
ssize_t true_lower_bound () const
ssize_t true_lower_bound () const
 Get the true lower bound of the layout. More...
 
ssize_t true_upper_bound () const
ssize_t true_upper_bound () const
 Get the true upper bound of the layout. More...
 
void byte_resize (ssize_t lb, ssize_t extent)
void byte_resize (ssize_t lb, ssize_t extent)
 Resize the layout. More...
 
void resize (ssize_t lb, ssize_t extent)
void resize (ssize_t lb, ssize_t extent)
 Resize the layout. More...
 
void swap (layout &l)
- + @@ -578,7 +578,7 @@

ssize_t mpl::layout< T >::byte_extent ssize_t mpl::layout< T >::byte_extent ( ) const
- + @@ -616,13 +616,13 @@

void mpl::layout< T >::byte_resize

- + - + @@ -663,7 +663,7 @@

ssize_t mpl::layout< T >::byte_lower_bound ssize_t mpl::layout< T >::byte_lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -699,7 +699,7 @@

ssize_t mpl::layout< T >::byte_upper_bound ssize_t mpl::layout< T >::byte_upper_bound ( ) const
- + @@ -733,7 +733,7 @@

ssize_t mpl::layout< T >::extent ssize_t mpl::layout< T >::extent ( ) const
- + @@ -845,13 +845,13 @@

void mpl::layout< T >::resize

- + - + @@ -875,7 +875,7 @@

Examples
layouts.cc.
+
Examples
layouts.cc.

Definition at line 314 of file layout.hpp.

@@ -970,7 +970,7 @@

ssize_t mpl::layout< T >::lower_bound ssize_t mpl::layout< T >::lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -1004,7 +1004,7 @@

ssize_t mpl::layout< T >::true_byte_extent ssize_t mpl::layout< T >::true_byte_extent ( ) const
- + @@ -1040,7 +1040,7 @@

ssize_t mpl::layout< T >::true_byte_lower_bound ssize_t mpl::layout< T >::true_byte_lower_bound ( ) const
- + @@ -1076,7 +1076,7 @@

ssize_t mpl::layout< T >::true_byte_upper_bound ssize_t mpl::layout< T >::true_byte_upper_bound ( ) const
- + @@ -1110,7 +1110,7 @@

ssize_t mpl::layout< T >::true_extent ssize_t mpl::layout< T >::true_extent ( ) const
- + @@ -1146,7 +1146,7 @@

ssize_t mpl::layout< T >::true_lower_bound ssize_t mpl::layout< T >::true_lower_bound ( ) const
- + @@ -1182,7 +1182,7 @@

ssize_t mpl::layout< T >::true_upper_bound ssize_t mpl::layout< T >::true_upper_bound ( ) const
- + @@ -1214,7 +1214,7 @@

diff --git a/docs/html/classmpl_1_1iterator__layout_1_1parameter-members.html b/docs/html/classmpl_1_1iterator__layout_1_1parameter-members.html index 7767ca64..3e6390d0 100644 --- a/docs/html/classmpl_1_1iterator__layout_1_1parameter-members.html +++ b/docs/html/classmpl_1_1iterator__layout_1_1parameter-members.html @@ -89,7 +89,7 @@

This is the complete list of members for mpl::iterator_layout< T >::parameter, including all inherited members.

ssize_t mpl::layout< T >::upper_bound ssize_t mpl::layout< T >::upper_bound ( ) const
- +
iterator_layoutmpl::iterator_layout< T >::parameterfriend
iterator_layout (defined in mpl::iterator_layout< T >::parameter)mpl::iterator_layout< T >::parameterfriend
parameter()=defaultmpl::iterator_layout< T >::parameter
parameter(iter_T first, iter_T last)mpl::iterator_layout< T >::parameterinline

diff --git a/docs/html/classmpl_1_1iterator__layout_1_1parameter.html b/docs/html/classmpl_1_1iterator__layout_1_1parameter.html index 6d6f9ab6..3c8347a7 100644 --- a/docs/html/classmpl_1_1iterator__layout_1_1parameter.html +++ b/docs/html/classmpl_1_1iterator__layout_1_1parameter.html @@ -106,8 +106,9 @@ - - + + @@ -125,37 +126,8 @@

Definition at line 1189 of file layout.hpp.

Constructor & Destructor Documentation

- -

◆ parameter() [1/2]

- -
-
-
-template<typename T >
-

Public Member Functions

 parameter ()=default
 creates parameters for an iterator layout representing an empty sequence More...
parameter ()=default
 creates parameters for an iterator layout representing an empty sequence
 
template<typename iter_T >
 parameter (iter_T first, iter_T last)
- - - - -
- - - - - - - -
mpl::iterator_layout< T >::parameter::parameter ()
-
-default
-
- -

creates parameters for an iterator layout representing an empty sequence

- -
-

-

◆ parameter() [2/2]

+

◆ parameter()

@@ -246,7 +218,7 @@

diff --git a/docs/html/classmpl_1_1iterator__layout_1_1parameter.js b/docs/html/classmpl_1_1iterator__layout_1_1parameter.js index 97c85ced..47dfce15 100644 --- a/docs/html/classmpl_1_1iterator__layout_1_1parameter.js +++ b/docs/html/classmpl_1_1iterator__layout_1_1parameter.js @@ -1,6 +1,5 @@ var classmpl_1_1iterator__layout_1_1parameter = [ [ "parameter", "classmpl_1_1iterator__layout_1_1parameter.html#a8b9b1dcef19978283dcebf2d03cd727d", null ], - [ "parameter", "classmpl_1_1iterator__layout_1_1parameter.html#a379a502823866a2428a10702c4e30d20", null ], - [ "iterator_layout", "classmpl_1_1iterator__layout_1_1parameter.html#a58c52e5547d2956c368d96c3585da540", null ] + [ "parameter", "classmpl_1_1iterator__layout_1_1parameter.html#a379a502823866a2428a10702c4e30d20", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1layout-members.html b/docs/html/classmpl_1_1layout-members.html index 448f6df0..f1bab55e 100644 --- a/docs/html/classmpl_1_1layout-members.html +++ b/docs/html/classmpl_1_1layout-members.html @@ -93,28 +93,28 @@ byte_lower_bound() constmpl::layout< T >inline byte_resize(ssize_t lb, ssize_t extent)mpl::layout< T >inline byte_upper_bound() constmpl::layout< T >inline - contiguous_layout< T >mpl::layout< T >friend - detail::datatype_traits< layout< T > >mpl::layout< T >friend - empty_layout< T >mpl::layout< T >friend + contiguous_layout< T > (defined in mpl::layout< T >)mpl::layout< T >friend + detail::datatype_traits< layout< T > > (defined in mpl::layout< T >)mpl::layout< T >friend + empty_layout< T > (defined in mpl::layout< T >)mpl::layout< T >friend extent() constmpl::layout< T >inline - heterogeneous_layoutmpl::layout< T >friend - hindexed_block_layout< T >mpl::layout< T >friend - hindexed_layout< T >mpl::layout< T >friend - indexed_block_layout< T >mpl::layout< T >friend - indexed_layout< T >mpl::layout< T >friend - iterator_layout< T >mpl::layout< T >friend + heterogeneous_layout (defined in mpl::layout< T >)mpl::layout< T >friend + hindexed_block_layout< T > (defined in mpl::layout< T >)mpl::layout< T >friend + hindexed_layout< T > (defined in mpl::layout< T >)mpl::layout< T >friend + indexed_block_layout< T > (defined in mpl::layout< T >)mpl::layout< T >friend + indexed_layout< T > (defined in mpl::layout< T >)mpl::layout< T >friend + iterator_layout< T > (defined in mpl::layout< T >)mpl::layout< T >friend layout()mpl::layout< T >inline layout(const layout &l)mpl::layout< T >inline layout(layout &&l) noexceptmpl::layout< T >inline lower_bound() constmpl::layout< T >inline make_absolutempl::layout< T >friend make_absolutempl::layout< T >friend - null_layout< T >mpl::layout< T >friend + null_layout< T > (defined in mpl::layout< T >)mpl::layout< T >friend operator=(const layout &l)mpl::layout< T >inline operator=(layout &&l) noexceptmpl::layout< T >inline resize(ssize_t lb, ssize_t extent)mpl::layout< T >inline - strided_vector_layout< T >mpl::layout< T >friend - subarray_layout< T >mpl::layout< T >friend + strided_vector_layout< T > (defined in mpl::layout< T >)mpl::layout< T >friend + subarray_layout< T > (defined in mpl::layout< T >)mpl::layout< T >friend swap(layout &l)mpl::layout< T >inline true_byte_extent() constmpl::layout< T >inline true_byte_lower_bound() constmpl::layout< T >inline @@ -123,7 +123,7 @@ true_lower_bound() constmpl::layout< T >inline true_upper_bound() constmpl::layout< T >inline upper_bound() constmpl::layout< T >inline - vector_layout< T >mpl::layout< T >friend + vector_layout< T > (defined in mpl::layout< T >)mpl::layout< T >friend ~layout()mpl::layout< T >inline
diff --git a/docs/html/classmpl_1_1layout.html b/docs/html/classmpl_1_1layout.html index 3baed25d..28b32db7 100644 --- a/docs/html/classmpl_1_1layout.html +++ b/docs/html/classmpl_1_1layout.html @@ -140,46 +140,46 @@ layoutoperator= (layout &&l) noexcept  Move assignment operator creates a new layout that describes the same memory layout as the other one. More...
  -ssize_t byte_extent () const +ssize_t byte_extent () const  Get the byte extent of the layout. More...
  -ssize_t byte_lower_bound () const +ssize_t byte_lower_bound () const  Get the byte lower bound of the layout. More...
  -ssize_t byte_upper_bound () const +ssize_t byte_upper_bound () const  Get the byte upper bound of the layout. More...
  -ssize_t extent () const +ssize_t extent () const  Get the extent of the layout. More...
  -ssize_t lower_bound () const +ssize_t lower_bound () const  Get the lower bound of the layout. More...
  -ssize_t upper_bound () const +ssize_t upper_bound () const  Get the upper bound of the layout. More...
  -ssize_t true_byte_extent () const +ssize_t true_byte_extent () const  Get the true byte extent of the layout. More...
  -ssize_t true_byte_lower_bound () const +ssize_t true_byte_lower_bound () const  Get the true byte lower bound of the layout. More...
  -ssize_t true_byte_upper_bound () const +ssize_t true_byte_upper_bound () const  Get the true byte upper bound of the layout. More...
  -ssize_t true_extent () const +ssize_t true_extent () const  Get the true extent of the layout. More...
  -ssize_t true_lower_bound () const +ssize_t true_lower_bound () const  Get the true lower bound of the layout. More...
  -ssize_t true_upper_bound () const +ssize_t true_upper_bound () const  Get the true upper bound of the layout. More...
  -void byte_resize (ssize_t lb, ssize_t extent) +void byte_resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  -void resize (ssize_t lb, ssize_t extent) +void resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  void swap (layout &l) @@ -218,10 +218,10 @@ class heterogeneous_layout   absolute_data< T * > make_absolute (T *, const layout< T > &) - helper function for heterogeneous_layout More...
+ Helper function for the class heterogeneous_layout. More...
  absolute_data< const T * > make_absolute (const T *, const layout< T > &) - helper function for heterogeneous_layout More...
+ Helper function for the class heterogeneous_layout. More...
 

Detailed Description

@@ -387,7 +387,7 @@

- + @@ -421,7 +421,7 @@

ssize_t mpl::layout< T >::byte_extent ssize_t mpl::layout< T >::byte_extent ( ) const
- + @@ -459,13 +459,13 @@

void mpl::layout< T >::byte_resize

- + - + @@ -506,7 +506,7 @@

ssize_t mpl::layout< T >::byte_lower_bound ssize_t mpl::layout< T >::byte_lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -542,7 +542,7 @@

ssize_t mpl::layout< T >::byte_upper_bound ssize_t mpl::layout< T >::byte_upper_bound ( ) const
- + @@ -576,7 +576,7 @@

ssize_t mpl::layout< T >::extent ssize_t mpl::layout< T >::extent ( ) const
- + @@ -690,13 +690,13 @@

void mpl::layout< T >::resize

- + - + @@ -720,7 +720,7 @@

Examples
layouts.cc.
+
Examples
layouts.cc.

Definition at line 314 of file layout.hpp.

@@ -777,7 +777,7 @@

ssize_t mpl::layout< T >::lower_bound ssize_t mpl::layout< T >::lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -811,7 +811,7 @@

ssize_t mpl::layout< T >::true_byte_extent ssize_t mpl::layout< T >::true_byte_extent ( ) const
- + @@ -847,7 +847,7 @@

ssize_t mpl::layout< T >::true_byte_lower_bound ssize_t mpl::layout< T >::true_byte_lower_bound ( ) const
- + @@ -883,7 +883,7 @@

ssize_t mpl::layout< T >::true_byte_upper_bound ssize_t mpl::layout< T >::true_byte_upper_bound ( ) const
- + @@ -917,7 +917,7 @@

ssize_t mpl::layout< T >::true_extent ssize_t mpl::layout< T >::true_extent ( ) const
- + @@ -953,7 +953,7 @@

ssize_t mpl::layout< T >::true_lower_bound ssize_t mpl::layout< T >::true_lower_bound ( ) const
- + @@ -989,7 +989,7 @@

ssize_t mpl::layout< T >::true_upper_bound ssize_t mpl::layout< T >::true_upper_bound ( ) const
- + @@ -1284,7 +1284,7 @@

-

helper function for heterogeneous_layout

+

Helper function for the class heterogeneous_layout.

Template Parameters

ssize_t mpl::layout< T >::upper_bound ssize_t mpl::layout< T >::upper_bound ( ) const
@@ -1298,9 +1298,9 @@

See also
make_absolute(const T *x, const layout<T> &l) function and heterogeneous_layout class
+
See also
make_absolute(const T *x, const layout<T> &l) function and heterogeneous_layout class
-

Definition at line 1641 of file layout.hpp.

+

Definition at line 1644 of file layout.hpp.

@@ -1340,7 +1340,7 @@

-

helper function for heterogeneous_layout

+

Helper function for the class heterogeneous_layout.

Template Parameters

Tdata type
@@ -1354,9 +1354,9 @@

See also
make_absolute(T *x, const layout<T> &l) function and heterogeneous_layout class
+
See also
make_absolute(T *x, const layout<T> &l) function and heterogeneous_layout class
-

Definition at line 1631 of file layout.hpp.

+

Definition at line 1634 of file layout.hpp.

@@ -1472,7 +1472,7 @@

diff --git a/docs/html/classmpl_1_1layout.js b/docs/html/classmpl_1_1layout.js index 8491bc92..2e3f256f 100644 --- a/docs/html/classmpl_1_1layout.js +++ b/docs/html/classmpl_1_1layout.js @@ -21,19 +21,6 @@ var classmpl_1_1layout = [ "true_lower_bound", "classmpl_1_1layout.html#a4b0e56adef2f212d061f971b2ecafd0a", null ], [ "true_upper_bound", "classmpl_1_1layout.html#a80713f15de3244b019294ee277c8c650", null ], [ "upper_bound", "classmpl_1_1layout.html#a2c768cf5cbbcf2dcf50a03a809df457f", null ], - [ "contiguous_layout< T >", "classmpl_1_1layout.html#a24fd43f71dcacaaa7f11f25121d457d6", null ], - [ "detail::datatype_traits< layout< T > >", "classmpl_1_1layout.html#ab05bcf7aebbf27c0d719ce8348a73a20", null ], - [ "empty_layout< T >", "classmpl_1_1layout.html#a7841d5d18df3df9d49003cdddb7e0b88", null ], - [ "heterogeneous_layout", "classmpl_1_1layout.html#a345f190da284e84ef033bec2677fdd5f", null ], - [ "hindexed_block_layout< T >", "classmpl_1_1layout.html#ab5519bf73c4607f6ec61588e7d7f0aad", null ], - [ "hindexed_layout< T >", "classmpl_1_1layout.html#a2d817091be01028eba2db9128d792b76", null ], - [ "indexed_block_layout< T >", "classmpl_1_1layout.html#aa503cf6532650fac11937626cb1a9a68", null ], - [ "indexed_layout< T >", "classmpl_1_1layout.html#aab715201eed750d6cc9831d5a98b9858", null ], - [ "iterator_layout< T >", "classmpl_1_1layout.html#aef5d3d4d7c5d1ed3908c19feac4c6be1", null ], [ "make_absolute", "classmpl_1_1layout.html#a8f6bbd313a30534934c9a4004d1d3f0f", null ], - [ "make_absolute", "classmpl_1_1layout.html#ac0dc61784adeaeaf328f741871add748", null ], - [ "null_layout< T >", "classmpl_1_1layout.html#a297cff9dc710fa1e886d36a3db3fe53b", null ], - [ "strided_vector_layout< T >", "classmpl_1_1layout.html#a12753d9d9517a88356cc3d1fc6e1c571", null ], - [ "subarray_layout< T >", "classmpl_1_1layout.html#ad86a2fab89091a3c1e2cf8d0775c9d7b", null ], - [ "vector_layout< T >", "classmpl_1_1layout.html#a477b919fe55146acf76bbe082bb4a214", null ] + [ "make_absolute", "classmpl_1_1layout.html#ac0dc61784adeaeaf328f741871add748", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1layouts-members.html b/docs/html/classmpl_1_1layouts-members.html index b6e9621d..b658b391 100644 --- a/docs/html/classmpl_1_1layouts-members.html +++ b/docs/html/classmpl_1_1layouts-members.html @@ -89,8 +89,8 @@

This is the complete list of members for mpl::layouts< T >, including all inherited members.

Tdata type
- - + + diff --git a/docs/html/classmpl_1_1layouts.html b/docs/html/classmpl_1_1layouts.html index f80dc053..a1707997 100644 --- a/docs/html/classmpl_1_1layouts.html +++ b/docs/html/classmpl_1_1layouts.html @@ -142,10 +142,10 @@
communicatormpl::layouts< T >friend
impl::topology_communicatormpl::layouts< T >friend
communicator (defined in mpl::layouts< T >)mpl::layouts< T >friend
impl::topology_communicator (defined in mpl::layouts< T >)mpl::layouts< T >friend
layouts()mpl::layouts< T >inline
layouts(size_type n)mpl::layouts< T >inlineexplicit
layouts(size_type n, const layout< T > &l)mpl::layouts< T >inlineexplicit

-
Examples
gatherv.cc, matrix_gather.cc, parallel_sort_mpl.cc, and vibrating_string_mpl.cc.
+
Examples
gatherv.cc, matrix_gather.cc, parallel_sort_mpl.cc, and vibrating_string_mpl.cc.
-

Definition at line 1661 of file layout.hpp.

+

Definition at line 1664 of file layout.hpp.

Constructor & Destructor Documentation

◆ layouts() [1/3]

@@ -174,7 +174,7 @@

Definition at line 1669 of file layout.hpp.

+

Definition at line 1672 of file layout.hpp.

@@ -212,7 +212,7 @@

Definition at line 1673 of file layout.hpp.

+

Definition at line 1676 of file layout.hpp.

@@ -261,7 +261,7 @@

Definition at line 1678 of file layout.hpp.

+

Definition at line 1681 of file layout.hpp.

@@ -288,7 +288,7 @@

-

Definition at line 1688 of file layout.hpp.

+

Definition at line 1691 of file layout.hpp.

@@ -314,7 +314,7 @@

-

Definition at line 1689 of file layout.hpp.

+

Definition at line 1692 of file layout.hpp.

@@ -326,7 +326,7 @@

diff --git a/docs/html/classmpl_1_1layouts.js b/docs/html/classmpl_1_1layouts.js index c4493302..18c74339 100644 --- a/docs/html/classmpl_1_1layouts.js +++ b/docs/html/classmpl_1_1layouts.js @@ -2,7 +2,5 @@ var classmpl_1_1layouts = [ [ "layouts", "classmpl_1_1layouts.html#af5b700e5e64692188758a0e704979a96", null ], [ "layouts", "classmpl_1_1layouts.html#a089858363f1176c0c87760fe8c3b8503", null ], - [ "layouts", "classmpl_1_1layouts.html#a3b76572f81889e2efafaecc7aeb0f764", null ], - [ "communicator", "classmpl_1_1layouts.html#a28e4940a8d711c15cada064a12ba0788", null ], - [ "impl::topology_communicator", "classmpl_1_1layouts.html#a1eb8b54fe4aac54b7d7dd0ef16a2a82e", null ] + [ "layouts", "classmpl_1_1layouts.html#a3b76572f81889e2efafaecc7aeb0f764", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1local__grid-members.html b/docs/html/classmpl_1_1local__grid-members.html index 4e6be010..e79e09ce 100644 --- a/docs/html/classmpl_1_1local__grid-members.html +++ b/docs/html/classmpl_1_1local__grid-members.html @@ -111,7 +111,7 @@ size(size_type d) constmpl::local_grid< dim, T, A >inline size_type typedefmpl::local_grid< dim, T, A > sub_layouts() constmpl::local_grid< dim, T, A >inline - swap(local_grid< dim, T, A > &other)mpl::local_grid< dim, T, A >inline + swap(local_grid< dim, T, A > &other) (defined in mpl::local_grid< dim, T, A >)mpl::local_grid< dim, T, A >inline value_type typedefmpl::local_grid< dim, T, A > vector_type typedefmpl::local_grid< dim, T, A > diff --git a/docs/html/classmpl_1_1local__grid.html b/docs/html/classmpl_1_1local__grid.html index 8eb3d7ac..0cfea34f 100644 --- a/docs/html/classmpl_1_1local__grid.html +++ b/docs/html/classmpl_1_1local__grid.html @@ -487,7 +487,7 @@

Returns
grid index

-
Examples
distributed_grid_scatter_gather.cc.
+
Examples
distributed_grid_scatter_gather.cc.

Definition at line 580 of file distributed_grid.hpp.

@@ -594,7 +594,7 @@

Returns
grid index

-
Examples
distributed_grid_scatter_gather.cc.
+
Examples
distributed_grid_scatter_gather.cc.

Definition at line 585 of file distributed_grid.hpp.

@@ -1149,7 +1149,7 @@

diff --git a/docs/html/classmpl_1_1local__grid.js b/docs/html/classmpl_1_1local__grid.js index 804295cd..cbc175cb 100644 --- a/docs/html/classmpl_1_1local__grid.js +++ b/docs/html/classmpl_1_1local__grid.js @@ -24,6 +24,5 @@ var classmpl_1_1local__grid = [ "operator()", "classmpl_1_1local__grid.html#acd9f95c3471b08a4dc3da723d6c121b3", null ], [ "operator()", "classmpl_1_1local__grid.html#adee4f6ca84465120671ec7ab6f673ebf", null ], [ "size", "classmpl_1_1local__grid.html#ac2d6883c856c1edf80dccf0586f0c0b4", null ], - [ "sub_layouts", "classmpl_1_1local__grid.html#a713ce59b43926706509b9a3a6a127a41", null ], - [ "swap", "classmpl_1_1local__grid.html#afd4c45c7fb2a713f5e0434acce617320", null ] + [ "sub_layouts", "classmpl_1_1local__grid.html#a713ce59b43926706509b9a3a6a127a41", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1local__grid_1_1dimensions-members.html b/docs/html/classmpl_1_1local__grid_1_1dimensions-members.html index 6cff0d8c..02be7922 100644 --- a/docs/html/classmpl_1_1local__grid_1_1dimensions-members.html +++ b/docs/html/classmpl_1_1local__grid_1_1dimensions-members.html @@ -89,26 +89,26 @@

This is the complete list of members for mpl::local_grid< dim, T, A >::dimensions, including all inherited members.

- - - - - - + + + + + + - - - - - - - - + + + + + + + + - + - +
begin()mpl::local_grid< dim, T, A >::dimensionsinline
begin() constmpl::local_grid< dim, T, A >::dimensionsinline
cbegin() constmpl::local_grid< dim, T, A >::dimensionsinline
cend() constmpl::local_grid< dim, T, A >::dimensionsinline
const_iterator typedefmpl::local_grid< dim, T, A >::dimensions
const_reference typedefmpl::local_grid< dim, T, A >::dimensions
begin() (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensionsinline
begin() const (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensionsinline
cbegin() const (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensionsinline
cend() const (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensionsinline
const_iterator typedef (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensions
const_reference typedef (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensions
dimensionality() constmpl::local_grid< dim, T, A >::dimensionsinline
dimensions(const size_type &size_0)mpl::local_grid< dim, T, A >::dimensionsinline
dimensions(const size_type &size_0, const size_type &size_1)mpl::local_grid< dim, T, A >::dimensionsinline
dimensions(const size_type &size_0, const size_type &size_1, const size_type &size_2)mpl::local_grid< dim, T, A >::dimensionsinline
dimensions(const size_type &size_0, const size_type &size_1, const size_type &size_2, const size_type &size_3)mpl::local_grid< dim, T, A >::dimensionsinline
end()mpl::local_grid< dim, T, A >::dimensionsinline
end() constmpl::local_grid< dim, T, A >::dimensionsinline
iterator typedefmpl::local_grid< dim, T, A >::dimensions
local_gridmpl::local_grid< dim, T, A >::dimensionsfriend
dimensions(const size_type &size_0) (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensionsinline
dimensions(const size_type &size_0, const size_type &size_1) (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensionsinline
dimensions(const size_type &size_0, const size_type &size_1, const size_type &size_2) (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensionsinline
dimensions(const size_type &size_0, const size_type &size_1, const size_type &size_2, const size_type &size_3) (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensionsinline
end() (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensionsinline
end() const (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensionsinline
iterator typedef (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensions
local_grid (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensionsfriend
operator[](size_type dimension) constmpl::local_grid< dim, T, A >::dimensionsinline
operator[](size_type dimension)mpl::local_grid< dim, T, A >::dimensionsinline
reference typedefmpl::local_grid< dim, T, A >::dimensions
reference typedef (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensions
size(size_type dimension) constmpl::local_grid< dim, T, A >::dimensionsinline
value_type typedefmpl::local_grid< dim, T, A >::dimensions
value_type typedef (defined in mpl::local_grid< dim, T, A >::dimensions)mpl::local_grid< dim, T, A >::dimensions
diff --git a/docs/html/classmpl_1_1local__grid_1_1dimensions.html b/docs/html/classmpl_1_1local__grid_1_1dimensions.html index 0b47c0f1..3ae10286 100644 --- a/docs/html/classmpl_1_1local__grid_1_1dimensions.html +++ b/docs/html/classmpl_1_1local__grid_1_1dimensions.html @@ -113,9 +113,9 @@   using const_reference = const size_type &   -using iterator = typename std::array< size_type, dim >::iterator +using iterator = typename std::array< size_type, dim >::iterator   -using const_iterator = typename std::array< std::size_t, dim >::const_iterator +using const_iterator = typename std::array< std::size_t, dim >::const_iterator   - + - + - + - + - + - + - + - +

@@ -134,23 +134,23 @@

size_type size (size_type dimension) const
 Determines the total size of a dimension. More...
 
const_reference operator[] (size_type dimension) const
const_reference operator[] (size_type dimension) const
 Determines then total size along a dimension of a dimension. More...
 
reference operator[] (size_type dimension)
reference operator[] (size_type dimension)
 Determines then total size along a dimension. More...
 
iterator begin ()
iterator begin ()
 
const_iterator begin () const
const_iterator begin () const
 
const_iterator cbegin () const
const_iterator cbegin () const
 
iterator end ()
iterator end ()
 
const_iterator end () const
const_iterator end () const
 
const_iterator cend () const
const_iterator cend () const
 
- +

@@ -173,7 +173,7 @@

using mpl::local_grid< dim, T, A >::dimensions::const_iterator = typename std::array<std::size_t, dim>::const_iteratorusing mpl::local_grid< dim, T, A >::dimensions::const_iterator = typename std::array<std::size_t, dim>::const_iterator
@@ -191,7 +191,7 @@

- using mpl::local_grid< dim, T, A >::dimensions::const_reference = const size_type & + using mpl::local_grid< dim, T, A >::dimensions::const_reference = const size_type &

@@ -209,7 +209,7 @@

- using mpl::local_grid< dim, T, A >::dimensions::iterator = typename std::array<size_type, dim>::iterator + using mpl::local_grid< dim, T, A >::dimensions::iterator = typename std::array<size_type, dim>::iterator

@@ -227,7 +227,7 @@

- using mpl::local_grid< dim, T, A >::dimensions::reference = size_type & + using mpl::local_grid< dim, T, A >::dimensions::reference = size_type &

@@ -245,7 +245,7 @@

- using mpl::local_grid< dim, T, A >::dimensions::value_type = size_type + using mpl::local_grid< dim, T, A >::dimensions::value_type = size_type

@@ -436,7 +436,7 @@

- + @@ -465,7 +465,7 @@

iterator mpl::local_grid< dim, T, A >::dimensions::begin iterator mpl::local_grid< dim, T, A >::dimensions::begin ( )
- + @@ -494,7 +494,7 @@

const_iterator mpl::local_grid< dim, T, A >::dimensions::begin const_iterator mpl::local_grid< dim, T, A >::dimensions::begin ( ) const
- + @@ -523,7 +523,7 @@

const_iterator mpl::local_grid< dim, T, A >::dimensions::cbegin const_iterator mpl::local_grid< dim, T, A >::dimensions::cbegin ( ) const
- + @@ -584,7 +584,7 @@

const_iterator mpl::local_grid< dim, T, A >::dimensions::cend const_iterator mpl::local_grid< dim, T, A >::dimensions::cend ( ) const
- + @@ -613,7 +613,7 @@

iterator mpl::local_grid< dim, T, A >::dimensions::end iterator mpl::local_grid< dim, T, A >::dimensions::end ( )
- + @@ -642,7 +642,7 @@

const_iterator mpl::local_grid< dim, T, A >::dimensions::end const_iterator mpl::local_grid< dim, T, A >::dimensions::end ( ) const
- + @@ -681,7 +681,7 @@

reference mpl::local_grid< dim, T, A >::dimensions::operator[] reference mpl::local_grid< dim, T, A >::dimensions::operator[] ( size_type  dimension)
- + @@ -782,7 +782,7 @@

diff --git a/docs/html/classmpl_1_1local__grid_1_1dimensions.js b/docs/html/classmpl_1_1local__grid_1_1dimensions.js index fa5696fb..a7efef7b 100644 --- a/docs/html/classmpl_1_1local__grid_1_1dimensions.js +++ b/docs/html/classmpl_1_1local__grid_1_1dimensions.js @@ -1,23 +1,7 @@ var classmpl_1_1local__grid_1_1dimensions = [ - [ "const_iterator", "classmpl_1_1local__grid_1_1dimensions.html#a79b159ea66770b5581b00330a95a2227", null ], - [ "const_reference", "classmpl_1_1local__grid_1_1dimensions.html#a65540a03ba7eba65ad33b461f2737d95", null ], - [ "iterator", "classmpl_1_1local__grid_1_1dimensions.html#a43e2c08d9b3a82586cf93b17fd851331", null ], - [ "reference", "classmpl_1_1local__grid_1_1dimensions.html#aada2962f222ad01378a706bf18931e55", null ], - [ "value_type", "classmpl_1_1local__grid_1_1dimensions.html#a8dde7cc3e0f11533dcf221daed6368fe", null ], - [ "dimensions", "classmpl_1_1local__grid_1_1dimensions.html#ae59e515d543aeeeac98bccb23a102e83", null ], - [ "dimensions", "classmpl_1_1local__grid_1_1dimensions.html#a1a5fcff7b7e95203667e647731fcf2f1", null ], - [ "dimensions", "classmpl_1_1local__grid_1_1dimensions.html#a5623191cfc621bde04d8b1136c043565", null ], - [ "dimensions", "classmpl_1_1local__grid_1_1dimensions.html#ab8b1729c7b9ca64080b7860dcad4867d", null ], - [ "begin", "classmpl_1_1local__grid_1_1dimensions.html#a9fe001a9733e41fa7d1c7eecc4597bdc", null ], - [ "begin", "classmpl_1_1local__grid_1_1dimensions.html#aad9dda9392cfb376908c8bfcc1f4a46a", null ], - [ "cbegin", "classmpl_1_1local__grid_1_1dimensions.html#a1f28ef835386df911b7db5e044b17858", null ], - [ "cend", "classmpl_1_1local__grid_1_1dimensions.html#a8e2b64a5ee4a8e5befe471fabd764a6e", null ], [ "dimensionality", "classmpl_1_1local__grid_1_1dimensions.html#a767a2725a0c272861e790d73820a9ddd", null ], - [ "end", "classmpl_1_1local__grid_1_1dimensions.html#a1cd6d5ec15683f71d3b32eb4118b7ce5", null ], - [ "end", "classmpl_1_1local__grid_1_1dimensions.html#a3d111525dd74a250c6f62a23f3683319", null ], [ "operator[]", "classmpl_1_1local__grid_1_1dimensions.html#aa1cdf19eec6da42b29ce7fd4a3025364", null ], [ "operator[]", "classmpl_1_1local__grid_1_1dimensions.html#aa399ae6edba94e1a9c1ebe91d9b2d11e", null ], - [ "size", "classmpl_1_1local__grid_1_1dimensions.html#a0134108e71b799e3c39e966f149937d5", null ], - [ "local_grid", "classmpl_1_1local__grid_1_1dimensions.html#ad7e845ddcd260c1f9386866d30c09788", null ] + [ "size", "classmpl_1_1local__grid_1_1dimensions.html#a0134108e71b799e3c39e966f149937d5", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1null__layout-members.html b/docs/html/classmpl_1_1null__layout-members.html index 5bd14c54..ec8fcb7c 100644 --- a/docs/html/classmpl_1_1null__layout-members.html +++ b/docs/html/classmpl_1_1null__layout-members.html @@ -100,7 +100,7 @@

- + diff --git a/docs/html/classmpl_1_1null__layout.html b/docs/html/classmpl_1_1null__layout.html index a6407984..6c225372 100644 --- a/docs/html/classmpl_1_1null__layout.html +++ b/docs/html/classmpl_1_1null__layout.html @@ -126,46 +126,46 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -292,7 +292,7 @@

const_reference mpl::local_grid< dim, T, A >::dimensions::operator[] const_reference mpl::local_grid< dim, T, A >::dimensions::operator[] ( size_type  dimension)
lower_bound() constmpl::layout< T >inline
null_layout() noexceptmpl::null_layout< T >inline
null_layout(const null_layout &l) noexceptmpl::null_layout< T >inline
null_layout(null_layout &&l) noexceptmpl::null_layout< T >inline
null_layout(null_layout &&l) noexcept (defined in mpl::null_layout< T >)mpl::null_layout< T >inline
operator=(const layout &l)mpl::layout< T >inline
operator=(layout &&l) noexceptmpl::layout< T >inline
resize(ssize_t lb, ssize_t extent)mpl::layout< T >inline
void swap (null_layout< T > &other)
 swap two instances of null_layout More...
 
ssize_t byte_extent () const
ssize_t byte_extent () const
 Get the byte extent of the layout. More...
 
ssize_t byte_lower_bound () const
ssize_t byte_lower_bound () const
 Get the byte lower bound of the layout. More...
 
ssize_t byte_upper_bound () const
ssize_t byte_upper_bound () const
 Get the byte upper bound of the layout. More...
 
ssize_t extent () const
ssize_t extent () const
 Get the extent of the layout. More...
 
ssize_t lower_bound () const
ssize_t lower_bound () const
 Get the lower bound of the layout. More...
 
ssize_t upper_bound () const
ssize_t upper_bound () const
 Get the upper bound of the layout. More...
 
ssize_t true_byte_extent () const
ssize_t true_byte_extent () const
 Get the true byte extent of the layout. More...
 
ssize_t true_byte_lower_bound () const
ssize_t true_byte_lower_bound () const
 Get the true byte lower bound of the layout. More...
 
ssize_t true_byte_upper_bound () const
ssize_t true_byte_upper_bound () const
 Get the true byte upper bound of the layout. More...
 
ssize_t true_extent () const
ssize_t true_extent () const
 Get the true extent of the layout. More...
 
ssize_t true_lower_bound () const
ssize_t true_lower_bound () const
 Get the true lower bound of the layout. More...
 
ssize_t true_upper_bound () const
ssize_t true_upper_bound () const
 Get the true upper bound of the layout. More...
 
void byte_resize (ssize_t lb, ssize_t extent)
void byte_resize (ssize_t lb, ssize_t extent)
 Resize the layout. More...
 
void resize (ssize_t lb, ssize_t extent)
void resize (ssize_t lb, ssize_t extent)
 Resize the layout. More...
 
void swap (layout &l)
- + @@ -326,7 +326,7 @@

ssize_t mpl::layout< T >::byte_extent ssize_t mpl::layout< T >::byte_extent ( ) const
- + @@ -364,13 +364,13 @@

void mpl::layout< T >::byte_resize

- + - + @@ -411,7 +411,7 @@

ssize_t mpl::layout< T >::byte_lower_bound ssize_t mpl::layout< T >::byte_lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -447,7 +447,7 @@

ssize_t mpl::layout< T >::byte_upper_bound ssize_t mpl::layout< T >::byte_upper_bound ( ) const
- + @@ -481,7 +481,7 @@

ssize_t mpl::layout< T >::extent ssize_t mpl::layout< T >::extent ( ) const
- + @@ -519,13 +519,13 @@

void mpl::layout< T >::resize

- + - + @@ -549,7 +549,7 @@

Examples
layouts.cc.
+
Examples
layouts.cc.

Definition at line 314 of file layout.hpp.

@@ -639,7 +639,7 @@

ssize_t mpl::layout< T >::lower_bound ssize_t mpl::layout< T >::lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -673,7 +673,7 @@

ssize_t mpl::layout< T >::true_byte_extent ssize_t mpl::layout< T >::true_byte_extent ( ) const
- + @@ -709,7 +709,7 @@

ssize_t mpl::layout< T >::true_byte_lower_bound ssize_t mpl::layout< T >::true_byte_lower_bound ( ) const
- + @@ -745,7 +745,7 @@

ssize_t mpl::layout< T >::true_byte_upper_bound ssize_t mpl::layout< T >::true_byte_upper_bound ( ) const
- + @@ -779,7 +779,7 @@

ssize_t mpl::layout< T >::true_extent ssize_t mpl::layout< T >::true_extent ( ) const
- + @@ -815,7 +815,7 @@

ssize_t mpl::layout< T >::true_lower_bound ssize_t mpl::layout< T >::true_lower_bound ( ) const
- + @@ -851,7 +851,7 @@

ssize_t mpl::layout< T >::true_upper_bound ssize_t mpl::layout< T >::true_upper_bound ( ) const
- + @@ -883,7 +883,7 @@

diff --git a/docs/html/classmpl_1_1null__layout.js b/docs/html/classmpl_1_1null__layout.js index 0aa67eb4..d5e7c244 100644 --- a/docs/html/classmpl_1_1null__layout.js +++ b/docs/html/classmpl_1_1null__layout.js @@ -2,7 +2,6 @@ var classmpl_1_1null__layout = [ [ "null_layout", "classmpl_1_1null__layout.html#acac7c25a8345ee4860f372efb0528159", null ], [ "null_layout", "classmpl_1_1null__layout.html#a1e3a1fc89a2e4cc97313b09613a19fbb", null ], - [ "null_layout", "classmpl_1_1null__layout.html#a870ae11bff01c96d3a71028826c8d477", null ], [ "byte_extent", "classmpl_1_1null__layout.html#a808408eaf18cfd04f8fc0e43ad8abece", null ], [ "byte_lower_bound", "classmpl_1_1null__layout.html#aa391a934f031693cf985dcd1c675d8e4", null ], [ "byte_resize", "classmpl_1_1null__layout.html#a05cc59346d0b585b92a266ac7e4512eb", null ], diff --git a/docs/html/classmpl_1_1prequest-members.html b/docs/html/classmpl_1_1prequest-members.html index 246a9fd7..75e823e8 100644 --- a/docs/html/classmpl_1_1prequest-members.html +++ b/docs/html/classmpl_1_1prequest-members.html @@ -89,25 +89,13 @@

This is the complete list of members for mpl::prequest, including all inherited members.

ssize_t mpl::layout< T >::upper_bound ssize_t mpl::layout< T >::upper_bound ( ) const
- - - - - - - - - - - - - - - - - - - + + + + + + +
cancel()mpl::impl::request< impl::prequest >inline
get_status()mpl::impl::request< impl::prequest >inline
impl::request_pool< prequest >mpl::prequestfriend
operator=(const prequest &)=deletempl::prequest
operator=(prequest &&other) noexceptmpl::prequestinline
request< impl::prequest >::operator=(const request &)=deletempl::impl::request< impl::prequest >
request< impl::prequest >::operator=(request &&other) noexceptmpl::impl::request< impl::prequest >inline
prequest(const impl::prequest &r)mpl::prequestinline
prequest(const prequest &)=deletempl::prequest
prequest(prequest &&r) noexceptmpl::prequestinline
request()=deletempl::impl::request< impl::prequest >
request(const request &)=deletempl::impl::request< impl::prequest >
request(const irequest &req)mpl::impl::request< impl::prequest >inlineexplicit
request(const prequest &req)mpl::impl::request< impl::prequest >inlineexplicit
request(request &&other) noexceptmpl::impl::request< impl::prequest >inline
start()mpl::prequestinline
test()mpl::impl::request< impl::prequest >inline
wait()mpl::impl::request< impl::prequest >inline
~request()mpl::impl::request< impl::prequest >inline
impl::request_pool< prequest > (defined in mpl::prequest)mpl::prequestfriend
operator=(const prequest &)=delete (defined in mpl::prequest)mpl::prequest
operator=(prequest &&other) noexcept (defined in mpl::prequest)mpl::prequestinline
prequest(const impl::prequest &r) (defined in mpl::prequest)mpl::prequestinline
prequest(const prequest &)=delete (defined in mpl::prequest)mpl::prequest
prequest(prequest &&r) noexcept (defined in mpl::prequest)mpl::prequestinline
start() (defined in mpl::prequest)mpl::prequestinline

diff --git a/docs/html/classmpl_1_1prequest.html b/docs/html/classmpl_1_1prequest.html index ec7b7c2a..d5e5c058 100644 --- a/docs/html/classmpl_1_1prequest.html +++ b/docs/html/classmpl_1_1prequest.html @@ -118,11 +118,13 @@ Public Member Functions

 prequest (const impl::prequest &r)   - prequest (const prequest &)=delete +prequest (const prequest &)=delete    prequest (prequest &&r) noexcept   -void operator= (const prequest &)=delete + +void operator= (const prequest &)=delete   prequestoperator= (prequest &&other) noexcept   @@ -148,7 +150,7 @@

Definition at line 271 of file request.hpp.

Constructor & Destructor Documentation

-

◆ prequest() [1/3]

+

◆ prequest() [1/2]

@@ -173,36 +175,10 @@

Definition at line 276 of file request.hpp.

-

-
- -

◆ prequest() [2/3]

- -
-
- - - - - -
- - - - - - - - -
mpl::prequest::prequest (const prequest)
-
-delete
-
-
-

◆ prequest() [3/3]

+

◆ prequest() [2/2]

@@ -282,36 +258,10 @@

Definition at line 98 of file request.hpp.

-

-
- -

◆ operator=() [1/2]

- -
-
- - - - - -
- - - - - - - - -
void mpl::prequest::operator= (const prequest)
-
-delete
-
-
-

◆ operator=() [2/2]

+

◆ operator=()

@@ -452,7 +402,7 @@

diff --git a/docs/html/classmpl_1_1prequest.js b/docs/html/classmpl_1_1prequest.js deleted file mode 100644 index 83189798..00000000 --- a/docs/html/classmpl_1_1prequest.js +++ /dev/null @@ -1,14 +0,0 @@ -var classmpl_1_1prequest = -[ - [ "prequest", "classmpl_1_1prequest.html#a458628a7d368a6ac066e1c0d72a1ae1a", null ], - [ "prequest", "classmpl_1_1prequest.html#a8b93ba9394c9577c518b467a77c6c1bb", null ], - [ "prequest", "classmpl_1_1prequest.html#a3fb481bf82af15bc42066ee8691eb6a4", null ], - [ "cancel", "classmpl_1_1prequest.html#ad2ddcfa49b35df4120235692fdebdef2", null ], - [ "get_status", "classmpl_1_1prequest.html#a8ed5bdb05a4a5caf7dc2c08832b6fc73", null ], - [ "operator=", "classmpl_1_1prequest.html#ac73e55bc09c70db84fd4a32f9aa986d5", null ], - [ "operator=", "classmpl_1_1prequest.html#a9b969f7e70507186466267e3fb029e09", null ], - [ "start", "classmpl_1_1prequest.html#a98397dc9bd862965e040491483082d65", null ], - [ "test", "classmpl_1_1prequest.html#a9731fa2fb0157e792af4d9e5ade4103b", null ], - [ "wait", "classmpl_1_1prequest.html#aedca3ad316f078b0190b9396197a7605", null ], - [ "impl::request_pool< prequest >", "classmpl_1_1prequest.html#a8c58374ad21d57465ce6914abe69fdf8", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1prequest__pool-members.html b/docs/html/classmpl_1_1prequest__pool-members.html index ebc68f91..6c5bc079 100644 --- a/docs/html/classmpl_1_1prequest__pool-members.html +++ b/docs/html/classmpl_1_1prequest__pool-members.html @@ -89,30 +89,11 @@

This is the complete list of members for mpl::prequest_pool, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - + + + + +
cancel(size_type i)mpl::impl::request_pool< prequest >inline
cancelall()mpl::impl::request_pool< prequest >inline
empty() constmpl::impl::request_pool< prequest >inline
get_status(size_type i) constmpl::impl::request_pool< prequest >inline
operator=(const prequest_pool &)=deletempl::prequest_pool
operator=(prequest_pool &&other) noexceptmpl::prequest_poolinline
request_pool< prequest >::operator=(const request_pool &)=deletempl::impl::request_pool< prequest >
request_pool< prequest >::operator=(request_pool &&other) noexceptmpl::impl::request_pool< prequest >inline
prequest_pool()=defaultmpl::prequest_pool
prequest_pool(prequest_pool &&r) noexceptmpl::prequest_poolinline
push(prequest &&other)mpl::impl::request_pool< prequest >inline
request_pool()=defaultmpl::impl::request_pool< prequest >
request_pool(const request_pool &)=deletempl::impl::request_pool< prequest >
request_pool(request_pool &&other) noexceptmpl::impl::request_pool< prequest >inline
size() constmpl::impl::request_pool< prequest >inline
size_type typedefmpl::impl::request_pool< prequest >
startall()mpl::prequest_poolinline
testall()mpl::impl::request_pool< prequest >inline
testany()mpl::impl::request_pool< prequest >inline
testsome(I iter)mpl::impl::request_pool< prequest >inline
waitall()mpl::impl::request_pool< prequest >inline
waitany()mpl::impl::request_pool< prequest >inline
waitsome(I iter)mpl::impl::request_pool< prequest >inline
~request_pool()mpl::impl::request_pool< prequest >inline
operator=(const prequest_pool &)=delete (defined in mpl::prequest_pool)mpl::prequest_pool
operator=(prequest_pool &&other) noexcept (defined in mpl::prequest_pool)mpl::prequest_poolinline
prequest_pool()=default (defined in mpl::prequest_pool)mpl::prequest_pool
prequest_pool(prequest_pool &&r) noexcept (defined in mpl::prequest_pool)mpl::prequest_poolinline
startall() (defined in mpl::prequest_pool)mpl::prequest_poolinline
diff --git a/docs/html/classmpl_1_1prequest__pool.html b/docs/html/classmpl_1_1prequest__pool.html index a56df8b3..6038fe7d 100644 --- a/docs/html/classmpl_1_1prequest__pool.html +++ b/docs/html/classmpl_1_1prequest__pool.html @@ -116,14 +116,13 @@ - +

Public Types

using size_type = std::vector< MPI_Request >::size_type
using size_type = std::vector< MPI_Request >::size_type
 
- - - + @@ -131,21 +130,21 @@ - + - + - + - + - + @@ -171,7 +170,7 @@

Public Member Functions

 prequest_pool ()=default
 
void operator= (const prequest_pool &)=delete
+void operator= (const prequest_pool &)=delete
 
prequest_pooloperator= (prequest_pool &&other) noexcept
 
 
void startall ()
 
size_type size () const
size_type size () const
 
bool empty () const
 
const status_tget_status (size_type i) const
const status_tget_status (size_type i) const
 
void cancel (size_type i)
void cancel (size_type i)
 
void cancelall ()
 
void push (prequest &&other)
 
std::pair< bool, size_typewaitany ()
std::pair< bool, size_type > waitany ()
 
std::pair< bool, size_typetestany ()
std::pair< bool, size_type > testany ()
 
void waitall ()
 
- +
using mpl::impl::request_pool< prequest >::size_type = std::vector<MPI_Request>::size_typeusing mpl::impl::request_pool< prequest >::size_type = std::vector<MPI_Request>::size_type
@@ -186,33 +185,8 @@

Constructor & Destructor Documentation

- -

◆ prequest_pool() [1/2]

- -
-
- - - - - -
- - - - - - - -
mpl::prequest_pool::prequest_pool ()
-
-default
-
- -
-
-

◆ prequest_pool() [2/2]

+

◆ prequest_pool()

@@ -252,7 +226,7 @@

void mpl::impl::request_pool< prequest >::cancel ( - size_type  + size_type  i) @@ -334,7 +308,7 @@

const status_t & mpl::impl::request_pool< prequest >::get_status ( - size_type  + size_type  i) const @@ -348,36 +322,10 @@

Definition at line 149 of file request.hpp.

-

-
- -

◆ operator=() [1/2]

- -
-
- - - - - -
- - - - - - - - -
void mpl::prequest_pool::operator= (const prequest_pool)
-
-delete
-
-
-

◆ operator=() [2/2]

+

◆ operator=()

@@ -442,7 +390,7 @@

- + @@ -523,7 +471,7 @@

size_type mpl::impl::request_pool< prequest >::size size_type mpl::impl::request_pool< prequest >::size ( ) const
- + @@ -605,7 +553,7 @@

std::pair< bool, size_type > mpl::impl::request_pool< prequest >::testany std::pair< bool, size_type > mpl::impl::request_pool< prequest >::testany ( )
- + @@ -658,7 +606,7 @@

diff --git a/docs/html/classmpl_1_1prequest__pool.js b/docs/html/classmpl_1_1prequest__pool.js deleted file mode 100644 index f361dbbe..00000000 --- a/docs/html/classmpl_1_1prequest__pool.js +++ /dev/null @@ -1,21 +0,0 @@ -var classmpl_1_1prequest__pool = -[ - [ "size_type", "classmpl_1_1prequest__pool.html#a5b3f8f3986dc6bc5852939446531c767", null ], - [ "prequest_pool", "classmpl_1_1prequest__pool.html#a3a5407de7b96fd18fac2bfed66ce2340", null ], - [ "prequest_pool", "classmpl_1_1prequest__pool.html#a5488a23548717d84d691fd0e35df7eed", null ], - [ "cancel", "classmpl_1_1prequest__pool.html#a09521b62f5b53546c854e89644245b70", null ], - [ "cancelall", "classmpl_1_1prequest__pool.html#a4191612db45d53cab3a294f3ac2f9018", null ], - [ "empty", "classmpl_1_1prequest__pool.html#acdd1055b70611cd8796d0c22ccfb2397", null ], - [ "get_status", "classmpl_1_1prequest__pool.html#a7761f370d4bbef127a41fc1f4b0f39f9", null ], - [ "operator=", "classmpl_1_1prequest__pool.html#a4335e6cb787ded0e1ec4616460107eb0", null ], - [ "operator=", "classmpl_1_1prequest__pool.html#a837cce36fab3191a0239a1aab47dc752", null ], - [ "push", "classmpl_1_1prequest__pool.html#a9b2ce42dc5ec15f8875673e07f6d77bf", null ], - [ "size", "classmpl_1_1prequest__pool.html#a40b2e7f51521f6cbf1ba99c26547dade", null ], - [ "startall", "classmpl_1_1prequest__pool.html#a819ee42db512114958c31b95864e5cdd", null ], - [ "testall", "classmpl_1_1prequest__pool.html#a5ebba7b0471ba84cf591abace463072f", null ], - [ "testany", "classmpl_1_1prequest__pool.html#a0119c4bd3e340044868b9c26bae2a6f9", null ], - [ "testsome", "classmpl_1_1prequest__pool.html#a0adfe04dd4bf29535b6687562fb88989", null ], - [ "waitall", "classmpl_1_1prequest__pool.html#a1e864f5b3e62bb28db94bec090235401", null ], - [ "waitany", "classmpl_1_1prequest__pool.html#a1acdccf04f454806bac255279ac53974", null ], - [ "waitsome", "classmpl_1_1prequest__pool.html#ab076cdb8feb7b1270497af73430e4fde", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1ranks.html b/docs/html/classmpl_1_1ranks.html index bec6a289..64db8d50 100644 --- a/docs/html/classmpl_1_1ranks.html +++ b/docs/html/classmpl_1_1ranks.html @@ -351,7 +351,7 @@

diff --git a/docs/html/classmpl_1_1status__t-members.html b/docs/html/classmpl_1_1status__t-members.html index 2b89b849..a264e8a6 100644 --- a/docs/html/classmpl_1_1status__t-members.html +++ b/docs/html/classmpl_1_1status__t-members.html @@ -89,12 +89,12 @@

This is the complete list of members for mpl::status_t, including all inherited members.

std::pair< bool, size_type > mpl::impl::request_pool< prequest >::waitany std::pair< bool, size_type > mpl::impl::request_pool< prequest >::waitany ( )
- + - - + + diff --git a/docs/html/classmpl_1_1status__t.html b/docs/html/classmpl_1_1status__t.html index 75c53150..b7f661a8 100644 --- a/docs/html/classmpl_1_1status__t.html +++ b/docs/html/classmpl_1_1status__t.html @@ -148,7 +148,7 @@
communicatormpl::status_tfriend
communicator (defined in mpl::status_t)mpl::status_tfriend
error() constmpl::status_tinline
get_count() constmpl::status_tinline
get_count(const layout< T > &l) constmpl::status_tinline
impl::requestmpl::status_tfriend
impl::request_poolmpl::status_tfriend
impl::request (defined in mpl::status_t)mpl::status_tfriend
impl::request_pool (defined in mpl::status_t)mpl::status_tfriend
is_canceled() constmpl::status_tinline
is_cancelled() constmpl::status_tinline
source() constmpl::status_tinline

Detailed Description

Class that represents the status of a received message.

-
Examples
probe.cc, and stl_container.cc.
+
Examples
probe.cc, and stl_container.cc.

Definition at line 20 of file status.hpp.

@@ -175,7 +175,7 @@

-

default constructor initializes source and tag with wildcards given by any_source and tag_t::any and no error

+

default constructor initializes source and tag with wildcards given by any_source and tag_t::any and no error

Definition at line 62 of file status.hpp.

@@ -474,7 +474,7 @@

diff --git a/docs/html/classmpl_1_1status__t.js b/docs/html/classmpl_1_1status__t.js index b3bd8a47..380c25b1 100644 --- a/docs/html/classmpl_1_1status__t.js +++ b/docs/html/classmpl_1_1status__t.js @@ -7,8 +7,5 @@ var classmpl_1_1status__t = [ "is_canceled", "classmpl_1_1status__t.html#a10d1875d30534ff94e21d98aeed02e11", null ], [ "is_cancelled", "classmpl_1_1status__t.html#a934d03b57e03aa23841cc44f0b73b7c1", null ], [ "source", "classmpl_1_1status__t.html#a9d17d0e813a4ff51a178c96ffb3455f0", null ], - [ "tag", "classmpl_1_1status__t.html#a76b56d148b261f474f473d936c1fd878", null ], - [ "communicator", "classmpl_1_1status__t.html#a28e4940a8d711c15cada064a12ba0788", null ], - [ "impl::request", "classmpl_1_1status__t.html#a435a6a142566db821f6585961da52ed3", null ], - [ "impl::request_pool", "classmpl_1_1status__t.html#ab9c9880cf76979a056acfe2cb6bf6772", null ] + [ "tag", "classmpl_1_1status__t.html#a76b56d148b261f474f473d936c1fd878", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1strided__vector__layout.html b/docs/html/classmpl_1_1strided__vector__layout.html index fa35b44d..111356f0 100644 --- a/docs/html/classmpl_1_1strided__vector__layout.html +++ b/docs/html/classmpl_1_1strided__vector__layout.html @@ -139,46 +139,46 @@ void swap (strided_vector_layout< T > &other)  exchanges two contiguous layouts More...
  -ssize_t byte_extent () const +ssize_t byte_extent () const  Get the byte extent of the layout. More...
  -ssize_t byte_lower_bound () const +ssize_t byte_lower_bound () const  Get the byte lower bound of the layout. More...
  -ssize_t byte_upper_bound () const +ssize_t byte_upper_bound () const  Get the byte upper bound of the layout. More...
  -ssize_t extent () const +ssize_t extent () const  Get the extent of the layout. More...
  -ssize_t lower_bound () const +ssize_t lower_bound () const  Get the lower bound of the layout. More...
  -ssize_t upper_bound () const +ssize_t upper_bound () const  Get the upper bound of the layout. More...
  -ssize_t true_byte_extent () const +ssize_t true_byte_extent () const  Get the true byte extent of the layout. More...
  -ssize_t true_byte_lower_bound () const +ssize_t true_byte_lower_bound () const  Get the true byte lower bound of the layout. More...
  -ssize_t true_byte_upper_bound () const +ssize_t true_byte_upper_bound () const  Get the true byte upper bound of the layout. More...
  -ssize_t true_extent () const +ssize_t true_extent () const  Get the true extent of the layout. More...
  -ssize_t true_lower_bound () const +ssize_t true_lower_bound () const  Get the true lower bound of the layout. More...
  -ssize_t true_upper_bound () const +ssize_t true_upper_bound () const  Get the true upper bound of the layout. More...
  -void byte_resize (ssize_t lb, ssize_t extent) +void byte_resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  -void resize (ssize_t lb, ssize_t extent) +void resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  void swap (layout &l) @@ -195,7 +195,7 @@

See also
inherits all member methods of layout
-
Examples
layouts.cc.
+
Examples
layouts.cc.

Definition at line 647 of file layout.hpp.

@@ -439,7 +439,7 @@

- + @@ -473,7 +473,7 @@

ssize_t mpl::layout< T >::byte_extent ssize_t mpl::layout< T >::byte_extent ( ) const
- + @@ -511,13 +511,13 @@

void mpl::layout< T >::byte_resize

- + - + @@ -558,7 +558,7 @@

ssize_t mpl::layout< T >::byte_lower_bound ssize_t mpl::layout< T >::byte_lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -594,7 +594,7 @@

ssize_t mpl::layout< T >::byte_upper_bound ssize_t mpl::layout< T >::byte_upper_bound ( ) const
- + @@ -628,7 +628,7 @@

ssize_t mpl::layout< T >::extent ssize_t mpl::layout< T >::extent ( ) const
- + @@ -740,13 +740,13 @@

void mpl::layout< T >::resize

- + - + @@ -770,7 +770,7 @@

Examples
layouts.cc.
+
Examples
layouts.cc.

Definition at line 314 of file layout.hpp.

@@ -865,7 +865,7 @@

ssize_t mpl::layout< T >::lower_bound ssize_t mpl::layout< T >::lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -899,7 +899,7 @@

ssize_t mpl::layout< T >::true_byte_extent ssize_t mpl::layout< T >::true_byte_extent ( ) const
- + @@ -935,7 +935,7 @@

ssize_t mpl::layout< T >::true_byte_lower_bound ssize_t mpl::layout< T >::true_byte_lower_bound ( ) const
- + @@ -971,7 +971,7 @@

ssize_t mpl::layout< T >::true_byte_upper_bound ssize_t mpl::layout< T >::true_byte_upper_bound ( ) const
- + @@ -1005,7 +1005,7 @@

ssize_t mpl::layout< T >::true_extent ssize_t mpl::layout< T >::true_extent ( ) const
- + @@ -1041,7 +1041,7 @@

ssize_t mpl::layout< T >::true_lower_bound ssize_t mpl::layout< T >::true_lower_bound ( ) const
- + @@ -1077,7 +1077,7 @@

ssize_t mpl::layout< T >::true_upper_bound ssize_t mpl::layout< T >::true_upper_bound ( ) const
- + @@ -1109,7 +1109,7 @@

diff --git a/docs/html/classmpl_1_1struct__builder-members.html b/docs/html/classmpl_1_1struct__builder-members.html index 3f647dfb..9e697529 100644 --- a/docs/html/classmpl_1_1struct__builder-members.html +++ b/docs/html/classmpl_1_1struct__builder-members.html @@ -89,7 +89,7 @@

This is the complete list of members for mpl::struct_builder< T >, including all inherited members.

ssize_t mpl::layout< T >::upper_bound ssize_t mpl::layout< T >::upper_bound ( ) const
- +
data_type_category typedefmpl::struct_builder< T >
data_type_category typedef (defined in mpl::struct_builder< T >)mpl::struct_builder< T >
diff --git a/docs/html/classmpl_1_1struct__builder.html b/docs/html/classmpl_1_1struct__builder.html index 87ce5486..dc6ede97 100644 --- a/docs/html/classmpl_1_1struct__builder.html +++ b/docs/html/classmpl_1_1struct__builder.html @@ -131,7 +131,7 @@

- using mpl::struct_builder< T >::data_type_category = detail::unsupported_type + using mpl::struct_builder< T >::data_type_category = detail::unsupported_type
@@ -148,7 +148,7 @@

diff --git a/docs/html/classmpl_1_1struct__builder.js b/docs/html/classmpl_1_1struct__builder.js deleted file mode 100644 index 7806727c..00000000 --- a/docs/html/classmpl_1_1struct__builder.js +++ /dev/null @@ -1,4 +0,0 @@ -var classmpl_1_1struct__builder = -[ - [ "data_type_category", "classmpl_1_1struct__builder.html#a7a251c50cab3d224a1a8268530db4d6d", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4-members.html b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4-members.html index 15d42675..c0ef025c 100644 --- a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4-members.html +++ b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4-members.html @@ -89,9 +89,7 @@

This is the complete list of members for mpl::struct_builder< T[N0][N1][N2][N3]>, including all inherited members.

- - - +
base_struct_builder(const base_struct_builder &)=deletempl::base_struct_builder< T[N0][N1][N2][N3]>
operator=(const base_struct_builder &)=deletempl::base_struct_builder< T[N0][N1][N2][N3]>
struct_builder()mpl::struct_builder< T[N0][N1][N2][N3]>inline
struct_builder() (defined in mpl::struct_builder< T[N0][N1][N2][N3]>)mpl::struct_builder< T[N0][N1][N2][N3]>inline
diff --git a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html index 1c4408e4..22a14b3a 100644 --- a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html +++ b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html @@ -84,7 +84,6 @@
mpl::struct_builder< T[N0][N1][N2][N3]> Class Template Reference
@@ -112,12 +111,6 @@ - - - - -

-Public Member Functions

 struct_builder ()
 

Detailed Description

template<typename T, std::size_t N0, std::size_t N1, std::size_t N2, std::size_t N3>
class mpl::struct_builder< T[N0][N1][N2][N3]>

Specialization of struct_builder for fixed-size four-dimensional C-style arrays.

@@ -172,7 +165,7 @@

diff --git a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.js b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.js deleted file mode 100644 index bddfb50a..00000000 --- a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4 = -[ - [ "struct_builder", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html#a994090fb8f342df0546baa10fe298ee3", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4-members.html b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4-members.html index 351ef934..bc621867 100644 --- a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4-members.html +++ b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4-members.html @@ -89,9 +89,7 @@

This is the complete list of members for mpl::struct_builder< T[N0][N1][N2]>, including all inherited members.

- - - +
base_struct_builder(const base_struct_builder &)=deletempl::base_struct_builder< T[N0][N1][N2]>
operator=(const base_struct_builder &)=deletempl::base_struct_builder< T[N0][N1][N2]>
struct_builder()mpl::struct_builder< T[N0][N1][N2]>inline
struct_builder() (defined in mpl::struct_builder< T[N0][N1][N2]>)mpl::struct_builder< T[N0][N1][N2]>inline
diff --git a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html index 1dc40d0b..867a6345 100644 --- a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html +++ b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html @@ -84,7 +84,6 @@
mpl::struct_builder< T[N0][N1][N2]> Class Template Reference
@@ -112,12 +111,6 @@ - - - - -

-Public Member Functions

 struct_builder ()
 

Detailed Description

template<typename T, std::size_t N0, std::size_t N1, std::size_t N2>
class mpl::struct_builder< T[N0][N1][N2]>

Specialization of struct_builder for fixed-size three-dimensional C-style arrays.

@@ -171,7 +164,7 @@

diff --git a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.js b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.js deleted file mode 100644 index 71bb7dc4..00000000 --- a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4 = -[ - [ "struct_builder", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html#af2c1e87c7b483609493dc6ab333f1d02", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4-members.html b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4-members.html index 8c135397..266c85d2 100644 --- a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4-members.html +++ b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4-members.html @@ -89,9 +89,7 @@

This is the complete list of members for mpl::struct_builder< T[N0][N1]>, including all inherited members.

- - - +
base_struct_builder(const base_struct_builder &)=deletempl::base_struct_builder< T[N0][N1]>
operator=(const base_struct_builder &)=deletempl::base_struct_builder< T[N0][N1]>
struct_builder()mpl::struct_builder< T[N0][N1]>inline
struct_builder() (defined in mpl::struct_builder< T[N0][N1]>)mpl::struct_builder< T[N0][N1]>inline
diff --git a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html index 9c6166cd..27d09043 100644 --- a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html +++ b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html @@ -84,7 +84,6 @@
mpl::struct_builder< T[N0][N1]> Class Template Reference
@@ -112,12 +111,6 @@ - - - - -

-Public Member Functions

 struct_builder ()
 

Detailed Description

template<typename T, std::size_t N0, std::size_t N1>
class mpl::struct_builder< T[N0][N1]>

Specialization of struct_builder for fixed-size two-dimensional C-style arrays.

@@ -170,7 +163,7 @@

diff --git a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.js b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.js deleted file mode 100644 index a69f4052..00000000 --- a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4 = -[ - [ "struct_builder", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html#aaf371600324b88c0b0e1fcd85f47c89a", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4-members.html b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4-members.html index 15a1209b..660d9278 100644 --- a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4-members.html +++ b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4-members.html @@ -89,9 +89,7 @@

This is the complete list of members for mpl::struct_builder< T[N0]>, including all inherited members.

- - - +
base_struct_builder(const base_struct_builder &)=deletempl::base_struct_builder< T[N0]>
operator=(const base_struct_builder &)=deletempl::base_struct_builder< T[N0]>
struct_builder()mpl::struct_builder< T[N0]>inline
struct_builder() (defined in mpl::struct_builder< T[N0]>)mpl::struct_builder< T[N0]>inline
diff --git a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html index 35c1a24d..c14cf91d 100644 --- a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html +++ b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html @@ -84,7 +84,6 @@
mpl::struct_builder< T[N0]> Class Template Reference
@@ -112,12 +111,6 @@ - - - - -

-Public Member Functions

 struct_builder ()
 

Detailed Description

template<typename T, std::size_t N0>
class mpl::struct_builder< T[N0]>

Specialization of struct_builder for fixed-size one-dimensional C-style arrays.

@@ -169,7 +162,7 @@

diff --git a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.js b/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.js deleted file mode 100644 index fe6d238b..00000000 --- a/docs/html/classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4 = -[ - [ "struct_builder", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html#a12b92cf1cac112f326ef9c1ff3fff9e9", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4-members.html b/docs/html/classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4-members.html index 1e3efd39..ea128c0a 100644 --- a/docs/html/classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4-members.html +++ b/docs/html/classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4-members.html @@ -89,9 +89,7 @@

This is the complete list of members for mpl::struct_builder< std::array< T, N > >, including all inherited members.

- - - +
base_struct_builder(const base_struct_builder &)=deletempl::base_struct_builder< std::array< T, N > >
operator=(const base_struct_builder &)=deletempl::base_struct_builder< std::array< T, N > >
struct_builder()mpl::struct_builder< std::array< T, N > >inline
struct_builder() (defined in mpl::struct_builder< std::array< T, N > >)mpl::struct_builder< std::array< T, N > >inline
diff --git a/docs/html/classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html b/docs/html/classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html index 26da7ae9..e7222ce0 100644 --- a/docs/html/classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html +++ b/docs/html/classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html @@ -84,7 +84,6 @@
mpl::struct_builder< std::array< T, N > > Class Template Reference
@@ -112,12 +111,6 @@ - - - - -

-Public Member Functions

 struct_builder ()
 

Detailed Description

template<typename T, std::size_t N>
class mpl::struct_builder< std::array< T, N > >

Specialization of struct_builder for fixed-size one-dimensional STL arrays.

@@ -169,7 +162,7 @@

diff --git a/docs/html/classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.js b/docs/html/classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.js deleted file mode 100644 index bfeea81b..00000000 --- a/docs/html/classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4 = -[ - [ "struct_builder", "classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html#aa3ddf9c1a4b20c0da0c32c2ca98d7be3", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4-members.html b/docs/html/classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4-members.html index 39e5a3b2..bf086fe8 100644 --- a/docs/html/classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4-members.html +++ b/docs/html/classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4-members.html @@ -89,9 +89,7 @@

This is the complete list of members for mpl::struct_builder< std::pair< T1, T2 > >, including all inherited members.

- - - +
base_struct_builder(const base_struct_builder &)=deletempl::base_struct_builder< std::pair< T1, T2 > >
operator=(const base_struct_builder &)=deletempl::base_struct_builder< std::pair< T1, T2 > >
struct_builder()mpl::struct_builder< std::pair< T1, T2 > >inline
struct_builder() (defined in mpl::struct_builder< std::pair< T1, T2 > >)mpl::struct_builder< std::pair< T1, T2 > >inline
diff --git a/docs/html/classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html b/docs/html/classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html index 4270377e..b79847c3 100644 --- a/docs/html/classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html +++ b/docs/html/classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html @@ -84,7 +84,6 @@
mpl::struct_builder< std::pair< T1, T2 > > Class Template Reference
@@ -112,12 +111,6 @@ - - - - -

-Public Member Functions

 struct_builder ()
 

Detailed Description

template<typename T1, typename T2>
class mpl::struct_builder< std::pair< T1, T2 > >

Specialization of struct_builder for STL pairs.

@@ -169,7 +162,7 @@

diff --git a/docs/html/classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.js b/docs/html/classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.js deleted file mode 100644 index 989eda97..00000000 --- a/docs/html/classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4 = -[ - [ "struct_builder", "classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html#ad358a07c14d549703b11a0c26c8ed49f", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4-members.html b/docs/html/classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4-members.html index bacb3d9c..7c2bd0af 100644 --- a/docs/html/classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4-members.html +++ b/docs/html/classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4-members.html @@ -89,9 +89,7 @@

This is the complete list of members for mpl::struct_builder< std::tuple< Ts... > >, including all inherited members.

- - - +
base_struct_builder(const base_struct_builder &)=deletempl::base_struct_builder< std::tuple< Ts... > >
operator=(const base_struct_builder &)=deletempl::base_struct_builder< std::tuple< Ts... > >
struct_builder()mpl::struct_builder< std::tuple< Ts... > >inline
struct_builder() (defined in mpl::struct_builder< std::tuple< Ts... > >)mpl::struct_builder< std::tuple< Ts... > >inline
diff --git a/docs/html/classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html b/docs/html/classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html index 28567ec6..40cfe8c4 100644 --- a/docs/html/classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html +++ b/docs/html/classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html @@ -84,7 +84,6 @@
mpl::struct_builder< std::tuple< Ts... > > Class Template Reference
@@ -112,12 +111,6 @@ - - - - -

-Public Member Functions

 struct_builder ()
 

Detailed Description

template<typename... Ts>
class mpl::struct_builder< std::tuple< Ts... > >

Specialization of struct_builder for STL tuples.

@@ -168,7 +161,7 @@

diff --git a/docs/html/classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.js b/docs/html/classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.js deleted file mode 100644 index 1288b514..00000000 --- a/docs/html/classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4 = -[ - [ "struct_builder", "classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html#aca6ed8f6236fc432dcca0d7a656c6ca5", null ] -]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1struct__layout-members.html b/docs/html/classmpl_1_1struct__layout-members.html index 2ca149d6..3346e7de 100644 --- a/docs/html/classmpl_1_1struct__layout-members.html +++ b/docs/html/classmpl_1_1struct__layout-members.html @@ -89,7 +89,7 @@

This is the complete list of members for mpl::struct_layout< S >, including all inherited members.

- +
base_struct_builder< S >mpl::struct_layout< S >friend
base_struct_builder< S > (defined in mpl::struct_layout< S >)mpl::struct_layout< S >friend
register_element(T &x)mpl::struct_layout< S >inline
register_struct(const S &x)mpl::struct_layout< S >inline
diff --git a/docs/html/classmpl_1_1struct__layout.html b/docs/html/classmpl_1_1struct__layout.html index ca32a462..92615989 100644 --- a/docs/html/classmpl_1_1struct__layout.html +++ b/docs/html/classmpl_1_1struct__layout.html @@ -246,7 +246,7 @@

diff --git a/docs/html/classmpl_1_1struct__layout.js b/docs/html/classmpl_1_1struct__layout.js index 1fcb2abf..dd4ec1d0 100644 --- a/docs/html/classmpl_1_1struct__layout.js +++ b/docs/html/classmpl_1_1struct__layout.js @@ -1,6 +1,5 @@ var classmpl_1_1struct__layout = [ [ "register_element", "classmpl_1_1struct__layout.html#ada968c08d05ee6c94464bba46c7b2566", null ], - [ "register_struct", "classmpl_1_1struct__layout.html#ac8edfd2e43039745840de4d7f14e13b7", null ], - [ "base_struct_builder< S >", "classmpl_1_1struct__layout.html#a1b10f2e35ead013aab50cab5e5aee21a", null ] + [ "register_struct", "classmpl_1_1struct__layout.html#ac8edfd2e43039745840de4d7f14e13b7", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1subarray__layout.html b/docs/html/classmpl_1_1subarray__layout.html index f9758c6f..0ad1f46c 100644 --- a/docs/html/classmpl_1_1subarray__layout.html +++ b/docs/html/classmpl_1_1subarray__layout.html @@ -146,46 +146,46 @@ void swap (subarray_layout< T > &other)  exchanges two subarray layouts More...
  -ssize_t byte_extent () const +ssize_t byte_extent () const  Get the byte extent of the layout. More...
  -ssize_t byte_lower_bound () const +ssize_t byte_lower_bound () const  Get the byte lower bound of the layout. More...
  -ssize_t byte_upper_bound () const +ssize_t byte_upper_bound () const  Get the byte upper bound of the layout. More...
  -ssize_t extent () const +ssize_t extent () const  Get the extent of the layout. More...
  -ssize_t lower_bound () const +ssize_t lower_bound () const  Get the lower bound of the layout. More...
  -ssize_t upper_bound () const +ssize_t upper_bound () const  Get the upper bound of the layout. More...
  -ssize_t true_byte_extent () const +ssize_t true_byte_extent () const  Get the true byte extent of the layout. More...
  -ssize_t true_byte_lower_bound () const +ssize_t true_byte_lower_bound () const  Get the true byte lower bound of the layout. More...
  -ssize_t true_byte_upper_bound () const +ssize_t true_byte_upper_bound () const  Get the true byte upper bound of the layout. More...
  -ssize_t true_extent () const +ssize_t true_extent () const  Get the true extent of the layout. More...
  -ssize_t true_lower_bound () const +ssize_t true_lower_bound () const  Get the true lower bound of the layout. More...
  -ssize_t true_upper_bound () const +ssize_t true_upper_bound () const  Get the true upper bound of the layout. More...
  -void byte_resize (ssize_t lb, ssize_t extent) +void byte_resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  -void resize (ssize_t lb, ssize_t extent) +void resize (ssize_t lb, ssize_t extent)  Resize the layout. More...
  void swap (layout &l) @@ -202,7 +202,7 @@

See also
inherits all member methods of layout
-
Examples
matrix_gather.cc, and subarray.cc.
+
Examples
matrix_gather.cc, and subarray.cc.

Definition at line 1335 of file layout.hpp.

@@ -414,7 +414,7 @@

- + @@ -448,7 +448,7 @@

ssize_t mpl::layout< T >::byte_extent ssize_t mpl::layout< T >::byte_extent ( ) const
- + @@ -486,13 +486,13 @@

void mpl::layout< T >::byte_resize

- + - + @@ -533,7 +533,7 @@

ssize_t mpl::layout< T >::byte_lower_bound ssize_t mpl::layout< T >::byte_lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -569,7 +569,7 @@

ssize_t mpl::layout< T >::byte_upper_bound ssize_t mpl::layout< T >::byte_upper_bound ( ) const
- + @@ -603,7 +603,7 @@

ssize_t mpl::layout< T >::extent ssize_t mpl::layout< T >::extent ( ) const
- + @@ -715,13 +715,13 @@

void mpl::layout< T >::resize

- + - + @@ -745,7 +745,7 @@

Examples
layouts.cc.
+
Examples
layouts.cc.

Definition at line 314 of file layout.hpp.

@@ -840,7 +840,7 @@

ssize_t mpl::layout< T >::lower_bound ssize_t mpl::layout< T >::lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -874,7 +874,7 @@

ssize_t mpl::layout< T >::true_byte_extent ssize_t mpl::layout< T >::true_byte_extent ( ) const
- + @@ -910,7 +910,7 @@

ssize_t mpl::layout< T >::true_byte_lower_bound ssize_t mpl::layout< T >::true_byte_lower_bound ( ) const
- + @@ -946,7 +946,7 @@

ssize_t mpl::layout< T >::true_byte_upper_bound ssize_t mpl::layout< T >::true_byte_upper_bound ( ) const
- + @@ -980,7 +980,7 @@

ssize_t mpl::layout< T >::true_extent ssize_t mpl::layout< T >::true_extent ( ) const
- + @@ -1016,7 +1016,7 @@

ssize_t mpl::layout< T >::true_lower_bound ssize_t mpl::layout< T >::true_lower_bound ( ) const
- + @@ -1052,7 +1052,7 @@

ssize_t mpl::layout< T >::true_upper_bound ssize_t mpl::layout< T >::true_upper_bound ( ) const
- + @@ -1084,7 +1084,7 @@

diff --git a/docs/html/classmpl_1_1subarray__layout_1_1parameter-members.html b/docs/html/classmpl_1_1subarray__layout_1_1parameter-members.html index 105b98dc..e0c3f21b 100644 --- a/docs/html/classmpl_1_1subarray__layout_1_1parameter-members.html +++ b/docs/html/classmpl_1_1subarray__layout_1_1parameter-members.html @@ -95,7 +95,7 @@

- +
ssize_t mpl::layout< T >::upper_bound ssize_t mpl::layout< T >::upper_bound ( ) const
parameter()=defaultmpl::subarray_layout< T >::parameter
parameter(const List_T &V)mpl::subarray_layout< T >::parameterinlineexplicit
parameter(std::initializer_list< std::array< int, 3 > > list)mpl::subarray_layout< T >::parameterinline
subarray_layoutmpl::subarray_layout< T >::parameterfriend
subarray_layout (defined in mpl::subarray_layout< T >::parameter)mpl::subarray_layout< T >::parameterfriend
diff --git a/docs/html/classmpl_1_1subarray__layout_1_1parameter.html b/docs/html/classmpl_1_1subarray__layout_1_1parameter.html index 25b100f7..88ce291f 100644 --- a/docs/html/classmpl_1_1subarray__layout_1_1parameter.html +++ b/docs/html/classmpl_1_1subarray__layout_1_1parameter.html @@ -106,8 +106,9 @@ - - + + @@ -119,10 +120,10 @@ - + - +

Public Member Functions

 parameter ()=default
 creates parameters for a subarray layout representing an empty subarray More...
parameter ()=default
 creates parameters for a subarray layout representing an empty subarray
 
template<typename List_T >
 parameter (const List_T &V)
void add (int size, int subsize, int start)
 add parameters for an additional array dimension More...
 
void order (array_orders new_order)
void order (array_orders new_order)
 set the array order More...
 
array_orders order () const
array_orders order () const
 get the array order More...
 
@@ -137,37 +138,8 @@

Definition at line 1340 of file layout.hpp.

Constructor & Destructor Documentation

- -

◆ parameter() [1/3]

- -
-
-
-template<typename T >
-
- - - - -
- - - - - - - -
mpl::subarray_layout< T >::parameter::parameter ()
-
-default
-
- -

creates parameters for a subarray layout representing an empty subarray

- -
- -

◆ parameter() [2/3]

+

◆ parameter() [1/2]

@@ -214,7 +186,7 @@

-

◆ parameter() [3/3]

+

◆ parameter() [2/2]

@@ -321,7 +293,7 @@

- + @@ -355,7 +327,7 @@

void mpl::subarray_layout< T >::parameter::order

- + @@ -414,7 +386,7 @@

diff --git a/docs/html/classmpl_1_1subarray__layout_1_1parameter.js b/docs/html/classmpl_1_1subarray__layout_1_1parameter.js index 64bf603a..784d1055 100644 --- a/docs/html/classmpl_1_1subarray__layout_1_1parameter.js +++ b/docs/html/classmpl_1_1subarray__layout_1_1parameter.js @@ -5,6 +5,5 @@ var classmpl_1_1subarray__layout_1_1parameter = [ "parameter", "classmpl_1_1subarray__layout_1_1parameter.html#a77ad6bab244fed5453132ca9a5ac3c6c", null ], [ "add", "classmpl_1_1subarray__layout_1_1parameter.html#adb56550a413cee796a9e3e7c9a268f24", null ], [ "order", "classmpl_1_1subarray__layout_1_1parameter.html#a60f802b57d449678d80496b82c3751de", null ], - [ "order", "classmpl_1_1subarray__layout_1_1parameter.html#a155ab0d9cb1eb40d8f8d7ae9fbc2bdca", null ], - [ "subarray_layout", "classmpl_1_1subarray__layout_1_1parameter.html#a44e33f146bbe2cb7692c6fd9eeefdfc4", null ] + [ "order", "classmpl_1_1subarray__layout_1_1parameter.html#a155ab0d9cb1eb40d8f8d7ae9fbc2bdca", null ] ]; \ No newline at end of file diff --git a/docs/html/classmpl_1_1tag__t-members.html b/docs/html/classmpl_1_1tag__t-members.html index 36561d26..0694d14a 100644 --- a/docs/html/classmpl_1_1tag__t-members.html +++ b/docs/html/classmpl_1_1tag__t-members.html @@ -91,7 +91,7 @@

array_orders mpl::subarray_layout< T >::parameter::order array_orders mpl::subarray_layout< T >::parameter::order ( ) const(array_orders array_orders  new_order)
- + diff --git a/docs/html/classmpl_1_1tag__t.html b/docs/html/classmpl_1_1tag__t.html index a3463917..20ab5ee2 100644 --- a/docs/html/classmpl_1_1tag__t.html +++ b/docs/html/classmpl_1_1tag__t.html @@ -106,8 +106,6 @@
any()mpl::tag_tinlinestatic
operator int() constmpl::tag_tinlineexplicit
tag_t()=defaultmpl::tag_t
tag_t()=default (defined in mpl::tag_t)mpl::tag_t
tag_t(T t)mpl::tag_tinline
tag_t(int t)mpl::tag_tinlineexplicit
up()mpl::tag_tinlinestatic
- - @@ -125,38 +123,13 @@

Public Member Functions

 tag_t ()=default
 
template<typename T >
 tag_t (T t)
 

Detailed Description

Constructor & Destructor Documentation

- -

◆ tag_t() [1/3]

- -
-
- - - - - -
- - - - - - - -
mpl::tag_t::tag_t ()
-
-default
-
- -
-
-

◆ tag_t() [2/3]

+

◆ tag_t() [1/2]

@@ -192,7 +165,7 @@

-

◆ tag_t() [3/3]

+

◆ tag_t() [2/2]

@@ -249,8 +222,8 @@

Returns
wildcard tag to be used in receive operations, e.g., communicator::recv, to indicate acceptance of a message with any tag value
-
See also
any_source
-
Examples
probe.cc.
+
See also
any_source
+
Examples
probe.cc.

Definition at line 184 of file environment.hpp.

@@ -322,7 +295,7 @@

diff --git a/docs/html/classmpl_1_1tag__t.js b/docs/html/classmpl_1_1tag__t.js index e393fe25..07806a68 100644 --- a/docs/html/classmpl_1_1tag__t.js +++ b/docs/html/classmpl_1_1tag__t.js @@ -1,6 +1,5 @@ var classmpl_1_1tag__t = [ - [ "tag_t", "classmpl_1_1tag__t.html#af2132893124b73da5792982e961f8e21", null ], [ "tag_t", "classmpl_1_1tag__t.html#a290110d503cd4d6bf1bbd0553f78c0a6", null ], [ "tag_t", "classmpl_1_1tag__t.html#aee28b8c00b151ccee302f75016b63f7b", null ], [ "operator int", "classmpl_1_1tag__t.html#a1946fdf44d007662a538252b11dc5d23", null ] diff --git a/docs/html/classmpl_1_1vector__layout.html b/docs/html/classmpl_1_1vector__layout.html index bdbc9447..1c70839c 100644 --- a/docs/html/classmpl_1_1vector__layout.html +++ b/docs/html/classmpl_1_1vector__layout.html @@ -115,10 +115,10 @@ - + - + @@ -136,46 +136,46 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -195,7 +195,7 @@
See also
inherits all member methods of layout
contiguous_layout
-
Examples
layouts.cc, and parallel_sort_mpl.cc.
+
Examples
layouts.cc, and parallel_sort_mpl.cc.

Definition at line 568 of file layout.hpp.

@@ -214,7 +214,7 @@

mpl::vector_layout< T >::vector_layout

- + @@ -252,7 +252,7 @@

mpl::vector_layout< T >::vector_layout

- + @@ -376,7 +376,7 @@

Public Member Functions

 vector_layout (size_t count=0)
 vector_layout (size_t count=0)
 constructs layout for contiguous storage several objects of type T More...
 
 vector_layout (size_t count, const layout< T > &l)
 vector_layout (size_t count, const layout< T > &l)
 constructs layout for data with memory layout that is a homogenous sequence of some other layout More...
 
 vector_layout (const vector_layout< T > &l)
void swap (vector_layout< T > &other)
 exchanges two contiguous layouts More...
 
ssize_t byte_extent () const
ssize_t byte_extent () const
 Get the byte extent of the layout. More...
 
ssize_t byte_lower_bound () const
ssize_t byte_lower_bound () const
 Get the byte lower bound of the layout. More...
 
ssize_t byte_upper_bound () const
ssize_t byte_upper_bound () const
 Get the byte upper bound of the layout. More...
 
ssize_t extent () const
ssize_t extent () const
 Get the extent of the layout. More...
 
ssize_t lower_bound () const
ssize_t lower_bound () const
 Get the lower bound of the layout. More...
 
ssize_t upper_bound () const
ssize_t upper_bound () const
 Get the upper bound of the layout. More...
 
ssize_t true_byte_extent () const
ssize_t true_byte_extent () const
 Get the true byte extent of the layout. More...
 
ssize_t true_byte_lower_bound () const
ssize_t true_byte_lower_bound () const
 Get the true byte lower bound of the layout. More...
 
ssize_t true_byte_upper_bound () const
ssize_t true_byte_upper_bound () const
 Get the true byte upper bound of the layout. More...
 
ssize_t true_extent () const
ssize_t true_extent () const
 Get the true extent of the layout. More...
 
ssize_t true_lower_bound () const
ssize_t true_lower_bound () const
 Get the true lower bound of the layout. More...
 
ssize_t true_upper_bound () const
ssize_t true_upper_bound () const
 Get the true upper bound of the layout. More...
 
void byte_resize (ssize_t lb, ssize_t extent)
void byte_resize (ssize_t lb, ssize_t extent)
 Resize the layout. More...
 
void resize (ssize_t lb, ssize_t extent)
void resize (ssize_t lb, ssize_t extent)
 Resize the layout. More...
 
void swap (layout &l)
(size_t size_t  count = 0)
(size_t size_t  count,
- + @@ -410,7 +410,7 @@

ssize_t mpl::layout< T >::byte_extent ssize_t mpl::layout< T >::byte_extent ( ) const
- + @@ -448,13 +448,13 @@

void mpl::layout< T >::byte_resize

- + - + @@ -495,7 +495,7 @@

ssize_t mpl::layout< T >::byte_lower_bound ssize_t mpl::layout< T >::byte_lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -531,7 +531,7 @@

ssize_t mpl::layout< T >::byte_upper_bound ssize_t mpl::layout< T >::byte_upper_bound ( ) const
- + @@ -565,7 +565,7 @@

ssize_t mpl::layout< T >::extent ssize_t mpl::layout< T >::extent ( ) const
- + @@ -677,13 +677,13 @@

void mpl::layout< T >::resize

- + - + @@ -707,7 +707,7 @@

Examples
layouts.cc.
+
Examples
layouts.cc.

Definition at line 314 of file layout.hpp.

@@ -802,7 +802,7 @@

ssize_t mpl::layout< T >::lower_bound ssize_t mpl::layout< T >::lower_bound ( ) const(ssize_t ssize_t  lb,
ssize_t ssize_t  extent 
- + @@ -836,7 +836,7 @@

ssize_t mpl::layout< T >::true_byte_extent ssize_t mpl::layout< T >::true_byte_extent ( ) const
- + @@ -872,7 +872,7 @@

ssize_t mpl::layout< T >::true_byte_lower_bound ssize_t mpl::layout< T >::true_byte_lower_bound ( ) const
- + @@ -908,7 +908,7 @@

ssize_t mpl::layout< T >::true_byte_upper_bound ssize_t mpl::layout< T >::true_byte_upper_bound ( ) const
- + @@ -942,7 +942,7 @@

ssize_t mpl::layout< T >::true_extent ssize_t mpl::layout< T >::true_extent ( ) const
- + @@ -978,7 +978,7 @@

ssize_t mpl::layout< T >::true_lower_bound ssize_t mpl::layout< T >::true_lower_bound ( ) const
- + @@ -1014,7 +1014,7 @@

ssize_t mpl::layout< T >::true_upper_bound ssize_t mpl::layout< T >::true_upper_bound ( ) const
- + @@ -1046,7 +1046,7 @@

diff --git a/docs/html/collective_8cc-example.html b/docs/html/collective_8cc-example.html index e46e3551..71cbe0bf 100644 --- a/docs/html/collective_8cc-example.html +++ b/docs/html/collective_8cc-example.html @@ -116,52 +116,52 @@
int main() {
- -
int root{0};
+
const mpl::communicator &comm_world{mpl::environment::comm_world()};
+
int root{0};
// synchronize processes via barrier
- -
std::cout << mpl::environment::processor_name() << " has passed barrier\n";
- +
comm_world.barrier();
+
std::cout << mpl::environment::processor_name() << " has passed barrier\n";
+
comm_world.barrier();
double x{0};
-
if (comm_world.rank() == root)
+
if (comm_world.rank() == root)
x = 10;
// broadcast x to all from root rank
-
comm_world.bcast(root, x);
+
comm_world.bcast(root, x);
std::cout << "x = " << x << '\n';
// collect data from all ranks via gather to root rank
-
x = comm_world.rank() + 1;
-
if (comm_world.rank() == root) {
-
std::vector<double> v(comm_world.size()); // receive buffer
-
comm_world.gather(root, x, v.data());
+
x = comm_world.rank() + 1;
+
if (comm_world.rank() == root) {
+
std::vector<double> v(comm_world.size()); // receive buffer
+
comm_world.gather(root, x, v.data());
std::cout << "v = ";
for (const auto &item : v)
std::cout << item << ' ';
std::cout << '\n';
} else
-
comm_world.gather(root, x);
+
comm_world.gather(root, x);
// send data to all ranks via scatter from root rank
double y{0};
-
if (comm_world.rank() == root) {
-
std::vector<double> v(comm_world.size()); // send buffer
+
if (comm_world.rank() == root) {
+
std::vector<double> v(comm_world.size()); // send buffer
std::iota(v.begin(), v.end(), 1); // populate send buffer
-
comm_world.scatter(root, v.data(), y);
+
comm_world.scatter(root, v.data(), y);
} else
-
comm_world.scatter(root, y);
+
comm_world.scatter(root, y);
std::cout << "y = " << y << '\n';
// reduce/sum all values of x on all nodes and send global result to root
-
if (comm_world.rank() == root) {
- +
if (comm_world.rank() == root) {
+
comm_world.reduce(mpl::plus<double>(), root, x, y);
std::cout << "sum after reduce " << y << '\n';
} else
- +
comm_world.reduce(mpl::plus<double>(), root, x);
// reduce/multiply all values of x on all nodes and send global result to all
- +
comm_world.allreduce(mpl::multiplies<double>(), x, y);
std::cout << "sum after allreduce " << y << '\n';
// reduce a C-style array using a contiguous layout
@@ -172,9 +172,9 @@
for (int i_1{0}; i_1 < n_1; ++i_1)
for (int i_0{0}; i_0 < n_0; ++i_0)
array[i_0][i_1] = i_0 + 100 * i_1;
- -
comm_world.allreduce(mpl::plus<double>(), &array[0][0], l);
-
if (comm_world.rank() == 0) {
+ +
comm_world.allreduce(mpl::plus<double>(), &array[0][0], l);
+
if (comm_world.rank() == 0) {
std::cout << "array after allreduce\n";
for (int i_1{0}; i_1 < n_1; ++i_1) {
for (int i_0{0}; i_0 < n_0; ++i_0)
@@ -190,8 +190,8 @@
for (int i_1{0}; i_1 < my_array::n_1; ++i_1)
for (int i_0{0}; i_0 < my_array::n_0; ++i_0)
array(i_0, i_1) = i_0 + 100 * i_1;
- -
if (comm_world.rank() == 0) {
+
comm_world.allreduce(mpl::plus<my_array>(), array);
+
if (comm_world.rank() == 0) {
std::cout << "array after allreduce\n";
for (int i_1{0}; i_1 < my_array::n_1; ++i_1) {
for (int i_0{0}; i_0 < my_array::n_0; ++i_0)
@@ -203,19 +203,16 @@
return EXIT_SUCCESS;
}
-
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:250
-
void allreduce(F f, const T &senddata, T &recvdata) const
Performs a reduction operation over all processes and broadcasts the result.
-
void reduce(F f, int root_rank, const T &senddata, T &recvdata) const
Performs a reduction operation over all processes.
-
void barrier() const
Blocks until all processes in the communicator have reached this method.
-
void scatter(int root_rank, const T *senddata, T &recvdata) const
Scatter messages from a single root process to all processes.
-
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:559
-
void bcast(int root_rank, T &data) const
Broadcasts a message from a process to all other processes.
-
void gather(int root_rank, const T &senddata, T *recvdata) const
Gather messages from all processes at a single root process.
-
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:567
+
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:253
+
void allreduce(F f, const T &senddata, T &recvdata) const
Performs a reduction operation over all processes and broadcasts the result.
+
void reduce(F f, int root_rank, const T &senddata, T &recvdata) const
Performs a reduction operation over all processes.
+
void barrier() const
Blocks until all processes in the communicator have reached this method.
+
void scatter(int root_rank, const T *senddata, T &recvdata) const
Scatter messages from a single root process to all processes.
+
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:564
+
void bcast(int root_rank, T &data) const
Broadcasts a message from a process to all other processes.
+
void gather(int root_rank, const T &senddata, T *recvdata) const
Gather messages from all processes at a single root process.
+
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:572
Layout representing contiguous storage several objects.
Definition: layout.hpp:458
-
const communicator & comm_world()
Provides access to a predefined communicator that allows communication with all processes.
-
std::string processor_name()
Gives a unique specifier, the processor name, for the actual (physical) node.
-
constexpr int root
Special value to indicate the root process in some intercommunicator collective operations.
Definition: mpl.hpp:26
Function object for calculating the product of two values in reduction operations as communicator::re...
Definition: operator.hpp:50
Function object for calculating the sum of two values in reduction operations as communicator::reduce...
Definition: operator.hpp:39
diff --git a/docs/html/comm__group_8hpp_source.html b/docs/html/comm__group_8hpp_source.html index eed13ff9..1e56d979 100644 --- a/docs/html/comm__group_8hpp_source.html +++ b/docs/html/comm__group_8hpp_source.html @@ -97,7 +97,7 @@
9#include <mpl/layout.hpp>
10#include <mpl/vector.hpp>
11
-
12namespace mpl {
+
12namespace mpl {
13
14 class group;
15
@@ -107,7 +107,7 @@
19
20 class graph_communicator;
21
-
22 namespace environment {
+
22 namespace environment {
23
24 namespace detail {
25
@@ -120,7 +120,7 @@
32 //--------------------------------------------------------------------
33
- +
37 message_t message;
40 };
41
@@ -161,7 +161,7 @@
102
105 group(group &&other) noexcept : gr_{other.gr_} { other.gr_ = MPI_GROUP_EMPTY; }
106
-
109 explicit group(const communicator &comm);
+
109 explicit group(const communicator &comm);
110
115 explicit group(Union_tag tag, const group &other_1, const group &other_2);
116
@@ -228,2671 +228,2670 @@
217 return other_rank;
218 }
219
-
222 bool operator==(const group &other) const {
-
223 int result;
-
224 MPI_Group_compare(gr_, other.gr_, &result);
-
225 return result == MPI_IDENT;
-
226 }
-
227
-
230 bool operator!=(const group &other) const {
-
231 int result;
-
232 MPI_Group_compare(gr_, other.gr_, &result);
-
233 return result != MPI_IDENT;
-
234 }
-
235
-
238 [[nodiscard]] equality_type compare(const group &other) const {
-
239 int result;
-
240 MPI_Group_compare(gr_, other.gr_, &result);
-
241 return static_cast<equality_type>(result);
-
242 }
-
243
-
244 friend class communicator;
-
245 };
+
223 bool operator==(const group &other) const {
+
224 int result;
+
225 MPI_Group_compare(gr_, other.gr_, &result);
+
226 return result == MPI_IDENT;
+
227 }
+
228
+
232 bool operator!=(const group &other) const {
+
233 int result;
+
234 MPI_Group_compare(gr_, other.gr_, &result);
+
235 return result != MPI_IDENT;
+
236 }
+
237
+
241 [[nodiscard]] equality_type compare(const group &other) const {
+
242 int result;
+
243 MPI_Group_compare(gr_, other.gr_, &result);
+
244 return static_cast<equality_type>(result);
+
245 }
246
-
247 //--------------------------------------------------------------------
-
248
- -
251 struct isend_irecv_state {
-
252 MPI_Request req{};
-
253 int source{MPI_ANY_SOURCE};
-
254 int tag{MPI_ANY_TAG};
-
255 MPI_Datatype datatype{MPI_DATATYPE_NULL};
-
256 int count{MPI_UNDEFINED};
-
257 };
-
258
-
259 static int isend_irecv_query(void *state, MPI_Status *s) {
-
260 isend_irecv_state *sendrecv_state{static_cast<isend_irecv_state *>(state)};
-
261 MPI_Status_set_elements(s, sendrecv_state->datatype, sendrecv_state->count);
-
262 MPI_Status_set_cancelled(s, 0);
-
263 s->MPI_SOURCE = sendrecv_state->source;
-
264 s->MPI_TAG = sendrecv_state->tag;
-
265 return MPI_SUCCESS;
-
266 }
-
267
-
268 static int isend_irecv_free(void *state) {
-
269 isend_irecv_state *sendrecv_state{static_cast<isend_irecv_state *>(state)};
-
270 delete sendrecv_state;
-
271 return MPI_SUCCESS;
-
272 }
-
273
-
274 static int isend_irecv_cancel(void *state, int complete) { return MPI_SUCCESS; }
-
275
-
276 protected:
-
277 MPI_Comm comm_{MPI_COMM_NULL};
+
247 friend class communicator;
+
248 };
+
249
+
250 //--------------------------------------------------------------------
+
251
+ +
254 struct isend_irecv_state {
+
255 MPI_Request req{};
+
256 int source{MPI_ANY_SOURCE};
+
257 int tag{MPI_ANY_TAG};
+
258 MPI_Datatype datatype{MPI_DATATYPE_NULL};
+
259 int count{MPI_UNDEFINED};
+
260 };
+
261
+
262 static int isend_irecv_query(void *state, MPI_Status *s) {
+
263 isend_irecv_state *sendrecv_state{static_cast<isend_irecv_state *>(state)};
+
264 MPI_Status_set_elements(s, sendrecv_state->datatype, sendrecv_state->count);
+
265 MPI_Status_set_cancelled(s, 0);
+
266 s->MPI_SOURCE = sendrecv_state->source;
+
267 s->MPI_TAG = sendrecv_state->tag;
+
268 return MPI_SUCCESS;
+
269 }
+
270
+
271 static int isend_irecv_free(void *state) {
+
272 isend_irecv_state *sendrecv_state{static_cast<isend_irecv_state *>(state)};
+
273 delete sendrecv_state;
+
274 return MPI_SUCCESS;
+
275 }
+
276
+
277 static int isend_irecv_cancel(void *state, int complete) { return MPI_SUCCESS; }
278
-
279 public:
-
281 enum class equality_type {
-
284 identical = MPI_IDENT,
-
287 congruent = MPI_CONGRUENT,
-
290 similar = MPI_SIMILAR,
-
292 unequal = MPI_UNEQUAL
-
293 };
-
294
- - - - -
307
- - -
314
- - -
321
-
324 class split_tag {};
-
327 static constexpr split_tag split{};
-
328
- - -
335
-
336 private:
-
337 void check_dest(int dest) const {
-
338#if defined MPL_DEBUG
-
339 if (dest != proc_null and (dest < 0 or dest >= size()))
-
340 throw invalid_rank();
-
341#endif
-
342 }
-
343
-
344 void check_source(int source) const {
-
345#if defined MPL_DEBUG
-
346 if (source != proc_null and source != any_source and (source < 0 or source >= size()))
-
347 throw invalid_rank();
-
348#endif
-
349 }
-
350
-
351 void check_send_tag(tag_t t) const {
-
352#if defined MPL_DEBUG
-
353 if (static_cast<int>(t) < 0 or static_cast<int>(t) > static_cast<int>(tag_t::up()))
-
354 throw invalid_tag();
-
355#endif
-
356 }
-
357
-
358 void check_recv_tag(tag_t t) const {
-
359#if defined MPL_DEBUG
-
360 if (static_cast<int>(t) != static_cast<int>(tag_t::any()) and
-
361 (static_cast<int>(t) < 0 or static_cast<int>(t) > static_cast<int>(tag_t::up())))
-
362 throw invalid_tag();
-
363#endif
-
364 }
-
365
-
366 void check_root(int root_rank) const {
-
367#if defined MPL_DEBUG
-
368 if (root_rank < 0 or root_rank >= size())
-
369 throw invalid_rank();
-
370#endif
-
371 }
-
372
-
373 void check_nonroot(int root_rank) const {
-
374#if defined MPL_DEBUG
-
375 if (root_rank < 0 or root_rank >= size() or root_rank == rank())
-
376 throw invalid_rank();
-
377#endif
-
378 }
-
379
-
380 template<typename T>
-
381 void check_size(const layouts<T> &l) const {
-
382#if defined MPL_DEBUG
-
383 if (static_cast<int>(l.size()) > size())
-
384 throw invalid_size();
-
385#endif
-
386 }
-
387
-
388 void check_size(const displacements &d) const {
-
389#if defined MPL_DEBUG
-
390 if (static_cast<int>(d.size()) > size())
-
391 throw invalid_size();
-
392#endif
-
393 }
-
394
-
395 void check_count(int count) const {
-
396#if defined MPL_DEBUG
-
397 if (count == MPI_UNDEFINED)
-
398 throw invalid_count();
-
399#endif
-
400 }
-
401
-
402 template<typename T>
-
403 void check_container_size(const T &container, detail::basic_or_fixed_size_type) const {}
+
279 protected:
+
280 MPI_Comm comm_{MPI_COMM_NULL};
+
281
+
282 public:
+
284 enum class equality_type {
+
287 identical = MPI_IDENT,
+
290 congruent = MPI_CONGRUENT,
+
293 similar = MPI_SIMILAR,
+
295 unequal = MPI_UNEQUAL
+
296 };
+
297
+ + + + +
310
+ + +
317
+ + +
324
+
327 class split_tag {};
+
330 static constexpr split_tag split{};
+
331
+ + +
338
+
339 private:
+
340 void check_dest(int dest) const {
+
341#if defined MPL_DEBUG
+
342 if (dest != proc_null and (dest < 0 or dest >= size()))
+
343 throw invalid_rank();
+
344#endif
+
345 }
+
346
+
347 void check_source(int source) const {
+
348#if defined MPL_DEBUG
+
349 if (source != proc_null and source != any_source and (source < 0 or source >= size()))
+
350 throw invalid_rank();
+
351#endif
+
352 }
+
353
+
354 void check_send_tag(tag_t t) const {
+
355#if defined MPL_DEBUG
+
356 if (static_cast<int>(t) < 0 or static_cast<int>(t) > static_cast<int>(tag_t::up()))
+
357 throw invalid_tag();
+
358#endif
+
359 }
+
360
+
361 void check_recv_tag(tag_t t) const {
+
362#if defined MPL_DEBUG
+
363 if (static_cast<int>(t) != static_cast<int>(tag_t::any()) and
+
364 (static_cast<int>(t) < 0 or static_cast<int>(t) > static_cast<int>(tag_t::up())))
+
365 throw invalid_tag();
+
366#endif
+
367 }
+
368
+
369 void check_root(int root_rank) const {
+
370#if defined MPL_DEBUG
+
371 if (root_rank < 0 or root_rank >= size())
+
372 throw invalid_rank();
+
373#endif
+
374 }
+
375
+
376 void check_nonroot(int root_rank) const {
+
377#if defined MPL_DEBUG
+
378 if (root_rank < 0 or root_rank >= size() or root_rank == rank())
+
379 throw invalid_rank();
+
380#endif
+
381 }
+
382
+
383 template<typename T>
+
384 void check_size(const layouts<T> &l) const {
+
385#if defined MPL_DEBUG
+
386 if (static_cast<int>(l.size()) > size())
+
387 throw invalid_size();
+
388#endif
+
389 }
+
390
+
391 void check_size(const displacements &d) const {
+
392#if defined MPL_DEBUG
+
393 if (static_cast<int>(d.size()) > size())
+
394 throw invalid_size();
+
395#endif
+
396 }
+
397
+
398 void check_count(int count) const {
+
399#if defined MPL_DEBUG
+
400 if (count == MPI_UNDEFINED)
+
401 throw invalid_count();
+
402#endif
+
403 }
404
405 template<typename T>
-
406 void check_container_size(const T &container, detail::stl_container) const {
-
407#if defined MPL_DEBUG
-
408 if (container.size() > std::numeric_limits<int>::max())
-
409 throw invalid_count();
-
410#endif
-
411 }
-
412
-
413 template<typename T>
-
414 void check_container_size(const T &container) const {
-
415 check_container_size(container,
-
416 typename detail::datatype_traits<T>::data_type_category{});
-
417 }
-
418
-
419 protected:
-
420 explicit communicator(MPI_Comm comm) : comm_(comm) {}
+
406 void check_container_size(const T &container, detail::basic_or_fixed_size_type) const {}
+
407
+
408 template<typename T>
+
409 void check_container_size(const T &container, detail::stl_container) const {
+
410#if defined MPL_DEBUG
+
411 if (container.size() > std::numeric_limits<int>::max())
+
412 throw invalid_count();
+
413#endif
+
414 }
+
415
+
416 template<typename T>
+
417 void check_container_size(const T &container) const {
+
418 check_container_size(container,
+
419 typename detail::datatype_traits<T>::data_type_category{});
+
420 }
421
-
422 public:
-
424 communicator() = default;
-
425
-
432 communicator(const communicator &other) { MPI_Comm_dup(other.comm_, &comm_); }
-
433
-
436 communicator(communicator &&other) noexcept : comm_{other.comm_} {
-
437 other.comm_ = MPI_COMM_NULL;
-
438 }
-
439
- -
448 const group &gr) {
-
449 MPI_Comm_create(other.comm_, gr.gr_, &comm_);
-
450 }
-
451
- -
461 const group &gr, tag_t t = tag_t(0)) {
-
462 MPI_Comm_create_group(other.comm_, gr.gr_, static_cast<int>(t), &comm_);
-
463 }
-
464
-
475 template<typename color_type, typename key_type = int>
-
476 explicit communicator(split_tag split, const communicator &other, color_type color,
-
477 key_type key = 0) {
-
478 static_assert(detail::is_valid_color_v<color_type>,
-
479 "not an enumeration type or underlying enumeration type too large");
-
480 static_assert(detail::is_valid_key_v<key_type>,
-
481 "not an enumeration type or underlying enumeration type too large");
-
482 MPI_Comm_split(other.comm_, detail::underlying_type<color_type>::value(color),
-
483 detail::underlying_type<key_type>::value(key), &comm_);
-
484 }
-
485
-
494 template<typename key_type = int>
- -
496 const communicator &other, key_type key = 0) {
-
497 static_assert(detail::is_valid_tag_v<key_type>,
-
498 "not an enumeration type or underlying enumeration type too large");
-
499 MPI_Comm_split_type(other.comm_, MPI_COMM_TYPE_SHARED,
-
500 detail::underlying_type<key_type>::value(key), MPI_INFO_NULL, &comm_);
-
501 }
-
502
- -
505 if (is_valid()) {
-
506 int result_1;
-
507 MPI_Comm_compare(comm_, MPI_COMM_WORLD, &result_1);
-
508 int result_2;
-
509 MPI_Comm_compare(comm_, MPI_COMM_SELF, &result_2);
-
510 if (result_1 != MPI_IDENT and result_2 != MPI_IDENT)
-
511 MPI_Comm_free(&comm_);
-
512 }
-
513 }
-
514
-
522 communicator &operator=(const communicator &other) noexcept {
-
523 if (this != &other) {
-
524 if (is_valid()) {
-
525 int result_1;
-
526 MPI_Comm_compare(comm_, MPI_COMM_WORLD, &result_1);
-
527 int result_2;
-
528 MPI_Comm_compare(comm_, MPI_COMM_SELF, &result_2);
-
529 if (result_1 != MPI_IDENT and result_2 != MPI_IDENT)
-
530 MPI_Comm_free(&comm_);
-
531 }
-
532 MPI_Comm_dup(other.comm_, &comm_);
-
533 }
-
534 return *this;
-
535 }
-
536
- -
542 if (this != &other) {
-
543 if (is_valid()) {
-
544 int result_1;
-
545 MPI_Comm_compare(comm_, MPI_COMM_WORLD, &result_1);
-
546 int result_2;
-
547 MPI_Comm_compare(comm_, MPI_COMM_SELF, &result_2);
-
548 if (result_1 != MPI_IDENT and result_2 != MPI_IDENT)
-
549 MPI_Comm_free(&comm_);
-
550 }
-
551 comm_ = other.comm_;
-
552 other.comm_ = MPI_COMM_NULL;
-
553 }
-
554 return *this;
-
555 }
-
556
-
559 [[nodiscard]] int size() const {
-
560 int result;
-
561 MPI_Comm_size(comm_, &result);
-
562 return result;
-
563 }
-
564
-
567 [[nodiscard]] int rank() const {
-
568 int result;
-
569 MPI_Comm_rank(comm_, &result);
-
570 return result;
-
571 }
-
572
-
575 bool operator==(const communicator &other) const {
-
576 int result;
-
577 MPI_Comm_compare(comm_, other.comm_, &result);
-
578 return result == MPI_IDENT;
-
579 }
-
580
-
583 bool operator!=(const communicator &other) const {
-
584 int result;
-
585 MPI_Comm_compare(comm_, other.comm_, &result);
-
586 return result != MPI_IDENT;
-
587 }
-
588
-
591 [[nodiscard]] equality_type compare(const communicator &other) const {
-
592 int result;
-
593 MPI_Comm_compare(comm_, other.comm_, &result);
-
594 return static_cast<equality_type>(result);
-
595 }
-
596
-
601 [[nodiscard]] bool is_valid() const { return comm_ != MPI_COMM_NULL; }
-
602
-
606 void abort(int err) const { MPI_Abort(comm_, err); }
-
607
-
608 friend class group;
-
609
- -
611
-
612 friend class graph_communicator;
-
613
- +
422 protected:
+
423 explicit communicator(MPI_Comm comm) : comm_(comm) {}
+
424
+
425 public:
+
427 communicator() = default;
+
428
+
435 communicator(const communicator &other) { MPI_Comm_dup(other.comm_, &comm_); }
+
436
+
439 communicator(communicator &&other) noexcept : comm_{other.comm_} {
+
440 other.comm_ = MPI_COMM_NULL;
+
441 }
+
442
+ +
451 const group &gr) {
+
452 MPI_Comm_create(other.comm_, gr.gr_, &comm_);
+
453 }
+
454
+ +
464 const group &gr, tag_t t = tag_t(0)) {
+
465 MPI_Comm_create_group(other.comm_, gr.gr_, static_cast<int>(t), &comm_);
+
466 }
+
467
+
478 template<typename color_type, typename key_type = int>
+
479 explicit communicator(split_tag split, const communicator &other, color_type color,
+
480 key_type key = 0) {
+
481 static_assert(detail::is_valid_color_v<color_type>,
+
482 "not an enumeration type or underlying enumeration type too large");
+
483 static_assert(detail::is_valid_key_v<key_type>,
+
484 "not an enumeration type or underlying enumeration type too large");
+
485 MPI_Comm_split(other.comm_, detail::underlying_type<color_type>::value(color),
+
486 detail::underlying_type<key_type>::value(key), &comm_);
+
487 }
+
488
+
497 template<typename key_type = int>
+ +
499 const communicator &other, key_type key = 0) {
+
500 static_assert(detail::is_valid_tag_v<key_type>,
+
501 "not an enumeration type or underlying enumeration type too large");
+
502 MPI_Comm_split_type(other.comm_, MPI_COMM_TYPE_SHARED,
+
503 detail::underlying_type<key_type>::value(key), MPI_INFO_NULL, &comm_);
+
504 }
+
505
+ +
508 if (is_valid()) {
+
509 int result_1;
+
510 MPI_Comm_compare(comm_, MPI_COMM_WORLD, &result_1);
+
511 int result_2;
+
512 MPI_Comm_compare(comm_, MPI_COMM_SELF, &result_2);
+
513 if (result_1 != MPI_IDENT and result_2 != MPI_IDENT)
+
514 MPI_Comm_free(&comm_);
+
515 }
+
516 }
+
517
+
526 communicator &operator=(const communicator &other) noexcept {
+
527 if (this != &other) {
+
528 if (is_valid()) {
+
529 int result_1;
+
530 MPI_Comm_compare(comm_, MPI_COMM_WORLD, &result_1);
+
531 int result_2;
+
532 MPI_Comm_compare(comm_, MPI_COMM_SELF, &result_2);
+
533 if (result_1 != MPI_IDENT and result_2 != MPI_IDENT)
+
534 MPI_Comm_free(&comm_);
+
535 }
+
536 MPI_Comm_dup(other.comm_, &comm_);
+
537 }
+
538 return *this;
+
539 }
+
540
+ +
547 if (this != &other) {
+
548 if (is_valid()) {
+
549 int result_1;
+
550 MPI_Comm_compare(comm_, MPI_COMM_WORLD, &result_1);
+
551 int result_2;
+
552 MPI_Comm_compare(comm_, MPI_COMM_SELF, &result_2);
+
553 if (result_1 != MPI_IDENT and result_2 != MPI_IDENT)
+
554 MPI_Comm_free(&comm_);
+
555 }
+
556 comm_ = other.comm_;
+
557 other.comm_ = MPI_COMM_NULL;
+
558 }
+
559 return *this;
+
560 }
+
561
+
564 [[nodiscard]] int size() const {
+
565 int result;
+
566 MPI_Comm_size(comm_, &result);
+
567 return result;
+
568 }
+
569
+
572 [[nodiscard]] int rank() const {
+
573 int result;
+
574 MPI_Comm_rank(comm_, &result);
+
575 return result;
+
576 }
+
577
+
581 bool operator==(const communicator &other) const {
+
582 int result;
+
583 MPI_Comm_compare(comm_, other.comm_, &result);
+
584 return result == MPI_IDENT;
+
585 }
+
586
+
590 bool operator!=(const communicator &other) const {
+
591 int result;
+
592 MPI_Comm_compare(comm_, other.comm_, &result);
+
593 return result != MPI_IDENT;
+
594 }
+
595
+
599 [[nodiscard]] equality_type compare(const communicator &other) const {
+
600 int result;
+
601 MPI_Comm_compare(comm_, other.comm_, &result);
+
602 return static_cast<equality_type>(result);
+
603 }
+
604
+
609 [[nodiscard]] bool is_valid() const { return comm_ != MPI_COMM_NULL; }
+
610
+
614 void abort(int err) const { MPI_Abort(comm_, err); }
615
- +
616 friend class group;
617
-
618 // === point to point ==============================================
+
618 friend class cartesian_communicator;
619
-
620 // === standard send ===
-
621 // --- blocking standard send ---
-
622 private:
-
623 template<typename T>
-
624 void send(const T &data, int destination, tag_t t, detail::basic_or_fixed_size_type) const {
-
625 MPI_Send(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
-
626 static_cast<int>(t), comm_);
-
627 }
-
628
-
629 template<typename T>
-
630 void send(const T &data, int destination, tag_t t,
-
631 detail::contiguous_const_stl_container) const {
-
632 using value_type = typename T::value_type;
-
633 const vector_layout<value_type> l(data.size());
-
634 send(data.size() > 0 ? &data[0] : nullptr, l, destination, t);
+
620 friend class graph_communicator;
+
621
+ +
623
+
624 friend class environment::detail::env;
+
625
+
626 // === point to point ==============================================
+
627
+
628 // === standard send ===
+
629 // --- blocking standard send ---
+
630 private:
+
631 template<typename T>
+
632 void send(const T &data, int destination, tag_t t, detail::basic_or_fixed_size_type) const {
+
633 MPI_Send(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
+
634 static_cast<int>(t), comm_);
635 }
636
637 template<typename T>
-
638 void send(const T &data, int destination, tag_t t, detail::stl_container) const {
-
639 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
-
640 detail::vector<value_type> serial_data(data.size(), std::begin(data));
-
641 const vector_layout<value_type> l(serial_data.size());
-
642 send(serial_data.data(), l, destination, t);
+
638 void send(const T &data, int destination, tag_t t,
+
639 detail::contiguous_const_stl_container) const {
+
640 using value_type = typename T::value_type;
+
641 const vector_layout<value_type> l(data.size());
+
642 send(data.size() > 0 ? &data[0] : nullptr, l, destination, t);
643 }
644
-
645 public:
-
656 template<typename T>
-
657 void send(const T &data, int destination, tag_t t = tag_t(0)) const {
-
658 check_dest(destination);
-
659 check_send_tag(t);
-
660 check_container_size(data);
-
661 send(data, destination, t, typename detail::datatype_traits<T>::data_type_category{});
-
662 }
-
663
-
672 template<typename T>
-
673 void send(const T *data, const layout<T> &l, int destination, tag_t t = tag_t(0)) const {
-
674 check_dest(destination);
-
675 check_send_tag(t);
-
676 MPI_Send(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
-
677 static_cast<int>(t), comm_);
-
678 }
-
679
-
693 template<typename iterT>
-
694 void send(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
-
695 using value_type = typename std::iterator_traits<iterT>::value_type;
-
696 static_assert(std::is_reference_v<decltype(*begin)>,
-
697 "iterator de-referencing must yield a reference");
-
698 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
699 const vector_layout<value_type> l(std::distance(begin, end));
-
700 send(&(*begin), l, destination, t);
-
701 } else {
-
702 const iterator_layout<value_type> l(begin, end);
-
703 send(&(*begin), l, destination, t);
-
704 }
-
705 }
-
706
-
707 // --- non-blocking standard send ---
-
708 private:
-
709 template<typename T>
-
710 impl::irequest isend(const T &data, int destination, tag_t t,
-
711 detail::basic_or_fixed_size_type) const {
-
712 MPI_Request req;
-
713 MPI_Isend(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
-
714 static_cast<int>(t), comm_, &req);
-
715 return impl::irequest{req};
-
716 }
-
717
-
718 template<typename T>
-
719 void isend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
-
720 detail::contiguous_const_stl_container) const {
-
721 using value_type = typename T::value_type;
-
722 const int count(data.size());
-
723 MPI_Datatype datatype{detail::datatype_traits<value_type>::get_datatype()};
-
724 MPI_Request req;
-
725 MPI_Isend(data.size() > 0 ? &data[0] : nullptr, count, datatype, destination,
-
726 static_cast<int>(t), comm_, &req);
-
727 MPI_Status s;
-
728 MPI_Wait(&req, &s);
-
729 isend_state->source = s.MPI_SOURCE;
-
730 isend_state->tag = s.MPI_TAG;
-
731 isend_state->datatype = datatype;
-
732 isend_state->count = 0;
-
733 MPI_Grequest_complete(isend_state->req);
-
734 }
-
735
-
736 template<typename T>
-
737 void isend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
-
738 detail::stl_container) const {
-
739 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
-
740 const detail::vector<value_type> serial_data(data.size(), std::begin(data));
-
741 isend(serial_data, destination, t, isend_state, detail::contiguous_const_stl_container{});
+
645 template<typename T>
+
646 void send(const T &data, int destination, tag_t t, detail::stl_container) const {
+
647 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
+
648 detail::vector<value_type> serial_data(data.size(), std::begin(data));
+
649 const vector_layout<value_type> l(serial_data.size());
+
650 send(serial_data.data(), l, destination, t);
+
651 }
+
652
+
653 public:
+
664 template<typename T>
+
665 void send(const T &data, int destination, tag_t t = tag_t(0)) const {
+
666 check_dest(destination);
+
667 check_send_tag(t);
+
668 check_container_size(data);
+
669 send(data, destination, t, typename detail::datatype_traits<T>::data_type_category{});
+
670 }
+
671
+
680 template<typename T>
+
681 void send(const T *data, const layout<T> &l, int destination, tag_t t = tag_t(0)) const {
+
682 check_dest(destination);
+
683 check_send_tag(t);
+
684 MPI_Send(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
+
685 static_cast<int>(t), comm_);
+
686 }
+
687
+
701 template<typename iterT>
+
702 void send(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
+
703 using value_type = typename std::iterator_traits<iterT>::value_type;
+
704 static_assert(std::is_reference_v<decltype(*begin)>,
+
705 "iterator de-referencing must yield a reference");
+
706 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
707 const vector_layout<value_type> l(std::distance(begin, end));
+
708 send(&(*begin), l, destination, t);
+
709 } else {
+
710 const iterator_layout<value_type> l(begin, end);
+
711 send(&(*begin), l, destination, t);
+
712 }
+
713 }
+
714
+
715 // --- non-blocking standard send ---
+
716 private:
+
717 template<typename T>
+
718 impl::irequest isend(const T &data, int destination, tag_t t,
+
719 detail::basic_or_fixed_size_type) const {
+
720 MPI_Request req;
+
721 MPI_Isend(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
+
722 static_cast<int>(t), comm_, &req);
+
723 return impl::irequest{req};
+
724 }
+
725
+
726 template<typename T>
+
727 void isend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
+
728 detail::contiguous_const_stl_container) const {
+
729 using value_type = typename T::value_type;
+
730 const int count(data.size());
+
731 MPI_Datatype datatype{detail::datatype_traits<value_type>::get_datatype()};
+
732 MPI_Request req;
+
733 MPI_Isend(data.size() > 0 ? &data[0] : nullptr, count, datatype, destination,
+
734 static_cast<int>(t), comm_, &req);
+
735 MPI_Status s;
+
736 MPI_Wait(&req, &s);
+
737 isend_state->source = s.MPI_SOURCE;
+
738 isend_state->tag = s.MPI_TAG;
+
739 isend_state->datatype = datatype;
+
740 isend_state->count = 0;
+
741 MPI_Grequest_complete(isend_state->req);
742 }
743
-
744 template<typename T, typename C>
-
745 impl::irequest isend(const T &data, int destination, tag_t t, C) const {
-
746 isend_irecv_state *send_state{new isend_irecv_state()};
-
747 MPI_Request req;
-
748 MPI_Grequest_start(isend_irecv_query, isend_irecv_free, isend_irecv_cancel, send_state,
-
749 &req);
-
750 send_state->req = req;
-
751 std::thread thread([this, &data, destination, t, send_state]() {
-
752 isend(data, destination, t, send_state, C{});
-
753 });
-
754 thread.detach();
-
755 return impl::irequest{req};
-
756 }
-
757
-
758 public:
-
770 template<typename T>
-
771 irequest isend(const T &data, int destination, tag_t t = tag_t(0)) const {
-
772 check_dest(destination);
-
773 check_send_tag(t);
-
774 check_container_size(data);
-
775 return isend(data, destination, t,
-
776 typename detail::datatype_traits<T>::data_type_category{});
-
777 }
-
778
-
788 template<typename T>
-
789 irequest isend(const T *data, const layout<T> &l, int destination,
-
790 tag_t t = tag_t(0)) const {
-
791 check_dest(destination);
-
792 check_send_tag(t);
-
793 MPI_Request req;
-
794 MPI_Isend(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
-
795 static_cast<int>(t), comm_, &req);
-
796 return impl::irequest{req};
-
797 }
-
798
-
813 template<typename iterT>
-
814 irequest isend(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
-
815 using value_type = typename std::iterator_traits<iterT>::value_type;
-
816 static_assert(std::is_reference_v<decltype(*begin)>,
-
817 "iterator de-referencing must yield a reference");
-
818 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
819 const vector_layout<value_type> l(std::distance(begin, end));
-
820 return isend(&(*begin), l, destination, t);
-
821 } else {
-
822 const iterator_layout<value_type> l(begin, end);
-
823 return isend(&(*begin), l, destination, t);
-
824 }
-
825 }
-
826
-
827 // --- persistent standard send ---
-
837 template<typename T>
-
838 prequest send_init(const T &data, int destination, tag_t t = tag_t(0)) const {
-
839 check_dest(destination);
-
840 check_send_tag(t);
-
841 MPI_Request req;
-
842 MPI_Send_init(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
-
843 static_cast<int>(t), comm_, &req);
-
844 return impl::prequest(req);
-
845 }
-
846
-
856 template<typename T>
-
857 prequest send_init(const T *data, const layout<T> &l, int destination,
-
858 tag_t t = tag_t(0)) const {
-
859 check_dest(destination);
-
860 check_send_tag(t);
-
861 MPI_Request req;
-
862 MPI_Send_init(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
-
863 static_cast<int>(t), comm_, &req);
-
864 return impl::prequest{req};
-
865 }
-
866
-
881 template<typename iterT>
-
882 prequest send_init(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
-
883 using value_type = typename std::iterator_traits<iterT>::value_type;
-
884 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
885 const vector_layout<value_type> l(std::distance(begin, end));
-
886 return send_init(&(*begin), l, destination, t);
-
887 } else {
-
888 const iterator_layout<value_type> l(begin, end);
-
889 return send_init(&(*begin), l, destination, t);
-
890 }
-
891 }
-
892
-
893 // === buffered send ===
-
894 // --- determine buffer size ---
-
901 template<typename T>
-
902 [[nodiscard]] int bsend_size(int number = 1) const {
-
903 int pack_size{0};
-
904 MPI_Pack_size(number, detail::datatype_traits<T>::get_datatype(), comm_, &pack_size);
-
905 return pack_size + MPI_BSEND_OVERHEAD;
-
906 }
-
907
-
913 template<typename T>
-
914 [[nodiscard]] int bsend_size(const layout<T> &l, int number = 1) const {
-
915 int pack_size{0};
-
916 MPI_Pack_size(number, detail::datatype_traits<layout<T>>::get_datatype(l), comm_,
-
917 &pack_size);
-
918 return pack_size + MPI_BSEND_OVERHEAD;
-
919 }
-
920
-
921 // --- blocking buffered send ---
-
922 private:
+
744 template<typename T>
+
745 void isend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
+
746 detail::stl_container) const {
+
747 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
+
748 const detail::vector<value_type> serial_data(data.size(), std::begin(data));
+
749 isend(serial_data, destination, t, isend_state, detail::contiguous_const_stl_container{});
+
750 }
+
751
+
752 template<typename T, typename C>
+
753 impl::irequest isend(const T &data, int destination, tag_t t, C) const {
+
754 isend_irecv_state *send_state{new isend_irecv_state()};
+
755 MPI_Request req;
+
756 MPI_Grequest_start(isend_irecv_query, isend_irecv_free, isend_irecv_cancel, send_state,
+
757 &req);
+
758 send_state->req = req;
+
759 std::thread thread([this, &data, destination, t, send_state]() {
+
760 isend(data, destination, t, send_state, C{});
+
761 });
+
762 thread.detach();
+
763 return impl::irequest{req};
+
764 }
+
765
+
766 public:
+
778 template<typename T>
+
779 irequest isend(const T &data, int destination, tag_t t = tag_t(0)) const {
+
780 check_dest(destination);
+
781 check_send_tag(t);
+
782 check_container_size(data);
+
783 return isend(data, destination, t,
+
784 typename detail::datatype_traits<T>::data_type_category{});
+
785 }
+
786
+
796 template<typename T>
+
797 irequest isend(const T *data, const layout<T> &l, int destination,
+
798 tag_t t = tag_t(0)) const {
+
799 check_dest(destination);
+
800 check_send_tag(t);
+
801 MPI_Request req;
+
802 MPI_Isend(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
+
803 static_cast<int>(t), comm_, &req);
+
804 return impl::irequest{req};
+
805 }
+
806
+
821 template<typename iterT>
+
822 irequest isend(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
+
823 using value_type = typename std::iterator_traits<iterT>::value_type;
+
824 static_assert(std::is_reference_v<decltype(*begin)>,
+
825 "iterator de-referencing must yield a reference");
+
826 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
827 const vector_layout<value_type> l(std::distance(begin, end));
+
828 return isend(&(*begin), l, destination, t);
+
829 } else {
+
830 const iterator_layout<value_type> l(begin, end);
+
831 return isend(&(*begin), l, destination, t);
+
832 }
+
833 }
+
834
+
835 // --- persistent standard send ---
+
845 template<typename T>
+
846 prequest send_init(const T &data, int destination, tag_t t = tag_t(0)) const {
+
847 check_dest(destination);
+
848 check_send_tag(t);
+
849 MPI_Request req;
+
850 MPI_Send_init(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
+
851 static_cast<int>(t), comm_, &req);
+
852 return impl::prequest(req);
+
853 }
+
854
+
864 template<typename T>
+
865 prequest send_init(const T *data, const layout<T> &l, int destination,
+
866 tag_t t = tag_t(0)) const {
+
867 check_dest(destination);
+
868 check_send_tag(t);
+
869 MPI_Request req;
+
870 MPI_Send_init(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
+
871 static_cast<int>(t), comm_, &req);
+
872 return impl::prequest{req};
+
873 }
+
874
+
889 template<typename iterT>
+
890 prequest send_init(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
+
891 using value_type = typename std::iterator_traits<iterT>::value_type;
+
892 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
893 const vector_layout<value_type> l(std::distance(begin, end));
+
894 return send_init(&(*begin), l, destination, t);
+
895 } else {
+
896 const iterator_layout<value_type> l(begin, end);
+
897 return send_init(&(*begin), l, destination, t);
+
898 }
+
899 }
+
900
+
901 // === buffered send ===
+
902 // --- determine buffer size ---
+
910 template<typename T>
+
911 [[nodiscard]] int bsend_size(int number = 1) const {
+
912 int pack_size{0};
+
913 MPI_Pack_size(number, detail::datatype_traits<T>::get_datatype(), comm_, &pack_size);
+
914 return pack_size + MPI_BSEND_OVERHEAD;
+
915 }
+
916
923 template<typename T>
-
924 void bsend(const T &data, int destination, tag_t t,
-
925 detail::basic_or_fixed_size_type) const {
-
926 MPI_Bsend(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
-
927 static_cast<int>(t), comm_);
-
928 }
-
929
-
930 template<typename T>
-
931 void bsend(const T &data, int destination, tag_t t,
-
932 detail::contiguous_const_stl_container) const {
-
933 using value_type = typename T::value_type;
-
934 const vector_layout<value_type> l(data.size());
-
935 bsend(data.size() > 0 ? &data[0] : nullptr, l, destination, t);
-
936 }
-
937
-
938 template<typename T>
-
939 void bsend(const T &data, int destination, tag_t t, detail::stl_container) const {
-
940 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
-
941 detail::vector<value_type> serial_data(data.size(), std::begin(data));
-
942 const vector_layout<value_type> l(serial_data.size());
-
943 bsend(serial_data.data(), l, destination, t);
-
944 }
-
945
-
946 public:
-
958 template<typename T>
-
959 void bsend(const T &data, int destination, tag_t t = tag_t(0)) const {
-
960 check_dest(destination);
-
961 check_send_tag(t);
-
962 check_container_size(data);
-
963 bsend(data, destination, t, typename detail::datatype_traits<T>::data_type_category{});
-
964 }
-
965
-
974 template<typename T>
-
975 void bsend(const T *data, const layout<T> &l, int destination, tag_t t = tag_t(0)) const {
-
976 check_dest(destination);
-
977 check_send_tag(t);
-
978 MPI_Bsend(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
-
979 static_cast<int>(t), comm_);
-
980 }
-
981
-
995 template<typename iterT>
-
996 void bsend(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
-
997 using value_type = typename std::iterator_traits<iterT>::value_type;
-
998 static_assert(std::is_reference_v<decltype(*begin)>,
-
999 "iterator de-referencing must yield a reference");
-
1000 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
1001 const vector_layout<value_type> l(std::distance(begin, end));
-
1002 bsend(&(*begin), l, destination, t);
-
1003 } else {
-
1004 const iterator_layout<value_type> l(begin, end);
-
1005 bsend(&(*begin), l, destination, t);
-
1006 }
-
1007 }
-
1008
-
1009 // --- non-blocking buffered send ---
-
1010 private:
-
1011 template<typename T>
-
1012 irequest ibsend(const T &data, int destination, tag_t t,
-
1013 detail::basic_or_fixed_size_type) const {
-
1014 MPI_Request req;
-
1015 MPI_Ibsend(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
-
1016 static_cast<int>(t), comm_, &req);
-
1017 return impl::irequest(req);
-
1018 }
-
1019
-
1020 template<typename T>
-
1021 void ibsend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
-
1022 detail::contiguous_const_stl_container) const {
-
1023 using value_type = typename T::value_type;
-
1024 const int count(data.size());
-
1025 MPI_Datatype datatype{detail::datatype_traits<value_type>::get_datatype()};
-
1026 MPI_Request req;
-
1027 MPI_Ibsend(data.size() > 0 ? &data[0] : nullptr, count, datatype, destination,
-
1028 static_cast<int>(t), comm_, &req);
-
1029 MPI_Status s;
-
1030 MPI_Wait(&req, &s);
-
1031 isend_state->source = s.MPI_SOURCE;
-
1032 isend_state->tag = s.MPI_TAG;
-
1033 isend_state->datatype = datatype;
-
1034 isend_state->count = 0;
-
1035 MPI_Grequest_complete(isend_state->req);
-
1036 }
-
1037
-
1038 template<typename T>
-
1039 void ibsend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
-
1040 detail::stl_container) const {
-
1041 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
-
1042 detail::vector<value_type> serial_data(data.size(), std::begin(data));
-
1043 ibsend(serial_data, destination, t, isend_state,
-
1044 detail::contiguous_const_stl_container{});
-
1045 }
-
1046
-
1047 template<typename T, typename C>
-
1048 irequest ibsend(const T &data, int destination, tag_t t, C) const {
-
1049 isend_irecv_state *send_state{new isend_irecv_state()};
-
1050 MPI_Request req;
-
1051 MPI_Grequest_start(isend_irecv_query, isend_irecv_free, isend_irecv_cancel, send_state,
-
1052 &req);
-
1053 send_state->req = req;
-
1054 std::thread thread([this, &data, destination, t, send_state]() {
-
1055 ibsend(data, destination, t, send_state, C{});
-
1056 });
-
1057 thread.detach();
-
1058 return impl::irequest(req);
-
1059 }
-
1060
-
1061 public:
-
1073 template<typename T>
-
1074 irequest ibsend(const T &data, int destination, tag_t t = tag_t(0)) const {
-
1075 check_dest(destination);
-
1076 check_send_tag(t);
-
1077 check_container_size(data);
-
1078 return ibsend(data, destination, t,
-
1079 typename detail::datatype_traits<T>::data_type_category{});
-
1080 }
-
1081
-
1091 template<typename T>
-
1092 irequest ibsend(const T *data, const layout<T> &l, int destination,
-
1093 tag_t t = tag_t(0)) const {
-
1094 check_dest(destination);
-
1095 check_send_tag(t);
-
1096 MPI_Request req;
-
1097 MPI_Ibsend(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
-
1098 static_cast<int>(t), comm_, &req);
-
1099 return impl::irequest(req);
-
1100 }
-
1101
-
1116 template<typename iterT>
-
1117 irequest ibsend(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
-
1118 using value_type = typename std::iterator_traits<iterT>::value_type;
-
1119 static_assert(std::is_reference_v<decltype(*begin)>,
-
1120 "iterator de-referencing must yield a reference");
-
1121 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
1122 const vector_layout<value_type> l(std::distance(begin, end));
-
1123 return ibsend(&(*begin), l, destination, t);
-
1124 } else {
-
1125 const iterator_layout<value_type> l(begin, end);
-
1126 return ibsend(&(*begin), l, destination, t);
-
1127 }
-
1128 }
-
1129
-
1130 // --- persistent buffered send ---
-
1140 template<typename T>
-
1141 prequest bsend_init(const T &data, int destination, tag_t t = tag_t(0)) const {
-
1142 check_dest(destination);
-
1143 check_send_tag(t);
-
1144 MPI_Request req;
-
1145 MPI_Bsend_init(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
-
1146 static_cast<int>(t), comm_, &req);
-
1147 return impl::prequest(req);
-
1148 }
-
1149
-
1159 template<typename T>
-
1160 prequest bsend_init(const T *data, const layout<T> &l, int destination,
-
1161 tag_t t = tag_t(0)) const {
-
1162 check_dest(destination);
-
1163 check_send_tag(t);
-
1164 MPI_Request req;
-
1165 MPI_Bsend_init(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
-
1166 static_cast<int>(t), comm_, &req);
-
1167 return impl::prequest(req);
-
1168 }
-
1169
-
1184 template<typename iterT>
-
1185 prequest bsend_init(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
-
1186 using value_type = typename std::iterator_traits<iterT>::value_type;
-
1187 static_assert(std::is_reference_v<decltype(*begin)>,
-
1188 "iterator de-referencing must yield a reference");
-
1189 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
1190 const vector_layout<value_type> l(std::distance(begin, end));
-
1191 return bsend_init(&(*begin), l, destination, t);
-
1192 } else {
-
1193 const iterator_layout<value_type> l(begin, end);
-
1194 return bsend_init(&(*begin), l, destination, t);
-
1195 }
-
1196 }
-
1197
-
1198 // === synchronous send ===
-
1199 // --- blocking synchronous send ---
-
1200 private:
-
1201 template<typename T>
-
1202 void ssend(const T &data, int destination, tag_t t,
-
1203 detail::basic_or_fixed_size_type) const {
-
1204 MPI_Ssend(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
-
1205 static_cast<int>(t), comm_);
+
924 [[nodiscard]] int bsend_size(const layout<T> &l, int number = 1) const {
+
925 int pack_size{0};
+
926 MPI_Pack_size(number, detail::datatype_traits<layout<T>>::get_datatype(l), comm_,
+
927 &pack_size);
+
928 return pack_size + MPI_BSEND_OVERHEAD;
+
929 }
+
930
+
931 // --- blocking buffered send ---
+
932 private:
+
933 template<typename T>
+
934 void bsend(const T &data, int destination, tag_t t,
+
935 detail::basic_or_fixed_size_type) const {
+
936 MPI_Bsend(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
+
937 static_cast<int>(t), comm_);
+
938 }
+
939
+
940 template<typename T>
+
941 void bsend(const T &data, int destination, tag_t t,
+
942 detail::contiguous_const_stl_container) const {
+
943 using value_type = typename T::value_type;
+
944 const vector_layout<value_type> l(data.size());
+
945 bsend(data.size() > 0 ? &data[0] : nullptr, l, destination, t);
+
946 }
+
947
+
948 template<typename T>
+
949 void bsend(const T &data, int destination, tag_t t, detail::stl_container) const {
+
950 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
+
951 detail::vector<value_type> serial_data(data.size(), std::begin(data));
+
952 const vector_layout<value_type> l(serial_data.size());
+
953 bsend(serial_data.data(), l, destination, t);
+
954 }
+
955
+
956 public:
+
968 template<typename T>
+
969 void bsend(const T &data, int destination, tag_t t = tag_t(0)) const {
+
970 check_dest(destination);
+
971 check_send_tag(t);
+
972 check_container_size(data);
+
973 bsend(data, destination, t, typename detail::datatype_traits<T>::data_type_category{});
+
974 }
+
975
+
984 template<typename T>
+
985 void bsend(const T *data, const layout<T> &l, int destination, tag_t t = tag_t(0)) const {
+
986 check_dest(destination);
+
987 check_send_tag(t);
+
988 MPI_Bsend(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
+
989 static_cast<int>(t), comm_);
+
990 }
+
991
+
1005 template<typename iterT>
+
1006 void bsend(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
+
1007 using value_type = typename std::iterator_traits<iterT>::value_type;
+
1008 static_assert(std::is_reference_v<decltype(*begin)>,
+
1009 "iterator de-referencing must yield a reference");
+
1010 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
1011 const vector_layout<value_type> l(std::distance(begin, end));
+
1012 bsend(&(*begin), l, destination, t);
+
1013 } else {
+
1014 const iterator_layout<value_type> l(begin, end);
+
1015 bsend(&(*begin), l, destination, t);
+
1016 }
+
1017 }
+
1018
+
1019 // --- non-blocking buffered send ---
+
1020 private:
+
1021 template<typename T>
+
1022 irequest ibsend(const T &data, int destination, tag_t t,
+
1023 detail::basic_or_fixed_size_type) const {
+
1024 MPI_Request req;
+
1025 MPI_Ibsend(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
+
1026 static_cast<int>(t), comm_, &req);
+
1027 return impl::irequest(req);
+
1028 }
+
1029
+
1030 template<typename T>
+
1031 void ibsend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
+
1032 detail::contiguous_const_stl_container) const {
+
1033 using value_type = typename T::value_type;
+
1034 const int count(data.size());
+
1035 MPI_Datatype datatype{detail::datatype_traits<value_type>::get_datatype()};
+
1036 MPI_Request req;
+
1037 MPI_Ibsend(data.size() > 0 ? &data[0] : nullptr, count, datatype, destination,
+
1038 static_cast<int>(t), comm_, &req);
+
1039 MPI_Status s;
+
1040 MPI_Wait(&req, &s);
+
1041 isend_state->source = s.MPI_SOURCE;
+
1042 isend_state->tag = s.MPI_TAG;
+
1043 isend_state->datatype = datatype;
+
1044 isend_state->count = 0;
+
1045 MPI_Grequest_complete(isend_state->req);
+
1046 }
+
1047
+
1048 template<typename T>
+
1049 void ibsend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
+
1050 detail::stl_container) const {
+
1051 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
+
1052 detail::vector<value_type> serial_data(data.size(), std::begin(data));
+
1053 ibsend(serial_data, destination, t, isend_state,
+
1054 detail::contiguous_const_stl_container{});
+
1055 }
+
1056
+
1057 template<typename T, typename C>
+
1058 irequest ibsend(const T &data, int destination, tag_t t, C) const {
+
1059 isend_irecv_state *send_state{new isend_irecv_state()};
+
1060 MPI_Request req;
+
1061 MPI_Grequest_start(isend_irecv_query, isend_irecv_free, isend_irecv_cancel, send_state,
+
1062 &req);
+
1063 send_state->req = req;
+
1064 std::thread thread([this, &data, destination, t, send_state]() {
+
1065 ibsend(data, destination, t, send_state, C{});
+
1066 });
+
1067 thread.detach();
+
1068 return impl::irequest(req);
+
1069 }
+
1070
+
1071 public:
+
1083 template<typename T>
+
1084 irequest ibsend(const T &data, int destination, tag_t t = tag_t(0)) const {
+
1085 check_dest(destination);
+
1086 check_send_tag(t);
+
1087 check_container_size(data);
+
1088 return ibsend(data, destination, t,
+
1089 typename detail::datatype_traits<T>::data_type_category{});
+
1090 }
+
1091
+
1101 template<typename T>
+
1102 irequest ibsend(const T *data, const layout<T> &l, int destination,
+
1103 tag_t t = tag_t(0)) const {
+
1104 check_dest(destination);
+
1105 check_send_tag(t);
+
1106 MPI_Request req;
+
1107 MPI_Ibsend(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
+
1108 static_cast<int>(t), comm_, &req);
+
1109 return impl::irequest(req);
+
1110 }
+
1111
+
1126 template<typename iterT>
+
1127 irequest ibsend(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
+
1128 using value_type = typename std::iterator_traits<iterT>::value_type;
+
1129 static_assert(std::is_reference_v<decltype(*begin)>,
+
1130 "iterator de-referencing must yield a reference");
+
1131 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
1132 const vector_layout<value_type> l(std::distance(begin, end));
+
1133 return ibsend(&(*begin), l, destination, t);
+
1134 } else {
+
1135 const iterator_layout<value_type> l(begin, end);
+
1136 return ibsend(&(*begin), l, destination, t);
+
1137 }
+
1138 }
+
1139
+
1140 // --- persistent buffered send ---
+
1150 template<typename T>
+
1151 prequest bsend_init(const T &data, int destination, tag_t t = tag_t(0)) const {
+
1152 check_dest(destination);
+
1153 check_send_tag(t);
+
1154 MPI_Request req;
+
1155 MPI_Bsend_init(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
+
1156 static_cast<int>(t), comm_, &req);
+
1157 return impl::prequest(req);
+
1158 }
+
1159
+
1169 template<typename T>
+
1170 prequest bsend_init(const T *data, const layout<T> &l, int destination,
+
1171 tag_t t = tag_t(0)) const {
+
1172 check_dest(destination);
+
1173 check_send_tag(t);
+
1174 MPI_Request req;
+
1175 MPI_Bsend_init(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
+
1176 static_cast<int>(t), comm_, &req);
+
1177 return impl::prequest(req);
+
1178 }
+
1179
+
1194 template<typename iterT>
+
1195 prequest bsend_init(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
+
1196 using value_type = typename std::iterator_traits<iterT>::value_type;
+
1197 static_assert(std::is_reference_v<decltype(*begin)>,
+
1198 "iterator de-referencing must yield a reference");
+
1199 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
1200 const vector_layout<value_type> l(std::distance(begin, end));
+
1201 return bsend_init(&(*begin), l, destination, t);
+
1202 } else {
+
1203 const iterator_layout<value_type> l(begin, end);
+
1204 return bsend_init(&(*begin), l, destination, t);
+
1205 }
1206 }
1207
-
1208 template<typename T>
-
1209 void ssend(const T &data, int destination, tag_t t,
-
1210 detail::contiguous_const_stl_container) const {
-
1211 using value_type = typename T::value_type;
-
1212 const vector_layout<value_type> l(data.size());
-
1213 ssend(data.size() > 0 ? &data[0] : nullptr, l, destination, t);
-
1214 }
-
1215
-
1216 template<typename T>
-
1217 void ssend(const T &data, int destination, tag_t t, detail::stl_container) const {
-
1218 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
-
1219 detail::vector<value_type> serial_data(data.size(), std::begin(data));
-
1220 const vector_layout<value_type> l(serial_data.size());
-
1221 ssend(serial_data.data(), l, destination, t);
-
1222 }
-
1223
-
1224 public:
-
1235 template<typename T>
-
1236 void ssend(const T &data, int destination, tag_t t = tag_t(0)) const {
-
1237 check_dest(destination);
-
1238 check_send_tag(t);
-
1239 ssend(data, destination, t, typename detail::datatype_traits<T>::data_type_category{});
-
1240 }
-
1241
-
1250 template<typename T>
-
1251 void ssend(const T *data, const layout<T> &l, int destination, tag_t t = tag_t(0)) const {
-
1252 check_dest(destination);
-
1253 check_send_tag(t);
-
1254 MPI_Ssend(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
-
1255 static_cast<int>(t), comm_);
-
1256 }
-
1257
-
1271 template<typename iterT>
-
1272 void ssend(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
-
1273 using value_type = typename std::iterator_traits<iterT>::value_type;
-
1274 static_assert(std::is_reference_v<decltype(*begin)>,
-
1275 "iterator de-referencing must yield a reference");
-
1276 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
1277 const vector_layout<value_type> l(std::distance(begin, end));
-
1278 ssend(&(*begin), l, destination, t);
-
1279 } else {
-
1280 const iterator_layout<value_type> l(begin, end);
-
1281 ssend(&(*begin), l, destination, t);
-
1282 }
-
1283 }
-
1284
-
1285 // --- non-blocking synchronous send ---
-
1286 private:
-
1287 template<typename T>
-
1288 irequest issend(const T &data, int destination, tag_t t,
-
1289 detail::basic_or_fixed_size_type) const {
-
1290 MPI_Request req;
-
1291 MPI_Issend(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
-
1292 static_cast<int>(t), comm_, &req);
-
1293 return impl::irequest(req);
-
1294 }
-
1295
-
1296 template<typename T>
-
1297 void issend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
-
1298 detail::contiguous_const_stl_container) const {
-
1299 using value_type = typename T::value_type;
-
1300 const int count(data.size());
-
1301 MPI_Datatype datatype{detail::datatype_traits<value_type>::get_datatype()};
-
1302 MPI_Request req;
-
1303 MPI_Issend(data.size() > 0 ? &data[0] : nullptr, count, datatype, destination,
-
1304 static_cast<int>(t), comm_, &req);
-
1305 MPI_Status s;
-
1306 MPI_Wait(&req, &s);
-
1307 isend_state->source = s.MPI_SOURCE;
-
1308 isend_state->tag = s.MPI_TAG;
-
1309 isend_state->datatype = datatype;
-
1310 isend_state->count = 0;
-
1311 MPI_Grequest_complete(isend_state->req);
-
1312 }
-
1313
-
1314 template<typename T>
-
1315 void issend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
-
1316 detail::stl_container) const {
-
1317 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
-
1318 detail::vector<value_type> serial_data(data.size(), std::begin(data));
-
1319 issend(serial_data, destination, t, isend_state,
-
1320 detail::contiguous_const_stl_container{});
-
1321 }
-
1322
-
1323 template<typename T, typename C>
-
1324 irequest issend(const T &data, int destination, tag_t t, C) const {
-
1325 isend_irecv_state *send_state{new isend_irecv_state()};
-
1326 MPI_Request req;
-
1327 MPI_Grequest_start(isend_irecv_query, isend_irecv_free, isend_irecv_cancel, send_state,
-
1328 &req);
-
1329 send_state->req = req;
-
1330 std::thread thread([this, &data, destination, t, send_state]() {
-
1331 issend(data, destination, t, send_state, C{});
-
1332 });
-
1333 thread.detach();
-
1334 return impl::irequest(req);
-
1335 }
-
1336
-
1337 public:
-
1346 template<typename T>
-
1347 irequest issend(const T &data, int destination, tag_t t = tag_t(0)) const {
-
1348 check_dest(destination);
-
1349 check_send_tag(t);
-
1350 check_container_size(data);
-
1351 return issend(data, destination, t,
-
1352 typename detail::datatype_traits<T>::data_type_category{});
-
1353 }
-
1354
-
1364 template<typename T>
-
1365 irequest issend(const T *data, const layout<T> &l, int destination,
-
1366 tag_t t = tag_t(0)) const {
-
1367 check_dest(destination);
-
1368 check_send_tag(t);
-
1369 MPI_Request req;
-
1370 MPI_Issend(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
-
1371 static_cast<int>(t), comm_, &req);
-
1372 return impl::irequest(req);
-
1373 }
-
1374
-
1389 template<typename iterT>
-
1390 irequest issend(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
-
1391 using value_type = typename std::iterator_traits<iterT>::value_type;
-
1392 static_assert(std::is_reference_v<decltype(*begin)>,
-
1393 "iterator de-referencing must yield a reference");
-
1394 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
1395 const vector_layout<value_type> l(std::distance(begin, end));
-
1396 return issend(&(*begin), l, destination, t);
-
1397 } else {
-
1398 const iterator_layout<value_type> l(begin, end);
-
1399 return issend(&(*begin), l, destination, t);
-
1400 }
-
1401 }
-
1402
-
1403 // --- persistent synchronous send ---
-
1413 template<typename T>
-
1414 prequest ssend_init(const T &data, int destination, tag_t t = tag_t(0)) const {
-
1415 check_dest(destination);
-
1416 check_send_tag(t);
-
1417 MPI_Request req;
-
1418 MPI_Ssend_init(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
-
1419 static_cast<int>(t), comm_, &req);
-
1420 return impl::prequest(req);
-
1421 }
-
1422
-
1432 template<typename T>
-
1433 prequest ssend_init(const T *data, const layout<T> &l, int destination,
-
1434 tag_t t = tag_t(0)) const {
-
1435 check_dest(destination);
-
1436 check_send_tag(t);
-
1437 MPI_Request req;
-
1438 MPI_Ssend_init(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
-
1439 static_cast<int>(t), comm_, &req);
-
1440 return impl::prequest(req);
-
1441 }
-
1442
-
1457 template<typename iterT>
-
1458 prequest ssend_init(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
-
1459 using value_type = typename std::iterator_traits<iterT>::value_type;
-
1460 static_assert(std::is_reference_v<decltype(*begin)>,
-
1461 "iterator de-referencing must yield a reference");
-
1462 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
1463 const vector_layout<value_type> l(std::distance(begin, end));
-
1464 return ssend_init(&(*begin), l, destination, t);
-
1465 } else {
-
1466 const iterator_layout<value_type> l(begin, end);
-
1467 return ssend_init(&(*begin), l, destination, t);
-
1468 }
-
1469 }
-
1470
-
1471 // === ready send ===
-
1472 // --- blocking ready send ---
-
1473 private:
-
1474 template<typename T>
-
1475 void rsend(const T &data, int destination, tag_t t,
-
1476 detail::basic_or_fixed_size_type) const {
-
1477 MPI_Rsend(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
-
1478 static_cast<int>(t), comm_);
+
1208 // === synchronous send ===
+
1209 // --- blocking synchronous send ---
+
1210 private:
+
1211 template<typename T>
+
1212 void ssend(const T &data, int destination, tag_t t,
+
1213 detail::basic_or_fixed_size_type) const {
+
1214 MPI_Ssend(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
+
1215 static_cast<int>(t), comm_);
+
1216 }
+
1217
+
1218 template<typename T>
+
1219 void ssend(const T &data, int destination, tag_t t,
+
1220 detail::contiguous_const_stl_container) const {
+
1221 using value_type = typename T::value_type;
+
1222 const vector_layout<value_type> l(data.size());
+
1223 ssend(data.size() > 0 ? &data[0] : nullptr, l, destination, t);
+
1224 }
+
1225
+
1226 template<typename T>
+
1227 void ssend(const T &data, int destination, tag_t t, detail::stl_container) const {
+
1228 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
+
1229 detail::vector<value_type> serial_data(data.size(), std::begin(data));
+
1230 const vector_layout<value_type> l(serial_data.size());
+
1231 ssend(serial_data.data(), l, destination, t);
+
1232 }
+
1233
+
1234 public:
+
1245 template<typename T>
+
1246 void ssend(const T &data, int destination, tag_t t = tag_t(0)) const {
+
1247 check_dest(destination);
+
1248 check_send_tag(t);
+
1249 ssend(data, destination, t, typename detail::datatype_traits<T>::data_type_category{});
+
1250 }
+
1251
+
1260 template<typename T>
+
1261 void ssend(const T *data, const layout<T> &l, int destination, tag_t t = tag_t(0)) const {
+
1262 check_dest(destination);
+
1263 check_send_tag(t);
+
1264 MPI_Ssend(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
+
1265 static_cast<int>(t), comm_);
+
1266 }
+
1267
+
1281 template<typename iterT>
+
1282 void ssend(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
+
1283 using value_type = typename std::iterator_traits<iterT>::value_type;
+
1284 static_assert(std::is_reference_v<decltype(*begin)>,
+
1285 "iterator de-referencing must yield a reference");
+
1286 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
1287 const vector_layout<value_type> l(std::distance(begin, end));
+
1288 ssend(&(*begin), l, destination, t);
+
1289 } else {
+
1290 const iterator_layout<value_type> l(begin, end);
+
1291 ssend(&(*begin), l, destination, t);
+
1292 }
+
1293 }
+
1294
+
1295 // --- non-blocking synchronous send ---
+
1296 private:
+
1297 template<typename T>
+
1298 irequest issend(const T &data, int destination, tag_t t,
+
1299 detail::basic_or_fixed_size_type) const {
+
1300 MPI_Request req;
+
1301 MPI_Issend(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
+
1302 static_cast<int>(t), comm_, &req);
+
1303 return impl::irequest(req);
+
1304 }
+
1305
+
1306 template<typename T>
+
1307 void issend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
+
1308 detail::contiguous_const_stl_container) const {
+
1309 using value_type = typename T::value_type;
+
1310 const int count(data.size());
+
1311 MPI_Datatype datatype{detail::datatype_traits<value_type>::get_datatype()};
+
1312 MPI_Request req;
+
1313 MPI_Issend(data.size() > 0 ? &data[0] : nullptr, count, datatype, destination,
+
1314 static_cast<int>(t), comm_, &req);
+
1315 MPI_Status s;
+
1316 MPI_Wait(&req, &s);
+
1317 isend_state->source = s.MPI_SOURCE;
+
1318 isend_state->tag = s.MPI_TAG;
+
1319 isend_state->datatype = datatype;
+
1320 isend_state->count = 0;
+
1321 MPI_Grequest_complete(isend_state->req);
+
1322 }
+
1323
+
1324 template<typename T>
+
1325 void issend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
+
1326 detail::stl_container) const {
+
1327 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
+
1328 detail::vector<value_type> serial_data(data.size(), std::begin(data));
+
1329 issend(serial_data, destination, t, isend_state,
+
1330 detail::contiguous_const_stl_container{});
+
1331 }
+
1332
+
1333 template<typename T, typename C>
+
1334 irequest issend(const T &data, int destination, tag_t t, C) const {
+
1335 isend_irecv_state *send_state{new isend_irecv_state()};
+
1336 MPI_Request req;
+
1337 MPI_Grequest_start(isend_irecv_query, isend_irecv_free, isend_irecv_cancel, send_state,
+
1338 &req);
+
1339 send_state->req = req;
+
1340 std::thread thread([this, &data, destination, t, send_state]() {
+
1341 issend(data, destination, t, send_state, C{});
+
1342 });
+
1343 thread.detach();
+
1344 return impl::irequest(req);
+
1345 }
+
1346
+
1347 public:
+
1356 template<typename T>
+
1357 irequest issend(const T &data, int destination, tag_t t = tag_t(0)) const {
+
1358 check_dest(destination);
+
1359 check_send_tag(t);
+
1360 check_container_size(data);
+
1361 return issend(data, destination, t,
+
1362 typename detail::datatype_traits<T>::data_type_category{});
+
1363 }
+
1364
+
1374 template<typename T>
+
1375 irequest issend(const T *data, const layout<T> &l, int destination,
+
1376 tag_t t = tag_t(0)) const {
+
1377 check_dest(destination);
+
1378 check_send_tag(t);
+
1379 MPI_Request req;
+
1380 MPI_Issend(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
+
1381 static_cast<int>(t), comm_, &req);
+
1382 return impl::irequest(req);
+
1383 }
+
1384
+
1399 template<typename iterT>
+
1400 irequest issend(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
+
1401 using value_type = typename std::iterator_traits<iterT>::value_type;
+
1402 static_assert(std::is_reference_v<decltype(*begin)>,
+
1403 "iterator de-referencing must yield a reference");
+
1404 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
1405 const vector_layout<value_type> l(std::distance(begin, end));
+
1406 return issend(&(*begin), l, destination, t);
+
1407 } else {
+
1408 const iterator_layout<value_type> l(begin, end);
+
1409 return issend(&(*begin), l, destination, t);
+
1410 }
+
1411 }
+
1412
+
1413 // --- persistent synchronous send ---
+
1423 template<typename T>
+
1424 prequest ssend_init(const T &data, int destination, tag_t t = tag_t(0)) const {
+
1425 check_dest(destination);
+
1426 check_send_tag(t);
+
1427 MPI_Request req;
+
1428 MPI_Ssend_init(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
+
1429 static_cast<int>(t), comm_, &req);
+
1430 return impl::prequest(req);
+
1431 }
+
1432
+
1442 template<typename T>
+
1443 prequest ssend_init(const T *data, const layout<T> &l, int destination,
+
1444 tag_t t = tag_t(0)) const {
+
1445 check_dest(destination);
+
1446 check_send_tag(t);
+
1447 MPI_Request req;
+
1448 MPI_Ssend_init(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
+
1449 static_cast<int>(t), comm_, &req);
+
1450 return impl::prequest(req);
+
1451 }
+
1452
+
1467 template<typename iterT>
+
1468 prequest ssend_init(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
+
1469 using value_type = typename std::iterator_traits<iterT>::value_type;
+
1470 static_assert(std::is_reference_v<decltype(*begin)>,
+
1471 "iterator de-referencing must yield a reference");
+
1472 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
1473 const vector_layout<value_type> l(std::distance(begin, end));
+
1474 return ssend_init(&(*begin), l, destination, t);
+
1475 } else {
+
1476 const iterator_layout<value_type> l(begin, end);
+
1477 return ssend_init(&(*begin), l, destination, t);
+
1478 }
1479 }
1480
-
1481 template<typename T>
-
1482 void rsend(const T &data, int destination, tag_t t,
-
1483 detail::contiguous_const_stl_container) const {
-
1484 using value_type = typename T::value_type;
-
1485 const vector_layout<value_type> l(data.size());
-
1486 rsend(data.size() > 0 ? &data[0] : nullptr, l, destination, t);
-
1487 }
-
1488
-
1489 template<typename T>
-
1490 void rsend(const T &data, int destination, tag_t t, detail::stl_container) const {
-
1491 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
-
1492 detail::vector<value_type> serial_data(data.size(), std::begin(data));
-
1493 const vector_layout<value_type> l(serial_data.size());
-
1494 rsend(serial_data.data(), l, destination, t);
-
1495 }
-
1496
-
1497 public:
-
1508 template<typename T>
-
1509 void rsend(const T &data, int destination, tag_t t = tag_t(0)) const {
-
1510 check_dest(destination);
-
1511 check_send_tag(t);
-
1512 check_container_size(data);
-
1513 rsend(data, destination, t, typename detail::datatype_traits<T>::data_type_category{});
-
1514 }
-
1515
-
1524 template<typename T>
-
1525 void rsend(const T *data, const layout<T> &l, int destination, tag_t t = tag_t(0)) const {
-
1526 check_dest(destination);
-
1527 check_send_tag(t);
-
1528 MPI_Rsend(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
-
1529 static_cast<int>(t), comm_);
-
1530 }
-
1531
-
1545 template<typename iterT>
-
1546 void rsend(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
-
1547 using value_type = typename std::iterator_traits<iterT>::value_type;
-
1548 static_assert(std::is_reference_v<decltype(*begin)>,
-
1549 "iterator de-referencing must yield a reference");
-
1550 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
1551 const vector_layout<value_type> l(std::distance(begin, end));
-
1552 rsend(&(*begin), l, destination, t);
-
1553 } else {
-
1554 const iterator_layout<value_type> l(begin, end);
-
1555 rsend(&(*begin), l, destination, t);
-
1556 }
-
1557 }
-
1558
-
1559 // --- non-blocking ready send ---
-
1560 private:
-
1561 template<typename T>
-
1562 irequest irsend(const T &data, int destination, tag_t t,
-
1563 detail::basic_or_fixed_size_type) const {
-
1564 MPI_Request req;
-
1565 MPI_Irsend(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
-
1566 static_cast<int>(t), comm_, &req);
-
1567 return impl::irequest(req);
-
1568 }
-
1569
-
1570 template<typename T>
-
1571 void irsend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
-
1572 detail::contiguous_const_stl_container) const {
-
1573 using value_type = typename T::value_type;
-
1574 const int count(data.size());
-
1575 MPI_Datatype datatype{detail::datatype_traits<value_type>::get_datatype()};
-
1576 MPI_Request req;
-
1577 MPI_Irsend(data.size() > 0 ? &data[0] : nullptr, count, datatype, destination,
-
1578 static_cast<int>(t), comm_, &req);
-
1579 MPI_Status s;
-
1580 MPI_Wait(&req, &s);
-
1581 isend_state->source = s.MPI_SOURCE;
-
1582 isend_state->tag = s.MPI_TAG;
-
1583 isend_state->datatype = datatype;
-
1584 isend_state->count = 0;
-
1585 MPI_Grequest_complete(isend_state->req);
-
1586 }
-
1587
-
1588 template<typename T>
-
1589 void irsend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
-
1590 detail::stl_container) const {
-
1591 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
-
1592 detail::vector<value_type> serial_data(data.size(), std::begin(data));
-
1593 irsend(serial_data, destination, t, isend_state,
-
1594 detail::contiguous_const_stl_container{});
-
1595 }
-
1596
-
1597 template<typename T, typename C>
-
1598 irequest irsend(const T &data, int destination, tag_t t, C) const {
-
1599 isend_irecv_state *send_state{new isend_irecv_state()};
-
1600 MPI_Request req;
-
1601 MPI_Grequest_start(isend_irecv_query, isend_irecv_free, isend_irecv_cancel, send_state,
-
1602 &req);
-
1603 send_state->req = req;
-
1604 std::thread thread([this, &data, destination, t, send_state]() {
-
1605 irsend(data, destination, t, send_state, C{});
-
1606 });
-
1607 thread.detach();
-
1608 return impl::irequest(req);
-
1609 }
-
1610
-
1611 public:
-
1623 template<typename T>
-
1624 irequest irsend(const T &data, int destination, tag_t t = tag_t(0)) const {
-
1625 check_dest(destination);
-
1626 check_send_tag(t);
-
1627 check_container_size(data);
-
1628 return irsend(data, destination, t,
-
1629 typename detail::datatype_traits<T>::data_type_category{});
-
1630 }
-
1631
-
1641 template<typename T>
-
1642 irequest irsend(const T *data, const layout<T> &l, int destination,
-
1643 tag_t t = tag_t(0)) const {
-
1644 check_dest(destination);
-
1645 check_send_tag(t);
-
1646 MPI_Request req;
-
1647 MPI_Irsend(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
-
1648 static_cast<int>(t), comm_, &req);
-
1649 return impl::irequest(req);
-
1650 }
-
1651
-
1666 template<typename iterT>
-
1667 irequest irsend(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
-
1668 using value_type = typename std::iterator_traits<iterT>::value_type;
-
1669 static_assert(std::is_reference_v<decltype(*begin)>,
-
1670 "iterator de-referencing must yield a reference");
-
1671 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
1672 const vector_layout<value_type> l(std::distance(begin, end));
-
1673 return irsend(&(*begin), l, destination, t);
-
1674 } else {
-
1675 const iterator_layout<value_type> l(begin, end);
-
1676 return irsend(&(*begin), l, destination, t);
-
1677 }
-
1678 }
-
1679
-
1680 // --- persistent ready send ---
-
1690 template<typename T>
-
1691 prequest rsend_init(const T &data, int destination, tag_t t = tag_t(0)) const {
-
1692 check_dest(destination);
-
1693 check_send_tag(t);
-
1694 MPI_Request req;
-
1695 MPI_Rsend_init(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
-
1696 static_cast<int>(t), comm_, &req);
-
1697 return impl::prequest(req);
-
1698 }
-
1699
-
1709 template<typename T>
-
1710 prequest rsend_init(const T *data, const layout<T> &l, int destination,
-
1711 tag_t t = tag_t(0)) const {
-
1712 check_dest(destination);
-
1713 check_send_tag(t);
-
1714 MPI_Request req;
-
1715 MPI_Rsend_init(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
-
1716 static_cast<int>(t), comm_, &req);
-
1717 return impl::prequest(req);
-
1718 }
-
1719
-
1734 template<typename iterT>
-
1735 prequest rsend_init(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
-
1736 using value_type = typename std::iterator_traits<iterT>::value_type;
-
1737 static_assert(std::is_reference_v<decltype(*begin)>,
-
1738 "iterator de-referencing must yield a reference");
-
1739 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
1740 const vector_layout<value_type> l(std::distance(begin, end));
-
1741 return rsend_init(&(*begin), l, destination, t);
-
1742 } else {
-
1743 const iterator_layout<value_type> l(begin, end);
-
1744 return rsend_init(&(*begin), l, destination, t);
-
1745 }
-
1746 }
-
1747
-
1748 // === receive ===
-
1749 // --- blocking receive ---
-
1750 private:
-
1751 template<typename T>
-
1752 status_t recv(T &data, int source, tag_t t, detail::basic_or_fixed_size_type) const {
-
1753 status_t s;
-
1754 MPI_Recv(&data, 1, detail::datatype_traits<T>::get_datatype(), source,
-
1755 static_cast<int>(t), comm_, static_cast<MPI_Status *>(&s));
-
1756 return s;
-
1757 }
-
1758
-
1759 template<typename T>
-
1760 status_t recv(T &data, int source, tag_t t, detail::contiguous_stl_container) const {
-
1761 using value_type = typename T::value_type;
-
1762 status_t s;
-
1763 auto *ps{static_cast<MPI_Status *>(&s)};
-
1764 MPI_Message message;
-
1765 MPI_Mprobe(source, static_cast<int>(t), comm_, &message, ps);
-
1766 int count{0};
-
1767 MPI_Get_count(ps, detail::datatype_traits<value_type>::get_datatype(), &count);
-
1768 check_count(count);
-
1769 data.resize(count);
-
1770 MPI_Mrecv(data.size() > 0 ? &data[0] : nullptr, count,
-
1771 detail::datatype_traits<value_type>::get_datatype(), &message, ps);
-
1772 return s;
-
1773 }
-
1774
-
1775 template<typename T>
-
1776 status_t recv(T &data, int source, tag_t t, detail::stl_container) const {
-
1777 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
-
1778 status_t s;
-
1779 auto *ps{static_cast<MPI_Status *>(&s)};
-
1780 MPI_Message message;
-
1781 MPI_Mprobe(source, static_cast<int>(t), comm_, &message, ps);
-
1782 int count{0};
-
1783 MPI_Get_count(ps, detail::datatype_traits<value_type>::get_datatype(), &count);
-
1784 check_count(count);
-
1785 detail::vector<value_type> serial_data(count, detail::uninitialized{});
-
1786 MPI_Mrecv(serial_data.data(), count, detail::datatype_traits<value_type>::get_datatype(),
-
1787 &message, ps);
-
1788 T new_data(serial_data.begin(), serial_data.end());
-
1789 data.swap(new_data);
-
1790 return s;
-
1791 }
-
1792
-
1793 public:
-
1806 template<typename T>
-
1807 status_t recv(T &data, int source, tag_t t = tag_t(0)) const {
-
1808 check_source(source);
-
1809 check_recv_tag(t);
-
1810 return recv(data, source, t, typename detail::datatype_traits<T>::data_type_category{});
-
1811 }
-
1812
-
1821 template<typename T>
-
1822 status_t recv(T *data, const layout<T> &l, int source, tag_t t = tag_t(0)) const {
-
1823 check_source(source);
-
1824 check_recv_tag(t);
-
1825 status_t s;
-
1826 MPI_Recv(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), source,
-
1827 static_cast<int>(t), comm_, static_cast<MPI_Status *>(&s));
-
1828 return s;
-
1829 }
-
1830
-
1844 template<typename iterT>
-
1845 status_t recv(iterT begin, iterT end, int source, tag_t t = tag_t(0)) const {
-
1846 using value_type = typename std::iterator_traits<iterT>::value_type;
-
1847 static_assert(std::is_reference_v<decltype(*begin)>,
-
1848 "iterator de-referencing must yield a reference");
-
1849 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
1850 const vector_layout<value_type> l(std::distance(begin, end));
-
1851 return recv(&(*begin), l, source, t);
-
1852 } else {
-
1853 const iterator_layout<value_type> l(begin, end);
-
1854 return recv(&(*begin), l, source, t);
-
1855 }
-
1856 }
-
1857
-
1858 // --- non-blocking receive ---
-
1859 private:
-
1860 template<typename T>
-
1861 irequest irecv(T &data, int source, tag_t t, detail::basic_or_fixed_size_type) const {
-
1862 MPI_Request req;
-
1863 MPI_Irecv(&data, 1, detail::datatype_traits<T>::get_datatype(), source,
-
1864 static_cast<int>(t), comm_, &req);
-
1865 return impl::irequest(req);
+
1481 // === ready send ===
+
1482 // --- blocking ready send ---
+
1483 private:
+
1484 template<typename T>
+
1485 void rsend(const T &data, int destination, tag_t t,
+
1486 detail::basic_or_fixed_size_type) const {
+
1487 MPI_Rsend(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
+
1488 static_cast<int>(t), comm_);
+
1489 }
+
1490
+
1491 template<typename T>
+
1492 void rsend(const T &data, int destination, tag_t t,
+
1493 detail::contiguous_const_stl_container) const {
+
1494 using value_type = typename T::value_type;
+
1495 const vector_layout<value_type> l(data.size());
+
1496 rsend(data.size() > 0 ? &data[0] : nullptr, l, destination, t);
+
1497 }
+
1498
+
1499 template<typename T>
+
1500 void rsend(const T &data, int destination, tag_t t, detail::stl_container) const {
+
1501 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
+
1502 detail::vector<value_type> serial_data(data.size(), std::begin(data));
+
1503 const vector_layout<value_type> l(serial_data.size());
+
1504 rsend(serial_data.data(), l, destination, t);
+
1505 }
+
1506
+
1507 public:
+
1518 template<typename T>
+
1519 void rsend(const T &data, int destination, tag_t t = tag_t(0)) const {
+
1520 check_dest(destination);
+
1521 check_send_tag(t);
+
1522 check_container_size(data);
+
1523 rsend(data, destination, t, typename detail::datatype_traits<T>::data_type_category{});
+
1524 }
+
1525
+
1534 template<typename T>
+
1535 void rsend(const T *data, const layout<T> &l, int destination, tag_t t = tag_t(0)) const {
+
1536 check_dest(destination);
+
1537 check_send_tag(t);
+
1538 MPI_Rsend(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
+
1539 static_cast<int>(t), comm_);
+
1540 }
+
1541
+
1555 template<typename iterT>
+
1556 void rsend(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
+
1557 using value_type = typename std::iterator_traits<iterT>::value_type;
+
1558 static_assert(std::is_reference_v<decltype(*begin)>,
+
1559 "iterator de-referencing must yield a reference");
+
1560 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
1561 const vector_layout<value_type> l(std::distance(begin, end));
+
1562 rsend(&(*begin), l, destination, t);
+
1563 } else {
+
1564 const iterator_layout<value_type> l(begin, end);
+
1565 rsend(&(*begin), l, destination, t);
+
1566 }
+
1567 }
+
1568
+
1569 // --- non-blocking ready send ---
+
1570 private:
+
1571 template<typename T>
+
1572 irequest irsend(const T &data, int destination, tag_t t,
+
1573 detail::basic_or_fixed_size_type) const {
+
1574 MPI_Request req;
+
1575 MPI_Irsend(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
+
1576 static_cast<int>(t), comm_, &req);
+
1577 return impl::irequest(req);
+
1578 }
+
1579
+
1580 template<typename T>
+
1581 void irsend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
+
1582 detail::contiguous_const_stl_container) const {
+
1583 using value_type = typename T::value_type;
+
1584 const int count(data.size());
+
1585 MPI_Datatype datatype{detail::datatype_traits<value_type>::get_datatype()};
+
1586 MPI_Request req;
+
1587 MPI_Irsend(data.size() > 0 ? &data[0] : nullptr, count, datatype, destination,
+
1588 static_cast<int>(t), comm_, &req);
+
1589 MPI_Status s;
+
1590 MPI_Wait(&req, &s);
+
1591 isend_state->source = s.MPI_SOURCE;
+
1592 isend_state->tag = s.MPI_TAG;
+
1593 isend_state->datatype = datatype;
+
1594 isend_state->count = 0;
+
1595 MPI_Grequest_complete(isend_state->req);
+
1596 }
+
1597
+
1598 template<typename T>
+
1599 void irsend(const T &data, int destination, tag_t t, isend_irecv_state *isend_state,
+
1600 detail::stl_container) const {
+
1601 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
+
1602 detail::vector<value_type> serial_data(data.size(), std::begin(data));
+
1603 irsend(serial_data, destination, t, isend_state,
+
1604 detail::contiguous_const_stl_container{});
+
1605 }
+
1606
+
1607 template<typename T, typename C>
+
1608 irequest irsend(const T &data, int destination, tag_t t, C) const {
+
1609 isend_irecv_state *send_state{new isend_irecv_state()};
+
1610 MPI_Request req;
+
1611 MPI_Grequest_start(isend_irecv_query, isend_irecv_free, isend_irecv_cancel, send_state,
+
1612 &req);
+
1613 send_state->req = req;
+
1614 std::thread thread([this, &data, destination, t, send_state]() {
+
1615 irsend(data, destination, t, send_state, C{});
+
1616 });
+
1617 thread.detach();
+
1618 return impl::irequest(req);
+
1619 }
+
1620
+
1621 public:
+
1633 template<typename T>
+
1634 irequest irsend(const T &data, int destination, tag_t t = tag_t(0)) const {
+
1635 check_dest(destination);
+
1636 check_send_tag(t);
+
1637 check_container_size(data);
+
1638 return irsend(data, destination, t,
+
1639 typename detail::datatype_traits<T>::data_type_category{});
+
1640 }
+
1641
+
1651 template<typename T>
+
1652 irequest irsend(const T *data, const layout<T> &l, int destination,
+
1653 tag_t t = tag_t(0)) const {
+
1654 check_dest(destination);
+
1655 check_send_tag(t);
+
1656 MPI_Request req;
+
1657 MPI_Irsend(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
+
1658 static_cast<int>(t), comm_, &req);
+
1659 return impl::irequest(req);
+
1660 }
+
1661
+
1676 template<typename iterT>
+
1677 irequest irsend(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
+
1678 using value_type = typename std::iterator_traits<iterT>::value_type;
+
1679 static_assert(std::is_reference_v<decltype(*begin)>,
+
1680 "iterator de-referencing must yield a reference");
+
1681 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
1682 const vector_layout<value_type> l(std::distance(begin, end));
+
1683 return irsend(&(*begin), l, destination, t);
+
1684 } else {
+
1685 const iterator_layout<value_type> l(begin, end);
+
1686 return irsend(&(*begin), l, destination, t);
+
1687 }
+
1688 }
+
1689
+
1690 // --- persistent ready send ---
+
1700 template<typename T>
+
1701 prequest rsend_init(const T &data, int destination, tag_t t = tag_t(0)) const {
+
1702 check_dest(destination);
+
1703 check_send_tag(t);
+
1704 MPI_Request req;
+
1705 MPI_Rsend_init(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
+
1706 static_cast<int>(t), comm_, &req);
+
1707 return impl::prequest(req);
+
1708 }
+
1709
+
1719 template<typename T>
+
1720 prequest rsend_init(const T *data, const layout<T> &l, int destination,
+
1721 tag_t t = tag_t(0)) const {
+
1722 check_dest(destination);
+
1723 check_send_tag(t);
+
1724 MPI_Request req;
+
1725 MPI_Rsend_init(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), destination,
+
1726 static_cast<int>(t), comm_, &req);
+
1727 return impl::prequest(req);
+
1728 }
+
1729
+
1744 template<typename iterT>
+
1745 prequest rsend_init(iterT begin, iterT end, int destination, tag_t t = tag_t(0)) const {
+
1746 using value_type = typename std::iterator_traits<iterT>::value_type;
+
1747 static_assert(std::is_reference_v<decltype(*begin)>,
+
1748 "iterator de-referencing must yield a reference");
+
1749 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
1750 const vector_layout<value_type> l(std::distance(begin, end));
+
1751 return rsend_init(&(*begin), l, destination, t);
+
1752 } else {
+
1753 const iterator_layout<value_type> l(begin, end);
+
1754 return rsend_init(&(*begin), l, destination, t);
+
1755 }
+
1756 }
+
1757
+
1758 // === receive ===
+
1759 // --- blocking receive ---
+
1760 private:
+
1761 template<typename T>
+
1762 status_t recv(T &data, int source, tag_t t, detail::basic_or_fixed_size_type) const {
+
1763 status_t s;
+
1764 MPI_Recv(&data, 1, detail::datatype_traits<T>::get_datatype(), source,
+
1765 static_cast<int>(t), comm_, static_cast<MPI_Status *>(&s));
+
1766 return s;
+
1767 }
+
1768
+
1769 template<typename T>
+
1770 status_t recv(T &data, int source, tag_t t, detail::contiguous_stl_container) const {
+
1771 using value_type = typename T::value_type;
+
1772 status_t s;
+
1773 auto *ps{static_cast<MPI_Status *>(&s)};
+
1774 MPI_Message message;
+
1775 MPI_Mprobe(source, static_cast<int>(t), comm_, &message, ps);
+
1776 int count{0};
+
1777 MPI_Get_count(ps, detail::datatype_traits<value_type>::get_datatype(), &count);
+
1778 check_count(count);
+
1779 data.resize(count);
+
1780 MPI_Mrecv(data.size() > 0 ? &data[0] : nullptr, count,
+
1781 detail::datatype_traits<value_type>::get_datatype(), &message, ps);
+
1782 return s;
+
1783 }
+
1784
+
1785 template<typename T>
+
1786 status_t recv(T &data, int source, tag_t t, detail::stl_container) const {
+
1787 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
+
1788 status_t s;
+
1789 auto *ps{static_cast<MPI_Status *>(&s)};
+
1790 MPI_Message message;
+
1791 MPI_Mprobe(source, static_cast<int>(t), comm_, &message, ps);
+
1792 int count{0};
+
1793 MPI_Get_count(ps, detail::datatype_traits<value_type>::get_datatype(), &count);
+
1794 check_count(count);
+
1795 detail::vector<value_type> serial_data(count, detail::uninitialized{});
+
1796 MPI_Mrecv(serial_data.data(), count, detail::datatype_traits<value_type>::get_datatype(),
+
1797 &message, ps);
+
1798 T new_data(serial_data.begin(), serial_data.end());
+
1799 data.swap(new_data);
+
1800 return s;
+
1801 }
+
1802
+
1803 public:
+
1816 template<typename T>
+
1817 status_t recv(T &data, int source, tag_t t = tag_t(0)) const {
+
1818 check_source(source);
+
1819 check_recv_tag(t);
+
1820 return recv(data, source, t, typename detail::datatype_traits<T>::data_type_category{});
+
1821 }
+
1822
+
1831 template<typename T>
+
1832 status_t recv(T *data, const layout<T> &l, int source, tag_t t = tag_t(0)) const {
+
1833 check_source(source);
+
1834 check_recv_tag(t);
+
1835 status_t s;
+
1836 MPI_Recv(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), source,
+
1837 static_cast<int>(t), comm_, static_cast<MPI_Status *>(&s));
+
1838 return s;
+
1839 }
+
1840
+
1854 template<typename iterT>
+
1855 status_t recv(iterT begin, iterT end, int source, tag_t t = tag_t(0)) const {
+
1856 using value_type = typename std::iterator_traits<iterT>::value_type;
+
1857 static_assert(std::is_reference_v<decltype(*begin)>,
+
1858 "iterator de-referencing must yield a reference");
+
1859 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
1860 const vector_layout<value_type> l(std::distance(begin, end));
+
1861 return recv(&(*begin), l, source, t);
+
1862 } else {
+
1863 const iterator_layout<value_type> l(begin, end);
+
1864 return recv(&(*begin), l, source, t);
+
1865 }
1866 }
1867
-
1868 template<typename T>
-
1869 void irecv(T &data, int source, tag_t t, isend_irecv_state *irecv_state,
-
1870 detail::stl_container) const {
-
1871 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
-
1872 const status_t s{recv(data, source, t)};
-
1873 irecv_state->source = s.source();
-
1874 irecv_state->tag = static_cast<int>(s.tag());
-
1875 irecv_state->datatype = detail::datatype_traits<value_type>::get_datatype();
-
1876 irecv_state->count = s.get_count<value_type>();
-
1877 MPI_Grequest_complete(irecv_state->req);
-
1878 }
-
1879
-
1880 template<typename T, typename C>
-
1881 irequest irecv(T &data, int source, tag_t t, C) const {
-
1882 isend_irecv_state *recv_state{new isend_irecv_state()};
-
1883 MPI_Request req;
-
1884 MPI_Grequest_start(isend_irecv_query, isend_irecv_free, isend_irecv_cancel, recv_state,
-
1885 &req);
-
1886 recv_state->req = req;
-
1887 std::thread thread(
-
1888 [this, &data, source, t, recv_state]() { irecv(data, source, t, recv_state, C{}); });
-
1889 thread.detach();
-
1890 return impl::irequest(req);
-
1891 }
-
1892
-
1893 public:
-
1905 template<typename T>
-
1906 irequest irecv(T &data, int source, tag_t t = tag_t(0)) const {
-
1907 check_source(source);
-
1908 check_recv_tag(t);
-
1909 return irecv(data, source, t, typename detail::datatype_traits<T>::data_type_category{});
-
1910 }
-
1911
-
1921 template<typename T>
-
1922 irequest irecv(T *data, const layout<T> &l, int source, tag_t t = tag_t(0)) const {
-
1923 check_source(source);
-
1924 check_recv_tag(t);
-
1925 MPI_Request req;
-
1926 MPI_Irecv(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), source,
-
1927 static_cast<int>(t), comm_, &req);
-
1928 return impl::irequest(req);
-
1929 }
-
1930
-
1945 template<typename iterT>
-
1946 irequest irecv(iterT begin, iterT end, int source, tag_t t = tag_t(0)) const {
-
1947 using value_type = typename std::iterator_traits<iterT>::value_type;
-
1948 static_assert(std::is_lvalue_reference_v<decltype(*begin)>,
-
1949 "iterator de-referencing must yield a reference");
-
1950 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
1951 const vector_layout<value_type> l(std::distance(begin, end));
-
1952 return irecv(&(*begin), l, source, t);
-
1953 } else {
-
1954 const iterator_layout<value_type> l(begin, end);
-
1955 return irecv(&(*begin), l, source, t);
-
1956 }
-
1957 }
-
1958
-
1959 // --- persistent receive ---
-
1969 template<typename T>
-
1970 prequest recv_init(T &data, int source, tag_t t = tag_t(0)) const {
-
1971 check_source(source);
-
1972 check_recv_tag(t);
-
1973 MPI_Request req;
-
1974 MPI_Recv_init(&data, 1, detail::datatype_traits<T>::get_datatype(), source,
-
1975 static_cast<int>(t), comm_, &req);
-
1976 return impl::prequest(req);
-
1977 }
-
1978
-
1988 template<typename T>
-
1989 prequest recv_init(T *data, const layout<T> &l, int source, tag_t t = tag_t(0)) const {
-
1990 check_source(source);
-
1991 check_recv_tag(t);
-
1992 MPI_Request req;
-
1993 MPI_Recv_init(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), source,
-
1994 static_cast<int>(t), comm_, &req);
-
1995 return impl::prequest{req};
-
1996 }
-
1997
-
2012 template<typename iterT>
-
2013 prequest recv_init(iterT begin, iterT end, int source, tag_t t = tag_t(0)) const {
-
2014 using value_type = typename std::iterator_traits<iterT>::value_type;
-
2015 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
2016 const vector_layout<value_type> l(std::distance(begin, end));
-
2017 return recv_init(&(*begin), l, source, t);
-
2018 } else {
-
2019 const iterator_layout<value_type> l(begin, end);
-
2020 return recv_init(&(*begin), l, source, t);
-
2021 }
-
2022 }
-
2023
-
2024 // === probe ===
-
2025 // --- blocking probe ---
-
2030 [[nodiscard]] status_t probe(int source, tag_t t = tag_t(0)) const {
-
2031 check_source(source);
-
2032 check_recv_tag(t);
-
2033 status_t s;
-
2034 MPI_Probe(source, static_cast<int>(t), comm_, static_cast<MPI_Status *>(&s));
-
2035 return s;
-
2036 }
-
2037
-
2038 // --- non-blocking probe ---
-
2043 [[nodiscard]] std::optional<status_t> iprobe(int source, tag_t t = tag_t(0)) const {
-
2044 check_source(source);
-
2045 check_recv_tag(t);
-
2046 int result;
-
2047 status_t s;
-
2048 MPI_Iprobe(source, static_cast<int>(t), comm_, &result, static_cast<MPI_Status *>(&s));
-
2049 if (result == 0)
-
2050 return {};
-
2051 else
-
2052 return s;
-
2053 }
-
2054
-
2055 // === matching probe ===
-
2056 // --- blocking matching probe ---
-
2057 [[nodiscard]] mprobe_status mprobe(int source, tag_t t = tag_t(0)) const {
-
2058 check_source(source);
-
2059 check_recv_tag(t);
-
2060 status_t s;
-
2061 message_t m;
-
2062 MPI_Mprobe(source, static_cast<int>(t), comm_, &m, static_cast<MPI_Status *>(&s));
-
2063 return {m, s};
-
2064 }
-
2065
-
2066 // --- non-blocking matching probe ---
-
2067 [[nodiscard]] std::optional<mprobe_status> improbe(int source, tag_t t = tag_t(0)) const {
-
2068 check_source(source);
-
2069 check_recv_tag(t);
-
2070 int result;
-
2071 status_t s;
-
2072 message_t m;
-
2073 MPI_Improbe(source, static_cast<int>(t), comm_, &result, &m,
-
2074 static_cast<MPI_Status *>(&s));
-
2075 if (result == 0)
-
2076 return {};
-
2077 else
-
2078 return mprobe_status{m, s};
-
2079 }
-
2080
-
2081 // === matching receive ===
-
2082 // --- blocking matching receive ---
-
2083 private:
-
2084 template<typename T>
-
2085 status_t mrecv(T &data, message_t &m, detail::basic_or_fixed_size_type) const {
-
2086 status_t s;
-
2087 MPI_Mrecv(&data, 1, detail::datatype_traits<T>::get_datatype(), &m,
-
2088 static_cast<MPI_Status *>(&s));
-
2089 return s;
-
2090 }
-
2091
-
2092 public:
-
2101 template<typename T>
-
2102 status_t mrecv(T &data, message_t &m) const {
-
2103 return mrecv(data, m, typename detail::datatype_traits<T>::data_type_category{});
-
2104 }
-
2105
-
2114 template<typename T>
-
2115 status_t mrecv(T *data, const layout<T> &l, message_t &m) const {
-
2116 status_t s;
-
2117 MPI_Mrecv(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), &m,
-
2118 static_cast<MPI_Status *>(&s));
-
2119 return s;
-
2120 }
-
2121
-
2135 template<typename iterT>
-
2136 status_t mrecv(iterT begin, iterT end, message_t &m) const {
-
2137 using value_type = typename std::iterator_traits<iterT>::value_type;
-
2138 static_assert(std::is_reference_v<decltype(*begin)>,
-
2139 "iterator de-referencing must yield a reference");
-
2140 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
2141 const vector_layout<value_type> l(std::distance(begin, end));
-
2142 return mrecv(&(*begin), l, m);
-
2143 } else {
-
2144 const iterator_layout<value_type> l(begin, end);
-
2145 return mrecv(&(*begin), l, m);
-
2146 }
-
2147 }
-
2148
-
2149 // --- non-blocking matching receive ---
-
2150 private:
-
2151 template<typename T>
-
2152 irequest imrecv(T &data, message_t &m, detail::basic_or_fixed_size_type) const {
-
2153 MPI_Request req;
-
2154 MPI_Imrecv(&data, 1, detail::datatype_traits<T>::get_datatype(), &m, &req);
-
2155 return impl::irequest(req);
-
2156 }
-
2157
-
2158 public:
-
2167 template<typename T>
-
2168 irequest imrecv(T &data, message_t &m) const {
-
2169 return imrecv(data, m, typename detail::datatype_traits<T>::data_type_category{});
-
2170 }
-
2171
-
2180 template<typename T>
-
2181 irequest imrecv(T *data, const layout<T> &l, message_t &m) const {
-
2182 MPI_Request req;
-
2183 MPI_Imrecv(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), &m, &req);
-
2184 return impl::irequest(req);
-
2185 }
-
2186
-
2200 template<typename iterT>
-
2201 irequest imrecv(iterT begin, iterT end, message_t &m) const {
-
2202 using value_type = typename std::iterator_traits<iterT>::value_type;
-
2203 static_assert(std::is_lvalue_reference_v<decltype(*begin)>,
-
2204 "iterator de-referencing must yield a reference");
-
2205 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
2206 const vector_layout<value_type> l(std::distance(begin, end));
-
2207 return imrecv(&(*begin), l, m);
-
2208 } else {
-
2209 const iterator_layout<value_type> l(begin, end);
-
2210 return imrecv(&(*begin), l, m);
-
2211 }
-
2212 }
-
2213
-
2214 // === send and receive ===
-
2215 // --- send and receive ---
-
2226 template<typename T>
-
2227 status_t sendrecv(const T &senddata, int destination, tag_t sendtag, T &recvdata,
-
2228 int source, tag_t recvtag) const {
-
2229 check_dest(destination);
-
2230 check_source(source);
-
2231 check_send_tag(sendtag);
-
2232 check_recv_tag(recvtag);
-
2233 status_t s;
-
2234 MPI_Sendrecv(&senddata, 1, detail::datatype_traits<T>::get_datatype(), destination,
-
2235 static_cast<int>(sendtag), &recvdata, 1,
-
2236 detail::datatype_traits<T>::get_datatype(), source,
-
2237 static_cast<int>(recvtag), comm_, static_cast<MPI_Status *>(&s));
-
2238 return s;
-
2239 }
-
2240
-
2253 template<typename T>
-
2254 status_t sendrecv(const T *senddata, const layout<T> &sendl, int destination, tag_t sendtag,
-
2255 T *recvdata, const layout<T> &recvl, int source, tag_t recvtag) const {
-
2256 check_dest(destination);
-
2257 check_source(source);
-
2258 check_send_tag(sendtag);
-
2259 check_recv_tag(recvtag);
-
2260 status_t s;
-
2261 MPI_Sendrecv(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
-
2262 destination, static_cast<int>(sendtag), recvdata, 1,
-
2263 detail::datatype_traits<layout<T>>::get_datatype(recvl), source,
-
2264 static_cast<int>(recvtag), comm_, static_cast<MPI_Status *>(&s));
-
2265 return s;
-
2266 }
-
2267
-
2288 template<typename iterT1, typename iterT2>
-
2289 status_t sendrecv(iterT1 begin1, iterT1 end1, int destination, tag_t sendtag, iterT2 begin2,
-
2290 iterT2 end2, int source, tag_t recvtag) const {
-
2291 using value_type1 = typename std::iterator_traits<iterT1>::value_type;
-
2292 using value_type2 = typename std::iterator_traits<iterT2>::value_type;
-
2293 if constexpr (detail::is_contiguous_iterator_v<iterT1> and
-
2294 detail::is_contiguous_iterator_v<iterT2>) {
-
2295 const vector_layout<value_type1> l1(std::distance(begin1, end1));
-
2296 const vector_layout<value_type2> l2(std::distance(begin2, end2));
-
2297 return sendrecv(&(*begin1), l1, destination, sendtag, &(*begin2), l2, source, recvtag);
-
2298 } else if constexpr (detail::is_contiguous_iterator_v<iterT1>) {
-
2299 const vector_layout<value_type1> l1(std::distance(begin1, end1));
-
2300 const iterator_layout<value_type2> l2(begin2, end2);
-
2301 return sendrecv(&(*begin1), l1, destination, sendtag, &(*begin2), l2, source, recvtag);
-
2302 } else if constexpr (detail::is_contiguous_iterator_v<iterT2>) {
-
2303 const iterator_layout<value_type2> l1(begin1, end1);
-
2304 const vector_layout<value_type2> l2(std::distance(begin2, end2));
-
2305 return sendrecv(&(*begin1), l1, destination, sendtag, &(*begin2), l2, source, recvtag);
-
2306 } else {
-
2307 const iterator_layout<value_type1> l1(begin1, end1);
-
2308 const iterator_layout<value_type2> l2(begin2, end2);
-
2309 return sendrecv(&(*begin1), l1, destination, sendtag, &(*begin2), l2, source, recvtag);
-
2310 }
-
2311 }
-
2312
-
2313 // --- send, receive and replace ---
-
2323 template<typename T>
-
2324 status_t sendrecv_replace(T &data, int destination, tag_t sendtag, int source,
-
2325 tag_t recvtag) const {
-
2326 check_dest(destination);
-
2327 check_source(source);
-
2328 check_send_tag(sendtag);
-
2329 check_recv_tag(recvtag);
-
2330 status_t s;
-
2331 MPI_Sendrecv_replace(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
-
2332 static_cast<int>(sendtag), source, static_cast<int>(recvtag), comm_,
-
2333 static_cast<MPI_Status *>(&s));
-
2334 return s;
-
2335 }
-
2336
-
2347 template<typename T>
-
2348 status_t sendrecv_replace(T *data, const layout<T> &l, int destination, tag_t sendtag,
-
2349 int source, tag_t recvtag) const {
-
2350 check_dest(destination);
-
2351 check_source(source);
-
2352 check_send_tag(sendtag);
-
2353 check_recv_tag(recvtag);
-
2354 status_t s;
-
2355 MPI_Sendrecv_replace(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l),
-
2356 destination, static_cast<int>(sendtag), source,
-
2357 static_cast<int>(recvtag), comm_, static_cast<MPI_Status *>(&s));
-
2358 return s;
-
2359 }
-
2360
-
2375 template<typename iterT>
-
2376 status_t sendrecv_replace(iterT begin, iterT end, int destination, tag_t sendtag,
-
2377 int source, tag_t recvtag) const {
-
2378 using value_type = typename std::iterator_traits<iterT>::value_type;
-
2379 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
-
2380 const vector_layout<value_type> l(std::distance(begin, end));
-
2381 return sendrecv_replace(&(*begin), l, destination, sendtag, source, recvtag);
-
2382 } else {
-
2383 const iterator_layout<value_type> l(begin, end);
-
2384 return sendrecv_replace(&(*begin), l, destination, sendtag, source, recvtag);
-
2385 }
-
2386 }
-
2387
-
2388 // === collective ==================================================
-
2389 // === barrier ===
-
2390 // --- blocking barrier ---
-
2394 void barrier() const { MPI_Barrier(comm_); }
-
2395
-
2396 // --- non-blocking barrier ---
-
2401 [[nodiscard]] irequest ibarrier() const {
-
2402 MPI_Request req;
-
2403 MPI_Ibarrier(comm_, &req);
-
2404 return impl::irequest(req);
+
1868 // --- non-blocking receive ---
+
1869 private:
+
1870 template<typename T>
+
1871 irequest irecv(T &data, int source, tag_t t, detail::basic_or_fixed_size_type) const {
+
1872 MPI_Request req;
+
1873 MPI_Irecv(&data, 1, detail::datatype_traits<T>::get_datatype(), source,
+
1874 static_cast<int>(t), comm_, &req);
+
1875 return impl::irequest(req);
+
1876 }
+
1877
+
1878 template<typename T>
+
1879 void irecv(T &data, int source, tag_t t, isend_irecv_state *irecv_state,
+
1880 detail::stl_container) const {
+
1881 using value_type = detail::remove_const_from_members_t<typename T::value_type>;
+
1882 const status_t s{recv(data, source, t)};
+
1883 irecv_state->source = s.source();
+
1884 irecv_state->tag = static_cast<int>(s.tag());
+
1885 irecv_state->datatype = detail::datatype_traits<value_type>::get_datatype();
+
1886 irecv_state->count = s.get_count<value_type>();
+
1887 MPI_Grequest_complete(irecv_state->req);
+
1888 }
+
1889
+
1890 template<typename T, typename C>
+
1891 irequest irecv(T &data, int source, tag_t t, C) const {
+
1892 isend_irecv_state *recv_state{new isend_irecv_state()};
+
1893 MPI_Request req;
+
1894 MPI_Grequest_start(isend_irecv_query, isend_irecv_free, isend_irecv_cancel, recv_state,
+
1895 &req);
+
1896 recv_state->req = req;
+
1897 std::thread thread(
+
1898 [this, &data, source, t, recv_state]() { irecv(data, source, t, recv_state, C{}); });
+
1899 thread.detach();
+
1900 return impl::irequest(req);
+
1901 }
+
1902
+
1903 public:
+
1915 template<typename T>
+
1916 irequest irecv(T &data, int source, tag_t t = tag_t(0)) const {
+
1917 check_source(source);
+
1918 check_recv_tag(t);
+
1919 return irecv(data, source, t, typename detail::datatype_traits<T>::data_type_category{});
+
1920 }
+
1921
+
1931 template<typename T>
+
1932 irequest irecv(T *data, const layout<T> &l, int source, tag_t t = tag_t(0)) const {
+
1933 check_source(source);
+
1934 check_recv_tag(t);
+
1935 MPI_Request req;
+
1936 MPI_Irecv(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), source,
+
1937 static_cast<int>(t), comm_, &req);
+
1938 return impl::irequest(req);
+
1939 }
+
1940
+
1955 template<typename iterT>
+
1956 irequest irecv(iterT begin, iterT end, int source, tag_t t = tag_t(0)) const {
+
1957 using value_type = typename std::iterator_traits<iterT>::value_type;
+
1958 static_assert(std::is_lvalue_reference_v<decltype(*begin)>,
+
1959 "iterator de-referencing must yield a reference");
+
1960 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
1961 const vector_layout<value_type> l(std::distance(begin, end));
+
1962 return irecv(&(*begin), l, source, t);
+
1963 } else {
+
1964 const iterator_layout<value_type> l(begin, end);
+
1965 return irecv(&(*begin), l, source, t);
+
1966 }
+
1967 }
+
1968
+
1969 // --- persistent receive ---
+
1979 template<typename T>
+
1980 prequest recv_init(T &data, int source, tag_t t = tag_t(0)) const {
+
1981 check_source(source);
+
1982 check_recv_tag(t);
+
1983 MPI_Request req;
+
1984 MPI_Recv_init(&data, 1, detail::datatype_traits<T>::get_datatype(), source,
+
1985 static_cast<int>(t), comm_, &req);
+
1986 return impl::prequest(req);
+
1987 }
+
1988
+
1998 template<typename T>
+
1999 prequest recv_init(T *data, const layout<T> &l, int source, tag_t t = tag_t(0)) const {
+
2000 check_source(source);
+
2001 check_recv_tag(t);
+
2002 MPI_Request req;
+
2003 MPI_Recv_init(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), source,
+
2004 static_cast<int>(t), comm_, &req);
+
2005 return impl::prequest{req};
+
2006 }
+
2007
+
2022 template<typename iterT>
+
2023 prequest recv_init(iterT begin, iterT end, int source, tag_t t = tag_t(0)) const {
+
2024 using value_type = typename std::iterator_traits<iterT>::value_type;
+
2025 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
2026 const vector_layout<value_type> l(std::distance(begin, end));
+
2027 return recv_init(&(*begin), l, source, t);
+
2028 } else {
+
2029 const iterator_layout<value_type> l(begin, end);
+
2030 return recv_init(&(*begin), l, source, t);
+
2031 }
+
2032 }
+
2033
+
2034 // === probe ===
+
2035 // --- blocking probe ---
+
2040 [[nodiscard]] status_t probe(int source, tag_t t = tag_t(0)) const {
+
2041 check_source(source);
+
2042 check_recv_tag(t);
+
2043 status_t s;
+
2044 MPI_Probe(source, static_cast<int>(t), comm_, static_cast<MPI_Status *>(&s));
+
2045 return s;
+
2046 }
+
2047
+
2048 // --- non-blocking probe ---
+
2053 [[nodiscard]] std::optional<status_t> iprobe(int source, tag_t t = tag_t(0)) const {
+
2054 check_source(source);
+
2055 check_recv_tag(t);
+
2056 int result;
+
2057 status_t s;
+
2058 MPI_Iprobe(source, static_cast<int>(t), comm_, &result, static_cast<MPI_Status *>(&s));
+
2059 if (result == 0)
+
2060 return {};
+
2061 else
+
2062 return s;
+
2063 }
+
2064
+
2065 // === matching probe ===
+
2066 // --- blocking matching probe ---
+
2071 [[nodiscard]] mprobe_status mprobe(int source, tag_t t = tag_t(0)) const {
+
2072 check_source(source);
+
2073 check_recv_tag(t);
+
2074 status_t s;
+
2075 message_t m;
+
2076 MPI_Mprobe(source, static_cast<int>(t), comm_, &m, static_cast<MPI_Status *>(&s));
+
2077 return {m, s};
+
2078 }
+
2079
+
2080 // --- non-blocking matching probe ---
+
2086 [[nodiscard]] std::optional<mprobe_status> improbe(int source, tag_t t = tag_t(0)) const {
+
2087 check_source(source);
+
2088 check_recv_tag(t);
+
2089 int result;
+
2090 status_t s;
+
2091 message_t m;
+
2092 MPI_Improbe(source, static_cast<int>(t), comm_, &result, &m,
+
2093 static_cast<MPI_Status *>(&s));
+
2094 if (result == 0)
+
2095 return {};
+
2096 else
+
2097 return mprobe_status{m, s};
+
2098 }
+
2099
+
2100 // === matching receive ===
+
2101 // --- blocking matching receive ---
+
2102 private:
+
2103 template<typename T>
+
2104 status_t mrecv(T &data, message_t &m, detail::basic_or_fixed_size_type) const {
+
2105 status_t s;
+
2106 MPI_Mrecv(&data, 1, detail::datatype_traits<T>::get_datatype(), &m,
+
2107 static_cast<MPI_Status *>(&s));
+
2108 return s;
+
2109 }
+
2110
+
2111 public:
+
2120 template<typename T>
+
2121 status_t mrecv(T &data, message_t &m) const {
+
2122 return mrecv(data, m, typename detail::datatype_traits<T>::data_type_category{});
+
2123 }
+
2124
+
2133 template<typename T>
+
2134 status_t mrecv(T *data, const layout<T> &l, message_t &m) const {
+
2135 status_t s;
+
2136 MPI_Mrecv(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), &m,
+
2137 static_cast<MPI_Status *>(&s));
+
2138 return s;
+
2139 }
+
2140
+
2154 template<typename iterT>
+
2155 status_t mrecv(iterT begin, iterT end, message_t &m) const {
+
2156 using value_type = typename std::iterator_traits<iterT>::value_type;
+
2157 static_assert(std::is_reference_v<decltype(*begin)>,
+
2158 "iterator de-referencing must yield a reference");
+
2159 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
2160 const vector_layout<value_type> l(std::distance(begin, end));
+
2161 return mrecv(&(*begin), l, m);
+
2162 } else {
+
2163 const iterator_layout<value_type> l(begin, end);
+
2164 return mrecv(&(*begin), l, m);
+
2165 }
+
2166 }
+
2167
+
2168 // --- non-blocking matching receive ---
+
2169 private:
+
2170 template<typename T>
+
2171 irequest imrecv(T &data, message_t &m, detail::basic_or_fixed_size_type) const {
+
2172 MPI_Request req;
+
2173 MPI_Imrecv(&data, 1, detail::datatype_traits<T>::get_datatype(), &m, &req);
+
2174 return impl::irequest(req);
+
2175 }
+
2176
+
2177 public:
+
2186 template<typename T>
+
2187 irequest imrecv(T &data, message_t &m) const {
+
2188 return imrecv(data, m, typename detail::datatype_traits<T>::data_type_category{});
+
2189 }
+
2190
+
2199 template<typename T>
+
2200 irequest imrecv(T *data, const layout<T> &l, message_t &m) const {
+
2201 MPI_Request req;
+
2202 MPI_Imrecv(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), &m, &req);
+
2203 return impl::irequest(req);
+
2204 }
+
2205
+
2219 template<typename iterT>
+
2220 irequest imrecv(iterT begin, iterT end, message_t &m) const {
+
2221 using value_type = typename std::iterator_traits<iterT>::value_type;
+
2222 static_assert(std::is_lvalue_reference_v<decltype(*begin)>,
+
2223 "iterator de-referencing must yield a reference");
+
2224 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
2225 const vector_layout<value_type> l(std::distance(begin, end));
+
2226 return imrecv(&(*begin), l, m);
+
2227 } else {
+
2228 const iterator_layout<value_type> l(begin, end);
+
2229 return imrecv(&(*begin), l, m);
+
2230 }
+
2231 }
+
2232
+
2233 // === send and receive ===
+
2234 // --- send and receive ---
+
2245 template<typename T>
+
2246 status_t sendrecv(const T &senddata, int destination, tag_t sendtag, T &recvdata,
+
2247 int source, tag_t recvtag) const {
+
2248 check_dest(destination);
+
2249 check_source(source);
+
2250 check_send_tag(sendtag);
+
2251 check_recv_tag(recvtag);
+
2252 status_t s;
+
2253 MPI_Sendrecv(&senddata, 1, detail::datatype_traits<T>::get_datatype(), destination,
+
2254 static_cast<int>(sendtag), &recvdata, 1,
+
2255 detail::datatype_traits<T>::get_datatype(), source,
+
2256 static_cast<int>(recvtag), comm_, static_cast<MPI_Status *>(&s));
+
2257 return s;
+
2258 }
+
2259
+
2272 template<typename T>
+
2273 status_t sendrecv(const T *senddata, const layout<T> &sendl, int destination, tag_t sendtag,
+
2274 T *recvdata, const layout<T> &recvl, int source, tag_t recvtag) const {
+
2275 check_dest(destination);
+
2276 check_source(source);
+
2277 check_send_tag(sendtag);
+
2278 check_recv_tag(recvtag);
+
2279 status_t s;
+
2280 MPI_Sendrecv(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
+
2281 destination, static_cast<int>(sendtag), recvdata, 1,
+
2282 detail::datatype_traits<layout<T>>::get_datatype(recvl), source,
+
2283 static_cast<int>(recvtag), comm_, static_cast<MPI_Status *>(&s));
+
2284 return s;
+
2285 }
+
2286
+
2307 template<typename iterT1, typename iterT2>
+
2308 status_t sendrecv(iterT1 begin1, iterT1 end1, int destination, tag_t sendtag, iterT2 begin2,
+
2309 iterT2 end2, int source, tag_t recvtag) const {
+
2310 using value_type1 = typename std::iterator_traits<iterT1>::value_type;
+
2311 using value_type2 = typename std::iterator_traits<iterT2>::value_type;
+
2312 if constexpr (detail::is_contiguous_iterator_v<iterT1> and
+
2313 detail::is_contiguous_iterator_v<iterT2>) {
+
2314 const vector_layout<value_type1> l1(std::distance(begin1, end1));
+
2315 const vector_layout<value_type2> l2(std::distance(begin2, end2));
+
2316 return sendrecv(&(*begin1), l1, destination, sendtag, &(*begin2), l2, source, recvtag);
+
2317 } else if constexpr (detail::is_contiguous_iterator_v<iterT1>) {
+
2318 const vector_layout<value_type1> l1(std::distance(begin1, end1));
+
2319 const iterator_layout<value_type2> l2(begin2, end2);
+
2320 return sendrecv(&(*begin1), l1, destination, sendtag, &(*begin2), l2, source, recvtag);
+
2321 } else if constexpr (detail::is_contiguous_iterator_v<iterT2>) {
+
2322 const iterator_layout<value_type2> l1(begin1, end1);
+
2323 const vector_layout<value_type2> l2(std::distance(begin2, end2));
+
2324 return sendrecv(&(*begin1), l1, destination, sendtag, &(*begin2), l2, source, recvtag);
+
2325 } else {
+
2326 const iterator_layout<value_type1> l1(begin1, end1);
+
2327 const iterator_layout<value_type2> l2(begin2, end2);
+
2328 return sendrecv(&(*begin1), l1, destination, sendtag, &(*begin2), l2, source, recvtag);
+
2329 }
+
2330 }
+
2331
+
2332 // --- send, receive and replace ---
+
2342 template<typename T>
+
2343 status_t sendrecv_replace(T &data, int destination, tag_t sendtag, int source,
+
2344 tag_t recvtag) const {
+
2345 check_dest(destination);
+
2346 check_source(source);
+
2347 check_send_tag(sendtag);
+
2348 check_recv_tag(recvtag);
+
2349 status_t s;
+
2350 MPI_Sendrecv_replace(&data, 1, detail::datatype_traits<T>::get_datatype(), destination,
+
2351 static_cast<int>(sendtag), source, static_cast<int>(recvtag), comm_,
+
2352 static_cast<MPI_Status *>(&s));
+
2353 return s;
+
2354 }
+
2355
+
2366 template<typename T>
+
2367 status_t sendrecv_replace(T *data, const layout<T> &l, int destination, tag_t sendtag,
+
2368 int source, tag_t recvtag) const {
+
2369 check_dest(destination);
+
2370 check_source(source);
+
2371 check_send_tag(sendtag);
+
2372 check_recv_tag(recvtag);
+
2373 status_t s;
+
2374 MPI_Sendrecv_replace(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l),
+
2375 destination, static_cast<int>(sendtag), source,
+
2376 static_cast<int>(recvtag), comm_, static_cast<MPI_Status *>(&s));
+
2377 return s;
+
2378 }
+
2379
+
2394 template<typename iterT>
+
2395 status_t sendrecv_replace(iterT begin, iterT end, int destination, tag_t sendtag,
+
2396 int source, tag_t recvtag) const {
+
2397 using value_type = typename std::iterator_traits<iterT>::value_type;
+
2398 if constexpr (detail::is_contiguous_iterator_v<iterT>) {
+
2399 const vector_layout<value_type> l(std::distance(begin, end));
+
2400 return sendrecv_replace(&(*begin), l, destination, sendtag, source, recvtag);
+
2401 } else {
+
2402 const iterator_layout<value_type> l(begin, end);
+
2403 return sendrecv_replace(&(*begin), l, destination, sendtag, source, recvtag);
+
2404 }
2405 }
2406
-
2407 // === broadcast ===
-
2408 // --- blocking broadcast ---
-
2416 template<typename T>
-
2417 void bcast(int root_rank, T &data) const {
-
2418 check_root(root_rank);
-
2419 MPI_Bcast(&data, 1, detail::datatype_traits<T>::get_datatype(), root_rank, comm_);
-
2420 }
-
2421
-
2430 template<typename T>
-
2431 void bcast(int root_rank, T *data, const layout<T> &l) const {
-
2432 check_root(root_rank);
-
2433 MPI_Bcast(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), root_rank, comm_);
-
2434 }
-
2435
-
2436 // --- non-blocking broadcast ---
-
2446 template<typename T>
-
2447 irequest ibcast(int root_rank, T &data) const {
-
2448 check_root(root_rank);
-
2449 MPI_Request req;
-
2450 MPI_Ibcast(&data, 1, detail::datatype_traits<T>::get_datatype(), root_rank, comm_, &req);
-
2451 return impl::irequest(req);
-
2452 }
-
2453
-
2464 template<typename T>
-
2465 irequest ibcast(int root_rank, T *data, const layout<T> &l) const {
-
2466 check_root(root_rank);
-
2467 MPI_Request req;
-
2468 MPI_Ibcast(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), root_rank, comm_,
-
2469 &req);
+
2407 // === collective ==================================================
+
2408 // === barrier ===
+
2409 // --- blocking barrier ---
+
2413 void barrier() const { MPI_Barrier(comm_); }
+
2414
+
2415 // --- non-blocking barrier ---
+
2420 [[nodiscard]] irequest ibarrier() const {
+
2421 MPI_Request req;
+
2422 MPI_Ibarrier(comm_, &req);
+
2423 return impl::irequest(req);
+
2424 }
+
2425
+
2426 // === broadcast ===
+
2427 // --- blocking broadcast ---
+
2435 template<typename T>
+
2436 void bcast(int root_rank, T &data) const {
+
2437 check_root(root_rank);
+
2438 MPI_Bcast(&data, 1, detail::datatype_traits<T>::get_datatype(), root_rank, comm_);
+
2439 }
+
2440
+
2449 template<typename T>
+
2450 void bcast(int root_rank, T *data, const layout<T> &l) const {
+
2451 check_root(root_rank);
+
2452 MPI_Bcast(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), root_rank, comm_);
+
2453 }
+
2454
+
2455 // --- non-blocking broadcast ---
+
2465 template<typename T>
+
2466 irequest ibcast(int root_rank, T &data) const {
+
2467 check_root(root_rank);
+
2468 MPI_Request req;
+
2469 MPI_Ibcast(&data, 1, detail::datatype_traits<T>::get_datatype(), root_rank, comm_, &req);
2470 return impl::irequest(req);
2471 }
2472
-
2473 // === gather ===
-
2474 // === root gets a single value from each rank and stores in contiguous memory
-
2475 // --- blocking gather ---
-
2485 template<typename T>
-
2486 void gather(int root_rank, const T &senddata, T *recvdata) const {
-
2487 check_root(root_rank);
-
2488 MPI_Gather(&senddata, 1, detail::datatype_traits<T>::get_datatype(), recvdata, 1,
-
2489 detail::datatype_traits<T>::get_datatype(), root_rank, comm_);
+
2483 template<typename T>
+
2484 irequest ibcast(int root_rank, T *data, const layout<T> &l) const {
+
2485 check_root(root_rank);
+
2486 MPI_Request req;
+
2487 MPI_Ibcast(data, 1, detail::datatype_traits<layout<T>>::get_datatype(l), root_rank, comm_,
+
2488 &req);
+
2489 return impl::irequest(req);
2490 }
2491
-
2503 template<typename T>
-
2504 void gather(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
-
2505 const layout<T> &recvl) const {
+
2492 // === gather ===
+
2493 // === root gets a single value from each rank and stores in contiguous memory
+
2494 // --- blocking gather ---
+
2504 template<typename T>
+
2505 void gather(int root_rank, const T &senddata, T *recvdata) const {
2506 check_root(root_rank);
-
2507 MPI_Gather(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl), recvdata,
-
2508 1, detail::datatype_traits<layout<T>>::get_datatype(recvl), root_rank, comm_);
+
2507 MPI_Gather(&senddata, 1, detail::datatype_traits<T>::get_datatype(), recvdata, 1,
+
2508 detail::datatype_traits<T>::get_datatype(), root_rank, comm_);
2509 }
2510
-
2511 // --- non-blocking gather ---
-
2523 template<typename T>
-
2524 irequest igather(int root_rank, const T &senddata, T *recvdata) const {
+
2522 template<typename T>
+
2523 void gather(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
+
2524 const layout<T> &recvl) const {
2525 check_root(root_rank);
-
2526 MPI_Request req;
-
2527 MPI_Igather(&senddata, 1, detail::datatype_traits<T>::get_datatype(), recvdata, 1,
-
2528 detail::datatype_traits<T>::get_datatype(), root_rank, comm_, &req);
-
2529 return impl::irequest(req);
-
2530 }
-
2531
-
2545 template<typename T>
-
2546 irequest igather(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
-
2547 const layout<T> &recvl) const {
-
2548 check_root(root_rank);
-
2549 MPI_Request req;
-
2550 MPI_Igather(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
-
2551 recvdata, 1, detail::datatype_traits<layout<T>>::get_datatype(recvl),
-
2552 root_rank, comm_, &req);
-
2553 return impl::irequest(req);
-
2554 }
-
2555
-
2556 // --- blocking gather, non-root variant ---
-
2565 template<typename T>
-
2566 void gather(int root_rank, const T &senddata) const {
-
2567 check_nonroot(root_rank);
-
2568 MPI_Gather(&senddata, 1, detail::datatype_traits<T>::get_datatype(), 0, 0,
-
2569 MPI_DATATYPE_NULL, root_rank, comm_);
-
2570 }
-
2571
-
2581 template<typename T>
-
2582 void gather(int root_rank, const T *senddata, const layout<T> &sendl) const {
-
2583 check_nonroot(root_rank);
-
2584 MPI_Gather(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl), 0, 0,
-
2585 MPI_DATATYPE_NULL, root_rank, comm_);
-
2586 }
-
2587
-
2588 // --- non-blocking gather, non-root variant ---
-
2599 template<typename T>
-
2600 irequest igather(int root_rank, const T &senddata) const {
-
2601 check_nonroot(root_rank);
-
2602 MPI_Request req;
-
2603 MPI_Igather(&senddata, 1, detail::datatype_traits<T>::get_datatype(), 0, 0,
-
2604 MPI_DATATYPE_NULL, root_rank, comm_, &req);
-
2605 return impl::irequest(req);
-
2606 }
-
2607
-
2619 template<typename T>
-
2620 irequest igather(int root_rank, const T *senddata, const layout<T> &sendl) const {
-
2621 check_nonroot(root_rank);
-
2622 MPI_Request req;
-
2623 MPI_Igather(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl), 0, 0,
-
2624 MPI_DATATYPE_NULL, root_rank, comm_, &req);
-
2625 return impl::irequest(req);
-
2626 }
-
2627
-
2628 // === root gets varying amount of data from each rank and stores in non-contiguous memory
-
2629 // --- blocking gather ---
-
2643 template<typename T>
-
2644 void gatherv(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
-
2645 const layouts<T> &recvls, const displacements &recvdispls) const {
-
2646 check_root(root_rank);
-
2647 check_size(recvls);
-
2648 check_size(recvdispls);
-
2649 int N(size());
-
2650 displacements senddispls(N);
-
2651 layouts<T> sendls(N);
-
2652 sendls[root_rank] = sendl;
-
2653 if (rank() == root_rank)
-
2654 alltoallv(senddata, sendls, senddispls, recvdata, recvls, recvdispls);
-
2655 else
-
2656 alltoallv(senddata, sendls, senddispls, recvdata, mpl::layouts<T>(N), recvdispls);
-
2657 }
-
2658
-
2671 template<typename T>
-
2672 void gatherv(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
-
2673 const layouts<T> &recvls) const {
-
2674 gatherv(root_rank, senddata, sendl, recvdata, recvls, displacements(size()));
-
2675 }
-
2676
-
2677 // --- non-blocking gather ---
-
2692 template<typename T>
-
2693 irequest igatherv(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
-
2694 const layouts<T> &recvls, const displacements &recvdispls) const {
-
2695 check_root(root_rank);
-
2696 check_size(recvls);
-
2697 check_size(recvdispls);
-
2698 int N(size());
-
2699 displacements senddispls(N);
-
2700 layouts<T> sendls(N);
-
2701 sendls[root_rank] = sendl;
-
2702 if (rank() == root_rank)
-
2703 return ialltoallv(senddata, sendls, senddispls, recvdata, recvls, recvdispls);
-
2704 else
-
2705 return ialltoallv(senddata, sendls, senddispls, recvdata, mpl::layouts<T>(N),
-
2706 recvdispls);
-
2707 }
-
2708
-
2722 template<typename T>
-
2723 irequest igatherv(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
-
2724 const layouts<T> &recvls) const {
-
2725 return igatherv(root_rank, senddata, sendl, recvdata, recvls, displacements(size()));
+
2526 MPI_Gather(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl), recvdata,
+
2527 1, detail::datatype_traits<layout<T>>::get_datatype(recvl), root_rank, comm_);
+
2528 }
+
2529
+
2530 // --- non-blocking gather ---
+
2542 template<typename T>
+
2543 irequest igather(int root_rank, const T &senddata, T *recvdata) const {
+
2544 check_root(root_rank);
+
2545 MPI_Request req;
+
2546 MPI_Igather(&senddata, 1, detail::datatype_traits<T>::get_datatype(), recvdata, 1,
+
2547 detail::datatype_traits<T>::get_datatype(), root_rank, comm_, &req);
+
2548 return impl::irequest(req);
+
2549 }
+
2550
+
2564 template<typename T>
+
2565 irequest igather(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
+
2566 const layout<T> &recvl) const {
+
2567 check_root(root_rank);
+
2568 MPI_Request req;
+
2569 MPI_Igather(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
+
2570 recvdata, 1, detail::datatype_traits<layout<T>>::get_datatype(recvl),
+
2571 root_rank, comm_, &req);
+
2572 return impl::irequest(req);
+
2573 }
+
2574
+
2575 // --- blocking gather, non-root variant ---
+
2584 template<typename T>
+
2585 void gather(int root_rank, const T &senddata) const {
+
2586 check_nonroot(root_rank);
+
2587 MPI_Gather(&senddata, 1, detail::datatype_traits<T>::get_datatype(), 0, 0,
+
2588 MPI_DATATYPE_NULL, root_rank, comm_);
+
2589 }
+
2590
+
2600 template<typename T>
+
2601 void gather(int root_rank, const T *senddata, const layout<T> &sendl) const {
+
2602 check_nonroot(root_rank);
+
2603 MPI_Gather(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl), 0, 0,
+
2604 MPI_DATATYPE_NULL, root_rank, comm_);
+
2605 }
+
2606
+
2607 // --- non-blocking gather, non-root variant ---
+
2618 template<typename T>
+
2619 irequest igather(int root_rank, const T &senddata) const {
+
2620 check_nonroot(root_rank);
+
2621 MPI_Request req;
+
2622 MPI_Igather(&senddata, 1, detail::datatype_traits<T>::get_datatype(), 0, 0,
+
2623 MPI_DATATYPE_NULL, root_rank, comm_, &req);
+
2624 return impl::irequest(req);
+
2625 }
+
2626
+
2638 template<typename T>
+
2639 irequest igather(int root_rank, const T *senddata, const layout<T> &sendl) const {
+
2640 check_nonroot(root_rank);
+
2641 MPI_Request req;
+
2642 MPI_Igather(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl), 0, 0,
+
2643 MPI_DATATYPE_NULL, root_rank, comm_, &req);
+
2644 return impl::irequest(req);
+
2645 }
+
2646
+
2647 // === root gets varying amount of data from each rank and stores in non-contiguous memory
+
2648 // --- blocking gather ---
+
2662 template<typename T>
+
2663 void gatherv(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
+
2664 const layouts<T> &recvls, const displacements &recvdispls) const {
+
2665 check_root(root_rank);
+
2666 check_size(recvls);
+
2667 check_size(recvdispls);
+
2668 int N(size());
+
2669 displacements senddispls(N);
+
2670 layouts<T> sendls(N);
+
2671 sendls[root_rank] = sendl;
+
2672 if (rank() == root_rank)
+
2673 alltoallv(senddata, sendls, senddispls, recvdata, recvls, recvdispls);
+
2674 else
+
2675 alltoallv(senddata, sendls, senddispls, recvdata, mpl::layouts<T>(N), recvdispls);
+
2676 }
+
2677
+
2690 template<typename T>
+
2691 void gatherv(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
+
2692 const layouts<T> &recvls) const {
+
2693 gatherv(root_rank, senddata, sendl, recvdata, recvls, displacements(size()));
+
2694 }
+
2695
+
2696 // --- non-blocking gather ---
+
2711 template<typename T>
+
2712 irequest igatherv(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
+
2713 const layouts<T> &recvls, const displacements &recvdispls) const {
+
2714 check_root(root_rank);
+
2715 check_size(recvls);
+
2716 check_size(recvdispls);
+
2717 int N(size());
+
2718 displacements senddispls(N);
+
2719 layouts<T> sendls(N);
+
2720 sendls[root_rank] = sendl;
+
2721 if (rank() == root_rank)
+
2722 return ialltoallv(senddata, sendls, senddispls, recvdata, recvls, recvdispls);
+
2723 else
+
2724 return ialltoallv(senddata, sendls, senddispls, recvdata, mpl::layouts<T>(N),
+
2725 recvdispls);
2726 }
2727
-
2728 // --- blocking gather, non-root variant ---
-
2739 template<typename T>
-
2740 void gatherv(int root_rank, const T *senddata, const layout<T> &sendl) const {
-
2741 check_nonroot(root_rank);
-
2742 int N(size());
-
2743 displacements sendrecvdispls(N);
-
2744 layouts<T> sendls(N);
-
2745 sendls[root_rank] = sendl;
-
2746 alltoallv(senddata, sendls, sendrecvdispls, static_cast<T *>(nullptr), mpl::layouts<T>(N),
-
2747 sendrecvdispls);
-
2748 }
-
2749
-
2750 // --- non-blocking gather, non-root variant ---
-
2762 template<typename T>
-
2763 irequest igatherv(int root_rank, const T *senddata, const layout<T> &sendl) const {
-
2764 check_nonroot(root_rank);
-
2765 int N(size());
-
2766 displacements sendrecvdispls(N);
-
2767 layouts<T> sendls(N);
-
2768 sendls[root_rank] = sendl;
-
2769 return ialltoallv(senddata, sendls, sendrecvdispls, static_cast<T *>(nullptr),
-
2770 mpl::layouts<T>(N), sendrecvdispls);
-
2771 }
-
2772
-
2773 // === allgather ===
-
2774 // === get a single value from each rank and stores in contiguous memory
-
2775 // --- blocking allgather ---
-
2783 template<typename T>
-
2784 void allgather(const T &senddata, T *recvdata) const {
-
2785 MPI_Allgather(&senddata, 1, detail::datatype_traits<T>::get_datatype(), recvdata, 1,
-
2786 detail::datatype_traits<T>::get_datatype(), comm_);
-
2787 }
-
2788
-
2798 template<typename T>
-
2799 void allgather(const T *senddata, const layout<T> &sendl, T *recvdata,
-
2800 const layout<T> &recvl) const {
-
2801 MPI_Allgather(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
-
2802 recvdata, 1, detail::datatype_traits<layout<T>>::get_datatype(recvl),
-
2803 comm_);
-
2804 }
-
2805
-
2806 // --- non-blocking allgather ---
-
2816 template<typename T>
-
2817 irequest iallgather(const T &senddata, T *recvdata) const {
-
2818 MPI_Request req;
-
2819 MPI_Iallgather(&senddata, 1, detail::datatype_traits<T>::get_datatype(), recvdata, 1,
-
2820 detail::datatype_traits<T>::get_datatype(), comm_, &req);
-
2821 return impl::irequest(req);
-
2822 }
-
2823
-
2835 template<typename T>
-
2836 irequest iallgather(const T *senddata, const layout<T> &sendl, T *recvdata,
-
2837 const layout<T> &recvl) const {
-
2838 MPI_Request req;
-
2839 MPI_Iallgather(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
-
2840 recvdata, 1, detail::datatype_traits<layout<T>>::get_datatype(recvl),
-
2841 comm_, &req);
-
2842 return impl::irequest(req);
-
2843 }
-
2844
-
2845 // === get varying amount of data from each rank and stores in non-contiguous memory
-
2846 // --- blocking allgather ---
-
2858 template<typename T>
-
2859 void allgatherv(const T *senddata, const layout<T> &sendl, T *recvdata,
-
2860 const layouts<T> &recvls, const displacements &recvdispls) const {
-
2861 check_size(recvls);
-
2862 check_size(recvdispls);
-
2863 int N(size());
-
2864 displacements senddispls(N);
-
2865 layouts<T> sendls(N, sendl);
-
2866 alltoallv(senddata, sendls, senddispls, recvdata, recvls, recvdispls);
-
2867 }
-
2868
-
2879 template<typename T>
-
2880 void allgatherv(const T *senddata, const layout<T> &sendl, T *recvdata,
-
2881 const layouts<T> &recvls) const {
-
2882 allgatherv(senddata, sendl, recvdata, recvls, displacements(size()));
-
2883 }
-
2884
-
2885 // --- non-blocking allgather ---
-
2898 template<typename T>
-
2899 irequest iallgatherv(const T *senddata, const layout<T> &sendl, T *recvdata,
-
2900 const layouts<T> &recvls, const displacements &recvdispls) const {
-
2901 check_size(recvls);
-
2902 check_size(recvdispls);
-
2903 int N(size());
-
2904 displacements senddispls(N);
-
2905 layouts<T> sendls(N, sendl);
-
2906 return ialltoallv(senddata, sendls, senddispls, recvdata, recvls, recvdispls);
-
2907 }
-
2908
-
2920 template<typename T>
-
2921 irequest iallgatherv(const T *senddata, const layout<T> &sendl, T *recvdata,
-
2922 const layouts<T> &recvls) const {
-
2923 return iallgatherv(senddata, sendl, recvdata, recvls, displacements(size()));
-
2924 }
-
2925
-
2926 // === scatter ===
-
2927 // === root sends a single value from contiguous memory to each rank
-
2928 // --- blocking scatter ---
-
2938 template<typename T>
-
2939 void scatter(int root_rank, const T *senddata, T &recvdata) const {
-
2940 check_root(root_rank);
-
2941 MPI_Scatter(senddata, 1, detail::datatype_traits<T>::get_datatype(), &recvdata, 1,
-
2942 detail::datatype_traits<T>::get_datatype(), root_rank, comm_);
+
2741 template<typename T>
+
2742 irequest igatherv(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
+
2743 const layouts<T> &recvls) const {
+
2744 return igatherv(root_rank, senddata, sendl, recvdata, recvls, displacements(size()));
+
2745 }
+
2746
+
2747 // --- blocking gather, non-root variant ---
+
2758 template<typename T>
+
2759 void gatherv(int root_rank, const T *senddata, const layout<T> &sendl) const {
+
2760 check_nonroot(root_rank);
+
2761 int N(size());
+
2762 displacements sendrecvdispls(N);
+
2763 layouts<T> sendls(N);
+
2764 sendls[root_rank] = sendl;
+
2765 alltoallv(senddata, sendls, sendrecvdispls, static_cast<T *>(nullptr), mpl::layouts<T>(N),
+
2766 sendrecvdispls);
+
2767 }
+
2768
+
2769 // --- non-blocking gather, non-root variant ---
+
2781 template<typename T>
+
2782 irequest igatherv(int root_rank, const T *senddata, const layout<T> &sendl) const {
+
2783 check_nonroot(root_rank);
+
2784 int N(size());
+
2785 displacements sendrecvdispls(N);
+
2786 layouts<T> sendls(N);
+
2787 sendls[root_rank] = sendl;
+
2788 return ialltoallv(senddata, sendls, sendrecvdispls, static_cast<T *>(nullptr),
+
2789 mpl::layouts<T>(N), sendrecvdispls);
+
2790 }
+
2791
+
2792 // === allgather ===
+
2793 // === get a single value from each rank and stores in contiguous memory
+
2794 // --- blocking allgather ---
+
2802 template<typename T>
+
2803 void allgather(const T &senddata, T *recvdata) const {
+
2804 MPI_Allgather(&senddata, 1, detail::datatype_traits<T>::get_datatype(), recvdata, 1,
+
2805 detail::datatype_traits<T>::get_datatype(), comm_);
+
2806 }
+
2807
+
2817 template<typename T>
+
2818 void allgather(const T *senddata, const layout<T> &sendl, T *recvdata,
+
2819 const layout<T> &recvl) const {
+
2820 MPI_Allgather(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
+
2821 recvdata, 1, detail::datatype_traits<layout<T>>::get_datatype(recvl),
+
2822 comm_);
+
2823 }
+
2824
+
2825 // --- non-blocking allgather ---
+
2835 template<typename T>
+
2836 irequest iallgather(const T &senddata, T *recvdata) const {
+
2837 MPI_Request req;
+
2838 MPI_Iallgather(&senddata, 1, detail::datatype_traits<T>::get_datatype(), recvdata, 1,
+
2839 detail::datatype_traits<T>::get_datatype(), comm_, &req);
+
2840 return impl::irequest(req);
+
2841 }
+
2842
+
2854 template<typename T>
+
2855 irequest iallgather(const T *senddata, const layout<T> &sendl, T *recvdata,
+
2856 const layout<T> &recvl) const {
+
2857 MPI_Request req;
+
2858 MPI_Iallgather(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
+
2859 recvdata, 1, detail::datatype_traits<layout<T>>::get_datatype(recvl),
+
2860 comm_, &req);
+
2861 return impl::irequest(req);
+
2862 }
+
2863
+
2864 // === get varying amount of data from each rank and stores in non-contiguous memory
+
2865 // --- blocking allgather ---
+
2877 template<typename T>
+
2878 void allgatherv(const T *senddata, const layout<T> &sendl, T *recvdata,
+
2879 const layouts<T> &recvls, const displacements &recvdispls) const {
+
2880 check_size(recvls);
+
2881 check_size(recvdispls);
+
2882 int N(size());
+
2883 displacements senddispls(N);
+
2884 layouts<T> sendls(N, sendl);
+
2885 alltoallv(senddata, sendls, senddispls, recvdata, recvls, recvdispls);
+
2886 }
+
2887
+
2898 template<typename T>
+
2899 void allgatherv(const T *senddata, const layout<T> &sendl, T *recvdata,
+
2900 const layouts<T> &recvls) const {
+
2901 allgatherv(senddata, sendl, recvdata, recvls, displacements(size()));
+
2902 }
+
2903
+
2904 // --- non-blocking allgather ---
+
2917 template<typename T>
+
2918 irequest iallgatherv(const T *senddata, const layout<T> &sendl, T *recvdata,
+
2919 const layouts<T> &recvls, const displacements &recvdispls) const {
+
2920 check_size(recvls);
+
2921 check_size(recvdispls);
+
2922 int N(size());
+
2923 displacements senddispls(N);
+
2924 layouts<T> sendls(N, sendl);
+
2925 return ialltoallv(senddata, sendls, senddispls, recvdata, recvls, recvdispls);
+
2926 }
+
2927
+
2939 template<typename T>
+
2940 irequest iallgatherv(const T *senddata, const layout<T> &sendl, T *recvdata,
+
2941 const layouts<T> &recvls) const {
+
2942 return iallgatherv(senddata, sendl, recvdata, recvls, displacements(size()));
2943 }
2944
-
2956 template<typename T>
-
2957 void scatter(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
-
2958 const layout<T> &recvl) const {
+
2945 // === scatter ===
+
2946 // === root sends a single value from contiguous memory to each rank
+
2947 // --- blocking scatter ---
+
2957 template<typename T>
+
2958 void scatter(int root_rank, const T *senddata, T &recvdata) const {
2959 check_root(root_rank);
-
2960 MPI_Scatter(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
-
2961 recvdata, 1, detail::datatype_traits<layout<T>>::get_datatype(recvl),
-
2962 root_rank, comm_);
-
2963 }
-
2964
-
2965 // --- non-blocking scatter ---
-
2977 template<typename T>
-
2978 irequest iscatter(int root_rank, const T *senddata, T &recvdata) const {
-
2979 check_root(root_rank);
-
2980 MPI_Request req;
-
2981 MPI_Iscatter(senddata, 1, detail::datatype_traits<T>::get_datatype(), &recvdata, 1,
-
2982 detail::datatype_traits<T>::get_datatype(), root_rank, comm_, &req);
-
2983 return impl::irequest(req);
-
2984 }
-
2985
-
2999 template<typename T>
-
3000 irequest iscatter(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
-
3001 const layout<T> &recvl) const {
-
3002 check_root(root_rank);
-
3003 MPI_Request req;
-
3004 MPI_Iscatter(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
-
3005 recvdata, 1, detail::datatype_traits<layout<T>>::get_datatype(recvl),
-
3006 root_rank, comm_, &req);
-
3007 return impl::irequest(req);
-
3008 }
-
3009
-
3010 // --- blocking scatter, non-root variant ---
-
3017 template<typename T>
-
3018 void scatter(int root_rank, T &recvdata) const {
-
3019 check_nonroot(root_rank);
-
3020 MPI_Scatter(0, 0, MPI_DATATYPE_NULL, &recvdata, 1,
-
3021 detail::datatype_traits<T>::get_datatype(), root_rank, comm_);
-
3022 }
-
3023
-
3031 template<typename T>
-
3032 void scatter(int root_rank, T *recvdata, const layout<T> &recvl) const {
-
3033 check_root(root_rank);
-
3034 MPI_Scatter(0, 0, MPI_DATATYPE_NULL, recvdata, 1,
-
3035 detail::datatype_traits<layout<T>>::get_datatype(recvl), root_rank, comm_);
-
3036 }
-
3037
-
3038 // --- non-blocking scatter, non-root variant ---
-
3047 template<typename T>
-
3048 irequest iscatter(int root_rank, T &recvdata) const {
-
3049 check_nonroot(root_rank);
-
3050 MPI_Request req;
-
3051 MPI_Iscatter(0, 0, MPI_DATATYPE_NULL, &recvdata, 1,
-
3052 detail::datatype_traits<T>::get_datatype(), root_rank, comm_, &req);
-
3053 return impl::irequest(req);
-
3054 }
-
3055
-
3065 template<typename T>
-
3066 irequest iscatter(int root_rank, T *recvdata, const layout<T> &recvl) const {
-
3067 check_nonroot(root_rank);
-
3068 MPI_Request req;
-
3069 MPI_Iscatter(0, 0, MPI_DATATYPE_NULL, recvdata, 1,
-
3070 detail::datatype_traits<layout<T>>::get_datatype(recvl), root_rank, comm_,
-
3071 &req);
+
2960 MPI_Scatter(senddata, 1, detail::datatype_traits<T>::get_datatype(), &recvdata, 1,
+
2961 detail::datatype_traits<T>::get_datatype(), root_rank, comm_);
+
2962 }
+
2963
+
2975 template<typename T>
+
2976 void scatter(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
+
2977 const layout<T> &recvl) const {
+
2978 check_root(root_rank);
+
2979 MPI_Scatter(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
+
2980 recvdata, 1, detail::datatype_traits<layout<T>>::get_datatype(recvl),
+
2981 root_rank, comm_);
+
2982 }
+
2983
+
2984 // --- non-blocking scatter ---
+
2996 template<typename T>
+
2997 irequest iscatter(int root_rank, const T *senddata, T &recvdata) const {
+
2998 check_root(root_rank);
+
2999 MPI_Request req;
+
3000 MPI_Iscatter(senddata, 1, detail::datatype_traits<T>::get_datatype(), &recvdata, 1,
+
3001 detail::datatype_traits<T>::get_datatype(), root_rank, comm_, &req);
+
3002 return impl::irequest(req);
+
3003 }
+
3004
+
3018 template<typename T>
+
3019 irequest iscatter(int root_rank, const T *senddata, const layout<T> &sendl, T *recvdata,
+
3020 const layout<T> &recvl) const {
+
3021 check_root(root_rank);
+
3022 MPI_Request req;
+
3023 MPI_Iscatter(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
+
3024 recvdata, 1, detail::datatype_traits<layout<T>>::get_datatype(recvl),
+
3025 root_rank, comm_, &req);
+
3026 return impl::irequest(req);
+
3027 }
+
3028
+
3029 // --- blocking scatter, non-root variant ---
+
3036 template<typename T>
+
3037 void scatter(int root_rank, T &recvdata) const {
+
3038 check_nonroot(root_rank);
+
3039 MPI_Scatter(0, 0, MPI_DATATYPE_NULL, &recvdata, 1,
+
3040 detail::datatype_traits<T>::get_datatype(), root_rank, comm_);
+
3041 }
+
3042
+
3050 template<typename T>
+
3051 void scatter(int root_rank, T *recvdata, const layout<T> &recvl) const {
+
3052 check_root(root_rank);
+
3053 MPI_Scatter(0, 0, MPI_DATATYPE_NULL, recvdata, 1,
+
3054 detail::datatype_traits<layout<T>>::get_datatype(recvl), root_rank, comm_);
+
3055 }
+
3056
+
3057 // --- non-blocking scatter, non-root variant ---
+
3066 template<typename T>
+
3067 irequest iscatter(int root_rank, T &recvdata) const {
+
3068 check_nonroot(root_rank);
+
3069 MPI_Request req;
+
3070 MPI_Iscatter(0, 0, MPI_DATATYPE_NULL, &recvdata, 1,
+
3071 detail::datatype_traits<T>::get_datatype(), root_rank, comm_, &req);
3072 return impl::irequest(req);
3073 }
3074
-
3075 // === root sends varying amount of data from non-contiguous memory to each rank
-
3076 // --- blocking scatter ---
-
3090 template<typename T>
-
3091 void scatterv(int root_rank, const T *senddata, const layouts<T> &sendls,
-
3092 const displacements &senddispls, T *recvdata, const layout<T> &recvl) const {
-
3093 check_root(root_rank);
-
3094 check_size(sendls);
-
3095 check_size(senddispls);
-
3096 const int N{size()};
-
3097 displacements recvdispls(N);
-
3098 layouts<T> recvls(N);
-
3099 recvls[root_rank] = recvl;
-
3100 if (rank() == root_rank)
-
3101 alltoallv(senddata, sendls, senddispls, recvdata, recvls, recvdispls);
-
3102 else
-
3103 alltoallv(senddata, sendls, senddispls, recvdata, mpl::layouts<T>(N), recvdispls);
-
3104 }
-
3105
-
3118 template<typename T>
-
3119 void scatterv(int root_rank, const T *senddata, const layouts<T> &sendls, T *recvdata,
-
3120 const layout<T> &recvl) const {
-
3121 scatterv(root_rank, senddata, sendls, displacements(size()), recvdata, recvl);
-
3122 }
-
3123
-
3124 // --- non-blocking scatter ---
-
3139 template<typename T>
-
3140 irequest iscatterv(int root_rank, const T *senddata, const layouts<T> &sendls,
-
3141 const displacements &senddispls, T *recvdata,
-
3142 const layout<T> &recvl) const {
-
3143 check_root(root_rank);
-
3144 check_size(sendls);
-
3145 check_size(senddispls);
-
3146 const int N{size()};
-
3147 displacements recvdispls(N);
-
3148 layouts<T> recvls(N);
-
3149 recvls[root_rank] = recvl;
-
3150 if (rank() == root_rank)
-
3151 return ialltoallv(senddata, sendls, senddispls, recvdata, recvls, recvdispls);
-
3152 else
-
3153 return ialltoallv(senddata, sendls, senddispls, recvdata, mpl::layouts<T>(N),
-
3154 recvdispls);
-
3155 }
-
3156
-
3170 template<typename T>
-
3171 irequest iscatterv(int root_rank, const T *senddata, const layouts<T> &sendls, T *recvdata,
-
3172 const layout<T> &recvl) const {
-
3173 return iscatterv(root_rank, senddata, sendls, displacements(size()), recvdata, recvl);
+
3084 template<typename T>
+
3085 irequest iscatter(int root_rank, T *recvdata, const layout<T> &recvl) const {
+
3086 check_nonroot(root_rank);
+
3087 MPI_Request req;
+
3088 MPI_Iscatter(0, 0, MPI_DATATYPE_NULL, recvdata, 1,
+
3089 detail::datatype_traits<layout<T>>::get_datatype(recvl), root_rank, comm_,
+
3090 &req);
+
3091 return impl::irequest(req);
+
3092 }
+
3093
+
3094 // === root sends varying amount of data from non-contiguous memory to each rank
+
3095 // --- blocking scatter ---
+
3109 template<typename T>
+
3110 void scatterv(int root_rank, const T *senddata, const layouts<T> &sendls,
+
3111 const displacements &senddispls, T *recvdata, const layout<T> &recvl) const {
+
3112 check_root(root_rank);
+
3113 check_size(sendls);
+
3114 check_size(senddispls);
+
3115 const int N{size()};
+
3116 displacements recvdispls(N);
+
3117 layouts<T> recvls(N);
+
3118 recvls[root_rank] = recvl;
+
3119 if (rank() == root_rank)
+
3120 alltoallv(senddata, sendls, senddispls, recvdata, recvls, recvdispls);
+
3121 else
+
3122 alltoallv(senddata, sendls, senddispls, recvdata, mpl::layouts<T>(N), recvdispls);
+
3123 }
+
3124
+
3137 template<typename T>
+
3138 void scatterv(int root_rank, const T *senddata, const layouts<T> &sendls, T *recvdata,
+
3139 const layout<T> &recvl) const {
+
3140 scatterv(root_rank, senddata, sendls, displacements(size()), recvdata, recvl);
+
3141 }
+
3142
+
3143 // --- non-blocking scatter ---
+
3158 template<typename T>
+
3159 irequest iscatterv(int root_rank, const T *senddata, const layouts<T> &sendls,
+
3160 const displacements &senddispls, T *recvdata,
+
3161 const layout<T> &recvl) const {
+
3162 check_root(root_rank);
+
3163 check_size(sendls);
+
3164 check_size(senddispls);
+
3165 const int N{size()};
+
3166 displacements recvdispls(N);
+
3167 layouts<T> recvls(N);
+
3168 recvls[root_rank] = recvl;
+
3169 if (rank() == root_rank)
+
3170 return ialltoallv(senddata, sendls, senddispls, recvdata, recvls, recvdispls);
+
3171 else
+
3172 return ialltoallv(senddata, sendls, senddispls, recvdata, mpl::layouts<T>(N),
+
3173 recvdispls);
3174 }
3175
-
3176 // --- blocking scatter, non-root variant ---
-
3187 template<typename T>
-
3188 void scatterv(int root_rank, T *recvdata, const layout<T> &recvl) const {
-
3189 check_root(root_rank);
-
3190 const int N{size()};
-
3191 displacements sendrecvdispls(N);
-
3192 layouts<T> recvls(N);
-
3193 recvls[root_rank] = recvl;
-
3194 alltoallv(static_cast<const T *>(nullptr), mpl::layouts<T>(N), sendrecvdispls, recvdata,
-
3195 recvls, sendrecvdispls);
-
3196 }
-
3197
-
3198 // --- non-blocking scatter, non-root variant ---
-
3210 template<typename T>
-
3211 irequest iscatterv(int root_rank, T *recvdata, const layout<T> &recvl) const {
-
3212 check_root(root_rank);
-
3213 const int N{size()};
-
3214 displacements sendrecvdispls(N);
-
3215 layouts<T> recvls(N);
-
3216 recvls[root_rank] = recvl;
-
3217 return ialltoallv(static_cast<const T *>(nullptr), mpl::layouts<T>(N), sendrecvdispls,
-
3218 recvdata, recvls, sendrecvdispls);
-
3219 }
-
3220
-
3221 // === all-to-all ===
-
3222 // === each rank sends a single value to each rank
-
3223 // --- blocking all-to-all ---
-
3235 template<typename T>
-
3236 void alltoall(const T *senddata, T *recvdata) const {
-
3237 MPI_Alltoall(senddata, 1, detail::datatype_traits<T>::get_datatype(), recvdata, 1,
-
3238 detail::datatype_traits<T>::get_datatype(), comm_);
-
3239 }
-
3240
-
3257 template<typename T>
-
3258 void alltoall(const T *senddata, const layout<T> &sendl, T *recvdata,
-
3259 const layout<T> &recvl) const {
-
3260 MPI_Alltoall(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
-
3261 recvdata, 1, detail::datatype_traits<layout<T>>::get_datatype(recvl), comm_);
-
3262 }
-
3263
-
3264 // --- non-blocking all-to-all ---
-
3278 template<typename T>
-
3279 irequest ialltoall(const T *senddata, T *recvdata) const {
-
3280 MPI_Request req;
-
3281 MPI_Ialltoall(senddata, 1, detail::datatype_traits<T>::get_datatype(), recvdata, 1,
-
3282 detail::datatype_traits<T>::get_datatype(), comm_, &req);
-
3283 return impl::irequest(req);
-
3284 }
-
3285
-
3304 template<typename T>
-
3305 irequest ialltoall(const T *senddata, const layout<T> &sendl, T *recvdata,
-
3306 const layout<T> &recvl) const {
-
3307 MPI_Request req;
-
3308 MPI_Ialltoall(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
-
3309 recvdata, 1, detail::datatype_traits<layout<T>>::get_datatype(recvl), comm_,
-
3310 &req);
-
3311 return impl::irequest(req);
-
3312 }
-
3313
-
3314 // --- blocking all-to-all, in place ---
-
3327 template<typename T>
-
3328 void alltoall(T *sendrecvdata) const {
-
3329 MPI_Alltoall(MPI_IN_PLACE, 0, MPI_DATATYPE_NULL, sendrecvdata, 1,
-
3330 detail::datatype_traits<T>::get_datatype(), comm_);
+
3189 template<typename T>
+
3190 irequest iscatterv(int root_rank, const T *senddata, const layouts<T> &sendls, T *recvdata,
+
3191 const layout<T> &recvl) const {
+
3192 return iscatterv(root_rank, senddata, sendls, displacements(size()), recvdata, recvl);
+
3193 }
+
3194
+
3195 // --- blocking scatter, non-root variant ---
+
3206 template<typename T>
+
3207 void scatterv(int root_rank, T *recvdata, const layout<T> &recvl) const {
+
3208 check_root(root_rank);
+
3209 const int N{size()};
+
3210 displacements sendrecvdispls(N);
+
3211 layouts<T> recvls(N);
+
3212 recvls[root_rank] = recvl;
+
3213 alltoallv(static_cast<const T *>(nullptr), mpl::layouts<T>(N), sendrecvdispls, recvdata,
+
3214 recvls, sendrecvdispls);
+
3215 }
+
3216
+
3217 // --- non-blocking scatter, non-root variant ---
+
3229 template<typename T>
+
3230 irequest iscatterv(int root_rank, T *recvdata, const layout<T> &recvl) const {
+
3231 check_root(root_rank);
+
3232 const int N{size()};
+
3233 displacements sendrecvdispls(N);
+
3234 layouts<T> recvls(N);
+
3235 recvls[root_rank] = recvl;
+
3236 return ialltoallv(static_cast<const T *>(nullptr), mpl::layouts<T>(N), sendrecvdispls,
+
3237 recvdata, recvls, sendrecvdispls);
+
3238 }
+
3239
+
3240 // === all-to-all ===
+
3241 // === each rank sends a single value to each rank
+
3242 // --- blocking all-to-all ---
+
3254 template<typename T>
+
3255 void alltoall(const T *senddata, T *recvdata) const {
+
3256 MPI_Alltoall(senddata, 1, detail::datatype_traits<T>::get_datatype(), recvdata, 1,
+
3257 detail::datatype_traits<T>::get_datatype(), comm_);
+
3258 }
+
3259
+
3276 template<typename T>
+
3277 void alltoall(const T *senddata, const layout<T> &sendl, T *recvdata,
+
3278 const layout<T> &recvl) const {
+
3279 MPI_Alltoall(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
+
3280 recvdata, 1, detail::datatype_traits<layout<T>>::get_datatype(recvl), comm_);
+
3281 }
+
3282
+
3283 // --- non-blocking all-to-all ---
+
3297 template<typename T>
+
3298 irequest ialltoall(const T *senddata, T *recvdata) const {
+
3299 MPI_Request req;
+
3300 MPI_Ialltoall(senddata, 1, detail::datatype_traits<T>::get_datatype(), recvdata, 1,
+
3301 detail::datatype_traits<T>::get_datatype(), comm_, &req);
+
3302 return impl::irequest(req);
+
3303 }
+
3304
+
3323 template<typename T>
+
3324 irequest ialltoall(const T *senddata, const layout<T> &sendl, T *recvdata,
+
3325 const layout<T> &recvl) const {
+
3326 MPI_Request req;
+
3327 MPI_Ialltoall(senddata, 1, detail::datatype_traits<layout<T>>::get_datatype(sendl),
+
3328 recvdata, 1, detail::datatype_traits<layout<T>>::get_datatype(recvl), comm_,
+
3329 &req);
+
3330 return impl::irequest(req);
3331 }
3332
-
3348 template<typename T>
-
3349 void alltoall(T *sendrecvdata, const layout<T> &sendrecvl) const {
-
3350 MPI_Alltoall(MPI_IN_PLACE, 0, MPI_DATATYPE_NULL, sendrecvdata, 1,
-
3351 detail::datatype_traits<layout<T>>::get_datatype(sendrecvl), comm_);
-
3352 }
-
3353
-
3354 // --- non-blocking all-to-all, in place ---
-
3369 template<typename T>
-
3370 irequest ialltoall(T *sendrecvdata) const {
-
3371 MPI_Request req;
-
3372 MPI_Ialltoall(MPI_IN_PLACE, 0, MPI_DATATYPE_NULL, sendrecvdata, 1,
-
3373 detail::datatype_traits<T>::get_datatype(), comm_, &req);
-
3374 return impl::irequest(req);
-
3375 }
-
3376
-
3394 template<typename T>
-
3395 irequest ialltoall(T *sendrecvdata, const layout<T> &sendrecvl) const {
-
3396 MPI_Request req;
-
3397 MPI_Ialltoall(MPI_IN_PLACE, 0, MPI_DATATYPE_NULL, sendrecvdata, 1,
-
3398 detail::datatype_traits<layout<T>>::get_datatype(sendrecvl), comm_, &req);
-
3399 return impl::irequest(req);
-
3400 }
-
3401
-
3402 // === each rank sends a varying number of values to each rank with possibly different
-
3403 // layouts
-
3404 // --- blocking all-to-all ---
-
3426 template<typename T>
-
3427 void alltoallv(const T *senddata, const layouts<T> &sendls, const displacements &senddispls,
-
3428 T *recvdata, const layouts<T> &recvls,
-
3429 const displacements &recvdispls) const {
-
3430 check_size(senddispls);
-
3431 check_size(sendls);
-
3432 check_size(recvdispls);
-
3433 check_size(recvls);
-
3434 const std::vector<int> counts(recvls.size(), 1);
-
3435 const std::vector<int> senddispls_int(senddispls.begin(), senddispls.end());
-
3436 const std::vector<int> recvdispls_int(recvdispls.begin(), recvdispls.end());
-
3437 static_assert(
-
3438 sizeof(decltype(*sendls())) == sizeof(MPI_Datatype),
-
3439 "compiler adds some unexpected padding, reinterpret cast will yield wrong results");
-
3440 MPI_Alltoallw(senddata, counts.data(), senddispls_int.data(),
-
3441 reinterpret_cast<const MPI_Datatype *>(sendls()), recvdata, counts.data(),
-
3442 recvdispls_int.data(), reinterpret_cast<const MPI_Datatype *>(recvls()),
-
3443 comm_);
-
3444 }
-
3445
-
3466 template<typename T>
-
3467 void alltoallv(const T *senddata, const layouts<T> &sendls, T *recvdata,
-
3468 const layouts<T> &recvls) const {
-
3469 const displacements sendrecvdispls(size());
-
3470 alltoallv(senddata, sendls, sendrecvdispls, recvdata, recvls, sendrecvdispls);
-
3471 }
-
3472
-
3473 // --- non-blocking all-to-all ---
-
3474 private:
-
3475 template<typename T>
-
3476 struct ialltoallv_state {
-
3477 MPI_Request req{};
-
3478 layouts<T> sendl;
-
3479 layouts<T> recvl;
-
3480 std::vector<int> counts;
-
3481 std::vector<int> senddispls_int;
-
3482 std::vector<int> recvdispls_int;
-
3483 MPI_Status status{};
-
3484 ialltoallv_state(const layouts<T> &sendl, const layouts<T> &recvl,
-
3485 std::vector<int> &&counts, std::vector<int> &&senddispls_int,
-
3486 std::vector<int> &&recvdispls_int)
-
3487 : sendl{sendl},
-
3488 recvl{recvl},
-
3489 counts{std::move(counts)},
-
3490 senddispls_int{std::move(senddispls_int)},
-
3491 recvdispls_int{std::move(recvdispls_int)} {}
-
3492 ialltoallv_state(const layouts<T> &recvl, std::vector<int> &&counts,
-
3493 std::vector<int> &&recvdispls_int)
-
3494 : sendl{},
-
3495 recvl{recvl},
-
3496 counts{std::move(counts)},
-
3497 senddispls_int{},
-
3498 recvdispls_int{std::move(recvdispls_int)} {}
-
3499 };
-
3500
-
3501 template<typename T>
-
3502 static int ialltoallv_query(void *state, MPI_Status *s) {
-
3503 ialltoallv_state<T> *sendrecv_state{static_cast<ialltoallv_state<T> *>(state)};
-
3504 const int error_backup{s->MPI_ERROR};
-
3505 *s = sendrecv_state->status;
-
3506 s->MPI_ERROR = error_backup;
-
3507 return MPI_SUCCESS;
-
3508 }
-
3509
-
3510 template<typename T>
-
3511 static int ialltoallv_free(void *state) {
-
3512 ialltoallv_state<T> *sendrecv_state{static_cast<ialltoallv_state<T> *>(state)};
-
3513 delete sendrecv_state;
-
3514 return MPI_SUCCESS;
-
3515 }
-
3516
-
3517 static int ialltoallv_cancel(void *state, int complete) { return MPI_SUCCESS; }
-
3518
-
3519 template<typename T>
-
3520 void ialltoallv(const T *senddata, T *recvdata, ialltoallv_state<T> *state) const {
-
3521 MPI_Request req;
-
3522 static_assert(
-
3523 sizeof(decltype(*state->sendl())) == sizeof(MPI_Datatype),
-
3524 "compiler adds some unexpected padding, reinterpret cast will yield wrong results");
-
3525 if (senddata != nullptr)
-
3526 MPI_Ialltoallw(senddata, state->counts.data(), state->senddispls_int.data(),
-
3527 reinterpret_cast<const MPI_Datatype *>(state->sendl()), recvdata,
-
3528 state->counts.data(), state->recvdispls_int.data(),
-
3529 reinterpret_cast<const MPI_Datatype *>(state->recvl()), comm_, &req);
-
3530 else
-
3531 MPI_Ialltoallw(MPI_IN_PLACE, 0, 0, 0, recvdata, state->counts.data(),
-
3532 state->recvdispls_int.data(),
-
3533 reinterpret_cast<const MPI_Datatype *>(state->recvl()), comm_, &req);
-
3534 MPI_Status s;
-
3535 MPI_Wait(&req, &s);
-
3536 state->status = s;
-
3537 MPI_Grequest_complete(state->req);
-
3538 }
-
3539
-
3540 public:
-
3563 template<typename T>
-
3564 irequest ialltoallv(const T *senddata, const layouts<T> &sendls,
-
3565 const displacements &senddispls, T *recvdata, const layouts<T> &recvls,
-
3566 const displacements &recvdispls) const {
-
3567 check_size(senddispls);
-
3568 check_size(sendls);
-
3569 check_size(recvdispls);
-
3570 check_size(recvls);
-
3571 ialltoallv_state<T> *state{
-
3572 new ialltoallv_state<T>(sendls, recvls, std::vector<int>(recvls.size(), 1),
-
3573 std::vector<int>(senddispls.begin(), senddispls.end()),
-
3574 std::vector<int>(recvdispls.begin(), recvdispls.end()))};
-
3575 MPI_Request req;
-
3576 MPI_Grequest_start(ialltoallv_query<T>, ialltoallv_free<T>, ialltoallv_cancel, state,
-
3577 &req);
-
3578 state->req = req;
-
3579 std::thread thread(
-
3580 [this, senddata, recvdata, state]() { ialltoallv(senddata, recvdata, state); });
-
3581 thread.detach();
-
3582 return impl::irequest(req);
-
3583 }
-
3584
-
3606 template<typename T>
-
3607 irequest ialltoallv(const T *senddata, const layouts<T> &sendls, T *recvdata,
-
3608 const layouts<T> &recvls) const {
-
3609 const displacements sendrecvdispls(size());
-
3610 return ialltoallv(senddata, sendls, sendrecvdispls, recvdata, recvls, sendrecvdispls);
-
3611 }
-
3612
-
3613 // --- blocking all-to-all, in place ---
-
3630 template<typename T>
-
3631 void alltoallv(T *sendrecvdata, const layouts<T> &sendrecvls,
-
3632 const displacements &sendrecvdispls) const {
-
3633 check_size(sendrecvdispls);
-
3634 check_size(sendrecvls);
-
3635 const std::vector<int> counts(sendrecvls.size(), 1);
-
3636 const std::vector<int> sendrecvdispls_int(sendrecvdispls.begin(), sendrecvdispls.end());
-
3637 MPI_Alltoallw(MPI_IN_PLACE, 0, 0, 0, sendrecvdata, counts.data(),
-
3638 sendrecvdispls_int.data(),
-
3639 reinterpret_cast<const MPI_Datatype *>(sendrecvls()), comm_);
-
3640 }
-
3641
-
3659 template<typename T>
-
3660 void alltoallv(T *sendrecvdata, const layouts<T> &sendrecvls) const {
-
3661 alltoallv(sendrecvdata, sendrecvls, displacements(size()));
-
3662 }
-
3663
-
3664 // --- non-blocking all-to-all, in place ---
-
3682 template<typename T>
-
3683 irequest ialltoallv(T *sendrecvdata, const layouts<T> &sendrecvls,
-
3684 const displacements &sendrecvdispls) const {
-
3685 check_size(sendrecvdispls);
-
3686 check_size(sendrecvls);
-
3687 ialltoallv_state<T> *state{new ialltoallv_state<T>(
-
3688 sendrecvls, std::vector<int>(sendrecvls.size(), 1),
-
3689 std::vector<int>(sendrecvdispls.begin(), sendrecvdispls.end()))};
-
3690 MPI_Request req;
-
3691 MPI_Grequest_start(ialltoallv_query<T>, ialltoallv_free<T>, ialltoallv_cancel, state,
-
3692 &req);
-
3693 state->req = req;
-
3694 std::thread thread([this, sendrecvdata, state]() {
-
3695 ialltoallv(static_cast<T *>(nullptr), sendrecvdata, state);
-
3696 });
-
3697 thread.detach();
-
3698 return impl::irequest(req);
-
3699 }
-
3700
-
3719 template<typename T>
-
3720 irequest ialltoallv(T *sendrecvdata, const layouts<T> &sendrecvls) const {
-
3721 return ialltoallv(sendrecvdata, sendrecvls, displacements(size()));
-
3722 }
-
3723
-
3724 // === reduce ===
-
3725 // --- blocking reduce ---
-
3737 template<typename T, typename F>
-
3738 void reduce(F f, int root_rank, const T &senddata, T &recvdata) const {
-
3739 check_root(root_rank);
-
3740 MPI_Reduce(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
3741 detail::get_op<T, F>(f).mpi_op, root_rank, comm_);
-
3742 }
-
3743
-
3758 template<typename T, typename F>
-
3759 void reduce(F f, int root_rank, const T *senddata, T *recvdata,
-
3760 const contiguous_layout<T> &l) const {
-
3761 check_root(root_rank);
-
3762 MPI_Reduce(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
-
3763 detail::get_op<T, F>(f).mpi_op, root_rank, comm_);
-
3764 }
-
3765
-
3766 // --- non-blocking reduce ---
-
3779 template<typename T, typename F>
-
3780 irequest ireduce(F f, int root_rank, const T &senddata, T &recvdata) const {
-
3781 check_root(root_rank);
-
3782 MPI_Request req;
-
3783 MPI_Ireduce(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
3784 detail::get_op<T, F>(f).mpi_op, root_rank, comm_, &req);
-
3785 return impl::irequest(req);
-
3786 }
-
3787
-
3802 template<typename T, typename F>
-
3803 irequest ireduce(F f, int root_rank, const T *senddata, T *recvdata,
-
3804 const contiguous_layout<T> &l) const {
-
3805 check_root(root_rank);
-
3806 MPI_Request req;
-
3807 MPI_Ireduce(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
-
3808 detail::get_op<T, F>(f).mpi_op, root_rank, comm_, &req);
-
3809 return impl::irequest(req);
-
3810 }
-
3811
-
3812 // --- blocking reduce, in place ---
-
3824 template<typename T, typename F>
-
3825 void reduce(F f, int root_rank, T &sendrecvdata) const {
+
3333 // --- blocking all-to-all, in place ---
+
3346 template<typename T>
+
3347 void alltoall(T *sendrecvdata) const {
+
3348 MPI_Alltoall(MPI_IN_PLACE, 0, MPI_DATATYPE_NULL, sendrecvdata, 1,
+
3349 detail::datatype_traits<T>::get_datatype(), comm_);
+
3350 }
+
3351
+
3367 template<typename T>
+
3368 void alltoall(T *sendrecvdata, const layout<T> &sendrecvl) const {
+
3369 MPI_Alltoall(MPI_IN_PLACE, 0, MPI_DATATYPE_NULL, sendrecvdata, 1,
+
3370 detail::datatype_traits<layout<T>>::get_datatype(sendrecvl), comm_);
+
3371 }
+
3372
+
3373 // --- non-blocking all-to-all, in place ---
+
3388 template<typename T>
+
3389 irequest ialltoall(T *sendrecvdata) const {
+
3390 MPI_Request req;
+
3391 MPI_Ialltoall(MPI_IN_PLACE, 0, MPI_DATATYPE_NULL, sendrecvdata, 1,
+
3392 detail::datatype_traits<T>::get_datatype(), comm_, &req);
+
3393 return impl::irequest(req);
+
3394 }
+
3395
+
3413 template<typename T>
+
3414 irequest ialltoall(T *sendrecvdata, const layout<T> &sendrecvl) const {
+
3415 MPI_Request req;
+
3416 MPI_Ialltoall(MPI_IN_PLACE, 0, MPI_DATATYPE_NULL, sendrecvdata, 1,
+
3417 detail::datatype_traits<layout<T>>::get_datatype(sendrecvl), comm_, &req);
+
3418 return impl::irequest(req);
+
3419 }
+
3420
+
3421 // === each rank sends a varying number of values to each rank with possibly different
+
3422 // layouts
+
3423 // --- blocking all-to-all ---
+
3445 template<typename T>
+
3446 void alltoallv(const T *senddata, const layouts<T> &sendls, const displacements &senddispls,
+
3447 T *recvdata, const layouts<T> &recvls,
+
3448 const displacements &recvdispls) const {
+
3449 check_size(senddispls);
+
3450 check_size(sendls);
+
3451 check_size(recvdispls);
+
3452 check_size(recvls);
+
3453 const std::vector<int> counts(recvls.size(), 1);
+
3454 const std::vector<int> senddispls_int(senddispls.begin(), senddispls.end());
+
3455 const std::vector<int> recvdispls_int(recvdispls.begin(), recvdispls.end());
+
3456 static_assert(
+
3457 sizeof(decltype(*sendls())) == sizeof(MPI_Datatype),
+
3458 "compiler adds some unexpected padding, reinterpret cast will yield wrong results");
+
3459 MPI_Alltoallw(senddata, counts.data(), senddispls_int.data(),
+
3460 reinterpret_cast<const MPI_Datatype *>(sendls()), recvdata, counts.data(),
+
3461 recvdispls_int.data(), reinterpret_cast<const MPI_Datatype *>(recvls()),
+
3462 comm_);
+
3463 }
+
3464
+
3485 template<typename T>
+
3486 void alltoallv(const T *senddata, const layouts<T> &sendls, T *recvdata,
+
3487 const layouts<T> &recvls) const {
+
3488 const displacements sendrecvdispls(size());
+
3489 alltoallv(senddata, sendls, sendrecvdispls, recvdata, recvls, sendrecvdispls);
+
3490 }
+
3491
+
3492 // --- non-blocking all-to-all ---
+
3493 private:
+
3494 template<typename T>
+
3495 struct ialltoallv_state {
+
3496 MPI_Request req{};
+
3497 layouts<T> sendl;
+
3498 layouts<T> recvl;
+
3499 std::vector<int> counts;
+
3500 std::vector<int> senddispls_int;
+
3501 std::vector<int> recvdispls_int;
+
3502 MPI_Status status{};
+
3503 ialltoallv_state(const layouts<T> &sendl, const layouts<T> &recvl,
+
3504 std::vector<int> &&counts, std::vector<int> &&senddispls_int,
+
3505 std::vector<int> &&recvdispls_int)
+
3506 : sendl{sendl},
+
3507 recvl{recvl},
+
3508 counts{std::move(counts)},
+
3509 senddispls_int{std::move(senddispls_int)},
+
3510 recvdispls_int{std::move(recvdispls_int)} {}
+
3511 ialltoallv_state(const layouts<T> &recvl, std::vector<int> &&counts,
+
3512 std::vector<int> &&recvdispls_int)
+
3513 : sendl{},
+
3514 recvl{recvl},
+
3515 counts{std::move(counts)},
+
3516 senddispls_int{},
+
3517 recvdispls_int{std::move(recvdispls_int)} {}
+
3518 };
+
3519
+
3520 template<typename T>
+
3521 static int ialltoallv_query(void *state, MPI_Status *s) {
+
3522 ialltoallv_state<T> *sendrecv_state{static_cast<ialltoallv_state<T> *>(state)};
+
3523 const int error_backup{s->MPI_ERROR};
+
3524 *s = sendrecv_state->status;
+
3525 s->MPI_ERROR = error_backup;
+
3526 return MPI_SUCCESS;
+
3527 }
+
3528
+
3529 template<typename T>
+
3530 static int ialltoallv_free(void *state) {
+
3531 ialltoallv_state<T> *sendrecv_state{static_cast<ialltoallv_state<T> *>(state)};
+
3532 delete sendrecv_state;
+
3533 return MPI_SUCCESS;
+
3534 }
+
3535
+
3536 static int ialltoallv_cancel(void *state, int complete) { return MPI_SUCCESS; }
+
3537
+
3538 template<typename T>
+
3539 void ialltoallv(const T *senddata, T *recvdata, ialltoallv_state<T> *state) const {
+
3540 MPI_Request req;
+
3541 static_assert(
+
3542 sizeof(decltype(*state->sendl())) == sizeof(MPI_Datatype),
+
3543 "compiler adds some unexpected padding, reinterpret cast will yield wrong results");
+
3544 if (senddata != nullptr)
+
3545 MPI_Ialltoallw(senddata, state->counts.data(), state->senddispls_int.data(),
+
3546 reinterpret_cast<const MPI_Datatype *>(state->sendl()), recvdata,
+
3547 state->counts.data(), state->recvdispls_int.data(),
+
3548 reinterpret_cast<const MPI_Datatype *>(state->recvl()), comm_, &req);
+
3549 else
+
3550 MPI_Ialltoallw(MPI_IN_PLACE, 0, 0, 0, recvdata, state->counts.data(),
+
3551 state->recvdispls_int.data(),
+
3552 reinterpret_cast<const MPI_Datatype *>(state->recvl()), comm_, &req);
+
3553 MPI_Status s;
+
3554 MPI_Wait(&req, &s);
+
3555 state->status = s;
+
3556 MPI_Grequest_complete(state->req);
+
3557 }
+
3558
+
3559 public:
+
3582 template<typename T>
+
3583 irequest ialltoallv(const T *senddata, const layouts<T> &sendls,
+
3584 const displacements &senddispls, T *recvdata, const layouts<T> &recvls,
+
3585 const displacements &recvdispls) const {
+
3586 check_size(senddispls);
+
3587 check_size(sendls);
+
3588 check_size(recvdispls);
+
3589 check_size(recvls);
+
3590 ialltoallv_state<T> *state{
+
3591 new ialltoallv_state<T>(sendls, recvls, std::vector<int>(recvls.size(), 1),
+
3592 std::vector<int>(senddispls.begin(), senddispls.end()),
+
3593 std::vector<int>(recvdispls.begin(), recvdispls.end()))};
+
3594 MPI_Request req;
+
3595 MPI_Grequest_start(ialltoallv_query<T>, ialltoallv_free<T>, ialltoallv_cancel, state,
+
3596 &req);
+
3597 state->req = req;
+
3598 std::thread thread(
+
3599 [this, senddata, recvdata, state]() { ialltoallv(senddata, recvdata, state); });
+
3600 thread.detach();
+
3601 return impl::irequest(req);
+
3602 }
+
3603
+
3625 template<typename T>
+
3626 irequest ialltoallv(const T *senddata, const layouts<T> &sendls, T *recvdata,
+
3627 const layouts<T> &recvls) const {
+
3628 const displacements sendrecvdispls(size());
+
3629 return ialltoallv(senddata, sendls, sendrecvdispls, recvdata, recvls, sendrecvdispls);
+
3630 }
+
3631
+
3632 // --- blocking all-to-all, in place ---
+
3649 template<typename T>
+
3650 void alltoallv(T *sendrecvdata, const layouts<T> &sendrecvls,
+
3651 const displacements &sendrecvdispls) const {
+
3652 check_size(sendrecvdispls);
+
3653 check_size(sendrecvls);
+
3654 const std::vector<int> counts(sendrecvls.size(), 1);
+
3655 const std::vector<int> sendrecvdispls_int(sendrecvdispls.begin(), sendrecvdispls.end());
+
3656 MPI_Alltoallw(MPI_IN_PLACE, 0, 0, 0, sendrecvdata, counts.data(),
+
3657 sendrecvdispls_int.data(),
+
3658 reinterpret_cast<const MPI_Datatype *>(sendrecvls()), comm_);
+
3659 }
+
3660
+
3678 template<typename T>
+
3679 void alltoallv(T *sendrecvdata, const layouts<T> &sendrecvls) const {
+
3680 alltoallv(sendrecvdata, sendrecvls, displacements(size()));
+
3681 }
+
3682
+
3683 // --- non-blocking all-to-all, in place ---
+
3702 template<typename T>
+
3703 irequest ialltoallv(T *sendrecvdata, const layouts<T> &sendrecvls,
+
3704 const displacements &sendrecvdispls) const {
+
3705 check_size(sendrecvdispls);
+
3706 check_size(sendrecvls);
+
3707 ialltoallv_state<T> *state{new ialltoallv_state<T>(
+
3708 sendrecvls, std::vector<int>(sendrecvls.size(), 1),
+
3709 std::vector<int>(sendrecvdispls.begin(), sendrecvdispls.end()))};
+
3710 MPI_Request req;
+
3711 MPI_Grequest_start(ialltoallv_query<T>, ialltoallv_free<T>, ialltoallv_cancel, state,
+
3712 &req);
+
3713 state->req = req;
+
3714 std::thread thread([this, sendrecvdata, state]() {
+
3715 ialltoallv(static_cast<T *>(nullptr), sendrecvdata, state);
+
3716 });
+
3717 thread.detach();
+
3718 return impl::irequest(req);
+
3719 }
+
3720
+
3740 template<typename T>
+
3741 irequest ialltoallv(T *sendrecvdata, const layouts<T> &sendrecvls) const {
+
3742 return ialltoallv(sendrecvdata, sendrecvls, displacements(size()));
+
3743 }
+
3744
+
3745 // === reduce ===
+
3746 // --- blocking reduce ---
+
3758 template<typename T, typename F>
+
3759 void reduce(F f, int root_rank, const T &senddata, T &recvdata) const {
+
3760 check_root(root_rank);
+
3761 MPI_Reduce(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
+
3762 detail::get_op<T, F>(f).mpi_op, root_rank, comm_);
+
3763 }
+
3764
+
3779 template<typename T, typename F>
+
3780 void reduce(F f, int root_rank, const T *senddata, T *recvdata,
+
3781 const contiguous_layout<T> &l) const {
+
3782 check_root(root_rank);
+
3783 MPI_Reduce(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
+
3784 detail::get_op<T, F>(f).mpi_op, root_rank, comm_);
+
3785 }
+
3786
+
3787 // --- non-blocking reduce ---
+
3800 template<typename T, typename F>
+
3801 irequest ireduce(F f, int root_rank, const T &senddata, T &recvdata) const {
+
3802 check_root(root_rank);
+
3803 MPI_Request req;
+
3804 MPI_Ireduce(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
+
3805 detail::get_op<T, F>(f).mpi_op, root_rank, comm_, &req);
+
3806 return impl::irequest(req);
+
3807 }
+
3808
+
3823 template<typename T, typename F>
+
3824 irequest ireduce(F f, int root_rank, const T *senddata, T *recvdata,
+
3825 const contiguous_layout<T> &l) const {
3826 check_root(root_rank);
-
3827 if (rank() == root_rank)
-
3828 MPI_Reduce(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
3829 detail::get_op<T, F>(f).mpi_op, root_rank, comm_);
-
3830 else
-
3831 MPI_Reduce(&sendrecvdata, nullptr, 1, detail::datatype_traits<T>::get_datatype(),
-
3832 detail::get_op<T, F>(f).mpi_op, root_rank, comm_);
-
3833 }
-
3834
-
3846 template<typename T, typename F>
-
3847 void reduce(F f, int root_rank, const T &senddata) const {
-
3848 check_nonroot(root_rank);
-
3849 MPI_Reduce(&senddata, nullptr, 1, detail::datatype_traits<T>::get_datatype(),
-
3850 detail::get_op<T, F>(f).mpi_op, root_rank, comm_);
-
3851 }
-
3852
-
3865 template<typename T, typename F>
-
3866 void reduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout<T> &l) const {
-
3867 if (rank() == root_rank)
-
3868 MPI_Reduce(MPI_IN_PLACE, sendrecvdata, l.size(),
-
3869 detail::datatype_traits<T>::get_datatype(), detail::get_op<T, F>(f).mpi_op,
-
3870 root_rank, comm_);
-
3871 else
-
3872 MPI_Reduce(sendrecvdata, nullptr, l.size(), detail::datatype_traits<T>::get_datatype(),
-
3873 detail::get_op<T, F>(f).mpi_op, root_rank, comm_);
-
3874 }
-
3875
-
3888 template<typename T, typename F>
-
3889 void reduce(F f, int root_rank, const T *senddata, const contiguous_layout<T> &l) const {
-
3890 check_nonroot(root_rank);
-
3891 MPI_Reduce(senddata, nullptr, l.size(), detail::datatype_traits<T>::get_datatype(),
-
3892 detail::get_op<T, F>(f).mpi_op, root_rank, comm_);
-
3893 }
-
3894
-
3895 // --- non-blocking reduce, in place ---
-
3909 template<typename T, typename F>
-
3910 irequest ireduce(F f, int root_rank, T &sendrecvdata) const {
-
3911 check_root(root_rank);
-
3912 MPI_Request req;
-
3913 if (rank() == root_rank)
-
3914 MPI_Ireduce(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
3915 detail::get_op<T, F>(f).mpi_op, root_rank, comm_, &req);
-
3916 else
-
3917 MPI_Ireduce(&sendrecvdata, nullptr, 1, detail::datatype_traits<T>::get_datatype(),
-
3918 detail::get_op<T, F>(f).mpi_op, root_rank, comm_, &req);
-
3919 return impl::irequest(req);
-
3920 }
-
3921
-
3935 template<typename T, typename F>
-
3936 irequest ireduce(F f, int root_rank, const T &senddata) const {
-
3937 check_nonroot(root_rank);
-
3938 MPI_Request req;
-
3939 MPI_Ireduce(&senddata, nullptr, 1, detail::datatype_traits<T>::get_datatype(),
-
3940 detail::get_op<T, F>(f).mpi_op, root_rank, comm_, &req);
-
3941 return impl::irequest(req);
-
3942 }
-
3943
-
3958 template<typename T, typename F>
-
3959 irequest ireduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout<T> &l) const {
-
3960 check_root(root_rank);
-
3961 MPI_Request req;
-
3962 if (rank() == root_rank)
-
3963 MPI_Ireduce(MPI_IN_PLACE, sendrecvdata, l.size(),
-
3964 detail::datatype_traits<T>::get_datatype(), detail::get_op<T, F>(f).mpi_op,
-
3965 root_rank, comm_, &req);
-
3966 else
-
3967 MPI_Ireduce(sendrecvdata, nullptr, l.size(), detail::datatype_traits<T>::get_datatype(),
-
3968 detail::get_op<T, F>(f).mpi_op, root_rank, comm_, &req);
-
3969 return impl::irequest(req);
-
3970 }
-
3971
-
3986 template<typename T, typename F>
-
3987 irequest ireduce(F f, int root_rank, const T *senddata,
-
3988 const contiguous_layout<T> &l) const {
-
3989 check_nonroot(root_rank);
-
3990 MPI_Request req;
-
3991 MPI_Ireduce(senddata, nullptr, l.size(), detail::datatype_traits<T>::get_datatype(),
-
3992 detail::get_op<T, F>(f).mpi_op, root_rank, comm_, &req);
-
3993 return impl::irequest(req);
-
3994 }
-
3995
-
3996 // === all-reduce ===
-
3997 // --- blocking all-reduce ---
-
4008 template<typename T, typename F>
-
4009 void allreduce(F f, const T &senddata, T &recvdata) const {
-
4010 MPI_Allreduce(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
4011 detail::get_op<T, F>(f).mpi_op, comm_);
-
4012 }
-
4013
-
4025 template<typename T, typename F>
-
4026 void allreduce(F f, const T *senddata, T *recvdata, const contiguous_layout<T> &l) const {
-
4027 MPI_Allreduce(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
-
4028 detail::get_op<T, F>(f).mpi_op, comm_);
-
4029 }
-
4030
-
4031 // --- non-blocking all-reduce ---
-
4044 template<typename T, typename F>
-
4045 irequest iallreduce(F f, const T &senddata, T &recvdata) const {
-
4046 MPI_Request req;
-
4047 MPI_Iallreduce(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
4048 detail::get_op<T, F>(f).mpi_op, comm_, &req);
-
4049 return impl::irequest(req);
+
3827 MPI_Request req;
+
3828 MPI_Ireduce(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
+
3829 detail::get_op<T, F>(f).mpi_op, root_rank, comm_, &req);
+
3830 return impl::irequest(req);
+
3831 }
+
3832
+
3833 // --- blocking reduce, in place ---
+
3845 template<typename T, typename F>
+
3846 void reduce(F f, int root_rank, T &sendrecvdata) const {
+
3847 check_root(root_rank);
+
3848 if (rank() == root_rank)
+
3849 MPI_Reduce(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
+
3850 detail::get_op<T, F>(f).mpi_op, root_rank, comm_);
+
3851 else
+
3852 MPI_Reduce(&sendrecvdata, nullptr, 1, detail::datatype_traits<T>::get_datatype(),
+
3853 detail::get_op<T, F>(f).mpi_op, root_rank, comm_);
+
3854 }
+
3855
+
3867 template<typename T, typename F>
+
3868 void reduce(F f, int root_rank, const T &senddata) const {
+
3869 check_nonroot(root_rank);
+
3870 MPI_Reduce(&senddata, nullptr, 1, detail::datatype_traits<T>::get_datatype(),
+
3871 detail::get_op<T, F>(f).mpi_op, root_rank, comm_);
+
3872 }
+
3873
+
3886 template<typename T, typename F>
+
3887 void reduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout<T> &l) const {
+
3888 if (rank() == root_rank)
+
3889 MPI_Reduce(MPI_IN_PLACE, sendrecvdata, l.size(),
+
3890 detail::datatype_traits<T>::get_datatype(), detail::get_op<T, F>(f).mpi_op,
+
3891 root_rank, comm_);
+
3892 else
+
3893 MPI_Reduce(sendrecvdata, nullptr, l.size(), detail::datatype_traits<T>::get_datatype(),
+
3894 detail::get_op<T, F>(f).mpi_op, root_rank, comm_);
+
3895 }
+
3896
+
3909 template<typename T, typename F>
+
3910 void reduce(F f, int root_rank, const T *senddata, const contiguous_layout<T> &l) const {
+
3911 check_nonroot(root_rank);
+
3912 MPI_Reduce(senddata, nullptr, l.size(), detail::datatype_traits<T>::get_datatype(),
+
3913 detail::get_op<T, F>(f).mpi_op, root_rank, comm_);
+
3914 }
+
3915
+
3916 // --- non-blocking reduce, in place ---
+
3930 template<typename T, typename F>
+
3931 irequest ireduce(F f, int root_rank, T &sendrecvdata) const {
+
3932 check_root(root_rank);
+
3933 MPI_Request req;
+
3934 if (rank() == root_rank)
+
3935 MPI_Ireduce(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
+
3936 detail::get_op<T, F>(f).mpi_op, root_rank, comm_, &req);
+
3937 else
+
3938 MPI_Ireduce(&sendrecvdata, nullptr, 1, detail::datatype_traits<T>::get_datatype(),
+
3939 detail::get_op<T, F>(f).mpi_op, root_rank, comm_, &req);
+
3940 return impl::irequest(req);
+
3941 }
+
3942
+
3956 template<typename T, typename F>
+
3957 irequest ireduce(F f, int root_rank, const T &senddata) const {
+
3958 check_nonroot(root_rank);
+
3959 MPI_Request req;
+
3960 MPI_Ireduce(&senddata, nullptr, 1, detail::datatype_traits<T>::get_datatype(),
+
3961 detail::get_op<T, F>(f).mpi_op, root_rank, comm_, &req);
+
3962 return impl::irequest(req);
+
3963 }
+
3964
+
3979 template<typename T, typename F>
+
3980 irequest ireduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout<T> &l) const {
+
3981 check_root(root_rank);
+
3982 MPI_Request req;
+
3983 if (rank() == root_rank)
+
3984 MPI_Ireduce(MPI_IN_PLACE, sendrecvdata, l.size(),
+
3985 detail::datatype_traits<T>::get_datatype(), detail::get_op<T, F>(f).mpi_op,
+
3986 root_rank, comm_, &req);
+
3987 else
+
3988 MPI_Ireduce(sendrecvdata, nullptr, l.size(), detail::datatype_traits<T>::get_datatype(),
+
3989 detail::get_op<T, F>(f).mpi_op, root_rank, comm_, &req);
+
3990 return impl::irequest(req);
+
3991 }
+
3992
+
4007 template<typename T, typename F>
+
4008 irequest ireduce(F f, int root_rank, const T *senddata,
+
4009 const contiguous_layout<T> &l) const {
+
4010 check_nonroot(root_rank);
+
4011 MPI_Request req;
+
4012 MPI_Ireduce(senddata, nullptr, l.size(), detail::datatype_traits<T>::get_datatype(),
+
4013 detail::get_op<T, F>(f).mpi_op, root_rank, comm_, &req);
+
4014 return impl::irequest(req);
+
4015 }
+
4016
+
4017 // === all-reduce ===
+
4018 // --- blocking all-reduce ---
+
4029 template<typename T, typename F>
+
4030 void allreduce(F f, const T &senddata, T &recvdata) const {
+
4031 MPI_Allreduce(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
+
4032 detail::get_op<T, F>(f).mpi_op, comm_);
+
4033 }
+
4034
+
4046 template<typename T, typename F>
+
4047 void allreduce(F f, const T *senddata, T *recvdata, const contiguous_layout<T> &l) const {
+
4048 MPI_Allreduce(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
+
4049 detail::get_op<T, F>(f).mpi_op, comm_);
4050 }
4051
-
4065 template<typename T, typename F>
-
4066 irequest iallreduce(F f, const T *senddata, T *recvdata,
-
4067 const contiguous_layout<T> &l) const {
-
4068 MPI_Request req;
-
4069 MPI_Iallreduce(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
-
4070 detail::get_op<T, F>(f).mpi_op, comm_, &req);
-
4071 return impl::irequest(req);
-
4072 }
-
4073
-
4074 // --- blocking all-reduce, in place ---
-
4085 template<typename T, typename F>
-
4086 void allreduce(F f, T &sendrecvdata) const {
-
4087 MPI_Allreduce(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
4088 detail::get_op<T, F>(f).mpi_op, comm_);
-
4089 }
-
4090
-
4102 template<typename T, typename F>
-
4103 void allreduce(F f, T *sendrecvdata, const contiguous_layout<T> &l) const {
-
4104 MPI_Allreduce(MPI_IN_PLACE, sendrecvdata, l.size(),
-
4105 detail::datatype_traits<T>::get_datatype(), detail::get_op<T, F>(f).mpi_op,
-
4106 comm_);
-
4107 }
-
4108
-
4109 // --- non-blocking all-reduce, in place ---
-
4121 template<typename T, typename F>
-
4122 irequest iallreduce(F f, T &sendrecvdata) const {
-
4123 MPI_Request req;
-
4124 MPI_Iallreduce(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
4125 detail::get_op<T, F>(f).mpi_op, comm_, &req);
-
4126 return impl::irequest(req);
-
4127 }
-
4128
-
4141 template<typename T, typename F>
-
4142 irequest iallreduce(F f, T *sendrecvdata, const contiguous_layout<T> &l) const {
-
4143 MPI_Request req;
-
4144 MPI_Iallreduce(MPI_IN_PLACE, sendrecvdata, l.size(),
-
4145 detail::datatype_traits<T>::get_datatype(), detail::get_op<T, F>(f).mpi_op,
-
4146 comm_, &req);
+
4052 // --- non-blocking all-reduce ---
+
4065 template<typename T, typename F>
+
4066 irequest iallreduce(F f, const T &senddata, T &recvdata) const {
+
4067 MPI_Request req;
+
4068 MPI_Iallreduce(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
+
4069 detail::get_op<T, F>(f).mpi_op, comm_, &req);
+
4070 return impl::irequest(req);
+
4071 }
+
4072
+
4086 template<typename T, typename F>
+
4087 irequest iallreduce(F f, const T *senddata, T *recvdata,
+
4088 const contiguous_layout<T> &l) const {
+
4089 MPI_Request req;
+
4090 MPI_Iallreduce(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
+
4091 detail::get_op<T, F>(f).mpi_op, comm_, &req);
+
4092 return impl::irequest(req);
+
4093 }
+
4094
+
4095 // --- blocking all-reduce, in place ---
+
4106 template<typename T, typename F>
+
4107 void allreduce(F f, T &sendrecvdata) const {
+
4108 MPI_Allreduce(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
+
4109 detail::get_op<T, F>(f).mpi_op, comm_);
+
4110 }
+
4111
+
4123 template<typename T, typename F>
+
4124 void allreduce(F f, T *sendrecvdata, const contiguous_layout<T> &l) const {
+
4125 MPI_Allreduce(MPI_IN_PLACE, sendrecvdata, l.size(),
+
4126 detail::datatype_traits<T>::get_datatype(), detail::get_op<T, F>(f).mpi_op,
+
4127 comm_);
+
4128 }
+
4129
+
4130 // --- non-blocking all-reduce, in place ---
+
4142 template<typename T, typename F>
+
4143 irequest iallreduce(F f, T &sendrecvdata) const {
+
4144 MPI_Request req;
+
4145 MPI_Iallreduce(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
+
4146 detail::get_op<T, F>(f).mpi_op, comm_, &req);
4147 return impl::irequest(req);
4148 }
4149
-
4150 // === reduce-scatter-block ===
-
4151 // --- blocking reduce-scatter-block ---
-
4163 template<typename T, typename F>
-
4164 void reduce_scatter_block(F f, const T *senddata, T &recvdata) const {
-
4165 MPI_Reduce_scatter_block(senddata, &recvdata, 1,
-
4166 detail::datatype_traits<T>::get_datatype(),
-
4167 detail::get_op<T, F>(f).mpi_op, comm_);
-
4168 }
-
4169
-
4183 template<typename T, typename F>
-
4184 void reduce_scatter_block(F f, const T *senddata, T *recvdata,
-
4185 const contiguous_layout<T> &recvcount) const {
-
4186 MPI_Reduce_scatter_block(senddata, recvdata, recvcount.size(),
+
4162 template<typename T, typename F>
+
4163 irequest iallreduce(F f, T *sendrecvdata, const contiguous_layout<T> &l) const {
+
4164 MPI_Request req;
+
4165 MPI_Iallreduce(MPI_IN_PLACE, sendrecvdata, l.size(),
+
4166 detail::datatype_traits<T>::get_datatype(), detail::get_op<T, F>(f).mpi_op,
+
4167 comm_, &req);
+
4168 return impl::irequest(req);
+
4169 }
+
4170
+
4171 // === reduce-scatter-block ===
+
4172 // --- blocking reduce-scatter-block ---
+
4184 template<typename T, typename F>
+
4185 void reduce_scatter_block(F f, const T *senddata, T &recvdata) const {
+
4186 MPI_Reduce_scatter_block(senddata, &recvdata, 1,
4187 detail::datatype_traits<T>::get_datatype(),
4188 detail::get_op<T, F>(f).mpi_op, comm_);
4189 }
4190
-
4191 // --- non-blocking reduce-scatter-block ---
-
4205 template<typename T, typename F>
-
4206 irequest ireduce_scatter_block(F f, const T *senddata, T &recvdata) const {
-
4207 MPI_Request req;
-
4208 MPI_Ireduce_scatter_block(senddata, &recvdata, 1,
-
4209 detail::datatype_traits<T>::get_datatype(),
-
4210 detail::get_op<T, F>(f).mpi_op, comm_, &req);
-
4211 return impl::irequest(req);
-
4212 }
-
4213
-
4229 template<typename T, typename F>
-
4230 irequest ireduce_scatter_block(F f, const T *senddata, T *recvdata,
-
4231 const contiguous_layout<T> &recvcount) const {
-
4232 MPI_Request req;
-
4233 MPI_Ireduce_scatter_block(senddata, recvdata, recvcount.size(),
-
4234 detail::datatype_traits<T>::get_datatype(),
-
4235 detail::get_op<T, F>(f).mpi_op, comm_, &req);
-
4236 return impl::irequest(req);
-
4237 }
-
4238
-
4239 // === reduce-scatter ===
-
4240 // --- blocking reduce-scatter ---
-
4254 template<typename T, typename F>
-
4255 void reduce_scatter(F f, const T *senddata, T *recvdata,
-
4256 const contiguous_layouts<T> &recvcounts) const {
-
4257 MPI_Reduce_scatter(senddata, recvdata, recvcounts.sizes(),
-
4258 detail::datatype_traits<T>::get_datatype(),
-
4259 detail::get_op<T, F>(f).mpi_op, comm_);
-
4260 }
-
4261
-
4262 // --- non-blocking reduce-scatter ---
-
4278 template<typename T, typename F>
-
4279 irequest ireduce_scatter(F f, const T *senddata, T *recvdata,
-
4280 contiguous_layouts<T> &recvcounts) const {
-
4281 MPI_Request req;
-
4282 MPI_Ireduce_scatter(senddata, recvdata, recvcounts.sizes(),
-
4283 detail::datatype_traits<T>::get_datatype(),
-
4284 detail::get_op<T, F>(f).mpi_op, comm_, &req);
-
4285 return impl::irequest(req);
-
4286 }
-
4287
-
4288 // === scan ===
-
4289 // --- blocking scan ---
-
4300 template<typename T, typename F>
-
4301 void scan(F f, const T &senddata, T &recvdata) const {
-
4302 MPI_Scan(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
4303 detail::get_op<T, F>(f).mpi_op, comm_);
-
4304 }
-
4305
-
4317 template<typename T, typename F>
-
4318 void scan(F f, const T *senddata, T *recvdata, const contiguous_layout<T> &l) const {
-
4319 MPI_Scan(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
-
4320 detail::get_op<T, F>(f).mpi_op, comm_);
-
4321 }
-
4322
-
4323 // --- non-blocking scan ---
-
4336 template<typename T, typename F>
-
4337 irequest iscan(F f, const T &senddata, T &recvdata) const {
-
4338 MPI_Request req;
-
4339 MPI_Iscan(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
4340 detail::get_op<T, F>(f).mpi_op, comm_, &req);
-
4341 return impl::irequest(req);
+
4204 template<typename T, typename F>
+
4205 void reduce_scatter_block(F f, const T *senddata, T *recvdata,
+
4206 const contiguous_layout<T> &recvcount) const {
+
4207 MPI_Reduce_scatter_block(senddata, recvdata, recvcount.size(),
+
4208 detail::datatype_traits<T>::get_datatype(),
+
4209 detail::get_op<T, F>(f).mpi_op, comm_);
+
4210 }
+
4211
+
4212 // --- non-blocking reduce-scatter-block ---
+
4226 template<typename T, typename F>
+
4227 irequest ireduce_scatter_block(F f, const T *senddata, T &recvdata) const {
+
4228 MPI_Request req;
+
4229 MPI_Ireduce_scatter_block(senddata, &recvdata, 1,
+
4230 detail::datatype_traits<T>::get_datatype(),
+
4231 detail::get_op<T, F>(f).mpi_op, comm_, &req);
+
4232 return impl::irequest(req);
+
4233 }
+
4234
+
4250 template<typename T, typename F>
+
4251 irequest ireduce_scatter_block(F f, const T *senddata, T *recvdata,
+
4252 const contiguous_layout<T> &recvcount) const {
+
4253 MPI_Request req;
+
4254 MPI_Ireduce_scatter_block(senddata, recvdata, recvcount.size(),
+
4255 detail::datatype_traits<T>::get_datatype(),
+
4256 detail::get_op<T, F>(f).mpi_op, comm_, &req);
+
4257 return impl::irequest(req);
+
4258 }
+
4259
+
4260 // === reduce-scatter ===
+
4261 // --- blocking reduce-scatter ---
+
4275 template<typename T, typename F>
+
4276 void reduce_scatter(F f, const T *senddata, T *recvdata,
+
4277 const contiguous_layouts<T> &recvcounts) const {
+
4278 MPI_Reduce_scatter(senddata, recvdata, recvcounts.sizes(),
+
4279 detail::datatype_traits<T>::get_datatype(),
+
4280 detail::get_op<T, F>(f).mpi_op, comm_);
+
4281 }
+
4282
+
4283 // --- non-blocking reduce-scatter ---
+
4299 template<typename T, typename F>
+
4300 irequest ireduce_scatter(F f, const T *senddata, T *recvdata,
+
4301 contiguous_layouts<T> &recvcounts) const {
+
4302 MPI_Request req;
+
4303 MPI_Ireduce_scatter(senddata, recvdata, recvcounts.sizes(),
+
4304 detail::datatype_traits<T>::get_datatype(),
+
4305 detail::get_op<T, F>(f).mpi_op, comm_, &req);
+
4306 return impl::irequest(req);
+
4307 }
+
4308
+
4309 // === scan ===
+
4310 // --- blocking scan ---
+
4321 template<typename T, typename F>
+
4322 void scan(F f, const T &senddata, T &recvdata) const {
+
4323 MPI_Scan(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
+
4324 detail::get_op<T, F>(f).mpi_op, comm_);
+
4325 }
+
4326
+
4338 template<typename T, typename F>
+
4339 void scan(F f, const T *senddata, T *recvdata, const contiguous_layout<T> &l) const {
+
4340 MPI_Scan(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
+
4341 detail::get_op<T, F>(f).mpi_op, comm_);
4342 }
4343
-
4357 template<typename T, typename F>
-
4358 irequest iscan(F f, const T *senddata, T *recvdata, const contiguous_layout<T> &l) const {
+
4344 // --- non-blocking scan ---
+
4357 template<typename T, typename F>
+
4358 irequest iscan(F f, const T &senddata, T &recvdata) const {
4359 MPI_Request req;
-
4360 MPI_Iscan(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
+
4360 MPI_Iscan(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
4361 detail::get_op<T, F>(f).mpi_op, comm_, &req);
4362 return impl::irequest(req);
4363 }
4364
-
4365 // --- blocking scan, in place ---
-
4376 template<typename T, typename F>
-
4377 void scan(F f, T &sendrecvdata) const {
-
4378 MPI_Scan(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
4379 detail::get_op<T, F>(f).mpi_op, comm_);
-
4380 }
-
4381
-
4393 template<typename T, typename F>
-
4394 void scan(F f, T *sendrecvdata, const contiguous_layout<T> &l) const {
-
4395 MPI_Scan(MPI_IN_PLACE, sendrecvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
-
4396 detail::get_op<T, F>(f).mpi_op, comm_);
-
4397 }
-
4398
-
4399 // --- non-blocking scan, in place ---
-
4411 template<typename T, typename F>
-
4412 irequest iscan(F f, T &sendrecvdata) const {
-
4413 MPI_Request req;
-
4414 MPI_Iscan(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
4415 detail::get_op<T, F>(f).mpi_op, comm_, &req);
-
4416 return impl::irequest(req);
-
4417 }
-
4418
-
4431 template<typename T, typename F>
-
4432 irequest iscan(F f, T *sendrecvdata, const contiguous_layout<T> &l) const {
-
4433 MPI_Request req;
-
4434 MPI_Iscan(MPI_IN_PLACE, sendrecvdata, l.size(),
-
4435 detail::datatype_traits<T>::get_datatype(), detail::get_op<T, F>(f).mpi_op,
-
4436 comm_, &req);
+
4378 template<typename T, typename F>
+
4379 irequest iscan(F f, const T *senddata, T *recvdata, const contiguous_layout<T> &l) const {
+
4380 MPI_Request req;
+
4381 MPI_Iscan(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
+
4382 detail::get_op<T, F>(f).mpi_op, comm_, &req);
+
4383 return impl::irequest(req);
+
4384 }
+
4385
+
4386 // --- blocking scan, in place ---
+
4397 template<typename T, typename F>
+
4398 void scan(F f, T &sendrecvdata) const {
+
4399 MPI_Scan(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
+
4400 detail::get_op<T, F>(f).mpi_op, comm_);
+
4401 }
+
4402
+
4414 template<typename T, typename F>
+
4415 void scan(F f, T *sendrecvdata, const contiguous_layout<T> &l) const {
+
4416 MPI_Scan(MPI_IN_PLACE, sendrecvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
+
4417 detail::get_op<T, F>(f).mpi_op, comm_);
+
4418 }
+
4419
+
4420 // --- non-blocking scan, in place ---
+
4432 template<typename T, typename F>
+
4433 irequest iscan(F f, T &sendrecvdata) const {
+
4434 MPI_Request req;
+
4435 MPI_Iscan(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
+
4436 detail::get_op<T, F>(f).mpi_op, comm_, &req);
4437 return impl::irequest(req);
4438 }
4439
-
4440 // === exscan ===
-
4441 // --- blocking exscan ---
-
4452 template<typename T, typename F>
-
4453 void exscan(F f, const T &senddata, T &recvdata) const {
-
4454 MPI_Exscan(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
4455 detail::get_op<T, F>(f).mpi_op, comm_);
-
4456 }
-
4457
-
4469 template<typename T, typename F>
-
4470 void exscan(F f, const T *senddata, T *recvdata, const contiguous_layout<T> &l) const {
-
4471 MPI_Exscan(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
-
4472 detail::get_op<T, F>(f).mpi_op, comm_);
-
4473 }
-
4474
-
4475 // --- non-blocking exscan ---
-
4488 template<typename T, typename F>
-
4489 irequest iexscan(F f, const T &senddata, T &recvdata) const {
-
4490 MPI_Request req;
-
4491 MPI_Iexscan(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
4492 detail::get_op<T, F>(f).mpi_op, comm_, &req);
-
4493 return impl::irequest(req);
+
4452 template<typename T, typename F>
+
4453 irequest iscan(F f, T *sendrecvdata, const contiguous_layout<T> &l) const {
+
4454 MPI_Request req;
+
4455 MPI_Iscan(MPI_IN_PLACE, sendrecvdata, l.size(),
+
4456 detail::datatype_traits<T>::get_datatype(), detail::get_op<T, F>(f).mpi_op,
+
4457 comm_, &req);
+
4458 return impl::irequest(req);
+
4459 }
+
4460
+
4461 // === exscan ===
+
4462 // --- blocking exscan ---
+
4473 template<typename T, typename F>
+
4474 void exscan(F f, const T &senddata, T &recvdata) const {
+
4475 MPI_Exscan(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
+
4476 detail::get_op<T, F>(f).mpi_op, comm_);
+
4477 }
+
4478
+
4490 template<typename T, typename F>
+
4491 void exscan(F f, const T *senddata, T *recvdata, const contiguous_layout<T> &l) const {
+
4492 MPI_Exscan(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
+
4493 detail::get_op<T, F>(f).mpi_op, comm_);
4494 }
4495
-
4509 template<typename T, typename F>
-
4510 irequest iexscan(F f, const T *senddata, T *recvdata, const contiguous_layout<T> &l) const {
+
4496 // --- non-blocking exscan ---
+
4509 template<typename T, typename F>
+
4510 irequest iexscan(F f, const T &senddata, T &recvdata) const {
4511 MPI_Request req;
-
4512 MPI_Iexscan(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
+
4512 MPI_Iexscan(&senddata, &recvdata, 1, detail::datatype_traits<T>::get_datatype(),
4513 detail::get_op<T, F>(f).mpi_op, comm_, &req);
4514 return impl::irequest(req);
4515 }
4516
-
4517 // --- blocking exscan, in place ---
-
4528 template<typename T, typename F>
-
4529 void exscan(F f, T &sendrecvdata) const {
-
4530 MPI_Exscan(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
4531 detail::get_op<T, F>(f).mpi_op, comm_);
-
4532 }
-
4533
-
4545 template<typename T, typename F>
-
4546 void exscan(F f, T *sendrecvdata, const contiguous_layout<T> &l) const {
-
4547 MPI_Exscan(MPI_IN_PLACE, sendrecvdata, l.size(),
-
4548 detail::datatype_traits<T>::get_datatype(), detail::get_op<T, F>(f).mpi_op,
-
4549 comm_);
-
4550 }
-
4551
-
4552 // --- non-blocking exscan, in place ---
-
4564 template<typename T, typename F>
-
4565 irequest iexscan(F f, T &sendrecvdata) const {
-
4566 MPI_Request req;
-
4567 MPI_Iexscan(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
-
4568 detail::get_op<T, F>(f).mpi_op, comm_, &req);
-
4569 return impl::irequest(req);
-
4570 }
-
4571
-
4584 template<typename T, typename F>
-
4585 irequest iexscan(F f, T *sendrecvdata, const contiguous_layout<T> &l) const {
-
4586 MPI_Request req;
-
4587 MPI_Iexscan(MPI_IN_PLACE, sendrecvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
-
4588 detail::get_op<T, F>(f).mpi_op, comm_, &req);
-
4589 return impl::irequest(req);
-
4590 }
-
4591 };
+
4530 template<typename T, typename F>
+
4531 irequest iexscan(F f, const T *senddata, T *recvdata, const contiguous_layout<T> &l) const {
+
4532 MPI_Request req;
+
4533 MPI_Iexscan(senddata, recvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
+
4534 detail::get_op<T, F>(f).mpi_op, comm_, &req);
+
4535 return impl::irequest(req);
+
4536 }
+
4537
+
4538 // --- blocking exscan, in place ---
+
4549 template<typename T, typename F>
+
4550 void exscan(F f, T &sendrecvdata) const {
+
4551 MPI_Exscan(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
+
4552 detail::get_op<T, F>(f).mpi_op, comm_);
+
4553 }
+
4554
+
4566 template<typename T, typename F>
+
4567 void exscan(F f, T *sendrecvdata, const contiguous_layout<T> &l) const {
+
4568 MPI_Exscan(MPI_IN_PLACE, sendrecvdata, l.size(),
+
4569 detail::datatype_traits<T>::get_datatype(), detail::get_op<T, F>(f).mpi_op,
+
4570 comm_);
+
4571 }
+
4572
+
4573 // --- non-blocking exscan, in place ---
+
4585 template<typename T, typename F>
+
4586 irequest iexscan(F f, T &sendrecvdata) const {
+
4587 MPI_Request req;
+
4588 MPI_Iexscan(MPI_IN_PLACE, &sendrecvdata, 1, detail::datatype_traits<T>::get_datatype(),
+
4589 detail::get_op<T, F>(f).mpi_op, comm_, &req);
+
4590 return impl::irequest(req);
+
4591 }
4592
-
4593 //--------------------------------------------------------------------
-
4594
-
4595 inline group::group(const group &other) { MPI_Group_excl(other.gr_, 0, nullptr, &gr_); }
-
4596
-
4597 inline group::group(const communicator &comm) { MPI_Comm_group(comm.comm_, &gr_); }
-
4598
-
4599 inline group::group(group::Union_tag, const group &other_1, const group &other_2) {
-
4600 MPI_Group_union(other_1.gr_, other_2.gr_, &gr_);
-
4601 }
-
4602
-
4603 inline group::group(group::intersection_tag, const group &other_1, const group &other_2) {
-
4604 MPI_Group_intersection(other_1.gr_, other_2.gr_, &gr_);
-
4605 }
-
4606
-
4607 inline group::group(group::difference_tag, const group &other_1, const group &other_2) {
-
4608 MPI_Group_difference(other_1.gr_, other_2.gr_, &gr_);
-
4609 }
-
4610
-
4611 inline group::group(group::include_tag, const group &other, const ranks &rank) {
-
4612 MPI_Group_incl(other.gr_, rank.size(), rank(), &gr_);
-
4613 }
-
4614
-
4615 inline group::group(group::exclude_tag, const group &other, const ranks &rank) {
-
4616 MPI_Group_excl(other.gr_, rank.size(), rank(), &gr_);
-
4617 }
-
4618
-
4619} // namespace mpl
-
4620
-
4621#endif
+
4605 template<typename T, typename F>
+
4606 irequest iexscan(F f, T *sendrecvdata, const contiguous_layout<T> &l) const {
+
4607 MPI_Request req;
+
4608 MPI_Iexscan(MPI_IN_PLACE, sendrecvdata, l.size(), detail::datatype_traits<T>::get_datatype(),
+
4609 detail::get_op<T, F>(f).mpi_op, comm_, &req);
+
4610 return impl::irequest(req);
+
4611 }
+
4612 };
+
4613
+
4614 //--------------------------------------------------------------------
+
4615
+
4616 inline group::group(const group &other) { MPI_Group_excl(other.gr_, 0, nullptr, &gr_); }
+
4617
+
4618 inline group::group(const communicator &comm) { MPI_Comm_group(comm.comm_, &gr_); }
+
4619
+
4620 inline group::group(group::Union_tag, const group &other_1, const group &other_2) {
+
4621 MPI_Group_union(other_1.gr_, other_2.gr_, &gr_);
+
4622 }
+
4623
+
4624 inline group::group(group::intersection_tag, const group &other_1, const group &other_2) {
+
4625 MPI_Group_intersection(other_1.gr_, other_2.gr_, &gr_);
+
4626 }
+
4627
+
4628 inline group::group(group::difference_tag, const group &other_1, const group &other_2) {
+
4629 MPI_Group_difference(other_1.gr_, other_2.gr_, &gr_);
+
4630 }
+
4631
+
4632 inline group::group(group::include_tag, const group &other, const ranks &rank) {
+
4633 MPI_Group_incl(other.gr_, rank.size(), rank(), &gr_);
+
4634 }
+
4635
+
4636 inline group::group(group::exclude_tag, const group &other, const ranks &rank) {
+
4637 MPI_Group_excl(other.gr_, rank.size(), rank(), &gr_);
+
4638 }
+
4639
+
4640} // namespace mpl
+
4641
+
4642#endif
Communicator with Cartesian topology.
-
Indicates the creation of a new communicator by a call that in collective for all processes in the gi...
Definition: comm_group.hpp:310
-
Indicates the creation of a new communicator by a call that in collective for all processes in the gi...
Definition: comm_group.hpp:317
-
Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgr...
Definition: comm_group.hpp:331
-
Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgr...
Definition: comm_group.hpp:324
-
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:250
-
void allreduce(F f, const T &senddata, T &recvdata) const
Performs a reduction operation over all processes and broadcasts the result.
-
irequest iscatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const
Scatter messages with a variable amount of data from a single root process to all processes in a non-...
-
std::optional< status_t > iprobe(int source, tag_t t=tag_t(0)) const
Non-blocking test for an incoming message.
-
prequest recv_init(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const
Creates a persistent communication request to receive a message with a several values given by a pair...
-
void alltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
-
irequest ireduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes in non-blocking manner, in-place variant.
-
communicator & operator=(communicator &&other) noexcept
Move-assigns a communicator.
Definition: comm_group.hpp:541
-
void ssend(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a blocking synchronous send operation.
-
void allreduce(F f, T &sendrecvdata) const
Performs a reduction operation over all processes and broadcasts the result, in-place variant.
-
prequest recv_init(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const
Creates a persistent communication request to receive a message with a several values having a specif...
-
void allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Gather messages with a variable amount of data from all processes and distribute result to all proces...
-
irequest ireduce(F f, int root_rank, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes in a non-blocking manner.
-
void alltoall(const T *senddata, T *recvdata) const
Sends messages to all processes and receives messages from all processes.
-
irequest irecv(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const
Receives a message with a several values given by a pair of iterators via a non-blocking receive oper...
-
static constexpr equality_type unequal
Definition: comm_group.hpp:306
-
status_t sendrecv_replace(T &data, int destination, tag_t sendtag, int source, tag_t recvtag) const
Sends a message and receives a message in a single operation.
-
static constexpr group_collective_tag group_collective
Indicates the creation of a new communicator by a call that in collective for all processes in the gi...
Definition: comm_group.hpp:320
-
irequest ireduce(F f, int root_rank, const T &senddata, T &recvdata) const
Performs a reduction operation over all processes in a non-blocking manner.
-
irequest ibsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with several values having a specific memory layout via a non-blocking buffered send ...
-
bool operator==(const communicator &other) const
Tests for identity of communicators.
Definition: comm_group.hpp:575
-
status_t sendrecv_replace(T *data, const layout< T > &l, int destination, tag_t sendtag, int source, tag_t recvtag) const
Sends a message and receives a message in a single operation.
-
prequest ssend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values having a specific ...
-
mprobe_status mprobe(int source, tag_t t=tag_t(0)) const
-
irequest igatherv(int root_rank, const T *senddata, const layout< T > &sendl) const
Gather messages with a variable amount of data from all processes at a single root process in a non-b...
-
irequest iscatter(int root_rank, T &recvdata) const
Scatter messages from a single root process to all processes in a non-blocking manner.
-
void rsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values having a specific memory layout via a blocking ready send opera...
-
irequest ireduce_scatter_block(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &recvcount) const
Performs a reduction operation over all processes and scatters the result in a non-blocking manner.
-
void allgather(const T &senddata, T *recvdata) const
Gather messages from all processes and distribute result to all processes.
-
irequest iexscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a partial reduction operation (exclusive scan) over all processes in a non-blocking manner.
-
status_t sendrecv(const T *senddata, const layout< T > &sendl, int destination, tag_t sendtag, T *recvdata, const layout< T > &recvl, int source, tag_t recvtag) const
Sends a message and receives a message in a single operation.
-
void send(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values having a specific memory layout via a blocking standard send op...
Definition: comm_group.hpp:673
-
irequest ibsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a non-blocking buffered send o...
-
irequest iexscan(F f, T &sendrecvdata) const
Performs a partial reduction operation (exclusive scan) over all processes in a non-blocking manner,...
-
void reduce(F f, int root_rank, const T &senddata, T &recvdata) const
Performs a reduction operation over all processes.
-
int bsend_size(const layout< T > &l, int number=1) const
determines the message buffer size
Definition: comm_group.hpp:914
-
void send(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a blocking standard send opera...
Definition: comm_group.hpp:694
-
void abort(int err) const
Aborts all processes associated to the communicator.
Definition: comm_group.hpp:606
-
void rsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a blocking ready send operatio...
-
prequest send_init(const T &data, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a single value via a blocking stand...
Definition: comm_group.hpp:838
-
irequest issend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a non-blocking synchronous sen...
-
void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Gather messages with a variable amount of data from all processes at a single root process.
-
irequest ibsend(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a non-blocking buffered send operation.
-
void scatterv(int root_rank, T *recvdata, const layout< T > &recvl) const
Scatter messages with a variable amount of data from a single root process to all processes.
-
status_t recv(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const
Receives a message with a several values given by a pair of iterators.
-
void scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, T *recvdata, const layout< T > &recvl) const
Scatter messages with a variable amount of data from a single root process to all processes.
-
prequest ssend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values given by a pair of...
-
irequest iscan(F f, T &sendrecvdata) const
Performs a partial reduction operation (scan) over all processes in a non-blocking manner,...
-
irequest irecv(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const
Receives a message with several values having a specific memory layout via a non-blocking receive ope...
-
irequest igatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Gather messages with a variable amount of data from all processes at a single root process in a non-b...
-
void exscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a partial reduction operation (exclusive scan) over all processes, in-place variant.
-
irequest isend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a non-blocking standard send o...
Definition: comm_group.hpp:814
-
void send(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a blocking standard send operation.
Definition: comm_group.hpp:657
-
~communicator()
Destructs a communicator.
Definition: comm_group.hpp:504
-
prequest rsend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values given by a pair of...
-
void reduce(F f, int root_rank, const T &senddata) const
Performs a reduction operation over all processes, non-root in-place variant.
-
irequest igather(int root_rank, const T &senddata) const
Gather messages from all processes at a single root process in a non-blocking manner.
-
irequest iscatter(int root_rank, const T *senddata, T &recvdata) const
Scatter messages from a single root process to all processes in a non-blocking manner.
-
int bsend_size(int number=1) const
determines the message buffer size
Definition: comm_group.hpp:902
-
irequest ialltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
-
void alltoallv(T *sendrecvdata, const layouts< T > &sendrecvls, const displacements &sendrecvdispls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
-
irequest ireduce_scatter(F f, const T *senddata, T *recvdata, contiguous_layouts< T > &recvcounts) const
Performs a reduction operation over all processes and scatters the result in a non-blocking manner.
-
prequest bsend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values given by a pair of...
-
void allgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Gather messages from all processes and distribute result to all processes.
-
void allreduce(F f, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes and broadcasts the result, in-place variant.
-
void rsend(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a blocking ready send operation.
-
irequest ialltoallv(T *sendrecvdata, const layouts< T > &sendrecvls, const displacements &sendrecvdispls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
-
std::optional< mprobe_status > improbe(int source, tag_t t=tag_t(0)) const
-
static constexpr comm_collective_tag comm_collective
Indicates the creation of a new communicator by a call that in collective for all processes in the gi...
Definition: comm_group.hpp:313
-
irequest iscatterv(int root_rank, T *recvdata, const layout< T > &recvl) const
Scatter messages with a variable amount of data from a single root process to all processes in a non-...
-
void scatter(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Scatter messages from a single root process to all processes.
-
irequest igather(int root_rank, const T *senddata, const layout< T > &sendl) const
Gather messages from all processes at a single root process in a non-blocking manner.
-
irequest iallreduce(F f, T &sendrecvdata) const
Performs a reduction operation over all processes and broadcasts the result in a non-blocking manner,...
-
void barrier() const
Blocks until all processes in the communicator have reached this method.
-
irequest iallgather(const T &senddata, T *recvdata) const
Gather messages from all processes and distribute result to all processes in a non-blocking manner.
-
status_t sendrecv(iterT1 begin1, iterT1 end1, int destination, tag_t sendtag, iterT2 begin2, iterT2 end2, int source, tag_t recvtag) const
Sends a message and receives a message in a single operation.
-
communicator(split_shared_memory_tag split_shared_memory, const communicator &other, key_type key=0)
Constructs a new communicator from an existing one by spitting the communicator into disjoint subgrou...
Definition: comm_group.hpp:495
-
communicator(communicator &&other) noexcept
Move-constructs a communicator.
Definition: comm_group.hpp:436
-
irequest iscatter(int root_rank, T *recvdata, const layout< T > &recvl) const
Scatter messages from a single root process to all processes in a non-blocking manner.
-
void bsend(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a buffered send operation.
Definition: comm_group.hpp:959
-
void reduce_scatter(F f, const T *senddata, T *recvdata, const contiguous_layouts< T > &recvcounts) const
Performs a reduction operation over all processes and scatters the result.
-
void allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const
Gather messages with a variable amount of data from all processes and distribute result to all proces...
-
irequest isend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with several values having a specific memory layout via a non-blocking standard send ...
Definition: comm_group.hpp:789
-
irequest ialltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
-
status_t recv(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const
Receives a message with a several values having a specific memory layout.
-
irequest ibcast(int root_rank, T *data, const layout< T > &l) const
Broadcasts a message from a process to all other processes in a non-blocking manner.
-
irequest igatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const
Gather messages with a variable amount of data from all processes at a single root process in a non-b...
-
void bcast(int root_rank, T *data, const layout< T > &l) const
Broadcasts a message from a process to all other processes.
-
irequest iscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a partial reduction operation (scan) over all processes in a non-blocking manner.
-
irequest iallgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Gather messages with a variable amount of data from all processes and distribute result to all proces...
-
irequest iallreduce(F f, const T &senddata, T &recvdata) const
Performs a reduction operation over all processes and broadcasts the result in a non-blocking manner.
-
irequest igather(int root_rank, const T &senddata, T *recvdata) const
Gather messages from all processes at a single root process in a non-blocking manner.
-
prequest send_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values having a specific ...
Definition: comm_group.hpp:857
-
irequest imrecv(T *data, const layout< T > &l, message_t &m) const
Receives a message with several values having a specific memory layout via a non-blocking receive ope...
-
irequest ireduce(F f, int root_rank, const T &senddata) const
Performs a reduction operation over all processes in a non-blocking manner, non-root in-place variant...
-
irequest ialltoallv(T *sendrecvdata, const layouts< T > &sendrecvls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
-
equality_type compare(const communicator &other) const
Compares to another communicator.
Definition: comm_group.hpp:591
-
void scatter(int root_rank, T *recvdata, const layout< T > &recvl) const
Scatter messages from a single root process to all processes.
-
friend class environment::detail::env
Definition: comm_group.hpp:616
-
irequest iexscan(F f, const T &senddata, T &recvdata) const
Performs a partial reduction operation (exclusive scan) over all processes in a non-blocking manner.
-
irequest irecv(T &data, int source, tag_t t=tag_t(0)) const
Receives a message with a single value via a non-blocking receive operation.
-
void exscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a partial reduction operation (exclusive scan) over all processes.
-
prequest ssend_init(const T &data, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a single value via a blocking synch...
-
void alltoall(T *sendrecvdata, const layout< T > &sendrecvl) const
Sends messages to all processes and receives messages from all processes, in-place version.
-
status_t mrecv(iterT begin, iterT end, message_t &m) const
Receives a message with a several values given by a pair of iterators by a message handle.
-
static constexpr split_tag split
Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgr...
Definition: comm_group.hpp:327
-
irequest iexscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a partial reduction operation (exclusive scan) over all processes in a non-blocking manner,...
-
void scan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a partial reduction operation (scan) over all processes.
-
irequest iallgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const
Gather messages with a variable amount of data from all processes and distribute result to all proces...
-
irequest irsend(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a non-blocking ready send operation.
-
void allreduce(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes and broadcasts the result.
-
communicator(group_collective_tag group_collective, const communicator &other, const group &gr, tag_t t=tag_t(0))
Constructs a new communicator from an existing one with a specified communication group.
Definition: comm_group.hpp:460
-
void reduce(F f, int root_rank, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes.
-
irequest iscatterv(int root_rank, const T *senddata, const layouts< T > &sendls, T *recvdata, const layout< T > &recvl) const
Scatter messages with a variable amount of data from a single root process to all processes in a non-...
-
void scan(F f, T &sendrecvdata) const
Performs a partial reduction operation (scan) over all processes, in-place variant.
-
status_t sendrecv(const T &senddata, int destination, tag_t sendtag, T &recvdata, int source, tag_t recvtag) const
Sends a message and receives a message in a single operation.
-
irequest ialltoall(const T *senddata, T *recvdata) const
Sends messages to all processes and receives messages from all processes in a non-blocking manner.
-
void reduce_scatter_block(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &recvcount) const
Performs a reduction operation over all processes and scatters the result.
-
irequest iallreduce(F f, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes and broadcasts the result in non-blocking manner,...
-
irequest iallreduce(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes and broadcasts the result in a non-blocking manner.
-
void reduce_scatter_block(F f, const T *senddata, T &recvdata) const
Performs a reduction operation over all processes and scatters the result.
-
void scatter(int root_rank, const T *senddata, T &recvdata) const
Scatter messages from a single root process to all processes.
-
irequest imrecv(T &data, message_t &m) const
Receives a message with a single value via a non-blocking receive operation by a message handle.
-
prequest rsend_init(const T &data, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a single value via a blocking ready...
-
prequest send_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values given by a pair of...
Definition: comm_group.hpp:882
-
irequest ibcast(int root_rank, T &data) const
Broadcasts a message from a process to all other processes in a non-blocking manner.
-
irequest ialltoall(T *sendrecvdata) const
Sends messages to all processes and receives messages from all processes in a non-blocking manner,...
-
irequest issend(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a non-blocking synchronous send operation.
-
void reduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes, in-place variant.
-
communicator(const communicator &other)
Creates a new communicator which is equivalent to an existing one.
Definition: comm_group.hpp:432
-
irequest isend(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a non-blocking standard send operation.
Definition: comm_group.hpp:771
-
prequest bsend_init(const T &data, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a single value via a buffered send ...
-
communicator(comm_collective_tag comm_collective, const communicator &other, const group &gr)
Constructs a new communicator from an existing one with a specified communication group.
Definition: comm_group.hpp:447
-
void scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const
Scatter messages with a variable amount of data from a single root process to all processes.
-
irequest irsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a non-blocking ready send oper...
-
void gather(int root_rank, const T *senddata, const layout< T > &sendl) const
Gather messages from all processes at a single root process.
-
status_t recv(T &data, int source, tag_t t=tag_t(0)) const
Receives a message with a single value.
-
irequest ireduce(F f, int root_rank, const T *senddata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes in a non-blocking manner, non-root in-place variant...
-
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:559
-
static constexpr equality_type similar
Definition: comm_group.hpp:303
-
irequest ialltoall(T *sendrecvdata, const layout< T > &sendrecvl) const
Sends messages to all processes and receives messages from all processes in a non-blocking manner,...
-
void ssend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a blocking synchronous send op...
-
status_t sendrecv_replace(iterT begin, iterT end, int destination, tag_t sendtag, int source, tag_t recvtag) const
Sends a message and receives a message in a single operation.
-
void bsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values having a specific memory layout via a buffered send operation.
Definition: comm_group.hpp:975
-
void bcast(int root_rank, T &data) const
Broadcasts a message from a process to all other processes.
-
void gather(int root_rank, const T &senddata, T *recvdata) const
Gather messages from all processes at a single root process.
-
irequest iscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a partial reduction (scan) operation over all processes in a non-blocking manner,...
-
static constexpr equality_type identical
Definition: comm_group.hpp:297
-
void gather(int root_rank, const T &senddata) const
Gather messages from all processes at a single root process.
-
irequest ibarrier() const
Notifies the process that it has reached the barrier and returns immediately.
-
irequest issend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with several values having a specific memory layout via a non-blocking synchronous se...
-
irequest iallgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Gather messages from all processes and distribute result to all processes in a non-blocking manner.
-
irequest ialltoall(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Sends messages to all processes and receives messages from all processes in a non-blocking manner.
-
irequest ireduce(F f, int root_rank, T &sendrecvdata) const
Performs a reduction operation over all processes in a non-blocking manner, in-place variant.
-
static constexpr split_shared_memory_tag split_shared_memory
Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgr...
Definition: comm_group.hpp:334
-
irequest igather(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Gather messages from all processes at a single root process in a non-blocking manner.
-
communicator & operator=(const communicator &other) noexcept
Copy-assigns and creates a new communicator which is equivalent to an existing one.
Definition: comm_group.hpp:522
-
status_t mrecv(T &data, message_t &m) const
Receives a message with a single value by a message handle.
-
void exscan(F f, T &sendrecvdata) const
Performs a partial reduction operation (exclusive scan) over all processes, in-place variant.
-
void alltoall(T *sendrecvdata) const
Sends messages to all processes and receives messages from all processes, in-place version.
-
bool is_valid() const
Checks if a communicator is valid, i.e., is not an empty communicator with no associated process.
Definition: comm_group.hpp:601
-
void alltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
-
void exscan(F f, const T &senddata, T &recvdata) const
Performs partial reduction operation (exclusive scan) over all processes.
-
void scatter(int root_rank, T &recvdata) const
Scatter messages from a single root process to all processes.
-
void reduce(F f, int root_rank, T &sendrecvdata) const
Performs a reduction operation over all processes, in-place variant.
-
prequest recv_init(T &data, int source, tag_t t=tag_t(0)) const
Creates a persistent communication request to receive a message with a single value via a blocking re...
-
prequest rsend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values having a specific ...
-
void alltoall(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Sends messages to all processes and receives messages from all processes.
-
void scan(F f, const T &senddata, T &recvdata) const
Performs partial reduction operation (scan) over all processes.
-
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:567
-
void gatherv(int root_rank, const T *senddata, const layout< T > &sendl) const
Gather messages with a variable amount of data from all processes at a single root process.
-
prequest bsend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values having a specific ...
-
void ssend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values having a specific memory layout via a blocking synchronous send...
-
irequest irsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with several values having a specific memory layout via a non-blocking ready send ope...
-
void bsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a buffered send operation.
Definition: comm_group.hpp:996
-
irequest ireduce_scatter_block(F f, const T *senddata, T &recvdata) const
Performs a reduction operation over all processes and scatters the result in a non-blocking manner.
-
irequest imrecv(iterT begin, iterT end, message_t &m) const
Receives a message with a several values given by a pair of iterators via a non-blocking receive oper...
+
Indicates the creation of a new communicator by a call that in collective for all processes in the gi...
Definition: comm_group.hpp:313
+
Indicates the creation of a new communicator by a call that in collective for all processes in the gi...
Definition: comm_group.hpp:320
+
Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgr...
Definition: comm_group.hpp:334
+
Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgr...
Definition: comm_group.hpp:327
+
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:253
+
void allreduce(F f, const T &senddata, T &recvdata) const
Performs a reduction operation over all processes and broadcasts the result.
+
irequest iscatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const
Scatter messages with a variable amount of data from a single root process to all processes in a non-...
+
std::optional< status_t > iprobe(int source, tag_t t=tag_t(0)) const
Non-blocking test for an incoming message.
+
prequest recv_init(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const
Creates a persistent communication request to receive a message with a several values given by a pair...
+
void alltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
+
irequest ireduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes in non-blocking manner, in-place variant.
+
communicator & operator=(communicator &&other) noexcept
Move-assigns a communicator.
Definition: comm_group.hpp:546
+
void ssend(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a blocking synchronous send operation.
+
void allreduce(F f, T &sendrecvdata) const
Performs a reduction operation over all processes and broadcasts the result, in-place variant.
+
prequest recv_init(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const
Creates a persistent communication request to receive a message with a several values having a specif...
+
void allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Gather messages with a variable amount of data from all processes and distribute result to all proces...
+
irequest ireduce(F f, int root_rank, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes in a non-blocking manner.
+
void alltoall(const T *senddata, T *recvdata) const
Sends messages to all processes and receives messages from all processes.
+
irequest irecv(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const
Receives a message with a several values given by a pair of iterators via a non-blocking receive oper...
+
static constexpr equality_type unequal
Definition: comm_group.hpp:309
+
status_t sendrecv_replace(T &data, int destination, tag_t sendtag, int source, tag_t recvtag) const
Sends a message and receives a message in a single operation.
+
static constexpr group_collective_tag group_collective
Indicates the creation of a new communicator by a call that in collective for all processes in the gi...
Definition: comm_group.hpp:323
+
irequest ireduce(F f, int root_rank, const T &senddata, T &recvdata) const
Performs a reduction operation over all processes in a non-blocking manner.
+
irequest ibsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with several values having a specific memory layout via a non-blocking buffered send ...
+
bool operator==(const communicator &other) const
Tests for identity of communicators.
Definition: comm_group.hpp:581
+
status_t sendrecv_replace(T *data, const layout< T > &l, int destination, tag_t sendtag, int source, tag_t recvtag) const
Sends a message and receives a message in a single operation.
+
prequest ssend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values having a specific ...
+
mprobe_status mprobe(int source, tag_t t=tag_t(0)) const
Blocking matched test for an incoming message.
+
irequest igatherv(int root_rank, const T *senddata, const layout< T > &sendl) const
Gather messages with a variable amount of data from all processes at a single root process in a non-b...
+
irequest iscatter(int root_rank, T &recvdata) const
Scatter messages from a single root process to all processes in a non-blocking manner.
+
void rsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values having a specific memory layout via a blocking ready send opera...
+
irequest ireduce_scatter_block(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &recvcount) const
Performs a reduction operation over all processes and scatters the result in a non-blocking manner.
+
void allgather(const T &senddata, T *recvdata) const
Gather messages from all processes and distribute result to all processes.
+
irequest iexscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a partial reduction operation (exclusive scan) over all processes in a non-blocking manner.
+
status_t sendrecv(const T *senddata, const layout< T > &sendl, int destination, tag_t sendtag, T *recvdata, const layout< T > &recvl, int source, tag_t recvtag) const
Sends a message and receives a message in a single operation.
+
void send(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values having a specific memory layout via a blocking standard send op...
Definition: comm_group.hpp:681
+
irequest ibsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a non-blocking buffered send o...
+
irequest iexscan(F f, T &sendrecvdata) const
Performs a partial reduction operation (exclusive scan) over all processes in a non-blocking manner,...
+
void reduce(F f, int root_rank, const T &senddata, T &recvdata) const
Performs a reduction operation over all processes.
+
int bsend_size(const layout< T > &l, int number=1) const
Determines the message buffer size.
Definition: comm_group.hpp:924
+
void send(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a blocking standard send opera...
Definition: comm_group.hpp:702
+
void abort(int err) const
Aborts all processes associated to the communicator.
Definition: comm_group.hpp:614
+
void rsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a blocking ready send operatio...
+
prequest send_init(const T &data, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a single value via a blocking stand...
Definition: comm_group.hpp:846
+
irequest issend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a non-blocking synchronous sen...
+
void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Gather messages with a variable amount of data from all processes at a single root process.
+
irequest ibsend(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a non-blocking buffered send operation.
+
void scatterv(int root_rank, T *recvdata, const layout< T > &recvl) const
Scatter messages with a variable amount of data from a single root process to all processes.
+
status_t recv(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const
Receives a message with a several values given by a pair of iterators.
+
void scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, T *recvdata, const layout< T > &recvl) const
Scatter messages with a variable amount of data from a single root process to all processes.
+
prequest ssend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values given by a pair of...
+
irequest iscan(F f, T &sendrecvdata) const
Performs a partial reduction operation (scan) over all processes in a non-blocking manner,...
+
irequest irecv(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const
Receives a message with several values having a specific memory layout via a non-blocking receive ope...
+
irequest igatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Gather messages with a variable amount of data from all processes at a single root process in a non-b...
+
void exscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a partial reduction operation (exclusive scan) over all processes, in-place variant.
+
irequest isend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a non-blocking standard send o...
Definition: comm_group.hpp:822
+
void send(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a blocking standard send operation.
Definition: comm_group.hpp:665
+
~communicator()
Destructs a communicator.
Definition: comm_group.hpp:507
+
prequest rsend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values given by a pair of...
+
void reduce(F f, int root_rank, const T &senddata) const
Performs a reduction operation over all processes, non-root in-place variant.
+
irequest igather(int root_rank, const T &senddata) const
Gather messages from all processes at a single root process in a non-blocking manner.
+
irequest iscatter(int root_rank, const T *senddata, T &recvdata) const
Scatter messages from a single root process to all processes in a non-blocking manner.
+
int bsend_size(int number=1) const
Determines the message buffer size.
Definition: comm_group.hpp:911
+
irequest ialltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
+
void alltoallv(T *sendrecvdata, const layouts< T > &sendrecvls, const displacements &sendrecvdispls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
+
irequest ireduce_scatter(F f, const T *senddata, T *recvdata, contiguous_layouts< T > &recvcounts) const
Performs a reduction operation over all processes and scatters the result in a non-blocking manner.
+
prequest bsend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values given by a pair of...
+
void allgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Gather messages from all processes and distribute result to all processes.
+
void allreduce(F f, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes and broadcasts the result, in-place variant.
+
void rsend(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a blocking ready send operation.
+
irequest ialltoallv(T *sendrecvdata, const layouts< T > &sendrecvls, const displacements &sendrecvdispls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
+
std::optional< mprobe_status > improbe(int source, tag_t t=tag_t(0)) const
Blocking matched test for an incoming message.
+
static constexpr comm_collective_tag comm_collective
Indicates the creation of a new communicator by a call that in collective for all processes in the gi...
Definition: comm_group.hpp:316
+
irequest iscatterv(int root_rank, T *recvdata, const layout< T > &recvl) const
Scatter messages with a variable amount of data from a single root process to all processes in a non-...
+
void scatter(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Scatter messages from a single root process to all processes.
+
irequest igather(int root_rank, const T *senddata, const layout< T > &sendl) const
Gather messages from all processes at a single root process in a non-blocking manner.
+
irequest iallreduce(F f, T &sendrecvdata) const
Performs a reduction operation over all processes and broadcasts the result in a non-blocking manner,...
+
void barrier() const
Blocks until all processes in the communicator have reached this method.
+
irequest iallgather(const T &senddata, T *recvdata) const
Gather messages from all processes and distribute result to all processes in a non-blocking manner.
+
status_t sendrecv(iterT1 begin1, iterT1 end1, int destination, tag_t sendtag, iterT2 begin2, iterT2 end2, int source, tag_t recvtag) const
Sends a message and receives a message in a single operation.
+
communicator(split_shared_memory_tag split_shared_memory, const communicator &other, key_type key=0)
Constructs a new communicator from an existing one by spitting the communicator into disjoint subgrou...
Definition: comm_group.hpp:498
+
communicator(communicator &&other) noexcept
Move-constructs a communicator.
Definition: comm_group.hpp:439
+
irequest iscatter(int root_rank, T *recvdata, const layout< T > &recvl) const
Scatter messages from a single root process to all processes in a non-blocking manner.
+
void bsend(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a buffered send operation.
Definition: comm_group.hpp:969
+
void reduce_scatter(F f, const T *senddata, T *recvdata, const contiguous_layouts< T > &recvcounts) const
Performs a reduction operation over all processes and scatters the result.
+
void allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const
Gather messages with a variable amount of data from all processes and distribute result to all proces...
+
irequest isend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with several values having a specific memory layout via a non-blocking standard send ...
Definition: comm_group.hpp:797
+
irequest ialltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
+
status_t recv(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const
Receives a message with a several values having a specific memory layout.
+
irequest ibcast(int root_rank, T *data, const layout< T > &l) const
Broadcasts a message from a process to all other processes in a non-blocking manner.
+
irequest igatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const
Gather messages with a variable amount of data from all processes at a single root process in a non-b...
+
void bcast(int root_rank, T *data, const layout< T > &l) const
Broadcasts a message from a process to all other processes.
+
irequest iscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a partial reduction operation (scan) over all processes in a non-blocking manner.
+
irequest iallgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Gather messages with a variable amount of data from all processes and distribute result to all proces...
+
irequest iallreduce(F f, const T &senddata, T &recvdata) const
Performs a reduction operation over all processes and broadcasts the result in a non-blocking manner.
+
irequest igather(int root_rank, const T &senddata, T *recvdata) const
Gather messages from all processes at a single root process in a non-blocking manner.
+
prequest send_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values having a specific ...
Definition: comm_group.hpp:865
+
irequest imrecv(T *data, const layout< T > &l, message_t &m) const
Receives a message with several values having a specific memory layout via a non-blocking receive ope...
+
irequest ireduce(F f, int root_rank, const T &senddata) const
Performs a reduction operation over all processes in a non-blocking manner, non-root in-place variant...
+
irequest ialltoallv(T *sendrecvdata, const layouts< T > &sendrecvls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
+
equality_type compare(const communicator &other) const
Compares to another communicator.
Definition: comm_group.hpp:599
+
void scatter(int root_rank, T *recvdata, const layout< T > &recvl) const
Scatter messages from a single root process to all processes.
+
irequest iexscan(F f, const T &senddata, T &recvdata) const
Performs a partial reduction operation (exclusive scan) over all processes in a non-blocking manner.
+
irequest irecv(T &data, int source, tag_t t=tag_t(0)) const
Receives a message with a single value via a non-blocking receive operation.
+
void exscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a partial reduction operation (exclusive scan) over all processes.
+
prequest ssend_init(const T &data, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a single value via a blocking synch...
+
void alltoall(T *sendrecvdata, const layout< T > &sendrecvl) const
Sends messages to all processes and receives messages from all processes, in-place version.
+
status_t mrecv(iterT begin, iterT end, message_t &m) const
Receives a message with a several values given by a pair of iterators by a message handle.
+
static constexpr split_tag split
Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgr...
Definition: comm_group.hpp:330
+
irequest iexscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a partial reduction operation (exclusive scan) over all processes in a non-blocking manner,...
+
void scan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a partial reduction operation (scan) over all processes.
+
irequest iallgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const
Gather messages with a variable amount of data from all processes and distribute result to all proces...
+
irequest irsend(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a non-blocking ready send operation.
+
void allreduce(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes and broadcasts the result.
+
communicator(group_collective_tag group_collective, const communicator &other, const group &gr, tag_t t=tag_t(0))
Constructs a new communicator from an existing one with a specified communication group.
Definition: comm_group.hpp:463
+
void reduce(F f, int root_rank, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes.
+
irequest iscatterv(int root_rank, const T *senddata, const layouts< T > &sendls, T *recvdata, const layout< T > &recvl) const
Scatter messages with a variable amount of data from a single root process to all processes in a non-...
+
void scan(F f, T &sendrecvdata) const
Performs a partial reduction operation (scan) over all processes, in-place variant.
+
status_t sendrecv(const T &senddata, int destination, tag_t sendtag, T &recvdata, int source, tag_t recvtag) const
Sends a message and receives a message in a single operation.
+
irequest ialltoall(const T *senddata, T *recvdata) const
Sends messages to all processes and receives messages from all processes in a non-blocking manner.
+
void reduce_scatter_block(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &recvcount) const
Performs a reduction operation over all processes and scatters the result.
+
irequest iallreduce(F f, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes and broadcasts the result in non-blocking manner,...
+
irequest iallreduce(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes and broadcasts the result in a non-blocking manner.
+
void reduce_scatter_block(F f, const T *senddata, T &recvdata) const
Performs a reduction operation over all processes and scatters the result.
+
void scatter(int root_rank, const T *senddata, T &recvdata) const
Scatter messages from a single root process to all processes.
+
irequest imrecv(T &data, message_t &m) const
Receives a message with a single value via a non-blocking receive operation by a message handle.
+
prequest rsend_init(const T &data, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a single value via a blocking ready...
+
prequest send_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values given by a pair of...
Definition: comm_group.hpp:890
+
irequest ibcast(int root_rank, T &data) const
Broadcasts a message from a process to all other processes in a non-blocking manner.
+
irequest ialltoall(T *sendrecvdata) const
Sends messages to all processes and receives messages from all processes in a non-blocking manner,...
+
irequest issend(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a non-blocking synchronous send operation.
+
void reduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes, in-place variant.
+
communicator(const communicator &other)
Creates a new communicator which is equivalent to an existing one.
Definition: comm_group.hpp:435
+
irequest isend(const T &data, int destination, tag_t t=tag_t(0)) const
Sends a message with a single value via a non-blocking standard send operation.
Definition: comm_group.hpp:779
+
prequest bsend_init(const T &data, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a single value via a buffered send ...
+
communicator(comm_collective_tag comm_collective, const communicator &other, const group &gr)
Constructs a new communicator from an existing one with a specified communication group.
Definition: comm_group.hpp:450
+
void scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const
Scatter messages with a variable amount of data from a single root process to all processes.
+
irequest irsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a non-blocking ready send oper...
+
void gather(int root_rank, const T *senddata, const layout< T > &sendl) const
Gather messages from all processes at a single root process.
+
status_t recv(T &data, int source, tag_t t=tag_t(0)) const
Receives a message with a single value.
+
irequest ireduce(F f, int root_rank, const T *senddata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes in a non-blocking manner, non-root in-place variant...
+
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:564
+
static constexpr equality_type similar
Definition: comm_group.hpp:306
+
irequest ialltoall(T *sendrecvdata, const layout< T > &sendrecvl) const
Sends messages to all processes and receives messages from all processes in a non-blocking manner,...
+
void ssend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a blocking synchronous send op...
+
status_t sendrecv_replace(iterT begin, iterT end, int destination, tag_t sendtag, int source, tag_t recvtag) const
Sends a message and receives a message in a single operation.
+
void bsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values having a specific memory layout via a buffered send operation.
Definition: comm_group.hpp:985
+
void bcast(int root_rank, T &data) const
Broadcasts a message from a process to all other processes.
+
void gather(int root_rank, const T &senddata, T *recvdata) const
Gather messages from all processes at a single root process.
+
irequest iscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a partial reduction (scan) operation over all processes in a non-blocking manner,...
+
static constexpr equality_type identical
Definition: comm_group.hpp:300
+
void gather(int root_rank, const T &senddata) const
Gather messages from all processes at a single root process.
+
irequest ibarrier() const
Notifies the process that it has reached the barrier and returns immediately.
+
irequest issend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with several values having a specific memory layout via a non-blocking synchronous se...
+
irequest iallgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Gather messages from all processes and distribute result to all processes in a non-blocking manner.
+
irequest ialltoall(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Sends messages to all processes and receives messages from all processes in a non-blocking manner.
+
irequest ireduce(F f, int root_rank, T &sendrecvdata) const
Performs a reduction operation over all processes in a non-blocking manner, in-place variant.
+
static constexpr split_shared_memory_tag split_shared_memory
Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgr...
Definition: comm_group.hpp:337
+
irequest igather(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Gather messages from all processes at a single root process in a non-blocking manner.
+
communicator & operator=(const communicator &other) noexcept
Copy-assigns and creates a new communicator which is equivalent to an existing one.
Definition: comm_group.hpp:526
+
status_t mrecv(T &data, message_t &m) const
Receives a message with a single value by a message handle.
+
void exscan(F f, T &sendrecvdata) const
Performs a partial reduction operation (exclusive scan) over all processes, in-place variant.
+
void alltoall(T *sendrecvdata) const
Sends messages to all processes and receives messages from all processes, in-place version.
+
bool is_valid() const
Checks if a communicator is valid, i.e., is not an empty communicator with no associated process.
Definition: comm_group.hpp:609
+
void alltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
+
void exscan(F f, const T &senddata, T &recvdata) const
Performs partial reduction operation (exclusive scan) over all processes.
+
void scatter(int root_rank, T &recvdata) const
Scatter messages from a single root process to all processes.
+
void reduce(F f, int root_rank, T &sendrecvdata) const
Performs a reduction operation over all processes, in-place variant.
+
prequest recv_init(T &data, int source, tag_t t=tag_t(0)) const
Creates a persistent communication request to receive a message with a single value via a blocking re...
+
prequest rsend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values having a specific ...
+
void alltoall(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Sends messages to all processes and receives messages from all processes.
+
void scan(F f, const T &senddata, T &recvdata) const
Performs partial reduction operation (scan) over all processes.
+
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:572
+
void gatherv(int root_rank, const T *senddata, const layout< T > &sendl) const
Gather messages with a variable amount of data from all processes at a single root process.
+
prequest bsend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Creates a persistent communication request to send a message with a several values having a specific ...
+
void ssend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values having a specific memory layout via a blocking synchronous send...
+
irequest irsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const
Sends a message with several values having a specific memory layout via a non-blocking ready send ope...
+
void bsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const
Sends a message with a several values given by a pair of iterators via a buffered send operation.
+
irequest ireduce_scatter_block(F f, const T *senddata, T &recvdata) const
Performs a reduction operation over all processes and scatters the result in a non-blocking manner.
+
irequest imrecv(iterT begin, iterT end, message_t &m) const
Receives a message with a several values given by a pair of iterators via a non-blocking receive oper...
communicator()=default
Creates an empty communicator with no associated process.
-
bool operator!=(const communicator &other) const
Tests for identity of communicators.
Definition: comm_group.hpp:583
-
static constexpr equality_type congruent
Definition: comm_group.hpp:300
-
void reduce(F f, int root_rank, const T *senddata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes, non-root in-place variant.
-
communicator(split_tag split, const communicator &other, color_type color, key_type key=0)
Constructs a new communicator from an existing one with a specified communication group.
Definition: comm_group.hpp:476
-
status_t mrecv(T *data, const layout< T > &l, message_t &m) const
Receives a message with a several values having a specific memory layout by a message handle.
-
void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const
Gather messages with a variable amount of data from all processes at a single root process.
-
status_t probe(int source, tag_t t=tag_t(0)) const
Blocking test for an incoming message.
-
void gather(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Gather messages from all processes at a single root process.
-
equality_type
Equality types for communicator comparison.
Definition: comm_group.hpp:281
+
bool operator!=(const communicator &other) const
Tests for identity of communicators.
Definition: comm_group.hpp:590
+
static constexpr equality_type congruent
Definition: comm_group.hpp:303
+
void reduce(F f, int root_rank, const T *senddata, const contiguous_layout< T > &l) const
Performs a reduction operation over all processes, non-root in-place variant.
+
communicator(split_tag split, const communicator &other, color_type color, key_type key=0)
Constructs a new communicator from an existing one with a specified communication group.
Definition: comm_group.hpp:479
+
status_t mrecv(T *data, const layout< T > &l, message_t &m) const
Receives a message with a several values having a specific memory layout by a message handle.
+
void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const
Gather messages with a variable amount of data from all processes at a single root process.
+
status_t probe(int source, tag_t t=tag_t(0)) const
Blocking test for an incoming message.
+
void gather(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Gather messages from all processes at a single root process.
+
equality_type
Equality types for communicator comparison.
Definition: comm_group.hpp:284
@ unequal
communicators are unequal, i.e., communicators have different sets of members
-
irequest iscan(F f, const T &senddata, T &recvdata) const
Performs a partial reduction operation (scan) over all processes in a non-blocking manner.
-
void alltoallv(T *sendrecvdata, const layouts< T > &sendrecvls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
-
irequest iscatter(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Scatter messages from a single root process to all processes in a non-blocking manner.
-
void scan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a partial reduction operation (scan) over all processes, in-place variant.
+
irequest iscan(F f, const T &senddata, T &recvdata) const
Performs a partial reduction operation (scan) over all processes in a non-blocking manner.
+
void alltoallv(T *sendrecvdata, const layouts< T > &sendrecvls) const
Sends messages with a variable amount of data to all processes and receives messages with a variable ...
+
irequest iscatter(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Scatter messages from a single root process to all processes in a non-blocking manner.
+
void scan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const
Performs a partial reduction operation (scan) over all processes, in-place variant.
Layout representing contiguous storage several objects.
Definition: layout.hpp:458
-
container for storing contiguous layouts
Definition: layout.hpp:1700
+
container for storing contiguous layouts
Definition: layout.hpp:1703
Indicates the beginning of data buffers in various collective communication operations.
Communicator with general graph topology.
Communicator with general graph topology.
@@ -2904,11 +2903,10 @@
Represents a group of processes.
Definition: comm_group.hpp:45
static constexpr Union_tag Union
Indicates the creation of a union of two groups.
Definition: comm_group.hpp:71
static constexpr equality_type similar
Definition: comm_group.hpp:64
-
bool operator==(const group &other) const
Tests for identity of process groups.
Definition: comm_group.hpp:222
+
bool operator==(const group &other) const
Tests for identity of process groups.
Definition: comm_group.hpp:223
ranks translate(const ranks &rank, const group &other) const
Determines the relative numbering of the same process in two different groups.
Definition: comm_group.hpp:213
static constexpr equality_type unequal
indicates that groups are unequal, i.e., groups have different sets of members
Definition: comm_group.hpp:66
-
friend class communicator
Definition: comm_group.hpp:244
-
bool operator!=(const group &other) const
Tests for identity of process groups.
Definition: comm_group.hpp:230
+
bool operator!=(const group &other) const
Tests for identity of process groups.
Definition: comm_group.hpp:232
int translate(int rank, const group &other) const
Determines the relative numbering of the same process in two different groups.
Definition: comm_group.hpp:203
group()=default
Creates an empty process group.
static constexpr difference_tag difference
Indicates the creation of a difference of two groups.
Definition: comm_group.hpp:81
@@ -2921,7 +2919,7 @@
@ unequal
groups are unequal, i.e., groups have different sets of members
@ identical
groups are identical, i.e., groups have same the members in same rank order
static constexpr intersection_tag intersection
Indicates the creation of an intersection of two groups.
Definition: comm_group.hpp:76
-
equality_type compare(const group &other) const
Compares to another process group.
Definition: comm_group.hpp:238
+
equality_type compare(const group &other) const
Compares to another process group.
Definition: comm_group.hpp:241
static constexpr exclude_tag exclude
Indicates the creation of a subgroup by excluding members of an existing group.
Definition: comm_group.hpp:91
group & operator=(group &&other) noexcept
Move-assigns a process group.
Definition: comm_group.hpp:171
int rank() const
Determines the rank within a process group.
Definition: comm_group.hpp:193
@@ -2933,7 +2931,7 @@
Represents a non-blocking communication request.
Definition: request.hpp:224
Layout representing data at non-consecutive memory locations, which can be addressed via an iterator.
Definition: layout.hpp:1184
Base class for a family of classes that describe where objects are located in memory when several obj...
Definition: layout.hpp:79
-
container for storing layouts
Definition: layout.hpp:1661
+
container for storing layouts
Definition: layout.hpp:1664
Represents a persistent communication request.
Definition: request.hpp:271
Represents a collection of ranks.
Definition: ranks.hpp:13
Class that represents the status of a received message.
Definition: status.hpp:20
@@ -2942,12 +2940,7 @@
static tag_t any()
static tag_t up()
Layout representing contiguous storage several objects.
Definition: layout.hpp:568
- -
MPI_Message message_t
Definition: message.hpp:9
-
constexpr int any_source
Wildcard value to indicate in a receive operation, e.g., communicator::recv, that any source is accep...
Definition: mpl.hpp:13
-
constexpr int proc_null
Special value that can be used instead of a rank wherever a source or a destination argument is requi...
Definition: mpl.hpp:18
- -
return value of matching probe operations
Definition: comm_group.hpp:35
+
Return value of matching probe operations.
Definition: comm_group.hpp:35
message_t message
message handle to be used in a matching receive operation
Definition: comm_group.hpp:37
status_t status
status of the pending incoming message
Definition: comm_group.hpp:39
diff --git a/docs/html/communicator_8cc-example.html b/docs/html/communicator_8cc-example.html index 66ee3d2f..89d50bd0 100644 --- a/docs/html/communicator_8cc-example.html +++ b/docs/html/communicator_8cc-example.html @@ -93,43 +93,41 @@
int main() {
// check communicator properties of comm_world
- -
std::cout << "comm_world rank: " << comm_world.rank() << "\tsize: " << comm_world.size()
+
const mpl::communicator &comm_world{mpl::environment::comm_world()};
+
std::cout << "comm_world rank: " << comm_world.rank() << "\tsize: " << comm_world.size()
<< std::endl;
- +
comm_world.barrier();
// split comm_world into 3 disjoint communicators
// and carry out some collective communication
- +
mpl::communicator comm_3{mpl::communicator::split, comm_world, comm_world.rank() % 3};
int key;
if (comm_3.rank() == 0)
-
key = comm_world.rank() % 3;
+
key = comm_world.rank() % 3;
comm_3.bcast(0, key);
std::cout << "comm_3 rank: " << comm_3.rank() << "\tsize: " << comm_3.size()
<< "\tkey: " << key << std::endl;
- +
comm_world.barrier();
// split comm_world into a communicator which contains all processes
// except rank 0 of comm_world and carry out some collective communication
- - -
if (comm_world.rank() != 0) {
+
mpl::communicator comm_without_0(mpl::communicator::split, comm_world,
+
comm_world.rank() == 0 ? mpl::undefined : 1);
+
if (comm_world.rank() != 0) {
double data{1};
-
comm_without_0.allreduce(mpl::plus<double>(), data);
+
comm_without_0.allreduce(mpl::plus<double>(), data);
std::cout << "sum: " << data << std::endl;
}
- -
std::cout << "comm_world rank: " << comm_world.rank()
-
<< "\tcomm valid: " << (comm_without_0.is_valid() ? "yes" : "no") << std::endl;
+
comm_world.barrier();
+
std::cout << "comm_world rank: " << comm_world.rank()
+
<< "\tcomm valid: " << (comm_without_0.is_valid() ? "yes" : "no") << std::endl;
return EXIT_SUCCESS;
}
-
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:250
-
void allreduce(F f, const T &senddata, T &recvdata) const
Performs a reduction operation over all processes and broadcasts the result.
-
void barrier() const
Blocks until all processes in the communicator have reached this method.
-
static constexpr split_tag split
Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgr...
Definition: comm_group.hpp:327
-
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:559
-
bool is_valid() const
Checks if a communicator is valid, i.e., is not an empty communicator with no associated process.
Definition: comm_group.hpp:601
-
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:567
-
const communicator & comm_world()
Provides access to a predefined communicator that allows communication with all processes.
-
constexpr int undefined
Special value that is used to indicate an invalid return value or function parameter in some function...
Definition: mpl.hpp:22
+
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:253
+
void allreduce(F f, const T &senddata, T &recvdata) const
Performs a reduction operation over all processes and broadcasts the result.
+
void barrier() const
Blocks until all processes in the communicator have reached this method.
+
static constexpr split_tag split
Indicates the creation of a new communicator by spitting an existing communicator into disjoint subgr...
Definition: comm_group.hpp:330
+
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:564
+
bool is_valid() const
Checks if a communicator is valid, i.e., is not an empty communicator with no associated process.
Definition: comm_group.hpp:609
+
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:572
Function object for calculating the sum of two values in reduction operations as communicator::reduce...
Definition: operator.hpp:39
diff --git a/docs/html/datatype_8hpp_source.html b/docs/html/datatype_8hpp_source.html index b31fbf3f..18d7210c 100644 --- a/docs/html/datatype_8hpp_source.html +++ b/docs/html/datatype_8hpp_source.html @@ -110,7 +110,7 @@
22#include <cstddef>
23#include <type_traits>
24
-
25namespace mpl {
+
25namespace mpl {
26
27 namespace detail {
28
@@ -216,7 +216,7 @@
133 }
134
139 template<typename T>
- +
141 static_assert(not std::is_const<T>::value, "type must not be const");
142 static_assert(not std::is_pointer<T>::value, "type must not be pointer");
143 block_lengths_.push_back(size(x));
@@ -251,11 +251,11 @@
176 base_struct_builder() = default;
177
178 public:
- -
180 void operator=(const base_struct_builder &) = delete;
+ +
180 void operator=(const base_struct_builder &) = delete;
181
182 protected:
-
183 ~base_struct_builder() { MPI_Type_free(&type_); }
+
183 ~base_struct_builder() { MPI_Type_free(&type_); }
184
185 using data_type_category = detail::basic_or_fixed_size_type;
186
@@ -267,18 +267,18 @@
199 template<typename T>
201 public:
-
202 using data_type_category = detail::unsupported_type;
+
202 using data_type_category = detail::unsupported_type;
203 };
204
205 //--------------------------------------------------------------------
206
211 template<typename T1, typename T2>
-
212 class struct_builder<std::pair<T1, T2>> : public base_struct_builder<std::pair<T1, T2>> {
+
212 class struct_builder<std::pair<T1, T2>> : public base_struct_builder<std::pair<T1, T2>> {
215
216 public:
- +
218 std::pair<T1, T2> pair;
219 layout_.register_struct(pair);
220 layout_.register_element(pair.first);
@@ -337,12 +337,12 @@
273 } // namespace detail
274
278 template<typename... Ts>
-
279 class struct_builder<std::tuple<Ts...>> : public base_struct_builder<std::tuple<Ts...>> {
+
279 class struct_builder<std::tuple<Ts...>> : public base_struct_builder<std::tuple<Ts...>> {
280 using base = base_struct_builder<std::tuple<Ts...>>;
281 struct_layout<std::tuple<Ts...>> layout_;
282
283 public:
- +
285 std::tuple<Ts...> tuple;
286 layout_.register_struct(tuple);
287 base::define_struct(layout_);
@@ -360,7 +360,7 @@
304 struct_layout<T[N0]> layout_;
305
306 public:
- +
308 T array[N0];
309 layout_.register_struct(array);
310 layout_.register_element(array);
@@ -374,7 +374,7 @@
325
326 public:
- +
328 T array[N0][N1];
329 layout_.register_struct(array);
330 layout_.register_element(array);
@@ -388,7 +388,7 @@
346
347 public:
- +
349 T array[N0][N1][N2];
350 layout_.register_struct(array);
351 layout_.register_element(array);
@@ -402,7 +402,7 @@
368
369 public:
- +
371 T array[N0][N1][N2][N3];
372 layout_.register_struct(array);
373 layout_.register_element(array);
@@ -413,12 +413,12 @@
378 //--------------------------------------------------------------------
379
384 template<typename T, std::size_t N>
-
385 class struct_builder<std::array<T, N>> : public base_struct_builder<std::array<T, N>> {
+
385 class struct_builder<std::array<T, N>> : public base_struct_builder<std::array<T, N>> {
388
389 public:
- +
391 std::array<T, N> array;
392 layout_.register_struct(array);
393 layout_.register_element(array);
@@ -434,14 +434,14 @@
403 class datatype_traits_impl {
404 public:
405 static MPI_Datatype get_datatype() {
-
406 static struct_builder<T> builder;
+
406 static struct_builder<T> builder;
407 return builder.type_;
408 }
-
409 using data_type_category = typename struct_builder<T>::data_type_category;
+
409 using data_type_category = typename struct_builder<T>::data_type_category;
410 };
411
412 template<typename T>
-
413 class datatype_traits_impl<T, std::enable_if_t<std::is_enum<T>::value>> {
+
413 class datatype_traits_impl<T, std::enable_if_t<std::is_enum<T>::value>> {
414 using underlying = std::underlying_type_t<T>;
415
416 public:
@@ -452,7 +452,7 @@
421#if defined MPL_HOMOGENEOUS
422 template<typename T>
423 class datatype_traits_impl<
-
424 T, std::enable_if_t<
+
424 T, std::enable_if_t<
425 std::is_trivially_copyable_v<T> and std::is_copy_assignable_v<T> and
426 not std::is_enum_v<T> and not std::is_array_v<T>>> {
427 public:
@@ -553,91 +553,91 @@
522 };
523
524 template<typename T, typename A>
-
525 class datatype_traits<std::vector<T, A>> {
+
525 class datatype_traits<std::vector<T, A>> {
526 public:
527 using data_type_category = detail::contiguous_stl_container;
528 };
529
530 template<typename A>
-
531 class datatype_traits<std::vector<bool, A>> {
+
531 class datatype_traits<std::vector<bool, A>> {
532 public:
533 using data_type_category = detail::stl_container;
534 };
535
536 template<typename T, typename A>
-
537 class datatype_traits<std::deque<T, A>> {
+
537 class datatype_traits<std::deque<T, A>> {
538 public:
539 using data_type_category = detail::stl_container;
540 };
541
542 template<typename T, typename A>
-
543 class datatype_traits<std::forward_list<T, A>> {
+
543 class datatype_traits<std::forward_list<T, A>> {
544 public:
545 using data_type_category = detail::stl_container;
546 };
547
548 template<typename T, typename A>
-
549 class datatype_traits<std::list<T, A>> {
+
549 class datatype_traits<std::list<T, A>> {
550 public:
551 using data_type_category = detail::stl_container;
552 };
553
554 template<typename T, typename C, typename A>
-
555 class datatype_traits<std::set<T, C, A>> {
+
555 class datatype_traits<std::set<T, C, A>> {
556 public:
557 using data_type_category = detail::stl_container;
558 };
559
560 template<typename T, typename C, typename A>
-
561 class datatype_traits<std::map<T, C, A>> {
+
561 class datatype_traits<std::map<T, C, A>> {
562 public:
563 using data_type_category = detail::stl_container;
564 };
565
566 template<typename T, typename C, typename A>
-
567 class datatype_traits<std::multiset<T, C, A>> {
+
567 class datatype_traits<std::multiset<T, C, A>> {
568 public:
569 using data_type_category = detail::stl_container;
570 };
571
572 template<typename T, typename C, typename A>
-
573 class datatype_traits<std::multimap<T, C, A>> {
+
573 class datatype_traits<std::multimap<T, C, A>> {
574 public:
575 using data_type_category = detail::stl_container;
576 };
577
578 template<typename T, typename C, typename A>
-
579 class datatype_traits<std::unordered_set<T, C, A>> {
+
579 class datatype_traits<std::unordered_set<T, C, A>> {
580 public:
581 using data_type_category = detail::stl_container;
582 };
583
584 template<typename T, typename C, typename A>
-
585 class datatype_traits<std::unordered_map<T, C, A>> {
+
585 class datatype_traits<std::unordered_map<T, C, A>> {
586 public:
587 using data_type_category = detail::stl_container;
588 };
589
590 template<typename T, typename C, typename A>
-
591 class datatype_traits<std::unordered_multiset<T, C, A>> {
+
591 class datatype_traits<std::unordered_multiset<T, C, A>> {
592 public:
593 using data_type_category = detail::stl_container;
594 };
595
596 template<typename T, typename C, typename A>
-
597 class datatype_traits<std::unordered_multimap<T, C, A>> {
+
597 class datatype_traits<std::unordered_multimap<T, C, A>> {
598 public:
599 using data_type_category = detail::stl_container;
600 };
601
602 template<typename T, typename Trait, typename Char>
-
603 class datatype_traits<std::basic_string<T, Trait, Char>> {
+
603 class datatype_traits<std::basic_string<T, Trait, Char>> {
604 public:
605 using data_type_category = detail::contiguous_const_stl_container;
606 };
607
608 template<typename T>
-
609 class datatype_traits<std::valarray<T>> {
+
609 class datatype_traits<std::valarray<T>> {
610 public:
611 using data_type_category = detail::contiguous_stl_container;
612 };
@@ -816,22 +816,10 @@
785
786#endif
Base class used to manage information about structures/classes and their public members.
Definition: datatype.hpp:161
-
base_struct_builder(const base_struct_builder &)=delete
-
void operator=(const base_struct_builder &)=delete
- - - - - - -
Template class used to manage information about structures/classes and their public members.
Definition: datatype.hpp:200
-
detail::unsupported_type data_type_category
Definition: datatype.hpp:202
layout class for storing meta information about the public members of structures
Definition: datatype.hpp:60
struct_layout & register_struct(const S &x)
starts to register a struct type
Definition: datatype.hpp:130
struct_layout & register_element(T &x)
registers a struct member
Definition: datatype.hpp:140
- - diff --git a/docs/html/dir_d28a4824dc47e487b107a5db32ef43c4.html b/docs/html/dir_d28a4824dc47e487b107a5db32ef43c4.html index c2eb2f07..319e460f 100644 --- a/docs/html/dir_d28a4824dc47e487b107a5db32ef43c4.html +++ b/docs/html/dir_d28a4824dc47e487b107a5db32ef43c4.html @@ -86,12 +86,6 @@
examples Directory Reference
-

ssize_t mpl::layout< T >::upper_bound ssize_t mpl::layout< T >::upper_bound ( ) const
- - - -

-Files

file  examples.doxy [code]
 

diff --git a/docs/html/dir_eb33f6710b5cd34ac8f41e1b51ea9fbe.html b/docs/html/dir_eb33f6710b5cd34ac8f41e1b51ea9fbe.html index c80a4799..ea41c5e4 100644 --- a/docs/html/dir_eb33f6710b5cd34ac8f41e1b51ea9fbe.html +++ b/docs/html/dir_eb33f6710b5cd34ac8f41e1b51ea9fbe.html @@ -86,52 +86,6 @@
mpl Directory Reference
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Files

file  cartesian_communicator.hpp [code]
 
file  comm_group.hpp [code]
 
file  datatype.hpp [code]
 
file  displacements.hpp [code]
 
file  distributed_graph_communicator.hpp [code]
 
file  distributed_grid.hpp [code]
 
file  environment.hpp [code]
 
file  error.hpp [code]
 
file  flat_memory.hpp [code]
 
file  graph_communicator.hpp [code]
 
file  layout.hpp [code]
 
file  message.hpp [code]
 
file  mpl.hpp [code]
 
file  operator.hpp [code]
 
file  ranks.hpp [code]
 
file  request.hpp [code]
 
file  status.hpp [code]
 
file  tag.hpp [code]
 
file  topology_communicator.hpp [code]
 
file  utility.hpp [code]
 
file  vector.hpp [code]
 

diff --git a/docs/html/displacements_8hpp_source.html b/docs/html/displacements_8hpp_source.html index 7b689da6..871eb51d 100644 --- a/docs/html/displacements_8hpp_source.html +++ b/docs/html/displacements_8hpp_source.html @@ -94,18 +94,18 @@
6#include <vector>
7#include <utility>
8
-
9namespace mpl {
+
9namespace mpl {
10
13 class displacements : private std::vector<MPI_Aint> {
14 using base = std::vector<MPI_Aint>;
15
16 public:
-
17 using size_type = base::size_type;
-
18 using value_type = base::value_type;
+
17 using size_type = base::size_type;
+
18 using value_type = base::value_type;
19 using base::iterator;
20 using base::const_iterator;
21
-
24 explicit displacements(size_type n = 0) : base(n, 0) {}
+
24 explicit displacements(size_type n = 0) : base(n, 0) {}
25
28 explicit displacements(std::initializer_list<MPI_Aint> init) : base(init) {}
29
@@ -129,14 +129,11 @@
53
54#endif
Indicates the beginning of data buffers in various collective communication operations.
-
base::size_type size_type
displacements(const displacements &other)=default
Copy constructor.
-
base::value_type value_type
displacements(std::initializer_list< MPI_Aint > init)
Constructs a set of displacements with given displacements.
const MPI_Aint * operator()() const
Get raw displacement data.
displacements(displacements &&other)=default
Move constructor.
displacements(size_type n=0)
Constructs a set of displacements with displacement zero.
-

diff --git a/docs/html/distributed__graph__communicator_8hpp_source.html b/docs/html/distributed__graph__communicator_8hpp_source.html index 59aa77d2..a4d47843 100644 --- a/docs/html/distributed__graph__communicator_8hpp_source.html +++ b/docs/html/distributed__graph__communicator_8hpp_source.html @@ -99,15 +99,15 @@
11#include <algorithm>
12#include <numeric>
13
-
14namespace mpl {
+
14namespace mpl {
15
18 public:
21 public:
-
22 int rank{0};
-
23 int weight{0};
- +
22 int rank{0};
+
23 int weight{0};
+
25 rank_weight_pair(int rank, int weight = 0) : rank{rank}, weight{weight} {}
26 };
27
28 private:
@@ -127,11 +127,11 @@
43 using base = std::set<rank_weight_pair, less_weights>;
44
45 public:
-
46 using value_type = typename base::value_type;
-
47 using reference = typename base::reference;
-
48 using const_reference = typename base::const_reference;
-
49 using iterator = typename base::iterator;
-
50 using const_iterator = typename base::const_iterator;
+
46 using value_type = typename base::value_type;
+
47 using reference = typename base::reference;
+
48 using const_reference = typename base::const_reference;
+
49 using iterator = typename base::iterator;
+
50 using const_iterator = typename base::const_iterator;
51
53 neighbours_set() = default;
54
@@ -146,7 +146,7 @@
65
68 [[nodiscard]] int size() const { return static_cast<int>(base::size()); }
69
-
72 void add(const value_type &edge) { insert(edge); }
+
72 void add(const value_type &edge) { insert(edge); }
73 };
74
75
@@ -252,35 +252,28 @@
223 }
224 };
225
- - -
232 return pair_1.rank == pair_2.rank and pair_1.weight == pair_2.weight;
+
230 inline bool operator==(const distributed_graph_communicator::rank_weight_pair &pair_1,
+
231 const distributed_graph_communicator::rank_weight_pair &pair_2) {
+
232 return pair_1.rank == pair_2.rank and pair_1.weight == pair_2.weight;
233 }
234
- - -
241 return pair_1.rank != pair_2.rank or pair_1.weight != pair_2.weight;
+
239 inline bool operator!=(const distributed_graph_communicator::rank_weight_pair &pair_1,
+
240 const distributed_graph_communicator::rank_weight_pair &pair_2) {
+
241 return pair_1.rank != pair_2.rank or pair_1.weight != pair_2.weight;
242 }
243
244} // namespace mpl
245
246#endif
-
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:250
-
bool is_valid() const
Checks if a communicator is valid, i.e., is not an empty communicator with no associated process.
Definition: comm_group.hpp:601
+
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:253
+
bool is_valid() const
Checks if a communicator is valid, i.e., is not an empty communicator with no associated process.
Definition: comm_group.hpp:609
Set of edges, pairs of nodes represented by non-negative integers.
void add(const value_type &edge)
Add an additional edge to the set.
- - -
neighbours_set(std::initializer_list< value_type > init)
Creates a set of edges given by the list.
-
neighbours_set()=default
Creates an empty set of edges.
-
rank_weight_pair(int rank, int weight=0)
Creates a rank-weight pair.
- -
Communicator with general graph topology.
distributed_graph_communicator()=default
Creates an empty communicator with no associated process.
neighbours_set out_neighbors() const
Determines the ranks of the processes for which the calling process is a source.
@@ -294,9 +287,6 @@
neighbours_set in_neighbors() const
Determines the ranks of the processes for which the calling process is a destination.
distributed_graph_communicator & operator=(distributed_graph_communicator &&other) noexcept
Move-assigns a communicator.
Base class for communicators with a topology.
- -
bool operator==(const distributed_graph_communicator::rank_weight_pair &pair_1, const distributed_graph_communicator::rank_weight_pair &pair_2)
Checks if rank-weight pair is equal.
-
bool operator!=(const distributed_graph_communicator::rank_weight_pair &pair_1, const distributed_graph_communicator::rank_weight_pair &pair_2)
Checks if rank-weight pair is not equal.
diff --git a/docs/html/distributed__grid_8hpp_source.html b/docs/html/distributed__grid_8hpp_source.html index 3339577c..1bbadaff 100644 --- a/docs/html/distributed__grid_8hpp_source.html +++ b/docs/html/distributed__grid_8hpp_source.html @@ -94,7 +94,7 @@
6#include <mpl/cartesian_communicator.hpp>
7#include <mpl/layout.hpp>
8
-
9namespace mpl {
+
9namespace mpl {
10
11 template<std::size_t dim, typename T, typename A>
12 class distributed_grid;
@@ -150,25 +150,25 @@
84 std::array<size_overlap_pair, dim> size_overlap_;
85
86 public:
- - - -
90 using iterator = typename std::array<size_overlap_pair, dim>::iterator;
-
91 using const_iterator = typename std::array<size_overlap_pair, dim>::const_iterator;
+ + +
89 using const_reference = const size_overlap_pair &;
+
90 using iterator = typename std::array<size_overlap_pair, dim>::iterator;
+
91 using const_iterator = typename std::array<size_overlap_pair, dim>::const_iterator;
92
-
93 dimensions(const size_overlap_pair &size_0) : size_overlap_{size_0} {
+
93 dimensions(const size_overlap_pair &size_0) : size_overlap_{size_0} {
94 static_assert(dim == 1, "invalid number of arguments");
95 }
-
96 dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1)
+
96 dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1)
97 : size_overlap_{size_0, size_1} {
98 static_assert(dim == 2, "invalid number of arguments");
99 }
-
100 dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1,
+
100 dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1,
101 const size_overlap_pair &size_2)
102 : size_overlap_{size_0, size_1, size_2} {
103 static_assert(dim == 3, "invalid number of arguments");
104 }
-
105 dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1,
+
105 dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1,
106 const size_overlap_pair &size_2, const size_overlap_pair &size_3)
107 : size_overlap_{size_0, size_1, size_2, size_3} {
108 static_assert(dim == 4, "invalid number of arguments");
@@ -194,14 +194,14 @@
144 return size_overlap_[dimension];
145 }
146
-
147 [[nodiscard]] iterator begin() { return size_overlap_.begin(); }
-
148 [[nodiscard]] const_iterator begin() const { return size_overlap_.begin(); }
-
149 [[nodiscard]] const_iterator cbegin() const { return size_overlap_.cbegin(); }
-
150 [[nodiscard]] iterator end() { return size_overlap_.end(); }
-
151 [[nodiscard]] const_iterator end() const { return size_overlap_.end(); }
-
152 [[nodiscard]] const_iterator cend() const { return size_overlap_.xend(); }
+
147 [[nodiscard]] iterator begin() { return size_overlap_.begin(); }
+
148 [[nodiscard]] const_iterator begin() const { return size_overlap_.begin(); }
+
149 [[nodiscard]] const_iterator cbegin() const { return size_overlap_.cbegin(); }
+
150 [[nodiscard]] iterator end() { return size_overlap_.end(); }
+
151 [[nodiscard]] const_iterator end() const { return size_overlap_.end(); }
+
152 [[nodiscard]] const_iterator cend() const { return size_overlap_.xend(); }
153
-
154 friend class distributed_grid;
+
154 friend class distributed_grid;
155 };
156
@@ -408,23 +408,23 @@
483 std::array<size_type, dim> size_;
484
485 public:
- - -
488 using const_reference = const size_type &;
-
489 using iterator = typename std::array<size_type, dim>::iterator;
-
490 using const_iterator = typename std::array<std::size_t, dim>::const_iterator;
+
486 using value_type = size_type;
+
487 using reference = size_type &;
+
488 using const_reference = const size_type &;
+
489 using iterator = typename std::array<size_type, dim>::iterator;
+
490 using const_iterator = typename std::array<std::size_t, dim>::const_iterator;
491
-
492 dimensions(const size_type &size_0) : size_{size_0} {
+
492 dimensions(const size_type &size_0) : size_{size_0} {
493 static_assert(dim == 1, "invalid number of arguments");
494 }
-
495 dimensions(const size_type &size_0, const size_type &size_1) : size_{size_0, size_1} {
+
495 dimensions(const size_type &size_0, const size_type &size_1) : size_{size_0, size_1} {
496 static_assert(dim == 2, "invalid number of arguments");
497 }
-
498 dimensions(const size_type &size_0, const size_type &size_1, const size_type &size_2)
+
498 dimensions(const size_type &size_0, const size_type &size_1, const size_type &size_2)
499 : size_{size_0, size_1, size_2} {
500 static_assert(dim == 3, "invalid number of arguments");
501 }
-
502 dimensions(const size_type &size_0, const size_type &size_1, const size_type &size_2,
+
502 dimensions(const size_type &size_0, const size_type &size_1, const size_type &size_2,
503 const size_type &size_3)
504 : size_{size_0, size_1, size_2, size_3} {
505 static_assert(dim == 4, "invalid number of arguments");
@@ -435,20 +435,20 @@
512
516 [[nodiscard]] size_type size(size_type dimension) const { return size_[dimension]; }
517
-
521 [[nodiscard]] const_reference operator[](size_type dimension) const {
+
521 [[nodiscard]] const_reference operator[](size_type dimension) const {
522 return size_[dimension];
523 }
524
-
528 [[nodiscard]] reference operator[](size_type dimension) { return size_[dimension]; }
+
528 [[nodiscard]] reference operator[](size_type dimension) { return size_[dimension]; }
529
-
530 [[nodiscard]] iterator begin() { return size_.begin(); }
-
531 [[nodiscard]] const_iterator begin() const { return size_.begin(); }
-
532 [[nodiscard]] const_iterator cbegin() const { return size_.cbegin(); }
-
533 [[nodiscard]] iterator end() { return size_.end(); }
-
534 [[nodiscard]] const_iterator end() const { return size_.end(); }
-
535 [[nodiscard]] const_iterator cend() const { return size_.xend(); }
+
530 [[nodiscard]] iterator begin() { return size_.begin(); }
+
531 [[nodiscard]] const_iterator begin() const { return size_.begin(); }
+
532 [[nodiscard]] const_iterator cbegin() const { return size_.cbegin(); }
+
533 [[nodiscard]] iterator end() { return size_.end(); }
+
534 [[nodiscard]] const_iterator end() const { return size_.end(); }
+
535 [[nodiscard]] const_iterator cend() const { return size_.xend(); }
536
-
537 friend class local_grid;
+
537 friend class local_grid;
538 };
539
@@ -547,7 +547,7 @@
688
695 [[nodiscard]] const layouts<T> &sub_layouts() const { return sub_layouts_; }
696
- +
697 void swap(local_grid<dim, T, A> &other) {
698 global_size_.swap(other.global_size_);
699 v_.swap(other.v_);
700 sub_layouts_.swap(other.sub_layouts_);
@@ -558,26 +558,14 @@
705
706#endif
Communicator with Cartesian topology.
-
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:250
-
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:559
+
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:253
+
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:564
Characterizes the dimensionality, total size and overlap of a distributed data grid.
-
dimensions(const size_overlap_pair &size_0)
-
size_type dimensionality() const
Determines the dimensionality.
- -
typename std::array< size_overlap_pair, dim >::const_iterator const_iterator
size_type overlap(size_type dimension) const
Determines the overlap size of a dimension.
- -
dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1, const size_overlap_pair &size_2)
-
dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1, const size_overlap_pair &size_2, const size_overlap_pair &size_3)
size_type size(size_type dimension) const
Determines the total size of a dimension.
const_reference operator[](size_type dimension) const
Determines then total size along a dimension and the overlap of a dimension.
-
reference operator[](size_type dimension)
Determines then total size along a dimension and the overlap of a dimension.
-
dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1)
- -
typename std::array< size_overlap_pair, dim >::iterator iterator
-
Pair of grid size and overlap size.
size_overlap_pair(size_type size, size_type overlap)
Creates a size-overlap pair.
size_type size
indicates the total/global number data pints that the data grid holds along a dimension
@@ -619,27 +607,12 @@
typename vector_type::const_pointer const_pointer
const pointer to value_type
typename vector_type::difference_type difference_type
signed integer type for iterator differences
Will be thrown in case of invalid dimension.
Definition: error.hpp:53
-
container for storing layouts
Definition: layout.hpp:1661
+
container for storing layouts
Definition: layout.hpp:1664
Characterizes the dimensionality and the total size of a local data grid.
size_type size(size_type dimension) const
Determines the total size of a dimension.
-
dimensions(const size_type &size_0, const size_type &size_1)
- -
const_iterator cbegin() const
-
const_iterator end() const
-
typename std::array< size_type, dim >::iterator iterator
-
dimensions(const size_type &size_0, const size_type &size_1, const size_type &size_2)
-
size_type dimensionality() const
Determines the dimensionality.
-
typename std::array< std::size_t, dim >::const_iterator const_iterator
- -
const_iterator cend() const
-
reference operator[](size_type dimension)
Determines then total size along a dimension.
const_reference operator[](size_type dimension) const
Determines then total size along a dimension of a dimension.
-
const_iterator begin() const
- -
dimensions(const size_type &size_0, const size_type &size_1, const size_type &size_2, const size_type &size_3)
-
dimensions(const size_type &size_0)
typename vector_type::const_pointer const_pointer
const pointer to value_type
std::enable_if_t< d==2, reference > operator()(size_type i_0, size_type i_1)
Element access.
@@ -665,12 +638,10 @@
typename vector_type::difference_type difference_type
signed integer type for iterator differences
std::enable_if_t< d==3, const_reference > operator()(size_type i_0, size_type i_1, size_type i_2) const
Element access.
typename vector_type::pointer pointer
pointer to value_type
-
void swap(local_grid< dim, T, A > &other)
Class representing the parameters to characterize a subarray layout.
Definition: layout.hpp:1340
void add(int size, int subsize, int start)
add parameters for an additional array dimension
Definition: layout.hpp:1377
Layout representing data of a subset multi dimensional array.
Definition: layout.hpp:1335
void swap(subarray_layout< T > &other)
exchanges two subarray layouts
Definition: layout.hpp:1451
- diff --git a/docs/html/distributed_grid_8cc-example.html b/docs/html/distributed_grid_8cc-example.html index 37ccc658..50202420 100644 --- a/docs/html/distributed_grid_8cc-example.html +++ b/docs/html/distributed_grid_8cc-example.html @@ -110,17 +110,17 @@
int main() {
- +
const mpl::communicator &comm_world{mpl::environment::comm_world()};
{
// build a one-dimensional Cartesian communicator
// Cartesian is non-cyclic
- - + +
mpl::cartesian_communicator comm_c{comm_world, mpl::dims_create(comm_world.size(), size)};
// create a distributed grid of 31 total grid points and 2 shadow grid points
// to mirror data between adjacent processes
mpl::distributed_grid<1, int> grid{comm_c, {{31, 2}}};
// fill local grid including shadow grid points
-
for (auto i{grid.obegin(0)}, i_end{grid.oend(0)}; i < i_end; ++i)
+
for (auto i{grid.obegin(0)}, i_end{grid.oend(0)}; i < i_end; ++i)
grid(i) = comm_c.rank();
// get shadow data from adjacent processes
update_overlap(comm_c, grid);
@@ -137,9 +137,9 @@
{
// build a two-dimensional Cartesian communicator
// Cartesian is cyclic along 1st dimension, non-cyclic along 2nd dimension
- + - +
mpl::cartesian_communicator comm_c{comm_world, mpl::dims_create(comm_world.size(), size)};
// create a distributed grid of 11x13 total grid points and 2 respectively 1
// shadow grid points to mirror data between adjacent processes
mpl::distributed_grid<2, int> grid{comm_c, {{11, 2}, {13, 1}}};
@@ -169,9 +169,9 @@
static constexpr periodicity_tag non_periodic
indicates that a dimension in a Cartesian process topology is non-periodic
shift_ranks shift(int direction, int displacement) const
Finds the ranks of processes that can be reached by shifting the Cartesian grid.
static constexpr periodicity_tag periodic
indicates that a dimension in a Cartesian process topology is periodic
-
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:250
-
status_t sendrecv(const T &senddata, int destination, tag_t sendtag, T &recvdata, int source, tag_t recvtag) const
Sends a message and receives a message in a single operation.
-
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:559
+
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:253
+
status_t sendrecv(const T &senddata, int destination, tag_t sendtag, T &recvdata, int source, tag_t recvtag) const
Sends a message and receives a message in a single operation.
+
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:564
Local portion of a distributed data grid including local overlap data.
const subarray_layout< T > & left_border_layout(size_type d) const
Get the memory layout for sending data when updating data in overlap regions along a given dimension.
const subarray_layout< T > & left_mirror_layout(size_type d) const
Get the memory layout for receiving data when updating data in overlap regions along a given dimensio...
@@ -181,8 +181,6 @@
size_type obegin(size_type d) const
Determines the lowest index to access the local portion of the distributed grid including the overlap...
size_type oend(size_type d) const
Determines the last index (plus one) to access the local portion of the distributed grid including th...
Class for representing tag parameters in communication operations.
Definition: tag.hpp:12
-
const communicator & comm_world()
Provides access to a predefined communicator that allows communication with all processes.
-
cartesian_communicator::dimensions dims_create(int size, cartesian_communicator::dimensions dims)
Decomposes a given number of processes over a Cartesian grid made of the number of dimensions specifi...
diff --git a/docs/html/distributed_grid_scatter_gather_8cc-example.html b/docs/html/distributed_grid_scatter_gather_8cc-example.html index a2f54fea..2042d6d5 100644 --- a/docs/html/distributed_grid_scatter_gather_8cc-example.html +++ b/docs/html/distributed_grid_scatter_gather_8cc-example.html @@ -95,7 +95,7 @@
void scatter(const mpl::cartesian_communicator &communicator, int root,
const mpl::local_grid<dim, T, A> &local_grid,
mpl::distributed_grid<dim, T, A> &distributed_grid) {
-
communicator.scatterv(root, local_grid.data(), local_grid.sub_layouts(),
+
communicator.scatterv(root, local_grid.data(), local_grid.sub_layouts(),
distributed_grid.data(), distributed_grid.interior_layout());
}
@@ -122,20 +122,20 @@
int main() {
- - - +
const mpl::communicator &comm_world{mpl::environment::comm_world()};
+ +
const int nx{21}, ny{13};
- +
mpl::cartesian_communicator comm_c{comm_world, mpl::dims_create(comm_world.size(), size)};
mpl::distributed_grid<2, int> grid{comm_c, {{nx, 1}, {ny, 1}}};
const int c_rank{comm_c.rank()};
-
const int c_size{comm_c.size()};
+
const int c_size{comm_c.size()};
for (auto j{grid.obegin(1)}, j_end{grid.oend(1)}; j < j_end; ++j)
for (auto i{grid.obegin(0)}, i_end{grid.oend(0)}; i < i_end; ++i)
grid(i, j) = c_rank + 1 ;
-
if (comm_world.rank() == 0) {
+
if (comm_world.rank() == 0) {
mpl::local_grid<2, int> local_grid(comm_c, {nx, ny});
-
for (auto j{local_grid.begin(1)}, j_end{local_grid.end(1)}; j < j_end; ++j)
+
for (auto j{local_grid.begin(1)}, j_end{local_grid.end(1)}; j < j_end; ++j)
for (auto i{local_grid.begin(0)}, i_end{local_grid.end(0)}; i < i_end; ++i)
local_grid(i, j) = 0;
scatter(comm_c, 0, local_grid, grid);
@@ -155,7 +155,7 @@
for (auto j{grid.obegin(1)}, j_end{grid.oend(1)}; j < j_end; ++j)
for (auto i{grid.obegin(0)}, i_end{grid.oend(0)}; i < i_end; ++i)
grid(i, j) = c_rank;
-
if (comm_world.rank() == 0) {
+
if (comm_world.rank() == 0) {
mpl::local_grid<2, int> local_grid{comm_c, {nx, ny}};
gather(comm_c, 0, grid, local_grid);
std::cout << std::endl;
@@ -172,11 +172,11 @@
Communicator with Cartesian topology.
static constexpr periodicity_tag non_periodic
indicates that a dimension in a Cartesian process topology is non-periodic
static constexpr periodicity_tag periodic
indicates that a dimension in a Cartesian process topology is periodic
-
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:250
-
void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Gather messages with a variable amount of data from all processes at a single root process.
-
void scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const
Scatter messages with a variable amount of data from a single root process to all processes.
-
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:559
-
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:567
+
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:253
+
void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Gather messages with a variable amount of data from all processes at a single root process.
+
void scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const
Scatter messages with a variable amount of data from a single root process to all processes.
+
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:564
+
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:572
Local portion of a distributed data grid including local overlap data.
size_type size(size_type d) const
Determines the size of the local portion of the distributed data grid along a dimension.
pointer data()
Grands access to the flattened grid data.
@@ -186,9 +186,6 @@
const layouts< T > & sub_layouts() const
Get layouts for scatting and gathering of the grid data.
size_type end(size_type d) const
Determines the last index (plus one) to access the data grid along a dimension.
pointer data()
Grands access to the flattened grid data.
-
const communicator & comm_world()
Provides access to a predefined communicator that allows communication with all processes.
-
constexpr int root
Special value to indicate the root process in some intercommunicator collective operations.
Definition: mpl.hpp:26
-
cartesian_communicator::dimensions dims_create(int size, cartesian_communicator::dimensions dims)
Decomposes a given number of processes over a Cartesian grid made of the number of dimensions specifi...
diff --git a/docs/html/environment_8hpp_source.html b/docs/html/environment_8hpp_source.html index a58a5557..4653df86 100644 --- a/docs/html/environment_8hpp_source.html +++ b/docs/html/environment_8hpp_source.html @@ -95,13 +95,13 @@
7#include <vector>
8#include <mpi.h>
9
-
10namespace mpl {
+
10namespace mpl {
11
-
14 enum class threading_modes {
-
15 single = MPI_THREAD_SINGLE,
-
16 funneled = MPI_THREAD_FUNNELED,
-
17 serialized = MPI_THREAD_SERIALIZED,
-
18 multiple = MPI_THREAD_MULTIPLE
+
14 enum class threading_modes {
+
15 single = MPI_THREAD_SINGLE,
+
16 funneled = MPI_THREAD_FUNNELED,
+
17 serialized = MPI_THREAD_SERIALIZED,
+
18 multiple = MPI_THREAD_MULTIPLE
19 };
20
21 namespace environment {
@@ -119,18 +119,18 @@
33
34 ~initializer() { MPI_Finalize(); }
35
-
36 [[nodiscard]] threading_modes thread_mode() const {
+
36 [[nodiscard]] threading_modes thread_mode() const {
37 switch (thread_mode_) {
38 case MPI_THREAD_SINGLE:
- +
39 return threading_modes::single;
40 case MPI_THREAD_FUNNELED:
- +
41 return threading_modes::funneled;
42 case MPI_THREAD_SERIALIZED:
- +
43 return threading_modes::serialized;
44 case MPI_THREAD_MULTIPLE:
- +
45 return threading_modes::multiple;
46 }
-
47 return threading_modes::single; // make compiler happy
+
47 return threading_modes::single; // make compiler happy
48 }
49 };
50
@@ -154,39 +154,39 @@
68 return *static_cast<int *>(p);
69 }
70
-
71 [[nodiscard]] threading_modes threading_mode() const { return init.thread_mode(); }
+
71 [[nodiscard]] threading_modes threading_mode() const { return init.thread_mode(); }
72
-
73 [[nodiscard]] bool is_thread_main() const {
+
73 [[nodiscard]] bool is_thread_main() const {
74 int res;
75 MPI_Is_thread_main(&res);
76 return static_cast<bool>(res);
77 }
78
-
79 [[nodiscard]] bool wtime_is_global() const {
+
79 [[nodiscard]] bool wtime_is_global() const {
80 void *p;
81 int flag;
82 MPI_Comm_get_attr(MPI_COMM_WORLD, MPI_WTIME_IS_GLOBAL, &p, &flag);
83 return *static_cast<int *>(p);
84 }
85
-
86 [[nodiscard]] const communicator &comm_world() const { return comm_world_; }
+
86 [[nodiscard]] const communicator &comm_world() const { return comm_world_; }
87
-
88 [[nodiscard]] const communicator &comm_self() const { return comm_self_; }
+
88 [[nodiscard]] const communicator &comm_self() const { return comm_self_; }
89
-
90 [[nodiscard]] std::string processor_name() const {
+
90 [[nodiscard]] std::string processor_name() const {
91 char name[MPI_MAX_PROCESSOR_NAME];
92 int len;
93 MPI_Get_processor_name(name, &len);
94 return std::string(name);
95 }
96
-
97 [[nodiscard]] double wtime() const { return MPI_Wtime(); }
+
97 [[nodiscard]] double wtime() const { return MPI_Wtime(); }
98
-
99 [[nodiscard]] double wtick() const { return MPI_Wtick(); }
+
99 [[nodiscard]] double wtick() const { return MPI_Wtick(); }
100
-
101 void buffer_attach(void *buff, int size) const { MPI_Buffer_attach(buff, size); }
+
101 void buffer_attach(void *buff, int size) const { MPI_Buffer_attach(buff, size); }
102
-
103 [[nodiscard]] std::pair<void *, int> buffer_detach() const {
+
103 [[nodiscard]] std::pair<void *, int> buffer_detach() const {
104 void *buff;
105 int size;
106 MPI_Buffer_detach(&buff, &size);
@@ -205,35 +205,35 @@
119
120 //------------------------------------------------------------------
121
-
125 inline threading_modes threading_mode() { return detail::get_env().threading_mode(); }
+
125 inline threading_modes threading_mode() { return detail::get_env().threading_mode(); }
126
-
130 inline bool is_thread_main() { return detail::get_env().is_thread_main(); }
+
130 inline bool is_thread_main() { return detail::get_env().is_thread_main(); }
131
-
136 inline bool wtime_is_global() { return detail::get_env().wtime_is_global(); }
+
136 inline bool wtime_is_global() { return detail::get_env().wtime_is_global(); }
137
-
141 inline const communicator &comm_world() { return detail::get_env().comm_world(); }
+
141 inline const communicator &comm_world() { return detail::get_env().comm_world(); }
142
-
146 inline const communicator &comm_self() { return detail::get_env().comm_self(); }
+
146 inline const communicator &comm_self() { return detail::get_env().comm_self(); }
147
-
152 inline std::string processor_name() { return detail::get_env().processor_name(); }
+
152 inline std::string processor_name() { return detail::get_env().processor_name(); }
153
-
156 inline double wtime() { return detail::get_env().wtime(); }
+
156 inline double wtime() { return detail::get_env().wtime(); }
157
-
161 inline double wtick() { return detail::get_env().wtick(); }
+
161 inline double wtick() { return detail::get_env().wtick(); }
162
-
168 inline void buffer_attach(void *buff, int size) {
+
168 inline void buffer_attach(void *buff, int size) {
169 return detail::get_env().buffer_attach(buff, size);
170 }
171
-
176 inline std::pair<void *, int> buffer_detach() { return detail::get_env().buffer_detach(); }
+
176 inline std::pair<void *, int> buffer_detach() { return detail::get_env().buffer_detach(); }
177
178 } // namespace environment
179
180 //--------------------------------------------------------------------
181
-
182 tag_t tag_t::up() { return tag_t(environment::detail::get_env().tag_up()); }
+
182 tag_t tag_t::up() { return tag_t(environment::detail::get_env().tag_up()); }
183
-
184 tag_t tag_t::any() { return tag_t(MPI_ANY_TAG); }
+
184 tag_t tag_t::any() { return tag_t(MPI_ANY_TAG); }
185
186 //--------------------------------------------------------------------
187
@@ -248,11 +248,11 @@
204 bsend_buffer(bsend_buffer &&other) = delete;
205
214 explicit bsend_buffer(int size) : buff_{operator new(size)} {
-
215 environment::buffer_attach(buff_, size);
+
215 environment::buffer_attach(buff_, size);
216 }
217
- +
222 environment::buffer_detach();
223 operator delete(buff_);
224 }
225
@@ -272,27 +272,10 @@
void operator=(bsend_buffer &&other)=delete
deleted move assignment operator
bsend_buffer()=delete
deleted default constructor
bsend_buffer(bsend_buffer &&other)=delete
deleted move constructor
-
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:250
+
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:253
Class for representing tag parameters in communication operations.
Definition: tag.hpp:12
static tag_t any()
static tag_t up()
-
tag_t()=default
-
double wtime()
Get time.
-
const communicator & comm_world()
Provides access to a predefined communicator that allows communication with all processes.
-
const communicator & comm_self()
Provides access to a predefined communicator that includes only the calling process itself.
-
std::string processor_name()
Gives a unique specifier, the processor name, for the actual (physical) node.
-
bool wtime_is_global()
Determines if time values given by wtime are synchronized with each other for all processes of the co...
-
bool is_thread_main()
Determines if the current thread is the main thread, i.e., the thread that has initialized the MPI en...
-
std::pair< void *, int > buffer_detach()
Detach the buffer currently associated with MPL.
-
void buffer_attach(void *buff, int size)
Provides to MPL a buffer in the user's memory to be used for buffering outgoing messages.
-
threading_modes threading_mode()
Determines the highest level of thread support that is provided by the underlying MPI implementation.
-
double wtick()
Get resolution of time given by wtime.
- -
threading_modes
Represents the various levels of thread support that the underlying MPI implementation may provide.
Definition: environment.hpp:14
- - - - diff --git a/docs/html/error_8hpp_source.html b/docs/html/error_8hpp_source.html index 2b779088..7d56c9a4 100644 --- a/docs/html/error_8hpp_source.html +++ b/docs/html/error_8hpp_source.html @@ -92,7 +92,7 @@
4
5#include <exception>
6
-
7namespace mpl {
+
7namespace mpl {
8
10 class error : public ::std::exception {
11 protected:
@@ -106,42 +106,42 @@
21
23 class invalid_rank : public error {
24 public:
-
25 invalid_rank() : error("invalid rank") {}
+
25 invalid_rank() : error("invalid rank") {}
26 };
27
29 class invalid_tag : public error {
30 public:
-
31 invalid_tag() : error("invalid tag") {}
+
31 invalid_tag() : error("invalid tag") {}
32 };
33
35 class invalid_size : public error {
36 public:
-
37 invalid_size() : error("invalid size") {}
+
37 invalid_size() : error("invalid size") {}
38 };
39
41 class invalid_count : public error {
42 public:
-
43 invalid_count() : error("invalid count") {}
+
43 invalid_count() : error("invalid count") {}
44 };
45
47 class invalid_layout : public error {
48 public:
-
49 invalid_layout() : error("invalid layout") {}
+
49 invalid_layout() : error("invalid layout") {}
50 };
51
53 class invalid_dim : public error {
54 public:
-
55 invalid_dim() : error("invalid dimension") {}
+
55 invalid_dim() : error("invalid dimension") {}
56 };
57
60 public:
-
61 invalid_datatype_bound() : error("invalid datatype bound") {}
+
61 invalid_datatype_bound() : error("invalid datatype bound") {}
62 };
63
65 class invalid_argument : public error {
66 public:
-
67 invalid_argument() : error("invalid argument") {}
+
67 invalid_argument() : error("invalid argument") {}
68 };
69
70} // namespace mpl
@@ -151,22 +151,13 @@
error(const char *const str="unknown")
Definition: error.hpp:16
const char * what() const noexcept override
Definition: error.hpp:19
Will be thrown in case of invalid arguments.
Definition: error.hpp:65
-
Will be thrown in case of invalid count argument.
Definition: error.hpp:41
-
Will be thrown when an error occurs while manipulating layouts.
Definition: error.hpp:59
-
Will be thrown in case of invalid dimension.
Definition: error.hpp:53
-
Will be thrown in case of invalid layout argument.
Definition: error.hpp:47
-
Will be thrown in case of invalid rank argument.
Definition: error.hpp:23
-
Will be thrown in case of invalid size argument.
Definition: error.hpp:35
-
Will be thrown in case of invalid tag argument.
Definition: error.hpp:29
- - diff --git a/docs/html/flat__memory_8hpp_source.html b/docs/html/flat__memory_8hpp_source.html index 70b300e8..d0ead28a 100644 --- a/docs/html/flat__memory_8hpp_source.html +++ b/docs/html/flat__memory_8hpp_source.html @@ -98,7 +98,7 @@
10#include <type_traits>
11#include <mpl/utility.hpp>
12
-
13namespace mpl {
+
13namespace mpl {
14
15 namespace detail {
16
@@ -112,7 +112,7 @@
24 T *first;
25
26 public:
-
27 flat_memory_in(I i1, I i2) : n(std::distance(i1, i2)), first(new T[n]) {
+
27 flat_memory_in(I i1, I i2) : n(std::distance(i1, i2)), first(new T[n]) {
28 std::copy(i1, i2, first);
29 }
30
@@ -135,7 +135,7 @@
47 const T *first;
48
49 public:
-
50 flat_memory_in(const T *i1, const T *i2) : n(std::distance(i1, i2)), first(i1) {}
+
50 flat_memory_in(const T *i1, const T *i2) : n(std::distance(i1, i2)), first(i1) {}
51
52 ~flat_memory_in() = default;
53
@@ -149,7 +149,7 @@
61 // a more general implementation would be possible with
62 // contiguous_iterator_tag of C++17
63 template<typename T>
-
64 class flat_memory_in<T, typename std::vector<T>::iterator> {
+
64 class flat_memory_in<T, typename std::vector<T>::iterator> {
65 public:
66 using size_type = std::ptrdiff_t;
67
@@ -159,7 +159,7 @@
71 iterator first;
72
73 public:
-
74 flat_memory_in(iterator i1, iterator i2) : n(std::distance(i1, i2)), first(i1) {}
+
74 flat_memory_in(iterator i1, iterator i2) : n(std::distance(i1, i2)), first(i1) {}
75
76 ~flat_memory_in() = default;
77
@@ -171,7 +171,7 @@
83 };
84
85 template<typename T>
-
86 class flat_memory_in<T, typename std::vector<T>::const_iterator> {
+
86 class flat_memory_in<T, typename std::vector<T>::const_iterator> {
87 public:
88 using size_type = std::ptrdiff_t;
89
@@ -181,7 +181,7 @@
93 const_iterator first;
94
95 public:
-
96 flat_memory_in(const_iterator i1, const_iterator i2) : n(std::distance(i1, i2)), first(i1) {}
+
96 flat_memory_in(const_iterator i1, const_iterator i2) : n(std::distance(i1, i2)), first(i1) {}
97
98 ~flat_memory_in() = default;
99
@@ -256,7 +256,7 @@
168 // a more general implementation would be possible with
169 // contiguous_iterator_tag of C++17
170 template<typename T>
-
171 class flat_memory_out<T, typename std::vector<T>::iterator> {
+
171 class flat_memory_out<T, typename std::vector<T>::iterator> {
172 public:
173 using size_type = std::ptrdiff_t;
174
@@ -290,8 +290,6 @@
202} // namespace mpl
203
204#endif
- - diff --git a/docs/html/functions.html b/docs/html/functions.html index 6e161a42..c8c0b4ea 100644 --- a/docs/html/functions.html +++ b/docs/html/functions.html @@ -83,7 +83,7 @@
-
Here is a list of all class members with links to the classes they belong to:
+
Here is a list of all documented class members with links to the class documentation for each member:

- a -

  • abort() : mpl::communicator
  • diff --git a/docs/html/functions_b.html b/docs/html/functions_b.html index 8a73e870..4020330a 100644 --- a/docs/html/functions_b.html +++ b/docs/html/functions_b.html @@ -83,16 +83,14 @@
-
Here is a list of all class members with links to the classes they belong to:
+
Here is a list of all documented class members with links to the class documentation for each member:

- b -

-
Here is a list of all class members with links to the classes they belong to:
+
Here is a list of all documented class members with links to the class documentation for each member:

- c -

diff --git a/docs/html/functions_d.html b/docs/html/functions_d.html index 1961626d..de8b6eba 100644 --- a/docs/html/functions_d.html +++ b/docs/html/functions_d.html @@ -83,23 +83,19 @@
-
Here is a list of all class members with links to the classes they belong to:
+
Here is a list of all documented class members with links to the class documentation for each member:

- d -

diff --git a/docs/html/functions_e.html b/docs/html/functions_e.html index 06445286..efb9fe8b 100644 --- a/docs/html/functions_e.html +++ b/docs/html/functions_e.html @@ -83,15 +83,12 @@
-
Here is a list of all class members with links to the classes they belong to:
+
Here is a list of all documented class members with links to the class documentation for each member:

- e -

diff --git a/docs/html/functions_func_n.html b/docs/html/functions_func_n.html index 81aa706e..05afc6dd 100644 --- a/docs/html/functions_func_n.html +++ b/docs/html/functions_func_n.html @@ -90,7 +90,7 @@

- n -

  • neighbor_allgatherv() : mpl::impl::topology_communicator
  • neighbor_alltoall() : mpl::impl::topology_communicator
  • neighbor_alltoallv() : mpl::impl::topology_communicator
  • -
  • neighbors() : mpl::graph_communicator
  • +
  • neighbors() : mpl::graph_communicator
  • neighbours_set() : mpl::distributed_graph_communicator::neighbours_set
  • node_list() : mpl::graph_communicator::node_list
  • null_layout() : mpl::null_layout< T >
  • diff --git a/docs/html/functions_func_o.html b/docs/html/functions_func_o.html index 30f6ff7c..37357c29 100644 --- a/docs/html/functions_func_o.html +++ b/docs/html/functions_func_o.html @@ -89,13 +89,11 @@

    - o -

    • obegin() : mpl::distributed_grid< dim, T, A >
    • oend() : mpl::distributed_grid< dim, T, A >
    • operator int() : mpl::tag_t
    • -
    • operator!=() : mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy, mpl::communicator, mpl::group
    • -
    • operator()() : mpl::bit_and< T >, mpl::bit_or< T >, mpl::bit_xor< T >, mpl::displacements, mpl::distributed_grid< dim, T, A >, mpl::local_grid< dim, T, A >, mpl::logical_and< T >, mpl::logical_or< T >, mpl::logical_xor< T >, mpl::max< T >, mpl::min< T >, mpl::multiplies< T >, mpl::plus< T >, mpl::ranks
    • -
    • operator*() : mpl::cartesian_communicator::dimensions::const_iterator, mpl::cartesian_communicator::dimensions::iterator
    • -
    • operator++() : mpl::cartesian_communicator::dimensions::const_iterator, mpl::cartesian_communicator::dimensions::iterator
    • -
    • operator=() : mpl::base_struct_builder< T >, mpl::bsend_buffer, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy, mpl::cartesian_communicator, mpl::communicator, mpl::contiguous_layout< T >, mpl::distributed_graph_communicator, mpl::empty_layout< T >, mpl::graph_communicator, mpl::group, mpl::heterogeneous_layout, mpl::hindexed_block_layout< T >, mpl::hindexed_layout< T >, mpl::impl::request< T >, mpl::impl::request_pool< T >, mpl::impl::topology_communicator, mpl::indexed_block_layout< T >, mpl::indexed_layout< T >, mpl::irequest, mpl::irequest_pool, mpl::iterator_layout< T >, mpl::layout< T >, mpl::prequest, mpl::prequest_pool, mpl::strided_vector_layout< T >, mpl::subarray_layout< T >, mpl::vector_layout< T >
    • -
    • operator==() : mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy, mpl::communicator, mpl::group
    • -
    • operator[]() : mpl::cartesian_communicator::dimensions, mpl::cartesian_communicator::included_tags, mpl::cartesian_communicator::vector, mpl::distributed_grid< dim, T, A >::dimensions, mpl::graph_communicator::node_list, mpl::local_grid< dim, T, A >::dimensions
    • +
    • operator!=() : mpl::communicator, mpl::group
    • +
    • operator()() : mpl::bit_and< T >, mpl::bit_or< T >, mpl::bit_xor< T >, mpl::displacements, mpl::distributed_grid< dim, T, A >, mpl::local_grid< dim, T, A >, mpl::logical_and< T >, mpl::logical_or< T >, mpl::logical_xor< T >, mpl::max< T >, mpl::min< T >, mpl::multiplies< T >, mpl::plus< T >, mpl::ranks
    • +
    • operator=() : mpl::bsend_buffer, mpl::cartesian_communicator, mpl::communicator, mpl::contiguous_layout< T >, mpl::distributed_graph_communicator, mpl::empty_layout< T >, mpl::graph_communicator, mpl::group, mpl::heterogeneous_layout, mpl::hindexed_block_layout< T >, mpl::hindexed_layout< T >, mpl::impl::topology_communicator, mpl::indexed_block_layout< T >, mpl::indexed_layout< T >, mpl::iterator_layout< T >, mpl::layout< T >, mpl::strided_vector_layout< T >, mpl::subarray_layout< T >, mpl::vector_layout< T >
    • +
    • operator==() : mpl::communicator, mpl::group
    • +
    • operator[]() : mpl::cartesian_communicator::dimensions, mpl::cartesian_communicator::included_tags, mpl::cartesian_communicator::vector, mpl::distributed_grid< dim, T, A >::dimensions, mpl::graph_communicator::node_list, mpl::local_grid< dim, T, A >::dimensions
    • order() : mpl::subarray_layout< T >::parameter
    • out_degree() : mpl::distributed_graph_communicator
    • out_neighbors() : mpl::distributed_graph_communicator
    • diff --git a/docs/html/functions_func_p.html b/docs/html/functions_func_p.html index 61133568..e2c56934 100644 --- a/docs/html/functions_func_p.html +++ b/docs/html/functions_func_p.html @@ -86,12 +86,9 @@  

      - p -

      diff --git a/docs/html/functions_func_r.html b/docs/html/functions_func_r.html index ab85f5e4..3d323c44 100644 --- a/docs/html/functions_func_r.html +++ b/docs/html/functions_func_r.html @@ -90,14 +90,12 @@

      - r -

      • rank_weight_pair() : mpl::distributed_graph_communicator::rank_weight_pair
      • ranks() : mpl::ranks
      • recv() : mpl::communicator
      • -
      • recv_init() : mpl::communicator
      • -
      • reduce() : mpl::communicator
      • +
      • recv_init() : mpl::communicator
      • +
      • reduce() : mpl::communicator
      • reduce_scatter() : mpl::communicator
      • -
      • reduce_scatter_block() : mpl::communicator
      • +
      • reduce_scatter_block() : mpl::communicator
      • register_element() : mpl::struct_layout< S >
      • register_struct() : mpl::struct_layout< S >
      • -
      • request() : mpl::impl::request< T >
      • -
      • request_pool() : mpl::impl::request_pool< T >
      • resize() : mpl::layout< T >
      • right_border_layout() : mpl::distributed_grid< dim, T, A >
      • right_mirror_layout() : mpl::distributed_grid< dim, T, A >
      • diff --git a/docs/html/functions_func_s.html b/docs/html/functions_func_s.html index cee3729b..6fe15e52 100644 --- a/docs/html/functions_func_s.html +++ b/docs/html/functions_func_s.html @@ -90,23 +90,20 @@

        - s -

        diff --git a/docs/html/functions_func_t.html b/docs/html/functions_func_t.html index 3506a927..93346ef9 100644 --- a/docs/html/functions_func_t.html +++ b/docs/html/functions_func_t.html @@ -87,11 +87,7 @@

        - t -

        • tag() : mpl::status_t
        • -
        • tag_t() : mpl::tag_t
        • -
        • test() : mpl::impl::request< T >
        • -
        • testall() : mpl::impl::request_pool< T >
        • -
        • testany() : mpl::impl::request_pool< T >
        • -
        • testsome() : mpl::impl::request_pool< T >
        • +
        • tag_t() : mpl::tag_t
        • translate() : mpl::group
        • true_byte_extent() : mpl::layout< T >
        • true_byte_lower_bound() : mpl::layout< T >
        • diff --git a/docs/html/functions_func_w.html b/docs/html/functions_func_w.html index 0127ed69..ca3c2c97 100644 --- a/docs/html/functions_func_w.html +++ b/docs/html/functions_func_w.html @@ -86,10 +86,6 @@  

          - w -

          diff --git a/docs/html/functions_func_~.html b/docs/html/functions_func_~.html index 7a1c167d..f3ebf2fa 100644 --- a/docs/html/functions_func_~.html +++ b/docs/html/functions_func_~.html @@ -90,8 +90,6 @@

          - ~ -

          diff --git a/docs/html/functions_g.html b/docs/html/functions_g.html index 268cff0f..68f11d56 100644 --- a/docs/html/functions_g.html +++ b/docs/html/functions_g.html @@ -83,20 +83,18 @@
          -
          Here is a list of all class members with links to the classes they belong to:
          +
          Here is a list of all documented class members with links to the class documentation for each member:

          - g -

          diff --git a/docs/html/functions_h.html b/docs/html/functions_h.html index a01a05c2..f4c12b2d 100644 --- a/docs/html/functions_h.html +++ b/docs/html/functions_h.html @@ -83,14 +83,12 @@
          -
          Here is a list of all class members with links to the classes they belong to:
          +
          Here is a list of all documented class members with links to the class documentation for each member:

          - h -

          diff --git a/docs/html/functions_i.html b/docs/html/functions_i.html index 9ab7b1cd..9bb0128f 100644 --- a/docs/html/functions_i.html +++ b/docs/html/functions_i.html @@ -83,12 +83,12 @@
          -
          Here is a list of all class members with links to the classes they belong to:
          +
          Here is a list of all documented class members with links to the class documentation for each member:

          - i -

          diff --git a/docs/html/functions_l.html b/docs/html/functions_l.html index 8c8b218e..f5619282 100644 --- a/docs/html/functions_l.html +++ b/docs/html/functions_l.html @@ -83,14 +83,14 @@
          -
          Here is a list of all class members with links to the classes they belong to:
          +
          Here is a list of all documented class members with links to the class documentation for each member:

          - l -

          diff --git a/docs/html/functions_m.html b/docs/html/functions_m.html index d036146b..5de96ad0 100644 --- a/docs/html/functions_m.html +++ b/docs/html/functions_m.html @@ -83,7 +83,7 @@
          -
          Here is a list of all class members with links to the classes they belong to:
          +
          Here is a list of all documented class members with links to the class documentation for each member:

          - m -

          -
          Here is a list of all class members with links to the classes they belong to:
          +
          Here is a list of all documented class members with links to the class documentation for each member:

          - n -

          diff --git a/docs/html/functions_o.html b/docs/html/functions_o.html index 7c26f28a..bde3cd49 100644 --- a/docs/html/functions_o.html +++ b/docs/html/functions_o.html @@ -83,19 +83,17 @@
          -
          Here is a list of all class members with links to the classes they belong to:
          +
          Here is a list of all documented class members with links to the class documentation for each member:

          - o -

          diff --git a/docs/html/functions_r.html b/docs/html/functions_r.html index f420c8fa..0c77d65e 100644 --- a/docs/html/functions_r.html +++ b/docs/html/functions_r.html @@ -83,26 +83,20 @@
          -
          Here is a list of all class members with links to the classes they belong to:
          +
          Here is a list of all documented class members with links to the class documentation for each member:

          - r -

          -  - -

          - b -

          - - -

          - c -

          - - -

          - d -

          diff --git a/docs/html/functions_s.html b/docs/html/functions_s.html index 308c2565..21019578 100644 --- a/docs/html/functions_s.html +++ b/docs/html/functions_s.html @@ -83,37 +83,32 @@
          -
          Here is a list of all class members with links to the classes they belong to:
          +
          Here is a list of all documented class members with links to the class documentation for each member:

          - s -

          diff --git a/docs/html/functions_t.html b/docs/html/functions_t.html index 94288fd3..00e62cf2 100644 --- a/docs/html/functions_t.html +++ b/docs/html/functions_t.html @@ -83,15 +83,11 @@
          -
          Here is a list of all class members with links to the classes they belong to:
          +
          Here is a list of all documented class members with links to the class documentation for each member:

          - t -

          diff --git a/docs/html/functions_type.html b/docs/html/functions_type.html index 6d2cbf3c..df02bf9b 100644 --- a/docs/html/functions_type.html +++ b/docs/html/functions_type.html @@ -83,54 +83,15 @@
          -  - -

          - a -

          diff --git a/docs/html/functions_u.html b/docs/html/functions_u.html index d39abef8..466e913e 100644 --- a/docs/html/functions_u.html +++ b/docs/html/functions_u.html @@ -83,7 +83,7 @@
          -
          Here is a list of all class members with links to the classes they belong to:
          +
          Here is a list of all documented class members with links to the class documentation for each member:

          - u -

          • unequal : mpl::communicator, mpl::group
          • diff --git a/docs/html/functions_v.html b/docs/html/functions_v.html index dcc67086..ce0d6bf1 100644 --- a/docs/html/functions_v.html +++ b/docs/html/functions_v.html @@ -83,13 +83,12 @@
          diff --git a/docs/html/functions_vars.html b/docs/html/functions_vars.html index 75480794..bd7be322 100644 --- a/docs/html/functions_vars.html +++ b/docs/html/functions_vars.html @@ -92,9 +92,7 @@

          - c -

            - d -

            @@ -138,15 +136,9 @@

            - p -

            -

            - r -

            - -

            - s -

            • similar : mpl::communicator, mpl::group
            • size : mpl::distributed_grid< dim, T, A >::size_overlap_pair
            • -
            • source : mpl::shift_ranks
            • split : mpl::communicator
            • split_shared_memory : mpl::communicator
            • status : mpl::mprobe_status
            • @@ -157,11 +149,6 @@

              - u -

              - - -

              - w -

              diff --git a/docs/html/functions_w.html b/docs/html/functions_w.html index fd8e666d..0f7a480f 100644 --- a/docs/html/functions_w.html +++ b/docs/html/functions_w.html @@ -83,14 +83,9 @@
              -
              Here is a list of all class members with links to the classes they belong to:
              +
              Here is a list of all documented class members with links to the class documentation for each member:

              - w -

              diff --git a/docs/html/functions_~.html b/docs/html/functions_~.html index 0535dfb4..b9009106 100644 --- a/docs/html/functions_~.html +++ b/docs/html/functions_~.html @@ -83,15 +83,13 @@
              -
              Here is a list of all class members with links to the classes they belong to:
              +
              Here is a list of all documented class members with links to the class documentation for each member:

              - ~ -

              diff --git a/docs/html/gather_8cc-example.html b/docs/html/gather_8cc-example.html index 98c45dd4..bf45c8bc 100644 --- a/docs/html/gather_8cc-example.html +++ b/docs/html/gather_8cc-example.html @@ -93,16 +93,16 @@
              #include <mpl/mpl.hpp>
              int main() {
              - -
              const auto c_rank{comm_world.rank()};
              -
              const auto c_size{comm_world.size()};
              +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              +
              const auto c_rank{comm_world.rank()};
              +
              const auto c_size{comm_world.size()};
              // gather a single int from all ranks to rank root=0
              {
              -
              int root{0};
              +
              int root{0};
              int x{c_rank + 1};
              -
              std::vector<int> y(c_rank == root ? c_size : 0);
              -
              comm_world.gather(root, x, y.data());
              -
              if (c_rank == root) {
              +
              std::vector<int> y(c_rank == root ? c_size : 0);
              +
              comm_world.gather(root, x, y.data());
              +
              if (c_rank == root) {
              for (int i{0}; i < c_size; ++i)
              std::cout << y[i] << ' ';
              std::cout << "\n";
              @@ -111,25 +111,25 @@
              // gather a single int from all ranks to rank root=0
              // root and non-root rank use different function overloads of gather
              {
              -
              const int root{0};
              +
              const int root{0};
              int x{-(c_rank + 1)};
              -
              if (c_rank == root) {
              +
              if (c_rank == root) {
              std::vector<int> y(c_size);
              -
              comm_world.gather(root, x, y.data());
              +
              comm_world.gather(root, x, y.data());
              for (int i{0}; i < c_size; ++i)
              std::cout << y[i] << ' ';
              std::cout << "\n";
              } else
              - +
              comm_world.gather(root, x);
              }
              // gather several ints from all ranks to rank root=0
              {
              -
              const int root{0}, n{3};
              +
              const int root{0}, n{3};
              std::vector<int> x(n, c_rank + 1);
              -
              std::vector<int> y(c_rank == root ? n * c_size : 0);
              - -
              comm_world.gather(root, x.data(), l, y.data(), l);
              -
              if (c_rank == root) {
              +
              std::vector<int> y(c_rank == root ? n * c_size : 0);
              + +
              comm_world.gather(root, x.data(), l, y.data(), l);
              +
              if (c_rank == root) {
              for (int i{0}; i < c_size * n; ++i)
              std::cout << y[i] << ' ';
              std::cout << "\n";
              @@ -137,13 +137,11 @@
              }
              return EXIT_SUCCESS;
              }
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              -
              void gather(int root_rank, const T &senddata, T *recvdata) const
              Gather messages from all processes at a single root process.
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              +
              void gather(int root_rank, const T &senddata, T *recvdata) const
              Gather messages from all processes at a single root process.
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              Layout representing contiguous storage several objects.
              Definition: layout.hpp:458
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              -
              constexpr int root
              Special value to indicate the root process in some intercommunicator collective operations.
              Definition: mpl.hpp:26
              diff --git a/docs/html/gatherv_8cc-example.html b/docs/html/gatherv_8cc-example.html index ec86f823..8c597639 100644 --- a/docs/html/gatherv_8cc-example.html +++ b/docs/html/gatherv_8cc-example.html @@ -93,42 +93,41 @@
              #include <mpl/mpl.hpp>
              int main() {
              - -
              const auto c_rank{comm_world.rank()};
              -
              const auto c_size{comm_world.size()};
              +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              +
              const auto c_rank{comm_world.rank()};
              +
              const auto c_size{comm_world.size()};
              // fill vector with C_rank+1 elements, each having the value C_rank+1
              std::vector<int> x(c_rank + 1, c_rank + 1);
              - +
              // root rank will send and receive in gather operation
              if (c_rank == 0) {
              // messages of varying size will be received
              // need to specify appropriate memory layouts to define how many elements
              // will be received and where to store them
              - +
              for (int i{0}; i < c_size; ++i)
              // define layout for message to be received from rank i
              -
              ls.push_back(mpl::indexed_layout<int>({{
              +
              ls.push_back(mpl::indexed_layout<int>({{
              i + 1, // number of int elements
              (i * i + i) / 2 // position of the first element in receive buffer
              }}));
              std::vector<int> y((c_size * c_size + c_size) / 2); // receive buffer
              -
              comm_world.gatherv(0, x.data(), l, y.data(), ls); // receive data
              +
              comm_world.gatherv(0, x.data(), l, y.data(), ls); // receive data
              // print data
              for (const auto &f : y)
              std::cout << f << '\n';
              } else
              // non-root ranks just send
              -
              comm_world.gatherv(0, x.data(), l);
              +
              comm_world.gatherv(0, x.data(), l);
              return EXIT_SUCCESS;
              }
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
              Gather messages with a variable amount of data from all processes at a single root process.
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
              Gather messages with a variable amount of data from all processes at a single root process.
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              Layout representing contiguous storage several objects.
              Definition: layout.hpp:458
              Layout representing data in a sequence of consecutive homogenous blocks of varying lengths.
              Definition: layout.hpp:723
              -
              container for storing layouts
              Definition: layout.hpp:1661
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              +
              container for storing layouts
              Definition: layout.hpp:1664
              diff --git a/docs/html/graph__communicator_8hpp_source.html b/docs/html/graph__communicator_8hpp_source.html index 974babff..cbf7a0f2 100644 --- a/docs/html/graph__communicator_8hpp_source.html +++ b/docs/html/graph__communicator_8hpp_source.html @@ -97,7 +97,7 @@
              9#include <algorithm>
              10#include <numeric>
              11
              -
              12namespace mpl {
              +
              12namespace mpl {
              13
              16 public:
              @@ -105,11 +105,11 @@
              19 using base = std::set<std::tuple<int, int>>;
              20
              21 public:
              -
              22 using value_type = typename base::value_type;
              -
              23 using reference = typename base::reference;
              -
              24 using const_reference = typename base::const_reference;
              -
              25 using iterator = typename base::iterator;
              -
              26 using const_iterator = typename base::const_iterator;
              +
              22 using value_type = typename base::value_type;
              +
              23 using reference = typename base::reference;
              +
              24 using const_reference = typename base::const_reference;
              +
              25 using iterator = typename base::iterator;
              +
              26 using const_iterator = typename base::const_iterator;
              27
              29 edge_set() = default;
              30
              @@ -124,7 +124,7 @@
              41
              44 [[nodiscard]] int size() const { return static_cast<int>(base::size()); }
              45
              -
              48 void add(const value_type &edge) { insert(edge); }
              +
              48 void add(const value_type &edge) { insert(edge); }
              49 };
              50
              51
              @@ -133,11 +133,11 @@
              55 using base::data;
              56
              57 public:
              -
              58 using value_type = typename base::value_type;
              -
              59 using reference = typename base::reference;
              -
              60 using const_reference = typename base::const_reference;
              -
              61 using iterator = typename base::iterator;
              -
              62 using const_iterator = typename base::const_iterator;
              +
              58 using value_type = typename base::value_type;
              +
              59 using reference = typename base::reference;
              +
              60 using const_reference = typename base::const_reference;
              +
              61 using iterator = typename base::iterator;
              +
              62 using const_iterator = typename base::const_iterator;
              63
              65 node_list() = default;
              66
              @@ -153,13 +153,13 @@
              80
              83 [[nodiscard]] int size() const { return static_cast<int>(base::size()); }
              84
              -
              87 reference operator[](int index) { return base::operator[](index); }
              +
              87 reference operator[](int index) { return base::operator[](index); }
              88
              -
              91 const_reference operator[](int index) const { return base::operator[](index); }
              +
              91 const_reference operator[](int index) const { return base::operator[](index); }
              92
              95 void add(int node) { push_back(node); }
              96
              -
              97 friend class graph_communicator;
              +
              97 friend class graph_communicator;
              98 };
              99
              100
              @@ -244,43 +244,33 @@
              217 };
              218
              219
              - - -
              226 return l_1.size() == l_2.size() and std::equal(l_1.begin(), l_1.end(), l_2.begin());
              +
              224 inline bool operator==(const graph_communicator::node_list &l_1,
              +
              225 const graph_communicator::node_list &l_2) {
              +
              226 return l_1.size() == l_2.size() and std::equal(l_1.begin(), l_1.end(), l_2.begin());
              227 }
              228
              229
              - - +
              235 inline bool operator!=(const graph_communicator::node_list &l_1,
              +
              236 const graph_communicator::node_list &l_2) {
              237 return not(l_1 == l_2);
              238 }
              239
              240} // namespace mpl
              241
              242#endif
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              bool is_valid() const
              Checks if a communicator is valid, i.e., is not an empty communicator with no associated process.
              Definition: comm_group.hpp:601
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              bool is_valid() const
              Checks if a communicator is valid, i.e., is not an empty communicator with no associated process.
              Definition: comm_group.hpp:609
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              Set of edges, pairs of nodes represented by non-negative integers.
              -
              typename base::const_iterator const_iterator
              -
              edge_set()=default
              Creates an empty set of edges.
              edge_set(std::initializer_list< value_type > init)
              Creates a set of edges given by the list.
              int size() const
              Determines the number edges.
              -
              typename base::const_reference const_reference
              void add(const value_type &edge)
              Add an additional edge to the set.
              -
              typename base::value_type value_type
              -
              typename base::reference reference
              Set of nodes represented by integers.
              -
              void add(int node)
              Add an additional element to the end of the node list.
              -
              typename base::value_type value_type
              -
              typename base::const_iterator const_iterator
              reference operator[](int index)
              Access a list element.
              node_list(int nodes)
              Creates non-empty list of nodes.
              -
              node_list()=default
              Creates an empty node list.
              -
              typename base::const_reference const_reference
              const_reference operator[](int index) const
              Access a list element.
              int size() const
              Determines the number of nodes.
              node_list(std::initializer_list< int > init)
              Creates non-empty list of nodes with nodes given by the list.
              @@ -297,9 +287,6 @@
              graph_communicator()=default
              Creates an empty communicator with no associated process.
              Base class for communicators with a topology.
              Will be thrown in case of invalid arguments.
              Definition: error.hpp:65
              - -
              bool operator==(const distributed_graph_communicator::rank_weight_pair &pair_1, const distributed_graph_communicator::rank_weight_pair &pair_2)
              Checks if rank-weight pair is equal.
              -
              bool operator!=(const distributed_graph_communicator::rank_weight_pair &pair_1, const distributed_graph_communicator::rank_weight_pair &pair_2)
              Checks if rank-weight pair is not equal.
              diff --git a/docs/html/heat_equation__jacobi_method_8cc-example.html b/docs/html/heat_equation__jacobi_method_8cc-example.html index b8eee7a7..3658fcf3 100644 --- a/docs/html/heat_equation__jacobi_method_8cc-example.html +++ b/docs/html/heat_equation__jacobi_method_8cc-example.html @@ -106,16 +106,16 @@
              for (std::size_t i{0}; i < dim; ++i) {
              // send to left
              ranks = communicator.shift(i, -1);
              -
              r.push(communicator.isend(distributed_grid.data(), distributed_grid.left_border_layout(i),
              -
              ranks.destination, tag));
              -
              r.push(communicator.irecv(distributed_grid.data(), distributed_grid.right_mirror_layout(i),
              -
              ranks.source, tag));
              +
              r.push(communicator.isend(distributed_grid.data(), distributed_grid.left_border_layout(i),
              +
              ranks.destination, tag));
              +
              r.push(communicator.irecv(distributed_grid.data(), distributed_grid.right_mirror_layout(i),
              +
              ranks.source, tag));
              // send to right
              ranks = communicator.shift(i, +1);
              -
              r.push(communicator.isend(distributed_grid.data(), distributed_grid.right_border_layout(i),
              -
              ranks.destination, tag));
              -
              r.push(communicator.irecv(distributed_grid.data(), distributed_grid.left_mirror_layout(i),
              -
              ranks.source, tag));
              +
              r.push(communicator.isend(distributed_grid.data(), distributed_grid.right_border_layout(i),
              +
              ranks.destination, tag));
              +
              r.push(communicator.irecv(distributed_grid.data(), distributed_grid.left_mirror_layout(i),
              +
              ranks.source, tag));
              }
              return r;
              }
              @@ -153,11 +153,11 @@
              int main() {
              // world communicator
              - +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              // construct a two-dimensional Cartesian communicator with no periodic boundary conditions
              - + - +
              mpl::cartesian_communicator comm_c{comm_world, mpl::dims_create(comm_world.size(), size)};
              // total number of inner grid points
              const int n_x{768}, n_y{512};
              // grid points with extremal indices (-1, Nx or Ny) hold fixed boundary data
              @@ -264,12 +264,12 @@
              Communicator with Cartesian topology.
              static constexpr periodicity_tag non_periodic
              indicates that a dimension in a Cartesian process topology is non-periodic
              shift_ranks shift(int direction, int displacement) const
              Finds the ranks of processes that can be reached by shifting the Cartesian grid.
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
              Gather messages with a variable amount of data from all processes at a single root process.
              -
              irequest irecv(T &data, int source, tag_t t=tag_t(0)) const
              Receives a message with a single value via a non-blocking receive operation.
              -
              irequest isend(const T &data, int destination, tag_t t=tag_t(0)) const
              Sends a message with a single value via a non-blocking standard send operation.
              Definition: comm_group.hpp:771
              -
              void scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const
              Scatter messages with a variable amount of data from a single root process to all processes.
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
              Gather messages with a variable amount of data from all processes at a single root process.
              +
              irequest irecv(T &data, int source, tag_t t=tag_t(0)) const
              Receives a message with a single value via a non-blocking receive operation.
              +
              irequest isend(const T &data, int destination, tag_t t=tag_t(0)) const
              Sends a message with a single value via a non-blocking standard send operation.
              Definition: comm_group.hpp:779
              +
              void scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const
              Scatter messages with a variable amount of data from a single root process to all processes.
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              Local portion of a distributed data grid including local overlap data.
              const subarray_layout< T > & left_border_layout(size_type d) const
              Get the memory layout for sending data when updating data in overlap regions along a given dimension.
              const subarray_layout< T > & left_mirror_layout(size_type d) const
              Get the memory layout for receiving data when updating data in overlap regions along a given dimensio...
              @@ -277,17 +277,12 @@
              pointer data()
              Grands access to the flattened grid data.
              const subarray_layout< T > & right_border_layout(size_type d) const
              Get the memory layout for sending data when updating data in overlap regions along a given dimension.
              const subarray_layout< T > & interior_layout() const
              Get the memory layout for sending or receiving data without overlap data.
              -
              void push(T &&other)
              Definition: request.hpp:158
              Container for managing a list of non-blocking communication requests.
              Definition: request.hpp:249
              const layouts< T > & sub_layouts() const
              Get layouts for scatting and gathering of the grid data.
              pointer data()
              Grands access to the flattened grid data.
              Class for representing tag parameters in communication operations.
              Definition: tag.hpp:12
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              -
              cartesian_communicator::dimensions dims_create(int size, cartesian_communicator::dimensions dims)
              Decomposes a given number of processes over a Cartesian grid made of the number of dimensions specifi...
              Helper class to represent source and destination ranks within a Cartesian communicator.
              - - diff --git a/docs/html/heat_equation_successive_over-relaxation_8cc-example.html b/docs/html/heat_equation_successive_over-relaxation_8cc-example.html index 9b51d6f7..a38f558f 100644 --- a/docs/html/heat_equation_successive_over-relaxation_8cc-example.html +++ b/docs/html/heat_equation_successive_over-relaxation_8cc-example.html @@ -106,18 +106,18 @@
              for (std::size_t i{0}; i < dim; ++i) {
              // send to left
              ranks = communicator.shift(i, -1);
              -
              r.push(communicator.isend(distributed_grid.data(), distributed_grid.left_border_layout(i),
              -
              ranks.destination, tag));
              -
              r.push(communicator.irecv(distributed_grid.data(), distributed_grid.right_mirror_layout(i),
              -
              ranks.source, tag));
              +
              r.push(communicator.isend(distributed_grid.data(), distributed_grid.left_border_layout(i),
              +
              ranks.destination, tag));
              +
              r.push(communicator.irecv(distributed_grid.data(), distributed_grid.right_mirror_layout(i),
              +
              ranks.source, tag));
              // send to right
              ranks = communicator.shift(i, +1);
              -
              r.push(communicator.isend(distributed_grid.data(), distributed_grid.right_border_layout(i),
              -
              ranks.destination, tag));
              -
              r.push(communicator.irecv(distributed_grid.data(), distributed_grid.left_mirror_layout(i),
              -
              ranks.source, tag));
              +
              r.push(communicator.isend(distributed_grid.data(), distributed_grid.right_border_layout(i),
              +
              ranks.destination, tag));
              +
              r.push(communicator.irecv(distributed_grid.data(), distributed_grid.left_mirror_layout(i),
              +
              ranks.source, tag));
              }
              -
              r.waitall();
              +
              r.waitall();
              }
              @@ -153,11 +153,11 @@
              int main() {
              // world communicator
              - +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              // construct a two-dimensional Cartesian communicator with no periodic boundary conditions
              - + - +
              mpl::cartesian_communicator comm_c(comm_world, mpl::dims_create(comm_world.size(), size));
              // total number of inner grid points
              const int n_x{768}, n_y{512};
              // grid points with extremal indices (-1, Nx or Ny) hold fixed boundary data
              @@ -245,12 +245,12 @@
              Communicator with Cartesian topology.
              static constexpr periodicity_tag non_periodic
              indicates that a dimension in a Cartesian process topology is non-periodic
              shift_ranks shift(int direction, int displacement) const
              Finds the ranks of processes that can be reached by shifting the Cartesian grid.
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
              Gather messages with a variable amount of data from all processes at a single root process.
              -
              irequest irecv(T &data, int source, tag_t t=tag_t(0)) const
              Receives a message with a single value via a non-blocking receive operation.
              -
              irequest isend(const T &data, int destination, tag_t t=tag_t(0)) const
              Sends a message with a single value via a non-blocking standard send operation.
              Definition: comm_group.hpp:771
              -
              void scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const
              Scatter messages with a variable amount of data from a single root process to all processes.
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
              Gather messages with a variable amount of data from all processes at a single root process.
              +
              irequest irecv(T &data, int source, tag_t t=tag_t(0)) const
              Receives a message with a single value via a non-blocking receive operation.
              +
              irequest isend(const T &data, int destination, tag_t t=tag_t(0)) const
              Sends a message with a single value via a non-blocking standard send operation.
              Definition: comm_group.hpp:779
              +
              void scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const
              Scatter messages with a variable amount of data from a single root process to all processes.
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              Local portion of a distributed data grid including local overlap data.
              const subarray_layout< T > & left_border_layout(size_type d) const
              Get the memory layout for sending data when updating data in overlap regions along a given dimension.
              const subarray_layout< T > & left_mirror_layout(size_type d) const
              Get the memory layout for receiving data when updating data in overlap regions along a given dimensio...
              @@ -258,18 +258,12 @@
              pointer data()
              Grands access to the flattened grid data.
              const subarray_layout< T > & right_border_layout(size_type d) const
              Get the memory layout for sending data when updating data in overlap regions along a given dimension.
              const subarray_layout< T > & interior_layout() const
              Get the memory layout for sending or receiving data without overlap data.
              - -
              void push(T &&other)
              Definition: request.hpp:158
              Container for managing a list of non-blocking communication requests.
              Definition: request.hpp:249
              const layouts< T > & sub_layouts() const
              Get layouts for scatting and gathering of the grid data.
              pointer data()
              Grands access to the flattened grid data.
              Class for representing tag parameters in communication operations.
              Definition: tag.hpp:12
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              -
              cartesian_communicator::dimensions dims_create(int size, cartesian_communicator::dimensions dims)
              Decomposes a given number of processes over a Cartesian grid made of the number of dimensions specifi...
              Helper class to represent source and destination ranks within a Cartesian communicator.
              - - diff --git a/docs/html/hello_world_8cc-example.html b/docs/html/hello_world_8cc-example.html index 72f240ce..6c5a22fe 100644 --- a/docs/html/hello_world_8cc-example.html +++ b/docs/html/hello_world_8cc-example.html @@ -94,31 +94,29 @@
              int main() {
              // get a reference to communicator "world"
              - +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              // each process prints a message containing the processor name, the rank
              // in communicator world and the size of communicator world
              // output may depend on MPI implementation
              -
              std::cout << "Hello world! I am running on \"" << mpl::environment::processor_name()
              -
              << "\". My rank is " << comm_world.rank() << " out of " << comm_world.size()
              +
              std::cout << "Hello world! I am running on \"" << mpl::environment::processor_name()
              +
              << "\". My rank is " << comm_world.rank() << " out of " << comm_world.size()
              << " processes.\n";
              // if there are two or more processes send a message from process 0 to process 1
              -
              if (comm_world.size() >= 2) {
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.size() >= 2) {
              +
              if (comm_world.rank() == 0) {
              std::string message{"Hello world!"};
              -
              comm_world.send(message, 1); // send message to rank 1
              -
              } else if (comm_world.rank() == 1) {
              +
              comm_world.send(message, 1); // send message to rank 1
              +
              } else if (comm_world.rank() == 1) {
              std::string message;
              -
              comm_world.recv(message, 0); // receive message from rank 0
              +
              comm_world.recv(message, 0); // receive message from rank 0
              std::cout << "got: \"" << message << "\"\n";
              }
              }
              return EXIT_SUCCESS;
              }
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              -
              std::string processor_name()
              Gives a unique specifier, the processor name, for the actual (physical) node.
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              diff --git a/docs/html/hierarchy.html b/docs/html/hierarchy.html index a6507d5e..dcc15131 100644 --- a/docs/html/hierarchy.html +++ b/docs/html/hierarchy.html @@ -90,9 +90,9 @@

              Go to the graphical class hierarchy

              This inheritance list is sorted roughly, but not completely, alphabetically:
              [detail level 123]
              - - - + + + @@ -139,86 +139,83 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
               Cmpl::absolute_data< T >Helper class for heterogeneous_layout and make_absolute
               Cmpl::absolute_data< const T * >Helper class for heterogeneous_layout and make_absolute
               Cmpl::absolute_data< T * >Helper class for heterogeneous_layout and make_absolute
               Cmpl::absolute_data< T >Helper class for heterogeneous_layout, make_absolute(T *x, const layout<T> &l) and make_absolute(const T *x, const layout<T> &l)
               Cmpl::absolute_data< const T * >Helper class for heterogeneous_layout, make_absolute(T *x, const layout<T> &l) and make_absolute(const T *x, const layout<T> &l)
               Cmpl::absolute_data< T * >Helper class for heterogeneous_layout, make_absolute(T *x, const layout<T> &l) and make_absolute(const T *x, const layout<T> &l)
               Cmpl::base_struct_builder< T >Base class used to manage information about structures/classes and their public members
               Cmpl::base_struct_builder< std::array< T, N > >
               Cmpl::groupRepresents a group of processes
               Cmpl::communicator::group_collective_tagIndicates the creation of a new communicator by a call that in collective for all processes in the given group
               Cmpl::group::include_tagIndicates the creation of a subgroup by including members of an existing group
               Cstd::integral_constant
               Cmpl::group::intersection_tagIndicates the creation of an intersection of two groups
               Cmpl::impl::irequest
               Cmpl::cartesian_communicator::dimensions::iteratorIterator class for non-constant access
               Cmpl::layout< T >Base class for a family of classes that describe where objects are located in memory when several objects of the same type T are exchanged in a single message
               Cmpl::layout< void >
               Cmpl::local_grid< dim, T, A >Data grid
               Cmpl::logical_and< T >Function object for calculating the logical conjunction of two values in reduction operations as communicator::reduce
               Cmpl::logical_or< T >Function object for calculating the logical (inclusive) disjunction of two values in reduction operations as communicator::reduce
               Cmpl::logical_xor< T >Function object for calculating the logical exclusive disjunction of two values in reduction operations as communicator::reduce
               Cmpl::max< T >Function object for calculating the maximum of two values in reduction operations as communicator::reduce
               Cmpl::min< T >Function object for calculating the minimum of two values in reduction operations as communicator::reduce
               CMPI_Status
               Cmpl::mprobe_statusReturn value of matching probe operations
               Cmpl::multiplies< T >Function object for calculating the product of two values in reduction operations as communicator::reduce
               Cmpl::op_traits< F >Traits class for storing meta information about reduction operations
               Cmpl::op_traits< bit_and< T > >Specialization of traits class op_traits for storing meta information about the bit_and reduction operation
               Cmpl::op_traits< bit_or< T > >Specialization of traits class op_traits for storing meta information about the bit_or reduction operation
               Cmpl::op_traits< bit_xor< T > >Specialization of traits class op_traits for storing meta information about the bit_xor reduction operation
               Cmpl::op_traits< logical_and< T > >Specialization of traits class op_traits for storing meta information about the logical_and reduction operation
               Cmpl::op_traits< logical_or< T > >Specialization of traits class op_traits for storing meta information about the logical_or reduction operation
               Cmpl::op_traits< logical_xor< T > >Specialization of traits class op_traits for storing meta information about the logical_xor reduction operation
               Cmpl::op_traits< max< T > >Specialization of traits class op_traits for storing meta information about the max reduction operation
               Cmpl::op_traits< min< T > >Specialization of traits class op_traits for storing meta information about the min reduction operation
               Cmpl::op_traits< multiplies< T > >Specialization of traits class op_traits for storing meta information about the multiplies reduction operation
               Cmpl::op_traits< plus< T > >Specialization of traits class op_traits for storing meta information about the plus reduction operation
               Cmpl::heterogeneous_layout::parameterClass representing the parameters to characterize a heterogeneous layout
               Cmpl::hindexed_block_layout< T >::parameterClass representing the parameters to characterize a heterogeneously indexed layout
               Cmpl::hindexed_layout< T >::parameterClass representing the parameters to characterize a heterogeneously indexed layout
               Cmpl::indexed_block_layout< T >::parameterClass representing the parameters to characterize an indexed layout
               Cmpl::indexed_layout< T >::parameterClass representing the parameters to characterize an indexed layout
               Cmpl::iterator_layout< T >::parameterClass representing the parameters to characterize an iterator layout
               Cmpl::subarray_layout< T >::parameterClass representing the parameters to characterize a subarray layout
               Cmpl::plus< T >Function object for calculating the sum of two values in reduction operations as communicator::reduce
               Cmpl::impl::prequest
               Cmpl::distributed_graph_communicator::rank_weight_pairPair of rank and weight
               Cmpl::impl::request< T >
               Cmpl::impl::request< impl::irequest >
               Cmpl::impl::request< impl::prequest >
               Cmpl::impl::request_pool< T >
               Cmpl::impl::request_pool< irequest >
               Cmpl::impl::request_pool< prequest >
               Cstd::set
               Cmpl::shift_ranksHelper class to represent source and destination ranks within a Cartesian communicator
               Cmpl::distributed_grid< dim, T, A >::size_overlap_pairPair of grid size and overlap size
               Cmpl::communicator::split_shared_memory_tagIndicates the creation of a new communicator by spitting an existing communicator into disjoint subgroups each of which can create a shared memory region
               Cmpl::communicator::split_tagIndicates the creation of a new communicator by spitting an existing communicator into disjoint subgroups
               Cmpl::struct_builder< T >Template class used to manage information about structures/classes and their public members
               Cmpl::struct_layout< S >Layout class for storing meta information about the public members of structures
               Cmpl::tag_tClass for representing tag parameters in communication operations
               Cstd::tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >
               Cmpl::group::Union_tagIndicates the creation of a union of two groups
               Cstd::vector
               Cmpl::group::intersection_tagIndicates the creation of an intersection of two groups
               Cmpl::impl::irequest
               Cmpl::cartesian_communicator::dimensions::iteratorIterator class for non-constant access
               Cmpl::layout< T >Base class for a family of classes that describe where objects are located in memory when several objects of the same type T are exchanged in a single message
               Cmpl::layout< void >
               Cmpl::local_grid< dim, T, A >Data grid
               Cmpl::logical_and< T >Function object for calculating the logical conjunction of two values in reduction operations as communicator::reduce
               Cmpl::logical_or< T >Function object for calculating the logical (inclusive) disjunction of two values in reduction operations as communicator::reduce
               Cmpl::logical_xor< T >Function object for calculating the logical exclusive disjunction of two values in reduction operations as communicator::reduce
               Cmpl::max< T >Function object for calculating the maximum of two values in reduction operations as communicator::reduce
               Cmpl::min< T >Function object for calculating the minimum of two values in reduction operations as communicator::reduce
               CMPI_Status
               Cmpl::mprobe_statusReturn value of matching probe operations
               Cmpl::multiplies< T >Function object for calculating the product of two values in reduction operations as communicator::reduce
               Cmpl::op_traits< F >Traits class for storing meta information about reduction operations
               Cmpl::op_traits< bit_and< T > >Specialization of traits class op_traits for storing meta information about the bit_and reduction operation
               Cmpl::op_traits< bit_or< T > >Specialization of traits class op_traits for storing meta information about the bit_or reduction operation
               Cmpl::op_traits< bit_xor< T > >Specialization of traits class op_traits for storing meta information about the bit_xor reduction operation
               Cmpl::op_traits< logical_and< T > >Specialization of traits class op_traits for storing meta information about the logical_and reduction operation
               Cmpl::op_traits< logical_or< T > >Specialization of traits class op_traits for storing meta information about the logical_or reduction operation
               Cmpl::op_traits< logical_xor< T > >Specialization of traits class op_traits for storing meta information about the logical_xor reduction operation
               Cmpl::op_traits< max< T > >Specialization of traits class op_traits for storing meta information about the max reduction operation
               Cmpl::op_traits< min< T > >Specialization of traits class op_traits for storing meta information about the min reduction operation
               Cmpl::op_traits< multiplies< T > >Specialization of traits class op_traits for storing meta information about the multiplies reduction operation
               Cmpl::op_traits< plus< T > >Specialization of traits class op_traits for storing meta information about the plus reduction operation
               Cmpl::heterogeneous_layout::parameterClass representing the parameters to characterize a heterogeneous layout
               Cmpl::hindexed_block_layout< T >::parameterClass representing the parameters to characterize a heterogeneously indexed layout
               Cmpl::hindexed_layout< T >::parameterClass representing the parameters to characterize a heterogeneously indexed layout
               Cmpl::indexed_block_layout< T >::parameterClass representing the parameters to characterize an indexed layout
               Cmpl::indexed_layout< T >::parameterClass representing the parameters to characterize an indexed layout
               Cmpl::iterator_layout< T >::parameterClass representing the parameters to characterize an iterator layout
               Cmpl::subarray_layout< T >::parameterClass representing the parameters to characterize a subarray layout
               Cmpl::plus< T >Function object for calculating the sum of two values in reduction operations as communicator::reduce
               Cmpl::impl::prequest
               Cmpl::distributed_graph_communicator::rank_weight_pairPair of rank and weight
               Cmpl::impl::request< T >
               Cmpl::impl::request< impl::irequest >
               Cmpl::impl::request< impl::prequest >
               Cmpl::impl::request_pool< T >
               Cmpl::impl::request_pool< irequest >
               Cmpl::impl::request_pool< prequest >
               Cstd::set
               Cmpl::shift_ranksHelper class to represent source and destination ranks within a Cartesian communicator
               Cmpl::distributed_grid< dim, T, A >::size_overlap_pairPair of grid size and overlap size
               Cmpl::communicator::split_shared_memory_tagIndicates the creation of a new communicator by spitting an existing communicator into disjoint subgroups each of which can create a shared memory region
               Cmpl::communicator::split_tagIndicates the creation of a new communicator by spitting an existing communicator into disjoint subgroups
               Cmpl::struct_builder< T >Template class used to manage information about structures/classes and their public members
               Cmpl::struct_layout< S >Layout class for storing meta information about the public members of structures
               Cmpl::tag_tClass for representing tag parameters in communication operations
               Cmpl::group::Union_tagIndicates the creation of a union of two groups
               Cstd::vector
              diff --git a/docs/html/hierarchy.js b/docs/html/hierarchy.js index 1b8475bd..346a4d74 100644 --- a/docs/html/hierarchy.js +++ b/docs/html/hierarchy.js @@ -60,9 +60,6 @@ var hierarchy = [ "mpl::group", "classmpl_1_1group.html", null ], [ "mpl::communicator::group_collective_tag", "classmpl_1_1communicator_1_1group__collective__tag.html", null ], [ "mpl::group::include_tag", "classmpl_1_1group_1_1include__tag.html", null ], - [ "std::integral_constant", null, [ - [ "std::tuple_size< mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >", "structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html", null ] - ] ], [ "mpl::group::intersection_tag", "classmpl_1_1group_1_1intersection__tag.html", null ], [ "mpl::impl::irequest", "classmpl_1_1impl_1_1irequest.html", null ], [ "mpl::cartesian_communicator::dimensions::iterator", "classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html", null ], @@ -139,7 +136,6 @@ var hierarchy = [ "mpl::struct_builder< T >", "classmpl_1_1struct__builder.html", null ], [ "mpl::struct_layout< S >", "classmpl_1_1struct__layout.html", null ], [ "mpl::tag_t", "classmpl_1_1tag__t.html", null ], - [ "std::tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >", "structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html", null ], [ "mpl::group::Union_tag", "classmpl_1_1group_1_1_union__tag.html", null ], [ "std::vector", null, [ [ "mpl::cartesian_communicator::included_tags", "classmpl_1_1cartesian__communicator_1_1included__tags.html", null ], diff --git a/docs/html/inherit_graph_0.map b/docs/html/inherit_graph_0.map index e7ab4297..a554c546 100644 --- a/docs/html/inherit_graph_0.map +++ b/docs/html/inherit_graph_0.map @@ -1,3 +1,3 @@ - + diff --git a/docs/html/inherit_graph_0.md5 b/docs/html/inherit_graph_0.md5 index baa2a602..48209bfa 100644 --- a/docs/html/inherit_graph_0.md5 +++ b/docs/html/inherit_graph_0.md5 @@ -1 +1 @@ -f7524cb2ee3a7f06ed65cce290f41212 \ No newline at end of file +102f473bd4426def15850cc37f895928 \ No newline at end of file diff --git a/docs/html/inherit_graph_1.map b/docs/html/inherit_graph_1.map index 14808219..725247f6 100644 --- a/docs/html/inherit_graph_1.map +++ b/docs/html/inherit_graph_1.map @@ -1,3 +1,3 @@ - + diff --git a/docs/html/inherit_graph_1.md5 b/docs/html/inherit_graph_1.md5 index a940ef2c..bf847197 100644 --- a/docs/html/inherit_graph_1.md5 +++ b/docs/html/inherit_graph_1.md5 @@ -1 +1 @@ -a95936a838b5723312ceb12b52cfbb55 \ No newline at end of file +6b7d4257ffcf7d55155f304c6eda2ddf \ No newline at end of file diff --git a/docs/html/inherit_graph_19.md5 b/docs/html/inherit_graph_19.md5 index 32ae745a..d430b7e7 100644 --- a/docs/html/inherit_graph_19.md5 +++ b/docs/html/inherit_graph_19.md5 @@ -1 +1 @@ -c89d5255fc3b9163a0fe3205a8066268 \ No newline at end of file +efdfa7962213776875aecbb90fcf4558 \ No newline at end of file diff --git a/docs/html/inherit_graph_2.map b/docs/html/inherit_graph_2.map index 8b92896f..d5cb631b 100644 --- a/docs/html/inherit_graph_2.map +++ b/docs/html/inherit_graph_2.map @@ -1,3 +1,3 @@ - + diff --git a/docs/html/inherit_graph_2.md5 b/docs/html/inherit_graph_2.md5 index 04429673..4bf46f68 100644 --- a/docs/html/inherit_graph_2.md5 +++ b/docs/html/inherit_graph_2.md5 @@ -1 +1 @@ -7235575c14691a185055cf08a96dd7e4 \ No newline at end of file +4ed4aca82abc7591d2d899516471ad26 \ No newline at end of file diff --git a/docs/html/inherit_graph_25.md5 b/docs/html/inherit_graph_25.md5 index 430e2f2a..d8d7e855 100644 --- a/docs/html/inherit_graph_25.md5 +++ b/docs/html/inherit_graph_25.md5 @@ -1 +1 @@ -0a720d5e87d92b312a98ae14f8cb4f5c \ No newline at end of file +6646830a9463663a370a52c5ba57dc44 \ No newline at end of file diff --git a/docs/html/inherit_graph_60.map b/docs/html/inherit_graph_60.map index a6455759..4daec971 100644 --- a/docs/html/inherit_graph_60.map +++ b/docs/html/inherit_graph_60.map @@ -1,3 +1,3 @@ - + diff --git a/docs/html/inherit_graph_60.md5 b/docs/html/inherit_graph_60.md5 index 0762aa95..c50b60bc 100644 --- a/docs/html/inherit_graph_60.md5 +++ b/docs/html/inherit_graph_60.md5 @@ -1 +1 @@ -05ccb8ff82d7117e36dd7d4059456763 \ No newline at end of file +331edf52e493cd5c3a674e2392bef175 \ No newline at end of file diff --git a/docs/html/inherit_graph_75.md5 b/docs/html/inherit_graph_75.md5 index 35e579cf..a3817f09 100644 --- a/docs/html/inherit_graph_75.md5 +++ b/docs/html/inherit_graph_75.md5 @@ -1 +1 @@ -9ac93b3be20bf549cfde02d9cd05a2c7 \ No newline at end of file +b3bb6277e47aef2681c034be55cb6aaf \ No newline at end of file diff --git a/docs/html/inherit_graph_80.map b/docs/html/inherit_graph_80.map deleted file mode 100644 index 4862c78d..00000000 --- a/docs/html/inherit_graph_80.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/docs/html/inherit_graph_80.md5 b/docs/html/inherit_graph_80.md5 deleted file mode 100644 index 3996a91e..00000000 --- a/docs/html/inherit_graph_80.md5 +++ /dev/null @@ -1 +0,0 @@ -7a03d8653ab7cdcd35f3346263d41b96 \ No newline at end of file diff --git a/docs/html/inherit_graph_80.png b/docs/html/inherit_graph_80.png deleted file mode 100644 index f026c3a3..00000000 Binary files a/docs/html/inherit_graph_80.png and /dev/null differ diff --git a/docs/html/inherit_graph_81.map b/docs/html/inherit_graph_81.map deleted file mode 100644 index a4a5727b..00000000 --- a/docs/html/inherit_graph_81.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/html/inherit_graph_81.md5 b/docs/html/inherit_graph_81.md5 deleted file mode 100644 index 0d17c538..00000000 --- a/docs/html/inherit_graph_81.md5 +++ /dev/null @@ -1 +0,0 @@ -21ac49fd8cb43e1ce7d1e1ef92ce4d6f \ No newline at end of file diff --git a/docs/html/inherit_graph_81.png b/docs/html/inherit_graph_81.png deleted file mode 100644 index 5432c3cf..00000000 Binary files a/docs/html/inherit_graph_81.png and /dev/null differ diff --git a/docs/html/inherits.html b/docs/html/inherits.html index af1396f0..06c5eba1 100644 --- a/docs/html/inherits.html +++ b/docs/html/inherits.html @@ -91,17 +91,17 @@ - -
              - +
              - +
              - +
              @@ -436,7 +436,7 @@
              - +
              @@ -535,17 +535,6 @@
              - - - -
              - - - - -
              diff --git a/docs/html/iterators_8cc-example.html b/docs/html/iterators_8cc-example.html index 961bf433..8b116e16 100644 --- a/docs/html/iterators_8cc-example.html +++ b/docs/html/iterators_8cc-example.html @@ -98,20 +98,20 @@
              int main() {
              - +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              // run the program with two or more processes
              -
              if (comm_world.size() < 2)
              -
              comm_world.abort(EXIT_FAILURE);
              +
              if (comm_world.size() < 2)
              +
              comm_world.abort(EXIT_FAILURE);
              // send / receive a single vector
              {
              const int n{10};
              std::vector<double> l(n);
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              std::iota(begin(l), end(l), 1);
              -
              comm_world.send(begin(l), end(l), 1);
              +
              comm_world.send(begin(l), end(l), 1);
              }
              -
              if (comm_world.rank() == 1) {
              -
              comm_world.recv(begin(l), end(l), 0);
              +
              if (comm_world.rank() == 1) {
              +
              comm_world.recv(begin(l), end(l), 0);
              std::for_each(begin(l), end(l), [](double x) { std::cout << x << '\n'; });
              }
              }
              @@ -119,37 +119,36 @@
              {
              const int n{10};
              std::list<double> l(n);
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              std::iota(begin(l), end(l), 1);
              -
              comm_world.send(begin(l), end(l), 1);
              +
              comm_world.send(begin(l), end(l), 1);
              }
              -
              if (comm_world.rank() == 1) {
              -
              comm_world.recv(begin(l), end(l), 0);
              +
              if (comm_world.rank() == 1) {
              +
              comm_world.recv(begin(l), end(l), 0);
              std::for_each(begin(l), end(l), [](double x) { std::cout << x << '\n'; });
              }
              }
              // send a set / receive an array
              {
              const int n{10};
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              std::set<double> s;
              for (int i{1}; i <= n; ++i)
              s.insert(i);
              -
              comm_world.send(s.begin(), s.end(), 1);
              +
              comm_world.send(s.begin(), s.end(), 1);
              }
              -
              if (comm_world.rank() == 1) {
              +
              if (comm_world.rank() == 1) {
              std::array<double, n> l;
              -
              comm_world.recv(begin(l), end(l), 0);
              +
              comm_world.recv(begin(l), end(l), 0);
              std::for_each(begin(l), end(l), [](double x) { std::cout << x << '\n'; });
              }
              }
              return EXIT_SUCCESS;
              }
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              void abort(int err) const
              Aborts all processes associated to the communicator.
              Definition: comm_group.hpp:606
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              void abort(int err) const
              Aborts all processes associated to the communicator.
              Definition: comm_group.hpp:614
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              diff --git a/docs/html/layout_8hpp_source.html b/docs/html/layout_8hpp_source.html index ef0eba62..2bc9ce23 100644 --- a/docs/html/layout_8hpp_source.html +++ b/docs/html/layout_8hpp_source.html @@ -100,7 +100,7 @@
              12#include <algorithm>
              13#include <vector>
              14
              -
              15namespace mpl {
              +
              15namespace mpl {
              16
              17 template<typename T>
              18 class layout;
              @@ -144,17 +144,17 @@
              57
              58 template<typename T>
              - +
              59 absolute_data<T *> make_absolute(T *x, const layout<T> &l);
              60
              61 template<typename T>
              - +
              62 absolute_data<const T *> make_absolute(const T *x, const layout<T> &l);
              63
              64 template<typename T>
              66
              -
              67 namespace impl {
              +
              67 namespace impl {
              68
              - +
              69 class topology_communicator;
              70
              71 }
              72
              @@ -203,7 +203,7 @@
              131 return *this;
              132 }
              133
              -
              139 [[nodiscard]] ssize_t byte_extent() const {
              +
              139 [[nodiscard]] ssize_t byte_extent() const {
              140 MPI_Count lb_, extent_;
              141 MPI_Type_get_extent_x(type_, &lb_, &extent_);
              142 if (lb_ == MPI_UNDEFINED or extent_ == MPI_UNDEFINED)
              @@ -211,7 +211,7 @@
              144 return extent_;
              145 }
              146
              -
              153 [[nodiscard]] ssize_t byte_lower_bound() const {
              +
              153 [[nodiscard]] ssize_t byte_lower_bound() const {
              154 MPI_Count lb_, extent_;
              155 MPI_Type_get_extent_x(type_, &lb_, &extent_);
              156 if (lb_ == MPI_UNDEFINED or extent_ == MPI_UNDEFINED)
              @@ -219,7 +219,7 @@
              158 return lb_;
              159 }
              160
              -
              167 [[nodiscard]] ssize_t byte_upper_bound() const {
              +
              167 [[nodiscard]] ssize_t byte_upper_bound() const {
              168 MPI_Count lb_, extent_;
              169 MPI_Type_get_extent_x(type_, &lb_, &extent_);
              170 if (lb_ == MPI_UNDEFINED or extent_ == MPI_UNDEFINED)
              @@ -227,31 +227,31 @@
              172 return extent_ - lb_;
              173 }
              174
              -
              180 [[nodiscard]] ssize_t extent() const {
              +
              180 [[nodiscard]] ssize_t extent() const {
              181 static_assert(not std::is_void_v<T>, "layout type must be for non-void type");
              -
              182 const ssize_t res{byte_extent()};
              +
              182 const ssize_t res{byte_extent()};
              183 if (res / sizeof(T) * sizeof(T) != res)
              185 return res / sizeof(T);
              186 }
              187
              -
              194 [[nodiscard]] ssize_t lower_bound() const {
              +
              194 [[nodiscard]] ssize_t lower_bound() const {
              195 static_assert(not std::is_void_v<T>, "layout type must be for non-void type");
              -
              196 const ssize_t res{byte_lower_bound()};
              +
              196 const ssize_t res{byte_lower_bound()};
              197 if (res / sizeof(T) * sizeof(T) != res)
              199 return res / sizeof(T);
              200 }
              201
              -
              208 [[nodiscard]] ssize_t upper_bound() const {
              +
              208 [[nodiscard]] ssize_t upper_bound() const {
              209 static_assert(not std::is_void_v<T>, "layout type must be for non-void type");
              -
              210 const ssize_t res{byte_upper_bound()};
              +
              210 const ssize_t res{byte_upper_bound()};
              211 if (res / sizeof(T) * sizeof(T) != res)
              213 return res / sizeof(T);
              214 }
              215
              -
              221 [[nodiscard]] ssize_t true_byte_extent() const {
              +
              221 [[nodiscard]] ssize_t true_byte_extent() const {
              222 MPI_Count lb_, extent_;
              223 MPI_Type_get_true_extent_x(type_, &lb_, &extent_);
              224 if (lb_ == MPI_UNDEFINED or extent_ == MPI_UNDEFINED)
              @@ -259,7 +259,7 @@
              226 return extent_;
              227 }
              228
              -
              235 [[nodiscard]] ssize_t true_byte_lower_bound() const {
              +
              235 [[nodiscard]] ssize_t true_byte_lower_bound() const {
              236 MPI_Count lb_, extent_;
              237 MPI_Type_get_true_extent_x(type_, &lb_, &extent_);
              238 if (lb_ == MPI_UNDEFINED or extent_ == MPI_UNDEFINED)
              @@ -267,7 +267,7 @@
              240 return lb_;
              241 }
              242
              -
              249 [[nodiscard]] ssize_t true_byte_upper_bound() const {
              +
              249 [[nodiscard]] ssize_t true_byte_upper_bound() const {
              250 MPI_Count lb_, extent_;
              251 MPI_Type_get_true_extent_x(type_, &lb_, &extent_);
              252 if (lb_ == MPI_UNDEFINED or extent_ == MPI_UNDEFINED)
              @@ -275,31 +275,31 @@
              254 return extent_ - lb_;
              255 }
              256
              -
              262 [[nodiscard]] ssize_t true_extent() const {
              +
              262 [[nodiscard]] ssize_t true_extent() const {
              263 static_assert(not std::is_void_v<T>, "layout type must be for non-void type");
              -
              264 const ssize_t res{true_byte_extent()};
              +
              264 const ssize_t res{true_byte_extent()};
              265 if (res / sizeof(T) * sizeof(T) != res)
              267 return res / sizeof(T);
              268 }
              269
              -
              276 [[nodiscard]] ssize_t true_lower_bound() const {
              +
              276 [[nodiscard]] ssize_t true_lower_bound() const {
              277 static_assert(not std::is_void_v<T>, "layout type must be for non-void type");
              -
              278 const ssize_t res{true_byte_lower_bound()};
              +
              278 const ssize_t res{true_byte_lower_bound()};
              279 if (res / sizeof(T) * sizeof(T) != res)
              281 return res / sizeof(T);
              282 }
              283
              -
              290 [[nodiscard]] ssize_t true_upper_bound() const {
              +
              290 [[nodiscard]] ssize_t true_upper_bound() const {
              291 static_assert(not std::is_void_v<T>, "layout type must be for non-void type");
              -
              292 const ssize_t res{true_byte_upper_bound()};
              +
              292 const ssize_t res{true_byte_upper_bound()};
              293 if (res / sizeof(T) * sizeof(T) != res)
              295 return res / sizeof(T);
              296 }
              297
              - +
              301 void byte_resize(ssize_t lb, ssize_t extent) {
              302 if (type_ != MPI_DATATYPE_NULL) {
              303 MPI_Datatype newtype;
              304 MPI_Type_create_resized(type_, lb, extent, &newtype);
              @@ -309,15 +309,15 @@
              308 }
              309 }
              310
              - +
              314 void resize(ssize_t lb, ssize_t extent) {
              315 static_assert(not std::is_void_v<T>, "layout type must be for non-void type");
              -
              316 byte_resize(static_cast<ssize_t>(sizeof(T)) * lb,
              -
              317 static_cast<ssize_t>(sizeof(T)) * extent);
              +
              316 byte_resize(static_cast<ssize_t>(sizeof(T)) * lb,
              +
              317 static_cast<ssize_t>(sizeof(T)) * extent);
              318 }
              319
              322 void swap(layout &l) { std::swap(type_, l.type_); }
              323
              - +
              326 if (type_ != MPI_DATATYPE_NULL)
              327 MPI_Type_free(&type_);
              328 }
              @@ -346,7 +346,7 @@
              351
              352 friend class subarray_layout<T>;
              353
              - +
              354 friend class heterogeneous_layout;
              355
              356 friend absolute_data<T *> make_absolute<>(T *, const layout<T> &);
              357
              @@ -364,7 +364,7 @@
              375
              377 null_layout(const null_layout &l) noexcept : null_layout() {}
              378
              - +
              379 null_layout(null_layout &&l) noexcept : null_layout() {}
              380
              383 void swap(null_layout<T> &other) {}
              384
              @@ -489,7 +489,7 @@
              550
              -
              551 friend class communicator;
              +
              551 friend class communicator;
              552 friend class contiguous_layouts<T>;
              553 };
              554
              @@ -630,7 +630,7 @@
              760 displacements.push_back(displacement);
              761 }
              762
              -
              763 friend class indexed_layout;
              +
              763 friend class indexed_layout;
              764 };
              765
              766 private:
              @@ -704,7 +704,7 @@
              866 add(get<0>(i), get<1>(i));
              867 }
              868
              -
              872 void add(int blocklength, ssize_t displacement) {
              +
              872 void add(int blocklength, ssize_t displacement) {
              873 static_assert(
              874 std::numeric_limits<MPI_Aint>::min() <= std::numeric_limits<ssize_t>::min() and
              875 std::numeric_limits<MPI_Aint>::max() >= std::numeric_limits<ssize_t>::max(),
              @@ -713,7 +713,7 @@
              878 displacements.push_back(displacement);
              879 }
              880
              -
              881 friend class hindexed_layout;
              +
              881 friend class hindexed_layout;
              882 };
              883
              884 private:
              @@ -786,7 +786,7 @@
              983
              986 void add(int displacement) { displacements.push_back(displacement); }
              987
              - +
              988 friend class indexed_block_layout;
              989 };
              990
              991 private:
              @@ -854,11 +854,11 @@
              1086 }
              1087
              1090 parameter(std::initializer_list<ssize_t> list) {
              -
              1091 for (const ssize_t &i : list)
              +
              1091 for (const ssize_t &i : list)
              1092 add(i);
              1093 }
              1094
              -
              1097 void add(ssize_t displacement) {
              +
              1097 void add(ssize_t displacement) {
              1098 static_assert(
              1099 std::numeric_limits<MPI_Aint>::min() <= std::numeric_limits<ssize_t>::min() and
              1100 std::numeric_limits<MPI_Aint>::max() >= std::numeric_limits<ssize_t>::max(),
              @@ -866,7 +866,7 @@
              1102 displacements.push_back(displacement);
              1103 }
              1104
              - +
              1105 friend class hindexed_block_layout;
              1106 };
              1107
              1108 private:
              @@ -960,7 +960,7 @@
              1230 add(*first, *i, extent_);
              1231 }
              1232
              -
              1233 friend class iterator_layout;
              +
              1233 friend class iterator_layout;
              1234 };
              1235
              1236 private:
              @@ -976,7 +976,7 @@
              1246 MPI_Datatype new_type;
              1247#if defined MPL_DEBUG
              1248 if (par.displacements.size() > std::numeric_limits<int>::max())
              -
              1249 throw invalid_size();
              +
              1249 throw invalid_size();
              1250#endif
              1251 MPI_Type_create_hindexed(par.displacements.size(), par.blocklengths.data(),
              1252 par.displacements.data(), old_type, &new_type);
              @@ -1021,9 +1021,9 @@
              1318
              1319 //--------------------------------------------------------------------
              1320
              -
              1323 enum class array_orders {
              -
              1325 C_order = MPI_ORDER_C,
              -
              1328 Fortran_order = MPI_ORDER_FORTRAN
              +
              1323 enum class array_orders {
              +
              1325 C_order = MPI_ORDER_C,
              +
              1328 Fortran_order = MPI_ORDER_FORTRAN
              1329 };
              1330
              1334 template<typename T>
              @@ -1033,7 +1033,7 @@
              1338 public:
              1341 std::vector<int> sizes, subsizes, starts;
              - +
              1342 array_orders order_ = array_orders::C_order;
              1343
              1344 public:
              1346 parameter() = default;
              @@ -1055,11 +1055,11 @@
              1380 starts.push_back(start);
              1381 }
              1382
              -
              1385 void order(array_orders new_order) { order_ = new_order; }
              +
              1385 void order(array_orders new_order) { order_ = new_order; }
              1386
              -
              1389 [[nodiscard]] array_orders order() const { return order_; }
              +
              1389 [[nodiscard]] array_orders order() const { return order_; }
              1390
              -
              1391 friend class subarray_layout;
              +
              1391 friend class subarray_layout;
              1392 };
              1393
              1394 private:
              @@ -1115,215 +1115,215 @@
              1462
              1463 //--------------------------------------------------------------------
              1464
              -
              1467 template<typename T>
              -
              1468 class absolute_data;
              -
              1469
              -
              1472 template<typename T>
              -
              1473 class absolute_data<T *> {
              -
              1474 T *address_{nullptr};
              -
              1475 MPI_Datatype datatype_;
              -
              1476
              -
              1477 explicit absolute_data(T *address, MPI_Datatype datatype)
              -
              1478 : address_{address}, datatype_{datatype} {}
              -
              1479
              - +
              1468 template<typename T>
              +
              1469 class absolute_data;
              +
              1470
              +
              1474 template<typename T>
              +
              1475 class absolute_data<T *> {
              +
              1476 T *address_{nullptr};
              +
              1477 MPI_Datatype datatype_;
              +
              1478
              +
              1479 explicit absolute_data(T *address, MPI_Datatype datatype)
              +
              1480 : address_{address}, datatype_{datatype} {}
              1481
              -
              1482 friend absolute_data<T *> make_absolute<>(T *, const layout<T> &);
              -
              1483 };
              -
              1484
              -
              1485
              -
              1488 template<typename T>
              -
              1489 class absolute_data<const T *> {
              -
              1490 const T *address_{nullptr};
              -
              1491 MPI_Datatype datatype_;
              -
              1492
              -
              1493 explicit absolute_data(const T *address, MPI_Datatype datatype)
              -
              1494 : address_{address}, datatype_{datatype} {}
              +
              1482 friend class heterogeneous_layout;
              +
              1483
              +
              1484 friend absolute_data<T *> make_absolute<>(T *, const layout<T> &);
              +
              1485 };
              +
              1486
              +
              1487
              +
              1491 template<typename T>
              +
              1492 class absolute_data<const T *> {
              +
              1493 const T *address_{nullptr};
              +
              1494 MPI_Datatype datatype_;
              1495
              - -
              1497
              -
              1498 friend absolute_data<const T *> make_absolute<>(const T *, const layout<T> &);
              -
              1499 };
              +
              1496 explicit absolute_data(const T *address, MPI_Datatype datatype)
              +
              1497 : address_{address}, datatype_{datatype} {}
              +
              1498
              +
              1499 friend class heterogeneous_layout;
              1500
              -
              1501
              -
              1506 class heterogeneous_layout : public layout<void> {
              -
              1507 using layout<void>::type_;
              -
              1508
              -
              1509 public:
              - -
              1512 std::vector<int> block_lengths_;
              -
              1513 std::vector<MPI_Aint> displacements_;
              -
              1514 std::vector<MPI_Datatype> types_;
              -
              1515
              -
              1516 void add() const {}
              -
              1517
              -
              1518 public:
              -
              1520 parameter() = default;
              -
              1521
              -
              1525 template<typename... Ts>
              -
              1526 explicit parameter(const Ts &...xs) {
              -
              1527 add(xs...);
              -
              1528 }
              -
              1529
              -
              1535 template<typename T, typename... Ts>
              -
              1536 void add(const T &x, const Ts &...xs) {
              -
              1537 block_lengths_.push_back(1);
              -
              1538 displacements_.push_back(reinterpret_cast<MPI_Aint>(&x));
              -
              1539 types_.push_back(detail::datatype_traits<T>::get_datatype());
              -
              1540 add(xs...);
              -
              1541 }
              -
              1542
              -
              1549 template<typename T, typename... Ts>
              -
              1550 void add(const absolute_data<T *> &x, const Ts &...xs) {
              -
              1551 block_lengths_.push_back(1);
              -
              1552 displacements_.push_back(reinterpret_cast<MPI_Aint>(x.address_));
              -
              1553 types_.push_back(x.datatype_);
              -
              1554 add(xs...);
              -
              1555 }
              -
              1556
              - -
              1558 };
              +
              1501 friend absolute_data<const T *> make_absolute<>(const T *, const layout<T> &);
              +
              1502 };
              +
              1503
              +
              1504
              +
              1509 class heterogeneous_layout : public layout<void> {
              +
              1510 using layout<void>::type_;
              +
              1511
              +
              1512 public:
              + +
              1515 std::vector<int> block_lengths_;
              +
              1516 std::vector<MPI_Aint> displacements_;
              +
              1517 std::vector<MPI_Datatype> types_;
              +
              1518
              +
              1519 void add() const {}
              +
              1520
              +
              1521 public:
              +
              1523 parameter() = default;
              +
              1524
              +
              1528 template<typename... Ts>
              +
              1529 explicit parameter(const Ts &...xs) {
              +
              1530 add(xs...);
              +
              1531 }
              +
              1532
              +
              1538 template<typename T, typename... Ts>
              +
              1539 void add(const T &x, const Ts &...xs) {
              +
              1540 block_lengths_.push_back(1);
              +
              1541 displacements_.push_back(reinterpret_cast<MPI_Aint>(&x));
              +
              1542 types_.push_back(detail::datatype_traits<T>::get_datatype());
              +
              1543 add(xs...);
              +
              1544 }
              +
              1545
              +
              1552 template<typename T, typename... Ts>
              +
              1553 void add(const absolute_data<T *> &x, const Ts &...xs) {
              +
              1554 block_lengths_.push_back(1);
              +
              1555 displacements_.push_back(reinterpret_cast<MPI_Aint>(x.address_));
              +
              1556 types_.push_back(x.datatype_);
              +
              1557 add(xs...);
              +
              1558 }
              1559
              -
              1560 private:
              -
              1561 static MPI_Datatype build() {
              -
              1562 MPI_Datatype new_type{};
              -
              1563 MPI_Type_contiguous(0, detail::datatype_traits<char>::get_datatype(), &new_type);
              -
              1564 return new_type;
              -
              1565 }
              -
              1566
              -
              1567 static MPI_Datatype build(const parameter &par) {
              -
              1568 MPI_Datatype new_type{};
              -
              1569 MPI_Type_create_struct(static_cast<int>(par.block_lengths_.size()),
              -
              1570 par.block_lengths_.data(), par.displacements_.data(),
              -
              1571 par.types_.data(), &new_type);
              -
              1572 return new_type;
              -
              1573 }
              -
              1574
              -
              1575 public:
              -
              1577 heterogeneous_layout() : layout<void>(build()) {}
              -
              1578
              -
              1581 explicit heterogeneous_layout(const parameter &par) : layout<void>(build(par)) {}
              -
              1582
              -
              1588 template<typename T, typename... Ts>
              -
              1589 explicit heterogeneous_layout(const T &x, const Ts &...xs)
              -
              1590 : layout<void>(build(parameter(x, xs...))) {}
              -
              1591
              - -
              1595
              - -
              1599
              - -
              1604
              - -
              1609
              -
              1612 void swap(heterogeneous_layout &other) { std::swap(type_, other.type_); }
              -
              1613
              - - - - - - - - -
              1622 };
              -
              1623
              -
              1624
              -
              1630 template<typename T>
              - -
              1632 return absolute_data<T *>{x, l.type_};
              -
              1633 }
              -
              1634
              -
              1640 template<typename T>
              - -
              1642 return absolute_data<const T *>{x, l.type_};
              -
              1643 }
              -
              1644
              -
              1645 //--------------------------------------------------------------------
              -
              1646
              -
              1647 namespace detail {
              -
              1648
              -
              1649 template<typename T>
              -
              1650 struct datatype_traits<layout<T>> {
              -
              1651 static MPI_Datatype get_datatype(const layout<T> &l) { return l.type_; }
              -
              1652 };
              -
              1653
              -
              1654 } // namespace detail
              -
              1655
              -
              1656 //--------------------------------------------------------------------
              -
              1657
              -
              1660 template<typename T>
              -
              1661 class layouts : private std::vector<layout<T>> {
              -
              1662 using base = std::vector<layout<T>>;
              -
              1663
              -
              1664 public:
              -
              1666 using typename base::size_type;
              -
              1667
              -
              1669 layouts() : base() {}
              +
              1560 friend class heterogeneous_layout;
              +
              1561 };
              +
              1562
              +
              1563 private:
              +
              1564 static MPI_Datatype build() {
              +
              1565 MPI_Datatype new_type{};
              +
              1566 MPI_Type_contiguous(0, detail::datatype_traits<char>::get_datatype(), &new_type);
              +
              1567 return new_type;
              +
              1568 }
              +
              1569
              +
              1570 static MPI_Datatype build(const parameter &par) {
              +
              1571 MPI_Datatype new_type{};
              +
              1572 MPI_Type_create_struct(static_cast<int>(par.block_lengths_.size()),
              +
              1573 par.block_lengths_.data(), par.displacements_.data(),
              +
              1574 par.types_.data(), &new_type);
              +
              1575 return new_type;
              +
              1576 }
              +
              1577
              +
              1578 public:
              +
              1580 heterogeneous_layout() : layout<void>(build()) {}
              +
              1581
              +
              1584 explicit heterogeneous_layout(const parameter &par) : layout<void>(build(par)) {}
              +
              1585
              +
              1591 template<typename T, typename... Ts>
              +
              1592 explicit heterogeneous_layout(const T &x, const Ts &...xs)
              +
              1593 : layout<void>(build(parameter(x, xs...))) {}
              +
              1594
              + +
              1598
              + +
              1602
              + +
              1607
              + +
              1612
              +
              1615 void swap(heterogeneous_layout &other) { std::swap(type_, other.type_); }
              +
              1616
              + + + + + + + + +
              1625 };
              +
              1626
              +
              1627
              +
              1633 template<typename T>
              +
              1634 absolute_data<T *> make_absolute(T *x, const layout<T> &l) {
              +
              1635 return absolute_data<T *>{x, l.type_};
              +
              1636 }
              +
              1637
              +
              1643 template<typename T>
              +
              1644 absolute_data<const T *> make_absolute(const T *x, const layout<T> &l) {
              +
              1645 return absolute_data<const T *>{x, l.type_};
              +
              1646 }
              +
              1647
              +
              1648 //--------------------------------------------------------------------
              +
              1649
              +
              1650 namespace detail {
              +
              1651
              +
              1652 template<typename T>
              +
              1653 struct datatype_traits<layout<T>> {
              +
              1654 static MPI_Datatype get_datatype(const layout<T> &l) { return l.type_; }
              +
              1655 };
              +
              1656
              +
              1657 } // namespace detail
              +
              1658
              +
              1659 //--------------------------------------------------------------------
              +
              1660
              +
              1663 template<typename T>
              +
              1664 class layouts : private std::vector<layout<T>> {
              +
              1665 using base = std::vector<layout<T>>;
              +
              1666
              +
              1667 public:
              +
              1669 using typename base::size_type;
              1670
              -
              1673 explicit layouts(size_type n) : base(n, empty_layout<T>()) {}
              -
              1674
              -
              1678 explicit layouts(size_type n, const layout<T> &l) : base(n, l) {}
              -
              1679
              -
              1680 using base::begin;
              -
              1681 using base::end;
              -
              1682 using base::cbegin;
              -
              1683 using base::cend;
              -
              1684 using base::operator[];
              -
              1685 using base::size;
              -
              1686 using base::push_back;
              -
              1687
              -
              1688 friend class communicator;
              - +
              1672 layouts() : base() {}
              +
              1673
              +
              1676 explicit layouts(size_type n) : base(n, empty_layout<T>()) {}
              +
              1677
              +
              1681 explicit layouts(size_type n, const layout<T> &l) : base(n, l) {}
              +
              1682
              +
              1683 using base::begin;
              +
              1684 using base::end;
              +
              1685 using base::cbegin;
              +
              1686 using base::cend;
              +
              1687 using base::operator[];
              +
              1688 using base::size;
              +
              1689 using base::push_back;
              1690
              -
              1691 private:
              -
              1692 const layout<T> *operator()() const { return base::data(); }
              -
              1693 };
              -
              1694
              -
              1695 //--------------------------------------------------------------------
              -
              1696
              -
              1699 template<typename T>
              -
              1700 class contiguous_layouts : private std::vector<contiguous_layout<T>> {
              -
              1701 using base = std::vector<contiguous_layout<T>>;
              -
              1702 mutable std::vector<int> s;
              -
              1703
              -
              1704 public:
              -
              1706 using typename base::size_type;
              -
              1707
              - +
              1691 friend class communicator;
              +
              1692 friend class impl::topology_communicator;
              +
              1693
              +
              1694 private:
              +
              1695 const layout<T> *operator()() const { return base::data(); }
              +
              1696 };
              +
              1697
              +
              1698 //--------------------------------------------------------------------
              +
              1699
              +
              1702 template<typename T>
              +
              1703 class contiguous_layouts : private std::vector<contiguous_layout<T>> {
              +
              1704 using base = std::vector<contiguous_layout<T>>;
              +
              1705 mutable std::vector<int> s;
              +
              1706
              +
              1707 public:
              +
              1709 using typename base::size_type;
              1710
              -
              1713 explicit contiguous_layouts(size_type n) : base(n, contiguous_layout<T>()), s() {}
              -
              1714
              -
              1715 using base::begin;
              -
              1716 using base::end;
              -
              1717 using base::cbegin;
              -
              1718 using base::cend;
              -
              1719 using base::operator[];
              -
              1720 using base::size;
              -
              1721 using base::push_back;
              -
              1722
              -
              1723 friend class communicator;
              - + +
              1713
              +
              1716 explicit contiguous_layouts(size_type n) : base(n, contiguous_layout<T>()), s() {}
              +
              1717
              +
              1718 using base::begin;
              +
              1719 using base::end;
              +
              1720 using base::cbegin;
              +
              1721 using base::cend;
              +
              1722 using base::operator[];
              +
              1723 using base::size;
              +
              1724 using base::push_back;
              1725
              -
              1726 private:
              -
              1727 const contiguous_layout<T> *operator()() const { return base::data(); }
              +
              1726 friend class communicator;
              +
              1727 friend class impl::topology_communicator;
              1728
              -
              1729 const int *sizes() const {
              -
              1730 s.clear();
              -
              1731 s.reserve(size());
              -
              1732 std::transform(begin(), end(), std::back_inserter(s),
              -
              1733 [](const contiguous_layout<T> &l) { return l.size(); });
              -
              1734 return s.data();
              -
              1735 }
              -
              1736 };
              -
              1737
              -
              1738} // namespace mpl
              -
              1739
              -
              1740#endif
              -
              Helper class for heterogeneous_layout and make_absolute.
              Definition: layout.hpp:1473
              -
              Helper class for heterogeneous_layout and make_absolute.
              Definition: layout.hpp:1489
              -
              Helper class for heterogeneous_layout and make_absolute.
              Definition: layout.hpp:56
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              +
              1729 private:
              +
              1730 const contiguous_layout<T> *operator()() const { return base::data(); }
              +
              1731
              +
              1732 const int *sizes() const {
              +
              1733 s.clear();
              +
              1734 s.reserve(size());
              +
              1735 std::transform(begin(), end(), std::back_inserter(s),
              +
              1736 [](const contiguous_layout<T> &l) { return l.size(); });
              +
              1737 return s.data();
              +
              1738 }
              +
              1739 };
              +
              1740
              +
              1741} // namespace mpl
              +
              1742
              +
              1743#endif
              +
              Helper class for heterogeneous_layout, make_absolute(T *x, const layout<T> &l) and make_absolute(cons...
              Definition: layout.hpp:1475
              +
              Helper class for heterogeneous_layout, make_absolute(T *x, const layout<T> &l) and make_absolute(cons...
              Definition: layout.hpp:1492
              +
              Helper class for heterogeneous_layout, make_absolute(T *x, const layout<T> &l) and make_absolute(cons...
              Definition: layout.hpp:56
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              Layout representing contiguous storage several objects.
              Definition: layout.hpp:458
              void swap(contiguous_layout< T > &other)
              exchanges two contiguous layouts
              Definition: layout.hpp:539
              contiguous_layout(contiguous_layout &&l) noexcept
              move constructor
              Definition: layout.hpp:509
              @@ -1332,9 +1332,9 @@
              contiguous_layout(size_t count=0)
              constructs layout for contiguous storage several objects of type T
              Definition: layout.hpp:494
              contiguous_layout< T > & operator=(const contiguous_layout< T > &l)
              copy assignment operator
              Definition: layout.hpp:517
              contiguous_layout< T > & operator=(contiguous_layout< T > &&l) noexcept
              move assignment operator
              Definition: layout.hpp:528
              -
              container for storing contiguous layouts
              Definition: layout.hpp:1700
              -
              contiguous_layouts()
              constructs a layout container with no data
              Definition: layout.hpp:1709
              -
              contiguous_layouts(size_type n)
              constructs a layout container of empty layouts
              Definition: layout.hpp:1713
              +
              container for storing contiguous layouts
              Definition: layout.hpp:1703
              +
              contiguous_layouts()
              constructs a layout container with no data
              Definition: layout.hpp:1712
              +
              contiguous_layouts(size_type n)
              constructs a layout container of empty layouts
              Definition: layout.hpp:1716
              Indicates the beginning of data buffers in various collective communication operations.
              Layout with zero elements.
              Definition: layout.hpp:401
              void swap(empty_layout< T > &other)
              exchanges two empty layouts
              Definition: layout.hpp:434
              @@ -1343,20 +1343,20 @@
              empty_layout(empty_layout &&l) noexcept
              move constructor
              Definition: layout.hpp:420
              empty_layout(const empty_layout &l)
              copy constructor
              Definition: layout.hpp:416
              empty_layout()
              default constructor
              Definition: layout.hpp:412
              -
              Class representing the parameters to characterize a heterogeneous layout.
              Definition: layout.hpp:1511
              -
              parameter(const Ts &...xs)
              creates parameters for a heterogeneous layout
              Definition: layout.hpp:1526
              -
              void add(const T &x, const Ts &...xs)
              adds one or more values to a heterogeneous layout
              Definition: layout.hpp:1536
              +
              Class representing the parameters to characterize a heterogeneous layout.
              Definition: layout.hpp:1514
              +
              parameter(const Ts &...xs)
              creates parameters for a heterogeneous layout
              Definition: layout.hpp:1529
              +
              void add(const T &x, const Ts &...xs)
              adds one or more values to a heterogeneous layout
              Definition: layout.hpp:1539
              parameter()=default
              creates parameters for a heterogeneous layout representing an empty data set
              -
              void add(const absolute_data< T * > &x, const Ts &...xs)
              adds one or more values to a heterogeneous layout
              Definition: layout.hpp:1550
              -
              Layout representing heterogeneous data at specific memory locations.
              Definition: layout.hpp:1506
              -
              heterogeneous_layout()
              constructs a layout with no data
              Definition: layout.hpp:1577
              -
              void swap(heterogeneous_layout &other)
              exchanges two heterogeneous layouts
              Definition: layout.hpp:1612
              +
              void add(const absolute_data< T * > &x, const Ts &...xs)
              adds one or more values to a heterogeneous layout
              Definition: layout.hpp:1553
              +
              Layout representing heterogeneous data at specific memory locations.
              Definition: layout.hpp:1509
              +
              heterogeneous_layout()
              constructs a layout with no data
              Definition: layout.hpp:1580
              +
              void swap(heterogeneous_layout &other)
              exchanges two heterogeneous layouts
              Definition: layout.hpp:1615
              heterogeneous_layout(const heterogeneous_layout &l)=default
              copy constructor
              -
              heterogeneous_layout(const T &x, const Ts &...xs)
              constructs heterogeneous layout
              Definition: layout.hpp:1589
              -
              heterogeneous_layout(heterogeneous_layout &&l) noexcept
              move constructor
              Definition: layout.hpp:1598
              +
              heterogeneous_layout(const T &x, const Ts &...xs)
              constructs heterogeneous layout
              Definition: layout.hpp:1592
              +
              heterogeneous_layout(heterogeneous_layout &&l) noexcept
              move constructor
              Definition: layout.hpp:1601
              heterogeneous_layout & operator=(heterogeneous_layout &&l) noexcept=default
              move assignment operator
              heterogeneous_layout & operator=(const heterogeneous_layout &l)=default
              copy assignment operator
              -
              heterogeneous_layout(const parameter &par)
              constructs heterogeneous layout
              Definition: layout.hpp:1581
              +
              heterogeneous_layout(const parameter &par)
              constructs heterogeneous layout
              Definition: layout.hpp:1584
              Class representing the parameters to characterize a heterogeneously indexed layout.
              Definition: layout.hpp:1071
              parameter()=default
              creates an hindexed block layout parameter for an empty sequence
              void add(ssize_t displacement)
              add an additional block
              Definition: layout.hpp:1097
              @@ -1452,13 +1452,12 @@
              layout(const layout &l)
              Copy constructor creates a new layout that describes the same memory layout as the other one.
              Definition: layout.hpp:96
              layout & operator=(const layout &l)
              Copy assignment operator creates a new layout that describes the same memory layout as the other one.
              Definition: layout.hpp:109
              ssize_t true_byte_upper_bound() const
              Get the true byte upper bound of the layout.
              Definition: layout.hpp:249
              -
              container for storing layouts
              Definition: layout.hpp:1661
              -
              layouts(size_type n)
              constructs a layout container of empty layouts
              Definition: layout.hpp:1673
              -
              layouts(size_type n, const layout< T > &l)
              constructs a layout container
              Definition: layout.hpp:1678
              -
              layouts()
              constructs a layout container with no data
              Definition: layout.hpp:1669
              +
              container for storing layouts
              Definition: layout.hpp:1664
              +
              layouts(size_type n)
              constructs a layout container of empty layouts
              Definition: layout.hpp:1676
              +
              layouts(size_type n, const layout< T > &l)
              constructs a layout container
              Definition: layout.hpp:1681
              +
              layouts()
              constructs a layout container with no data
              Definition: layout.hpp:1672
              Layout with zero elements.
              Definition: layout.hpp:369
              null_layout(const null_layout &l) noexcept
              copy constructor
              Definition: layout.hpp:377
              -
              null_layout(null_layout &&l) noexcept
              Definition: layout.hpp:379
              void swap(null_layout< T > &other)
              swap two instances of null_layout
              Definition: layout.hpp:383
              null_layout() noexcept
              default constructor
              Definition: layout.hpp:374
              Layout representing uniform storage of several objects with a possibly non-unit stride between consec...
              Definition: layout.hpp:647
              @@ -1494,12 +1493,6 @@
              vector_layout< T > & operator=(vector_layout< T > &&l) noexcept=default
              move assignment operator
              vector_layout(size_t count=0)
              constructs layout for contiguous storage several objects of type T
              Definition: layout.hpp:600
              vector_layout(const vector_layout< T > &l)
              copy constructor
              Definition: layout.hpp:610
              - -
              absolute_data< T * > make_absolute(T *x, const layout< T > &l)
              helper function for heterogeneous_layout
              Definition: layout.hpp:1631
              -
              array_orders
              Represents order of elements in a multi dimensional array.
              Definition: layout.hpp:1323
              -
              @ C_order
              row-major order, also known as lexographical access order or as C order
              -
              @ Fortran_order
              column-major order, also known as colexographical access order or as Fortran order
              -
              std::ptrdiff_t ssize_t
              Definition: mpl.hpp:37
              diff --git a/docs/html/layouts_8cc-example.html b/docs/html/layouts_8cc-example.html index 780b26a7..f022d6c7 100644 --- a/docs/html/layouts_8cc-example.html +++ b/docs/html/layouts_8cc-example.html @@ -105,103 +105,103 @@
              }
              int main() {
              - +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              // run the program with two or more processes
              -
              if (comm_world.size() < 2)
              +
              if (comm_world.size() < 2)
              return EXIT_FAILURE;
              // test layout for a piece of contiguous memory
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              std::vector<int> v(20);
              std::iota(v.begin(), v.end(), 1); // fill vector with some data
              -
              mpl::contiguous_layout<int> l(10); // contiguous_layout with 10 elements
              -
              comm_world.send(v.data(), l, 1); // send data to rank 1
              +
              mpl::contiguous_layout<int> l(10); // contiguous_layout with 10 elements
              +
              comm_world.send(v.data(), l, 1); // send data to rank 1
              }
              -
              if (comm_world.rank() == 1) {
              +
              if (comm_world.rank() == 1) {
              std::vector<int> v(20, 0);
              mpl::contiguous_layout<int> l(10); // contiguous_layout with 10 elements
              -
              comm_world.recv(v.data(), l, 0); // receive data from rank 0
              +
              comm_world.recv(v.data(), l, 0); // receive data from rank 0
              print_range("v = ", v.begin(), v.end());
              }
              // test layout for a piece of contiguous memory
              // contiguous_layout and vector_layout almost equivalent
              // contiguous_layout has some additional internal bookkeeping
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              std::vector<int> v(20);
              std::iota(v.begin(), v.end(), 1); // fill vector with some data
              mpl::contiguous_layout<int> l(10); // contiguous_layout with 10 elements
              -
              comm_world.send(v.data(), l, 1); // send data to rank 1
              +
              comm_world.send(v.data(), l, 1); // send data to rank 1
              }
              -
              if (comm_world.rank() == 1) {
              +
              if (comm_world.rank() == 1) {
              std::vector<int> v(20, 0);
              -
              mpl::vector_layout<int> l(10); // vector_layout with 10 elements
              -
              comm_world.recv(v.data(), l, 0); // receive data from rank 0
              +
              mpl::vector_layout<int> l(10); // vector_layout with 10 elements
              +
              comm_world.recv(v.data(), l, 0); // receive data from rank 0
              print_range("v = ", v.begin(), v.end());
              }
              // test layout for pieces of contiguous memory (equally spaced blocks of constant size)
              // layouts on sending and receiving side may differ but must be compatible
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              std::vector<int> v(20);
              std::iota(v.begin(), v.end(), 1); // fill vector with some data
              mpl::contiguous_layout<int> l(3 * 4); // contiguous_layout with 10 elements
              -
              comm_world.send(v.data(), l, 1); // send data to rank 1
              +
              comm_world.send(v.data(), l, 1); // send data to rank 1
              }
              -
              if (comm_world.rank() == 1) {
              +
              if (comm_world.rank() == 1) {
              std::vector<int> v(20, 0);
              -
              mpl::strided_vector_layout<int> l(3, // number of blocks
              +
              mpl::strided_vector_layout<int> l(3, // number of blocks
              4, // block length
              6); // block spacing
              -
              comm_world.recv(v.data(), l, 0); // receive data from rank 0
              +
              comm_world.recv(v.data(), l, 0); // receive data from rank 0
              print_range("v = ", v.begin(), v.end());
              }
              // test layout for a sequence of blocks of memory of varying block length
              // layouts on sending and receiving side may differ but must be compatible
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              std::vector<int> v(20);
              std::iota(v.begin(), v.end(), 1); // fill vector with some data
              mpl::contiguous_layout<int> l(3 + 4 + 2); // contiguous_layout with 9 elements
              -
              comm_world.send(v.data(), l, 1); // send data to rank 1
              +
              comm_world.send(v.data(), l, 1); // send data to rank 1
              }
              -
              if (comm_world.rank() == 1) {
              +
              if (comm_world.rank() == 1) {
              std::vector<int> v(20, 0);
              - +
              {3, 1}, // 1st block of length 3 with displacement 1
              {4, 8}, // 2nd block of length 4 with displacement 8
              {2, 16} // 3rd block of length 2 with displacement 16
              });
              -
              comm_world.recv(v.data(), l, 0); // receive data from rank 0
              +
              comm_world.recv(v.data(), l, 0); // receive data from rank 0
              print_range("v = ", v.begin(), v.end());
              }
              // test layout for a sequence of blocks of memory of constant block length
              // layouts on sending and receiving side may differ but must be compatible
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              std::vector<int> v(20);
              std::iota(v.begin(), v.end(), 1); // fill vector with some data
              mpl::contiguous_layout<int> l(3 * 3); // contiguous_layout with 9 elements
              -
              comm_world.send(v.data(), l, 1); // send data to rank 1
              +
              comm_world.send(v.data(), l, 1); // send data to rank 1
              }
              -
              if (comm_world.rank() == 1) {
              +
              if (comm_world.rank() == 1) {
              std::vector<int> v(20, 0);
              -
              mpl::indexed_block_layout<int> l(3, // block length
              +
              mpl::indexed_block_layout<int> l(3, // block length
              {1, 8, 12} // block displacements
              );
              -
              comm_world.recv(v.data(), l, 0); // receive data from rank 0
              +
              comm_world.recv(v.data(), l, 0); // receive data from rank 0
              print_range("v = ", v.begin(), v.end());
              }
              // test layouts of layouts
              // layouts on sending and receiving side may differ but must be compatible
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              std::vector<int> v(3 * 3 * 4);
              std::iota(v.begin(), v.end(), 1); // fill vector with some data
              mpl::contiguous_layout<int> l(3 * 3 * 4); // contiguous_layout with 36 elements
              -
              comm_world.send(v.data(), l, 1); // send data to rank 1
              +
              comm_world.send(v.data(), l, 1); // send data to rank 1
              }
              -
              if (comm_world.rank() == 1) {
              +
              if (comm_world.rank() == 1) {
              std::vector<int> v(15 * 4, 0);
              // layout consists of 3 blocks of length 3 (3 * 3 = 9 ints in total)
              mpl::indexed_block_layout<int> l1(3, // block length
              @@ -210,65 +210,62 @@
              // the layout l1 starts with a hole, by default this hole is ignored when combining
              // several versions of l1, thus we explicitly set its lower bound to 0 and its
              // extent to 15 (= start of last block plus block length)
              -
              l1.resize(0, 15);
              +
              l1.resize(0, 15);
              // concatenate 4 indexed layouts, the resulting layout holds 3 * 3 * 4 ints
              mpl::vector_layout<int> l2(4, l1); // vector layout of l1
              -
              comm_world.recv(v.data(), l2, 0); // receive data from rank 0
              +
              comm_world.recv(v.data(), l2, 0); // receive data from rank 0
              print_range("v = ", v.begin(), v.end());
              }
              // test layout for a sequence of items
              // layouts on sending and receiving side may differ but must be compatible
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              std::vector<int> v(20);
              std::iota(v.begin(), v.end(), 1); // fill vector with some data
              mpl::contiguous_layout<int> l(20); // contiguous_layout with 9 elements
              -
              comm_world.send(v.data(), l, 1); // send data to rank 1
              +
              comm_world.send(v.data(), l, 1); // send data to rank 1
              }
              -
              if (comm_world.rank() == 1) {
              +
              if (comm_world.rank() == 1) {
              std::list<int> v(20, 0);
              -
              mpl::iterator_layout<int> l(v.begin(), v.end());
              -
              comm_world.recv(&(*v.begin()), l, 0); // receive data from rank 0
              +
              mpl::iterator_layout<int> l(v.begin(), v.end());
              +
              comm_world.recv(&(*v.begin()), l, 0); // receive data from rank 0
              print_range("v = ", v.begin(), v.end());
              }
              // test layout for a sequence of items of different types
              // layouts on sending and receiving side may differ but must be compatible
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              double y{1};
              std::pair<int, double> pair{2, 3.4};
              const std::vector<double> v{1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
              - -
              y, pair, mpl::make_absolute(v.data(), lv)); // heterogeneous_layout with 3 elements
              -
              comm_world.send(mpl::absolute, l, 1); // send data to rank 1
              + +
              y, pair, mpl::make_absolute(v.data(), lv)); // heterogeneous_layout with 3 elements
              +
              comm_world.send(mpl::absolute, l, 1); // send data to rank 1
              }
              -
              if (comm_world.rank() == 1) {
              +
              if (comm_world.rank() == 1) {
              double y{0};
              std::pair<int, double> pair;
              std::vector<double> v(10);
              -
              y, pair, mpl::make_absolute(v.data(), lv)); // heterogeneous_layout with 3 elements
              -
              comm_world.recv(mpl::absolute, l, 0); // receive data from rank 0
              +
              y, pair, mpl::make_absolute(v.data(), lv)); // heterogeneous_layout with 3 elements
              +
              comm_world.recv(mpl::absolute, l, 0); // receive data from rank 0
              std::cout << "y = " << y << " pair = " << pair.first << ", " << pair.second << " ";
              print_range("v = ", v.begin(), v.end());
              }
              return EXIT_SUCCESS;
              }
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              Layout representing contiguous storage several objects.
              Definition: layout.hpp:458
              -
              Layout representing heterogeneous data at specific memory locations.
              Definition: layout.hpp:1506
              +
              Layout representing heterogeneous data at specific memory locations.
              Definition: layout.hpp:1509
              Layout representing data in a sequence of consecutive homogenous blocks of uniform lengths.
              Definition: layout.hpp:955
              Layout representing data in a sequence of consecutive homogenous blocks of varying lengths.
              Definition: layout.hpp:723
              Layout representing data at non-consecutive memory locations, which can be addressed via an iterator.
              Definition: layout.hpp:1184
              void resize(ssize_t lb, ssize_t extent)
              Resize the layout.
              Definition: layout.hpp:314
              Layout representing uniform storage of several objects with a possibly non-unit stride between consec...
              Definition: layout.hpp:647
              Layout representing contiguous storage several objects.
              Definition: layout.hpp:568
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              -
              absolute_data< T * > make_absolute(T *x, const layout< T > &l)
              helper function for heterogeneous_layout
              Definition: layout.hpp:1631
              -
              constexpr void * absolute
              Special constant to indicate the start of the address range of message buffers.
              Definition: mpl.hpp:29
              diff --git a/docs/html/matrix_gather_8cc-example.html b/docs/html/matrix_gather_8cc-example.html index 28b23492..f2e59588 100644 --- a/docs/html/matrix_gather_8cc-example.html +++ b/docs/html/matrix_gather_8cc-example.html @@ -124,9 +124,9 @@
              int main() {
              - -
              const int p{comm_world.size()}; // total numbers of processors
              -
              const int p_l{comm_world.rank()};
              +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              +
              const int p{comm_world.size()}; // total numbers of processors
              +
              const int p_l{comm_world.rank()};
              // find integer px and py such that px*py=p and px and py as close as possible
              int px{static_cast<int>(std::sqrt(static_cast<double>(p)))};
              while (p / px * px != p)
              @@ -144,7 +144,7 @@
              ny_l(ix, iy) = ny * (iy + 1) / py - ny * iy / py;
              nx_0(ix, iy) = nx * ix / px;
              ny_0(ix, iy) = ny * iy / py;
              -
              sub_matrix_l(ix, iy) = mpl::subarray_layout<int>(
              +
              sub_matrix_l(ix, iy) = mpl::subarray_layout<int>(
              {{ny, ny_l(ix, iy), ny_0(ix, iy)}, {nx, nx_l(ix, iy), nx_0(ix, iy)}});
              }
              }
              @@ -156,16 +156,16 @@
              // fill some local matrix with data
              matrix<int> m_l(nx_l(px_l, py_l), ny_l(px_l, py_l));
              std::fill(m_l.begin(), m_l.end(), p_l);
              -
              mpl::contiguous_layout<int> matrix_l(nx_l(px_l, py_l) * ny_l(px_l, py_l));
              +
              mpl::contiguous_layout<int> matrix_l(nx_l(px_l, py_l) * ny_l(px_l, py_l));
              // send local sub-matrix to rank 0
              -
              mpl::irequest r(comm_world.isend(m_l.data(), matrix_l, 0));
              +
              mpl::irequest r(comm_world.isend(m_l.data(), matrix_l, 0));
              if (p_l == 0) {
              // gather all submatrices into one large matrix
              matrix<int> m(nx, ny);
              std::fill(m.begin(), m.end(), 0 - ' ');
              for (int iy{0}; iy < py; ++iy) {
              for (int ix{0}; ix < px; ++ix)
              -
              comm_world.recv(m.data(), sub_matrix_l(ix, iy), ix + px * iy);
              +
              comm_world.recv(m.data(), sub_matrix_l(ix, iy), ix + px * iy);
              }
              for (int iy{0}; iy < ny; ++iy) {
              for (int ix{0}; ix < nx; ++ix)
              @@ -183,14 +183,14 @@
              matrix<int> m_l(nx_l(px_l, py_l), ny_l(px_l, py_l));
              std::fill(m_l.begin(), m_l.end(), p_l);
              // build the layouts for the gatherv operation
              -
              const int root{0};
              +
              const int root{0};
              mpl::contiguous_layout<int> matrix_l(nx_l(px_l, py_l) * ny_l(px_l, py_l));
              if (p_l == root) {
              - +
              for (int i{0}; i < p; ++i)
              recvl.push_back(sub_matrix_l(i % px, i / px));
              matrix<int> m(nx, ny);
              -
              comm_world.gatherv(root, m_l.data(), matrix_l, m.data(), recvl);
              +
              comm_world.gatherv(root, m_l.data(), matrix_l, m.data(), recvl);
              for (int iy{0}; iy < ny; ++iy) {
              for (int ix{0}; ix < nx; ++ix)
              std::cout << static_cast<unsigned char>(m(ix, iy) + 'A');
              @@ -198,7 +198,7 @@
              }
              std::cout << '\n';
              } else
              -
              comm_world.gatherv(root, m_l.data(), matrix_l);
              +
              comm_world.gatherv(root, m_l.data(), matrix_l);
              }
              // gather via alltoallv
              @@ -207,19 +207,19 @@
              matrix<int> m_l(nx_l(px_l, py_l), ny_l(px_l, py_l));
              std::fill(m_l.begin(), m_l.end(), p_l);
              // build the layouts for alltoallv to implement a gather operation
              -
              const int root{0};
              +
              const int root{0};
              mpl::layouts<int> sendl, recvl;
              for (int i{0}; i < p; ++i) {
              if (i == root)
              sendl.push_back(mpl::contiguous_layout<int>(nx_l(px_l, py_l) * ny_l(px_l, py_l)));
              else
              -
              sendl.push_back(mpl::empty_layout<int>());
              +
              sendl.push_back(mpl::empty_layout<int>());
              }
              if (p_l == root) {
              for (int i{0}; i < p; ++i)
              recvl.push_back(sub_matrix_l(i % px, i / px));
              matrix<int> m(nx, ny);
              -
              comm_world.alltoallv(m_l.data(), sendl, m.data(), recvl);
              +
              comm_world.alltoallv(m_l.data(), sendl, m.data(), recvl);
              for (int iy{0}; iy < ny; ++iy) {
              for (int ix{0}; ix < nx; ++ix)
              std::cout << static_cast<unsigned char>(m(ix, iy) + 'A');
              @@ -229,24 +229,22 @@
              } else {
              for (int i{0}; i < p; ++i)
              recvl.push_back(mpl::empty_layout<int>());
              -
              comm_world.alltoallv(m_l.data(), sendl, reinterpret_cast<int *>(0), recvl);
              +
              comm_world.alltoallv(m_l.data(), sendl, reinterpret_cast<int *>(0), recvl);
              }
              }
              return EXIT_SUCCESS;
              }
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              void alltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
              Sends messages with a variable amount of data to all processes and receives messages with a variable ...
              -
              void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
              Gather messages with a variable amount of data from all processes at a single root process.
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              void alltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
              Sends messages with a variable amount of data to all processes and receives messages with a variable ...
              +
              void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
              Gather messages with a variable amount of data from all processes at a single root process.
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              Layout representing contiguous storage several objects.
              Definition: layout.hpp:458
              Layout with zero elements.
              Definition: layout.hpp:401
              Represents a non-blocking communication request.
              Definition: request.hpp:224
              -
              container for storing layouts
              Definition: layout.hpp:1661
              +
              container for storing layouts
              Definition: layout.hpp:1664
              Layout representing data of a subset multi dimensional array.
              Definition: layout.hpp:1335
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              -
              constexpr int root
              Special value to indicate the root process in some intercommunicator collective operations.
              Definition: mpl.hpp:26
              diff --git a/docs/html/menudata.js b/docs/html/menudata.js index 507dd564..2cc3a749 100644 --- a/docs/html/menudata.js +++ b/docs/html/menudata.js @@ -25,27 +25,6 @@ var menudata={children:[ {text:"Main Page",url:"index.html"}, {text:"Related Pages",url:"pages.html"}, -{text:"Namespaces",url:"namespaces.html",children:[ -{text:"Namespace List",url:"namespaces.html"}, -{text:"Namespace Members",url:"namespacemembers.html",children:[ -{text:"All",url:"namespacemembers.html",children:[ -{text:"a",url:"namespacemembers.html#index_a"}, -{text:"b",url:"namespacemembers.html#index_b"}, -{text:"c",url:"namespacemembers.html#index_c"}, -{text:"d",url:"namespacemembers.html#index_d"}, -{text:"i",url:"namespacemembers.html#index_i"}, -{text:"m",url:"namespacemembers.html#index_m"}, -{text:"o",url:"namespacemembers.html#index_o"}, -{text:"p",url:"namespacemembers.html#index_p"}, -{text:"r",url:"namespacemembers.html#index_r"}, -{text:"s",url:"namespacemembers.html#index_s"}, -{text:"t",url:"namespacemembers.html#index_t"}, -{text:"u",url:"namespacemembers.html#index_u"}, -{text:"w",url:"namespacemembers.html#index_w"}]}, -{text:"Functions",url:"namespacemembers_func.html"}, -{text:"Variables",url:"namespacemembers_vars.html"}, -{text:"Typedefs",url:"namespacemembers_type.html"}, -{text:"Enumerations",url:"namespacemembers_enum.html"}]}]}, {text:"Classes",url:"annotated.html",children:[ {text:"Class List",url:"annotated.html"}, {text:"Class Index",url:"classes.html"}, @@ -103,34 +82,9 @@ var menudata={children:[ {text:"n",url:"functions_vars.html#index_n"}, {text:"o",url:"functions_vars.html#index_o"}, {text:"p",url:"functions_vars.html#index_p"}, -{text:"r",url:"functions_vars.html#index_r"}, {text:"s",url:"functions_vars.html#index_s"}, -{text:"u",url:"functions_vars.html#index_u"}, -{text:"w",url:"functions_vars.html#index_w"}]}, -{text:"Typedefs",url:"functions_type.html",children:[ -{text:"a",url:"functions_type.html#index_a"}, -{text:"c",url:"functions_type.html#index_c"}, -{text:"d",url:"functions_type.html#index_d"}, -{text:"i",url:"functions_type.html#index_i"}, -{text:"p",url:"functions_type.html#index_p"}, -{text:"r",url:"functions_type.html#index_r"}, -{text:"s",url:"functions_type.html#index_s"}, -{text:"t",url:"functions_type.html#index_t"}, -{text:"v",url:"functions_type.html#index_v"}]}, +{text:"u",url:"functions_vars.html#index_u"}]}, +{text:"Typedefs",url:"functions_type.html"}, {text:"Enumerations",url:"functions_enum.html"}, -{text:"Related Functions",url:"functions_rela.html",children:[ -{text:"b",url:"functions_rela.html#index_b"}, -{text:"c",url:"functions_rela.html#index_c"}, -{text:"d",url:"functions_rela.html#index_d"}, -{text:"e",url:"functions_rela.html#index_e"}, -{text:"g",url:"functions_rela.html#index_g"}, -{text:"h",url:"functions_rela.html#index_h"}, -{text:"i",url:"functions_rela.html#index_i"}, -{text:"l",url:"functions_rela.html#index_l"}, -{text:"m",url:"functions_rela.html#index_m"}, -{text:"n",url:"functions_rela.html#index_n"}, -{text:"o",url:"functions_rela.html#index_o"}, -{text:"r",url:"functions_rela.html#index_r"}, -{text:"s",url:"functions_rela.html#index_s"}, -{text:"v",url:"functions_rela.html#index_v"}]}]}]}, +{text:"Related Functions",url:"functions_rela.html"}]}]}, {text:"Examples",url:"examples.html"}]} diff --git a/docs/html/message_8hpp_source.html b/docs/html/message_8hpp_source.html index 4b2fdc66..54564f49 100644 --- a/docs/html/message_8hpp_source.html +++ b/docs/html/message_8hpp_source.html @@ -92,15 +92,13 @@
              4
              5#include <mpi.h>
              6
              -
              7namespace mpl {
              +
              7namespace mpl {
              8
              -
              9 using message_t = MPI_Message;
              +
              9 using message_t = MPI_Message;
              10
              11}
              12
              13#endif
              - -
              MPI_Message message_t
              Definition: message.hpp:9
              diff --git a/docs/html/mpl_8hpp_source.html b/docs/html/mpl_8hpp_source.html index 70ddff0b..989a7614 100644 --- a/docs/html/mpl_8hpp_source.html +++ b/docs/html/mpl_8hpp_source.html @@ -93,53 +93,45 @@
              5#include <mpi.h>
              6#include <cstddef>
              7
              -
              8namespace mpl {
              +
              8namespace mpl {
              9
              -
              13 constexpr int any_source = MPI_ANY_SOURCE;
              +
              13 constexpr int any_source = MPI_ANY_SOURCE;
              14
              -
              18 constexpr int proc_null = MPI_PROC_NULL;
              +
              18 constexpr int proc_null = MPI_PROC_NULL;
              19
              -
              22 constexpr int undefined = MPI_UNDEFINED;
              +
              22 constexpr int undefined = MPI_UNDEFINED;
              23
              -
              26 constexpr int root = MPI_ROOT;
              +
              26 constexpr int root = MPI_ROOT;
              27
              -
              29 constexpr void *absolute = MPI_BOTTOM;
              -
              30
              -
              34 constexpr int bsend_overhead = MPI_BSEND_OVERHEAD;
              -
              35
              -
              36 using size_t = std::size_t;
              -
              37 using ssize_t = std::ptrdiff_t;
              -
              38
              -
              39} // namespace mpl
              +
              30 constexpr void *absolute = MPI_BOTTOM;
              +
              31
              +
              36 constexpr int bsend_overhead = MPI_BSEND_OVERHEAD;
              +
              37
              +
              38 using size_t = std::size_t;
              +
              39 using ssize_t = std::ptrdiff_t;
              40
              -
              41#include <mpl/error.hpp>
              -
              42#include <mpl/displacements.hpp>
              -
              43#include <mpl/tag.hpp>
              -
              44#include <mpl/ranks.hpp>
              -
              45#include <mpl/flat_memory.hpp>
              -
              46#include <mpl/datatype.hpp>
              -
              47#include <mpl/layout.hpp>
              -
              48#include <mpl/status.hpp>
              -
              49#include <mpl/message.hpp>
              -
              50#include <mpl/operator.hpp>
              -
              51#include <mpl/request.hpp>
              -
              52#include <mpl/comm_group.hpp>
              -
              53#include <mpl/environment.hpp>
              -
              54#include <mpl/topology_communicator.hpp>
              -
              55#include <mpl/cartesian_communicator.hpp>
              -
              56#include <mpl/graph_communicator.hpp>
              -
              57#include <mpl/distributed_graph_communicator.hpp>
              -
              58#include <mpl/distributed_grid.hpp>
              -
              59
              -
              60#endif
              - -
              constexpr int any_source
              Wildcard value to indicate in a receive operation, e.g., communicator::recv, that any source is accep...
              Definition: mpl.hpp:13
              -
              constexpr int bsend_overhead
              Special constant representing an upper bound on the additional space consumed when buffering messages...
              Definition: mpl.hpp:34
              -
              constexpr int proc_null
              Special value that can be used instead of a rank wherever a source or a destination argument is requi...
              Definition: mpl.hpp:18
              -
              constexpr int undefined
              Special value that is used to indicate an invalid return value or function parameter in some function...
              Definition: mpl.hpp:22
              -
              constexpr int root
              Special value to indicate the root process in some intercommunicator collective operations.
              Definition: mpl.hpp:26
              -
              std::ptrdiff_t ssize_t
              Definition: mpl.hpp:37
              -
              constexpr void * absolute
              Special constant to indicate the start of the address range of message buffers.
              Definition: mpl.hpp:29
              +
              41} // namespace mpl
              +
              42
              +
              43#include <mpl/error.hpp>
              +
              44#include <mpl/displacements.hpp>
              +
              45#include <mpl/tag.hpp>
              +
              46#include <mpl/ranks.hpp>
              +
              47#include <mpl/flat_memory.hpp>
              +
              48#include <mpl/datatype.hpp>
              +
              49#include <mpl/layout.hpp>
              +
              50#include <mpl/status.hpp>
              +
              51#include <mpl/message.hpp>
              +
              52#include <mpl/operator.hpp>
              +
              53#include <mpl/request.hpp>
              +
              54#include <mpl/comm_group.hpp>
              +
              55#include <mpl/environment.hpp>
              +
              56#include <mpl/topology_communicator.hpp>
              +
              57#include <mpl/cartesian_communicator.hpp>
              +
              58#include <mpl/graph_communicator.hpp>
              +
              59#include <mpl/distributed_graph_communicator.hpp>
              +
              60#include <mpl/distributed_grid.hpp>
              +
              61
              +
              62#endif
              diff --git a/docs/html/namespacemembers.html b/docs/html/namespacemembers.html deleted file mode 100644 index cca80d34..00000000 --- a/docs/html/namespacemembers.html +++ /dev/null @@ -1,174 +0,0 @@ - - - - - - - -Message Passing Library: Namespace Members - - - - - - - - - - - - - - -
              -
              - - - - - - -
              -
              Message Passing Library -
              -
              -
              - - - - - - - -
              -
              - -
              -
              -
              - -
              - -
              -
              - - -
              - -
              - -
              -
              Here is a list of all namespace members with links to the namespace documentation for each member:
              - -

              - a -

                -
              • absolute : mpl
              • -
              • any_source : mpl
              • -
              • array_orders : mpl
              • -
              - - -

              - b -

              - - -

              - c -

              - - -

              - d -

                -
              • dims_create() : mpl
              • -
              - - -

              - i -

              - - -

              - m -

                -
              • make_absolute() : mpl
              • -
              • message_t : mpl
              • -
              - - -

              - o -

                -
              • operator!=() : mpl
              • -
              • operator<<() : mpl
              • -
              • operator==() : mpl
              • -
              • operator>>() : mpl
              • -
              - - -

              - p -

              - - -

              - r -

                -
              • root : mpl
              • -
              - - -

              - s -

                -
              • size_t : mpl
              • -
              • ssize_t : mpl
              • -
              - - -

              - t -

              - - -

              - u -

                -
              • undefined : mpl
              • -
              - - -

              - w -

              -
              -
              - - - - diff --git a/docs/html/namespacemembers_enum.html b/docs/html/namespacemembers_enum.html deleted file mode 100644 index 0ae5a7a1..00000000 --- a/docs/html/namespacemembers_enum.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - - -Message Passing Library: Namespace Members - - - - - - - - - - - - - - -
              -
              - - - - - - -
              -
              Message Passing Library -
              -
              -
              - - - - - - - -
              -
              - -
              -
              -
              - -
              - -
              -
              - - -
              - -
              - -
                -
              • array_orders : mpl
              • -
              • threading_modes : mpl
              • -
              -
              -
              - - - - diff --git a/docs/html/namespacemembers_func.html b/docs/html/namespacemembers_func.html deleted file mode 100644 index 39da886f..00000000 --- a/docs/html/namespacemembers_func.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - - -Message Passing Library: Namespace Members - - - - - - - - - - - - - - -
              -
              - - - - - - -
              -
              Message Passing Library -
              -
              -
              - - - - - - - -
              -
              - -
              -
              -
              - -
              - -
              -
              - - -
              - -
              - -
              -
              -
              - - - - diff --git a/docs/html/namespacemembers_type.html b/docs/html/namespacemembers_type.html deleted file mode 100644 index 292e9ab6..00000000 --- a/docs/html/namespacemembers_type.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - - -Message Passing Library: Namespace Members - - - - - - - - - - - - - - -
              -
              - - - - - - -
              -
              Message Passing Library -
              -
              -
              - - - - - - - -
              -
              - -
              -
              -
              - -
              - -
              -
              - - -
              - -
              - -
                -
              • message_t : mpl
              • -
              • size_t : mpl
              • -
              • ssize_t : mpl
              • -
              -
              -
              - - - - diff --git a/docs/html/namespacemembers_vars.html b/docs/html/namespacemembers_vars.html deleted file mode 100644 index 6c8877b6..00000000 --- a/docs/html/namespacemembers_vars.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - - -Message Passing Library: Namespace Members - - - - - - - - - - - - - - -
              -
              - - - - - - -
              -
              Message Passing Library -
              -
              -
              - - - - - - - -
              -
              - -
              -
              -
              - -
              - -
              -
              - - -
              - -
              - -
                -
              • absolute : mpl
              • -
              • any_source : mpl
              • -
              • bsend_overhead : mpl
              • -
              • proc_null : mpl
              • -
              • root : mpl
              • -
              • undefined : mpl
              • -
              -
              -
              - - - - diff --git a/docs/html/namespacempl.html b/docs/html/namespacempl.html deleted file mode 100644 index 95a61ac1..00000000 --- a/docs/html/namespacempl.html +++ /dev/null @@ -1,1222 +0,0 @@ - - - - - - - -Message Passing Library: mpl Namespace Reference - - - - - - - - - - - - - - -
              -
              - - - - - - -
              -
              Message Passing Library -
              -
              -
              - - - - - - - -
              -
              - -
              -
              -
              - -
              - -
              -
              - - -
              - -
              - -
              - -
              mpl Namespace Reference
              -
              -
              - - - - - - -

              -Namespaces

              namespace  environment
               
              namespace  impl
               
              - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

              -Classes

              class  absolute_data
               Helper class for heterogeneous_layout and make_absolute. More...
               
              class  absolute_data< const T * >
               Helper class for heterogeneous_layout and make_absolute. More...
               
              class  absolute_data< T * >
               Helper class for heterogeneous_layout and make_absolute. More...
               
              class  base_struct_builder
               Base class used to manage information about structures/classes and their public members. More...
               
              struct  bit_and
               Function object for calculating the bitwise conjunction of two values in reduction operations as communicator::reduce. More...
               
              struct  bit_or
               Function object for calculating the bitwise (inclusive) disjunction of two values in reduction operations as communicator::reduce. More...
               
              struct  bit_xor
               Function object for calculating the bitwise exclusive disjunction of two values in reduction operations as communicator::reduce. More...
               
              class  bsend_buffer
               Buffer manager for buffered send operations. More...
               
              class  cartesian_communicator
               Communicator with Cartesian topology. More...
               
              class  communicator
               Specifies the communication context for a communication operation. More...
               
              class  contiguous_layout
               Layout representing contiguous storage several objects. More...
               
              class  contiguous_layouts
               container for storing contiguous layouts More...
               
              class  displacements
               Indicates the beginning of data buffers in various collective communication operations. More...
               
              class  distributed_graph_communicator
               Communicator with general graph topology. More...
               
              class  distributed_grid
               Local portion of a distributed data grid including local overlap data. More...
               
              class  empty_layout
               Layout with zero elements. More...
               
              class  error
               Base class for all MPL exception classes that will be thrown in case of run-time errors. More...
               
              class  graph_communicator
               Communicator with general graph topology. More...
               
              class  group
               Represents a group of processes. More...
               
              class  heterogeneous_layout
               Layout representing heterogeneous data at specific memory locations. More...
               
              class  hindexed_block_layout
               Layout representing data in a sequence of consecutive homogenous blocks of uniform lengths. More...
               
              class  hindexed_layout
               Layout representing data in a sequence of consecutive homogenous blocks of varying lengths. More...
               
              class  indexed_block_layout
               Layout representing data in a sequence of consecutive homogenous blocks of uniform lengths. More...
               
              class  indexed_layout
               Layout representing data in a sequence of consecutive homogenous blocks of varying lengths. More...
               
              class  invalid_argument
               Will be thrown in case of invalid arguments. More...
               
              class  invalid_count
               Will be thrown in case of invalid count argument. More...
               
              class  invalid_datatype_bound
               Will be thrown when an error occurs while manipulating layouts. More...
               
              class  invalid_dim
               Will be thrown in case of invalid dimension. More...
               
              class  invalid_layout
               Will be thrown in case of invalid layout argument. More...
               
              class  invalid_rank
               Will be thrown in case of invalid rank argument. More...
               
              class  invalid_size
               Will be thrown in case of invalid size argument. More...
               
              class  invalid_tag
               Will be thrown in case of invalid tag argument. More...
               
              class  irequest
               Represents a non-blocking communication request. More...
               
              class  irequest_pool
               Container for managing a list of non-blocking communication requests. More...
               
              class  iterator_layout
               Layout representing data at non-consecutive memory locations, which can be addressed via an iterator. More...
               
              class  layout
               Base class for a family of classes that describe where objects are located in memory when several objects of the same type T are exchanged in a single message. More...
               
              class  layouts
               container for storing layouts More...
               
              class  local_grid
               Data grid. More...
               
              struct  logical_and
               Function object for calculating the logical conjunction of two values in reduction operations as communicator::reduce. More...
               
              struct  logical_or
               Function object for calculating the logical (inclusive) disjunction of two values in reduction operations as communicator::reduce. More...
               
              struct  logical_xor
               Function object for calculating the logical exclusive disjunction of two values in reduction operations as communicator::reduce. More...
               
              struct  max
               Function object for calculating the maximum of two values in reduction operations as communicator::reduce. More...
               
              struct  min
               Function object for calculating the minimum of two values in reduction operations as communicator::reduce. More...
               
              struct  mprobe_status
               return value of matching probe operations More...
               
              struct  multiplies
               Function object for calculating the product of two values in reduction operations as communicator::reduce. More...
               
              class  null_layout
               Layout with zero elements. More...
               
              struct  op_traits
               Traits class for storing meta information about reduction operations. More...
               
              struct  op_traits< bit_and< T > >
               Specialization of traits class op_traits for storing meta information about the bit_and reduction operation. More...
               
              struct  op_traits< bit_or< T > >
               Specialization of traits class op_traits for storing meta information about the bit_or reduction operation. More...
               
              struct  op_traits< bit_xor< T > >
               Specialization of traits class op_traits for storing meta information about the bit_xor reduction operation. More...
               
              struct  op_traits< logical_and< T > >
               Specialization of traits class op_traits for storing meta information about the logical_and reduction operation. More...
               
              struct  op_traits< logical_or< T > >
               Specialization of traits class op_traits for storing meta information about the logical_or reduction operation. More...
               
              struct  op_traits< logical_xor< T > >
               Specialization of traits class op_traits for storing meta information about the logical_xor reduction operation. More...
               
              struct  op_traits< max< T > >
               Specialization of traits class op_traits for storing meta information about the max reduction operation. More...
               
              struct  op_traits< min< T > >
               Specialization of traits class op_traits for storing meta information about the min reduction operation. More...
               
              struct  op_traits< multiplies< T > >
               Specialization of traits class op_traits for storing meta information about the multiplies reduction operation. More...
               
              struct  op_traits< plus< T > >
               Specialization of traits class op_traits for storing meta information about the plus reduction operation. More...
               
              struct  plus
               Function object for calculating the sum of two values in reduction operations as communicator::reduce. More...
               
              class  prequest
               Represents a persistent communication request. More...
               
              class  prequest_pool
               Container for managing a list of persisting communication requests. More...
               
              class  ranks
               Represents a collection of ranks. More...
               
              struct  shift_ranks
               Helper class to represent source and destination ranks within a Cartesian communicator. More...
               
              class  status_t
               Class that represents the status of a received message. More...
               
              class  strided_vector_layout
               Layout representing uniform storage of several objects with a possibly non-unit stride between consecutive elements. More...
               
              class  struct_builder
               Template class used to manage information about structures/classes and their public members. More...
               
              class  struct_builder< std::array< T, N > >
               Specialization of struct_builder for fixed-size one-dimensional STL arrays. More...
               
              class  struct_builder< std::pair< T1, T2 > >
               Specialization of struct_builder for STL pairs. More...
               
              class  struct_builder< std::tuple< Ts... > >
               Specialization of struct_builder for STL tuples. More...
               
              class  struct_builder< T[N0]>
               Specialization of struct_builder for fixed-size one-dimensional C-style arrays. More...
               
              class  struct_builder< T[N0][N1]>
               Specialization of struct_builder for fixed-size two-dimensional C-style arrays. More...
               
              class  struct_builder< T[N0][N1][N2]>
               Specialization of struct_builder for fixed-size three-dimensional C-style arrays. More...
               
              class  struct_builder< T[N0][N1][N2][N3]>
               Specialization of struct_builder for fixed-size four-dimensional C-style arrays. More...
               
              class  struct_layout
               layout class for storing meta information about the public members of structures More...
               
              class  subarray_layout
               Layout representing data of a subset multi dimensional array. More...
               
              class  tag_t
               Class for representing tag parameters in communication operations. More...
               
              class  vector_layout
               Layout representing contiguous storage several objects. More...
               
              - - - - - - - -

              -Typedefs

              using message_t = MPI_Message
               
              using size_t = std::size_t
               
              using ssize_t = std::ptrdiff_t
               
              - - - - - - - -

              -Enumerations

              enum class  threading_modes { single = MPI_THREAD_SINGLE -, funneled = MPI_THREAD_FUNNELED -, serialized = MPI_THREAD_SERIALIZED -, multiple = MPI_THREAD_MULTIPLE - }
               Represents the various levels of thread support that the underlying MPI implementation may provide. More...
               
              enum class  array_orders { C_order = MPI_ORDER_C -, Fortran_order = MPI_ORDER_FORTRAN - }
               Represents order of elements in a multi dimensional array. More...
               
              - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

              -Functions

              cartesian_communicator::dimensions dims_create (int size, cartesian_communicator::dimensions dims)
               Decomposes a given number of processes over a Cartesian grid made of the number of dimensions specified. More...
               
              bool operator== (const distributed_graph_communicator::rank_weight_pair &pair_1, const distributed_graph_communicator::rank_weight_pair &pair_2)
               Checks if rank-weight pair is equal. More...
               
              bool operator!= (const distributed_graph_communicator::rank_weight_pair &pair_1, const distributed_graph_communicator::rank_weight_pair &pair_2)
               Checks if rank-weight pair is not equal. More...
               
              bool operator== (const graph_communicator::node_list &l_1, const graph_communicator::node_list &l_2)
               Equality test for node lists. More...
               
              bool operator!= (const graph_communicator::node_list &l_1, const graph_communicator::node_list &l_2)
               Inequality test for node lists. More...
               
              template<typename T >
              absolute_data< T * > make_absolute (T *x, const layout< T > &l)
               helper function for heterogeneous_layout More...
               
              template<typename T >
              absolute_data< const T * > make_absolute (const T *x, const layout< T > &l)
               helper function for heterogeneous_layout More...
               
              bool operator== (tag_t t1, tag_t t2)
               
              bool operator!= (tag_t t1, tag_t t2)
               
              template<typename CharT , typename Traits >
              std::basic_ostream< CharT, Traits > & operator<< (std::basic_ostream< CharT, Traits > &os, tag_t t)
               
              template<typename CharT , typename Traits >
              std::basic_istream< CharT, Traits > & operator>> (std::basic_istream< CharT, Traits > &is, tag_t &t)
               
              - - - - - - - - - - - - - - - - - - - -

              -Variables

              constexpr int any_source = MPI_ANY_SOURCE
               Wildcard value to indicate in a receive operation, e.g., communicator::recv, that any source is acceptable. More...
               
              constexpr int proc_null = MPI_PROC_NULL
               Special value that can be used instead of a rank wherever a source or a destination argument is required in a call to indicate that the communication shall have no effect. More...
               
              constexpr int undefined = MPI_UNDEFINED
               Special value that is used to indicate an invalid return value or function parameter in some functions. More...
               
              constexpr int root = MPI_ROOT
               Special value to indicate the root process in some intercommunicator collective operations. More...
               
              constexpr void * absolute = MPI_BOTTOM
               Special constant to indicate the start of the address range of message buffers. More...
               
              constexpr int bsend_overhead = MPI_BSEND_OVERHEAD
               Special constant representing an upper bound on the additional space consumed when buffering messages. More...
               
              -

              Typedef Documentation

              - -

              ◆ message_t

              - -
              -
              - - - - -
              using mpl::message_t = typedef MPI_Message
              -
              - -

              Definition at line 9 of file message.hpp.

              - -
              -
              - -

              ◆ size_t

              - -
              -
              - - - - -
              using mpl::size_t = typedef std::size_t
              -
              - -

              Definition at line 36 of file mpl.hpp.

              - -
              -
              - -

              ◆ ssize_t

              - -
              -
              - - - - -
              using mpl::ssize_t = typedef std::ptrdiff_t
              -
              - -

              Definition at line 37 of file mpl.hpp.

              - -
              -
              -

              Enumeration Type Documentation

              - -

              ◆ array_orders

              - -
              -
              - - - - - -
              - - - - -
              enum class mpl::array_orders
              -
              -strong
              -
              - -

              Represents order of elements in a multi dimensional array.

              -
              See also
              subarray_layout
              - - - -
              Enumerator
              C_order 

              row-major order, also known as lexographical access order or as C order

              -
              Fortran_order 

              column-major order, also known as colexographical access order or as Fortran order

              -
              - -

              Definition at line 1323 of file layout.hpp.

              - -
              -
              - -

              ◆ threading_modes

              - -
              -
              - - - - - -
              - - - - -
              enum class mpl::threading_modes
              -
              -strong
              -
              - -

              Represents the various levels of thread support that the underlying MPI implementation may provide.

              - - - - - -
              Enumerator
              single 
              funneled 
              serialized 
              multiple 
              - -

              Definition at line 14 of file environment.hpp.

              - -
              -
              -

              Function Documentation

              - -

              ◆ dims_create()

              - -
              -
              - - - - - -
              - - - - - - - - - - - - - - - - - - -
              cartesian_communicator::dimensions mpl::dims_create (int size,
              cartesian_communicator::dimensions dims 
              )
              -
              -inline
              -
              - -

              Decomposes a given number of processes over a Cartesian grid made of the number of dimensions specified.

              -
              Parameters
              - - - -
              sizetotal number of processes (the size of the communicator)
              dimsdimension object indicating possible restrictions for the process partitioning
              -
              -
              -
              Returns
              dimension object
              -

              The method attempts to balance the distribution by minimising the difference in the number of processes assigned to each dimension. One can restrict the number of process to allocate to any dimension by specifying a non-zero size for a given dimension in the parameter dims. If the method is not able to find a decomposition while respecting the restrictions given, the routine throws an exception invalid_dims.

              -
              Examples
              distributed_grid.cc, distributed_grid_scatter_gather.cc, heat_equation_Jacobi_method.cc, and heat_equation_successive_over-relaxation.cc.
              -
              - -

              Definition at line 534 of file cartesian_communicator.hpp.

              - -
              -
              - -

              ◆ make_absolute() [1/2]

              - -
              -
              -
              -template<typename T >
              - - - - - - - - - - - - - - - - - - -
              absolute_data< const T * > mpl::make_absolute (const T * x,
              const layout< T > & l 
              )
              -
              - -

              helper function for heterogeneous_layout

              -
              Template Parameters
              - - -
              Tdata type
              -
              -
              -
              Parameters
              - - - -
              xaddress of data
              llayout of data at address x
              -
              -
              -
              See also
              make_absolute(const T *x, const layout<T> &l) function and heterogeneous_layout class
              - -

              Definition at line 1641 of file layout.hpp.

              - -
              -
              - -

              ◆ make_absolute() [2/2]

              - -
              -
              -
              -template<typename T >
              - - - - - - - - - - - - - - - - - - -
              absolute_data< T * > mpl::make_absolute (T * x,
              const layout< T > & l 
              )
              -
              - -

              helper function for heterogeneous_layout

              -
              Template Parameters
              - - -
              Tdata type
              -
              -
              -
              Parameters
              - - - -
              xaddress of data
              llayout of data at address x
              -
              -
              -
              See also
              make_absolute(T *x, const layout<T> &l) function and heterogeneous_layout class
              -
              Examples
              layouts.cc.
              -
              - -

              Definition at line 1631 of file layout.hpp.

              - -
              -
              - -

              ◆ operator!=() [1/3]

              - -
              -
              - - - - - -
              - - - - - - - - - - - - - - - - - - -
              bool mpl::operator!= (const distributed_graph_communicator::rank_weight_pairpair_1,
              const distributed_graph_communicator::rank_weight_pairpair_2 
              )
              -
              -inline
              -
              - -

              Checks if rank-weight pair is not equal.

              -
              Parameters
              - - - -
              pair_11st rank-weight pair to compare
              pair_22nd rank-weight pair to compare
              -
              -
              -
              Returns
              true if not equal
              - -

              Definition at line 239 of file distributed_graph_communicator.hpp.

              - -
              -
              - -

              ◆ operator!=() [2/3]

              - -
              -
              - - - - - -
              - - - - - - - - - - - - - - - - - - -
              bool mpl::operator!= (const graph_communicator::node_listl_1,
              const graph_communicator::node_listl_2 
              )
              -
              -inline
              -
              - -

              Inequality test for node lists.

              -

              Equality test for node lists.

              Parameters
              - - - -
              l_11st node list to compare
              l_22nd node list to compare
              -
              -
              -
              Returns
              true if not equal
              - -

              Definition at line 235 of file graph_communicator.hpp.

              - -
              -
              - -

              ◆ operator!=() [3/3]

              - -
              -
              - - - - - -
              - - - - - - - - - - - - - - - - - - -
              bool mpl::operator!= (tag_t t1,
              tag_t t2 
              )
              -
              -inline
              -
              -
              Parameters
              - - - -
              t1first tag to compare
              t2second tag to compare
              -
              -
              -
              Returns
              true if both tags are not convertible to the same int value
              - -

              Definition at line 54 of file tag.hpp.

              - -
              -
              - -

              ◆ operator<<()

              - -
              -
              -
              -template<typename CharT , typename Traits >
              - - - - - - - - - - - - - - - - - - -
              std::basic_ostream< CharT, Traits > & mpl::operator<< (std::basic_ostream< CharT, Traits > & os,
              tag_t t 
              )
              -
              -

              Write tag into output stream in numerical representation.

              Parameters
              - - - -
              osoutput stream
              ttag to write into stream
              -
              -
              -
              Returns
              output stream
              - -

              Definition at line 54 of file tag.hpp.

              - -
              -
              - -

              ◆ operator==() [1/3]

              - -
              -
              - - - - - -
              - - - - - - - - - - - - - - - - - - -
              bool mpl::operator== (const distributed_graph_communicator::rank_weight_pairpair_1,
              const distributed_graph_communicator::rank_weight_pairpair_2 
              )
              -
              -inline
              -
              - -

              Checks if rank-weight pair is equal.

              -
              Parameters
              - - - -
              pair_11st rank-weight pair to compare
              pair_22nd rank-weight pair to compare
              -
              -
              -
              Returns
              true if equal
              - -

              Definition at line 230 of file distributed_graph_communicator.hpp.

              - -
              -
              - -

              ◆ operator==() [2/3]

              - -
              -
              - - - - - -
              - - - - - - - - - - - - - - - - - - -
              bool mpl::operator== (const graph_communicator::node_listl_1,
              const graph_communicator::node_listl_2 
              )
              -
              -inline
              -
              - -

              Equality test for node lists.

              -
              Parameters
              - - - -
              l_11st node list to compare
              l_22nd node list to compare
              -
              -
              -
              Returns
              true if equal
              - -

              Definition at line 224 of file graph_communicator.hpp.

              - -
              -
              - -

              ◆ operator==() [3/3]

              - -
              -
              - - - - - -
              - - - - - - - - - - - - - - - - - - -
              bool mpl::operator== (tag_t t1,
              tag_t t2 
              )
              -
              -inline
              -
              -
              Parameters
              - - - -
              t1first tag to compare
              t2second tag to compare
              -
              -
              -
              Returns
              true if both tags are convertible to the same int value
              - -

              Definition at line 47 of file tag.hpp.

              - -
              -
              - -

              ◆ operator>>()

              - -
              -
              -
              -template<typename CharT , typename Traits >
              - - - - - - - - - - - - - - - - - - -
              std::basic_istream< CharT, Traits > & mpl::operator>> (std::basic_istream< CharT, Traits > & is,
              tag_tt 
              )
              -
              -

              Read tag given in numerical representation from input stream.

              Parameters
              - - - -
              isinput stream
              ttag to read from stream
              -
              -
              -
              Returns
              input stream
              - -

              Definition at line 73 of file tag.hpp.

              - -
              -
              -

              Variable Documentation

              - -

              ◆ absolute

              - -
              -
              - - - - - -
              - - - - -
              constexpr void* mpl::absolute = MPI_BOTTOM
              -
              -constexpr
              -
              - -

              Special constant to indicate the start of the address range of message buffers.

              -
              Examples
              layouts.cc.
              -
              - -

              Definition at line 29 of file mpl.hpp.

              - -
              -
              - -

              ◆ any_source

              - -
              -
              - - - - - -
              - - - - -
              constexpr int mpl::any_source = MPI_ANY_SOURCE
              -
              -constexpr
              -
              - -

              Wildcard value to indicate in a receive operation, e.g., communicator::recv, that any source is acceptable.

              -
              See also
              tag::any
              -
              Examples
              probe.cc.
              -
              - -

              Definition at line 13 of file mpl.hpp.

              - -
              -
              - -

              ◆ bsend_overhead

              - -
              -
              - - - - - -
              - - - - -
              constexpr int mpl::bsend_overhead = MPI_BSEND_OVERHEAD
              -
              -constexpr
              -
              - -

              Special constant representing an upper bound on the additional space consumed when buffering messages.

              -
              See also
              communicator::bsend
              - -

              Definition at line 34 of file mpl.hpp.

              - -
              -
              - -

              ◆ proc_null

              - -
              -
              - - - - - -
              - - - - -
              constexpr int mpl::proc_null = MPI_PROC_NULL
              -
              -constexpr
              -
              - -

              Special value that can be used instead of a rank wherever a source or a destination argument is required in a call to indicate that the communication shall have no effect.

              -
              Examples
              vibrating_string_mpl.cc.
              -
              - -

              Definition at line 18 of file mpl.hpp.

              - -
              -
              - -

              ◆ root

              - -
              -
              - - - - - -
              - - - - -
              constexpr int mpl::root = MPI_ROOT
              -
              -constexpr
              -
              - -

              Special value to indicate the root process in some intercommunicator collective operations.

              - -

              Definition at line 26 of file mpl.hpp.

              - -
              -
              - -

              ◆ undefined

              - -
              -
              - - - - - -
              - - - - -
              constexpr int mpl::undefined = MPI_UNDEFINED
              -
              -constexpr
              -
              - -

              Special value that is used to indicate an invalid return value or function parameter in some functions.

              -
              Examples
              communicator.cc.
              -
              - -

              Definition at line 22 of file mpl.hpp.

              - -
              -
              -
              -
              - - - - diff --git a/docs/html/namespacempl.js b/docs/html/namespacempl.js deleted file mode 100644 index 07b86b2f..00000000 --- a/docs/html/namespacempl.js +++ /dev/null @@ -1,122 +0,0 @@ -var namespacempl = -[ - [ "environment", "namespacempl_1_1environment.html", [ - [ "buffer_attach", "namespacempl_1_1environment.html#ab112324f29c5e0a131f1863ab11f2ff5", null ], - [ "buffer_detach", "namespacempl_1_1environment.html#aa73a2d692feb579fac1c5c351503fbe2", null ], - [ "comm_self", "namespacempl_1_1environment.html#a785bf3032ef30fadadf9d834549041c1", null ], - [ "comm_world", "namespacempl_1_1environment.html#a1f4644f4435160bb33ada569dc3f48ac", null ], - [ "is_thread_main", "namespacempl_1_1environment.html#a9bf5f93d0014124492bffd5b2df1f571", null ], - [ "processor_name", "namespacempl_1_1environment.html#a89bda4aaa36251049ffdecdbe79a4322", null ], - [ "threading_mode", "namespacempl_1_1environment.html#ac623e48336fe65e098fb56ebd16dba33", null ], - [ "wtick", "namespacempl_1_1environment.html#ad5d86a31e41363a7b326baaa9dd32edb", null ], - [ "wtime", "namespacempl_1_1environment.html#a18e3982cf7b547d30b3f7f1236a079f6", null ], - [ "wtime_is_global", "namespacempl_1_1environment.html#a8df37b1fb318ae7efa867d9eda6b99b9", null ] - ] ], - [ "impl", "namespacempl_1_1impl.html", "namespacempl_1_1impl" ], - [ "absolute_data", "classmpl_1_1absolute__data.html", null ], - [ "absolute_data< const T * >", "classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html", "classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4" ], - [ "absolute_data< T * >", "classmpl_1_1absolute__data_3_01_t_01_5_01_4.html", "classmpl_1_1absolute__data_3_01_t_01_5_01_4" ], - [ "base_struct_builder", "classmpl_1_1base__struct__builder.html", "classmpl_1_1base__struct__builder" ], - [ "bit_and", "structmpl_1_1bit__and.html", "structmpl_1_1bit__and" ], - [ "bit_or", "structmpl_1_1bit__or.html", "structmpl_1_1bit__or" ], - [ "bit_xor", "structmpl_1_1bit__xor.html", "structmpl_1_1bit__xor" ], - [ "bsend_buffer", "classmpl_1_1bsend__buffer.html", "classmpl_1_1bsend__buffer" ], - [ "cartesian_communicator", "classmpl_1_1cartesian__communicator.html", "classmpl_1_1cartesian__communicator" ], - [ "communicator", "classmpl_1_1communicator.html", "classmpl_1_1communicator" ], - [ "contiguous_layout", "classmpl_1_1contiguous__layout.html", "classmpl_1_1contiguous__layout" ], - [ "contiguous_layouts", "classmpl_1_1contiguous__layouts.html", "classmpl_1_1contiguous__layouts" ], - [ "displacements", "classmpl_1_1displacements.html", "classmpl_1_1displacements" ], - [ "distributed_graph_communicator", "classmpl_1_1distributed__graph__communicator.html", "classmpl_1_1distributed__graph__communicator" ], - [ "distributed_grid", "classmpl_1_1distributed__grid.html", "classmpl_1_1distributed__grid" ], - [ "empty_layout", "classmpl_1_1empty__layout.html", "classmpl_1_1empty__layout" ], - [ "error", "classmpl_1_1error.html", "classmpl_1_1error" ], - [ "graph_communicator", "classmpl_1_1graph__communicator.html", "classmpl_1_1graph__communicator" ], - [ "group", "classmpl_1_1group.html", "classmpl_1_1group" ], - [ "heterogeneous_layout", "classmpl_1_1heterogeneous__layout.html", "classmpl_1_1heterogeneous__layout" ], - [ "hindexed_block_layout", "classmpl_1_1hindexed__block__layout.html", "classmpl_1_1hindexed__block__layout" ], - [ "hindexed_layout", "classmpl_1_1hindexed__layout.html", "classmpl_1_1hindexed__layout" ], - [ "indexed_block_layout", "classmpl_1_1indexed__block__layout.html", "classmpl_1_1indexed__block__layout" ], - [ "indexed_layout", "classmpl_1_1indexed__layout.html", "classmpl_1_1indexed__layout" ], - [ "invalid_argument", "classmpl_1_1invalid__argument.html", "classmpl_1_1invalid__argument" ], - [ "invalid_count", "classmpl_1_1invalid__count.html", "classmpl_1_1invalid__count" ], - [ "invalid_datatype_bound", "classmpl_1_1invalid__datatype__bound.html", "classmpl_1_1invalid__datatype__bound" ], - [ "invalid_dim", "classmpl_1_1invalid__dim.html", "classmpl_1_1invalid__dim" ], - [ "invalid_layout", "classmpl_1_1invalid__layout.html", "classmpl_1_1invalid__layout" ], - [ "invalid_rank", "classmpl_1_1invalid__rank.html", "classmpl_1_1invalid__rank" ], - [ "invalid_size", "classmpl_1_1invalid__size.html", "classmpl_1_1invalid__size" ], - [ "invalid_tag", "classmpl_1_1invalid__tag.html", "classmpl_1_1invalid__tag" ], - [ "irequest", "classmpl_1_1irequest.html", "classmpl_1_1irequest" ], - [ "irequest_pool", "classmpl_1_1irequest__pool.html", "classmpl_1_1irequest__pool" ], - [ "iterator_layout", "classmpl_1_1iterator__layout.html", "classmpl_1_1iterator__layout" ], - [ "layout", "classmpl_1_1layout.html", "classmpl_1_1layout" ], - [ "layouts", "classmpl_1_1layouts.html", "classmpl_1_1layouts" ], - [ "local_grid", "classmpl_1_1local__grid.html", "classmpl_1_1local__grid" ], - [ "logical_and", "structmpl_1_1logical__and.html", "structmpl_1_1logical__and" ], - [ "logical_or", "structmpl_1_1logical__or.html", "structmpl_1_1logical__or" ], - [ "logical_xor", "structmpl_1_1logical__xor.html", "structmpl_1_1logical__xor" ], - [ "max", "structmpl_1_1max.html", "structmpl_1_1max" ], - [ "min", "structmpl_1_1min.html", "structmpl_1_1min" ], - [ "mprobe_status", "structmpl_1_1mprobe__status.html", "structmpl_1_1mprobe__status" ], - [ "multiplies", "structmpl_1_1multiplies.html", "structmpl_1_1multiplies" ], - [ "null_layout", "classmpl_1_1null__layout.html", "classmpl_1_1null__layout" ], - [ "op_traits", "structmpl_1_1op__traits.html", null ], - [ "op_traits< bit_and< T > >", "structmpl_1_1op__traits_3_01bit__and_3_01_t_01_4_01_4.html", null ], - [ "op_traits< bit_or< T > >", "structmpl_1_1op__traits_3_01bit__or_3_01_t_01_4_01_4.html", null ], - [ "op_traits< bit_xor< T > >", "structmpl_1_1op__traits_3_01bit__xor_3_01_t_01_4_01_4.html", null ], - [ "op_traits< logical_and< T > >", "structmpl_1_1op__traits_3_01logical__and_3_01_t_01_4_01_4.html", null ], - [ "op_traits< logical_or< T > >", "structmpl_1_1op__traits_3_01logical__or_3_01_t_01_4_01_4.html", null ], - [ "op_traits< logical_xor< T > >", "structmpl_1_1op__traits_3_01logical__xor_3_01_t_01_4_01_4.html", null ], - [ "op_traits< max< T > >", "structmpl_1_1op__traits_3_01max_3_01_t_01_4_01_4.html", null ], - [ "op_traits< min< T > >", "structmpl_1_1op__traits_3_01min_3_01_t_01_4_01_4.html", null ], - [ "op_traits< multiplies< T > >", "structmpl_1_1op__traits_3_01multiplies_3_01_t_01_4_01_4.html", null ], - [ "op_traits< plus< T > >", "structmpl_1_1op__traits_3_01plus_3_01_t_01_4_01_4.html", null ], - [ "plus", "structmpl_1_1plus.html", "structmpl_1_1plus" ], - [ "prequest", "classmpl_1_1prequest.html", "classmpl_1_1prequest" ], - [ "prequest_pool", "classmpl_1_1prequest__pool.html", "classmpl_1_1prequest__pool" ], - [ "ranks", "classmpl_1_1ranks.html", "classmpl_1_1ranks" ], - [ "shift_ranks", "structmpl_1_1shift__ranks.html", "structmpl_1_1shift__ranks" ], - [ "status_t", "classmpl_1_1status__t.html", "classmpl_1_1status__t" ], - [ "strided_vector_layout", "classmpl_1_1strided__vector__layout.html", "classmpl_1_1strided__vector__layout" ], - [ "struct_builder", "classmpl_1_1struct__builder.html", "classmpl_1_1struct__builder" ], - [ "struct_builder< std::array< T, N > >", "classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html", "classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4" ], - [ "struct_builder< std::pair< T1, T2 > >", "classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html", "classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4" ], - [ "struct_builder< std::tuple< Ts... > >", "classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html", "classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4" ], - [ "struct_builder< T[N0]>", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4" ], - [ "struct_builder< T[N0][N1]>", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4" ], - [ "struct_builder< T[N0][N1][N2]>", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4" ], - [ "struct_builder< T[N0][N1][N2][N3]>", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html", "classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4" ], - [ "struct_layout", "classmpl_1_1struct__layout.html", "classmpl_1_1struct__layout" ], - [ "subarray_layout", "classmpl_1_1subarray__layout.html", "classmpl_1_1subarray__layout" ], - [ "tag_t", "classmpl_1_1tag__t.html", "classmpl_1_1tag__t" ], - [ "vector_layout", "classmpl_1_1vector__layout.html", "classmpl_1_1vector__layout" ], - [ "message_t", "namespacempl.html#a3685893e866d7db6c3b3765d26ef386b", null ], - [ "size_t", "namespacempl.html#a3cd70ef6c91cacaf9265de4c9dd93ddf", null ], - [ "ssize_t", "namespacempl.html#acf6b82700b0f144cbcd49b1233e1083d", null ], - [ "array_orders", "namespacempl.html#a7fd33fa3d7b9a6f095cd55710c3b2dbf", [ - [ "C_order", "namespacempl.html#a7fd33fa3d7b9a6f095cd55710c3b2dbfaadf55cfbf8cf8671022d5210c4eccaa8", null ], - [ "Fortran_order", "namespacempl.html#a7fd33fa3d7b9a6f095cd55710c3b2dbfae406b10bb96ad9064aebbf2835864097", null ] - ] ], - [ "threading_modes", "namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828", [ - [ "single", "namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828add5c07036f2975ff4bce568b6511d3bc", null ], - [ "funneled", "namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828a2110cc27d60e873203472314639a3c8a", null ], - [ "serialized", "namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828afb741eb55bd67db2031aa661671fba7c", null ], - [ "multiple", "namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828ace495ab8d79db0d37413d8e95b54e606", null ] - ] ], - [ "dims_create", "namespacempl.html#a7b638dd4b816832f5bab22fac8f157af", null ], - [ "make_absolute", "namespacempl.html#a118b145797198062151e6f43ee52046b", null ], - [ "make_absolute", "namespacempl.html#a6481521478393b302a549178d93b8503", null ], - [ "operator!=", "namespacempl.html#ab242c0bf99fd03e51e406ee59b36ac4f", null ], - [ "operator!=", "namespacempl.html#af4c305e85a8670fe754351dd3f8366b7", null ], - [ "operator!=", "namespacempl.html#a79afe2e73335bd43c875005716304b89", null ], - [ "operator<<", "namespacempl.html#a6aabc6191f8b6e463e4c283f7b05985a", null ], - [ "operator==", "namespacempl.html#a9593329c5b9cc66fdf2defd6f2e00431", null ], - [ "operator==", "namespacempl.html#a39c14458a8b289cc73bce2e2e156783b", null ], - [ "operator==", "namespacempl.html#ab82856a9a5264addefc5e436a19e3565", null ], - [ "operator>>", "namespacempl.html#a700cde8da9a9d5af915974f05b9863b4", null ], - [ "absolute", "namespacempl.html#af7799eb8fd405a1f2f1f226fe24626f5", null ], - [ "any_source", "namespacempl.html#a410d15ee027fbbc82e25bce740d4c69b", null ], - [ "bsend_overhead", "namespacempl.html#a4bc7e110094061c98ce0bf2b136ff19a", null ], - [ "proc_null", "namespacempl.html#a50a0f0b35e2150b88de70497e424ab4c", null ], - [ "root", "namespacempl.html#a580d63de8f272555e40bb7ea90f23ccc", null ], - [ "undefined", "namespacempl.html#a551ed45948e628d93f6669b4cb01e750", null ] -]; \ No newline at end of file diff --git a/docs/html/namespacempl_1_1environment.html b/docs/html/namespacempl_1_1environment.html deleted file mode 100644 index cf68eb01..00000000 --- a/docs/html/namespacempl_1_1environment.html +++ /dev/null @@ -1,462 +0,0 @@ - - - - - - - -Message Passing Library: mpl::environment Namespace Reference - - - - - - - - - - - - - - -
              -
              - - - - - - -
              -
              Message Passing Library -
              -
              -
              - - - - - - - -
              -
              - -
              -
              -
              - -
              - -
              -
              - - -
              - -
              - -
              - -
              mpl::environment Namespace Reference
              -
              -
              - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

              -Functions

              threading_modes threading_mode ()
               Determines the highest level of thread support that is provided by the underlying MPI implementation. More...
               
              bool is_thread_main ()
               Determines if the current thread is the main thread, i.e., the thread that has initialized the MPI environment of the underlying MPI implementation. More...
               
              bool wtime_is_global ()
               Determines if time values given by wtime are synchronized with each other for all processes of the communicator given in comm_world. More...
               
              const communicatorcomm_world ()
               Provides access to a predefined communicator that allows communication with all processes. More...
               
              const communicatorcomm_self ()
               Provides access to a predefined communicator that includes only the calling process itself. More...
               
              std::string processor_name ()
               Gives a unique specifier, the processor name, for the actual (physical) node. More...
               
              double wtime ()
               Get time. More...
               
              double wtick ()
               Get resolution of time given by wtime. More...
               
              void buffer_attach (void *buff, int size)
               Provides to MPL a buffer in the user's memory to be used for buffering outgoing messages. More...
               
              std::pair< void *, int > buffer_detach ()
               Detach the buffer currently associated with MPL. More...
               
              -

              Function Documentation

              - -

              ◆ buffer_attach()

              - -
              -
              - - - - - -
              - - - - - - - - - - - - - - - - - - -
              void mpl::environment::buffer_attach (void * buff,
              int size 
              )
              -
              -inline
              -
              - -

              Provides to MPL a buffer in the user's memory to be used for buffering outgoing messages.

              -
              Parameters
              - - - -
              buffpointer to user-provided buffer
              sizesize of the buffer in bytes, must be non-negative
              -
              -
              -
              See also
              buffer_detach
              - -

              Definition at line 168 of file environment.hpp.

              - -
              -
              - -

              ◆ buffer_detach()

              - -
              -
              - - - - - -
              - - - - - - - -
              std::pair< void *, int > mpl::environment::buffer_detach ()
              -
              -inline
              -
              - -

              Detach the buffer currently associated with MPL.

              -
              Returns
              pair representing the buffer location and size, i.e., the parameters provided to buffer_attach
              -
              See also
              buffer_attach
              - -

              Definition at line 176 of file environment.hpp.

              - -
              -
              - -

              ◆ comm_self()

              - -
              -
              - - - - - -
              - - - - - - - -
              const communicator & mpl::environment::comm_self ()
              -
              -inline
              -
              - -

              Provides access to a predefined communicator that includes only the calling process itself.

              -
              Returns
              communicator including only the precess itself
              - -

              Definition at line 146 of file environment.hpp.

              - -
              -
              - -

              ◆ comm_world()

              - -
              -
              - - - - - -
              - - - - - - - -
              const communicator & mpl::environment::comm_world ()
              -
              -inline
              -
              -
              - -

              ◆ is_thread_main()

              - -
              -
              - - - - - -
              - - - - - - - -
              bool mpl::environment::is_thread_main ()
              -
              -inline
              -
              - -

              Determines if the current thread is the main thread, i.e., the thread that has initialized the MPI environment of the underlying MPI implementation.

              -
              Returns
              true if current thread is the main thread
              - -

              Definition at line 130 of file environment.hpp.

              - -
              -
              - -

              ◆ processor_name()

              - -
              -
              - - - - - -
              - - - - - - - -
              std::string mpl::environment::processor_name ()
              -
              -inline
              -
              - -

              Gives a unique specifier, the processor name, for the actual (physical) node.

              -
              Returns
              name of the node
              -
              Note
              The name is determined by the underlying MPI implementation, i.e., it is implementation defined and may be different for different MPI implementations.
              -
              Examples
              collective.cc, and hello_world.cc.
              -
              - -

              Definition at line 152 of file environment.hpp.

              - -
              -
              - -

              ◆ threading_mode()

              - -
              -
              - - - - - -
              - - - - - - - -
              threading_modes mpl::environment::threading_mode ()
              -
              -inline
              -
              - -

              Determines the highest level of thread support that is provided by the underlying MPI implementation.

              -
              Returns
              supported threading level
              - -

              Definition at line 125 of file environment.hpp.

              - -
              -
              - -

              ◆ wtick()

              - -
              -
              - - - - - -
              - - - - - - - -
              double mpl::environment::wtick ()
              -
              -inline
              -
              - -

              Get resolution of time given by wtime.

              -
              Returns
              resolution of wtime in seconds.
              -
              See also
              wtime
              - -

              Definition at line 161 of file environment.hpp.

              - -
              -
              - -

              ◆ wtime()

              - -
              -
              - - - - - -
              - - - - - - - -
              double mpl::environment::wtime ()
              -
              -inline
              -
              - -

              Get time.

              -
              Returns
              number of seconds of elapsed wall-clock time since some time in the past
              - -

              Definition at line 156 of file environment.hpp.

              - -
              -
              - -

              ◆ wtime_is_global()

              - -
              -
              - - - - - -
              - - - - - - - -
              bool mpl::environment::wtime_is_global ()
              -
              -inline
              -
              - -

              Determines if time values given by wtime are synchronized with each other for all processes of the communicator given in comm_world.

              -
              Returns
              true if times are synchronized
              -
              See also
              wtime
              - -

              Definition at line 136 of file environment.hpp.

              - -
              -
              -
              -
              - - - - diff --git a/docs/html/namespacempl_1_1impl.html b/docs/html/namespacempl_1_1impl.html deleted file mode 100644 index 9076981e..00000000 --- a/docs/html/namespacempl_1_1impl.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - - -Message Passing Library: mpl::impl Namespace Reference - - - - - - - - - - - - - - -
              -
              - - - - - - -
              -
              Message Passing Library -
              -
              -
              - - - - - - - -
              -
              - -
              -
              -
              - -
              - -
              -
              - - -
              - -
              - -
              - -
              mpl::impl Namespace Reference
              -
              -
              - - - - - - - - - - - - - -

              -Classes

              class  irequest
               
              class  prequest
               
              class  request
               
              class  request_pool
               
              class  topology_communicator
               Base class for communicators with a topology. More...
               
              -
              -
              - - - - diff --git a/docs/html/namespacempl_1_1impl.js b/docs/html/namespacempl_1_1impl.js deleted file mode 100644 index f07e45b0..00000000 --- a/docs/html/namespacempl_1_1impl.js +++ /dev/null @@ -1,8 +0,0 @@ -var namespacempl_1_1impl = -[ - [ "irequest", "classmpl_1_1impl_1_1irequest.html", "classmpl_1_1impl_1_1irequest" ], - [ "prequest", "classmpl_1_1impl_1_1prequest.html", "classmpl_1_1impl_1_1prequest" ], - [ "request", "classmpl_1_1impl_1_1request.html", "classmpl_1_1impl_1_1request" ], - [ "request_pool", "classmpl_1_1impl_1_1request__pool.html", "classmpl_1_1impl_1_1request__pool" ], - [ "topology_communicator", "classmpl_1_1impl_1_1topology__communicator.html", "classmpl_1_1impl_1_1topology__communicator" ] -]; \ No newline at end of file diff --git a/docs/html/namespaces.html b/docs/html/namespaces.html deleted file mode 100644 index 32e85e06..00000000 --- a/docs/html/namespaces.html +++ /dev/null @@ -1,218 +0,0 @@ - - - - - - - -Message Passing Library: Namespace List - - - - - - - - - - - - - - -
              -
              - - - - - - -
              -
              Message Passing Library -
              -
              -
              - - - - - - - -
              -
              - -
              -
              -
              - -
              - -
              -
              - - -
              - -
              - -
              -
              Namespace List
              -
              -
              -
              Here is a list of all namespaces with brief descriptions:
              -
              [detail level 1234]
              - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
               Nmpl
               Nenvironment
               Nimpl
               Cabsolute_dataHelper class for heterogeneous_layout and make_absolute
               Cabsolute_data< const T * >Helper class for heterogeneous_layout and make_absolute
               Cabsolute_data< T * >Helper class for heterogeneous_layout and make_absolute
               Cbase_struct_builderBase class used to manage information about structures/classes and their public members
               Cbit_andFunction object for calculating the bitwise conjunction of two values in reduction operations as communicator::reduce
               Cbit_orFunction object for calculating the bitwise (inclusive) disjunction of two values in reduction operations as communicator::reduce
               Cbit_xorFunction object for calculating the bitwise exclusive disjunction of two values in reduction operations as communicator::reduce
               Cbsend_bufferBuffer manager for buffered send operations
               Ccartesian_communicatorCommunicator with Cartesian topology
               CcommunicatorSpecifies the communication context for a communication operation
               Ccontiguous_layoutLayout representing contiguous storage several objects
               Ccontiguous_layoutsContainer for storing contiguous layouts
               CdisplacementsIndicates the beginning of data buffers in various collective communication operations
               Cdistributed_graph_communicatorCommunicator with general graph topology
               Cdistributed_gridLocal portion of a distributed data grid including local overlap data
               Cempty_layoutLayout with zero elements
               CerrorBase class for all MPL exception classes that will be thrown in case of run-time errors
               Cgraph_communicatorCommunicator with general graph topology
               CgroupRepresents a group of processes
               Cheterogeneous_layoutLayout representing heterogeneous data at specific memory locations
               Chindexed_block_layoutLayout representing data in a sequence of consecutive homogenous blocks of uniform lengths
               Chindexed_layoutLayout representing data in a sequence of consecutive homogenous blocks of varying lengths
               Cindexed_block_layoutLayout representing data in a sequence of consecutive homogenous blocks of uniform lengths
               Cindexed_layoutLayout representing data in a sequence of consecutive homogenous blocks of varying lengths
               Cinvalid_argumentWill be thrown in case of invalid arguments
               Cinvalid_countWill be thrown in case of invalid count argument
               Cinvalid_datatype_boundWill be thrown when an error occurs while manipulating layouts
               Cinvalid_dimWill be thrown in case of invalid dimension
               Cinvalid_layoutWill be thrown in case of invalid layout argument
               Cinvalid_rankWill be thrown in case of invalid rank argument
               Cinvalid_sizeWill be thrown in case of invalid size argument
               Cinvalid_tagWill be thrown in case of invalid tag argument
               CirequestRepresents a non-blocking communication request
               Cirequest_poolContainer for managing a list of non-blocking communication requests
               Citerator_layoutLayout representing data at non-consecutive memory locations, which can be addressed via an iterator
               ClayoutBase class for a family of classes that describe where objects are located in memory when several objects of the same type T are exchanged in a single message
               ClayoutsContainer for storing layouts
               Clocal_gridData grid
               Clogical_andFunction object for calculating the logical conjunction of two values in reduction operations as communicator::reduce
               Clogical_orFunction object for calculating the logical (inclusive) disjunction of two values in reduction operations as communicator::reduce
               Clogical_xorFunction object for calculating the logical exclusive disjunction of two values in reduction operations as communicator::reduce
               CmaxFunction object for calculating the maximum of two values in reduction operations as communicator::reduce
               CminFunction object for calculating the minimum of two values in reduction operations as communicator::reduce
               Cmprobe_statusReturn value of matching probe operations
               CmultipliesFunction object for calculating the product of two values in reduction operations as communicator::reduce
               Cnull_layoutLayout with zero elements
               Cop_traitsTraits class for storing meta information about reduction operations
               Cop_traits< bit_and< T > >Specialization of traits class op_traits for storing meta information about the bit_and reduction operation
               Cop_traits< bit_or< T > >Specialization of traits class op_traits for storing meta information about the bit_or reduction operation
               Cop_traits< bit_xor< T > >Specialization of traits class op_traits for storing meta information about the bit_xor reduction operation
               Cop_traits< logical_and< T > >Specialization of traits class op_traits for storing meta information about the logical_and reduction operation
               Cop_traits< logical_or< T > >Specialization of traits class op_traits for storing meta information about the logical_or reduction operation
               Cop_traits< logical_xor< T > >Specialization of traits class op_traits for storing meta information about the logical_xor reduction operation
               Cop_traits< max< T > >Specialization of traits class op_traits for storing meta information about the max reduction operation
               Cop_traits< min< T > >Specialization of traits class op_traits for storing meta information about the min reduction operation
               Cop_traits< multiplies< T > >Specialization of traits class op_traits for storing meta information about the multiplies reduction operation
               Cop_traits< plus< T > >Specialization of traits class op_traits for storing meta information about the plus reduction operation
               CplusFunction object for calculating the sum of two values in reduction operations as communicator::reduce
               CprequestRepresents a persistent communication request
               Cprequest_poolContainer for managing a list of persisting communication requests
               CranksRepresents a collection of ranks
               Cshift_ranksHelper class to represent source and destination ranks within a Cartesian communicator
               Cstatus_tClass that represents the status of a received message
               Cstrided_vector_layoutLayout representing uniform storage of several objects with a possibly non-unit stride between consecutive elements
               Cstruct_builderTemplate class used to manage information about structures/classes and their public members
               Cstruct_builder< std::array< T, N > >Specialization of struct_builder for fixed-size one-dimensional STL arrays
               Cstruct_builder< std::pair< T1, T2 > >Specialization of struct_builder for STL pairs
               Cstruct_builder< std::tuple< Ts... > >Specialization of struct_builder for STL tuples
               Cstruct_builder< T[N0]>Specialization of struct_builder for fixed-size one-dimensional C-style arrays
               Cstruct_builder< T[N0][N1]>Specialization of struct_builder for fixed-size two-dimensional C-style arrays
               Cstruct_builder< T[N0][N1][N2]>Specialization of struct_builder for fixed-size three-dimensional C-style arrays
               Cstruct_builder< T[N0][N1][N2][N3]>Specialization of struct_builder for fixed-size four-dimensional C-style arrays
               Cstruct_layoutLayout class for storing meta information about the public members of structures
               Csubarray_layoutLayout representing data of a subset multi dimensional array
               Ctag_tClass for representing tag parameters in communication operations
               Cvector_layoutLayout representing contiguous storage several objects
               Nstd
               Ctuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >
               Ctuple_size< mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >
              -
              -
              -
              - - - - diff --git a/docs/html/namespaces_dup.js b/docs/html/namespaces_dup.js deleted file mode 100644 index 0a83250f..00000000 --- a/docs/html/namespaces_dup.js +++ /dev/null @@ -1,5 +0,0 @@ -var namespaces_dup = -[ - [ "mpl", "namespacempl.html", "namespacempl" ], - [ "std", "namespacestd.html", "namespacestd" ] -]; \ No newline at end of file diff --git a/docs/html/namespacestd.html b/docs/html/namespacestd.html deleted file mode 100644 index 864af6bd..00000000 --- a/docs/html/namespacestd.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - - -Message Passing Library: std Namespace Reference - - - - - - - - - - - - - - -
              -
              - - - - - - -
              -
              Message Passing Library -
              -
              -
              - - - - - - - -
              -
              - -
              -
              -
              - - - - - - diff --git a/docs/html/namespacestd.js b/docs/html/namespacestd.js deleted file mode 100644 index 9293cca1..00000000 --- a/docs/html/namespacestd.js +++ /dev/null @@ -1,5 +0,0 @@ -var namespacestd = -[ - [ "tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >", "structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html", "structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4" ], - [ "tuple_size< mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >", "structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html", null ] -]; \ No newline at end of file diff --git a/docs/html/navtreedata.js b/docs/html/navtreedata.js index 5e2a21d3..3c79bb3f 100644 --- a/docs/html/navtreedata.js +++ b/docs/html/navtreedata.js @@ -27,16 +27,6 @@ var NAVTREE = [ "Message Passing Library", "index.html", [ [ "MPL - A message passing library", "index.html", null ], [ "Data types", "md_data_types.html", null ], - [ "Namespaces", "namespaces.html", [ - [ "Namespace List", "namespaces.html", "namespaces_dup" ], - [ "Namespace Members", "namespacemembers.html", [ - [ "All", "namespacemembers.html", null ], - [ "Functions", "namespacemembers_func.html", null ], - [ "Variables", "namespacemembers_vars.html", null ], - [ "Typedefs", "namespacemembers_type.html", null ], - [ "Enumerations", "namespacemembers_enum.html", null ] - ] ] - ] ], [ "Classes", "annotated.html", [ [ "Class List", "annotated.html", "annotated_dup" ], [ "Class Index", "classes.html", null ], @@ -57,21 +47,12 @@ var NAVTREE = var NAVTREEINDEX = [ "annotated.html", -"classmpl_1_1cartesian__communicator.html#a753e8742d27ff29a660b07ee0b90b69e", -"classmpl_1_1cartesian__communicator_1_1dimensions.html#aa77b8602f4cfcf88b8ac53ecf548e2ed", -"classmpl_1_1communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84", -"classmpl_1_1communicator.html#af786635362fca5a0f915771332383589", -"classmpl_1_1distributed__graph__communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c", -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a16981b82ed0e23bc5ee44294fec1b4af", -"classmpl_1_1graph__communicator.html#a192fabbdbac09436fab92943148c5185", -"classmpl_1_1graph__communicator.html#ac4b1db52070739de82b25f972b9e6996", -"classmpl_1_1heterogeneous__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f", -"classmpl_1_1impl_1_1topology__communicator.html#a0e6459ad572cb1a69cb149df1871f2c6", -"classmpl_1_1impl_1_1topology__communicator.html#abdb6d8fc8a9aafabf50b96275f09775d", -"classmpl_1_1invalid__dim.html#a35fcdedad1a82a8df4961ec9f8c2b13f", -"classmpl_1_1local__grid.html#a6be0b3c4b9aced8db5d1a250a722a4bf", -"classmpl_1_1strided__vector__layout.html#aa391a934f031693cf985dcd1c675d8e4", -"namespacempl.html#a50a0f0b35e2150b88de70497e424ab4c" +"classmpl_1_1cartesian__communicator_1_1included__tags.html#a949beacb76cdab143f823228f22cbf47", +"classmpl_1_1distributed__graph__communicator.html#a14ad784ff91391983f667a5cadbfe367", +"classmpl_1_1empty__layout.html#a80713f15de3244b019294ee277c8c650", +"classmpl_1_1group.html#ac54706f36382139b24b24a0311e0763b", +"classmpl_1_1impl_1_1topology__communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47", +"classmpl_1_1strided__vector__layout.html#a4b0e56adef2f212d061f971b2ecafd0a" ]; var SYNCONMSG = 'click to disable panel synchronisation'; diff --git a/docs/html/navtreeindex0.js b/docs/html/navtreeindex0.js index d896cf96..887b1719 100644 --- a/docs/html/navtreeindex0.js +++ b/docs/html/navtreeindex0.js @@ -1,253 +1,253 @@ var NAVTREEINDEX0 = { -"annotated.html":[3,0], -"arrays_8cc-example.html":[4,0], -"blocking_8cc-example.html":[4,1], -"blocking_vector_8cc-example.html":[4,2], -"classes.html":[3,1], -"classmpl_1_1absolute__data.html":[3,0,0,1], -"classmpl_1_1absolute__data.html":[2,0,0,2], -"classmpl_1_1absolute__data_3_01_t_01_5_01_4.html":[3,0,0,3], -"classmpl_1_1absolute__data_3_01_t_01_5_01_4.html":[2,0,0,4], -"classmpl_1_1absolute__data_3_01_t_01_5_01_4.html#a345f190da284e84ef033bec2677fdd5f":[3,0,0,3,0], -"classmpl_1_1absolute__data_3_01_t_01_5_01_4.html#a345f190da284e84ef033bec2677fdd5f":[2,0,0,4,0], -"classmpl_1_1absolute__data_3_01_t_01_5_01_4.html#ac0dc61784adeaeaf328f741871add748":[3,0,0,3,1], -"classmpl_1_1absolute__data_3_01_t_01_5_01_4.html#ac0dc61784adeaeaf328f741871add748":[2,0,0,4,1], -"classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html":[2,0,0,3], -"classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html":[3,0,0,2], -"classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html#a345f190da284e84ef033bec2677fdd5f":[2,0,0,3,0], -"classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html#a345f190da284e84ef033bec2677fdd5f":[3,0,0,2,0], -"classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html#a8f6bbd313a30534934c9a4004d1d3f0f":[2,0,0,3,1], -"classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html#a8f6bbd313a30534934c9a4004d1d3f0f":[3,0,0,2,1], -"classmpl_1_1base__struct__builder.html":[2,0,0,5], -"classmpl_1_1base__struct__builder.html":[3,0,0,4], -"classmpl_1_1base__struct__builder.html#a3138dac289f89c80ea2e7f0467f7a7c3":[3,0,0,4,0], -"classmpl_1_1base__struct__builder.html#a3138dac289f89c80ea2e7f0467f7a7c3":[2,0,0,5,0], -"classmpl_1_1base__struct__builder.html#a89fee93a94ed5fe7d423733cb3ba4224":[2,0,0,5,1], -"classmpl_1_1base__struct__builder.html#a89fee93a94ed5fe7d423733cb3ba4224":[3,0,0,4,1], -"classmpl_1_1base__struct__builder.html#adff83dea1d51c8281fbf5ca3717206fa":[2,0,0,5,2], -"classmpl_1_1base__struct__builder.html#adff83dea1d51c8281fbf5ca3717206fa":[3,0,0,4,2], -"classmpl_1_1bsend__buffer.html":[2,0,0,9], -"classmpl_1_1bsend__buffer.html":[3,0,0,8], -"classmpl_1_1bsend__buffer.html#a550e637a57ab5a1db036b6da63a488b9":[3,0,0,8,4], -"classmpl_1_1bsend__buffer.html#a550e637a57ab5a1db036b6da63a488b9":[2,0,0,9,4], -"classmpl_1_1bsend__buffer.html#a67db6581e3a0f2cc46a3ab9ab2b9a571":[2,0,0,9,1], -"classmpl_1_1bsend__buffer.html#a67db6581e3a0f2cc46a3ab9ab2b9a571":[3,0,0,8,1], -"classmpl_1_1bsend__buffer.html#a8e4d57e9746570efa124e919cd0de1d2":[3,0,0,8,6], -"classmpl_1_1bsend__buffer.html#a8e4d57e9746570efa124e919cd0de1d2":[2,0,0,9,6], -"classmpl_1_1bsend__buffer.html#a934b4eb83876f5cca25426fce5ce9d38":[3,0,0,8,3], -"classmpl_1_1bsend__buffer.html#a934b4eb83876f5cca25426fce5ce9d38":[2,0,0,9,3], -"classmpl_1_1bsend__buffer.html#aa14cb912c156e9dc34934131071163b7":[3,0,0,8,5], -"classmpl_1_1bsend__buffer.html#aa14cb912c156e9dc34934131071163b7":[2,0,0,9,5], -"classmpl_1_1bsend__buffer.html#aba791f693bf2109841329467cc7fd2ff":[3,0,0,8,0], -"classmpl_1_1bsend__buffer.html#aba791f693bf2109841329467cc7fd2ff":[2,0,0,9,0], -"classmpl_1_1bsend__buffer.html#adde2469450f68ee1004d4abe9db9dff8":[3,0,0,8,2], -"classmpl_1_1bsend__buffer.html#adde2469450f68ee1004d4abe9db9dff8":[2,0,0,9,2], -"classmpl_1_1cartesian__communicator.html":[3,0,0,9], -"classmpl_1_1cartesian__communicator.html":[2,0,0,10], -"classmpl_1_1cartesian__communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09":[2,0,0,10,16], -"classmpl_1_1cartesian__communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09":[3,0,0,9,16], -"classmpl_1_1cartesian__communicator.html#a031345325782266cecb521469e42d8c3":[3,0,0,9,125], -"classmpl_1_1cartesian__communicator.html#a031345325782266cecb521469e42d8c3":[2,0,0,10,125], -"classmpl_1_1cartesian__communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69":[3,0,0,9,100], -"classmpl_1_1cartesian__communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69":[2,0,0,10,100], -"classmpl_1_1cartesian__communicator.html#a03afcae482e770e40ca5df7ae77b29c6":[3,0,0,9,143], -"classmpl_1_1cartesian__communicator.html#a03afcae482e770e40ca5df7ae77b29c6":[2,0,0,10,143], -"classmpl_1_1cartesian__communicator.html#a03d88ad3aa943dc51578259c03b0b695":[2,0,0,10,156], -"classmpl_1_1cartesian__communicator.html#a03d88ad3aa943dc51578259c03b0b695":[3,0,0,9,156], -"classmpl_1_1cartesian__communicator.html#a04b09e9b3cf996574d651ed195d462d0":[2,0,0,10,54], -"classmpl_1_1cartesian__communicator.html#a04b09e9b3cf996574d651ed195d462d0":[3,0,0,9,54], -"classmpl_1_1cartesian__communicator.html#a05ed2a65531e978c766f9af918f5e5a3":[2,0,0,10,24], -"classmpl_1_1cartesian__communicator.html#a05ed2a65531e978c766f9af918f5e5a3":[3,0,0,9,24], -"classmpl_1_1cartesian__communicator.html#a06525ff878eb073c02dc0bef285f06ac":[2,0,0,10,109], -"classmpl_1_1cartesian__communicator.html#a06525ff878eb073c02dc0bef285f06ac":[3,0,0,9,109], -"classmpl_1_1cartesian__communicator.html#a068c77bb2536523c2bcbeb4d3d8efc7b":[3,0,0,9,92], -"classmpl_1_1cartesian__communicator.html#a068c77bb2536523c2bcbeb4d3d8efc7b":[2,0,0,10,92], -"classmpl_1_1cartesian__communicator.html#a07591e9922db9239a75ab1b6c7b70f11":[2,0,0,10,199], -"classmpl_1_1cartesian__communicator.html#a07591e9922db9239a75ab1b6c7b70f11":[3,0,0,9,199], -"classmpl_1_1cartesian__communicator.html#a0a2866d44cee859fc064e2e32a6710d7":[2,0,0,10,18], -"classmpl_1_1cartesian__communicator.html#a0a2866d44cee859fc064e2e32a6710d7":[3,0,0,9,18], -"classmpl_1_1cartesian__communicator.html#a0be8c91aaa5cde91fcaa15dcba18902a":[2,0,0,10,6], -"classmpl_1_1cartesian__communicator.html#a0be8c91aaa5cde91fcaa15dcba18902a":[3,0,0,9,6], -"classmpl_1_1cartesian__communicator.html#a0c9fb786a1e4e458f11b73450f503b08":[3,0,0,9,10], -"classmpl_1_1cartesian__communicator.html#a0c9fb786a1e4e458f11b73450f503b08":[2,0,0,10,10], -"classmpl_1_1cartesian__communicator.html#a0ca545be8c199264a127b16180450162":[2,0,0,10,158], -"classmpl_1_1cartesian__communicator.html#a0ca545be8c199264a127b16180450162":[3,0,0,9,158], -"classmpl_1_1cartesian__communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3":[3,0,0,9,15], -"classmpl_1_1cartesian__communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3":[2,0,0,10,15], -"classmpl_1_1cartesian__communicator.html#a0e6459ad572cb1a69cb149df1871f2c6":[2,0,0,10,107], -"classmpl_1_1cartesian__communicator.html#a0e6459ad572cb1a69cb149df1871f2c6":[3,0,0,9,107], -"classmpl_1_1cartesian__communicator.html#a0e7776c9ef670b685701dfd197b76912":[3,0,0,9,21], -"classmpl_1_1cartesian__communicator.html#a0e7776c9ef670b685701dfd197b76912":[2,0,0,10,21], -"classmpl_1_1cartesian__communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3":[2,0,0,10,101], -"classmpl_1_1cartesian__communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3":[3,0,0,9,101], -"classmpl_1_1cartesian__communicator.html#a100f19741ccecda229eb1bb6659c1dd8":[2,0,0,10,195], -"classmpl_1_1cartesian__communicator.html#a100f19741ccecda229eb1bb6659c1dd8":[3,0,0,9,195], -"classmpl_1_1cartesian__communicator.html#a14ad784ff91391983f667a5cadbfe367":[2,0,0,10,105], -"classmpl_1_1cartesian__communicator.html#a14ad784ff91391983f667a5cadbfe367":[3,0,0,9,105], -"classmpl_1_1cartesian__communicator.html#a14b2306de71e02b0390c564ff6ba7c21":[3,0,0,9,75], -"classmpl_1_1cartesian__communicator.html#a14b2306de71e02b0390c564ff6ba7c21":[2,0,0,10,75], -"classmpl_1_1cartesian__communicator.html#a153a492a90432d228638e2548b2a65b5":[2,0,0,10,149], -"classmpl_1_1cartesian__communicator.html#a153a492a90432d228638e2548b2a65b5":[3,0,0,9,149], -"classmpl_1_1cartesian__communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f":[2,0,0,10,196], -"classmpl_1_1cartesian__communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f":[3,0,0,9,196], -"classmpl_1_1cartesian__communicator.html#a17526ad519286bf2fa81a3701c0afe03":[3,0,0,9,203], -"classmpl_1_1cartesian__communicator.html#a17526ad519286bf2fa81a3701c0afe03":[2,0,0,10,203], -"classmpl_1_1cartesian__communicator.html#a179246280657f80aa624f7ebcb8ac9a4":[3,0,0,9,134], -"classmpl_1_1cartesian__communicator.html#a179246280657f80aa624f7ebcb8ac9a4":[2,0,0,10,134], -"classmpl_1_1cartesian__communicator.html#a18dcf5985832334e0571e00a45d93d73":[2,0,0,10,42], -"classmpl_1_1cartesian__communicator.html#a18dcf5985832334e0571e00a45d93d73":[3,0,0,9,42], -"classmpl_1_1cartesian__communicator.html#a192fabbdbac09436fab92943148c5185":[2,0,0,10,85], -"classmpl_1_1cartesian__communicator.html#a192fabbdbac09436fab92943148c5185":[3,0,0,9,85], -"classmpl_1_1cartesian__communicator.html#a1948c90e2873f0db6b7fc32f7240e80a":[2,0,0,10,123], -"classmpl_1_1cartesian__communicator.html#a1948c90e2873f0db6b7fc32f7240e80a":[3,0,0,9,123], -"classmpl_1_1cartesian__communicator.html#a197f9833a6c4685a2368b7bea2a60cd8":[2,0,0,10,169], -"classmpl_1_1cartesian__communicator.html#a197f9833a6c4685a2368b7bea2a60cd8":[3,0,0,9,169], -"classmpl_1_1cartesian__communicator.html#a19912b0013f991bbebf2ef46fcb93c70":[3,0,0,9,112], -"classmpl_1_1cartesian__communicator.html#a19912b0013f991bbebf2ef46fcb93c70":[2,0,0,10,112], -"classmpl_1_1cartesian__communicator.html#a1a2fbf1a89b606c316790a29a6c24344":[3,0,0,9,12], -"classmpl_1_1cartesian__communicator.html#a1a2fbf1a89b606c316790a29a6c24344":[2,0,0,10,12], -"classmpl_1_1cartesian__communicator.html#a1b8b3f2f9c7f6c6c5f009d47c52f7919":[3,0,0,9,197], -"classmpl_1_1cartesian__communicator.html#a1b8b3f2f9c7f6c6c5f009d47c52f7919":[2,0,0,10,197], -"classmpl_1_1cartesian__communicator.html#a1bf177485606687353cd50bc5a3b3c59":[3,0,0,9,78], -"classmpl_1_1cartesian__communicator.html#a1bf177485606687353cd50bc5a3b3c59":[2,0,0,10,78], -"classmpl_1_1cartesian__communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644":[3,0,0,9,192], -"classmpl_1_1cartesian__communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644":[2,0,0,10,192], -"classmpl_1_1cartesian__communicator.html#a1f45f3b4b5afa504963d30203bebcd67":[3,0,0,9,186], -"classmpl_1_1cartesian__communicator.html#a1f45f3b4b5afa504963d30203bebcd67":[2,0,0,10,186], -"classmpl_1_1cartesian__communicator.html#a20505014d3a5ac58a5601faee033d003":[2,0,0,10,76], -"classmpl_1_1cartesian__communicator.html#a20505014d3a5ac58a5601faee033d003":[3,0,0,9,76], -"classmpl_1_1cartesian__communicator.html#a20766ee389c97340241ff730eae49475":[2,0,0,10,79], -"classmpl_1_1cartesian__communicator.html#a20766ee389c97340241ff730eae49475":[3,0,0,9,79], -"classmpl_1_1cartesian__communicator.html#a20c2142532726d3a3f25e4eb3293fd4c":[2,0,0,10,160], -"classmpl_1_1cartesian__communicator.html#a20c2142532726d3a3f25e4eb3293fd4c":[3,0,0,9,160], -"classmpl_1_1cartesian__communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb":[3,0,0,9,37], -"classmpl_1_1cartesian__communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb":[2,0,0,10,37], -"classmpl_1_1cartesian__communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a":[2,0,0,10,187], -"classmpl_1_1cartesian__communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a":[3,0,0,9,187], -"classmpl_1_1cartesian__communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe":[2,0,0,10,11], -"classmpl_1_1cartesian__communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe":[3,0,0,9,11], -"classmpl_1_1cartesian__communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627":[2,0,0,10,170], -"classmpl_1_1cartesian__communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627":[3,0,0,9,170], -"classmpl_1_1cartesian__communicator.html#a2a901501dfe4dad53249a142a6c61f8a":[3,0,0,9,188], -"classmpl_1_1cartesian__communicator.html#a2a901501dfe4dad53249a142a6c61f8a":[2,0,0,10,188], -"classmpl_1_1cartesian__communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f":[2,0,0,10,133], -"classmpl_1_1cartesian__communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f":[3,0,0,9,133], -"classmpl_1_1cartesian__communicator.html#a32881aa49f5e9c71792e98629a131822":[3,0,0,9,53], -"classmpl_1_1cartesian__communicator.html#a32881aa49f5e9c71792e98629a131822":[2,0,0,10,53], -"classmpl_1_1cartesian__communicator.html#a34c527f23af855f716bf00a2658c9436":[2,0,0,10,74], -"classmpl_1_1cartesian__communicator.html#a34c527f23af855f716bf00a2658c9436":[3,0,0,9,74], -"classmpl_1_1cartesian__communicator.html#a36031fd4a0c2ed7bab527e0a4663971f":[3,0,0,9,184], -"classmpl_1_1cartesian__communicator.html#a36031fd4a0c2ed7bab527e0a4663971f":[2,0,0,10,184], -"classmpl_1_1cartesian__communicator.html#a377702be1b30166ad458fcef11b2c239":[3,0,0,9,141], -"classmpl_1_1cartesian__communicator.html#a377702be1b30166ad458fcef11b2c239":[2,0,0,10,141], -"classmpl_1_1cartesian__communicator.html#a39c2f12ebc86e0930266a60ffecea926":[2,0,0,10,153], -"classmpl_1_1cartesian__communicator.html#a39c2f12ebc86e0930266a60ffecea926":[3,0,0,9,153], -"classmpl_1_1cartesian__communicator.html#a3b4d541cab8706ae5a4a699aef0662d3":[2,0,0,10,183], -"classmpl_1_1cartesian__communicator.html#a3b4d541cab8706ae5a4a699aef0662d3":[3,0,0,9,183], -"classmpl_1_1cartesian__communicator.html#a3f433b69dace132e01bea64624fff4b3":[3,0,0,9,204], -"classmpl_1_1cartesian__communicator.html#a3f433b69dace132e01bea64624fff4b3":[2,0,0,10,204], -"classmpl_1_1cartesian__communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416":[2,0,0,10,119], -"classmpl_1_1cartesian__communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416":[3,0,0,9,119], -"classmpl_1_1cartesian__communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc":[2,0,0,10,103], -"classmpl_1_1cartesian__communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc":[3,0,0,9,103], -"classmpl_1_1cartesian__communicator.html#a3fbbc822e36ea95e865a7b37ac0ad984":[3,0,0,9,99], -"classmpl_1_1cartesian__communicator.html#a3fbbc822e36ea95e865a7b37ac0ad984":[2,0,0,10,99], -"classmpl_1_1cartesian__communicator.html#a404d0186a6e9cbbac0e79ae320eeb382":[2,0,0,10,148], -"classmpl_1_1cartesian__communicator.html#a404d0186a6e9cbbac0e79ae320eeb382":[3,0,0,9,148], -"classmpl_1_1cartesian__communicator.html#a417ae78d850eca389dcc1a7ed5a4804f":[3,0,0,9,152], -"classmpl_1_1cartesian__communicator.html#a417ae78d850eca389dcc1a7ed5a4804f":[2,0,0,10,152], -"classmpl_1_1cartesian__communicator.html#a43c7b3d19a5af4ba0f30e40045a2e459":[3,0,0,9,138], -"classmpl_1_1cartesian__communicator.html#a43c7b3d19a5af4ba0f30e40045a2e459":[2,0,0,10,138], -"classmpl_1_1cartesian__communicator.html#a445e05af65cdc53b7a981d4884a4c3b8":[2,0,0,10,87], -"classmpl_1_1cartesian__communicator.html#a445e05af65cdc53b7a981d4884a4c3b8":[3,0,0,9,87], -"classmpl_1_1cartesian__communicator.html#a45585975b4b7cc0795a02abf6494963b":[2,0,0,10,46], -"classmpl_1_1cartesian__communicator.html#a45585975b4b7cc0795a02abf6494963b":[3,0,0,9,46], -"classmpl_1_1cartesian__communicator.html#a455d8703c09913eebe31cd360351c308":[2,0,0,10,142], -"classmpl_1_1cartesian__communicator.html#a455d8703c09913eebe31cd360351c308":[3,0,0,9,142], -"classmpl_1_1cartesian__communicator.html#a46e8797b907b9539b2ee90713a675e5c":[3,0,0,9,130], -"classmpl_1_1cartesian__communicator.html#a46e8797b907b9539b2ee90713a675e5c":[2,0,0,10,130], -"classmpl_1_1cartesian__communicator.html#a477820ee73599e311a6e73ef06fbdf33":[3,0,0,9,185], -"classmpl_1_1cartesian__communicator.html#a477820ee73599e311a6e73ef06fbdf33":[2,0,0,10,185], -"classmpl_1_1cartesian__communicator.html#a4800098a181afa4eff436bdfe9c11a44":[3,0,0,9,147], -"classmpl_1_1cartesian__communicator.html#a4800098a181afa4eff436bdfe9c11a44":[2,0,0,10,147], -"classmpl_1_1cartesian__communicator.html#a480ef5ac8533cd47ef55b04454baddca":[2,0,0,10,173], -"classmpl_1_1cartesian__communicator.html#a480ef5ac8533cd47ef55b04454baddca":[3,0,0,9,173], -"classmpl_1_1cartesian__communicator.html#a494c7c1849713e45d99d901b31250b35":[2,0,0,10,159], -"classmpl_1_1cartesian__communicator.html#a494c7c1849713e45d99d901b31250b35":[3,0,0,9,159], -"classmpl_1_1cartesian__communicator.html#a4a29592502142845c3bb0031221189a3":[3,0,0,9,81], -"classmpl_1_1cartesian__communicator.html#a4a29592502142845c3bb0031221189a3":[2,0,0,10,81], -"classmpl_1_1cartesian__communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21":[2,0,0,10,122], -"classmpl_1_1cartesian__communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21":[3,0,0,9,122], -"classmpl_1_1cartesian__communicator.html#a4ac75dc1695c441e9e8faa185a458cc3":[2,0,0,10,38], -"classmpl_1_1cartesian__communicator.html#a4ac75dc1695c441e9e8faa185a458cc3":[3,0,0,9,38], -"classmpl_1_1cartesian__communicator.html#a4cff38dd56b3d53992babac77cbefa8d":[2,0,0,10,68], -"classmpl_1_1cartesian__communicator.html#a4cff38dd56b3d53992babac77cbefa8d":[3,0,0,9,68], -"classmpl_1_1cartesian__communicator.html#a4db43a46f468c60e84b35f95577ff0f4":[2,0,0,10,27], -"classmpl_1_1cartesian__communicator.html#a4db43a46f468c60e84b35f95577ff0f4":[3,0,0,9,27], -"classmpl_1_1cartesian__communicator.html#a4de1ecacd035af3dca830995098a2f49":[3,0,0,9,110], -"classmpl_1_1cartesian__communicator.html#a4de1ecacd035af3dca830995098a2f49":[2,0,0,10,110], -"classmpl_1_1cartesian__communicator.html#a5314e5dc5b35f952dba239b8f03be330":[3,0,0,9,36], -"classmpl_1_1cartesian__communicator.html#a5314e5dc5b35f952dba239b8f03be330":[2,0,0,10,36], -"classmpl_1_1cartesian__communicator.html#a54da0c73668349841c941c53c6acff81":[2,0,0,10,145], -"classmpl_1_1cartesian__communicator.html#a54da0c73668349841c941c53c6acff81":[3,0,0,9,145], -"classmpl_1_1cartesian__communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84":[2,0,0,10,13], -"classmpl_1_1cartesian__communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84":[3,0,0,9,13], -"classmpl_1_1cartesian__communicator.html#a55feab940e9c72241215918199931936":[2,0,0,10,19], -"classmpl_1_1cartesian__communicator.html#a55feab940e9c72241215918199931936":[3,0,0,9,19], -"classmpl_1_1cartesian__communicator.html#a55fef351e8bb5d3062d25683cb404c9d":[2,0,0,10,168], -"classmpl_1_1cartesian__communicator.html#a55fef351e8bb5d3062d25683cb404c9d":[3,0,0,9,168], -"classmpl_1_1cartesian__communicator.html#a5664d9591456924a7343082445bc8452":[2,0,0,10,70], -"classmpl_1_1cartesian__communicator.html#a5664d9591456924a7343082445bc8452":[3,0,0,9,70], -"classmpl_1_1cartesian__communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7":[2,0,0,10,88], -"classmpl_1_1cartesian__communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7":[3,0,0,9,88], -"classmpl_1_1cartesian__communicator.html#a58b6d65e9351b61c493967718f550614":[3,0,0,9,127], -"classmpl_1_1cartesian__communicator.html#a58b6d65e9351b61c493967718f550614":[2,0,0,10,127], -"classmpl_1_1cartesian__communicator.html#a5a80517f1de86265d2a863a7c1fd5032":[3,0,0,9,178], -"classmpl_1_1cartesian__communicator.html#a5a80517f1de86265d2a863a7c1fd5032":[2,0,0,10,178], -"classmpl_1_1cartesian__communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c":[3,0,0,9,83], -"classmpl_1_1cartesian__communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c":[2,0,0,10,83], -"classmpl_1_1cartesian__communicator.html#a5ce91750a7c77edf43e53ac88e4e8524":[2,0,0,10,61], -"classmpl_1_1cartesian__communicator.html#a5ce91750a7c77edf43e53ac88e4e8524":[3,0,0,9,61], -"classmpl_1_1cartesian__communicator.html#a5ceb8a7771930409a0b7c54042b49866":[2,0,0,10,98], -"classmpl_1_1cartesian__communicator.html#a5ceb8a7771930409a0b7c54042b49866":[3,0,0,9,98], -"classmpl_1_1cartesian__communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec":[2,0,0,10,28], -"classmpl_1_1cartesian__communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec":[3,0,0,9,28], -"classmpl_1_1cartesian__communicator.html#a601c251b4c10c6797af3cd741dea4d55":[2,0,0,10,55], -"classmpl_1_1cartesian__communicator.html#a601c251b4c10c6797af3cd741dea4d55":[3,0,0,9,55], -"classmpl_1_1cartesian__communicator.html#a6149ac444daf9efa0818c1ad86df03f4":[2,0,0,10,193], -"classmpl_1_1cartesian__communicator.html#a6149ac444daf9efa0818c1ad86df03f4":[3,0,0,9,193], -"classmpl_1_1cartesian__communicator.html#a61c69fd52a576be43b7331536f54b73f":[3,0,0,9,124], -"classmpl_1_1cartesian__communicator.html#a61c69fd52a576be43b7331536f54b73f":[2,0,0,10,124], -"classmpl_1_1cartesian__communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2":[2,0,0,10,31], -"classmpl_1_1cartesian__communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2":[3,0,0,9,31], -"classmpl_1_1cartesian__communicator.html#a636784ef8a1e076a303e3e6279de1e7d":[2,0,0,10,165], -"classmpl_1_1cartesian__communicator.html#a636784ef8a1e076a303e3e6279de1e7d":[3,0,0,9,165], -"classmpl_1_1cartesian__communicator.html#a65311bd6bde1b8de5b8acf9ae902104a":[3,0,0,9,96], -"classmpl_1_1cartesian__communicator.html#a65311bd6bde1b8de5b8acf9ae902104a":[2,0,0,10,96], -"classmpl_1_1cartesian__communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3":[3,0,0,9,14], -"classmpl_1_1cartesian__communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3":[2,0,0,10,14], -"classmpl_1_1cartesian__communicator.html#a67f541a36dee046cc12d15d9133930b7":[2,0,0,10,129], -"classmpl_1_1cartesian__communicator.html#a67f541a36dee046cc12d15d9133930b7":[3,0,0,9,129], -"classmpl_1_1cartesian__communicator.html#a68996ab5379c9a104572b804633d869e":[2,0,0,10,67], -"classmpl_1_1cartesian__communicator.html#a68996ab5379c9a104572b804633d869e":[3,0,0,9,67], -"classmpl_1_1cartesian__communicator.html#a693590693b8621565e94abdd6763d5b6":[3,0,0,9,155], -"classmpl_1_1cartesian__communicator.html#a693590693b8621565e94abdd6763d5b6":[2,0,0,10,155], -"classmpl_1_1cartesian__communicator.html#a69ebec18f9d55bc8e2b6951f97855068":[2,0,0,10,73], -"classmpl_1_1cartesian__communicator.html#a69ebec18f9d55bc8e2b6951f97855068":[3,0,0,9,73], -"classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588":[3,0,0,9,4], -"classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588":[2,0,0,10,4], -"classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588a99f78c54130e752954404fff0707dcbd":[3,0,0,9,4,1], -"classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588a99f78c54130e752954404fff0707dcbd":[2,0,0,10,4,1], -"classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588ac2413b3d6b0162ee66c1ee1a90828706":[2,0,0,10,4,0], -"classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588ac2413b3d6b0162ee66c1ee1a90828706":[3,0,0,9,4,0], -"classmpl_1_1cartesian__communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f":[2,0,0,10,86], -"classmpl_1_1cartesian__communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f":[3,0,0,9,86], -"classmpl_1_1cartesian__communicator.html#a719512973bc590402ac30b10e5227d2b":[3,0,0,9,30], -"classmpl_1_1cartesian__communicator.html#a719512973bc590402ac30b10e5227d2b":[2,0,0,10,30], -"classmpl_1_1cartesian__communicator.html#a72d2639f200e5a36f1f81df5c499f06f":[3,0,0,9,118], -"classmpl_1_1cartesian__communicator.html#a72d2639f200e5a36f1f81df5c499f06f":[2,0,0,10,118], -"classmpl_1_1cartesian__communicator.html#a73df8f569865237bc58e2445c7d07742":[3,0,0,9,58], -"classmpl_1_1cartesian__communicator.html#a73df8f569865237bc58e2445c7d07742":[2,0,0,10,58], -"classmpl_1_1cartesian__communicator.html#a753e8742d27ff29a660b07ee0b90b69e":[3,0,0,9,59] +"annotated.html":[2,0], +"arrays_8cc-example.html":[3,0], +"blocking_8cc-example.html":[3,1], +"blocking_vector_8cc-example.html":[3,2], +"classes.html":[2,1], +"classmpl_1_1absolute__data.html":[2,0,0,1], +"classmpl_1_1absolute__data_3_01_t_01_5_01_4.html":[2,0,0,3], +"classmpl_1_1absolute__data_3_01_t_01_5_01_4.html#ac0dc61784adeaeaf328f741871add748":[2,0,0,3,0], +"classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html":[2,0,0,2], +"classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html#a8f6bbd313a30534934c9a4004d1d3f0f":[2,0,0,2,0], +"classmpl_1_1base__struct__builder.html":[2,0,0,4], +"classmpl_1_1bsend__buffer.html":[2,0,0,8], +"classmpl_1_1bsend__buffer.html#a550e637a57ab5a1db036b6da63a488b9":[2,0,0,8,4], +"classmpl_1_1bsend__buffer.html#a67db6581e3a0f2cc46a3ab9ab2b9a571":[2,0,0,8,1], +"classmpl_1_1bsend__buffer.html#a8e4d57e9746570efa124e919cd0de1d2":[2,0,0,8,6], +"classmpl_1_1bsend__buffer.html#a934b4eb83876f5cca25426fce5ce9d38":[2,0,0,8,3], +"classmpl_1_1bsend__buffer.html#aa14cb912c156e9dc34934131071163b7":[2,0,0,8,5], +"classmpl_1_1bsend__buffer.html#aba791f693bf2109841329467cc7fd2ff":[2,0,0,8,0], +"classmpl_1_1bsend__buffer.html#adde2469450f68ee1004d4abe9db9dff8":[2,0,0,8,2], +"classmpl_1_1cartesian__communicator.html":[2,0,0,9], +"classmpl_1_1cartesian__communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09":[2,0,0,9,16], +"classmpl_1_1cartesian__communicator.html#a031345325782266cecb521469e42d8c3":[2,0,0,9,125], +"classmpl_1_1cartesian__communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69":[2,0,0,9,100], +"classmpl_1_1cartesian__communicator.html#a03afcae482e770e40ca5df7ae77b29c6":[2,0,0,9,143], +"classmpl_1_1cartesian__communicator.html#a03d88ad3aa943dc51578259c03b0b695":[2,0,0,9,156], +"classmpl_1_1cartesian__communicator.html#a04b09e9b3cf996574d651ed195d462d0":[2,0,0,9,54], +"classmpl_1_1cartesian__communicator.html#a05ed2a65531e978c766f9af918f5e5a3":[2,0,0,9,24], +"classmpl_1_1cartesian__communicator.html#a06525ff878eb073c02dc0bef285f06ac":[2,0,0,9,109], +"classmpl_1_1cartesian__communicator.html#a068c77bb2536523c2bcbeb4d3d8efc7b":[2,0,0,9,92], +"classmpl_1_1cartesian__communicator.html#a07591e9922db9239a75ab1b6c7b70f11":[2,0,0,9,199], +"classmpl_1_1cartesian__communicator.html#a0a2866d44cee859fc064e2e32a6710d7":[2,0,0,9,18], +"classmpl_1_1cartesian__communicator.html#a0be8c91aaa5cde91fcaa15dcba18902a":[2,0,0,9,6], +"classmpl_1_1cartesian__communicator.html#a0c9fb786a1e4e458f11b73450f503b08":[2,0,0,9,10], +"classmpl_1_1cartesian__communicator.html#a0ca545be8c199264a127b16180450162":[2,0,0,9,158], +"classmpl_1_1cartesian__communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3":[2,0,0,9,15], +"classmpl_1_1cartesian__communicator.html#a0e6459ad572cb1a69cb149df1871f2c6":[2,0,0,9,107], +"classmpl_1_1cartesian__communicator.html#a0e7776c9ef670b685701dfd197b76912":[2,0,0,9,21], +"classmpl_1_1cartesian__communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3":[2,0,0,9,101], +"classmpl_1_1cartesian__communicator.html#a100f19741ccecda229eb1bb6659c1dd8":[2,0,0,9,195], +"classmpl_1_1cartesian__communicator.html#a14ad784ff91391983f667a5cadbfe367":[2,0,0,9,105], +"classmpl_1_1cartesian__communicator.html#a14b2306de71e02b0390c564ff6ba7c21":[2,0,0,9,75], +"classmpl_1_1cartesian__communicator.html#a153a492a90432d228638e2548b2a65b5":[2,0,0,9,149], +"classmpl_1_1cartesian__communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f":[2,0,0,9,196], +"classmpl_1_1cartesian__communicator.html#a17526ad519286bf2fa81a3701c0afe03":[2,0,0,9,203], +"classmpl_1_1cartesian__communicator.html#a179246280657f80aa624f7ebcb8ac9a4":[2,0,0,9,134], +"classmpl_1_1cartesian__communicator.html#a18dcf5985832334e0571e00a45d93d73":[2,0,0,9,42], +"classmpl_1_1cartesian__communicator.html#a192fabbdbac09436fab92943148c5185":[2,0,0,9,85], +"classmpl_1_1cartesian__communicator.html#a1948c90e2873f0db6b7fc32f7240e80a":[2,0,0,9,123], +"classmpl_1_1cartesian__communicator.html#a197f9833a6c4685a2368b7bea2a60cd8":[2,0,0,9,169], +"classmpl_1_1cartesian__communicator.html#a19912b0013f991bbebf2ef46fcb93c70":[2,0,0,9,112], +"classmpl_1_1cartesian__communicator.html#a1a2fbf1a89b606c316790a29a6c24344":[2,0,0,9,12], +"classmpl_1_1cartesian__communicator.html#a1b8b3f2f9c7f6c6c5f009d47c52f7919":[2,0,0,9,197], +"classmpl_1_1cartesian__communicator.html#a1bf177485606687353cd50bc5a3b3c59":[2,0,0,9,78], +"classmpl_1_1cartesian__communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644":[2,0,0,9,192], +"classmpl_1_1cartesian__communicator.html#a1f45f3b4b5afa504963d30203bebcd67":[2,0,0,9,186], +"classmpl_1_1cartesian__communicator.html#a20505014d3a5ac58a5601faee033d003":[2,0,0,9,76], +"classmpl_1_1cartesian__communicator.html#a20766ee389c97340241ff730eae49475":[2,0,0,9,79], +"classmpl_1_1cartesian__communicator.html#a20c2142532726d3a3f25e4eb3293fd4c":[2,0,0,9,160], +"classmpl_1_1cartesian__communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb":[2,0,0,9,37], +"classmpl_1_1cartesian__communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a":[2,0,0,9,187], +"classmpl_1_1cartesian__communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe":[2,0,0,9,11], +"classmpl_1_1cartesian__communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627":[2,0,0,9,170], +"classmpl_1_1cartesian__communicator.html#a2a901501dfe4dad53249a142a6c61f8a":[2,0,0,9,188], +"classmpl_1_1cartesian__communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f":[2,0,0,9,133], +"classmpl_1_1cartesian__communicator.html#a32881aa49f5e9c71792e98629a131822":[2,0,0,9,53], +"classmpl_1_1cartesian__communicator.html#a34c527f23af855f716bf00a2658c9436":[2,0,0,9,74], +"classmpl_1_1cartesian__communicator.html#a36031fd4a0c2ed7bab527e0a4663971f":[2,0,0,9,184], +"classmpl_1_1cartesian__communicator.html#a377702be1b30166ad458fcef11b2c239":[2,0,0,9,141], +"classmpl_1_1cartesian__communicator.html#a39c2f12ebc86e0930266a60ffecea926":[2,0,0,9,153], +"classmpl_1_1cartesian__communicator.html#a3b4d541cab8706ae5a4a699aef0662d3":[2,0,0,9,183], +"classmpl_1_1cartesian__communicator.html#a3f433b69dace132e01bea64624fff4b3":[2,0,0,9,204], +"classmpl_1_1cartesian__communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416":[2,0,0,9,119], +"classmpl_1_1cartesian__communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc":[2,0,0,9,103], +"classmpl_1_1cartesian__communicator.html#a3fbbc822e36ea95e865a7b37ac0ad984":[2,0,0,9,99], +"classmpl_1_1cartesian__communicator.html#a404d0186a6e9cbbac0e79ae320eeb382":[2,0,0,9,148], +"classmpl_1_1cartesian__communicator.html#a417ae78d850eca389dcc1a7ed5a4804f":[2,0,0,9,152], +"classmpl_1_1cartesian__communicator.html#a43c7b3d19a5af4ba0f30e40045a2e459":[2,0,0,9,138], +"classmpl_1_1cartesian__communicator.html#a445e05af65cdc53b7a981d4884a4c3b8":[2,0,0,9,87], +"classmpl_1_1cartesian__communicator.html#a45585975b4b7cc0795a02abf6494963b":[2,0,0,9,46], +"classmpl_1_1cartesian__communicator.html#a455d8703c09913eebe31cd360351c308":[2,0,0,9,142], +"classmpl_1_1cartesian__communicator.html#a46e8797b907b9539b2ee90713a675e5c":[2,0,0,9,130], +"classmpl_1_1cartesian__communicator.html#a477820ee73599e311a6e73ef06fbdf33":[2,0,0,9,185], +"classmpl_1_1cartesian__communicator.html#a4800098a181afa4eff436bdfe9c11a44":[2,0,0,9,147], +"classmpl_1_1cartesian__communicator.html#a480ef5ac8533cd47ef55b04454baddca":[2,0,0,9,173], +"classmpl_1_1cartesian__communicator.html#a494c7c1849713e45d99d901b31250b35":[2,0,0,9,159], +"classmpl_1_1cartesian__communicator.html#a4a29592502142845c3bb0031221189a3":[2,0,0,9,81], +"classmpl_1_1cartesian__communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21":[2,0,0,9,122], +"classmpl_1_1cartesian__communicator.html#a4ac75dc1695c441e9e8faa185a458cc3":[2,0,0,9,38], +"classmpl_1_1cartesian__communicator.html#a4cff38dd56b3d53992babac77cbefa8d":[2,0,0,9,68], +"classmpl_1_1cartesian__communicator.html#a4db43a46f468c60e84b35f95577ff0f4":[2,0,0,9,27], +"classmpl_1_1cartesian__communicator.html#a4de1ecacd035af3dca830995098a2f49":[2,0,0,9,110], +"classmpl_1_1cartesian__communicator.html#a5314e5dc5b35f952dba239b8f03be330":[2,0,0,9,36], +"classmpl_1_1cartesian__communicator.html#a54da0c73668349841c941c53c6acff81":[2,0,0,9,145], +"classmpl_1_1cartesian__communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84":[2,0,0,9,13], +"classmpl_1_1cartesian__communicator.html#a55feab940e9c72241215918199931936":[2,0,0,9,19], +"classmpl_1_1cartesian__communicator.html#a55fef351e8bb5d3062d25683cb404c9d":[2,0,0,9,168], +"classmpl_1_1cartesian__communicator.html#a5664d9591456924a7343082445bc8452":[2,0,0,9,70], +"classmpl_1_1cartesian__communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7":[2,0,0,9,88], +"classmpl_1_1cartesian__communicator.html#a58b6d65e9351b61c493967718f550614":[2,0,0,9,127], +"classmpl_1_1cartesian__communicator.html#a5a80517f1de86265d2a863a7c1fd5032":[2,0,0,9,178], +"classmpl_1_1cartesian__communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c":[2,0,0,9,83], +"classmpl_1_1cartesian__communicator.html#a5ce91750a7c77edf43e53ac88e4e8524":[2,0,0,9,61], +"classmpl_1_1cartesian__communicator.html#a5ceb8a7771930409a0b7c54042b49866":[2,0,0,9,98], +"classmpl_1_1cartesian__communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec":[2,0,0,9,28], +"classmpl_1_1cartesian__communicator.html#a601c251b4c10c6797af3cd741dea4d55":[2,0,0,9,55], +"classmpl_1_1cartesian__communicator.html#a6149ac444daf9efa0818c1ad86df03f4":[2,0,0,9,193], +"classmpl_1_1cartesian__communicator.html#a61c69fd52a576be43b7331536f54b73f":[2,0,0,9,124], +"classmpl_1_1cartesian__communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2":[2,0,0,9,31], +"classmpl_1_1cartesian__communicator.html#a636784ef8a1e076a303e3e6279de1e7d":[2,0,0,9,165], +"classmpl_1_1cartesian__communicator.html#a65311bd6bde1b8de5b8acf9ae902104a":[2,0,0,9,96], +"classmpl_1_1cartesian__communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3":[2,0,0,9,14], +"classmpl_1_1cartesian__communicator.html#a67f541a36dee046cc12d15d9133930b7":[2,0,0,9,129], +"classmpl_1_1cartesian__communicator.html#a68996ab5379c9a104572b804633d869e":[2,0,0,9,67], +"classmpl_1_1cartesian__communicator.html#a693590693b8621565e94abdd6763d5b6":[2,0,0,9,155], +"classmpl_1_1cartesian__communicator.html#a69ebec18f9d55bc8e2b6951f97855068":[2,0,0,9,73], +"classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588":[2,0,0,9,4], +"classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588a99f78c54130e752954404fff0707dcbd":[2,0,0,9,4,1], +"classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588ac2413b3d6b0162ee66c1ee1a90828706":[2,0,0,9,4,0], +"classmpl_1_1cartesian__communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f":[2,0,0,9,86], +"classmpl_1_1cartesian__communicator.html#a719512973bc590402ac30b10e5227d2b":[2,0,0,9,30], +"classmpl_1_1cartesian__communicator.html#a72d2639f200e5a36f1f81df5c499f06f":[2,0,0,9,118], +"classmpl_1_1cartesian__communicator.html#a73df8f569865237bc58e2445c7d07742":[2,0,0,9,58], +"classmpl_1_1cartesian__communicator.html#a753e8742d27ff29a660b07ee0b90b69e":[2,0,0,9,59], +"classmpl_1_1cartesian__communicator.html#a76dbca1b1f6089ee9e07e997b5d79295":[2,0,0,9,82], +"classmpl_1_1cartesian__communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0":[2,0,0,9,189], +"classmpl_1_1cartesian__communicator.html#a779f215eb82ce71764befaae9918b596":[2,0,0,9,91], +"classmpl_1_1cartesian__communicator.html#a79e5f4cd63cf9354ceedc4da193e2410":[2,0,0,9,104], +"classmpl_1_1cartesian__communicator.html#a7abdf44a7c377ba7191cb4abc6648afe":[2,0,0,9,69], +"classmpl_1_1cartesian__communicator.html#a7b672d71b83fafca8f6bf4d435331180":[2,0,0,9,39], +"classmpl_1_1cartesian__communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af":[2,0,0,9,181], +"classmpl_1_1cartesian__communicator.html#a7eddabba5f98c99db189844854690d13":[2,0,0,9,77], +"classmpl_1_1cartesian__communicator.html#a7fbc0f1d669e21a5e1dd6f2601d256b8":[2,0,0,9,8], +"classmpl_1_1cartesian__communicator.html#a82b6f15cef4c0daa6825bc699418df22":[2,0,0,9,102], +"classmpl_1_1cartesian__communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9":[2,0,0,9,44], +"classmpl_1_1cartesian__communicator.html#a871cba17f8d1891fb0613f9a23c38866":[2,0,0,9,202], +"classmpl_1_1cartesian__communicator.html#a88368d3f4d7b375825ba839746aea7dd":[2,0,0,9,23], +"classmpl_1_1cartesian__communicator.html#a89b9a55af5259f119281592b4f63f2ee":[2,0,0,9,135], +"classmpl_1_1cartesian__communicator.html#a8b5179d9d85d4768f6134ff34b1f671a":[2,0,0,9,7], +"classmpl_1_1cartesian__communicator.html#a8e43e08af5e8481049731092274aca76":[2,0,0,9,80], +"classmpl_1_1cartesian__communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b":[2,0,0,9,175], +"classmpl_1_1cartesian__communicator.html#a9319a8ed118960a716cbeba8c7ff6017":[2,0,0,9,40], +"classmpl_1_1cartesian__communicator.html#a95d5c90f2a58fe228d846942fe700645":[2,0,0,9,57], +"classmpl_1_1cartesian__communicator.html#a970647a9680c6bdc3ffbe0814b32f989":[2,0,0,9,113], +"classmpl_1_1cartesian__communicator.html#a997e3a727642f7fe7ab74a7342fa334b":[2,0,0,9,17], +"classmpl_1_1cartesian__communicator.html#a9dccde1bf10e911c3a00d1a546005e94":[2,0,0,9,94], +"classmpl_1_1cartesian__communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d":[2,0,0,9,162], +"classmpl_1_1cartesian__communicator.html#a9fbb87f9933ff071092164c9e264d817":[2,0,0,9,126], +"classmpl_1_1cartesian__communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6":[2,0,0,9,176], +"classmpl_1_1cartesian__communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5":[2,0,0,9,191], +"classmpl_1_1cartesian__communicator.html#aa2b51b89d72555ebfb1862d1de688061":[2,0,0,9,64], +"classmpl_1_1cartesian__communicator.html#aa4407a90c2f598867b36e8e557b72ec0":[2,0,0,9,167], +"classmpl_1_1cartesian__communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf":[2,0,0,9,62], +"classmpl_1_1cartesian__communicator.html#aa541e7830014dce23eb1ce5f6bcfe281":[2,0,0,9,60], +"classmpl_1_1cartesian__communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca":[2,0,0,9,166], +"classmpl_1_1cartesian__communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42":[2,0,0,9,179], +"classmpl_1_1cartesian__communicator.html#aa91aed6395fdcbb40788323a4cf45110":[2,0,0,9,90], +"classmpl_1_1cartesian__communicator.html#aaa714c0902d770205ee9cfb636f20fed":[2,0,0,9,171], +"classmpl_1_1cartesian__communicator.html#aaaf184e1efe161f33a006fc54fe0ff0b":[2,0,0,9,9], +"classmpl_1_1cartesian__communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f":[2,0,0,9,190], +"classmpl_1_1cartesian__communicator.html#aad369f0de0b51dc3cf7992ed26c0799d":[2,0,0,9,72], +"classmpl_1_1cartesian__communicator.html#aad40f322ef427d759fe699b1318c3103":[2,0,0,9,93], +"classmpl_1_1cartesian__communicator.html#aadb9f14a7a9f9bd44eae7832daed895d":[2,0,0,9,65], +"classmpl_1_1cartesian__communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2":[2,0,0,9,131], +"classmpl_1_1cartesian__communicator.html#aae3643fa3e833c9dfb4eaf871235aed3":[2,0,0,9,164], +"classmpl_1_1cartesian__communicator.html#aaf647eec3afe83caf2afafe5a82b405a":[2,0,0,9,128], +"classmpl_1_1cartesian__communicator.html#aafb144ba1a5494f2a21de28c50b3ab91":[2,0,0,9,34], +"classmpl_1_1cartesian__communicator.html#aba77e505c9c19f3c6acdf10d4bc9fe16":[2,0,0,9,95], +"classmpl_1_1cartesian__communicator.html#aba80b0971e6f8d2f04d1454f389833be":[2,0,0,9,182], +"classmpl_1_1cartesian__communicator.html#abb0001ba1ee4c2fbd53038bde821e647":[2,0,0,9,115], +"classmpl_1_1cartesian__communicator.html#abb3d36d582c7a469b5e49dca53c4f952":[2,0,0,9,49], +"classmpl_1_1cartesian__communicator.html#abbc79395f9583143b1427c2e3f1c6637":[2,0,0,9,154], +"classmpl_1_1cartesian__communicator.html#abdb6d8fc8a9aafabf50b96275f09775d":[2,0,0,9,106], +"classmpl_1_1cartesian__communicator.html#abe1bd8f32c690ee7a31456da2c437bdf":[2,0,0,9,198], +"classmpl_1_1cartesian__communicator.html#abe91007be7acef7641d6cbb08526d53b":[2,0,0,9,66], +"classmpl_1_1cartesian__communicator.html#abeb99f29459a82f9027dfc8b4bd60add":[2,0,0,9,201], +"classmpl_1_1cartesian__communicator.html#ac402242f2ad68dbce183e60cfcc82382":[2,0,0,9,194], +"classmpl_1_1cartesian__communicator.html#ac43f72ca3930976c113403fd465087b0":[2,0,0,9,32], +"classmpl_1_1cartesian__communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5":[2,0,0,9,29], +"classmpl_1_1cartesian__communicator.html#ac4b1db52070739de82b25f972b9e6996":[2,0,0,9,48], +"classmpl_1_1cartesian__communicator.html#ac514a6fe8a481f7120bc1d105c09ee96":[2,0,0,9,120], +"classmpl_1_1cartesian__communicator.html#ac7cb886dc70531a897bce6396c9a6e7e":[2,0,0,9,97], +"classmpl_1_1cartesian__communicator.html#acbe2058694618ea2c085d03bcaf4946c":[2,0,0,9,47], +"classmpl_1_1cartesian__communicator.html#acce39280ea657a7d9e5d675631cf7a12":[2,0,0,9,71], +"classmpl_1_1cartesian__communicator.html#acdeb1107c64614728b6c2cc0e65075bf":[2,0,0,9,132], +"classmpl_1_1cartesian__communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47":[2,0,0,9,56], +"classmpl_1_1cartesian__communicator.html#ad15575d951e6a6c4327052e2ff01730f":[2,0,0,9,63], +"classmpl_1_1cartesian__communicator.html#ad2342955984c4db387d52a5414b212c5":[2,0,0,9,108], +"classmpl_1_1cartesian__communicator.html#ad2d304708463bb6f91e1a54b3d87106a":[2,0,0,9,84], +"classmpl_1_1cartesian__communicator.html#ad5daeea3d8b7033a2f70cd19582e098a":[2,0,0,9,136], +"classmpl_1_1cartesian__communicator.html#ad67313aace6a05f58081939eb1d2a4b8":[2,0,0,9,45], +"classmpl_1_1cartesian__communicator.html#ad709e10e351d9ffd4dd9917a9b697c19":[2,0,0,9,22], +"classmpl_1_1cartesian__communicator.html#ad8c0dc208fd9705a2423346d0baaff58":[2,0,0,9,116], +"classmpl_1_1cartesian__communicator.html#ad9dda1e430895757470e09c7ac721dee":[2,0,0,9,25], +"classmpl_1_1cartesian__communicator.html#ada2dc41f3f09788b9dd87be27981668a":[2,0,0,9,144], +"classmpl_1_1cartesian__communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d":[2,0,0,9,43], +"classmpl_1_1cartesian__communicator.html#adb4b189592ceb6f3a16c53d48e3071b8":[2,0,0,9,180], +"classmpl_1_1cartesian__communicator.html#adb886db659e8bc352ca70800704b8956":[2,0,0,9,163], +"classmpl_1_1cartesian__communicator.html#add45a9df6b60973abe8d13b9161c0ed8":[2,0,0,9,157], +"classmpl_1_1cartesian__communicator.html#ade499e3631297c5268da93604ec68a94":[2,0,0,9,172], +"classmpl_1_1cartesian__communicator.html#adf4170f0647e141b72b441c99a5421f5":[2,0,0,9,20], +"classmpl_1_1cartesian__communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597":[2,0,0,9,174], +"classmpl_1_1cartesian__communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789":[2,0,0,9,151], +"classmpl_1_1cartesian__communicator.html#ae17e2ec67fab08b09d7c67923fa81b42":[2,0,0,9,51], +"classmpl_1_1cartesian__communicator.html#ae2941001b886519f2d10d0ebb9901e70":[2,0,0,9,35], +"classmpl_1_1cartesian__communicator.html#ae2bdc9265ab60a53dced1a251b3e5898":[2,0,0,9,200], +"classmpl_1_1cartesian__communicator.html#ae35acd56966f491923a80abbc13fe74a":[2,0,0,9,114], +"classmpl_1_1cartesian__communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3":[2,0,0,9,33], +"classmpl_1_1cartesian__communicator.html#ae6e7de007099b7dc579f638a39d56911":[2,0,0,9,111], +"classmpl_1_1cartesian__communicator.html#ae71687a9aa6bac6a2b888245aa801020":[2,0,0,9,89], +"classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836":[2,0,0,9,5], +"classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836aa688e8ffe09270eeb4eaf5ca79db24cd":[2,0,0,9,5,0], +"classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836ae6ffdec5e14fce371eb7ae99edebbbee":[2,0,0,9,5,1], +"classmpl_1_1cartesian__communicator.html#aea3f30e3e33676cfbd8f3757082949cd":[2,0,0,9,146], +"classmpl_1_1cartesian__communicator.html#aed2415ddb3e27cce97fd5317f781a86c":[2,0,0,9,161], +"classmpl_1_1cartesian__communicator.html#af11d56af7c3459eac6b3f5285788c8b9":[2,0,0,9,137], +"classmpl_1_1cartesian__communicator.html#af1d52b673c059c284806768be1240afc":[2,0,0,9,52], +"classmpl_1_1cartesian__communicator.html#af3ce31d403e1e2c143acb593ca1b21c2":[2,0,0,9,139], +"classmpl_1_1cartesian__communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f":[2,0,0,9,150], +"classmpl_1_1cartesian__communicator.html#af43c205c247a23c35ec015b257f10a6e":[2,0,0,9,50], +"classmpl_1_1cartesian__communicator.html#af5822b089b634a670a9f3cef6e37dcef":[2,0,0,9,140], +"classmpl_1_1cartesian__communicator.html#af66054a704ac25557aa25b356e8abd63":[2,0,0,9,3], +"classmpl_1_1cartesian__communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703":[2,0,0,9,3,2], +"classmpl_1_1cartesian__communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29":[2,0,0,9,3,3], +"classmpl_1_1cartesian__communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac":[2,0,0,9,3,1], +"classmpl_1_1cartesian__communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8":[2,0,0,9,3,0], +"classmpl_1_1cartesian__communicator.html#af786635362fca5a0f915771332383589":[2,0,0,9,117], +"classmpl_1_1cartesian__communicator.html#afacca885dda7217d9c5f6ade30d2b14b":[2,0,0,9,41], +"classmpl_1_1cartesian__communicator.html#afcb7048f892b4c371bba2e261e565656":[2,0,0,9,26], +"classmpl_1_1cartesian__communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3":[2,0,0,9,121], +"classmpl_1_1cartesian__communicator.html#afe6c73aa613bf07ed4790210f10a0f1c":[2,0,0,9,177], +"classmpl_1_1cartesian__communicator_1_1dimensions.html":[2,0,0,9,0], +"classmpl_1_1cartesian__communicator_1_1dimensions.html#a1b76409115713a0bda67f72748f773da":[2,0,0,9,0,12], +"classmpl_1_1cartesian__communicator_1_1dimensions.html#a1c0bd8407ba113ff99fb79a562c63111":[2,0,0,9,0,6], +"classmpl_1_1cartesian__communicator_1_1dimensions.html#a66a3ce1f62e1e85e9d94bbf73d59be8c":[2,0,0,9,0,3], +"classmpl_1_1cartesian__communicator_1_1dimensions.html#a786ec6e005db9b3beeadcc3ad8527d70":[2,0,0,9,0,10], +"classmpl_1_1cartesian__communicator_1_1dimensions.html#a797a227c86268a426e3c78d2cc0bde0e":[2,0,0,9,0,5], +"classmpl_1_1cartesian__communicator_1_1dimensions.html#a80fafe9770e980d59b9628564d4c74cd":[2,0,0,9,0,9], +"classmpl_1_1cartesian__communicator_1_1dimensions.html#a85e2294bef52fe881817325a471cbbdd":[2,0,0,9,0,8], +"classmpl_1_1cartesian__communicator_1_1dimensions.html#aa77b8602f4cfcf88b8ac53ecf548e2ed":[2,0,0,9,0,7], +"classmpl_1_1cartesian__communicator_1_1dimensions.html#ab2ef164390601631c8551b0112a7637f":[2,0,0,9,0,4], +"classmpl_1_1cartesian__communicator_1_1dimensions.html#ae4711dea9668fee29fd5e6fc2cc72a6f":[2,0,0,9,0,11], +"classmpl_1_1cartesian__communicator_1_1dimensions.html#afac55447acc7a9624d5f2cc75c78af85":[2,0,0,9,0,13], +"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html":[2,0,0,9,0,0], +"classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html":[2,0,0,9,0,1], +"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html":[2,0,0,9,0,2], +"classmpl_1_1cartesian__communicator_1_1included__tags.html":[2,0,0,9,1], +"classmpl_1_1cartesian__communicator_1_1included__tags.html#a373c7869e0aa251e05fb578a2aea95e9":[2,0,0,9,1,4], +"classmpl_1_1cartesian__communicator_1_1included__tags.html#a39edb9ac5555118a37675167b577b11d":[2,0,0,9,1,6], +"classmpl_1_1cartesian__communicator_1_1included__tags.html#a7c5d657f45d984865283fdb5dfd4edbc":[2,0,0,9,1,1], +"classmpl_1_1cartesian__communicator_1_1included__tags.html#a82a715985b94853367abcfb164082ac4":[2,0,0,9,1,5] }; diff --git a/docs/html/navtreeindex1.js b/docs/html/navtreeindex1.js index f7722404..e96551aa 100644 --- a/docs/html/navtreeindex1.js +++ b/docs/html/navtreeindex1.js @@ -1,253 +1,253 @@ var NAVTREEINDEX1 = { -"classmpl_1_1cartesian__communicator.html#a753e8742d27ff29a660b07ee0b90b69e":[2,0,0,10,59], -"classmpl_1_1cartesian__communicator.html#a76dbca1b1f6089ee9e07e997b5d79295":[3,0,0,9,82], -"classmpl_1_1cartesian__communicator.html#a76dbca1b1f6089ee9e07e997b5d79295":[2,0,0,10,82], -"classmpl_1_1cartesian__communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0":[2,0,0,10,189], -"classmpl_1_1cartesian__communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0":[3,0,0,9,189], -"classmpl_1_1cartesian__communicator.html#a779f215eb82ce71764befaae9918b596":[2,0,0,10,91], -"classmpl_1_1cartesian__communicator.html#a779f215eb82ce71764befaae9918b596":[3,0,0,9,91], -"classmpl_1_1cartesian__communicator.html#a79e5f4cd63cf9354ceedc4da193e2410":[2,0,0,10,104], -"classmpl_1_1cartesian__communicator.html#a79e5f4cd63cf9354ceedc4da193e2410":[3,0,0,9,104], -"classmpl_1_1cartesian__communicator.html#a7abdf44a7c377ba7191cb4abc6648afe":[3,0,0,9,69], -"classmpl_1_1cartesian__communicator.html#a7abdf44a7c377ba7191cb4abc6648afe":[2,0,0,10,69], -"classmpl_1_1cartesian__communicator.html#a7b672d71b83fafca8f6bf4d435331180":[3,0,0,9,39], -"classmpl_1_1cartesian__communicator.html#a7b672d71b83fafca8f6bf4d435331180":[2,0,0,10,39], -"classmpl_1_1cartesian__communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af":[3,0,0,9,181], -"classmpl_1_1cartesian__communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af":[2,0,0,10,181], -"classmpl_1_1cartesian__communicator.html#a7eddabba5f98c99db189844854690d13":[3,0,0,9,77], -"classmpl_1_1cartesian__communicator.html#a7eddabba5f98c99db189844854690d13":[2,0,0,10,77], -"classmpl_1_1cartesian__communicator.html#a7fbc0f1d669e21a5e1dd6f2601d256b8":[2,0,0,10,8], -"classmpl_1_1cartesian__communicator.html#a7fbc0f1d669e21a5e1dd6f2601d256b8":[3,0,0,9,8], -"classmpl_1_1cartesian__communicator.html#a82b6f15cef4c0daa6825bc699418df22":[2,0,0,10,102], -"classmpl_1_1cartesian__communicator.html#a82b6f15cef4c0daa6825bc699418df22":[3,0,0,9,102], -"classmpl_1_1cartesian__communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9":[2,0,0,10,44], -"classmpl_1_1cartesian__communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9":[3,0,0,9,44], -"classmpl_1_1cartesian__communicator.html#a871cba17f8d1891fb0613f9a23c38866":[2,0,0,10,202], -"classmpl_1_1cartesian__communicator.html#a871cba17f8d1891fb0613f9a23c38866":[3,0,0,9,202], -"classmpl_1_1cartesian__communicator.html#a88368d3f4d7b375825ba839746aea7dd":[2,0,0,10,23], -"classmpl_1_1cartesian__communicator.html#a88368d3f4d7b375825ba839746aea7dd":[3,0,0,9,23], -"classmpl_1_1cartesian__communicator.html#a89b9a55af5259f119281592b4f63f2ee":[2,0,0,10,135], -"classmpl_1_1cartesian__communicator.html#a89b9a55af5259f119281592b4f63f2ee":[3,0,0,9,135], -"classmpl_1_1cartesian__communicator.html#a8b5179d9d85d4768f6134ff34b1f671a":[2,0,0,10,7], -"classmpl_1_1cartesian__communicator.html#a8b5179d9d85d4768f6134ff34b1f671a":[3,0,0,9,7], -"classmpl_1_1cartesian__communicator.html#a8e43e08af5e8481049731092274aca76":[2,0,0,10,80], -"classmpl_1_1cartesian__communicator.html#a8e43e08af5e8481049731092274aca76":[3,0,0,9,80], -"classmpl_1_1cartesian__communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b":[3,0,0,9,175], -"classmpl_1_1cartesian__communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b":[2,0,0,10,175], -"classmpl_1_1cartesian__communicator.html#a9319a8ed118960a716cbeba8c7ff6017":[3,0,0,9,40], -"classmpl_1_1cartesian__communicator.html#a9319a8ed118960a716cbeba8c7ff6017":[2,0,0,10,40], -"classmpl_1_1cartesian__communicator.html#a95d5c90f2a58fe228d846942fe700645":[3,0,0,9,57], -"classmpl_1_1cartesian__communicator.html#a95d5c90f2a58fe228d846942fe700645":[2,0,0,10,57], -"classmpl_1_1cartesian__communicator.html#a970647a9680c6bdc3ffbe0814b32f989":[2,0,0,10,113], -"classmpl_1_1cartesian__communicator.html#a970647a9680c6bdc3ffbe0814b32f989":[3,0,0,9,113], -"classmpl_1_1cartesian__communicator.html#a997e3a727642f7fe7ab74a7342fa334b":[2,0,0,10,17], -"classmpl_1_1cartesian__communicator.html#a997e3a727642f7fe7ab74a7342fa334b":[3,0,0,9,17], -"classmpl_1_1cartesian__communicator.html#a9dccde1bf10e911c3a00d1a546005e94":[3,0,0,9,94], -"classmpl_1_1cartesian__communicator.html#a9dccde1bf10e911c3a00d1a546005e94":[2,0,0,10,94], -"classmpl_1_1cartesian__communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d":[2,0,0,10,162], -"classmpl_1_1cartesian__communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d":[3,0,0,9,162], -"classmpl_1_1cartesian__communicator.html#a9fbb87f9933ff071092164c9e264d817":[3,0,0,9,126], -"classmpl_1_1cartesian__communicator.html#a9fbb87f9933ff071092164c9e264d817":[2,0,0,10,126], -"classmpl_1_1cartesian__communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6":[2,0,0,10,176], -"classmpl_1_1cartesian__communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6":[3,0,0,9,176], -"classmpl_1_1cartesian__communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5":[2,0,0,10,191], -"classmpl_1_1cartesian__communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5":[3,0,0,9,191], -"classmpl_1_1cartesian__communicator.html#aa2b51b89d72555ebfb1862d1de688061":[3,0,0,9,64], -"classmpl_1_1cartesian__communicator.html#aa2b51b89d72555ebfb1862d1de688061":[2,0,0,10,64], -"classmpl_1_1cartesian__communicator.html#aa4407a90c2f598867b36e8e557b72ec0":[2,0,0,10,167], -"classmpl_1_1cartesian__communicator.html#aa4407a90c2f598867b36e8e557b72ec0":[3,0,0,9,167], -"classmpl_1_1cartesian__communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf":[2,0,0,10,62], -"classmpl_1_1cartesian__communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf":[3,0,0,9,62], -"classmpl_1_1cartesian__communicator.html#aa541e7830014dce23eb1ce5f6bcfe281":[2,0,0,10,60], -"classmpl_1_1cartesian__communicator.html#aa541e7830014dce23eb1ce5f6bcfe281":[3,0,0,9,60], -"classmpl_1_1cartesian__communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca":[2,0,0,10,166], -"classmpl_1_1cartesian__communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca":[3,0,0,9,166], -"classmpl_1_1cartesian__communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42":[2,0,0,10,179], -"classmpl_1_1cartesian__communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42":[3,0,0,9,179], -"classmpl_1_1cartesian__communicator.html#aa91aed6395fdcbb40788323a4cf45110":[2,0,0,10,90], -"classmpl_1_1cartesian__communicator.html#aa91aed6395fdcbb40788323a4cf45110":[3,0,0,9,90], -"classmpl_1_1cartesian__communicator.html#aaa714c0902d770205ee9cfb636f20fed":[3,0,0,9,171], -"classmpl_1_1cartesian__communicator.html#aaa714c0902d770205ee9cfb636f20fed":[2,0,0,10,171], -"classmpl_1_1cartesian__communicator.html#aaaf184e1efe161f33a006fc54fe0ff0b":[2,0,0,10,9], -"classmpl_1_1cartesian__communicator.html#aaaf184e1efe161f33a006fc54fe0ff0b":[3,0,0,9,9], -"classmpl_1_1cartesian__communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f":[3,0,0,9,190], -"classmpl_1_1cartesian__communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f":[2,0,0,10,190], -"classmpl_1_1cartesian__communicator.html#aad369f0de0b51dc3cf7992ed26c0799d":[2,0,0,10,72], -"classmpl_1_1cartesian__communicator.html#aad369f0de0b51dc3cf7992ed26c0799d":[3,0,0,9,72], -"classmpl_1_1cartesian__communicator.html#aad40f322ef427d759fe699b1318c3103":[3,0,0,9,93], -"classmpl_1_1cartesian__communicator.html#aad40f322ef427d759fe699b1318c3103":[2,0,0,10,93], -"classmpl_1_1cartesian__communicator.html#aadb9f14a7a9f9bd44eae7832daed895d":[3,0,0,9,65], -"classmpl_1_1cartesian__communicator.html#aadb9f14a7a9f9bd44eae7832daed895d":[2,0,0,10,65], -"classmpl_1_1cartesian__communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2":[2,0,0,10,131], -"classmpl_1_1cartesian__communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2":[3,0,0,9,131], -"classmpl_1_1cartesian__communicator.html#aae3643fa3e833c9dfb4eaf871235aed3":[3,0,0,9,164], -"classmpl_1_1cartesian__communicator.html#aae3643fa3e833c9dfb4eaf871235aed3":[2,0,0,10,164], -"classmpl_1_1cartesian__communicator.html#aaf647eec3afe83caf2afafe5a82b405a":[3,0,0,9,128], -"classmpl_1_1cartesian__communicator.html#aaf647eec3afe83caf2afafe5a82b405a":[2,0,0,10,128], -"classmpl_1_1cartesian__communicator.html#aafb144ba1a5494f2a21de28c50b3ab91":[2,0,0,10,34], -"classmpl_1_1cartesian__communicator.html#aafb144ba1a5494f2a21de28c50b3ab91":[3,0,0,9,34], -"classmpl_1_1cartesian__communicator.html#aba77e505c9c19f3c6acdf10d4bc9fe16":[3,0,0,9,95], -"classmpl_1_1cartesian__communicator.html#aba77e505c9c19f3c6acdf10d4bc9fe16":[2,0,0,10,95], -"classmpl_1_1cartesian__communicator.html#aba80b0971e6f8d2f04d1454f389833be":[2,0,0,10,182], -"classmpl_1_1cartesian__communicator.html#aba80b0971e6f8d2f04d1454f389833be":[3,0,0,9,182], -"classmpl_1_1cartesian__communicator.html#abb0001ba1ee4c2fbd53038bde821e647":[3,0,0,9,115], -"classmpl_1_1cartesian__communicator.html#abb0001ba1ee4c2fbd53038bde821e647":[2,0,0,10,115], -"classmpl_1_1cartesian__communicator.html#abb3d36d582c7a469b5e49dca53c4f952":[3,0,0,9,49], -"classmpl_1_1cartesian__communicator.html#abb3d36d582c7a469b5e49dca53c4f952":[2,0,0,10,49], -"classmpl_1_1cartesian__communicator.html#abbc79395f9583143b1427c2e3f1c6637":[2,0,0,10,154], -"classmpl_1_1cartesian__communicator.html#abbc79395f9583143b1427c2e3f1c6637":[3,0,0,9,154], -"classmpl_1_1cartesian__communicator.html#abdb6d8fc8a9aafabf50b96275f09775d":[2,0,0,10,106], -"classmpl_1_1cartesian__communicator.html#abdb6d8fc8a9aafabf50b96275f09775d":[3,0,0,9,106], -"classmpl_1_1cartesian__communicator.html#abe1bd8f32c690ee7a31456da2c437bdf":[2,0,0,10,198], -"classmpl_1_1cartesian__communicator.html#abe1bd8f32c690ee7a31456da2c437bdf":[3,0,0,9,198], -"classmpl_1_1cartesian__communicator.html#abe91007be7acef7641d6cbb08526d53b":[3,0,0,9,66], -"classmpl_1_1cartesian__communicator.html#abe91007be7acef7641d6cbb08526d53b":[2,0,0,10,66], -"classmpl_1_1cartesian__communicator.html#abeb99f29459a82f9027dfc8b4bd60add":[2,0,0,10,201], -"classmpl_1_1cartesian__communicator.html#abeb99f29459a82f9027dfc8b4bd60add":[3,0,0,9,201], -"classmpl_1_1cartesian__communicator.html#ac402242f2ad68dbce183e60cfcc82382":[2,0,0,10,194], -"classmpl_1_1cartesian__communicator.html#ac402242f2ad68dbce183e60cfcc82382":[3,0,0,9,194], -"classmpl_1_1cartesian__communicator.html#ac43f72ca3930976c113403fd465087b0":[3,0,0,9,32], -"classmpl_1_1cartesian__communicator.html#ac43f72ca3930976c113403fd465087b0":[2,0,0,10,32], -"classmpl_1_1cartesian__communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5":[3,0,0,9,29], -"classmpl_1_1cartesian__communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5":[2,0,0,10,29], -"classmpl_1_1cartesian__communicator.html#ac4b1db52070739de82b25f972b9e6996":[2,0,0,10,48], -"classmpl_1_1cartesian__communicator.html#ac4b1db52070739de82b25f972b9e6996":[3,0,0,9,48], -"classmpl_1_1cartesian__communicator.html#ac514a6fe8a481f7120bc1d105c09ee96":[3,0,0,9,120], -"classmpl_1_1cartesian__communicator.html#ac514a6fe8a481f7120bc1d105c09ee96":[2,0,0,10,120], -"classmpl_1_1cartesian__communicator.html#ac7cb886dc70531a897bce6396c9a6e7e":[3,0,0,9,97], -"classmpl_1_1cartesian__communicator.html#ac7cb886dc70531a897bce6396c9a6e7e":[2,0,0,10,97], -"classmpl_1_1cartesian__communicator.html#acbe2058694618ea2c085d03bcaf4946c":[2,0,0,10,47], -"classmpl_1_1cartesian__communicator.html#acbe2058694618ea2c085d03bcaf4946c":[3,0,0,9,47], -"classmpl_1_1cartesian__communicator.html#acce39280ea657a7d9e5d675631cf7a12":[3,0,0,9,71], -"classmpl_1_1cartesian__communicator.html#acce39280ea657a7d9e5d675631cf7a12":[2,0,0,10,71], -"classmpl_1_1cartesian__communicator.html#acdeb1107c64614728b6c2cc0e65075bf":[2,0,0,10,132], -"classmpl_1_1cartesian__communicator.html#acdeb1107c64614728b6c2cc0e65075bf":[3,0,0,9,132], -"classmpl_1_1cartesian__communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47":[2,0,0,10,56], -"classmpl_1_1cartesian__communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47":[3,0,0,9,56], -"classmpl_1_1cartesian__communicator.html#ad15575d951e6a6c4327052e2ff01730f":[3,0,0,9,63], -"classmpl_1_1cartesian__communicator.html#ad15575d951e6a6c4327052e2ff01730f":[2,0,0,10,63], -"classmpl_1_1cartesian__communicator.html#ad2342955984c4db387d52a5414b212c5":[3,0,0,9,108], -"classmpl_1_1cartesian__communicator.html#ad2342955984c4db387d52a5414b212c5":[2,0,0,10,108], -"classmpl_1_1cartesian__communicator.html#ad2d304708463bb6f91e1a54b3d87106a":[2,0,0,10,84], -"classmpl_1_1cartesian__communicator.html#ad2d304708463bb6f91e1a54b3d87106a":[3,0,0,9,84], -"classmpl_1_1cartesian__communicator.html#ad5daeea3d8b7033a2f70cd19582e098a":[3,0,0,9,136], -"classmpl_1_1cartesian__communicator.html#ad5daeea3d8b7033a2f70cd19582e098a":[2,0,0,10,136], -"classmpl_1_1cartesian__communicator.html#ad67313aace6a05f58081939eb1d2a4b8":[3,0,0,9,45], -"classmpl_1_1cartesian__communicator.html#ad67313aace6a05f58081939eb1d2a4b8":[2,0,0,10,45], -"classmpl_1_1cartesian__communicator.html#ad709e10e351d9ffd4dd9917a9b697c19":[2,0,0,10,22], -"classmpl_1_1cartesian__communicator.html#ad709e10e351d9ffd4dd9917a9b697c19":[3,0,0,9,22], -"classmpl_1_1cartesian__communicator.html#ad8c0dc208fd9705a2423346d0baaff58":[3,0,0,9,116], -"classmpl_1_1cartesian__communicator.html#ad8c0dc208fd9705a2423346d0baaff58":[2,0,0,10,116], -"classmpl_1_1cartesian__communicator.html#ad9dda1e430895757470e09c7ac721dee":[2,0,0,10,25], -"classmpl_1_1cartesian__communicator.html#ad9dda1e430895757470e09c7ac721dee":[3,0,0,9,25], -"classmpl_1_1cartesian__communicator.html#ada2dc41f3f09788b9dd87be27981668a":[3,0,0,9,144], -"classmpl_1_1cartesian__communicator.html#ada2dc41f3f09788b9dd87be27981668a":[2,0,0,10,144], -"classmpl_1_1cartesian__communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d":[2,0,0,10,43], -"classmpl_1_1cartesian__communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d":[3,0,0,9,43], -"classmpl_1_1cartesian__communicator.html#adb4b189592ceb6f3a16c53d48e3071b8":[3,0,0,9,180], -"classmpl_1_1cartesian__communicator.html#adb4b189592ceb6f3a16c53d48e3071b8":[2,0,0,10,180], -"classmpl_1_1cartesian__communicator.html#adb886db659e8bc352ca70800704b8956":[2,0,0,10,163], -"classmpl_1_1cartesian__communicator.html#adb886db659e8bc352ca70800704b8956":[3,0,0,9,163], -"classmpl_1_1cartesian__communicator.html#add45a9df6b60973abe8d13b9161c0ed8":[2,0,0,10,157], -"classmpl_1_1cartesian__communicator.html#add45a9df6b60973abe8d13b9161c0ed8":[3,0,0,9,157], -"classmpl_1_1cartesian__communicator.html#ade499e3631297c5268da93604ec68a94":[3,0,0,9,172], -"classmpl_1_1cartesian__communicator.html#ade499e3631297c5268da93604ec68a94":[2,0,0,10,172], -"classmpl_1_1cartesian__communicator.html#adf4170f0647e141b72b441c99a5421f5":[2,0,0,10,20], -"classmpl_1_1cartesian__communicator.html#adf4170f0647e141b72b441c99a5421f5":[3,0,0,9,20], -"classmpl_1_1cartesian__communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597":[3,0,0,9,174], -"classmpl_1_1cartesian__communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597":[2,0,0,10,174], -"classmpl_1_1cartesian__communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789":[2,0,0,10,151], -"classmpl_1_1cartesian__communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789":[3,0,0,9,151], -"classmpl_1_1cartesian__communicator.html#ae17e2ec67fab08b09d7c67923fa81b42":[3,0,0,9,51], -"classmpl_1_1cartesian__communicator.html#ae17e2ec67fab08b09d7c67923fa81b42":[2,0,0,10,51], -"classmpl_1_1cartesian__communicator.html#ae2941001b886519f2d10d0ebb9901e70":[3,0,0,9,35], -"classmpl_1_1cartesian__communicator.html#ae2941001b886519f2d10d0ebb9901e70":[2,0,0,10,35], -"classmpl_1_1cartesian__communicator.html#ae2bdc9265ab60a53dced1a251b3e5898":[2,0,0,10,200], -"classmpl_1_1cartesian__communicator.html#ae2bdc9265ab60a53dced1a251b3e5898":[3,0,0,9,200], -"classmpl_1_1cartesian__communicator.html#ae35acd56966f491923a80abbc13fe74a":[3,0,0,9,114], -"classmpl_1_1cartesian__communicator.html#ae35acd56966f491923a80abbc13fe74a":[2,0,0,10,114], -"classmpl_1_1cartesian__communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3":[2,0,0,10,33], -"classmpl_1_1cartesian__communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3":[3,0,0,9,33], -"classmpl_1_1cartesian__communicator.html#ae6e7de007099b7dc579f638a39d56911":[3,0,0,9,111], -"classmpl_1_1cartesian__communicator.html#ae6e7de007099b7dc579f638a39d56911":[2,0,0,10,111], -"classmpl_1_1cartesian__communicator.html#ae71687a9aa6bac6a2b888245aa801020":[3,0,0,9,89], -"classmpl_1_1cartesian__communicator.html#ae71687a9aa6bac6a2b888245aa801020":[2,0,0,10,89], -"classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836":[3,0,0,9,5], -"classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836":[2,0,0,10,5], -"classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836aa688e8ffe09270eeb4eaf5ca79db24cd":[3,0,0,9,5,0], -"classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836aa688e8ffe09270eeb4eaf5ca79db24cd":[2,0,0,10,5,0], -"classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836ae6ffdec5e14fce371eb7ae99edebbbee":[3,0,0,9,5,1], -"classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836ae6ffdec5e14fce371eb7ae99edebbbee":[2,0,0,10,5,1], -"classmpl_1_1cartesian__communicator.html#aea3f30e3e33676cfbd8f3757082949cd":[2,0,0,10,146], -"classmpl_1_1cartesian__communicator.html#aea3f30e3e33676cfbd8f3757082949cd":[3,0,0,9,146], -"classmpl_1_1cartesian__communicator.html#aed2415ddb3e27cce97fd5317f781a86c":[3,0,0,9,161], -"classmpl_1_1cartesian__communicator.html#aed2415ddb3e27cce97fd5317f781a86c":[2,0,0,10,161], -"classmpl_1_1cartesian__communicator.html#af11d56af7c3459eac6b3f5285788c8b9":[2,0,0,10,137], -"classmpl_1_1cartesian__communicator.html#af11d56af7c3459eac6b3f5285788c8b9":[3,0,0,9,137], -"classmpl_1_1cartesian__communicator.html#af1d52b673c059c284806768be1240afc":[3,0,0,9,52], -"classmpl_1_1cartesian__communicator.html#af1d52b673c059c284806768be1240afc":[2,0,0,10,52], -"classmpl_1_1cartesian__communicator.html#af3ce31d403e1e2c143acb593ca1b21c2":[2,0,0,10,139], -"classmpl_1_1cartesian__communicator.html#af3ce31d403e1e2c143acb593ca1b21c2":[3,0,0,9,139], -"classmpl_1_1cartesian__communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f":[2,0,0,10,150], -"classmpl_1_1cartesian__communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f":[3,0,0,9,150], -"classmpl_1_1cartesian__communicator.html#af43c205c247a23c35ec015b257f10a6e":[3,0,0,9,50], -"classmpl_1_1cartesian__communicator.html#af43c205c247a23c35ec015b257f10a6e":[2,0,0,10,50], -"classmpl_1_1cartesian__communicator.html#af5822b089b634a670a9f3cef6e37dcef":[3,0,0,9,140], -"classmpl_1_1cartesian__communicator.html#af5822b089b634a670a9f3cef6e37dcef":[2,0,0,10,140], -"classmpl_1_1cartesian__communicator.html#af66054a704ac25557aa25b356e8abd63":[2,0,0,10,3], -"classmpl_1_1cartesian__communicator.html#af66054a704ac25557aa25b356e8abd63":[3,0,0,9,3], -"classmpl_1_1cartesian__communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703":[2,0,0,10,3,2], -"classmpl_1_1cartesian__communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703":[3,0,0,9,3,2], -"classmpl_1_1cartesian__communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29":[2,0,0,10,3,3], -"classmpl_1_1cartesian__communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29":[3,0,0,9,3,3], -"classmpl_1_1cartesian__communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac":[2,0,0,10,3,1], -"classmpl_1_1cartesian__communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac":[3,0,0,9,3,1], -"classmpl_1_1cartesian__communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8":[2,0,0,10,3,0], -"classmpl_1_1cartesian__communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8":[3,0,0,9,3,0], -"classmpl_1_1cartesian__communicator.html#af786635362fca5a0f915771332383589":[2,0,0,10,117], -"classmpl_1_1cartesian__communicator.html#af786635362fca5a0f915771332383589":[3,0,0,9,117], -"classmpl_1_1cartesian__communicator.html#afacca885dda7217d9c5f6ade30d2b14b":[3,0,0,9,41], -"classmpl_1_1cartesian__communicator.html#afacca885dda7217d9c5f6ade30d2b14b":[2,0,0,10,41], -"classmpl_1_1cartesian__communicator.html#afcb7048f892b4c371bba2e261e565656":[2,0,0,10,26], -"classmpl_1_1cartesian__communicator.html#afcb7048f892b4c371bba2e261e565656":[3,0,0,9,26], -"classmpl_1_1cartesian__communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3":[2,0,0,10,121], -"classmpl_1_1cartesian__communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3":[3,0,0,9,121], -"classmpl_1_1cartesian__communicator.html#afe6c73aa613bf07ed4790210f10a0f1c":[2,0,0,10,177], -"classmpl_1_1cartesian__communicator.html#afe6c73aa613bf07ed4790210f10a0f1c":[3,0,0,9,177], -"classmpl_1_1cartesian__communicator_1_1dimensions.html":[3,0,0,9,0], -"classmpl_1_1cartesian__communicator_1_1dimensions.html":[2,0,0,10,0], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a0061b4a1b2f65b3a987204a51626ca4e":[2,0,0,10,0,14], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a0061b4a1b2f65b3a987204a51626ca4e":[3,0,0,9,0,14], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a0e2e337b0ef4cbfe65e84719f6f18b56":[2,0,0,10,0,5], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a0e2e337b0ef4cbfe65e84719f6f18b56":[3,0,0,9,0,5], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a1b76409115713a0bda67f72748f773da":[3,0,0,9,0,21], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a1b76409115713a0bda67f72748f773da":[2,0,0,10,0,21], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a1c0bd8407ba113ff99fb79a562c63111":[3,0,0,9,0,9], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a1c0bd8407ba113ff99fb79a562c63111":[2,0,0,10,0,9], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a2f0de8706bb7698b56f2e46b859ecd25":[2,0,0,10,0,4], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a2f0de8706bb7698b56f2e46b859ecd25":[3,0,0,9,0,4], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a52bc3894703534c57d950bf23228ff6f":[2,0,0,10,0,3], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a52bc3894703534c57d950bf23228ff6f":[3,0,0,9,0,3], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a6087bfa57412c9e8b80b6f380ebaaf7a":[2,0,0,10,0,22], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a6087bfa57412c9e8b80b6f380ebaaf7a":[3,0,0,9,0,22], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a667d98ea7708b6934ec8e85431a84087":[2,0,0,10,0,12], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a667d98ea7708b6934ec8e85431a84087":[3,0,0,9,0,12], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a66a3ce1f62e1e85e9d94bbf73d59be8c":[2,0,0,10,0,6], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a66a3ce1f62e1e85e9d94bbf73d59be8c":[3,0,0,9,0,6], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a6cb868c4a70a860b986d6bda59067c6f":[2,0,0,10,0,17], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a6cb868c4a70a860b986d6bda59067c6f":[3,0,0,9,0,17], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a786ec6e005db9b3beeadcc3ad8527d70":[3,0,0,9,0,19], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a786ec6e005db9b3beeadcc3ad8527d70":[2,0,0,10,0,19], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a797a227c86268a426e3c78d2cc0bde0e":[2,0,0,10,0,8], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a797a227c86268a426e3c78d2cc0bde0e":[3,0,0,9,0,8], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a80fafe9770e980d59b9628564d4c74cd":[2,0,0,10,0,18], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a80fafe9770e980d59b9628564d4c74cd":[3,0,0,9,0,18], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a8347304cab220bd077fc5e3dc62052f8":[3,0,0,9,0,11], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a8347304cab220bd077fc5e3dc62052f8":[2,0,0,10,0,11], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a83beb2f3d7934fa15cc2fe9d73601d5d":[2,0,0,10,0,13], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a83beb2f3d7934fa15cc2fe9d73601d5d":[3,0,0,9,0,13], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a85e2294bef52fe881817325a471cbbdd":[3,0,0,9,0,15], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#a85e2294bef52fe881817325a471cbbdd":[2,0,0,10,0,15], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#aa77b8602f4cfcf88b8ac53ecf548e2ed":[2,0,0,10,0,10] +"classmpl_1_1cartesian__communicator_1_1included__tags.html#a949beacb76cdab143f823228f22cbf47":[2,0,0,9,1,2], +"classmpl_1_1cartesian__communicator_1_1included__tags.html#ac2cfb27c6cb4ef1d70aa4e7139fa60ad":[2,0,0,9,1,3], +"classmpl_1_1cartesian__communicator_1_1included__tags.html#ae18657b9e6cee8ffa9549f3b4bc3e104":[2,0,0,9,1,0], +"classmpl_1_1cartesian__communicator_1_1vector.html":[2,0,0,9,2], +"classmpl_1_1cartesian__communicator_1_1vector.html#a20fb79f818b48bbc40b88adefae3734a":[2,0,0,9,2,6], +"classmpl_1_1cartesian__communicator_1_1vector.html#a3d22ddb853627dcb5d33d690c28a44ac":[2,0,0,9,2,5], +"classmpl_1_1cartesian__communicator_1_1vector.html#a3d9a6b783c4c02ff2948fff730f8de8d":[2,0,0,9,2,3], +"classmpl_1_1cartesian__communicator_1_1vector.html#a6f1970d433943ef7aa5b1bd281aa92ce":[2,0,0,9,2,2], +"classmpl_1_1cartesian__communicator_1_1vector.html#a90ce86dd81472bbcdf612649366be94c":[2,0,0,9,2,4], +"classmpl_1_1cartesian__communicator_1_1vector.html#a9ad2fab87c4ee7bc0c95ad0a12c519c4":[2,0,0,9,2,1], +"classmpl_1_1cartesian__communicator_1_1vector.html#aadb32224556177212bda389440645f2d":[2,0,0,9,2,0], +"classmpl_1_1communicator.html":[2,0,0,10], +"classmpl_1_1communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09":[2,0,0,10,18], +"classmpl_1_1communicator.html#a031345325782266cecb521469e42d8c3":[2,0,0,10,115], +"classmpl_1_1communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69":[2,0,0,10,90], +"classmpl_1_1communicator.html#a03d88ad3aa943dc51578259c03b0b695":[2,0,0,10,137], +"classmpl_1_1communicator.html#a05ed2a65531e978c766f9af918f5e5a3":[2,0,0,10,26], +"classmpl_1_1communicator.html#a06525ff878eb073c02dc0bef285f06ac":[2,0,0,10,99], +"classmpl_1_1communicator.html#a06c080c4492462cd582894a04191de56":[2,0,0,10,129], +"classmpl_1_1communicator.html#a07591e9922db9239a75ab1b6c7b70f11":[2,0,0,10,179], +"classmpl_1_1communicator.html#a0a2866d44cee859fc064e2e32a6710d7":[2,0,0,10,20], +"classmpl_1_1communicator.html#a0ca545be8c199264a127b16180450162":[2,0,0,10,139], +"classmpl_1_1communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3":[2,0,0,10,17], +"classmpl_1_1communicator.html#a0e6459ad572cb1a69cb149df1871f2c6":[2,0,0,10,97], +"classmpl_1_1communicator.html#a0e7776c9ef670b685701dfd197b76912":[2,0,0,10,23], +"classmpl_1_1communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3":[2,0,0,10,91], +"classmpl_1_1communicator.html#a100f19741ccecda229eb1bb6659c1dd8":[2,0,0,10,176], +"classmpl_1_1communicator.html#a14ad784ff91391983f667a5cadbfe367":[2,0,0,10,95], +"classmpl_1_1communicator.html#a14b2306de71e02b0390c564ff6ba7c21":[2,0,0,10,73], +"classmpl_1_1communicator.html#a153a492a90432d228638e2548b2a65b5":[2,0,0,10,131], +"classmpl_1_1communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f":[2,0,0,10,177], +"classmpl_1_1communicator.html#a17526ad519286bf2fa81a3701c0afe03":[2,0,0,10,183], +"classmpl_1_1communicator.html#a179246280657f80aa624f7ebcb8ac9a4":[2,0,0,10,124], +"classmpl_1_1communicator.html#a192fabbdbac09436fab92943148c5185":[2,0,0,10,83], +"classmpl_1_1communicator.html#a1948c90e2873f0db6b7fc32f7240e80a":[2,0,0,10,113], +"classmpl_1_1communicator.html#a197f9833a6c4685a2368b7bea2a60cd8":[2,0,0,10,150], +"classmpl_1_1communicator.html#a19912b0013f991bbebf2ef46fcb93c70":[2,0,0,10,102], +"classmpl_1_1communicator.html#a1a2fbf1a89b606c316790a29a6c24344":[2,0,0,10,14], +"classmpl_1_1communicator.html#a1bf177485606687353cd50bc5a3b3c59":[2,0,0,10,76], +"classmpl_1_1communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644":[2,0,0,10,173], +"classmpl_1_1communicator.html#a1f45f3b4b5afa504963d30203bebcd67":[2,0,0,10,167], +"classmpl_1_1communicator.html#a20505014d3a5ac58a5601faee033d003":[2,0,0,10,74], +"classmpl_1_1communicator.html#a20766ee389c97340241ff730eae49475":[2,0,0,10,77], +"classmpl_1_1communicator.html#a20c2142532726d3a3f25e4eb3293fd4c":[2,0,0,10,141], +"classmpl_1_1communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb":[2,0,0,10,39], +"classmpl_1_1communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a":[2,0,0,10,168], +"classmpl_1_1communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe":[2,0,0,10,13], +"classmpl_1_1communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627":[2,0,0,10,151], +"classmpl_1_1communicator.html#a2a901501dfe4dad53249a142a6c61f8a":[2,0,0,10,169], +"classmpl_1_1communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f":[2,0,0,10,123], +"classmpl_1_1communicator.html#a32881aa49f5e9c71792e98629a131822":[2,0,0,10,52], +"classmpl_1_1communicator.html#a34c527f23af855f716bf00a2658c9436":[2,0,0,10,72], +"classmpl_1_1communicator.html#a36031fd4a0c2ed7bab527e0a4663971f":[2,0,0,10,165], +"classmpl_1_1communicator.html#a39c2f12ebc86e0930266a60ffecea926":[2,0,0,10,134], +"classmpl_1_1communicator.html#a3b4d541cab8706ae5a4a699aef0662d3":[2,0,0,10,164], +"classmpl_1_1communicator.html#a3f433b69dace132e01bea64624fff4b3":[2,0,0,10,184], +"classmpl_1_1communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416":[2,0,0,10,109], +"classmpl_1_1communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc":[2,0,0,10,93], +"classmpl_1_1communicator.html#a445e05af65cdc53b7a981d4884a4c3b8":[2,0,0,10,85], +"classmpl_1_1communicator.html#a45585975b4b7cc0795a02abf6494963b":[2,0,0,10,45], +"classmpl_1_1communicator.html#a46e8797b907b9539b2ee90713a675e5c":[2,0,0,10,120], +"classmpl_1_1communicator.html#a477820ee73599e311a6e73ef06fbdf33":[2,0,0,10,166], +"classmpl_1_1communicator.html#a47df48127ee7c1952d62832748b052cd":[2,0,0,10,12], +"classmpl_1_1communicator.html#a480ef5ac8533cd47ef55b04454baddca":[2,0,0,10,154], +"classmpl_1_1communicator.html#a494c7c1849713e45d99d901b31250b35":[2,0,0,10,140], +"classmpl_1_1communicator.html#a4a29592502142845c3bb0031221189a3":[2,0,0,10,79], +"classmpl_1_1communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21":[2,0,0,10,112], +"classmpl_1_1communicator.html#a4ac75dc1695c441e9e8faa185a458cc3":[2,0,0,10,40], +"classmpl_1_1communicator.html#a4cff38dd56b3d53992babac77cbefa8d":[2,0,0,10,66], +"classmpl_1_1communicator.html#a4db43a46f468c60e84b35f95577ff0f4":[2,0,0,10,29], +"classmpl_1_1communicator.html#a4de1ecacd035af3dca830995098a2f49":[2,0,0,10,100], +"classmpl_1_1communicator.html#a5314e5dc5b35f952dba239b8f03be330":[2,0,0,10,38], +"classmpl_1_1communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84":[2,0,0,10,15], +"classmpl_1_1communicator.html#a55feab940e9c72241215918199931936":[2,0,0,10,21], +"classmpl_1_1communicator.html#a55fef351e8bb5d3062d25683cb404c9d":[2,0,0,10,149], +"classmpl_1_1communicator.html#a5664d9591456924a7343082445bc8452":[2,0,0,10,68], +"classmpl_1_1communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7":[2,0,0,10,86], +"classmpl_1_1communicator.html#a58b6d65e9351b61c493967718f550614":[2,0,0,10,117], +"classmpl_1_1communicator.html#a5a80517f1de86265d2a863a7c1fd5032":[2,0,0,10,159], +"classmpl_1_1communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c":[2,0,0,10,81], +"classmpl_1_1communicator.html#a5ce91750a7c77edf43e53ac88e4e8524":[2,0,0,10,59], +"classmpl_1_1communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec":[2,0,0,10,30], +"classmpl_1_1communicator.html#a601c251b4c10c6797af3cd741dea4d55":[2,0,0,10,53], +"classmpl_1_1communicator.html#a6149ac444daf9efa0818c1ad86df03f4":[2,0,0,10,174], +"classmpl_1_1communicator.html#a615ca7d0551e964ca92c2d6f246bb595":[2,0,0,10,11], +"classmpl_1_1communicator.html#a61a0bccfa633febde368a29c749368bf":[2,0,0,10,7], +"classmpl_1_1communicator.html#a61c69fd52a576be43b7331536f54b73f":[2,0,0,10,114], +"classmpl_1_1communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2":[2,0,0,10,33], +"classmpl_1_1communicator.html#a636784ef8a1e076a303e3e6279de1e7d":[2,0,0,10,146], +"classmpl_1_1communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3":[2,0,0,10,16], +"classmpl_1_1communicator.html#a67f541a36dee046cc12d15d9133930b7":[2,0,0,10,119], +"classmpl_1_1communicator.html#a68996ab5379c9a104572b804633d869e":[2,0,0,10,65], +"classmpl_1_1communicator.html#a693590693b8621565e94abdd6763d5b6":[2,0,0,10,136], +"classmpl_1_1communicator.html#a69ebec18f9d55bc8e2b6951f97855068":[2,0,0,10,71], +"classmpl_1_1communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f":[2,0,0,10,84], +"classmpl_1_1communicator.html#a719512973bc590402ac30b10e5227d2b":[2,0,0,10,32], +"classmpl_1_1communicator.html#a72d2639f200e5a36f1f81df5c499f06f":[2,0,0,10,108], +"classmpl_1_1communicator.html#a73df8f569865237bc58e2445c7d07742":[2,0,0,10,56], +"classmpl_1_1communicator.html#a753e8742d27ff29a660b07ee0b90b69e":[2,0,0,10,57], +"classmpl_1_1communicator.html#a76dbca1b1f6089ee9e07e997b5d79295":[2,0,0,10,80], +"classmpl_1_1communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0":[2,0,0,10,170], +"classmpl_1_1communicator.html#a779f215eb82ce71764befaae9918b596":[2,0,0,10,89], +"classmpl_1_1communicator.html#a79e5f4cd63cf9354ceedc4da193e2410":[2,0,0,10,94], +"classmpl_1_1communicator.html#a7abdf44a7c377ba7191cb4abc6648afe":[2,0,0,10,67], +"classmpl_1_1communicator.html#a7b672d71b83fafca8f6bf4d435331180":[2,0,0,10,41], +"classmpl_1_1communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af":[2,0,0,10,162], +"classmpl_1_1communicator.html#a7eddabba5f98c99db189844854690d13":[2,0,0,10,75], +"classmpl_1_1communicator.html#a82b6f15cef4c0daa6825bc699418df22":[2,0,0,10,92], +"classmpl_1_1communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9":[2,0,0,10,43], +"classmpl_1_1communicator.html#a871cba17f8d1891fb0613f9a23c38866":[2,0,0,10,182], +"classmpl_1_1communicator.html#a88368d3f4d7b375825ba839746aea7dd":[2,0,0,10,25], +"classmpl_1_1communicator.html#a89b9a55af5259f119281592b4f63f2ee":[2,0,0,10,125], +"classmpl_1_1communicator.html#a8e43e08af5e8481049731092274aca76":[2,0,0,10,78], +"classmpl_1_1communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b":[2,0,0,10,156], +"classmpl_1_1communicator.html#a95d5c90f2a58fe228d846942fe700645":[2,0,0,10,55], +"classmpl_1_1communicator.html#a970647a9680c6bdc3ffbe0814b32f989":[2,0,0,10,103], +"classmpl_1_1communicator.html#a997e3a727642f7fe7ab74a7342fa334b":[2,0,0,10,19], +"classmpl_1_1communicator.html#a9acb1690c4190b91b48cf919257182f3":[2,0,0,10,9], +"classmpl_1_1communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d":[2,0,0,10,143], +"classmpl_1_1communicator.html#a9fbb87f9933ff071092164c9e264d817":[2,0,0,10,116], +"classmpl_1_1communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6":[2,0,0,10,157], +"classmpl_1_1communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5":[2,0,0,10,172], +"classmpl_1_1communicator.html#aa2b51b89d72555ebfb1862d1de688061":[2,0,0,10,62], +"classmpl_1_1communicator.html#aa4407a90c2f598867b36e8e557b72ec0":[2,0,0,10,148], +"classmpl_1_1communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf":[2,0,0,10,60], +"classmpl_1_1communicator.html#aa541e7830014dce23eb1ce5f6bcfe281":[2,0,0,10,58], +"classmpl_1_1communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca":[2,0,0,10,147], +"classmpl_1_1communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42":[2,0,0,10,160], +"classmpl_1_1communicator.html#aa91aed6395fdcbb40788323a4cf45110":[2,0,0,10,88], +"classmpl_1_1communicator.html#aaa714c0902d770205ee9cfb636f20fed":[2,0,0,10,152], +"classmpl_1_1communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f":[2,0,0,10,171], +"classmpl_1_1communicator.html#aad369f0de0b51dc3cf7992ed26c0799d":[2,0,0,10,70], +"classmpl_1_1communicator.html#aadb9f14a7a9f9bd44eae7832daed895d":[2,0,0,10,63], +"classmpl_1_1communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2":[2,0,0,10,121], +"classmpl_1_1communicator.html#aae3643fa3e833c9dfb4eaf871235aed3":[2,0,0,10,145], +"classmpl_1_1communicator.html#aaedab51467a9eb38a2aeedb58e357e3d":[2,0,0,10,6], +"classmpl_1_1communicator.html#aaf647eec3afe83caf2afafe5a82b405a":[2,0,0,10,118], +"classmpl_1_1communicator.html#aafb144ba1a5494f2a21de28c50b3ab91":[2,0,0,10,36], +"classmpl_1_1communicator.html#ab082b5c443bf7db3fd803e723510d533":[2,0,0,10,8], +"classmpl_1_1communicator.html#aba80b0971e6f8d2f04d1454f389833be":[2,0,0,10,163], +"classmpl_1_1communicator.html#abb0001ba1ee4c2fbd53038bde821e647":[2,0,0,10,105], +"classmpl_1_1communicator.html#abb3d36d582c7a469b5e49dca53c4f952":[2,0,0,10,48], +"classmpl_1_1communicator.html#abbc79395f9583143b1427c2e3f1c6637":[2,0,0,10,135], +"classmpl_1_1communicator.html#abdb6d8fc8a9aafabf50b96275f09775d":[2,0,0,10,96], +"classmpl_1_1communicator.html#abe1bd8f32c690ee7a31456da2c437bdf":[2,0,0,10,178], +"classmpl_1_1communicator.html#abe91007be7acef7641d6cbb08526d53b":[2,0,0,10,64], +"classmpl_1_1communicator.html#abeb99f29459a82f9027dfc8b4bd60add":[2,0,0,10,181], +"classmpl_1_1communicator.html#ac402242f2ad68dbce183e60cfcc82382":[2,0,0,10,175], +"classmpl_1_1communicator.html#ac43f72ca3930976c113403fd465087b0":[2,0,0,10,34], +"classmpl_1_1communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5":[2,0,0,10,31], +"classmpl_1_1communicator.html#ac4b1db52070739de82b25f972b9e6996":[2,0,0,10,47], +"classmpl_1_1communicator.html#ac514a6fe8a481f7120bc1d105c09ee96":[2,0,0,10,110], +"classmpl_1_1communicator.html#acbe2058694618ea2c085d03bcaf4946c":[2,0,0,10,46], +"classmpl_1_1communicator.html#acce39280ea657a7d9e5d675631cf7a12":[2,0,0,10,69], +"classmpl_1_1communicator.html#acdeb1107c64614728b6c2cc0e65075bf":[2,0,0,10,122], +"classmpl_1_1communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47":[2,0,0,10,54], +"classmpl_1_1communicator.html#ad15575d951e6a6c4327052e2ff01730f":[2,0,0,10,61], +"classmpl_1_1communicator.html#ad2342955984c4db387d52a5414b212c5":[2,0,0,10,98], +"classmpl_1_1communicator.html#ad2d304708463bb6f91e1a54b3d87106a":[2,0,0,10,82], +"classmpl_1_1communicator.html#ad583dab604376864ba373505b7f33911":[2,0,0,10,130], +"classmpl_1_1communicator.html#ad5daeea3d8b7033a2f70cd19582e098a":[2,0,0,10,126], +"classmpl_1_1communicator.html#ad67313aace6a05f58081939eb1d2a4b8":[2,0,0,10,44], +"classmpl_1_1communicator.html#ad709e10e351d9ffd4dd9917a9b697c19":[2,0,0,10,24], +"classmpl_1_1communicator.html#ad8c0dc208fd9705a2423346d0baaff58":[2,0,0,10,106], +"classmpl_1_1communicator.html#ad9dda1e430895757470e09c7ac721dee":[2,0,0,10,27], +"classmpl_1_1communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d":[2,0,0,10,42], +"classmpl_1_1communicator.html#adb4b189592ceb6f3a16c53d48e3071b8":[2,0,0,10,161], +"classmpl_1_1communicator.html#adb886db659e8bc352ca70800704b8956":[2,0,0,10,144], +"classmpl_1_1communicator.html#add45a9df6b60973abe8d13b9161c0ed8":[2,0,0,10,138], +"classmpl_1_1communicator.html#ade499e3631297c5268da93604ec68a94":[2,0,0,10,153], +"classmpl_1_1communicator.html#adf4170f0647e141b72b441c99a5421f5":[2,0,0,10,22], +"classmpl_1_1communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597":[2,0,0,10,155], +"classmpl_1_1communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789":[2,0,0,10,133], +"classmpl_1_1communicator.html#ae17e2ec67fab08b09d7c67923fa81b42":[2,0,0,10,50], +"classmpl_1_1communicator.html#ae2941001b886519f2d10d0ebb9901e70":[2,0,0,10,37], +"classmpl_1_1communicator.html#ae2bdc9265ab60a53dced1a251b3e5898":[2,0,0,10,180], +"classmpl_1_1communicator.html#ae35acd56966f491923a80abbc13fe74a":[2,0,0,10,104], +"classmpl_1_1communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3":[2,0,0,10,35], +"classmpl_1_1communicator.html#ae6e7de007099b7dc579f638a39d56911":[2,0,0,10,101], +"classmpl_1_1communicator.html#ae71687a9aa6bac6a2b888245aa801020":[2,0,0,10,87], +"classmpl_1_1communicator.html#ae8dcb108a058800f583f92d8bc2d369f":[2,0,0,10,5], +"classmpl_1_1communicator.html#aea3f30e3e33676cfbd8f3757082949cd":[2,0,0,10,128], +"classmpl_1_1communicator.html#aed2415ddb3e27cce97fd5317f781a86c":[2,0,0,10,142], +"classmpl_1_1communicator.html#aef00e3ea7dcd56ab1c5fca19222af822":[2,0,0,10,10], +"classmpl_1_1communicator.html#af11d56af7c3459eac6b3f5285788c8b9":[2,0,0,10,127], +"classmpl_1_1communicator.html#af1d52b673c059c284806768be1240afc":[2,0,0,10,51], +"classmpl_1_1communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f":[2,0,0,10,132], +"classmpl_1_1communicator.html#af43c205c247a23c35ec015b257f10a6e":[2,0,0,10,49], +"classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63":[2,0,0,10,4], +"classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703":[2,0,0,10,4,2], +"classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29":[2,0,0,10,4,3], +"classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac":[2,0,0,10,4,1], +"classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8":[2,0,0,10,4,0], +"classmpl_1_1communicator.html#af786635362fca5a0f915771332383589":[2,0,0,10,107], +"classmpl_1_1communicator.html#afcb7048f892b4c371bba2e261e565656":[2,0,0,10,28], +"classmpl_1_1communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3":[2,0,0,10,111], +"classmpl_1_1communicator.html#afe6c73aa613bf07ed4790210f10a0f1c":[2,0,0,10,158], +"classmpl_1_1communicator_1_1comm__collective__tag.html":[2,0,0,10,0], +"classmpl_1_1communicator_1_1group__collective__tag.html":[2,0,0,10,1], +"classmpl_1_1communicator_1_1split__shared__memory__tag.html":[2,0,0,10,2], +"classmpl_1_1communicator_1_1split__tag.html":[2,0,0,10,3], +"classmpl_1_1contiguous__layout.html":[2,0,0,11], +"classmpl_1_1contiguous__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,11,6], +"classmpl_1_1contiguous__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,11,18], +"classmpl_1_1contiguous__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,11,16], +"classmpl_1_1contiguous__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,11,21], +"classmpl_1_1contiguous__layout.html#a3d0d28fdc0b29e06d3780a00b2d9cf7f":[2,0,0,11,13], +"classmpl_1_1contiguous__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,11,15], +"classmpl_1_1contiguous__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,11,19], +"classmpl_1_1contiguous__layout.html#a52268d8595fc53bfb6efa9e5ebdd1c11":[2,0,0,11,3], +"classmpl_1_1contiguous__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,11,9], +"classmpl_1_1contiguous__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,11,20], +"classmpl_1_1contiguous__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,11,4], +"classmpl_1_1contiguous__layout.html#a8eda4ba99bfdf30d9773842d90616fd7":[2,0,0,11,2], +"classmpl_1_1contiguous__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,11,7], +"classmpl_1_1contiguous__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,11,5], +"classmpl_1_1contiguous__layout.html#aae660e5421a3eecf9b365ae32df3cf29":[2,0,0,11,1], +"classmpl_1_1contiguous__layout.html#ab067e1300c01e8bba62f0414bbac5254":[2,0,0,11,0], +"classmpl_1_1contiguous__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,11,12], +"classmpl_1_1contiguous__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,11,14], +"classmpl_1_1contiguous__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,11,8], +"classmpl_1_1contiguous__layout.html#adb39eadffb6dbffe72480764ba486245":[2,0,0,11,10], +"classmpl_1_1contiguous__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,11,17], +"classmpl_1_1contiguous__layout.html#ae982602643daa885058b55d85b463ee9":[2,0,0,11,11], +"classmpl_1_1contiguous__layouts.html":[2,0,0,12], +"classmpl_1_1contiguous__layouts.html#a51ef8713bb2454de686381fd012e2845":[2,0,0,12,0], +"classmpl_1_1contiguous__layouts.html#a7c7201b2a4367597aac88ccfcbb9b797":[2,0,0,12,1], +"classmpl_1_1displacements.html":[2,0,0,13], +"classmpl_1_1displacements.html#a4fa9b3a5848ac407a2c80db370d4fcd9":[2,0,0,13,2], +"classmpl_1_1displacements.html#a9b3133c451300e447c43374b8e785783":[2,0,0,13,1], +"classmpl_1_1displacements.html#aa632306f2aadfee96b2842791d771cee":[2,0,0,13,4], +"classmpl_1_1displacements.html#ad82ea20c78609a9c4f23b1f689f8b36f":[2,0,0,13,3], +"classmpl_1_1displacements.html#ae1e24fef18246a0ca1cd857a691a02ce":[2,0,0,13,0], +"classmpl_1_1distributed__graph__communicator.html":[2,0,0,14], +"classmpl_1_1distributed__graph__communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09":[2,0,0,14,12], +"classmpl_1_1distributed__graph__communicator.html#a031345325782266cecb521469e42d8c3":[2,0,0,14,120], +"classmpl_1_1distributed__graph__communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69":[2,0,0,14,95], +"classmpl_1_1distributed__graph__communicator.html#a03afcae482e770e40ca5df7ae77b29c6":[2,0,0,14,138], +"classmpl_1_1distributed__graph__communicator.html#a03d88ad3aa943dc51578259c03b0b695":[2,0,0,14,152], +"classmpl_1_1distributed__graph__communicator.html#a05ed2a65531e978c766f9af918f5e5a3":[2,0,0,14,20], +"classmpl_1_1distributed__graph__communicator.html#a06525ff878eb073c02dc0bef285f06ac":[2,0,0,14,104], +"classmpl_1_1distributed__graph__communicator.html#a068c77bb2536523c2bcbeb4d3d8efc7b":[2,0,0,14,87], +"classmpl_1_1distributed__graph__communicator.html#a07591e9922db9239a75ab1b6c7b70f11":[2,0,0,14,194], +"classmpl_1_1distributed__graph__communicator.html#a0a2866d44cee859fc064e2e32a6710d7":[2,0,0,14,14], +"classmpl_1_1distributed__graph__communicator.html#a0ca545be8c199264a127b16180450162":[2,0,0,14,154], +"classmpl_1_1distributed__graph__communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3":[2,0,0,14,11], +"classmpl_1_1distributed__graph__communicator.html#a0e6459ad572cb1a69cb149df1871f2c6":[2,0,0,14,102], +"classmpl_1_1distributed__graph__communicator.html#a0e7776c9ef670b685701dfd197b76912":[2,0,0,14,17], +"classmpl_1_1distributed__graph__communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3":[2,0,0,14,96], +"classmpl_1_1distributed__graph__communicator.html#a100f19741ccecda229eb1bb6659c1dd8":[2,0,0,14,191] }; diff --git a/docs/html/navtreeindex10.js b/docs/html/navtreeindex10.js deleted file mode 100644 index 943e2afe..00000000 --- a/docs/html/navtreeindex10.js +++ /dev/null @@ -1,253 +0,0 @@ -var NAVTREEINDEX10 = -{ -"classmpl_1_1impl_1_1topology__communicator.html#a0e6459ad572cb1a69cb149df1871f2c6":[3,0,0,0,4,93], -"classmpl_1_1impl_1_1topology__communicator.html#a0e7776c9ef670b685701dfd197b76912":[2,0,0,1,4,11], -"classmpl_1_1impl_1_1topology__communicator.html#a0e7776c9ef670b685701dfd197b76912":[3,0,0,0,4,11], -"classmpl_1_1impl_1_1topology__communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3":[2,0,0,1,4,87], -"classmpl_1_1impl_1_1topology__communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3":[3,0,0,0,4,87], -"classmpl_1_1impl_1_1topology__communicator.html#a100f19741ccecda229eb1bb6659c1dd8":[3,0,0,0,4,179], -"classmpl_1_1impl_1_1topology__communicator.html#a100f19741ccecda229eb1bb6659c1dd8":[2,0,0,1,4,179], -"classmpl_1_1impl_1_1topology__communicator.html#a14ad784ff91391983f667a5cadbfe367":[2,0,0,1,4,91], -"classmpl_1_1impl_1_1topology__communicator.html#a14ad784ff91391983f667a5cadbfe367":[3,0,0,0,4,91], -"classmpl_1_1impl_1_1topology__communicator.html#a14b2306de71e02b0390c564ff6ba7c21":[2,0,0,1,4,61], -"classmpl_1_1impl_1_1topology__communicator.html#a14b2306de71e02b0390c564ff6ba7c21":[3,0,0,0,4,61], -"classmpl_1_1impl_1_1topology__communicator.html#a153a492a90432d228638e2548b2a65b5":[2,0,0,1,4,134], -"classmpl_1_1impl_1_1topology__communicator.html#a153a492a90432d228638e2548b2a65b5":[3,0,0,0,4,134], -"classmpl_1_1impl_1_1topology__communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f":[2,0,0,1,4,180], -"classmpl_1_1impl_1_1topology__communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f":[3,0,0,0,4,180], -"classmpl_1_1impl_1_1topology__communicator.html#a17526ad519286bf2fa81a3701c0afe03":[3,0,0,0,4,186], -"classmpl_1_1impl_1_1topology__communicator.html#a17526ad519286bf2fa81a3701c0afe03":[2,0,0,1,4,186], -"classmpl_1_1impl_1_1topology__communicator.html#a179246280657f80aa624f7ebcb8ac9a4":[2,0,0,1,4,120], -"classmpl_1_1impl_1_1topology__communicator.html#a179246280657f80aa624f7ebcb8ac9a4":[3,0,0,0,4,120], -"classmpl_1_1impl_1_1topology__communicator.html#a192fabbdbac09436fab92943148c5185":[2,0,0,1,4,71], -"classmpl_1_1impl_1_1topology__communicator.html#a192fabbdbac09436fab92943148c5185":[3,0,0,0,4,71], -"classmpl_1_1impl_1_1topology__communicator.html#a1948c90e2873f0db6b7fc32f7240e80a":[2,0,0,1,4,109], -"classmpl_1_1impl_1_1topology__communicator.html#a1948c90e2873f0db6b7fc32f7240e80a":[3,0,0,0,4,109], -"classmpl_1_1impl_1_1topology__communicator.html#a197f9833a6c4685a2368b7bea2a60cd8":[2,0,0,1,4,153], -"classmpl_1_1impl_1_1topology__communicator.html#a197f9833a6c4685a2368b7bea2a60cd8":[3,0,0,0,4,153], -"classmpl_1_1impl_1_1topology__communicator.html#a19912b0013f991bbebf2ef46fcb93c70":[2,0,0,1,4,98], -"classmpl_1_1impl_1_1topology__communicator.html#a19912b0013f991bbebf2ef46fcb93c70":[3,0,0,0,4,98], -"classmpl_1_1impl_1_1topology__communicator.html#a1a2fbf1a89b606c316790a29a6c24344":[3,0,0,0,4,2], -"classmpl_1_1impl_1_1topology__communicator.html#a1a2fbf1a89b606c316790a29a6c24344":[2,0,0,1,4,2], -"classmpl_1_1impl_1_1topology__communicator.html#a1bf177485606687353cd50bc5a3b3c59":[3,0,0,0,4,64], -"classmpl_1_1impl_1_1topology__communicator.html#a1bf177485606687353cd50bc5a3b3c59":[2,0,0,1,4,64], -"classmpl_1_1impl_1_1topology__communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644":[2,0,0,1,4,176], -"classmpl_1_1impl_1_1topology__communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644":[3,0,0,0,4,176], -"classmpl_1_1impl_1_1topology__communicator.html#a1f45f3b4b5afa504963d30203bebcd67":[2,0,0,1,4,170], -"classmpl_1_1impl_1_1topology__communicator.html#a1f45f3b4b5afa504963d30203bebcd67":[3,0,0,0,4,170], -"classmpl_1_1impl_1_1topology__communicator.html#a20505014d3a5ac58a5601faee033d003":[2,0,0,1,4,62], -"classmpl_1_1impl_1_1topology__communicator.html#a20505014d3a5ac58a5601faee033d003":[3,0,0,0,4,62], -"classmpl_1_1impl_1_1topology__communicator.html#a20766ee389c97340241ff730eae49475":[3,0,0,0,4,65], -"classmpl_1_1impl_1_1topology__communicator.html#a20766ee389c97340241ff730eae49475":[2,0,0,1,4,65], -"classmpl_1_1impl_1_1topology__communicator.html#a20c2142532726d3a3f25e4eb3293fd4c":[2,0,0,1,4,144], -"classmpl_1_1impl_1_1topology__communicator.html#a20c2142532726d3a3f25e4eb3293fd4c":[3,0,0,0,4,144], -"classmpl_1_1impl_1_1topology__communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb":[3,0,0,0,4,27], -"classmpl_1_1impl_1_1topology__communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb":[2,0,0,1,4,27], -"classmpl_1_1impl_1_1topology__communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a":[3,0,0,0,4,171], -"classmpl_1_1impl_1_1topology__communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a":[2,0,0,1,4,171], -"classmpl_1_1impl_1_1topology__communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe":[2,0,0,1,4,1], -"classmpl_1_1impl_1_1topology__communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe":[3,0,0,0,4,1], -"classmpl_1_1impl_1_1topology__communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627":[2,0,0,1,4,154], -"classmpl_1_1impl_1_1topology__communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627":[3,0,0,0,4,154], -"classmpl_1_1impl_1_1topology__communicator.html#a2a901501dfe4dad53249a142a6c61f8a":[3,0,0,0,4,172], -"classmpl_1_1impl_1_1topology__communicator.html#a2a901501dfe4dad53249a142a6c61f8a":[2,0,0,1,4,172], -"classmpl_1_1impl_1_1topology__communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f":[3,0,0,0,4,119], -"classmpl_1_1impl_1_1topology__communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f":[2,0,0,1,4,119], -"classmpl_1_1impl_1_1topology__communicator.html#a32881aa49f5e9c71792e98629a131822":[3,0,0,0,4,40], -"classmpl_1_1impl_1_1topology__communicator.html#a32881aa49f5e9c71792e98629a131822":[2,0,0,1,4,40], -"classmpl_1_1impl_1_1topology__communicator.html#a34c527f23af855f716bf00a2658c9436":[3,0,0,0,4,60], -"classmpl_1_1impl_1_1topology__communicator.html#a34c527f23af855f716bf00a2658c9436":[2,0,0,1,4,60], -"classmpl_1_1impl_1_1topology__communicator.html#a36031fd4a0c2ed7bab527e0a4663971f":[2,0,0,1,4,168], -"classmpl_1_1impl_1_1topology__communicator.html#a36031fd4a0c2ed7bab527e0a4663971f":[3,0,0,0,4,168], -"classmpl_1_1impl_1_1topology__communicator.html#a377702be1b30166ad458fcef11b2c239":[2,0,0,1,4,127], -"classmpl_1_1impl_1_1topology__communicator.html#a377702be1b30166ad458fcef11b2c239":[3,0,0,0,4,127], -"classmpl_1_1impl_1_1topology__communicator.html#a39c2f12ebc86e0930266a60ffecea926":[2,0,0,1,4,137], -"classmpl_1_1impl_1_1topology__communicator.html#a39c2f12ebc86e0930266a60ffecea926":[3,0,0,0,4,137], -"classmpl_1_1impl_1_1topology__communicator.html#a3b4d541cab8706ae5a4a699aef0662d3":[2,0,0,1,4,167], -"classmpl_1_1impl_1_1topology__communicator.html#a3b4d541cab8706ae5a4a699aef0662d3":[3,0,0,0,4,167], -"classmpl_1_1impl_1_1topology__communicator.html#a3f433b69dace132e01bea64624fff4b3":[2,0,0,1,4,187], -"classmpl_1_1impl_1_1topology__communicator.html#a3f433b69dace132e01bea64624fff4b3":[3,0,0,0,4,187], -"classmpl_1_1impl_1_1topology__communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416":[2,0,0,1,4,105], -"classmpl_1_1impl_1_1topology__communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416":[3,0,0,0,4,105], -"classmpl_1_1impl_1_1topology__communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc":[2,0,0,1,4,89], -"classmpl_1_1impl_1_1topology__communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc":[3,0,0,0,4,89], -"classmpl_1_1impl_1_1topology__communicator.html#a3fbbc822e36ea95e865a7b37ac0ad984":[3,0,0,0,4,85], -"classmpl_1_1impl_1_1topology__communicator.html#a3fbbc822e36ea95e865a7b37ac0ad984":[2,0,0,1,4,85], -"classmpl_1_1impl_1_1topology__communicator.html#a43c7b3d19a5af4ba0f30e40045a2e459":[2,0,0,1,4,124], -"classmpl_1_1impl_1_1topology__communicator.html#a43c7b3d19a5af4ba0f30e40045a2e459":[3,0,0,0,4,124], -"classmpl_1_1impl_1_1topology__communicator.html#a445e05af65cdc53b7a981d4884a4c3b8":[2,0,0,1,4,73], -"classmpl_1_1impl_1_1topology__communicator.html#a445e05af65cdc53b7a981d4884a4c3b8":[3,0,0,0,4,73], -"classmpl_1_1impl_1_1topology__communicator.html#a45585975b4b7cc0795a02abf6494963b":[2,0,0,1,4,33], -"classmpl_1_1impl_1_1topology__communicator.html#a45585975b4b7cc0795a02abf6494963b":[3,0,0,0,4,33], -"classmpl_1_1impl_1_1topology__communicator.html#a455d8703c09913eebe31cd360351c308":[2,0,0,1,4,128], -"classmpl_1_1impl_1_1topology__communicator.html#a455d8703c09913eebe31cd360351c308":[3,0,0,0,4,128], -"classmpl_1_1impl_1_1topology__communicator.html#a46e8797b907b9539b2ee90713a675e5c":[3,0,0,0,4,116], -"classmpl_1_1impl_1_1topology__communicator.html#a46e8797b907b9539b2ee90713a675e5c":[2,0,0,1,4,116], -"classmpl_1_1impl_1_1topology__communicator.html#a477820ee73599e311a6e73ef06fbdf33":[2,0,0,1,4,169], -"classmpl_1_1impl_1_1topology__communicator.html#a477820ee73599e311a6e73ef06fbdf33":[3,0,0,0,4,169], -"classmpl_1_1impl_1_1topology__communicator.html#a480ef5ac8533cd47ef55b04454baddca":[2,0,0,1,4,157], -"classmpl_1_1impl_1_1topology__communicator.html#a480ef5ac8533cd47ef55b04454baddca":[3,0,0,0,4,157], -"classmpl_1_1impl_1_1topology__communicator.html#a494c7c1849713e45d99d901b31250b35":[3,0,0,0,4,143], -"classmpl_1_1impl_1_1topology__communicator.html#a494c7c1849713e45d99d901b31250b35":[2,0,0,1,4,143], -"classmpl_1_1impl_1_1topology__communicator.html#a4a29592502142845c3bb0031221189a3":[3,0,0,0,4,67], -"classmpl_1_1impl_1_1topology__communicator.html#a4a29592502142845c3bb0031221189a3":[2,0,0,1,4,67], -"classmpl_1_1impl_1_1topology__communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21":[3,0,0,0,4,108], -"classmpl_1_1impl_1_1topology__communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21":[2,0,0,1,4,108], -"classmpl_1_1impl_1_1topology__communicator.html#a4ac75dc1695c441e9e8faa185a458cc3":[3,0,0,0,4,28], -"classmpl_1_1impl_1_1topology__communicator.html#a4ac75dc1695c441e9e8faa185a458cc3":[2,0,0,1,4,28], -"classmpl_1_1impl_1_1topology__communicator.html#a4cff38dd56b3d53992babac77cbefa8d":[2,0,0,1,4,54], -"classmpl_1_1impl_1_1topology__communicator.html#a4cff38dd56b3d53992babac77cbefa8d":[3,0,0,0,4,54], -"classmpl_1_1impl_1_1topology__communicator.html#a4db43a46f468c60e84b35f95577ff0f4":[3,0,0,0,4,17], -"classmpl_1_1impl_1_1topology__communicator.html#a4db43a46f468c60e84b35f95577ff0f4":[2,0,0,1,4,17], -"classmpl_1_1impl_1_1topology__communicator.html#a4de1ecacd035af3dca830995098a2f49":[3,0,0,0,4,96], -"classmpl_1_1impl_1_1topology__communicator.html#a4de1ecacd035af3dca830995098a2f49":[2,0,0,1,4,96], -"classmpl_1_1impl_1_1topology__communicator.html#a5314e5dc5b35f952dba239b8f03be330":[3,0,0,0,4,26], -"classmpl_1_1impl_1_1topology__communicator.html#a5314e5dc5b35f952dba239b8f03be330":[2,0,0,1,4,26], -"classmpl_1_1impl_1_1topology__communicator.html#a54da0c73668349841c941c53c6acff81":[2,0,0,1,4,131], -"classmpl_1_1impl_1_1topology__communicator.html#a54da0c73668349841c941c53c6acff81":[3,0,0,0,4,131], -"classmpl_1_1impl_1_1topology__communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84":[2,0,0,1,4,3], -"classmpl_1_1impl_1_1topology__communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84":[3,0,0,0,4,3], -"classmpl_1_1impl_1_1topology__communicator.html#a55feab940e9c72241215918199931936":[2,0,0,1,4,9], -"classmpl_1_1impl_1_1topology__communicator.html#a55feab940e9c72241215918199931936":[3,0,0,0,4,9], -"classmpl_1_1impl_1_1topology__communicator.html#a55fef351e8bb5d3062d25683cb404c9d":[3,0,0,0,4,152], -"classmpl_1_1impl_1_1topology__communicator.html#a55fef351e8bb5d3062d25683cb404c9d":[2,0,0,1,4,152], -"classmpl_1_1impl_1_1topology__communicator.html#a5664d9591456924a7343082445bc8452":[3,0,0,0,4,56], -"classmpl_1_1impl_1_1topology__communicator.html#a5664d9591456924a7343082445bc8452":[2,0,0,1,4,56], -"classmpl_1_1impl_1_1topology__communicator.html#a57de7fa3dd71c67ff0da9826c7ef0c71":[2,0,0,1,4,133], -"classmpl_1_1impl_1_1topology__communicator.html#a57de7fa3dd71c67ff0da9826c7ef0c71":[3,0,0,0,4,133], -"classmpl_1_1impl_1_1topology__communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7":[2,0,0,1,4,74], -"classmpl_1_1impl_1_1topology__communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7":[3,0,0,0,4,74], -"classmpl_1_1impl_1_1topology__communicator.html#a58b6d65e9351b61c493967718f550614":[2,0,0,1,4,113], -"classmpl_1_1impl_1_1topology__communicator.html#a58b6d65e9351b61c493967718f550614":[3,0,0,0,4,113], -"classmpl_1_1impl_1_1topology__communicator.html#a5a80517f1de86265d2a863a7c1fd5032":[3,0,0,0,4,162], -"classmpl_1_1impl_1_1topology__communicator.html#a5a80517f1de86265d2a863a7c1fd5032":[2,0,0,1,4,162], -"classmpl_1_1impl_1_1topology__communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c":[3,0,0,0,4,69], -"classmpl_1_1impl_1_1topology__communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c":[2,0,0,1,4,69], -"classmpl_1_1impl_1_1topology__communicator.html#a5ce91750a7c77edf43e53ac88e4e8524":[3,0,0,0,4,47], -"classmpl_1_1impl_1_1topology__communicator.html#a5ce91750a7c77edf43e53ac88e4e8524":[2,0,0,1,4,47], -"classmpl_1_1impl_1_1topology__communicator.html#a5ceb8a7771930409a0b7c54042b49866":[2,0,0,1,4,84], -"classmpl_1_1impl_1_1topology__communicator.html#a5ceb8a7771930409a0b7c54042b49866":[3,0,0,0,4,84], -"classmpl_1_1impl_1_1topology__communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec":[3,0,0,0,4,18], -"classmpl_1_1impl_1_1topology__communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec":[2,0,0,1,4,18], -"classmpl_1_1impl_1_1topology__communicator.html#a601c251b4c10c6797af3cd741dea4d55":[2,0,0,1,4,41], -"classmpl_1_1impl_1_1topology__communicator.html#a601c251b4c10c6797af3cd741dea4d55":[3,0,0,0,4,41], -"classmpl_1_1impl_1_1topology__communicator.html#a6149ac444daf9efa0818c1ad86df03f4":[2,0,0,1,4,177], -"classmpl_1_1impl_1_1topology__communicator.html#a6149ac444daf9efa0818c1ad86df03f4":[3,0,0,0,4,177], -"classmpl_1_1impl_1_1topology__communicator.html#a61c69fd52a576be43b7331536f54b73f":[2,0,0,1,4,110], -"classmpl_1_1impl_1_1topology__communicator.html#a61c69fd52a576be43b7331536f54b73f":[3,0,0,0,4,110], -"classmpl_1_1impl_1_1topology__communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2":[2,0,0,1,4,21], -"classmpl_1_1impl_1_1topology__communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2":[3,0,0,0,4,21], -"classmpl_1_1impl_1_1topology__communicator.html#a636784ef8a1e076a303e3e6279de1e7d":[2,0,0,1,4,149], -"classmpl_1_1impl_1_1topology__communicator.html#a636784ef8a1e076a303e3e6279de1e7d":[3,0,0,0,4,149], -"classmpl_1_1impl_1_1topology__communicator.html#a65311bd6bde1b8de5b8acf9ae902104a":[3,0,0,0,4,82], -"classmpl_1_1impl_1_1topology__communicator.html#a65311bd6bde1b8de5b8acf9ae902104a":[2,0,0,1,4,82], -"classmpl_1_1impl_1_1topology__communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3":[3,0,0,0,4,4], -"classmpl_1_1impl_1_1topology__communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3":[2,0,0,1,4,4], -"classmpl_1_1impl_1_1topology__communicator.html#a67f541a36dee046cc12d15d9133930b7":[2,0,0,1,4,115], -"classmpl_1_1impl_1_1topology__communicator.html#a67f541a36dee046cc12d15d9133930b7":[3,0,0,0,4,115], -"classmpl_1_1impl_1_1topology__communicator.html#a68996ab5379c9a104572b804633d869e":[2,0,0,1,4,53], -"classmpl_1_1impl_1_1topology__communicator.html#a68996ab5379c9a104572b804633d869e":[3,0,0,0,4,53], -"classmpl_1_1impl_1_1topology__communicator.html#a693590693b8621565e94abdd6763d5b6":[3,0,0,0,4,139], -"classmpl_1_1impl_1_1topology__communicator.html#a693590693b8621565e94abdd6763d5b6":[2,0,0,1,4,139], -"classmpl_1_1impl_1_1topology__communicator.html#a69ebec18f9d55bc8e2b6951f97855068":[2,0,0,1,4,59], -"classmpl_1_1impl_1_1topology__communicator.html#a69ebec18f9d55bc8e2b6951f97855068":[3,0,0,0,4,59], -"classmpl_1_1impl_1_1topology__communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f":[3,0,0,0,4,72], -"classmpl_1_1impl_1_1topology__communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f":[2,0,0,1,4,72], -"classmpl_1_1impl_1_1topology__communicator.html#a719512973bc590402ac30b10e5227d2b":[2,0,0,1,4,20], -"classmpl_1_1impl_1_1topology__communicator.html#a719512973bc590402ac30b10e5227d2b":[3,0,0,0,4,20], -"classmpl_1_1impl_1_1topology__communicator.html#a72d2639f200e5a36f1f81df5c499f06f":[3,0,0,0,4,104], -"classmpl_1_1impl_1_1topology__communicator.html#a72d2639f200e5a36f1f81df5c499f06f":[2,0,0,1,4,104], -"classmpl_1_1impl_1_1topology__communicator.html#a73df8f569865237bc58e2445c7d07742":[2,0,0,1,4,44], -"classmpl_1_1impl_1_1topology__communicator.html#a73df8f569865237bc58e2445c7d07742":[3,0,0,0,4,44], -"classmpl_1_1impl_1_1topology__communicator.html#a753e8742d27ff29a660b07ee0b90b69e":[2,0,0,1,4,45], -"classmpl_1_1impl_1_1topology__communicator.html#a753e8742d27ff29a660b07ee0b90b69e":[3,0,0,0,4,45], -"classmpl_1_1impl_1_1topology__communicator.html#a76dbca1b1f6089ee9e07e997b5d79295":[2,0,0,1,4,68], -"classmpl_1_1impl_1_1topology__communicator.html#a76dbca1b1f6089ee9e07e997b5d79295":[3,0,0,0,4,68], -"classmpl_1_1impl_1_1topology__communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0":[2,0,0,1,4,173], -"classmpl_1_1impl_1_1topology__communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0":[3,0,0,0,4,173], -"classmpl_1_1impl_1_1topology__communicator.html#a779f215eb82ce71764befaae9918b596":[2,0,0,1,4,77], -"classmpl_1_1impl_1_1topology__communicator.html#a779f215eb82ce71764befaae9918b596":[3,0,0,0,4,77], -"classmpl_1_1impl_1_1topology__communicator.html#a79e5f4cd63cf9354ceedc4da193e2410":[2,0,0,1,4,90], -"classmpl_1_1impl_1_1topology__communicator.html#a79e5f4cd63cf9354ceedc4da193e2410":[3,0,0,0,4,90], -"classmpl_1_1impl_1_1topology__communicator.html#a7abdf44a7c377ba7191cb4abc6648afe":[3,0,0,0,4,55], -"classmpl_1_1impl_1_1topology__communicator.html#a7abdf44a7c377ba7191cb4abc6648afe":[2,0,0,1,4,55], -"classmpl_1_1impl_1_1topology__communicator.html#a7b672d71b83fafca8f6bf4d435331180":[3,0,0,0,4,29], -"classmpl_1_1impl_1_1topology__communicator.html#a7b672d71b83fafca8f6bf4d435331180":[2,0,0,1,4,29], -"classmpl_1_1impl_1_1topology__communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af":[2,0,0,1,4,165], -"classmpl_1_1impl_1_1topology__communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af":[3,0,0,0,4,165], -"classmpl_1_1impl_1_1topology__communicator.html#a7eddabba5f98c99db189844854690d13":[3,0,0,0,4,63], -"classmpl_1_1impl_1_1topology__communicator.html#a7eddabba5f98c99db189844854690d13":[2,0,0,1,4,63], -"classmpl_1_1impl_1_1topology__communicator.html#a82b6f15cef4c0daa6825bc699418df22":[3,0,0,0,4,88], -"classmpl_1_1impl_1_1topology__communicator.html#a82b6f15cef4c0daa6825bc699418df22":[2,0,0,1,4,88], -"classmpl_1_1impl_1_1topology__communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9":[2,0,0,1,4,31], -"classmpl_1_1impl_1_1topology__communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9":[3,0,0,0,4,31], -"classmpl_1_1impl_1_1topology__communicator.html#a871cba17f8d1891fb0613f9a23c38866":[3,0,0,0,4,185], -"classmpl_1_1impl_1_1topology__communicator.html#a871cba17f8d1891fb0613f9a23c38866":[2,0,0,1,4,185], -"classmpl_1_1impl_1_1topology__communicator.html#a88368d3f4d7b375825ba839746aea7dd":[3,0,0,0,4,13], -"classmpl_1_1impl_1_1topology__communicator.html#a88368d3f4d7b375825ba839746aea7dd":[2,0,0,1,4,13], -"classmpl_1_1impl_1_1topology__communicator.html#a89b9a55af5259f119281592b4f63f2ee":[3,0,0,0,4,121], -"classmpl_1_1impl_1_1topology__communicator.html#a89b9a55af5259f119281592b4f63f2ee":[2,0,0,1,4,121], -"classmpl_1_1impl_1_1topology__communicator.html#a8e43e08af5e8481049731092274aca76":[3,0,0,0,4,66], -"classmpl_1_1impl_1_1topology__communicator.html#a8e43e08af5e8481049731092274aca76":[2,0,0,1,4,66], -"classmpl_1_1impl_1_1topology__communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b":[3,0,0,0,4,159], -"classmpl_1_1impl_1_1topology__communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b":[2,0,0,1,4,159], -"classmpl_1_1impl_1_1topology__communicator.html#a95d5c90f2a58fe228d846942fe700645":[2,0,0,1,4,43], -"classmpl_1_1impl_1_1topology__communicator.html#a95d5c90f2a58fe228d846942fe700645":[3,0,0,0,4,43], -"classmpl_1_1impl_1_1topology__communicator.html#a970647a9680c6bdc3ffbe0814b32f989":[3,0,0,0,4,99], -"classmpl_1_1impl_1_1topology__communicator.html#a970647a9680c6bdc3ffbe0814b32f989":[2,0,0,1,4,99], -"classmpl_1_1impl_1_1topology__communicator.html#a997e3a727642f7fe7ab74a7342fa334b":[2,0,0,1,4,7], -"classmpl_1_1impl_1_1topology__communicator.html#a997e3a727642f7fe7ab74a7342fa334b":[3,0,0,0,4,7], -"classmpl_1_1impl_1_1topology__communicator.html#a9dccde1bf10e911c3a00d1a546005e94":[2,0,0,1,4,80], -"classmpl_1_1impl_1_1topology__communicator.html#a9dccde1bf10e911c3a00d1a546005e94":[3,0,0,0,4,80], -"classmpl_1_1impl_1_1topology__communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d":[3,0,0,0,4,146], -"classmpl_1_1impl_1_1topology__communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d":[2,0,0,1,4,146], -"classmpl_1_1impl_1_1topology__communicator.html#a9fbb87f9933ff071092164c9e264d817":[3,0,0,0,4,112], -"classmpl_1_1impl_1_1topology__communicator.html#a9fbb87f9933ff071092164c9e264d817":[2,0,0,1,4,112], -"classmpl_1_1impl_1_1topology__communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6":[3,0,0,0,4,160], -"classmpl_1_1impl_1_1topology__communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6":[2,0,0,1,4,160], -"classmpl_1_1impl_1_1topology__communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5":[2,0,0,1,4,175], -"classmpl_1_1impl_1_1topology__communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5":[3,0,0,0,4,175], -"classmpl_1_1impl_1_1topology__communicator.html#aa2b51b89d72555ebfb1862d1de688061":[3,0,0,0,4,50], -"classmpl_1_1impl_1_1topology__communicator.html#aa2b51b89d72555ebfb1862d1de688061":[2,0,0,1,4,50], -"classmpl_1_1impl_1_1topology__communicator.html#aa4407a90c2f598867b36e8e557b72ec0":[2,0,0,1,4,151], -"classmpl_1_1impl_1_1topology__communicator.html#aa4407a90c2f598867b36e8e557b72ec0":[3,0,0,0,4,151], -"classmpl_1_1impl_1_1topology__communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf":[2,0,0,1,4,48], -"classmpl_1_1impl_1_1topology__communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf":[3,0,0,0,4,48], -"classmpl_1_1impl_1_1topology__communicator.html#aa541e7830014dce23eb1ce5f6bcfe281":[2,0,0,1,4,46], -"classmpl_1_1impl_1_1topology__communicator.html#aa541e7830014dce23eb1ce5f6bcfe281":[3,0,0,0,4,46], -"classmpl_1_1impl_1_1topology__communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca":[2,0,0,1,4,150], -"classmpl_1_1impl_1_1topology__communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca":[3,0,0,0,4,150], -"classmpl_1_1impl_1_1topology__communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42":[3,0,0,0,4,163], -"classmpl_1_1impl_1_1topology__communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42":[2,0,0,1,4,163], -"classmpl_1_1impl_1_1topology__communicator.html#aa91aed6395fdcbb40788323a4cf45110":[3,0,0,0,4,76], -"classmpl_1_1impl_1_1topology__communicator.html#aa91aed6395fdcbb40788323a4cf45110":[2,0,0,1,4,76], -"classmpl_1_1impl_1_1topology__communicator.html#aaa714c0902d770205ee9cfb636f20fed":[3,0,0,0,4,155], -"classmpl_1_1impl_1_1topology__communicator.html#aaa714c0902d770205ee9cfb636f20fed":[2,0,0,1,4,155], -"classmpl_1_1impl_1_1topology__communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f":[3,0,0,0,4,174], -"classmpl_1_1impl_1_1topology__communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f":[2,0,0,1,4,174], -"classmpl_1_1impl_1_1topology__communicator.html#aad369f0de0b51dc3cf7992ed26c0799d":[2,0,0,1,4,58], -"classmpl_1_1impl_1_1topology__communicator.html#aad369f0de0b51dc3cf7992ed26c0799d":[3,0,0,0,4,58], -"classmpl_1_1impl_1_1topology__communicator.html#aad40f322ef427d759fe699b1318c3103":[3,0,0,0,4,79], -"classmpl_1_1impl_1_1topology__communicator.html#aad40f322ef427d759fe699b1318c3103":[2,0,0,1,4,79], -"classmpl_1_1impl_1_1topology__communicator.html#aadb9f14a7a9f9bd44eae7832daed895d":[3,0,0,0,4,51], -"classmpl_1_1impl_1_1topology__communicator.html#aadb9f14a7a9f9bd44eae7832daed895d":[2,0,0,1,4,51], -"classmpl_1_1impl_1_1topology__communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2":[3,0,0,0,4,117], -"classmpl_1_1impl_1_1topology__communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2":[2,0,0,1,4,117], -"classmpl_1_1impl_1_1topology__communicator.html#aae3643fa3e833c9dfb4eaf871235aed3":[2,0,0,1,4,148], -"classmpl_1_1impl_1_1topology__communicator.html#aae3643fa3e833c9dfb4eaf871235aed3":[3,0,0,0,4,148], -"classmpl_1_1impl_1_1topology__communicator.html#aaf647eec3afe83caf2afafe5a82b405a":[3,0,0,0,4,114], -"classmpl_1_1impl_1_1topology__communicator.html#aaf647eec3afe83caf2afafe5a82b405a":[2,0,0,1,4,114], -"classmpl_1_1impl_1_1topology__communicator.html#aafb144ba1a5494f2a21de28c50b3ab91":[2,0,0,1,4,24], -"classmpl_1_1impl_1_1topology__communicator.html#aafb144ba1a5494f2a21de28c50b3ab91":[3,0,0,0,4,24], -"classmpl_1_1impl_1_1topology__communicator.html#aba77e505c9c19f3c6acdf10d4bc9fe16":[3,0,0,0,4,81], -"classmpl_1_1impl_1_1topology__communicator.html#aba77e505c9c19f3c6acdf10d4bc9fe16":[2,0,0,1,4,81], -"classmpl_1_1impl_1_1topology__communicator.html#aba80b0971e6f8d2f04d1454f389833be":[2,0,0,1,4,166], -"classmpl_1_1impl_1_1topology__communicator.html#aba80b0971e6f8d2f04d1454f389833be":[3,0,0,0,4,166], -"classmpl_1_1impl_1_1topology__communicator.html#abb0001ba1ee4c2fbd53038bde821e647":[2,0,0,1,4,101], -"classmpl_1_1impl_1_1topology__communicator.html#abb0001ba1ee4c2fbd53038bde821e647":[3,0,0,0,4,101], -"classmpl_1_1impl_1_1topology__communicator.html#abb3d36d582c7a469b5e49dca53c4f952":[2,0,0,1,4,36], -"classmpl_1_1impl_1_1topology__communicator.html#abb3d36d582c7a469b5e49dca53c4f952":[3,0,0,0,4,36], -"classmpl_1_1impl_1_1topology__communicator.html#abbc79395f9583143b1427c2e3f1c6637":[2,0,0,1,4,138], -"classmpl_1_1impl_1_1topology__communicator.html#abbc79395f9583143b1427c2e3f1c6637":[3,0,0,0,4,138], -"classmpl_1_1impl_1_1topology__communicator.html#abdb6d8fc8a9aafabf50b96275f09775d":[2,0,0,1,4,92] -}; diff --git a/docs/html/navtreeindex11.js b/docs/html/navtreeindex11.js deleted file mode 100644 index 598eb622..00000000 --- a/docs/html/navtreeindex11.js +++ /dev/null @@ -1,253 +0,0 @@ -var NAVTREEINDEX11 = -{ -"classmpl_1_1impl_1_1topology__communicator.html#abdb6d8fc8a9aafabf50b96275f09775d":[3,0,0,0,4,92], -"classmpl_1_1impl_1_1topology__communicator.html#abe1bd8f32c690ee7a31456da2c437bdf":[2,0,0,1,4,181], -"classmpl_1_1impl_1_1topology__communicator.html#abe1bd8f32c690ee7a31456da2c437bdf":[3,0,0,0,4,181], -"classmpl_1_1impl_1_1topology__communicator.html#abe91007be7acef7641d6cbb08526d53b":[3,0,0,0,4,52], -"classmpl_1_1impl_1_1topology__communicator.html#abe91007be7acef7641d6cbb08526d53b":[2,0,0,1,4,52], -"classmpl_1_1impl_1_1topology__communicator.html#abeb99f29459a82f9027dfc8b4bd60add":[3,0,0,0,4,184], -"classmpl_1_1impl_1_1topology__communicator.html#abeb99f29459a82f9027dfc8b4bd60add":[2,0,0,1,4,184], -"classmpl_1_1impl_1_1topology__communicator.html#ac402242f2ad68dbce183e60cfcc82382":[3,0,0,0,4,178], -"classmpl_1_1impl_1_1topology__communicator.html#ac402242f2ad68dbce183e60cfcc82382":[2,0,0,1,4,178], -"classmpl_1_1impl_1_1topology__communicator.html#ac43f72ca3930976c113403fd465087b0":[2,0,0,1,4,22], -"classmpl_1_1impl_1_1topology__communicator.html#ac43f72ca3930976c113403fd465087b0":[3,0,0,0,4,22], -"classmpl_1_1impl_1_1topology__communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5":[3,0,0,0,4,19], -"classmpl_1_1impl_1_1topology__communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5":[2,0,0,1,4,19], -"classmpl_1_1impl_1_1topology__communicator.html#ac4b1db52070739de82b25f972b9e6996":[3,0,0,0,4,35], -"classmpl_1_1impl_1_1topology__communicator.html#ac4b1db52070739de82b25f972b9e6996":[2,0,0,1,4,35], -"classmpl_1_1impl_1_1topology__communicator.html#ac514a6fe8a481f7120bc1d105c09ee96":[3,0,0,0,4,106], -"classmpl_1_1impl_1_1topology__communicator.html#ac514a6fe8a481f7120bc1d105c09ee96":[2,0,0,1,4,106], -"classmpl_1_1impl_1_1topology__communicator.html#ac7cb886dc70531a897bce6396c9a6e7e":[2,0,0,1,4,83], -"classmpl_1_1impl_1_1topology__communicator.html#ac7cb886dc70531a897bce6396c9a6e7e":[3,0,0,0,4,83], -"classmpl_1_1impl_1_1topology__communicator.html#acbe2058694618ea2c085d03bcaf4946c":[3,0,0,0,4,34], -"classmpl_1_1impl_1_1topology__communicator.html#acbe2058694618ea2c085d03bcaf4946c":[2,0,0,1,4,34], -"classmpl_1_1impl_1_1topology__communicator.html#acce39280ea657a7d9e5d675631cf7a12":[2,0,0,1,4,57], -"classmpl_1_1impl_1_1topology__communicator.html#acce39280ea657a7d9e5d675631cf7a12":[3,0,0,0,4,57], -"classmpl_1_1impl_1_1topology__communicator.html#acdeb1107c64614728b6c2cc0e65075bf":[3,0,0,0,4,118], -"classmpl_1_1impl_1_1topology__communicator.html#acdeb1107c64614728b6c2cc0e65075bf":[2,0,0,1,4,118], -"classmpl_1_1impl_1_1topology__communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47":[3,0,0,0,4,42], -"classmpl_1_1impl_1_1topology__communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47":[2,0,0,1,4,42], -"classmpl_1_1impl_1_1topology__communicator.html#ad15575d951e6a6c4327052e2ff01730f":[2,0,0,1,4,49], -"classmpl_1_1impl_1_1topology__communicator.html#ad15575d951e6a6c4327052e2ff01730f":[3,0,0,0,4,49], -"classmpl_1_1impl_1_1topology__communicator.html#ad2342955984c4db387d52a5414b212c5":[3,0,0,0,4,94], -"classmpl_1_1impl_1_1topology__communicator.html#ad2342955984c4db387d52a5414b212c5":[2,0,0,1,4,94], -"classmpl_1_1impl_1_1topology__communicator.html#ad2d304708463bb6f91e1a54b3d87106a":[2,0,0,1,4,70], -"classmpl_1_1impl_1_1topology__communicator.html#ad2d304708463bb6f91e1a54b3d87106a":[3,0,0,0,4,70], -"classmpl_1_1impl_1_1topology__communicator.html#ad5daeea3d8b7033a2f70cd19582e098a":[3,0,0,0,4,122], -"classmpl_1_1impl_1_1topology__communicator.html#ad5daeea3d8b7033a2f70cd19582e098a":[2,0,0,1,4,122], -"classmpl_1_1impl_1_1topology__communicator.html#ad67313aace6a05f58081939eb1d2a4b8":[2,0,0,1,4,32], -"classmpl_1_1impl_1_1topology__communicator.html#ad67313aace6a05f58081939eb1d2a4b8":[3,0,0,0,4,32], -"classmpl_1_1impl_1_1topology__communicator.html#ad709e10e351d9ffd4dd9917a9b697c19":[2,0,0,1,4,12], -"classmpl_1_1impl_1_1topology__communicator.html#ad709e10e351d9ffd4dd9917a9b697c19":[3,0,0,0,4,12], -"classmpl_1_1impl_1_1topology__communicator.html#ad8c0dc208fd9705a2423346d0baaff58":[3,0,0,0,4,102], -"classmpl_1_1impl_1_1topology__communicator.html#ad8c0dc208fd9705a2423346d0baaff58":[2,0,0,1,4,102], -"classmpl_1_1impl_1_1topology__communicator.html#ad9dda1e430895757470e09c7ac721dee":[3,0,0,0,4,15], -"classmpl_1_1impl_1_1topology__communicator.html#ad9dda1e430895757470e09c7ac721dee":[2,0,0,1,4,15], -"classmpl_1_1impl_1_1topology__communicator.html#ada2dc41f3f09788b9dd87be27981668a":[2,0,0,1,4,130], -"classmpl_1_1impl_1_1topology__communicator.html#ada2dc41f3f09788b9dd87be27981668a":[3,0,0,0,4,130], -"classmpl_1_1impl_1_1topology__communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d":[3,0,0,0,4,30], -"classmpl_1_1impl_1_1topology__communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d":[2,0,0,1,4,30], -"classmpl_1_1impl_1_1topology__communicator.html#adb4b189592ceb6f3a16c53d48e3071b8":[2,0,0,1,4,164], -"classmpl_1_1impl_1_1topology__communicator.html#adb4b189592ceb6f3a16c53d48e3071b8":[3,0,0,0,4,164], -"classmpl_1_1impl_1_1topology__communicator.html#adb886db659e8bc352ca70800704b8956":[3,0,0,0,4,147], -"classmpl_1_1impl_1_1topology__communicator.html#adb886db659e8bc352ca70800704b8956":[2,0,0,1,4,147], -"classmpl_1_1impl_1_1topology__communicator.html#add45a9df6b60973abe8d13b9161c0ed8":[3,0,0,0,4,141], -"classmpl_1_1impl_1_1topology__communicator.html#add45a9df6b60973abe8d13b9161c0ed8":[2,0,0,1,4,141], -"classmpl_1_1impl_1_1topology__communicator.html#ade499e3631297c5268da93604ec68a94":[2,0,0,1,4,156], -"classmpl_1_1impl_1_1topology__communicator.html#ade499e3631297c5268da93604ec68a94":[3,0,0,0,4,156], -"classmpl_1_1impl_1_1topology__communicator.html#adf4170f0647e141b72b441c99a5421f5":[3,0,0,0,4,10], -"classmpl_1_1impl_1_1topology__communicator.html#adf4170f0647e141b72b441c99a5421f5":[2,0,0,1,4,10], -"classmpl_1_1impl_1_1topology__communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597":[3,0,0,0,4,158], -"classmpl_1_1impl_1_1topology__communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597":[2,0,0,1,4,158], -"classmpl_1_1impl_1_1topology__communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789":[3,0,0,0,4,136], -"classmpl_1_1impl_1_1topology__communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789":[2,0,0,1,4,136], -"classmpl_1_1impl_1_1topology__communicator.html#ae17e2ec67fab08b09d7c67923fa81b42":[3,0,0,0,4,38], -"classmpl_1_1impl_1_1topology__communicator.html#ae17e2ec67fab08b09d7c67923fa81b42":[2,0,0,1,4,38], -"classmpl_1_1impl_1_1topology__communicator.html#ae2941001b886519f2d10d0ebb9901e70":[3,0,0,0,4,25], -"classmpl_1_1impl_1_1topology__communicator.html#ae2941001b886519f2d10d0ebb9901e70":[2,0,0,1,4,25], -"classmpl_1_1impl_1_1topology__communicator.html#ae2bdc9265ab60a53dced1a251b3e5898":[2,0,0,1,4,183], -"classmpl_1_1impl_1_1topology__communicator.html#ae2bdc9265ab60a53dced1a251b3e5898":[3,0,0,0,4,183], -"classmpl_1_1impl_1_1topology__communicator.html#ae35acd56966f491923a80abbc13fe74a":[3,0,0,0,4,100], -"classmpl_1_1impl_1_1topology__communicator.html#ae35acd56966f491923a80abbc13fe74a":[2,0,0,1,4,100], -"classmpl_1_1impl_1_1topology__communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3":[3,0,0,0,4,23], -"classmpl_1_1impl_1_1topology__communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3":[2,0,0,1,4,23], -"classmpl_1_1impl_1_1topology__communicator.html#ae6e7de007099b7dc579f638a39d56911":[3,0,0,0,4,97], -"classmpl_1_1impl_1_1topology__communicator.html#ae6e7de007099b7dc579f638a39d56911":[2,0,0,1,4,97], -"classmpl_1_1impl_1_1topology__communicator.html#ae71687a9aa6bac6a2b888245aa801020":[3,0,0,0,4,75], -"classmpl_1_1impl_1_1topology__communicator.html#ae71687a9aa6bac6a2b888245aa801020":[2,0,0,1,4,75], -"classmpl_1_1impl_1_1topology__communicator.html#aea3f30e3e33676cfbd8f3757082949cd":[2,0,0,1,4,132], -"classmpl_1_1impl_1_1topology__communicator.html#aea3f30e3e33676cfbd8f3757082949cd":[3,0,0,0,4,132], -"classmpl_1_1impl_1_1topology__communicator.html#aed2415ddb3e27cce97fd5317f781a86c":[2,0,0,1,4,145], -"classmpl_1_1impl_1_1topology__communicator.html#aed2415ddb3e27cce97fd5317f781a86c":[3,0,0,0,4,145], -"classmpl_1_1impl_1_1topology__communicator.html#af11d56af7c3459eac6b3f5285788c8b9":[2,0,0,1,4,123], -"classmpl_1_1impl_1_1topology__communicator.html#af11d56af7c3459eac6b3f5285788c8b9":[3,0,0,0,4,123], -"classmpl_1_1impl_1_1topology__communicator.html#af1d52b673c059c284806768be1240afc":[3,0,0,0,4,39], -"classmpl_1_1impl_1_1topology__communicator.html#af1d52b673c059c284806768be1240afc":[2,0,0,1,4,39], -"classmpl_1_1impl_1_1topology__communicator.html#af3ce31d403e1e2c143acb593ca1b21c2":[2,0,0,1,4,125], -"classmpl_1_1impl_1_1topology__communicator.html#af3ce31d403e1e2c143acb593ca1b21c2":[3,0,0,0,4,125], -"classmpl_1_1impl_1_1topology__communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f":[2,0,0,1,4,135], -"classmpl_1_1impl_1_1topology__communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f":[3,0,0,0,4,135], -"classmpl_1_1impl_1_1topology__communicator.html#af43c205c247a23c35ec015b257f10a6e":[2,0,0,1,4,37], -"classmpl_1_1impl_1_1topology__communicator.html#af43c205c247a23c35ec015b257f10a6e":[3,0,0,0,4,37], -"classmpl_1_1impl_1_1topology__communicator.html#af5822b089b634a670a9f3cef6e37dcef":[2,0,0,1,4,126], -"classmpl_1_1impl_1_1topology__communicator.html#af5822b089b634a670a9f3cef6e37dcef":[3,0,0,0,4,126], -"classmpl_1_1impl_1_1topology__communicator.html#af66054a704ac25557aa25b356e8abd63":[3,0,0,0,4,0], -"classmpl_1_1impl_1_1topology__communicator.html#af66054a704ac25557aa25b356e8abd63":[2,0,0,1,4,0], -"classmpl_1_1impl_1_1topology__communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703":[3,0,0,0,4,0,2], -"classmpl_1_1impl_1_1topology__communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703":[2,0,0,1,4,0,2], -"classmpl_1_1impl_1_1topology__communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29":[3,0,0,0,4,0,3], -"classmpl_1_1impl_1_1topology__communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29":[2,0,0,1,4,0,3], -"classmpl_1_1impl_1_1topology__communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac":[3,0,0,0,4,0,1], -"classmpl_1_1impl_1_1topology__communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac":[2,0,0,1,4,0,1], -"classmpl_1_1impl_1_1topology__communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8":[3,0,0,0,4,0,0], -"classmpl_1_1impl_1_1topology__communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8":[2,0,0,1,4,0,0], -"classmpl_1_1impl_1_1topology__communicator.html#af786635362fca5a0f915771332383589":[3,0,0,0,4,103], -"classmpl_1_1impl_1_1topology__communicator.html#af786635362fca5a0f915771332383589":[2,0,0,1,4,103], -"classmpl_1_1impl_1_1topology__communicator.html#afcb7048f892b4c371bba2e261e565656":[3,0,0,0,4,16], -"classmpl_1_1impl_1_1topology__communicator.html#afcb7048f892b4c371bba2e261e565656":[2,0,0,1,4,16], -"classmpl_1_1impl_1_1topology__communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3":[3,0,0,0,4,107], -"classmpl_1_1impl_1_1topology__communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3":[2,0,0,1,4,107], -"classmpl_1_1impl_1_1topology__communicator.html#afe6c73aa613bf07ed4790210f10a0f1c":[2,0,0,1,4,161], -"classmpl_1_1impl_1_1topology__communicator.html#afe6c73aa613bf07ed4790210f10a0f1c":[3,0,0,0,4,161], -"classmpl_1_1indexed__block__layout.html":[3,0,0,23], -"classmpl_1_1indexed__block__layout.html":[2,0,0,24], -"classmpl_1_1indexed__block__layout.html#a0397342ecc9d8e57d7e7443971966e2c":[2,0,0,24,13], -"classmpl_1_1indexed__block__layout.html#a0397342ecc9d8e57d7e7443971966e2c":[3,0,0,23,13], -"classmpl_1_1indexed__block__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[3,0,0,23,8], -"classmpl_1_1indexed__block__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,24,8], -"classmpl_1_1indexed__block__layout.html#a0890ec4684e6a465170f88932e116d30":[3,0,0,23,20], -"classmpl_1_1indexed__block__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,24,20], -"classmpl_1_1indexed__block__layout.html#a09471a11699169f30d5165bbe912cf8a":[3,0,0,23,3], -"classmpl_1_1indexed__block__layout.html#a09471a11699169f30d5165bbe912cf8a":[2,0,0,24,3], -"classmpl_1_1indexed__block__layout.html#a1dc6994a6a2609d758a2311557a29998":[3,0,0,23,4], -"classmpl_1_1indexed__block__layout.html#a1dc6994a6a2609d758a2311557a29998":[2,0,0,24,4], -"classmpl_1_1indexed__block__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[3,0,0,23,18], -"classmpl_1_1indexed__block__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,24,18], -"classmpl_1_1indexed__block__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[3,0,0,23,23], -"classmpl_1_1indexed__block__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,24,23], -"classmpl_1_1indexed__block__layout.html#a2e7623e83f661a3948ca83f797149070":[2,0,0,24,15], -"classmpl_1_1indexed__block__layout.html#a2e7623e83f661a3948ca83f797149070":[3,0,0,23,15], -"classmpl_1_1indexed__block__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,24,17], -"classmpl_1_1indexed__block__layout.html#a45840e6936914baef876a0b67a8bb499":[3,0,0,23,17], -"classmpl_1_1indexed__block__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[3,0,0,23,21], -"classmpl_1_1indexed__block__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,24,21], -"classmpl_1_1indexed__block__layout.html#a53a1cb6e0006c275f9780191ceade271":[2,0,0,24,1], -"classmpl_1_1indexed__block__layout.html#a53a1cb6e0006c275f9780191ceade271":[3,0,0,23,1], -"classmpl_1_1indexed__block__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,24,11], -"classmpl_1_1indexed__block__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[3,0,0,23,11], -"classmpl_1_1indexed__block__layout.html#a74478123f3da83ff60414e723836f46a":[3,0,0,23,12], -"classmpl_1_1indexed__block__layout.html#a74478123f3da83ff60414e723836f46a":[2,0,0,24,12], -"classmpl_1_1indexed__block__layout.html#a80713f15de3244b019294ee277c8c650":[3,0,0,23,22], -"classmpl_1_1indexed__block__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,24,22], -"classmpl_1_1indexed__block__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[3,0,0,23,6], -"classmpl_1_1indexed__block__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,24,6], -"classmpl_1_1indexed__block__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[3,0,0,23,9], -"classmpl_1_1indexed__block__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,24,9], -"classmpl_1_1indexed__block__layout.html#aa391a934f031693cf985dcd1c675d8e4":[3,0,0,23,7], -"classmpl_1_1indexed__block__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,24,7], -"classmpl_1_1indexed__block__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,24,14], -"classmpl_1_1indexed__block__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[3,0,0,23,14], -"classmpl_1_1indexed__block__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,24,16], -"classmpl_1_1indexed__block__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[3,0,0,23,16], -"classmpl_1_1indexed__block__layout.html#abce0f3197d6b2252c951535b443d7d5e":[3,0,0,23,10], -"classmpl_1_1indexed__block__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,24,10], -"classmpl_1_1indexed__block__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,24,19], -"classmpl_1_1indexed__block__layout.html#adf592d9e08a92314cc086bd51d643953":[3,0,0,23,19], -"classmpl_1_1indexed__block__layout.html#ae555bc8d3b95d9180a65668f9caece8e":[2,0,0,24,5], -"classmpl_1_1indexed__block__layout.html#ae555bc8d3b95d9180a65668f9caece8e":[3,0,0,23,5], -"classmpl_1_1indexed__block__layout.html#afe8a5303c144ec5b1b19c7d71cc90e99":[3,0,0,23,2], -"classmpl_1_1indexed__block__layout.html#afe8a5303c144ec5b1b19c7d71cc90e99":[2,0,0,24,2], -"classmpl_1_1indexed__block__layout_1_1parameter.html":[3,0,0,23,0], -"classmpl_1_1indexed__block__layout_1_1parameter.html":[2,0,0,24,0], -"classmpl_1_1indexed__block__layout_1_1parameter.html#a17af34d4276ce99356fc0b943e6bce54":[2,0,0,24,0,4], -"classmpl_1_1indexed__block__layout_1_1parameter.html#a17af34d4276ce99356fc0b943e6bce54":[3,0,0,23,0,4], -"classmpl_1_1indexed__block__layout_1_1parameter.html#a3f34394906bb3098855aee75cf44edd3":[2,0,0,24,0,3], -"classmpl_1_1indexed__block__layout_1_1parameter.html#a3f34394906bb3098855aee75cf44edd3":[3,0,0,23,0,3], -"classmpl_1_1indexed__block__layout_1_1parameter.html#a4b2073a35551d6b746134e15f19dbbc5":[2,0,0,24,0,1], -"classmpl_1_1indexed__block__layout_1_1parameter.html#a4b2073a35551d6b746134e15f19dbbc5":[3,0,0,23,0,1], -"classmpl_1_1indexed__block__layout_1_1parameter.html#a5bb1c084eb68e977508c6982b270af5b":[2,0,0,24,0,2], -"classmpl_1_1indexed__block__layout_1_1parameter.html#a5bb1c084eb68e977508c6982b270af5b":[3,0,0,23,0,2], -"classmpl_1_1indexed__block__layout_1_1parameter.html#a702595e25a34275d3057c27dae064688":[2,0,0,24,0,0], -"classmpl_1_1indexed__block__layout_1_1parameter.html#a702595e25a34275d3057c27dae064688":[3,0,0,23,0,0], -"classmpl_1_1indexed__layout.html":[3,0,0,24], -"classmpl_1_1indexed__layout.html":[2,0,0,25], -"classmpl_1_1indexed__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[3,0,0,24,8], -"classmpl_1_1indexed__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,25,8], -"classmpl_1_1indexed__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,25,20], -"classmpl_1_1indexed__layout.html#a0890ec4684e6a465170f88932e116d30":[3,0,0,24,20], -"classmpl_1_1indexed__layout.html#a1b604ca3e6e607f1e7c33d771c88d275":[3,0,0,24,13], -"classmpl_1_1indexed__layout.html#a1b604ca3e6e607f1e7c33d771c88d275":[2,0,0,25,13], -"classmpl_1_1indexed__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,25,18], -"classmpl_1_1indexed__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[3,0,0,24,18], -"classmpl_1_1indexed__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,25,23], -"classmpl_1_1indexed__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[3,0,0,24,23], -"classmpl_1_1indexed__layout.html#a2ef13d7c3e8178574a15db51056df13e":[2,0,0,25,12], -"classmpl_1_1indexed__layout.html#a2ef13d7c3e8178574a15db51056df13e":[3,0,0,24,12], -"classmpl_1_1indexed__layout.html#a45840e6936914baef876a0b67a8bb499":[3,0,0,24,17], -"classmpl_1_1indexed__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,25,17], -"classmpl_1_1indexed__layout.html#a4814730ccbda9d2c8f4a00c76466bcf4":[3,0,0,24,3], -"classmpl_1_1indexed__layout.html#a4814730ccbda9d2c8f4a00c76466bcf4":[2,0,0,25,3], -"classmpl_1_1indexed__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[3,0,0,24,21], -"classmpl_1_1indexed__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,25,21], -"classmpl_1_1indexed__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,25,11], -"classmpl_1_1indexed__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[3,0,0,24,11], -"classmpl_1_1indexed__layout.html#a637fa395f20bf6a7b06f33fe8477716a":[3,0,0,24,2], -"classmpl_1_1indexed__layout.html#a637fa395f20bf6a7b06f33fe8477716a":[2,0,0,25,2], -"classmpl_1_1indexed__layout.html#a80713f15de3244b019294ee277c8c650":[3,0,0,24,22], -"classmpl_1_1indexed__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,25,22], -"classmpl_1_1indexed__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[3,0,0,24,6], -"classmpl_1_1indexed__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,25,6], -"classmpl_1_1indexed__layout.html#a8193a18df935777de33730ecda553f18":[3,0,0,24,1], -"classmpl_1_1indexed__layout.html#a8193a18df935777de33730ecda553f18":[2,0,0,25,1], -"classmpl_1_1indexed__layout.html#a91ad5d974413ad678d1bfd10e403f31f":[2,0,0,25,5], -"classmpl_1_1indexed__layout.html#a91ad5d974413ad678d1bfd10e403f31f":[3,0,0,24,5], -"classmpl_1_1indexed__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[3,0,0,24,9], -"classmpl_1_1indexed__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,25,9], -"classmpl_1_1indexed__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,25,7], -"classmpl_1_1indexed__layout.html#aa391a934f031693cf985dcd1c675d8e4":[3,0,0,24,7], -"classmpl_1_1indexed__layout.html#aaca95a4fc535798296b2287e87934820":[3,0,0,24,15], -"classmpl_1_1indexed__layout.html#aaca95a4fc535798296b2287e87934820":[2,0,0,25,15], -"classmpl_1_1indexed__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[3,0,0,24,14], -"classmpl_1_1indexed__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,25,14], -"classmpl_1_1indexed__layout.html#ab1ced466b429dc64c875e27b57763b46":[3,0,0,24,4], -"classmpl_1_1indexed__layout.html#ab1ced466b429dc64c875e27b57763b46":[2,0,0,25,4], -"classmpl_1_1indexed__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[3,0,0,24,16], -"classmpl_1_1indexed__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,25,16], -"classmpl_1_1indexed__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,25,10], -"classmpl_1_1indexed__layout.html#abce0f3197d6b2252c951535b443d7d5e":[3,0,0,24,10], -"classmpl_1_1indexed__layout.html#adf592d9e08a92314cc086bd51d643953":[3,0,0,24,19], -"classmpl_1_1indexed__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,25,19], -"classmpl_1_1indexed__layout_1_1parameter.html":[3,0,0,24,0], -"classmpl_1_1indexed__layout_1_1parameter.html":[2,0,0,25,0], -"classmpl_1_1indexed__layout_1_1parameter.html#a00e184b92d6c09a49438d48979194f99":[2,0,0,25,0,3], -"classmpl_1_1indexed__layout_1_1parameter.html#a00e184b92d6c09a49438d48979194f99":[3,0,0,24,0,3], -"classmpl_1_1indexed__layout_1_1parameter.html#a200ede70b91a8a0ef5cf50cfa52e8635":[3,0,0,24,0,0], -"classmpl_1_1indexed__layout_1_1parameter.html#a200ede70b91a8a0ef5cf50cfa52e8635":[2,0,0,25,0,0], -"classmpl_1_1indexed__layout_1_1parameter.html#a6062daa18018ab29118a60a86bf54937":[3,0,0,24,0,1], -"classmpl_1_1indexed__layout_1_1parameter.html#a6062daa18018ab29118a60a86bf54937":[2,0,0,25,0,1], -"classmpl_1_1indexed__layout_1_1parameter.html#a663702e0127ea25518e32acbbf95c7c9":[3,0,0,24,0,2], -"classmpl_1_1indexed__layout_1_1parameter.html#a663702e0127ea25518e32acbbf95c7c9":[2,0,0,25,0,2], -"classmpl_1_1indexed__layout_1_1parameter.html#a97dc21015db1900818c4f2cbedf2823c":[3,0,0,24,0,4], -"classmpl_1_1indexed__layout_1_1parameter.html#a97dc21015db1900818c4f2cbedf2823c":[2,0,0,25,0,4], -"classmpl_1_1invalid__argument.html":[2,0,0,26], -"classmpl_1_1invalid__argument.html":[3,0,0,25], -"classmpl_1_1invalid__argument.html#a561fcad448834774831ed758c927c911":[2,0,0,26,0], -"classmpl_1_1invalid__argument.html#a561fcad448834774831ed758c927c911":[3,0,0,25,0], -"classmpl_1_1invalid__argument.html#a74cba88f95894c0abf2baff78a88076e":[3,0,0,25,1], -"classmpl_1_1invalid__argument.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,26,1], -"classmpl_1_1invalid__count.html":[2,0,0,27], -"classmpl_1_1invalid__count.html":[3,0,0,26], -"classmpl_1_1invalid__count.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,27,1], -"classmpl_1_1invalid__count.html#a74cba88f95894c0abf2baff78a88076e":[3,0,0,26,1], -"classmpl_1_1invalid__count.html#ae565237bd4635f06cb5daa665ac316c3":[2,0,0,27,0], -"classmpl_1_1invalid__count.html#ae565237bd4635f06cb5daa665ac316c3":[3,0,0,26,0], -"classmpl_1_1invalid__datatype__bound.html":[2,0,0,28], -"classmpl_1_1invalid__datatype__bound.html":[3,0,0,27], -"classmpl_1_1invalid__datatype__bound.html#a74cba88f95894c0abf2baff78a88076e":[3,0,0,27,1], -"classmpl_1_1invalid__datatype__bound.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,28,1], -"classmpl_1_1invalid__datatype__bound.html#ae8bb5417f504c1140e7312d85c35c79d":[2,0,0,28,0], -"classmpl_1_1invalid__datatype__bound.html#ae8bb5417f504c1140e7312d85c35c79d":[3,0,0,27,0], -"classmpl_1_1invalid__dim.html":[2,0,0,29], -"classmpl_1_1invalid__dim.html":[3,0,0,28], -"classmpl_1_1invalid__dim.html#a35fcdedad1a82a8df4961ec9f8c2b13f":[2,0,0,29,0] -}; diff --git a/docs/html/navtreeindex12.js b/docs/html/navtreeindex12.js deleted file mode 100644 index c7f4698c..00000000 --- a/docs/html/navtreeindex12.js +++ /dev/null @@ -1,253 +0,0 @@ -var NAVTREEINDEX12 = -{ -"classmpl_1_1invalid__dim.html#a35fcdedad1a82a8df4961ec9f8c2b13f":[3,0,0,28,0], -"classmpl_1_1invalid__dim.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,29,1], -"classmpl_1_1invalid__dim.html#a74cba88f95894c0abf2baff78a88076e":[3,0,0,28,1], -"classmpl_1_1invalid__layout.html":[3,0,0,29], -"classmpl_1_1invalid__layout.html":[2,0,0,30], -"classmpl_1_1invalid__layout.html#a74cba88f95894c0abf2baff78a88076e":[3,0,0,29,1], -"classmpl_1_1invalid__layout.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,30,1], -"classmpl_1_1invalid__layout.html#aba5a34fef955a918716733b36085baa5":[2,0,0,30,0], -"classmpl_1_1invalid__layout.html#aba5a34fef955a918716733b36085baa5":[3,0,0,29,0], -"classmpl_1_1invalid__rank.html":[3,0,0,30], -"classmpl_1_1invalid__rank.html":[2,0,0,31], -"classmpl_1_1invalid__rank.html#a74cba88f95894c0abf2baff78a88076e":[3,0,0,30,1], -"classmpl_1_1invalid__rank.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,31,1], -"classmpl_1_1invalid__rank.html#ad37eac9d409ae80bc126da73cb048294":[3,0,0,30,0], -"classmpl_1_1invalid__rank.html#ad37eac9d409ae80bc126da73cb048294":[2,0,0,31,0], -"classmpl_1_1invalid__size.html":[3,0,0,31], -"classmpl_1_1invalid__size.html":[2,0,0,32], -"classmpl_1_1invalid__size.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,32,1], -"classmpl_1_1invalid__size.html#a74cba88f95894c0abf2baff78a88076e":[3,0,0,31,1], -"classmpl_1_1invalid__size.html#af22c29b8f2a1b74d134a8c221d89bc58":[2,0,0,32,0], -"classmpl_1_1invalid__size.html#af22c29b8f2a1b74d134a8c221d89bc58":[3,0,0,31,0], -"classmpl_1_1invalid__tag.html":[3,0,0,32], -"classmpl_1_1invalid__tag.html":[2,0,0,33], -"classmpl_1_1invalid__tag.html#a74cba88f95894c0abf2baff78a88076e":[3,0,0,32,1], -"classmpl_1_1invalid__tag.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,33,1], -"classmpl_1_1invalid__tag.html#a7e4700f381c0e849e1c0a6b51aee9465":[3,0,0,32,0], -"classmpl_1_1invalid__tag.html#a7e4700f381c0e849e1c0a6b51aee9465":[2,0,0,33,0], -"classmpl_1_1irequest.html":[3,0,0,33], -"classmpl_1_1irequest.html":[2,0,0,34], -"classmpl_1_1irequest.html#a67a88cdd06a34645ed430bbd6922a8b9":[2,0,0,34,0], -"classmpl_1_1irequest.html#a67a88cdd06a34645ed430bbd6922a8b9":[3,0,0,33,0], -"classmpl_1_1irequest.html#a8ed5bdb05a4a5caf7dc2c08832b6fc73":[2,0,0,34,4], -"classmpl_1_1irequest.html#a8ed5bdb05a4a5caf7dc2c08832b6fc73":[3,0,0,33,4], -"classmpl_1_1irequest.html#a9731fa2fb0157e792af4d9e5ade4103b":[2,0,0,34,7], -"classmpl_1_1irequest.html#a9731fa2fb0157e792af4d9e5ade4103b":[3,0,0,33,7], -"classmpl_1_1irequest.html#aad342024a6c6fe73177850401fe2130d":[3,0,0,33,2], -"classmpl_1_1irequest.html#aad342024a6c6fe73177850401fe2130d":[2,0,0,34,2], -"classmpl_1_1irequest.html#ac0fb8b83ea79062c37d219742c871bcc":[3,0,0,33,9], -"classmpl_1_1irequest.html#ac0fb8b83ea79062c37d219742c871bcc":[2,0,0,34,9], -"classmpl_1_1irequest.html#ad2ddcfa49b35df4120235692fdebdef2":[2,0,0,34,3], -"classmpl_1_1irequest.html#ad2ddcfa49b35df4120235692fdebdef2":[3,0,0,33,3], -"classmpl_1_1irequest.html#ae4f7b65e9d801916ac0cb47c3c379de2":[3,0,0,33,1], -"classmpl_1_1irequest.html#ae4f7b65e9d801916ac0cb47c3c379de2":[2,0,0,34,1], -"classmpl_1_1irequest.html#aedca3ad316f078b0190b9396197a7605":[2,0,0,34,8], -"classmpl_1_1irequest.html#aedca3ad316f078b0190b9396197a7605":[3,0,0,33,8], -"classmpl_1_1irequest.html#af5b70e2988f99a85b17ce3e4f80fee36":[2,0,0,34,5], -"classmpl_1_1irequest.html#af5b70e2988f99a85b17ce3e4f80fee36":[3,0,0,33,5], -"classmpl_1_1irequest.html#afc1a5562cbe2971ed389b6733dfd551e":[2,0,0,34,6], -"classmpl_1_1irequest.html#afc1a5562cbe2971ed389b6733dfd551e":[3,0,0,33,6], -"classmpl_1_1irequest__pool.html":[3,0,0,34], -"classmpl_1_1irequest__pool.html":[2,0,0,35], -"classmpl_1_1irequest__pool.html#a0119c4bd3e340044868b9c26bae2a6f9":[3,0,0,34,13], -"classmpl_1_1irequest__pool.html#a0119c4bd3e340044868b9c26bae2a6f9":[2,0,0,35,13], -"classmpl_1_1irequest__pool.html#a09521b62f5b53546c854e89644245b70":[2,0,0,35,4], -"classmpl_1_1irequest__pool.html#a09521b62f5b53546c854e89644245b70":[3,0,0,34,4], -"classmpl_1_1irequest__pool.html#a0a59a78777963e261f6c89db28f07f28":[3,0,0,34,3], -"classmpl_1_1irequest__pool.html#a0a59a78777963e261f6c89db28f07f28":[2,0,0,35,3], -"classmpl_1_1irequest__pool.html#a0adfe04dd4bf29535b6687562fb88989":[2,0,0,35,14], -"classmpl_1_1irequest__pool.html#a0adfe04dd4bf29535b6687562fb88989":[3,0,0,34,14], -"classmpl_1_1irequest__pool.html#a1a8d4dfb6f2d6b2a12fb752a0c3cd37c":[3,0,0,34,2], -"classmpl_1_1irequest__pool.html#a1a8d4dfb6f2d6b2a12fb752a0c3cd37c":[2,0,0,35,2], -"classmpl_1_1irequest__pool.html#a1acdccf04f454806bac255279ac53974":[2,0,0,35,16], -"classmpl_1_1irequest__pool.html#a1acdccf04f454806bac255279ac53974":[3,0,0,34,16], -"classmpl_1_1irequest__pool.html#a1e864f5b3e62bb28db94bec090235401":[3,0,0,34,15], -"classmpl_1_1irequest__pool.html#a1e864f5b3e62bb28db94bec090235401":[2,0,0,35,15], -"classmpl_1_1irequest__pool.html#a40b2e7f51521f6cbf1ba99c26547dade":[2,0,0,35,11], -"classmpl_1_1irequest__pool.html#a40b2e7f51521f6cbf1ba99c26547dade":[3,0,0,34,11], -"classmpl_1_1irequest__pool.html#a4191612db45d53cab3a294f3ac2f9018":[2,0,0,35,5], -"classmpl_1_1irequest__pool.html#a4191612db45d53cab3a294f3ac2f9018":[3,0,0,34,5], -"classmpl_1_1irequest__pool.html#a5b3f8f3986dc6bc5852939446531c767":[2,0,0,35,0], -"classmpl_1_1irequest__pool.html#a5b3f8f3986dc6bc5852939446531c767":[3,0,0,34,0], -"classmpl_1_1irequest__pool.html#a5ebba7b0471ba84cf591abace463072f":[3,0,0,34,12], -"classmpl_1_1irequest__pool.html#a5ebba7b0471ba84cf591abace463072f":[2,0,0,35,12], -"classmpl_1_1irequest__pool.html#a7761f370d4bbef127a41fc1f4b0f39f9":[3,0,0,34,7], -"classmpl_1_1irequest__pool.html#a7761f370d4bbef127a41fc1f4b0f39f9":[2,0,0,35,7], -"classmpl_1_1irequest__pool.html#a79a2d05644a537414fdfdb90de9dd7ab":[3,0,0,34,8], -"classmpl_1_1irequest__pool.html#a79a2d05644a537414fdfdb90de9dd7ab":[2,0,0,35,8], -"classmpl_1_1irequest__pool.html#a9b2ce42dc5ec15f8875673e07f6d77bf":[3,0,0,34,10], -"classmpl_1_1irequest__pool.html#a9b2ce42dc5ec15f8875673e07f6d77bf":[2,0,0,35,10], -"classmpl_1_1irequest__pool.html#ab076cdb8feb7b1270497af73430e4fde":[3,0,0,34,17], -"classmpl_1_1irequest__pool.html#ab076cdb8feb7b1270497af73430e4fde":[2,0,0,35,17], -"classmpl_1_1irequest__pool.html#acdd1055b70611cd8796d0c22ccfb2397":[3,0,0,34,6], -"classmpl_1_1irequest__pool.html#acdd1055b70611cd8796d0c22ccfb2397":[2,0,0,35,6], -"classmpl_1_1irequest__pool.html#ae02a4f735ff77cf1e85ae79c399e5b8a":[3,0,0,34,1], -"classmpl_1_1irequest__pool.html#ae02a4f735ff77cf1e85ae79c399e5b8a":[2,0,0,35,1], -"classmpl_1_1irequest__pool.html#aed3ca89d2b316935ff07d39fb0f6be61":[2,0,0,35,9], -"classmpl_1_1irequest__pool.html#aed3ca89d2b316935ff07d39fb0f6be61":[3,0,0,34,9], -"classmpl_1_1iterator__layout.html":[2,0,0,36], -"classmpl_1_1iterator__layout.html":[3,0,0,35], -"classmpl_1_1iterator__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,36,10], -"classmpl_1_1iterator__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[3,0,0,35,10], -"classmpl_1_1iterator__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,36,22], -"classmpl_1_1iterator__layout.html#a0890ec4684e6a465170f88932e116d30":[3,0,0,35,22], -"classmpl_1_1iterator__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,36,20], -"classmpl_1_1iterator__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[3,0,0,35,20], -"classmpl_1_1iterator__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[3,0,0,35,25], -"classmpl_1_1iterator__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,36,25], -"classmpl_1_1iterator__layout.html#a3d55526b2176cdb3c067b65d3c301183":[3,0,0,35,4], -"classmpl_1_1iterator__layout.html#a3d55526b2176cdb3c067b65d3c301183":[2,0,0,36,4], -"classmpl_1_1iterator__layout.html#a45840e6936914baef876a0b67a8bb499":[3,0,0,35,19], -"classmpl_1_1iterator__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,36,19], -"classmpl_1_1iterator__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[3,0,0,35,23], -"classmpl_1_1iterator__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,36,23], -"classmpl_1_1iterator__layout.html#a54214c5c1248484bed83aba2aa4c1dc6":[3,0,0,35,3], -"classmpl_1_1iterator__layout.html#a54214c5c1248484bed83aba2aa4c1dc6":[2,0,0,36,3], -"classmpl_1_1iterator__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,36,13], -"classmpl_1_1iterator__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[3,0,0,35,13], -"classmpl_1_1iterator__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,36,24], -"classmpl_1_1iterator__layout.html#a80713f15de3244b019294ee277c8c650":[3,0,0,35,24], -"classmpl_1_1iterator__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,36,8], -"classmpl_1_1iterator__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[3,0,0,35,8], -"classmpl_1_1iterator__layout.html#a863e369b02d60dd0d7058ed9ff6fb56c":[3,0,0,35,2], -"classmpl_1_1iterator__layout.html#a863e369b02d60dd0d7058ed9ff6fb56c":[2,0,0,36,2], -"classmpl_1_1iterator__layout.html#a89ead1f759da22664d13f1c915dc8cd8":[3,0,0,35,6], -"classmpl_1_1iterator__layout.html#a89ead1f759da22664d13f1c915dc8cd8":[2,0,0,36,6], -"classmpl_1_1iterator__layout.html#a9845f240dca4a7f7cfee5ac8f8c4cb09":[2,0,0,36,1], -"classmpl_1_1iterator__layout.html#a9845f240dca4a7f7cfee5ac8f8c4cb09":[3,0,0,35,1], -"classmpl_1_1iterator__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[3,0,0,35,11], -"classmpl_1_1iterator__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,36,11], -"classmpl_1_1iterator__layout.html#aa065b1d83d11439b548ca9c67ce2b55a":[3,0,0,35,17], -"classmpl_1_1iterator__layout.html#aa065b1d83d11439b548ca9c67ce2b55a":[2,0,0,36,17], -"classmpl_1_1iterator__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,36,9], -"classmpl_1_1iterator__layout.html#aa391a934f031693cf985dcd1c675d8e4":[3,0,0,35,9], -"classmpl_1_1iterator__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,36,16], -"classmpl_1_1iterator__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[3,0,0,35,16], -"classmpl_1_1iterator__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[3,0,0,35,18], -"classmpl_1_1iterator__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,36,18], -"classmpl_1_1iterator__layout.html#ab6a4de59b8716604d3fd66fd7e708300":[2,0,0,36,5], -"classmpl_1_1iterator__layout.html#ab6a4de59b8716604d3fd66fd7e708300":[3,0,0,35,5], -"classmpl_1_1iterator__layout.html#ab8bedf7645837efd22d0197749e8eb8d":[2,0,0,36,14], -"classmpl_1_1iterator__layout.html#ab8bedf7645837efd22d0197749e8eb8d":[3,0,0,35,14], -"classmpl_1_1iterator__layout.html#abce0f3197d6b2252c951535b443d7d5e":[3,0,0,35,12], -"classmpl_1_1iterator__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,36,12], -"classmpl_1_1iterator__layout.html#ac26e4b99081e901b36cd89329ac22ffe":[3,0,0,35,7], -"classmpl_1_1iterator__layout.html#ac26e4b99081e901b36cd89329ac22ffe":[2,0,0,36,7], -"classmpl_1_1iterator__layout.html#ac80c19464fd5b48ceb62ac7592619f32":[2,0,0,36,15], -"classmpl_1_1iterator__layout.html#ac80c19464fd5b48ceb62ac7592619f32":[3,0,0,35,15], -"classmpl_1_1iterator__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,36,21], -"classmpl_1_1iterator__layout.html#adf592d9e08a92314cc086bd51d643953":[3,0,0,35,21], -"classmpl_1_1iterator__layout_1_1parameter.html":[2,0,0,36,0], -"classmpl_1_1iterator__layout_1_1parameter.html":[3,0,0,35,0], -"classmpl_1_1iterator__layout_1_1parameter.html#a379a502823866a2428a10702c4e30d20":[2,0,0,36,0,1], -"classmpl_1_1iterator__layout_1_1parameter.html#a379a502823866a2428a10702c4e30d20":[3,0,0,35,0,1], -"classmpl_1_1iterator__layout_1_1parameter.html#a58c52e5547d2956c368d96c3585da540":[2,0,0,36,0,2], -"classmpl_1_1iterator__layout_1_1parameter.html#a58c52e5547d2956c368d96c3585da540":[3,0,0,35,0,2], -"classmpl_1_1iterator__layout_1_1parameter.html#a8b9b1dcef19978283dcebf2d03cd727d":[3,0,0,35,0,0], -"classmpl_1_1iterator__layout_1_1parameter.html#a8b9b1dcef19978283dcebf2d03cd727d":[2,0,0,36,0,0], -"classmpl_1_1layout.html":[3,0,0,36], -"classmpl_1_1layout.html":[2,0,0,37], -"classmpl_1_1layout.html#a057fa0a49c1133de3b41b8c5eefe576c":[3,0,0,36,11], -"classmpl_1_1layout.html#a057fa0a49c1133de3b41b8c5eefe576c":[2,0,0,37,11], -"classmpl_1_1layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,37,6], -"classmpl_1_1layout.html#a05cc59346d0b585b92a266ac7e4512eb":[3,0,0,36,6], -"classmpl_1_1layout.html#a0890ec4684e6a465170f88932e116d30":[3,0,0,36,17], -"classmpl_1_1layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,37,17], -"classmpl_1_1layout.html#a09c644368b2506e471715313e9059717":[2,0,0,37,3], -"classmpl_1_1layout.html#a09c644368b2506e471715313e9059717":[3,0,0,36,3], -"classmpl_1_1layout.html#a12753d9d9517a88356cc3d1fc6e1c571":[3,0,0,36,33], -"classmpl_1_1layout.html#a12753d9d9517a88356cc3d1fc6e1c571":[2,0,0,37,33], -"classmpl_1_1layout.html#a245932be5b4d58bb00a05b29208ab7c4":[3,0,0,36,15], -"classmpl_1_1layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,37,15], -"classmpl_1_1layout.html#a24fd43f71dcacaaa7f11f25121d457d6":[3,0,0,36,21], -"classmpl_1_1layout.html#a24fd43f71dcacaaa7f11f25121d457d6":[2,0,0,37,21], -"classmpl_1_1layout.html#a297cff9dc710fa1e886d36a3db3fe53b":[3,0,0,36,32], -"classmpl_1_1layout.html#a297cff9dc710fa1e886d36a3db3fe53b":[2,0,0,37,32], -"classmpl_1_1layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,37,20], -"classmpl_1_1layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[3,0,0,36,20], -"classmpl_1_1layout.html#a2d817091be01028eba2db9128d792b76":[2,0,0,37,26], -"classmpl_1_1layout.html#a2d817091be01028eba2db9128d792b76":[3,0,0,36,26], -"classmpl_1_1layout.html#a345f190da284e84ef033bec2677fdd5f":[3,0,0,36,24], -"classmpl_1_1layout.html#a345f190da284e84ef033bec2677fdd5f":[2,0,0,37,24], -"classmpl_1_1layout.html#a4247e7ceac8381a08ce49a21370238d2":[3,0,0,36,2], -"classmpl_1_1layout.html#a4247e7ceac8381a08ce49a21370238d2":[2,0,0,37,2], -"classmpl_1_1layout.html#a45840e6936914baef876a0b67a8bb499":[3,0,0,36,14], -"classmpl_1_1layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,37,14], -"classmpl_1_1layout.html#a477b919fe55146acf76bbe082bb4a214":[3,0,0,36,35], -"classmpl_1_1layout.html#a477b919fe55146acf76bbe082bb4a214":[2,0,0,37,35], -"classmpl_1_1layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,37,18], -"classmpl_1_1layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[3,0,0,36,18], -"classmpl_1_1layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,37,9], -"classmpl_1_1layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[3,0,0,36,9], -"classmpl_1_1layout.html#a7841d5d18df3df9d49003cdddb7e0b88":[2,0,0,37,23], -"classmpl_1_1layout.html#a7841d5d18df3df9d49003cdddb7e0b88":[3,0,0,36,23], -"classmpl_1_1layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,37,19], -"classmpl_1_1layout.html#a80713f15de3244b019294ee277c8c650":[3,0,0,36,19], -"classmpl_1_1layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,37,4], -"classmpl_1_1layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[3,0,0,36,4], -"classmpl_1_1layout.html#a8f6bbd313a30534934c9a4004d1d3f0f":[2,0,0,37,30], -"classmpl_1_1layout.html#a8f6bbd313a30534934c9a4004d1d3f0f":[3,0,0,36,30], -"classmpl_1_1layout.html#a9aea61b5ce92681aee5df4a61672c02b":[3,0,0,36,7], -"classmpl_1_1layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,37,7], -"classmpl_1_1layout.html#aa391a934f031693cf985dcd1c675d8e4":[3,0,0,36,5], -"classmpl_1_1layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,37,5], -"classmpl_1_1layout.html#aa503cf6532650fac11937626cb1a9a68":[2,0,0,37,27], -"classmpl_1_1layout.html#aa503cf6532650fac11937626cb1a9a68":[3,0,0,36,27], -"classmpl_1_1layout.html#aab715201eed750d6cc9831d5a98b9858":[2,0,0,37,28], -"classmpl_1_1layout.html#aab715201eed750d6cc9831d5a98b9858":[3,0,0,36,28], -"classmpl_1_1layout.html#ab05bcf7aebbf27c0d719ce8348a73a20":[3,0,0,36,22], -"classmpl_1_1layout.html#ab05bcf7aebbf27c0d719ce8348a73a20":[2,0,0,37,22], -"classmpl_1_1layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[3,0,0,36,12], -"classmpl_1_1layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,37,12], -"classmpl_1_1layout.html#ab5519bf73c4607f6ec61588e7d7f0aad":[3,0,0,36,25], -"classmpl_1_1layout.html#ab5519bf73c4607f6ec61588e7d7f0aad":[2,0,0,37,25], -"classmpl_1_1layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[3,0,0,36,13], -"classmpl_1_1layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,37,13], -"classmpl_1_1layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,37,8], -"classmpl_1_1layout.html#abce0f3197d6b2252c951535b443d7d5e":[3,0,0,36,8], -"classmpl_1_1layout.html#ac0dc61784adeaeaf328f741871add748":[2,0,0,37,31], -"classmpl_1_1layout.html#ac0dc61784adeaeaf328f741871add748":[3,0,0,36,31], -"classmpl_1_1layout.html#ac1edd6042f0c959638583136b00c89db":[3,0,0,36,0], -"classmpl_1_1layout.html#ac1edd6042f0c959638583136b00c89db":[2,0,0,37,0], -"classmpl_1_1layout.html#ad1a727c34eaefc6031a00042b177b9b9":[3,0,0,36,1], -"classmpl_1_1layout.html#ad1a727c34eaefc6031a00042b177b9b9":[2,0,0,37,1], -"classmpl_1_1layout.html#ad86a2fab89091a3c1e2cf8d0775c9d7b":[3,0,0,36,34], -"classmpl_1_1layout.html#ad86a2fab89091a3c1e2cf8d0775c9d7b":[2,0,0,37,34], -"classmpl_1_1layout.html#ada64a312d8d2032e9b1faef1ffca5dbd":[2,0,0,37,10], -"classmpl_1_1layout.html#ada64a312d8d2032e9b1faef1ffca5dbd":[3,0,0,36,10], -"classmpl_1_1layout.html#adf592d9e08a92314cc086bd51d643953":[3,0,0,36,16], -"classmpl_1_1layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,37,16], -"classmpl_1_1layout.html#aef5d3d4d7c5d1ed3908c19feac4c6be1":[2,0,0,37,29], -"classmpl_1_1layout.html#aef5d3d4d7c5d1ed3908c19feac4c6be1":[3,0,0,36,29], -"classmpl_1_1layouts.html":[3,0,0,37], -"classmpl_1_1layouts.html":[2,0,0,38], -"classmpl_1_1layouts.html#a089858363f1176c0c87760fe8c3b8503":[3,0,0,37,1], -"classmpl_1_1layouts.html#a089858363f1176c0c87760fe8c3b8503":[2,0,0,38,1], -"classmpl_1_1layouts.html#a1eb8b54fe4aac54b7d7dd0ef16a2a82e":[2,0,0,38,4], -"classmpl_1_1layouts.html#a1eb8b54fe4aac54b7d7dd0ef16a2a82e":[3,0,0,37,4], -"classmpl_1_1layouts.html#a28e4940a8d711c15cada064a12ba0788":[2,0,0,38,3], -"classmpl_1_1layouts.html#a28e4940a8d711c15cada064a12ba0788":[3,0,0,37,3], -"classmpl_1_1layouts.html#a3b76572f81889e2efafaecc7aeb0f764":[2,0,0,38,2], -"classmpl_1_1layouts.html#a3b76572f81889e2efafaecc7aeb0f764":[3,0,0,37,2], -"classmpl_1_1layouts.html#af5b700e5e64692188758a0e704979a96":[2,0,0,38,0], -"classmpl_1_1layouts.html#af5b700e5e64692188758a0e704979a96":[3,0,0,37,0], -"classmpl_1_1local__grid.html":[3,0,0,38], -"classmpl_1_1local__grid.html":[2,0,0,39], -"classmpl_1_1local__grid.html#a016e0dbc1d748bea7bf40f5ad6917a67":[2,0,0,39,2], -"classmpl_1_1local__grid.html#a016e0dbc1d748bea7bf40f5ad6917a67":[3,0,0,38,2], -"classmpl_1_1local__grid.html#a0bc2c3d68db9a67e6bd415c2c7d0131b":[3,0,0,38,17], -"classmpl_1_1local__grid.html#a0bc2c3d68db9a67e6bd415c2c7d0131b":[2,0,0,39,17], -"classmpl_1_1local__grid.html#a17585fc73aba29fb6ab0e3d8022b25be":[2,0,0,39,16], -"classmpl_1_1local__grid.html#a17585fc73aba29fb6ab0e3d8022b25be":[3,0,0,38,16], -"classmpl_1_1local__grid.html#a213eb274680567cdcd292f5080f22e71":[2,0,0,39,15], -"classmpl_1_1local__grid.html#a213eb274680567cdcd292f5080f22e71":[3,0,0,38,15], -"classmpl_1_1local__grid.html#a2a7363850b17823d78fc1030e11bcdaf":[3,0,0,38,13], -"classmpl_1_1local__grid.html#a2a7363850b17823d78fc1030e11bcdaf":[2,0,0,39,13], -"classmpl_1_1local__grid.html#a49ea125a5efe80df775f8dc62acaa2f2":[3,0,0,38,11], -"classmpl_1_1local__grid.html#a49ea125a5efe80df775f8dc62acaa2f2":[2,0,0,39,11], -"classmpl_1_1local__grid.html#a54c9c6a7dd781ebeb95768f157c01ad7":[3,0,0,38,1], -"classmpl_1_1local__grid.html#a54c9c6a7dd781ebeb95768f157c01ad7":[2,0,0,39,1], -"classmpl_1_1local__grid.html#a6be0b3c4b9aced8db5d1a250a722a4bf":[2,0,0,39,18] -}; diff --git a/docs/html/navtreeindex13.js b/docs/html/navtreeindex13.js deleted file mode 100644 index 2ddeeef3..00000000 --- a/docs/html/navtreeindex13.js +++ /dev/null @@ -1,253 +0,0 @@ -var NAVTREEINDEX13 = -{ -"classmpl_1_1local__grid.html#a6be0b3c4b9aced8db5d1a250a722a4bf":[3,0,0,38,18], -"classmpl_1_1local__grid.html#a713ce59b43926706509b9a3a6a127a41":[3,0,0,38,24], -"classmpl_1_1local__grid.html#a713ce59b43926706509b9a3a6a127a41":[2,0,0,39,24], -"classmpl_1_1local__grid.html#a768da13de21322c71202e4d615023316":[2,0,0,39,14], -"classmpl_1_1local__grid.html#a768da13de21322c71202e4d615023316":[3,0,0,38,14], -"classmpl_1_1local__grid.html#a884c5dfdd939ad61fd2ad4de8d1c63fd":[2,0,0,39,19], -"classmpl_1_1local__grid.html#a884c5dfdd939ad61fd2ad4de8d1c63fd":[3,0,0,38,19], -"classmpl_1_1local__grid.html#a98aca5a379a25cce8d753629f1872796":[3,0,0,38,10], -"classmpl_1_1local__grid.html#a98aca5a379a25cce8d753629f1872796":[2,0,0,39,10], -"classmpl_1_1local__grid.html#aa34ade9741224f1539935e220ba95105":[3,0,0,38,6], -"classmpl_1_1local__grid.html#aa34ade9741224f1539935e220ba95105":[2,0,0,39,6], -"classmpl_1_1local__grid.html#aab729f6d024a0550cd75781ac7e7f7a7":[2,0,0,39,3], -"classmpl_1_1local__grid.html#aab729f6d024a0550cd75781ac7e7f7a7":[3,0,0,38,3], -"classmpl_1_1local__grid.html#aadd875af7e7296c2f1c3ce289612a741":[3,0,0,38,12], -"classmpl_1_1local__grid.html#aadd875af7e7296c2f1c3ce289612a741":[2,0,0,39,12], -"classmpl_1_1local__grid.html#ab2318fdfc94ef7e9d626202597dfd6f4":[3,0,0,38,8], -"classmpl_1_1local__grid.html#ab2318fdfc94ef7e9d626202597dfd6f4":[2,0,0,39,8], -"classmpl_1_1local__grid.html#ac2d6883c856c1edf80dccf0586f0c0b4":[3,0,0,38,23], -"classmpl_1_1local__grid.html#ac2d6883c856c1edf80dccf0586f0c0b4":[2,0,0,39,23], -"classmpl_1_1local__grid.html#acd9f95c3471b08a4dc3da723d6c121b3":[3,0,0,38,21], -"classmpl_1_1local__grid.html#acd9f95c3471b08a4dc3da723d6c121b3":[2,0,0,39,21], -"classmpl_1_1local__grid.html#ace4a57097109ad8e4236426f2b81570f":[2,0,0,39,9], -"classmpl_1_1local__grid.html#ace4a57097109ad8e4236426f2b81570f":[3,0,0,38,9], -"classmpl_1_1local__grid.html#adee4f6ca84465120671ec7ab6f673ebf":[3,0,0,38,22], -"classmpl_1_1local__grid.html#adee4f6ca84465120671ec7ab6f673ebf":[2,0,0,39,22], -"classmpl_1_1local__grid.html#ae0ebb9b3054ff110c5bbb2594729a84f":[3,0,0,38,7], -"classmpl_1_1local__grid.html#ae0ebb9b3054ff110c5bbb2594729a84f":[2,0,0,39,7], -"classmpl_1_1local__grid.html#ae475f7494bbd3986b2850906ea360b6d":[2,0,0,39,4], -"classmpl_1_1local__grid.html#ae475f7494bbd3986b2850906ea360b6d":[3,0,0,38,4], -"classmpl_1_1local__grid.html#aea49a8961c1544888e3d697614e76282":[3,0,0,38,20], -"classmpl_1_1local__grid.html#aea49a8961c1544888e3d697614e76282":[2,0,0,39,20], -"classmpl_1_1local__grid.html#afbdae75370bc044bbb0f0f8ce22c4544":[3,0,0,38,5], -"classmpl_1_1local__grid.html#afbdae75370bc044bbb0f0f8ce22c4544":[2,0,0,39,5], -"classmpl_1_1local__grid.html#afd4c45c7fb2a713f5e0434acce617320":[2,0,0,39,25], -"classmpl_1_1local__grid.html#afd4c45c7fb2a713f5e0434acce617320":[3,0,0,38,25], -"classmpl_1_1local__grid_1_1dimensions.html":[3,0,0,38,0], -"classmpl_1_1local__grid_1_1dimensions.html":[2,0,0,39,0], -"classmpl_1_1local__grid_1_1dimensions.html#a0134108e71b799e3c39e966f149937d5":[2,0,0,39,0,18], -"classmpl_1_1local__grid_1_1dimensions.html#a0134108e71b799e3c39e966f149937d5":[3,0,0,38,0,18], -"classmpl_1_1local__grid_1_1dimensions.html#a1a5fcff7b7e95203667e647731fcf2f1":[3,0,0,38,0,6], -"classmpl_1_1local__grid_1_1dimensions.html#a1a5fcff7b7e95203667e647731fcf2f1":[2,0,0,39,0,6], -"classmpl_1_1local__grid_1_1dimensions.html#a1cd6d5ec15683f71d3b32eb4118b7ce5":[3,0,0,38,0,14], -"classmpl_1_1local__grid_1_1dimensions.html#a1cd6d5ec15683f71d3b32eb4118b7ce5":[2,0,0,39,0,14], -"classmpl_1_1local__grid_1_1dimensions.html#a1f28ef835386df911b7db5e044b17858":[3,0,0,38,0,11], -"classmpl_1_1local__grid_1_1dimensions.html#a1f28ef835386df911b7db5e044b17858":[2,0,0,39,0,11], -"classmpl_1_1local__grid_1_1dimensions.html#a3d111525dd74a250c6f62a23f3683319":[3,0,0,38,0,15], -"classmpl_1_1local__grid_1_1dimensions.html#a3d111525dd74a250c6f62a23f3683319":[2,0,0,39,0,15], -"classmpl_1_1local__grid_1_1dimensions.html#a43e2c08d9b3a82586cf93b17fd851331":[3,0,0,38,0,2], -"classmpl_1_1local__grid_1_1dimensions.html#a43e2c08d9b3a82586cf93b17fd851331":[2,0,0,39,0,2], -"classmpl_1_1local__grid_1_1dimensions.html#a5623191cfc621bde04d8b1136c043565":[3,0,0,38,0,7], -"classmpl_1_1local__grid_1_1dimensions.html#a5623191cfc621bde04d8b1136c043565":[2,0,0,39,0,7], -"classmpl_1_1local__grid_1_1dimensions.html#a65540a03ba7eba65ad33b461f2737d95":[2,0,0,39,0,1], -"classmpl_1_1local__grid_1_1dimensions.html#a65540a03ba7eba65ad33b461f2737d95":[3,0,0,38,0,1], -"classmpl_1_1local__grid_1_1dimensions.html#a767a2725a0c272861e790d73820a9ddd":[2,0,0,39,0,13], -"classmpl_1_1local__grid_1_1dimensions.html#a767a2725a0c272861e790d73820a9ddd":[3,0,0,38,0,13], -"classmpl_1_1local__grid_1_1dimensions.html#a79b159ea66770b5581b00330a95a2227":[3,0,0,38,0,0], -"classmpl_1_1local__grid_1_1dimensions.html#a79b159ea66770b5581b00330a95a2227":[2,0,0,39,0,0], -"classmpl_1_1local__grid_1_1dimensions.html#a8dde7cc3e0f11533dcf221daed6368fe":[2,0,0,39,0,4], -"classmpl_1_1local__grid_1_1dimensions.html#a8dde7cc3e0f11533dcf221daed6368fe":[3,0,0,38,0,4], -"classmpl_1_1local__grid_1_1dimensions.html#a8e2b64a5ee4a8e5befe471fabd764a6e":[3,0,0,38,0,12], -"classmpl_1_1local__grid_1_1dimensions.html#a8e2b64a5ee4a8e5befe471fabd764a6e":[2,0,0,39,0,12], -"classmpl_1_1local__grid_1_1dimensions.html#a9fe001a9733e41fa7d1c7eecc4597bdc":[3,0,0,38,0,9], -"classmpl_1_1local__grid_1_1dimensions.html#a9fe001a9733e41fa7d1c7eecc4597bdc":[2,0,0,39,0,9], -"classmpl_1_1local__grid_1_1dimensions.html#aa1cdf19eec6da42b29ce7fd4a3025364":[2,0,0,39,0,16], -"classmpl_1_1local__grid_1_1dimensions.html#aa1cdf19eec6da42b29ce7fd4a3025364":[3,0,0,38,0,16], -"classmpl_1_1local__grid_1_1dimensions.html#aa399ae6edba94e1a9c1ebe91d9b2d11e":[2,0,0,39,0,17], -"classmpl_1_1local__grid_1_1dimensions.html#aa399ae6edba94e1a9c1ebe91d9b2d11e":[3,0,0,38,0,17], -"classmpl_1_1local__grid_1_1dimensions.html#aad9dda9392cfb376908c8bfcc1f4a46a":[2,0,0,39,0,10], -"classmpl_1_1local__grid_1_1dimensions.html#aad9dda9392cfb376908c8bfcc1f4a46a":[3,0,0,38,0,10], -"classmpl_1_1local__grid_1_1dimensions.html#aada2962f222ad01378a706bf18931e55":[2,0,0,39,0,3], -"classmpl_1_1local__grid_1_1dimensions.html#aada2962f222ad01378a706bf18931e55":[3,0,0,38,0,3], -"classmpl_1_1local__grid_1_1dimensions.html#ab8b1729c7b9ca64080b7860dcad4867d":[2,0,0,39,0,8], -"classmpl_1_1local__grid_1_1dimensions.html#ab8b1729c7b9ca64080b7860dcad4867d":[3,0,0,38,0,8], -"classmpl_1_1local__grid_1_1dimensions.html#ad7e845ddcd260c1f9386866d30c09788":[2,0,0,39,0,19], -"classmpl_1_1local__grid_1_1dimensions.html#ad7e845ddcd260c1f9386866d30c09788":[3,0,0,38,0,19], -"classmpl_1_1local__grid_1_1dimensions.html#ae59e515d543aeeeac98bccb23a102e83":[3,0,0,38,0,5], -"classmpl_1_1local__grid_1_1dimensions.html#ae59e515d543aeeeac98bccb23a102e83":[2,0,0,39,0,5], -"classmpl_1_1null__layout.html":[2,0,0,47], -"classmpl_1_1null__layout.html":[3,0,0,46], -"classmpl_1_1null__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[3,0,0,46,5], -"classmpl_1_1null__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,47,5], -"classmpl_1_1null__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,47,15], -"classmpl_1_1null__layout.html#a0890ec4684e6a465170f88932e116d30":[3,0,0,46,15], -"classmpl_1_1null__layout.html#a1e3a1fc89a2e4cc97313b09613a19fbb":[3,0,0,46,1], -"classmpl_1_1null__layout.html#a1e3a1fc89a2e4cc97313b09613a19fbb":[2,0,0,47,1], -"classmpl_1_1null__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,47,13], -"classmpl_1_1null__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[3,0,0,46,13], -"classmpl_1_1null__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[3,0,0,46,18], -"classmpl_1_1null__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,47,18], -"classmpl_1_1null__layout.html#a45840e6936914baef876a0b67a8bb499":[3,0,0,46,12], -"classmpl_1_1null__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,47,12], -"classmpl_1_1null__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,47,16], -"classmpl_1_1null__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[3,0,0,46,16], -"classmpl_1_1null__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[3,0,0,46,8], -"classmpl_1_1null__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,47,8], -"classmpl_1_1null__layout.html#a80713f15de3244b019294ee277c8c650":[3,0,0,46,17], -"classmpl_1_1null__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,47,17], -"classmpl_1_1null__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,47,3], -"classmpl_1_1null__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[3,0,0,46,3], -"classmpl_1_1null__layout.html#a870ae11bff01c96d3a71028826c8d477":[2,0,0,47,2], -"classmpl_1_1null__layout.html#a870ae11bff01c96d3a71028826c8d477":[3,0,0,46,2], -"classmpl_1_1null__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,47,6], -"classmpl_1_1null__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[3,0,0,46,6], -"classmpl_1_1null__layout.html#aa391a934f031693cf985dcd1c675d8e4":[3,0,0,46,4], -"classmpl_1_1null__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,47,4], -"classmpl_1_1null__layout.html#aa902f79f8f54981548bfd7d74c11ec44":[2,0,0,47,11], -"classmpl_1_1null__layout.html#aa902f79f8f54981548bfd7d74c11ec44":[3,0,0,46,11], -"classmpl_1_1null__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,47,9], -"classmpl_1_1null__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[3,0,0,46,9], -"classmpl_1_1null__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[3,0,0,46,10], -"classmpl_1_1null__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,47,10], -"classmpl_1_1null__layout.html#abce0f3197d6b2252c951535b443d7d5e":[3,0,0,46,7], -"classmpl_1_1null__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,47,7], -"classmpl_1_1null__layout.html#acac7c25a8345ee4860f372efb0528159":[3,0,0,46,0], -"classmpl_1_1null__layout.html#acac7c25a8345ee4860f372efb0528159":[2,0,0,47,0], -"classmpl_1_1null__layout.html#adf592d9e08a92314cc086bd51d643953":[3,0,0,46,14], -"classmpl_1_1null__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,47,14], -"classmpl_1_1prequest.html":[3,0,0,59], -"classmpl_1_1prequest.html":[2,0,0,60], -"classmpl_1_1prequest.html#a3fb481bf82af15bc42066ee8691eb6a4":[2,0,0,60,2], -"classmpl_1_1prequest.html#a3fb481bf82af15bc42066ee8691eb6a4":[3,0,0,59,2], -"classmpl_1_1prequest.html#a458628a7d368a6ac066e1c0d72a1ae1a":[2,0,0,60,0], -"classmpl_1_1prequest.html#a458628a7d368a6ac066e1c0d72a1ae1a":[3,0,0,59,0], -"classmpl_1_1prequest.html#a8b93ba9394c9577c518b467a77c6c1bb":[2,0,0,60,1], -"classmpl_1_1prequest.html#a8b93ba9394c9577c518b467a77c6c1bb":[3,0,0,59,1], -"classmpl_1_1prequest.html#a8c58374ad21d57465ce6914abe69fdf8":[2,0,0,60,10], -"classmpl_1_1prequest.html#a8c58374ad21d57465ce6914abe69fdf8":[3,0,0,59,10], -"classmpl_1_1prequest.html#a8ed5bdb05a4a5caf7dc2c08832b6fc73":[2,0,0,60,4], -"classmpl_1_1prequest.html#a8ed5bdb05a4a5caf7dc2c08832b6fc73":[3,0,0,59,4], -"classmpl_1_1prequest.html#a9731fa2fb0157e792af4d9e5ade4103b":[2,0,0,60,8], -"classmpl_1_1prequest.html#a9731fa2fb0157e792af4d9e5ade4103b":[3,0,0,59,8], -"classmpl_1_1prequest.html#a98397dc9bd862965e040491483082d65":[2,0,0,60,7], -"classmpl_1_1prequest.html#a98397dc9bd862965e040491483082d65":[3,0,0,59,7], -"classmpl_1_1prequest.html#a9b969f7e70507186466267e3fb029e09":[3,0,0,59,6], -"classmpl_1_1prequest.html#a9b969f7e70507186466267e3fb029e09":[2,0,0,60,6], -"classmpl_1_1prequest.html#ac73e55bc09c70db84fd4a32f9aa986d5":[3,0,0,59,5], -"classmpl_1_1prequest.html#ac73e55bc09c70db84fd4a32f9aa986d5":[2,0,0,60,5], -"classmpl_1_1prequest.html#ad2ddcfa49b35df4120235692fdebdef2":[3,0,0,59,3], -"classmpl_1_1prequest.html#ad2ddcfa49b35df4120235692fdebdef2":[2,0,0,60,3], -"classmpl_1_1prequest.html#aedca3ad316f078b0190b9396197a7605":[3,0,0,59,9], -"classmpl_1_1prequest.html#aedca3ad316f078b0190b9396197a7605":[2,0,0,60,9], -"classmpl_1_1prequest__pool.html":[3,0,0,60], -"classmpl_1_1prequest__pool.html":[2,0,0,61], -"classmpl_1_1prequest__pool.html#a0119c4bd3e340044868b9c26bae2a6f9":[2,0,0,61,13], -"classmpl_1_1prequest__pool.html#a0119c4bd3e340044868b9c26bae2a6f9":[3,0,0,60,13], -"classmpl_1_1prequest__pool.html#a09521b62f5b53546c854e89644245b70":[2,0,0,61,3], -"classmpl_1_1prequest__pool.html#a09521b62f5b53546c854e89644245b70":[3,0,0,60,3], -"classmpl_1_1prequest__pool.html#a0adfe04dd4bf29535b6687562fb88989":[2,0,0,61,14], -"classmpl_1_1prequest__pool.html#a0adfe04dd4bf29535b6687562fb88989":[3,0,0,60,14], -"classmpl_1_1prequest__pool.html#a1acdccf04f454806bac255279ac53974":[3,0,0,60,16], -"classmpl_1_1prequest__pool.html#a1acdccf04f454806bac255279ac53974":[2,0,0,61,16], -"classmpl_1_1prequest__pool.html#a1e864f5b3e62bb28db94bec090235401":[3,0,0,60,15], -"classmpl_1_1prequest__pool.html#a1e864f5b3e62bb28db94bec090235401":[2,0,0,61,15], -"classmpl_1_1prequest__pool.html#a3a5407de7b96fd18fac2bfed66ce2340":[3,0,0,60,1], -"classmpl_1_1prequest__pool.html#a3a5407de7b96fd18fac2bfed66ce2340":[2,0,0,61,1], -"classmpl_1_1prequest__pool.html#a40b2e7f51521f6cbf1ba99c26547dade":[2,0,0,61,10], -"classmpl_1_1prequest__pool.html#a40b2e7f51521f6cbf1ba99c26547dade":[3,0,0,60,10], -"classmpl_1_1prequest__pool.html#a4191612db45d53cab3a294f3ac2f9018":[3,0,0,60,4], -"classmpl_1_1prequest__pool.html#a4191612db45d53cab3a294f3ac2f9018":[2,0,0,61,4], -"classmpl_1_1prequest__pool.html#a4335e6cb787ded0e1ec4616460107eb0":[2,0,0,61,7], -"classmpl_1_1prequest__pool.html#a4335e6cb787ded0e1ec4616460107eb0":[3,0,0,60,7], -"classmpl_1_1prequest__pool.html#a5488a23548717d84d691fd0e35df7eed":[3,0,0,60,2], -"classmpl_1_1prequest__pool.html#a5488a23548717d84d691fd0e35df7eed":[2,0,0,61,2], -"classmpl_1_1prequest__pool.html#a5b3f8f3986dc6bc5852939446531c767":[2,0,0,61,0], -"classmpl_1_1prequest__pool.html#a5b3f8f3986dc6bc5852939446531c767":[3,0,0,60,0], -"classmpl_1_1prequest__pool.html#a5ebba7b0471ba84cf591abace463072f":[3,0,0,60,12], -"classmpl_1_1prequest__pool.html#a5ebba7b0471ba84cf591abace463072f":[2,0,0,61,12], -"classmpl_1_1prequest__pool.html#a7761f370d4bbef127a41fc1f4b0f39f9":[3,0,0,60,6], -"classmpl_1_1prequest__pool.html#a7761f370d4bbef127a41fc1f4b0f39f9":[2,0,0,61,6], -"classmpl_1_1prequest__pool.html#a819ee42db512114958c31b95864e5cdd":[2,0,0,61,11], -"classmpl_1_1prequest__pool.html#a819ee42db512114958c31b95864e5cdd":[3,0,0,60,11], -"classmpl_1_1prequest__pool.html#a837cce36fab3191a0239a1aab47dc752":[3,0,0,60,8], -"classmpl_1_1prequest__pool.html#a837cce36fab3191a0239a1aab47dc752":[2,0,0,61,8], -"classmpl_1_1prequest__pool.html#a9b2ce42dc5ec15f8875673e07f6d77bf":[3,0,0,60,9], -"classmpl_1_1prequest__pool.html#a9b2ce42dc5ec15f8875673e07f6d77bf":[2,0,0,61,9], -"classmpl_1_1prequest__pool.html#ab076cdb8feb7b1270497af73430e4fde":[3,0,0,60,17], -"classmpl_1_1prequest__pool.html#ab076cdb8feb7b1270497af73430e4fde":[2,0,0,61,17], -"classmpl_1_1prequest__pool.html#acdd1055b70611cd8796d0c22ccfb2397":[3,0,0,60,5], -"classmpl_1_1prequest__pool.html#acdd1055b70611cd8796d0c22ccfb2397":[2,0,0,61,5], -"classmpl_1_1ranks.html":[2,0,0,62], -"classmpl_1_1ranks.html":[3,0,0,61], -"classmpl_1_1ranks.html#a1fbed6a868f8b6c5e64cbbf09143e26f":[2,0,0,62,3], -"classmpl_1_1ranks.html#a1fbed6a868f8b6c5e64cbbf09143e26f":[3,0,0,61,3], -"classmpl_1_1ranks.html#a26a4953810763dec408121b213b8d9ee":[3,0,0,61,0], -"classmpl_1_1ranks.html#a26a4953810763dec408121b213b8d9ee":[2,0,0,62,0], -"classmpl_1_1ranks.html#a5a849ed7e37368988037974e10bdfd81":[2,0,0,62,2], -"classmpl_1_1ranks.html#a5a849ed7e37368988037974e10bdfd81":[3,0,0,61,2], -"classmpl_1_1ranks.html#a78f75166b8370635c0e845452599db80":[3,0,0,61,1], -"classmpl_1_1ranks.html#a78f75166b8370635c0e845452599db80":[2,0,0,62,1], -"classmpl_1_1ranks.html#a988be0bf88d82f0b34aa826d7ba82b44":[3,0,0,61,5], -"classmpl_1_1ranks.html#a988be0bf88d82f0b34aa826d7ba82b44":[2,0,0,62,5], -"classmpl_1_1ranks.html#acb6c3e3088cac56b8af02aeccf0d7a40":[3,0,0,61,4], -"classmpl_1_1ranks.html#acb6c3e3088cac56b8af02aeccf0d7a40":[2,0,0,62,4], -"classmpl_1_1status__t.html":[3,0,0,63], -"classmpl_1_1status__t.html":[2,0,0,64], -"classmpl_1_1status__t.html#a02861de720edc848695719d097a0cc65":[2,0,0,64,0], -"classmpl_1_1status__t.html#a02861de720edc848695719d097a0cc65":[3,0,0,63,0], -"classmpl_1_1status__t.html#a10d1875d30534ff94e21d98aeed02e11":[3,0,0,63,4], -"classmpl_1_1status__t.html#a10d1875d30534ff94e21d98aeed02e11":[2,0,0,64,4], -"classmpl_1_1status__t.html#a28e4940a8d711c15cada064a12ba0788":[2,0,0,64,8], -"classmpl_1_1status__t.html#a28e4940a8d711c15cada064a12ba0788":[3,0,0,63,8], -"classmpl_1_1status__t.html#a435a6a142566db821f6585961da52ed3":[2,0,0,64,9], -"classmpl_1_1status__t.html#a435a6a142566db821f6585961da52ed3":[3,0,0,63,9], -"classmpl_1_1status__t.html#a58de4e6c82f27f003be7d8d7425e0791":[3,0,0,63,3], -"classmpl_1_1status__t.html#a58de4e6c82f27f003be7d8d7425e0791":[2,0,0,64,3], -"classmpl_1_1status__t.html#a76b56d148b261f474f473d936c1fd878":[3,0,0,63,7], -"classmpl_1_1status__t.html#a76b56d148b261f474f473d936c1fd878":[2,0,0,64,7], -"classmpl_1_1status__t.html#a781043b8bfd8ccef19e1f512021d2c83":[2,0,0,64,2], -"classmpl_1_1status__t.html#a781043b8bfd8ccef19e1f512021d2c83":[3,0,0,63,2], -"classmpl_1_1status__t.html#a87d62778e3e1f35f55f80a909f49130f":[2,0,0,64,1], -"classmpl_1_1status__t.html#a87d62778e3e1f35f55f80a909f49130f":[3,0,0,63,1], -"classmpl_1_1status__t.html#a934d03b57e03aa23841cc44f0b73b7c1":[2,0,0,64,5], -"classmpl_1_1status__t.html#a934d03b57e03aa23841cc44f0b73b7c1":[3,0,0,63,5], -"classmpl_1_1status__t.html#a9d17d0e813a4ff51a178c96ffb3455f0":[3,0,0,63,6], -"classmpl_1_1status__t.html#a9d17d0e813a4ff51a178c96ffb3455f0":[2,0,0,64,6], -"classmpl_1_1status__t.html#ab9c9880cf76979a056acfe2cb6bf6772":[2,0,0,64,10], -"classmpl_1_1status__t.html#ab9c9880cf76979a056acfe2cb6bf6772":[3,0,0,63,10], -"classmpl_1_1strided__vector__layout.html":[2,0,0,65], -"classmpl_1_1strided__vector__layout.html":[3,0,0,64], -"classmpl_1_1strided__vector__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[3,0,0,64,7], -"classmpl_1_1strided__vector__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,65,7], -"classmpl_1_1strided__vector__layout.html#a0890ec4684e6a465170f88932e116d30":[3,0,0,64,19], -"classmpl_1_1strided__vector__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,65,19], -"classmpl_1_1strided__vector__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[3,0,0,64,17], -"classmpl_1_1strided__vector__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,65,17], -"classmpl_1_1strided__vector__layout.html#a26fbff388559dd91cbe8d4f5c0bf54be":[3,0,0,64,0], -"classmpl_1_1strided__vector__layout.html#a26fbff388559dd91cbe8d4f5c0bf54be":[2,0,0,65,0], -"classmpl_1_1strided__vector__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[3,0,0,64,22], -"classmpl_1_1strided__vector__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,65,22], -"classmpl_1_1strided__vector__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,65,16], -"classmpl_1_1strided__vector__layout.html#a45840e6936914baef876a0b67a8bb499":[3,0,0,64,16], -"classmpl_1_1strided__vector__layout.html#a497249e5a8b40b25329923b9062512f2":[3,0,0,64,15], -"classmpl_1_1strided__vector__layout.html#a497249e5a8b40b25329923b9062512f2":[2,0,0,65,15], -"classmpl_1_1strided__vector__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,65,20], -"classmpl_1_1strided__vector__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[3,0,0,64,20], -"classmpl_1_1strided__vector__layout.html#a5996f952887a7ad754de6b862f71bd60":[2,0,0,65,1], -"classmpl_1_1strided__vector__layout.html#a5996f952887a7ad754de6b862f71bd60":[3,0,0,64,1], -"classmpl_1_1strided__vector__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,65,10], -"classmpl_1_1strided__vector__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[3,0,0,64,10], -"classmpl_1_1strided__vector__layout.html#a80713f15de3244b019294ee277c8c650":[3,0,0,64,21], -"classmpl_1_1strided__vector__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,65,21], -"classmpl_1_1strided__vector__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[3,0,0,64,5], -"classmpl_1_1strided__vector__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,65,5], -"classmpl_1_1strided__vector__layout.html#a9120a85b7377a2e625b0b0966164339f":[3,0,0,64,12], -"classmpl_1_1strided__vector__layout.html#a9120a85b7377a2e625b0b0966164339f":[2,0,0,65,12], -"classmpl_1_1strided__vector__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[3,0,0,64,8], -"classmpl_1_1strided__vector__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,65,8], -"classmpl_1_1strided__vector__layout.html#a9ea9a57f672e317522e4e8929bdc9ea2":[3,0,0,64,4], -"classmpl_1_1strided__vector__layout.html#a9ea9a57f672e317522e4e8929bdc9ea2":[2,0,0,65,4], -"classmpl_1_1strided__vector__layout.html#aa391a934f031693cf985dcd1c675d8e4":[3,0,0,64,6] -}; diff --git a/docs/html/navtreeindex14.js b/docs/html/navtreeindex14.js deleted file mode 100644 index 01b81bb3..00000000 --- a/docs/html/navtreeindex14.js +++ /dev/null @@ -1,253 +0,0 @@ -var NAVTREEINDEX14 = -{ -"classmpl_1_1strided__vector__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,65,6], -"classmpl_1_1strided__vector__layout.html#aa9cbbcfed65d7a004c435b699ccd4d74":[2,0,0,65,11], -"classmpl_1_1strided__vector__layout.html#aa9cbbcfed65d7a004c435b699ccd4d74":[3,0,0,64,11], -"classmpl_1_1strided__vector__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[3,0,0,64,13], -"classmpl_1_1strided__vector__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,65,13], -"classmpl_1_1strided__vector__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,65,14], -"classmpl_1_1strided__vector__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[3,0,0,64,14], -"classmpl_1_1strided__vector__layout.html#abce0f3197d6b2252c951535b443d7d5e":[3,0,0,64,9], -"classmpl_1_1strided__vector__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,65,9], -"classmpl_1_1strided__vector__layout.html#acbd61feed56dc16a8121b9e05490ca4f":[2,0,0,65,2], -"classmpl_1_1strided__vector__layout.html#acbd61feed56dc16a8121b9e05490ca4f":[3,0,0,64,2], -"classmpl_1_1strided__vector__layout.html#adf592d9e08a92314cc086bd51d643953":[3,0,0,64,18], -"classmpl_1_1strided__vector__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,65,18], -"classmpl_1_1strided__vector__layout.html#af5f48479be2f758f7ee107166ff8b6ab":[2,0,0,65,3], -"classmpl_1_1strided__vector__layout.html#af5f48479be2f758f7ee107166ff8b6ab":[3,0,0,64,3], -"classmpl_1_1struct__builder.html":[2,0,0,66], -"classmpl_1_1struct__builder.html":[3,0,0,65], -"classmpl_1_1struct__builder.html#a7a251c50cab3d224a1a8268530db4d6d":[2,0,0,66,0], -"classmpl_1_1struct__builder.html#a7a251c50cab3d224a1a8268530db4d6d":[3,0,0,65,0], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html":[3,0,0,72], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html":[2,0,0,73], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html#a994090fb8f342df0546baa10fe298ee3":[3,0,0,72,0], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html#a994090fb8f342df0546baa10fe298ee3":[2,0,0,73,0], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html":[3,0,0,71], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html":[2,0,0,72], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html#af2c1e87c7b483609493dc6ab333f1d02":[3,0,0,71,0], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html#af2c1e87c7b483609493dc6ab333f1d02":[2,0,0,72,0], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html":[3,0,0,70], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html":[2,0,0,71], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html#aaf371600324b88c0b0e1fcd85f47c89a":[3,0,0,70,0], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html#aaf371600324b88c0b0e1fcd85f47c89a":[2,0,0,71,0], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html":[2,0,0,70], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html":[3,0,0,69], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html#a12b92cf1cac112f326ef9c1ff3fff9e9":[2,0,0,70,0], -"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html#a12b92cf1cac112f326ef9c1ff3fff9e9":[3,0,0,69,0], -"classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html":[3,0,0,66], -"classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html":[2,0,0,67], -"classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html#aa3ddf9c1a4b20c0da0c32c2ca98d7be3":[3,0,0,66,0], -"classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html#aa3ddf9c1a4b20c0da0c32c2ca98d7be3":[2,0,0,67,0], -"classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html":[3,0,0,67], -"classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html":[2,0,0,68], -"classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html#ad358a07c14d549703b11a0c26c8ed49f":[3,0,0,67,0], -"classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html#ad358a07c14d549703b11a0c26c8ed49f":[2,0,0,68,0], -"classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html":[3,0,0,68], -"classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html":[2,0,0,69], -"classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html#aca6ed8f6236fc432dcca0d7a656c6ca5":[2,0,0,69,0], -"classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html#aca6ed8f6236fc432dcca0d7a656c6ca5":[3,0,0,68,0], -"classmpl_1_1struct__layout.html":[2,0,0,74], -"classmpl_1_1struct__layout.html":[3,0,0,73], -"classmpl_1_1struct__layout.html#a1b10f2e35ead013aab50cab5e5aee21a":[3,0,0,73,2], -"classmpl_1_1struct__layout.html#a1b10f2e35ead013aab50cab5e5aee21a":[2,0,0,74,2], -"classmpl_1_1struct__layout.html#ac8edfd2e43039745840de4d7f14e13b7":[3,0,0,73,1], -"classmpl_1_1struct__layout.html#ac8edfd2e43039745840de4d7f14e13b7":[2,0,0,74,1], -"classmpl_1_1struct__layout.html#ada968c08d05ee6c94464bba46c7b2566":[3,0,0,73,0], -"classmpl_1_1struct__layout.html#ada968c08d05ee6c94464bba46c7b2566":[2,0,0,74,0], -"classmpl_1_1subarray__layout.html":[3,0,0,74], -"classmpl_1_1subarray__layout.html":[2,0,0,75], -"classmpl_1_1subarray__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[3,0,0,74,8], -"classmpl_1_1subarray__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,75,8], -"classmpl_1_1subarray__layout.html#a0890ec4684e6a465170f88932e116d30":[3,0,0,74,20], -"classmpl_1_1subarray__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,75,20], -"classmpl_1_1subarray__layout.html#a2243a1c2887f4c6bbf11403528912906":[2,0,0,75,1], -"classmpl_1_1subarray__layout.html#a2243a1c2887f4c6bbf11403528912906":[3,0,0,74,1], -"classmpl_1_1subarray__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,75,18], -"classmpl_1_1subarray__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[3,0,0,74,18], -"classmpl_1_1subarray__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,75,23], -"classmpl_1_1subarray__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[3,0,0,74,23], -"classmpl_1_1subarray__layout.html#a45840e6936914baef876a0b67a8bb499":[3,0,0,74,17], -"classmpl_1_1subarray__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,75,17], -"classmpl_1_1subarray__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,75,21], -"classmpl_1_1subarray__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[3,0,0,74,21], -"classmpl_1_1subarray__layout.html#a4c8c9abf713ae31b48f8504bb5929455":[2,0,0,75,5], -"classmpl_1_1subarray__layout.html#a4c8c9abf713ae31b48f8504bb5929455":[3,0,0,74,5], -"classmpl_1_1subarray__layout.html#a50f1141d79adc3100b3c4ab7d963b76f":[3,0,0,74,16], -"classmpl_1_1subarray__layout.html#a50f1141d79adc3100b3c4ab7d963b76f":[2,0,0,75,16], -"classmpl_1_1subarray__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[3,0,0,74,11], -"classmpl_1_1subarray__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,75,11], -"classmpl_1_1subarray__layout.html#a6c9462225f9727417f1063a7300c1580":[2,0,0,75,3], -"classmpl_1_1subarray__layout.html#a6c9462225f9727417f1063a7300c1580":[3,0,0,74,3], -"classmpl_1_1subarray__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,75,22], -"classmpl_1_1subarray__layout.html#a80713f15de3244b019294ee277c8c650":[3,0,0,74,22], -"classmpl_1_1subarray__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,75,6], -"classmpl_1_1subarray__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[3,0,0,74,6], -"classmpl_1_1subarray__layout.html#a8b4ea22298e053cea9267edbeaf057ed":[3,0,0,74,4], -"classmpl_1_1subarray__layout.html#a8b4ea22298e053cea9267edbeaf057ed":[2,0,0,75,4], -"classmpl_1_1subarray__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[3,0,0,74,9], -"classmpl_1_1subarray__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,75,9], -"classmpl_1_1subarray__layout.html#a9d10a8cb6f0e530fd4d6677ed6a6e16d":[3,0,0,74,12], -"classmpl_1_1subarray__layout.html#a9d10a8cb6f0e530fd4d6677ed6a6e16d":[2,0,0,75,12], -"classmpl_1_1subarray__layout.html#aa391a934f031693cf985dcd1c675d8e4":[3,0,0,74,7], -"classmpl_1_1subarray__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,75,7], -"classmpl_1_1subarray__layout.html#aa96074e957a0d2271f5ff45a248cdbd0":[2,0,0,75,2], -"classmpl_1_1subarray__layout.html#aa96074e957a0d2271f5ff45a248cdbd0":[3,0,0,74,2], -"classmpl_1_1subarray__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[3,0,0,74,14], -"classmpl_1_1subarray__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,75,14], -"classmpl_1_1subarray__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,75,15], -"classmpl_1_1subarray__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[3,0,0,74,15], -"classmpl_1_1subarray__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,75,10], -"classmpl_1_1subarray__layout.html#abce0f3197d6b2252c951535b443d7d5e":[3,0,0,74,10], -"classmpl_1_1subarray__layout.html#adad3946bd689cb93da9fc1f182d17f37":[2,0,0,75,13], -"classmpl_1_1subarray__layout.html#adad3946bd689cb93da9fc1f182d17f37":[3,0,0,74,13], -"classmpl_1_1subarray__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,75,19], -"classmpl_1_1subarray__layout.html#adf592d9e08a92314cc086bd51d643953":[3,0,0,74,19], -"classmpl_1_1subarray__layout_1_1parameter.html":[3,0,0,74,0], -"classmpl_1_1subarray__layout_1_1parameter.html":[2,0,0,75,0], -"classmpl_1_1subarray__layout_1_1parameter.html#a0db1e2fb063f6a67012b961fcd199170":[2,0,0,75,0,1], -"classmpl_1_1subarray__layout_1_1parameter.html#a0db1e2fb063f6a67012b961fcd199170":[3,0,0,74,0,1], -"classmpl_1_1subarray__layout_1_1parameter.html#a155ab0d9cb1eb40d8f8d7ae9fbc2bdca":[2,0,0,75,0,5], -"classmpl_1_1subarray__layout_1_1parameter.html#a155ab0d9cb1eb40d8f8d7ae9fbc2bdca":[3,0,0,74,0,5], -"classmpl_1_1subarray__layout_1_1parameter.html#a44e33f146bbe2cb7692c6fd9eeefdfc4":[2,0,0,75,0,6], -"classmpl_1_1subarray__layout_1_1parameter.html#a44e33f146bbe2cb7692c6fd9eeefdfc4":[3,0,0,74,0,6], -"classmpl_1_1subarray__layout_1_1parameter.html#a60f802b57d449678d80496b82c3751de":[2,0,0,75,0,4], -"classmpl_1_1subarray__layout_1_1parameter.html#a60f802b57d449678d80496b82c3751de":[3,0,0,74,0,4], -"classmpl_1_1subarray__layout_1_1parameter.html#a77ad6bab244fed5453132ca9a5ac3c6c":[2,0,0,75,0,2], -"classmpl_1_1subarray__layout_1_1parameter.html#a77ad6bab244fed5453132ca9a5ac3c6c":[3,0,0,74,0,2], -"classmpl_1_1subarray__layout_1_1parameter.html#aac6ad3727ba7277233e52e96cb28ffbf":[3,0,0,74,0,0], -"classmpl_1_1subarray__layout_1_1parameter.html#aac6ad3727ba7277233e52e96cb28ffbf":[2,0,0,75,0,0], -"classmpl_1_1subarray__layout_1_1parameter.html#adb56550a413cee796a9e3e7c9a268f24":[2,0,0,75,0,3], -"classmpl_1_1subarray__layout_1_1parameter.html#adb56550a413cee796a9e3e7c9a268f24":[3,0,0,74,0,3], -"classmpl_1_1tag__t.html":[3,0,0,75], -"classmpl_1_1tag__t.html":[2,0,0,76], -"classmpl_1_1tag__t.html#a1946fdf44d007662a538252b11dc5d23":[2,0,0,76,3], -"classmpl_1_1tag__t.html#a1946fdf44d007662a538252b11dc5d23":[3,0,0,75,3], -"classmpl_1_1tag__t.html#a290110d503cd4d6bf1bbd0553f78c0a6":[2,0,0,76,1], -"classmpl_1_1tag__t.html#a290110d503cd4d6bf1bbd0553f78c0a6":[3,0,0,75,1], -"classmpl_1_1tag__t.html#aee28b8c00b151ccee302f75016b63f7b":[3,0,0,75,2], -"classmpl_1_1tag__t.html#aee28b8c00b151ccee302f75016b63f7b":[2,0,0,76,2], -"classmpl_1_1tag__t.html#af2132893124b73da5792982e961f8e21":[3,0,0,75,0], -"classmpl_1_1tag__t.html#af2132893124b73da5792982e961f8e21":[2,0,0,76,0], -"classmpl_1_1vector__layout.html":[2,0,0,77], -"classmpl_1_1vector__layout.html":[3,0,0,76], -"classmpl_1_1vector__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,77,6], -"classmpl_1_1vector__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[3,0,0,76,6], -"classmpl_1_1vector__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,77,18], -"classmpl_1_1vector__layout.html#a0890ec4684e6a465170f88932e116d30":[3,0,0,76,18], -"classmpl_1_1vector__layout.html#a1a81501116e20200a783f9799a412482":[3,0,0,76,1], -"classmpl_1_1vector__layout.html#a1a81501116e20200a783f9799a412482":[2,0,0,77,1], -"classmpl_1_1vector__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,77,16], -"classmpl_1_1vector__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[3,0,0,76,16], -"classmpl_1_1vector__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,77,21], -"classmpl_1_1vector__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[3,0,0,76,21], -"classmpl_1_1vector__layout.html#a45840e6936914baef876a0b67a8bb499":[3,0,0,76,15], -"classmpl_1_1vector__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,77,15], -"classmpl_1_1vector__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[3,0,0,76,19], -"classmpl_1_1vector__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,77,19], -"classmpl_1_1vector__layout.html#a58151c81908894ffdd9279df6126367a":[2,0,0,77,3], -"classmpl_1_1vector__layout.html#a58151c81908894ffdd9279df6126367a":[3,0,0,76,3], -"classmpl_1_1vector__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[3,0,0,76,9], -"classmpl_1_1vector__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,77,9], -"classmpl_1_1vector__layout.html#a7ac32dc6996968661dc9f4cd685b8d57":[3,0,0,76,10], -"classmpl_1_1vector__layout.html#a7ac32dc6996968661dc9f4cd685b8d57":[2,0,0,77,10], -"classmpl_1_1vector__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,77,20], -"classmpl_1_1vector__layout.html#a80713f15de3244b019294ee277c8c650":[3,0,0,76,20], -"classmpl_1_1vector__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[3,0,0,76,4], -"classmpl_1_1vector__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,77,4], -"classmpl_1_1vector__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,77,7], -"classmpl_1_1vector__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[3,0,0,76,7], -"classmpl_1_1vector__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,77,5], -"classmpl_1_1vector__layout.html#aa391a934f031693cf985dcd1c675d8e4":[3,0,0,76,5], -"classmpl_1_1vector__layout.html#aa88614eb8266c7ca511275674335c986":[3,0,0,76,14], -"classmpl_1_1vector__layout.html#aa88614eb8266c7ca511275674335c986":[2,0,0,77,14], -"classmpl_1_1vector__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[3,0,0,76,12], -"classmpl_1_1vector__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,77,12], -"classmpl_1_1vector__layout.html#ab153f0de6c047fffe6adbf22b0a0efb1":[3,0,0,76,11], -"classmpl_1_1vector__layout.html#ab153f0de6c047fffe6adbf22b0a0efb1":[2,0,0,77,11], -"classmpl_1_1vector__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,77,13], -"classmpl_1_1vector__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[3,0,0,76,13], -"classmpl_1_1vector__layout.html#abce0f3197d6b2252c951535b443d7d5e":[3,0,0,76,8], -"classmpl_1_1vector__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,77,8], -"classmpl_1_1vector__layout.html#ac466af7b2403264214290c8e12c37cb5":[3,0,0,76,0], -"classmpl_1_1vector__layout.html#ac466af7b2403264214290c8e12c37cb5":[2,0,0,77,0], -"classmpl_1_1vector__layout.html#acc41027491fb0772f5f6f1bbe4a8029b":[3,0,0,76,2], -"classmpl_1_1vector__layout.html#acc41027491fb0772f5f6f1bbe4a8029b":[2,0,0,77,2], -"classmpl_1_1vector__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,77,17], -"classmpl_1_1vector__layout.html#adf592d9e08a92314cc086bd51d643953":[3,0,0,76,17], -"collective_8cc-example.html":[4,3], -"communicator_8cc-example.html":[4,4], -"distributed_grid_8cc-example.html":[4,5], -"distributed_grid_scatter_gather_8cc-example.html":[4,6], -"examples.html":[4], -"functions.html":[3,3,0], -"functions.html":[3,3,0,0], -"functions_b.html":[3,3,0,1], -"functions_c.html":[3,3,0,2], -"functions_d.html":[3,3,0,3], -"functions_e.html":[3,3,0,4], -"functions_enum.html":[3,3,4], -"functions_func.html":[3,3,1], -"functions_func.html":[3,3,1,0], -"functions_func_b.html":[3,3,1,1], -"functions_func_c.html":[3,3,1,2], -"functions_func_d.html":[3,3,1,3], -"functions_func_e.html":[3,3,1,4], -"functions_func_g.html":[3,3,1,5], -"functions_func_h.html":[3,3,1,6], -"functions_func_i.html":[3,3,1,7], -"functions_func_l.html":[3,3,1,8], -"functions_func_m.html":[3,3,1,9], -"functions_func_n.html":[3,3,1,10], -"functions_func_o.html":[3,3,1,11], -"functions_func_p.html":[3,3,1,12], -"functions_func_r.html":[3,3,1,13], -"functions_func_s.html":[3,3,1,14], -"functions_func_t.html":[3,3,1,15], -"functions_func_u.html":[3,3,1,16], -"functions_func_v.html":[3,3,1,17], -"functions_func_w.html":[3,3,1,18], -"functions_func_~.html":[3,3,1,19], -"functions_g.html":[3,3,0,5], -"functions_h.html":[3,3,0,6], -"functions_i.html":[3,3,0,7], -"functions_l.html":[3,3,0,8], -"functions_m.html":[3,3,0,9], -"functions_n.html":[3,3,0,10], -"functions_o.html":[3,3,0,11], -"functions_p.html":[3,3,0,12], -"functions_r.html":[3,3,0,13], -"functions_rela.html":[3,3,5], -"functions_s.html":[3,3,0,14], -"functions_t.html":[3,3,0,15], -"functions_type.html":[3,3,3], -"functions_u.html":[3,3,0,16], -"functions_v.html":[3,3,0,17], -"functions_vars.html":[3,3,2], -"functions_w.html":[3,3,0,18], -"functions_~.html":[3,3,0,19], -"gather_8cc-example.html":[4,7], -"gatherv_8cc-example.html":[4,8], -"heat_equation__jacobi_method_8cc-example.html":[4,9], -"heat_equation_successive_over-relaxation_8cc-example.html":[4,10], -"hello_world_8cc-example.html":[4,11], -"hierarchy.html":[3,2], -"index.html":[], -"index.html":[0], -"iterators_8cc-example.html":[4,12], -"layouts_8cc-example.html":[4,13], -"matrix_gather_8cc-example.html":[4,14], -"md_data_types.html":[1], -"namespacemembers.html":[2,1,0], -"namespacemembers_enum.html":[2,1,4], -"namespacemembers_func.html":[2,1,1], -"namespacemembers_type.html":[2,1,3], -"namespacemembers_vars.html":[2,1,2], -"namespacempl.html":[2,0,0], -"namespacempl.html#a118b145797198062151e6f43ee52046b":[2,0,0,84], -"namespacempl.html#a3685893e866d7db6c3b3765d26ef386b":[2,0,0,78], -"namespacempl.html#a39c14458a8b289cc73bce2e2e156783b":[2,0,0,91], -"namespacempl.html#a3cd70ef6c91cacaf9265de4c9dd93ddf":[2,0,0,79], -"namespacempl.html#a410d15ee027fbbc82e25bce740d4c69b":[2,0,0,95], -"namespacempl.html#a4bc7e110094061c98ce0bf2b136ff19a":[2,0,0,96] -}; diff --git a/docs/html/navtreeindex15.js b/docs/html/navtreeindex15.js deleted file mode 100644 index 615b0f26..00000000 --- a/docs/html/navtreeindex15.js +++ /dev/null @@ -1,133 +0,0 @@ -var NAVTREEINDEX15 = -{ -"namespacempl.html#a50a0f0b35e2150b88de70497e424ab4c":[2,0,0,97], -"namespacempl.html#a551ed45948e628d93f6669b4cb01e750":[2,0,0,99], -"namespacempl.html#a580d63de8f272555e40bb7ea90f23ccc":[2,0,0,98], -"namespacempl.html#a6481521478393b302a549178d93b8503":[2,0,0,85], -"namespacempl.html#a6aabc6191f8b6e463e4c283f7b05985a":[2,0,0,89], -"namespacempl.html#a700cde8da9a9d5af915974f05b9863b4":[2,0,0,93], -"namespacempl.html#a79afe2e73335bd43c875005716304b89":[2,0,0,88], -"namespacempl.html#a7b638dd4b816832f5bab22fac8f157af":[2,0,0,83], -"namespacempl.html#a7fd33fa3d7b9a6f095cd55710c3b2dbf":[2,0,0,81], -"namespacempl.html#a7fd33fa3d7b9a6f095cd55710c3b2dbfaadf55cfbf8cf8671022d5210c4eccaa8":[2,0,0,81,0], -"namespacempl.html#a7fd33fa3d7b9a6f095cd55710c3b2dbfae406b10bb96ad9064aebbf2835864097":[2,0,0,81,1], -"namespacempl.html#a9593329c5b9cc66fdf2defd6f2e00431":[2,0,0,90], -"namespacempl.html#ab242c0bf99fd03e51e406ee59b36ac4f":[2,0,0,86], -"namespacempl.html#ab82856a9a5264addefc5e436a19e3565":[2,0,0,92], -"namespacempl.html#acf6b82700b0f144cbcd49b1233e1083d":[2,0,0,80], -"namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828":[2,0,0,82], -"namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828a2110cc27d60e873203472314639a3c8a":[2,0,0,82,1], -"namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828ace495ab8d79db0d37413d8e95b54e606":[2,0,0,82,3], -"namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828add5c07036f2975ff4bce568b6511d3bc":[2,0,0,82,0], -"namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828afb741eb55bd67db2031aa661671fba7c":[2,0,0,82,2], -"namespacempl.html#af4c305e85a8670fe754351dd3f8366b7":[2,0,0,87], -"namespacempl.html#af7799eb8fd405a1f2f1f226fe24626f5":[2,0,0,94], -"namespacempl_1_1environment.html":[2,0,0,0], -"namespacempl_1_1environment.html#a18e3982cf7b547d30b3f7f1236a079f6":[2,0,0,0,8], -"namespacempl_1_1environment.html#a1f4644f4435160bb33ada569dc3f48ac":[2,0,0,0,3], -"namespacempl_1_1environment.html#a785bf3032ef30fadadf9d834549041c1":[2,0,0,0,2], -"namespacempl_1_1environment.html#a89bda4aaa36251049ffdecdbe79a4322":[2,0,0,0,5], -"namespacempl_1_1environment.html#a8df37b1fb318ae7efa867d9eda6b99b9":[2,0,0,0,9], -"namespacempl_1_1environment.html#a9bf5f93d0014124492bffd5b2df1f571":[2,0,0,0,4], -"namespacempl_1_1environment.html#aa73a2d692feb579fac1c5c351503fbe2":[2,0,0,0,1], -"namespacempl_1_1environment.html#ab112324f29c5e0a131f1863ab11f2ff5":[2,0,0,0,0], -"namespacempl_1_1environment.html#ac623e48336fe65e098fb56ebd16dba33":[2,0,0,0,6], -"namespacempl_1_1environment.html#ad5d86a31e41363a7b326baaa9dd32edb":[2,0,0,0,7], -"namespacempl_1_1impl.html":[2,0,0,1], -"namespaces.html":[2,0], -"namespacestd.html":[2,0,1], -"nonblocking_8cc-example.html":[4,15], -"nonblocking_mult_8cc-example.html":[4,16], -"pages.html":[], -"parallel_sort_mpi_8c-example.html":[4,17], -"parallel_sort_mpl_8cc-example.html":[4,18], -"probe_8cc-example.html":[4,19], -"reduce_lcm_8cc-example.html":[4,20], -"reduce_min_loc_8cc-example.html":[4,21], -"standard_types_8cc-example.html":[4,22], -"stl_container_8cc-example.html":[4,23], -"struct_8cc-example.html":[4,24], -"structmpl_1_1bit__and.html":[3,0,0,5], -"structmpl_1_1bit__and.html":[2,0,0,6], -"structmpl_1_1bit__and.html#a7133da51787910d7e6ca97be99782268":[2,0,0,6,0], -"structmpl_1_1bit__and.html#a7133da51787910d7e6ca97be99782268":[3,0,0,5,0], -"structmpl_1_1bit__or.html":[2,0,0,7], -"structmpl_1_1bit__or.html":[3,0,0,6], -"structmpl_1_1bit__or.html#ab5a228ee19d0bfb34f9b239a85dc5eac":[2,0,0,7,0], -"structmpl_1_1bit__or.html#ab5a228ee19d0bfb34f9b239a85dc5eac":[3,0,0,6,0], -"structmpl_1_1bit__xor.html":[2,0,0,8], -"structmpl_1_1bit__xor.html":[3,0,0,7], -"structmpl_1_1bit__xor.html#a8d990747d97457d18652ac9a58e424fb":[3,0,0,7,0], -"structmpl_1_1bit__xor.html#a8d990747d97457d18652ac9a58e424fb":[2,0,0,8,0], -"structmpl_1_1logical__and.html":[2,0,0,40], -"structmpl_1_1logical__and.html":[3,0,0,39], -"structmpl_1_1logical__and.html#a41d77b4ab90b1d0363eb65dea6100d00":[2,0,0,40,0], -"structmpl_1_1logical__and.html#a41d77b4ab90b1d0363eb65dea6100d00":[3,0,0,39,0], -"structmpl_1_1logical__or.html":[2,0,0,41], -"structmpl_1_1logical__or.html":[3,0,0,40], -"structmpl_1_1logical__or.html#ad4f0f01a628867690d1fd9e4f265b681":[2,0,0,41,0], -"structmpl_1_1logical__or.html#ad4f0f01a628867690d1fd9e4f265b681":[3,0,0,40,0], -"structmpl_1_1logical__xor.html":[2,0,0,42], -"structmpl_1_1logical__xor.html":[3,0,0,41], -"structmpl_1_1logical__xor.html#a66bb19d69956d437e42f8cbea11b8fb1":[2,0,0,42,0], -"structmpl_1_1logical__xor.html#a66bb19d69956d437e42f8cbea11b8fb1":[3,0,0,41,0], -"structmpl_1_1max.html":[3,0,0,42], -"structmpl_1_1max.html":[2,0,0,43], -"structmpl_1_1max.html#a2908e4ec953dd58edf8079788bec51e0":[3,0,0,42,0], -"structmpl_1_1max.html#a2908e4ec953dd58edf8079788bec51e0":[2,0,0,43,0], -"structmpl_1_1min.html":[3,0,0,43], -"structmpl_1_1min.html":[2,0,0,44], -"structmpl_1_1min.html#a23b201ffe2013e1f55f1ea0cdc02e0f8":[3,0,0,43,0], -"structmpl_1_1min.html#a23b201ffe2013e1f55f1ea0cdc02e0f8":[2,0,0,44,0], -"structmpl_1_1mprobe__status.html":[3,0,0,44], -"structmpl_1_1mprobe__status.html":[2,0,0,45], -"structmpl_1_1mprobe__status.html#a1bd4ee6dd27523dd27cbeb2f2e7974e7":[2,0,0,45,0], -"structmpl_1_1mprobe__status.html#a1bd4ee6dd27523dd27cbeb2f2e7974e7":[3,0,0,44,0], -"structmpl_1_1mprobe__status.html#ad5f29b026bbd4e57d9ed3e74fbb0e415":[3,0,0,44,1], -"structmpl_1_1mprobe__status.html#ad5f29b026bbd4e57d9ed3e74fbb0e415":[2,0,0,45,1], -"structmpl_1_1multiplies.html":[3,0,0,45], -"structmpl_1_1multiplies.html":[2,0,0,46], -"structmpl_1_1multiplies.html#a224ea72086f08b923bb32ac7ebf1704d":[3,0,0,45,0], -"structmpl_1_1multiplies.html#a224ea72086f08b923bb32ac7ebf1704d":[2,0,0,46,0], -"structmpl_1_1op__traits.html":[3,0,0,47], -"structmpl_1_1op__traits.html":[2,0,0,48], -"structmpl_1_1op__traits_3_01bit__and_3_01_t_01_4_01_4.html":[3,0,0,48], -"structmpl_1_1op__traits_3_01bit__and_3_01_t_01_4_01_4.html":[2,0,0,49], -"structmpl_1_1op__traits_3_01bit__or_3_01_t_01_4_01_4.html":[3,0,0,49], -"structmpl_1_1op__traits_3_01bit__or_3_01_t_01_4_01_4.html":[2,0,0,50], -"structmpl_1_1op__traits_3_01bit__xor_3_01_t_01_4_01_4.html":[3,0,0,50], -"structmpl_1_1op__traits_3_01bit__xor_3_01_t_01_4_01_4.html":[2,0,0,51], -"structmpl_1_1op__traits_3_01logical__and_3_01_t_01_4_01_4.html":[3,0,0,51], -"structmpl_1_1op__traits_3_01logical__and_3_01_t_01_4_01_4.html":[2,0,0,52], -"structmpl_1_1op__traits_3_01logical__or_3_01_t_01_4_01_4.html":[2,0,0,53], -"structmpl_1_1op__traits_3_01logical__or_3_01_t_01_4_01_4.html":[3,0,0,52], -"structmpl_1_1op__traits_3_01logical__xor_3_01_t_01_4_01_4.html":[3,0,0,53], -"structmpl_1_1op__traits_3_01logical__xor_3_01_t_01_4_01_4.html":[2,0,0,54], -"structmpl_1_1op__traits_3_01max_3_01_t_01_4_01_4.html":[2,0,0,55], -"structmpl_1_1op__traits_3_01max_3_01_t_01_4_01_4.html":[3,0,0,54], -"structmpl_1_1op__traits_3_01min_3_01_t_01_4_01_4.html":[2,0,0,56], -"structmpl_1_1op__traits_3_01min_3_01_t_01_4_01_4.html":[3,0,0,55], -"structmpl_1_1op__traits_3_01multiplies_3_01_t_01_4_01_4.html":[2,0,0,57], -"structmpl_1_1op__traits_3_01multiplies_3_01_t_01_4_01_4.html":[3,0,0,56], -"structmpl_1_1op__traits_3_01plus_3_01_t_01_4_01_4.html":[2,0,0,58], -"structmpl_1_1op__traits_3_01plus_3_01_t_01_4_01_4.html":[3,0,0,57], -"structmpl_1_1plus.html":[2,0,0,59], -"structmpl_1_1plus.html":[3,0,0,58], -"structmpl_1_1plus.html#a946a45253a41fb515c6d4cf467eeac41":[2,0,0,59,0], -"structmpl_1_1plus.html#a946a45253a41fb515c6d4cf467eeac41":[3,0,0,58,0], -"structmpl_1_1shift__ranks.html":[2,0,0,63], -"structmpl_1_1shift__ranks.html":[3,0,0,62], -"structmpl_1_1shift__ranks.html#ad9c6fc779c9f0ee61497af1a4f82fe27":[3,0,0,62,0], -"structmpl_1_1shift__ranks.html#ad9c6fc779c9f0ee61497af1a4f82fe27":[2,0,0,63,0], -"structmpl_1_1shift__ranks.html#afb38d83c7519b1f4202e826c9ae9568b":[2,0,0,63,1], -"structmpl_1_1shift__ranks.html#afb38d83c7519b1f4202e826c9ae9568b":[3,0,0,62,1], -"structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html":[2,0,1,0], -"structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html":[3,0,1,0], -"structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html#ade76dbf30ac4a03ad006fc2db5b9b8a2":[2,0,1,0,0], -"structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html#ade76dbf30ac4a03ad006fc2db5b9b8a2":[3,0,1,0,0], -"structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html":[2,0,1,1], -"structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html":[3,0,1,1], -"subarray_8cc-example.html":[4,25], -"vibrating_string_mpi_8c-example.html":[4,26], -"vibrating_string_mpl_8cc-example.html":[4,27] -}; diff --git a/docs/html/navtreeindex2.js b/docs/html/navtreeindex2.js index 1ed02389..e080bd7f 100644 --- a/docs/html/navtreeindex2.js +++ b/docs/html/navtreeindex2.js @@ -1,253 +1,253 @@ var NAVTREEINDEX2 = { -"classmpl_1_1cartesian__communicator_1_1dimensions.html#aa77b8602f4cfcf88b8ac53ecf548e2ed":[3,0,0,9,0,10], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#ab2ef164390601631c8551b0112a7637f":[3,0,0,9,0,7], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#ab2ef164390601631c8551b0112a7637f":[2,0,0,10,0,7], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#abe4772eeabdce64a87a2e8be98ddb196":[2,0,0,10,0,16], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#abe4772eeabdce64a87a2e8be98ddb196":[3,0,0,9,0,16], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#ae4711dea9668fee29fd5e6fc2cc72a6f":[3,0,0,9,0,20], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#ae4711dea9668fee29fd5e6fc2cc72a6f":[2,0,0,10,0,20], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#afac55447acc7a9624d5f2cc75c78af85":[3,0,0,9,0,23], -"classmpl_1_1cartesian__communicator_1_1dimensions.html#afac55447acc7a9624d5f2cc75c78af85":[2,0,0,10,0,23], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html":[3,0,0,9,0,0], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html":[2,0,0,10,0,0], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a0749daf0892e8c7c0d5b5da5bc8d0749":[3,0,0,9,0,0,7], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a0749daf0892e8c7c0d5b5da5bc8d0749":[2,0,0,10,0,0,7], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a240a9c896e65954b25b9444db1e7f745":[2,0,0,10,0,0,4], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a240a9c896e65954b25b9444db1e7f745":[3,0,0,9,0,0,4], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a32dd93ebdc5b3f3c1379c8555dc266a1":[2,0,0,10,0,0,2], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a32dd93ebdc5b3f3c1379c8555dc266a1":[3,0,0,9,0,0,2], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a3df2e96495b39551a49133cf423e31f5":[2,0,0,10,0,0,3], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a3df2e96495b39551a49133cf423e31f5":[3,0,0,9,0,0,3], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a5fbca5b71055f2b793ae1607239b13a0":[2,0,0,10,0,0,9], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a5fbca5b71055f2b793ae1607239b13a0":[3,0,0,9,0,0,9], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a9124b5277e84386543372a744c1f3263":[2,0,0,10,0,0,0], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a9124b5277e84386543372a744c1f3263":[3,0,0,9,0,0,0], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a96670119c07635bab19f68b1c865c0a7":[3,0,0,9,0,0,6], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a96670119c07635bab19f68b1c865c0a7":[2,0,0,10,0,0,6], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a9cc5ab905da7e4568ca31d9d7034992a":[3,0,0,9,0,0,8], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a9cc5ab905da7e4568ca31d9d7034992a":[2,0,0,10,0,0,8], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#ab0ac7de651351823aece097eb3be1cfb":[2,0,0,10,0,0,10], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#ab0ac7de651351823aece097eb3be1cfb":[3,0,0,9,0,0,10], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#acda97b96d05cf49d244e973870831ffc":[3,0,0,9,0,0,1], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#acda97b96d05cf49d244e973870831ffc":[2,0,0,10,0,0,1], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#afb583e0b115e329d7303d1d9b99884fa":[3,0,0,9,0,0,5], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#afb583e0b115e329d7303d1d9b99884fa":[2,0,0,10,0,0,5], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html":[3,0,0,9,0,1], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html":[2,0,0,10,0,1], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a0555d632d9963ded11815f6c21e8c009":[3,0,0,9,0,1,0], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a0555d632d9963ded11815f6c21e8c009":[2,0,0,10,0,1,0], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a1303b66cdd13a09584a89b44bff40d7a":[2,0,0,10,0,1,1], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a1303b66cdd13a09584a89b44bff40d7a":[3,0,0,9,0,1,1], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a3353907d5c2825712c2a80362a891f52":[3,0,0,9,0,1,2], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a3353907d5c2825712c2a80362a891f52":[2,0,0,10,0,1,2], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a4fcb9247987978603e60fafd6b1b0efc":[2,0,0,10,0,1,3], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a4fcb9247987978603e60fafd6b1b0efc":[3,0,0,9,0,1,3], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a86e6c75a53843e5dcda1c2e48763e463":[2,0,0,10,0,1,4], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a86e6c75a53843e5dcda1c2e48763e463":[3,0,0,9,0,1,4], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html":[3,0,0,9,0,2], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html":[2,0,0,10,0,2], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a3cf701146a093e49ac1906d9969f7a79":[2,0,0,10,0,2,2], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a3cf701146a093e49ac1906d9969f7a79":[3,0,0,9,0,2,2], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a55a8ee0e80dad1a7da9d751c25bc0386":[2,0,0,10,0,2,9], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a55a8ee0e80dad1a7da9d751c25bc0386":[3,0,0,9,0,2,9], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a7823145e46bc588bc50f4e06f38ab349":[3,0,0,9,0,2,5], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a7823145e46bc588bc50f4e06f38ab349":[2,0,0,10,0,2,5], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a81d10d7799462c7ca5e7cf19119ca356":[3,0,0,9,0,2,10], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a81d10d7799462c7ca5e7cf19119ca356":[2,0,0,10,0,2,10], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a9e59695e3620081c6b31448102398296":[2,0,0,10,0,2,0], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a9e59695e3620081c6b31448102398296":[3,0,0,9,0,2,0], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#ac2db8b996b26b13b844e0f715f1eee3f":[3,0,0,9,0,2,7], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#ac2db8b996b26b13b844e0f715f1eee3f":[2,0,0,10,0,2,7], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#acaa75ca51d75d81868f0ea74d9a3fa05":[2,0,0,10,0,2,1], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#acaa75ca51d75d81868f0ea74d9a3fa05":[3,0,0,9,0,2,1], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#acb32b214c2b2a45fd4d770f2f32d414a":[3,0,0,9,0,2,8], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#acb32b214c2b2a45fd4d770f2f32d414a":[2,0,0,10,0,2,8], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#acc37d5d5bfa96b9560bb466407f8bf5c":[3,0,0,9,0,2,3], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#acc37d5d5bfa96b9560bb466407f8bf5c":[2,0,0,10,0,2,3], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#ad4a9eef4a8a7cb42a4a4d303c9c1a613":[3,0,0,9,0,2,4], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#ad4a9eef4a8a7cb42a4a4d303c9c1a613":[2,0,0,10,0,2,4], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#aef35daadcb5e7c9292367318d1e4ad2a":[2,0,0,10,0,2,6], -"classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#aef35daadcb5e7c9292367318d1e4ad2a":[3,0,0,9,0,2,6], -"classmpl_1_1cartesian__communicator_1_1included__tags.html":[2,0,0,10,1], -"classmpl_1_1cartesian__communicator_1_1included__tags.html":[3,0,0,9,1], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a1aa72f4e0fcca8b7a149adeb640ead4e":[2,0,0,10,1,0], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a1aa72f4e0fcca8b7a149adeb640ead4e":[3,0,0,9,1,0], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a373c7869e0aa251e05fb578a2aea95e9":[2,0,0,10,1,9], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a373c7869e0aa251e05fb578a2aea95e9":[3,0,0,9,1,9], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a39edb9ac5555118a37675167b577b11d":[3,0,0,9,1,11], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a39edb9ac5555118a37675167b577b11d":[2,0,0,10,1,11], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a4d4e69a2220d0670cabbbf3dd566000a":[2,0,0,10,1,4], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a4d4e69a2220d0670cabbbf3dd566000a":[3,0,0,9,1,4], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a6087bfa57412c9e8b80b6f380ebaaf7a":[2,0,0,10,1,12], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a6087bfa57412c9e8b80b6f380ebaaf7a":[3,0,0,9,1,12], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a6d15151da59d0483bb7da33aba71dc60":[2,0,0,10,1,2], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a6d15151da59d0483bb7da33aba71dc60":[3,0,0,9,1,2], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a7c5d657f45d984865283fdb5dfd4edbc":[3,0,0,9,1,6], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a7c5d657f45d984865283fdb5dfd4edbc":[2,0,0,10,1,6], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a82a715985b94853367abcfb164082ac4":[2,0,0,10,1,10], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a82a715985b94853367abcfb164082ac4":[3,0,0,9,1,10], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a841f9c67444cbd1589f1ea3066edfe38":[2,0,0,10,1,3], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a841f9c67444cbd1589f1ea3066edfe38":[3,0,0,9,1,3], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a949beacb76cdab143f823228f22cbf47":[3,0,0,9,1,7], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#a949beacb76cdab143f823228f22cbf47":[2,0,0,10,1,7], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#ab46ef7e9748d1f33a0f8ff71d104e7e1":[3,0,0,9,1,1], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#ab46ef7e9748d1f33a0f8ff71d104e7e1":[2,0,0,10,1,1], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#ac2cfb27c6cb4ef1d70aa4e7139fa60ad":[2,0,0,10,1,8], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#ac2cfb27c6cb4ef1d70aa4e7139fa60ad":[3,0,0,9,1,8], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#ae18657b9e6cee8ffa9549f3b4bc3e104":[2,0,0,10,1,5], -"classmpl_1_1cartesian__communicator_1_1included__tags.html#ae18657b9e6cee8ffa9549f3b4bc3e104":[3,0,0,9,1,5], -"classmpl_1_1cartesian__communicator_1_1vector.html":[3,0,0,9,2], -"classmpl_1_1cartesian__communicator_1_1vector.html":[2,0,0,10,2], -"classmpl_1_1cartesian__communicator_1_1vector.html#a0dab1fa97a7c8b5862f4c808e1475c6c":[3,0,0,9,2,3], -"classmpl_1_1cartesian__communicator_1_1vector.html#a0dab1fa97a7c8b5862f4c808e1475c6c":[2,0,0,10,2,3], -"classmpl_1_1cartesian__communicator_1_1vector.html#a20fb79f818b48bbc40b88adefae3734a":[2,0,0,10,2,11], -"classmpl_1_1cartesian__communicator_1_1vector.html#a20fb79f818b48bbc40b88adefae3734a":[3,0,0,9,2,11], -"classmpl_1_1cartesian__communicator_1_1vector.html#a3d22ddb853627dcb5d33d690c28a44ac":[2,0,0,10,2,10], -"classmpl_1_1cartesian__communicator_1_1vector.html#a3d22ddb853627dcb5d33d690c28a44ac":[3,0,0,9,2,10], -"classmpl_1_1cartesian__communicator_1_1vector.html#a3d9a6b783c4c02ff2948fff730f8de8d":[2,0,0,10,2,8], -"classmpl_1_1cartesian__communicator_1_1vector.html#a3d9a6b783c4c02ff2948fff730f8de8d":[3,0,0,9,2,8], -"classmpl_1_1cartesian__communicator_1_1vector.html#a6087bfa57412c9e8b80b6f380ebaaf7a":[3,0,0,9,2,12], -"classmpl_1_1cartesian__communicator_1_1vector.html#a6087bfa57412c9e8b80b6f380ebaaf7a":[2,0,0,10,2,12], -"classmpl_1_1cartesian__communicator_1_1vector.html#a6d37006e6cad284e3761d2dc9642ee88":[2,0,0,10,2,1], -"classmpl_1_1cartesian__communicator_1_1vector.html#a6d37006e6cad284e3761d2dc9642ee88":[3,0,0,9,2,1], -"classmpl_1_1cartesian__communicator_1_1vector.html#a6f1970d433943ef7aa5b1bd281aa92ce":[2,0,0,10,2,7], -"classmpl_1_1cartesian__communicator_1_1vector.html#a6f1970d433943ef7aa5b1bd281aa92ce":[3,0,0,9,2,7], -"classmpl_1_1cartesian__communicator_1_1vector.html#a90ce86dd81472bbcdf612649366be94c":[3,0,0,9,2,9], -"classmpl_1_1cartesian__communicator_1_1vector.html#a90ce86dd81472bbcdf612649366be94c":[2,0,0,10,2,9], -"classmpl_1_1cartesian__communicator_1_1vector.html#a95eab3eb70b4574c8850af64b20b41f3":[3,0,0,9,2,2], -"classmpl_1_1cartesian__communicator_1_1vector.html#a95eab3eb70b4574c8850af64b20b41f3":[2,0,0,10,2,2], -"classmpl_1_1cartesian__communicator_1_1vector.html#a9ad2fab87c4ee7bc0c95ad0a12c519c4":[3,0,0,9,2,6], -"classmpl_1_1cartesian__communicator_1_1vector.html#a9ad2fab87c4ee7bc0c95ad0a12c519c4":[2,0,0,10,2,6], -"classmpl_1_1cartesian__communicator_1_1vector.html#aadb32224556177212bda389440645f2d":[3,0,0,9,2,5], -"classmpl_1_1cartesian__communicator_1_1vector.html#aadb32224556177212bda389440645f2d":[2,0,0,10,2,5], -"classmpl_1_1cartesian__communicator_1_1vector.html#ad9f677e798824f15bd7ae99bac9ec985":[3,0,0,9,2,0], -"classmpl_1_1cartesian__communicator_1_1vector.html#ad9f677e798824f15bd7ae99bac9ec985":[2,0,0,10,2,0], -"classmpl_1_1cartesian__communicator_1_1vector.html#af62280a6766d3cfe8db967ab0ee5ac50":[3,0,0,9,2,4], -"classmpl_1_1cartesian__communicator_1_1vector.html#af62280a6766d3cfe8db967ab0ee5ac50":[2,0,0,10,2,4], -"classmpl_1_1communicator.html":[2,0,0,11], -"classmpl_1_1communicator.html":[3,0,0,10], -"classmpl_1_1communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09":[3,0,0,10,18], -"classmpl_1_1communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09":[2,0,0,11,18], -"classmpl_1_1communicator.html#a031345325782266cecb521469e42d8c3":[2,0,0,11,115], -"classmpl_1_1communicator.html#a031345325782266cecb521469e42d8c3":[3,0,0,10,115], -"classmpl_1_1communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69":[3,0,0,10,90], -"classmpl_1_1communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69":[2,0,0,11,90], -"classmpl_1_1communicator.html#a03d88ad3aa943dc51578259c03b0b695":[2,0,0,11,137], -"classmpl_1_1communicator.html#a03d88ad3aa943dc51578259c03b0b695":[3,0,0,10,137], -"classmpl_1_1communicator.html#a05ed2a65531e978c766f9af918f5e5a3":[3,0,0,10,26], -"classmpl_1_1communicator.html#a05ed2a65531e978c766f9af918f5e5a3":[2,0,0,11,26], -"classmpl_1_1communicator.html#a06525ff878eb073c02dc0bef285f06ac":[3,0,0,10,99], -"classmpl_1_1communicator.html#a06525ff878eb073c02dc0bef285f06ac":[2,0,0,11,99], -"classmpl_1_1communicator.html#a06c080c4492462cd582894a04191de56":[2,0,0,11,129], -"classmpl_1_1communicator.html#a06c080c4492462cd582894a04191de56":[3,0,0,10,129], -"classmpl_1_1communicator.html#a07591e9922db9239a75ab1b6c7b70f11":[2,0,0,11,179], -"classmpl_1_1communicator.html#a07591e9922db9239a75ab1b6c7b70f11":[3,0,0,10,179], -"classmpl_1_1communicator.html#a0a2866d44cee859fc064e2e32a6710d7":[3,0,0,10,20], -"classmpl_1_1communicator.html#a0a2866d44cee859fc064e2e32a6710d7":[2,0,0,11,20], -"classmpl_1_1communicator.html#a0ca545be8c199264a127b16180450162":[3,0,0,10,139], -"classmpl_1_1communicator.html#a0ca545be8c199264a127b16180450162":[2,0,0,11,139], -"classmpl_1_1communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3":[3,0,0,10,17], -"classmpl_1_1communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3":[2,0,0,11,17], -"classmpl_1_1communicator.html#a0e6459ad572cb1a69cb149df1871f2c6":[2,0,0,11,97], -"classmpl_1_1communicator.html#a0e6459ad572cb1a69cb149df1871f2c6":[3,0,0,10,97], -"classmpl_1_1communicator.html#a0e7776c9ef670b685701dfd197b76912":[3,0,0,10,23], -"classmpl_1_1communicator.html#a0e7776c9ef670b685701dfd197b76912":[2,0,0,11,23], -"classmpl_1_1communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3":[3,0,0,10,91], -"classmpl_1_1communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3":[2,0,0,11,91], -"classmpl_1_1communicator.html#a100f19741ccecda229eb1bb6659c1dd8":[2,0,0,11,176], -"classmpl_1_1communicator.html#a100f19741ccecda229eb1bb6659c1dd8":[3,0,0,10,176], -"classmpl_1_1communicator.html#a14ad784ff91391983f667a5cadbfe367":[3,0,0,10,95], -"classmpl_1_1communicator.html#a14ad784ff91391983f667a5cadbfe367":[2,0,0,11,95], -"classmpl_1_1communicator.html#a14b2306de71e02b0390c564ff6ba7c21":[3,0,0,10,73], -"classmpl_1_1communicator.html#a14b2306de71e02b0390c564ff6ba7c21":[2,0,0,11,73], -"classmpl_1_1communicator.html#a153a492a90432d228638e2548b2a65b5":[2,0,0,11,131], -"classmpl_1_1communicator.html#a153a492a90432d228638e2548b2a65b5":[3,0,0,10,131], -"classmpl_1_1communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f":[2,0,0,11,177], -"classmpl_1_1communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f":[3,0,0,10,177], -"classmpl_1_1communicator.html#a17526ad519286bf2fa81a3701c0afe03":[3,0,0,10,183], -"classmpl_1_1communicator.html#a17526ad519286bf2fa81a3701c0afe03":[2,0,0,11,183], -"classmpl_1_1communicator.html#a179246280657f80aa624f7ebcb8ac9a4":[3,0,0,10,124], -"classmpl_1_1communicator.html#a179246280657f80aa624f7ebcb8ac9a4":[2,0,0,11,124], -"classmpl_1_1communicator.html#a192fabbdbac09436fab92943148c5185":[2,0,0,11,83], -"classmpl_1_1communicator.html#a192fabbdbac09436fab92943148c5185":[3,0,0,10,83], -"classmpl_1_1communicator.html#a1948c90e2873f0db6b7fc32f7240e80a":[3,0,0,10,113], -"classmpl_1_1communicator.html#a1948c90e2873f0db6b7fc32f7240e80a":[2,0,0,11,113], -"classmpl_1_1communicator.html#a197f9833a6c4685a2368b7bea2a60cd8":[2,0,0,11,150], -"classmpl_1_1communicator.html#a197f9833a6c4685a2368b7bea2a60cd8":[3,0,0,10,150], -"classmpl_1_1communicator.html#a19912b0013f991bbebf2ef46fcb93c70":[3,0,0,10,102], -"classmpl_1_1communicator.html#a19912b0013f991bbebf2ef46fcb93c70":[2,0,0,11,102], -"classmpl_1_1communicator.html#a1a2fbf1a89b606c316790a29a6c24344":[2,0,0,11,14], -"classmpl_1_1communicator.html#a1a2fbf1a89b606c316790a29a6c24344":[3,0,0,10,14], -"classmpl_1_1communicator.html#a1bf177485606687353cd50bc5a3b3c59":[3,0,0,10,76], -"classmpl_1_1communicator.html#a1bf177485606687353cd50bc5a3b3c59":[2,0,0,11,76], -"classmpl_1_1communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644":[2,0,0,11,173], -"classmpl_1_1communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644":[3,0,0,10,173], -"classmpl_1_1communicator.html#a1f45f3b4b5afa504963d30203bebcd67":[3,0,0,10,167], -"classmpl_1_1communicator.html#a1f45f3b4b5afa504963d30203bebcd67":[2,0,0,11,167], -"classmpl_1_1communicator.html#a20505014d3a5ac58a5601faee033d003":[3,0,0,10,74], -"classmpl_1_1communicator.html#a20505014d3a5ac58a5601faee033d003":[2,0,0,11,74], -"classmpl_1_1communicator.html#a20766ee389c97340241ff730eae49475":[3,0,0,10,77], -"classmpl_1_1communicator.html#a20766ee389c97340241ff730eae49475":[2,0,0,11,77], -"classmpl_1_1communicator.html#a20c2142532726d3a3f25e4eb3293fd4c":[3,0,0,10,141], -"classmpl_1_1communicator.html#a20c2142532726d3a3f25e4eb3293fd4c":[2,0,0,11,141], -"classmpl_1_1communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb":[3,0,0,10,39], -"classmpl_1_1communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb":[2,0,0,11,39], -"classmpl_1_1communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a":[3,0,0,10,168], -"classmpl_1_1communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a":[2,0,0,11,168], -"classmpl_1_1communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe":[2,0,0,11,13], -"classmpl_1_1communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe":[3,0,0,10,13], -"classmpl_1_1communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627":[2,0,0,11,151], -"classmpl_1_1communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627":[3,0,0,10,151], -"classmpl_1_1communicator.html#a2a901501dfe4dad53249a142a6c61f8a":[3,0,0,10,169], -"classmpl_1_1communicator.html#a2a901501dfe4dad53249a142a6c61f8a":[2,0,0,11,169], -"classmpl_1_1communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f":[3,0,0,10,123], -"classmpl_1_1communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f":[2,0,0,11,123], -"classmpl_1_1communicator.html#a32881aa49f5e9c71792e98629a131822":[2,0,0,11,52], -"classmpl_1_1communicator.html#a32881aa49f5e9c71792e98629a131822":[3,0,0,10,52], -"classmpl_1_1communicator.html#a34c527f23af855f716bf00a2658c9436":[3,0,0,10,72], -"classmpl_1_1communicator.html#a34c527f23af855f716bf00a2658c9436":[2,0,0,11,72], -"classmpl_1_1communicator.html#a36031fd4a0c2ed7bab527e0a4663971f":[2,0,0,11,165], -"classmpl_1_1communicator.html#a36031fd4a0c2ed7bab527e0a4663971f":[3,0,0,10,165], -"classmpl_1_1communicator.html#a38537ffedd59ba7ac4018e44dd2c06c6":[3,0,0,10,186], -"classmpl_1_1communicator.html#a38537ffedd59ba7ac4018e44dd2c06c6":[2,0,0,11,186], -"classmpl_1_1communicator.html#a39c2f12ebc86e0930266a60ffecea926":[2,0,0,11,134], -"classmpl_1_1communicator.html#a39c2f12ebc86e0930266a60ffecea926":[3,0,0,10,134], -"classmpl_1_1communicator.html#a3b4d541cab8706ae5a4a699aef0662d3":[2,0,0,11,164], -"classmpl_1_1communicator.html#a3b4d541cab8706ae5a4a699aef0662d3":[3,0,0,10,164], -"classmpl_1_1communicator.html#a3f433b69dace132e01bea64624fff4b3":[3,0,0,10,184], -"classmpl_1_1communicator.html#a3f433b69dace132e01bea64624fff4b3":[2,0,0,11,184], -"classmpl_1_1communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416":[3,0,0,10,109], -"classmpl_1_1communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416":[2,0,0,11,109], -"classmpl_1_1communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc":[2,0,0,11,93], -"classmpl_1_1communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc":[3,0,0,10,93], -"classmpl_1_1communicator.html#a445e05af65cdc53b7a981d4884a4c3b8":[3,0,0,10,85], -"classmpl_1_1communicator.html#a445e05af65cdc53b7a981d4884a4c3b8":[2,0,0,11,85], -"classmpl_1_1communicator.html#a45585975b4b7cc0795a02abf6494963b":[2,0,0,11,45], -"classmpl_1_1communicator.html#a45585975b4b7cc0795a02abf6494963b":[3,0,0,10,45], -"classmpl_1_1communicator.html#a46e8797b907b9539b2ee90713a675e5c":[3,0,0,10,120], -"classmpl_1_1communicator.html#a46e8797b907b9539b2ee90713a675e5c":[2,0,0,11,120], -"classmpl_1_1communicator.html#a477820ee73599e311a6e73ef06fbdf33":[3,0,0,10,166], -"classmpl_1_1communicator.html#a477820ee73599e311a6e73ef06fbdf33":[2,0,0,11,166], -"classmpl_1_1communicator.html#a47df48127ee7c1952d62832748b052cd":[2,0,0,11,12], -"classmpl_1_1communicator.html#a47df48127ee7c1952d62832748b052cd":[3,0,0,10,12], -"classmpl_1_1communicator.html#a480ef5ac8533cd47ef55b04454baddca":[2,0,0,11,154], -"classmpl_1_1communicator.html#a480ef5ac8533cd47ef55b04454baddca":[3,0,0,10,154], -"classmpl_1_1communicator.html#a494c7c1849713e45d99d901b31250b35":[3,0,0,10,140], -"classmpl_1_1communicator.html#a494c7c1849713e45d99d901b31250b35":[2,0,0,11,140], -"classmpl_1_1communicator.html#a4a29592502142845c3bb0031221189a3":[3,0,0,10,79], -"classmpl_1_1communicator.html#a4a29592502142845c3bb0031221189a3":[2,0,0,11,79], -"classmpl_1_1communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21":[2,0,0,11,112], -"classmpl_1_1communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21":[3,0,0,10,112], -"classmpl_1_1communicator.html#a4ac75dc1695c441e9e8faa185a458cc3":[2,0,0,11,40], -"classmpl_1_1communicator.html#a4ac75dc1695c441e9e8faa185a458cc3":[3,0,0,10,40], -"classmpl_1_1communicator.html#a4cff38dd56b3d53992babac77cbefa8d":[3,0,0,10,66], -"classmpl_1_1communicator.html#a4cff38dd56b3d53992babac77cbefa8d":[2,0,0,11,66], -"classmpl_1_1communicator.html#a4db43a46f468c60e84b35f95577ff0f4":[2,0,0,11,29], -"classmpl_1_1communicator.html#a4db43a46f468c60e84b35f95577ff0f4":[3,0,0,10,29], -"classmpl_1_1communicator.html#a4de1ecacd035af3dca830995098a2f49":[2,0,0,11,100], -"classmpl_1_1communicator.html#a4de1ecacd035af3dca830995098a2f49":[3,0,0,10,100], -"classmpl_1_1communicator.html#a5314e5dc5b35f952dba239b8f03be330":[3,0,0,10,38], -"classmpl_1_1communicator.html#a5314e5dc5b35f952dba239b8f03be330":[2,0,0,11,38], -"classmpl_1_1communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84":[2,0,0,11,15] +"classmpl_1_1distributed__graph__communicator.html#a14ad784ff91391983f667a5cadbfe367":[2,0,0,14,100], +"classmpl_1_1distributed__graph__communicator.html#a14b2306de71e02b0390c564ff6ba7c21":[2,0,0,14,67], +"classmpl_1_1distributed__graph__communicator.html#a153a492a90432d228638e2548b2a65b5":[2,0,0,14,144], +"classmpl_1_1distributed__graph__communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f":[2,0,0,14,192], +"classmpl_1_1distributed__graph__communicator.html#a17526ad519286bf2fa81a3701c0afe03":[2,0,0,14,198], +"classmpl_1_1distributed__graph__communicator.html#a179246280657f80aa624f7ebcb8ac9a4":[2,0,0,14,129], +"classmpl_1_1distributed__graph__communicator.html#a192fabbdbac09436fab92943148c5185":[2,0,0,14,77], +"classmpl_1_1distributed__graph__communicator.html#a1948c90e2873f0db6b7fc32f7240e80a":[2,0,0,14,118], +"classmpl_1_1distributed__graph__communicator.html#a197f9833a6c4685a2368b7bea2a60cd8":[2,0,0,14,165], +"classmpl_1_1distributed__graph__communicator.html#a19912b0013f991bbebf2ef46fcb93c70":[2,0,0,14,107], +"classmpl_1_1distributed__graph__communicator.html#a1a2fbf1a89b606c316790a29a6c24344":[2,0,0,14,8], +"classmpl_1_1distributed__graph__communicator.html#a1bf177485606687353cd50bc5a3b3c59":[2,0,0,14,70], +"classmpl_1_1distributed__graph__communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644":[2,0,0,14,188], +"classmpl_1_1distributed__graph__communicator.html#a1f45f3b4b5afa504963d30203bebcd67":[2,0,0,14,182], +"classmpl_1_1distributed__graph__communicator.html#a20505014d3a5ac58a5601faee033d003":[2,0,0,14,68], +"classmpl_1_1distributed__graph__communicator.html#a20766ee389c97340241ff730eae49475":[2,0,0,14,71], +"classmpl_1_1distributed__graph__communicator.html#a20c2142532726d3a3f25e4eb3293fd4c":[2,0,0,14,156], +"classmpl_1_1distributed__graph__communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb":[2,0,0,14,33], +"classmpl_1_1distributed__graph__communicator.html#a2431581c87c06df890a849c6b91972b9":[2,0,0,14,3], +"classmpl_1_1distributed__graph__communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a":[2,0,0,14,183], +"classmpl_1_1distributed__graph__communicator.html#a27a19494efdc8558802169947a8adeed":[2,0,0,14,146], +"classmpl_1_1distributed__graph__communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe":[2,0,0,14,7], +"classmpl_1_1distributed__graph__communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627":[2,0,0,14,166], +"classmpl_1_1distributed__graph__communicator.html#a2a901501dfe4dad53249a142a6c61f8a":[2,0,0,14,184], +"classmpl_1_1distributed__graph__communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f":[2,0,0,14,128], +"classmpl_1_1distributed__graph__communicator.html#a32881aa49f5e9c71792e98629a131822":[2,0,0,14,46], +"classmpl_1_1distributed__graph__communicator.html#a3365eb0152e5a5c34327478974193d24":[2,0,0,14,4], +"classmpl_1_1distributed__graph__communicator.html#a34c527f23af855f716bf00a2658c9436":[2,0,0,14,66], +"classmpl_1_1distributed__graph__communicator.html#a36031fd4a0c2ed7bab527e0a4663971f":[2,0,0,14,180], +"classmpl_1_1distributed__graph__communicator.html#a377702be1b30166ad458fcef11b2c239":[2,0,0,14,136], +"classmpl_1_1distributed__graph__communicator.html#a382f89a6edce34c57070c8be15b33205":[2,0,0,14,6], +"classmpl_1_1distributed__graph__communicator.html#a39c2f12ebc86e0930266a60ffecea926":[2,0,0,14,149], +"classmpl_1_1distributed__graph__communicator.html#a3b4d541cab8706ae5a4a699aef0662d3":[2,0,0,14,179], +"classmpl_1_1distributed__graph__communicator.html#a3f433b69dace132e01bea64624fff4b3":[2,0,0,14,199], +"classmpl_1_1distributed__graph__communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416":[2,0,0,14,114], +"classmpl_1_1distributed__graph__communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc":[2,0,0,14,98], +"classmpl_1_1distributed__graph__communicator.html#a3fbbc822e36ea95e865a7b37ac0ad984":[2,0,0,14,94], +"classmpl_1_1distributed__graph__communicator.html#a43c7b3d19a5af4ba0f30e40045a2e459":[2,0,0,14,133], +"classmpl_1_1distributed__graph__communicator.html#a445e05af65cdc53b7a981d4884a4c3b8":[2,0,0,14,79], +"classmpl_1_1distributed__graph__communicator.html#a45585975b4b7cc0795a02abf6494963b":[2,0,0,14,39], +"classmpl_1_1distributed__graph__communicator.html#a455d8703c09913eebe31cd360351c308":[2,0,0,14,137], +"classmpl_1_1distributed__graph__communicator.html#a46e8797b907b9539b2ee90713a675e5c":[2,0,0,14,125], +"classmpl_1_1distributed__graph__communicator.html#a477820ee73599e311a6e73ef06fbdf33":[2,0,0,14,181], +"classmpl_1_1distributed__graph__communicator.html#a480ef5ac8533cd47ef55b04454baddca":[2,0,0,14,169], +"classmpl_1_1distributed__graph__communicator.html#a494c7c1849713e45d99d901b31250b35":[2,0,0,14,155], +"classmpl_1_1distributed__graph__communicator.html#a4a29592502142845c3bb0031221189a3":[2,0,0,14,73], +"classmpl_1_1distributed__graph__communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21":[2,0,0,14,117], +"classmpl_1_1distributed__graph__communicator.html#a4ac75dc1695c441e9e8faa185a458cc3":[2,0,0,14,34], +"classmpl_1_1distributed__graph__communicator.html#a4cff38dd56b3d53992babac77cbefa8d":[2,0,0,14,60], +"classmpl_1_1distributed__graph__communicator.html#a4db43a46f468c60e84b35f95577ff0f4":[2,0,0,14,23], +"classmpl_1_1distributed__graph__communicator.html#a4de1ecacd035af3dca830995098a2f49":[2,0,0,14,105], +"classmpl_1_1distributed__graph__communicator.html#a4ef63ca9340ce71f4903e2ce890fdcc0":[2,0,0,14,5], +"classmpl_1_1distributed__graph__communicator.html#a5314e5dc5b35f952dba239b8f03be330":[2,0,0,14,32], +"classmpl_1_1distributed__graph__communicator.html#a54da0c73668349841c941c53c6acff81":[2,0,0,14,140], +"classmpl_1_1distributed__graph__communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84":[2,0,0,14,9], +"classmpl_1_1distributed__graph__communicator.html#a55feab940e9c72241215918199931936":[2,0,0,14,15], +"classmpl_1_1distributed__graph__communicator.html#a55fef351e8bb5d3062d25683cb404c9d":[2,0,0,14,164], +"classmpl_1_1distributed__graph__communicator.html#a5664d9591456924a7343082445bc8452":[2,0,0,14,62], +"classmpl_1_1distributed__graph__communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7":[2,0,0,14,80], +"classmpl_1_1distributed__graph__communicator.html#a58b6d65e9351b61c493967718f550614":[2,0,0,14,122], +"classmpl_1_1distributed__graph__communicator.html#a5a80517f1de86265d2a863a7c1fd5032":[2,0,0,14,174], +"classmpl_1_1distributed__graph__communicator.html#a5a8f9ed0c2035ded24a38989d75a5494":[2,0,0,14,145], +"classmpl_1_1distributed__graph__communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c":[2,0,0,14,75], +"classmpl_1_1distributed__graph__communicator.html#a5ce91750a7c77edf43e53ac88e4e8524":[2,0,0,14,53], +"classmpl_1_1distributed__graph__communicator.html#a5ceb8a7771930409a0b7c54042b49866":[2,0,0,14,93], +"classmpl_1_1distributed__graph__communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec":[2,0,0,14,24], +"classmpl_1_1distributed__graph__communicator.html#a601c251b4c10c6797af3cd741dea4d55":[2,0,0,14,47], +"classmpl_1_1distributed__graph__communicator.html#a6149ac444daf9efa0818c1ad86df03f4":[2,0,0,14,189], +"classmpl_1_1distributed__graph__communicator.html#a61c69fd52a576be43b7331536f54b73f":[2,0,0,14,119], +"classmpl_1_1distributed__graph__communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2":[2,0,0,14,27], +"classmpl_1_1distributed__graph__communicator.html#a636784ef8a1e076a303e3e6279de1e7d":[2,0,0,14,161], +"classmpl_1_1distributed__graph__communicator.html#a65311bd6bde1b8de5b8acf9ae902104a":[2,0,0,14,91], +"classmpl_1_1distributed__graph__communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3":[2,0,0,14,10], +"classmpl_1_1distributed__graph__communicator.html#a67f541a36dee046cc12d15d9133930b7":[2,0,0,14,124], +"classmpl_1_1distributed__graph__communicator.html#a68996ab5379c9a104572b804633d869e":[2,0,0,14,59], +"classmpl_1_1distributed__graph__communicator.html#a693590693b8621565e94abdd6763d5b6":[2,0,0,14,151], +"classmpl_1_1distributed__graph__communicator.html#a69ebec18f9d55bc8e2b6951f97855068":[2,0,0,14,65], +"classmpl_1_1distributed__graph__communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f":[2,0,0,14,78], +"classmpl_1_1distributed__graph__communicator.html#a719512973bc590402ac30b10e5227d2b":[2,0,0,14,26], +"classmpl_1_1distributed__graph__communicator.html#a72d2639f200e5a36f1f81df5c499f06f":[2,0,0,14,113], +"classmpl_1_1distributed__graph__communicator.html#a73df8f569865237bc58e2445c7d07742":[2,0,0,14,50], +"classmpl_1_1distributed__graph__communicator.html#a753e8742d27ff29a660b07ee0b90b69e":[2,0,0,14,51], +"classmpl_1_1distributed__graph__communicator.html#a76dbca1b1f6089ee9e07e997b5d79295":[2,0,0,14,74], +"classmpl_1_1distributed__graph__communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0":[2,0,0,14,185], +"classmpl_1_1distributed__graph__communicator.html#a779f215eb82ce71764befaae9918b596":[2,0,0,14,83], +"classmpl_1_1distributed__graph__communicator.html#a79e5f4cd63cf9354ceedc4da193e2410":[2,0,0,14,99], +"classmpl_1_1distributed__graph__communicator.html#a7abdf44a7c377ba7191cb4abc6648afe":[2,0,0,14,61], +"classmpl_1_1distributed__graph__communicator.html#a7b672d71b83fafca8f6bf4d435331180":[2,0,0,14,35], +"classmpl_1_1distributed__graph__communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af":[2,0,0,14,177], +"classmpl_1_1distributed__graph__communicator.html#a7eddabba5f98c99db189844854690d13":[2,0,0,14,69], +"classmpl_1_1distributed__graph__communicator.html#a82b6f15cef4c0daa6825bc699418df22":[2,0,0,14,97], +"classmpl_1_1distributed__graph__communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9":[2,0,0,14,37], +"classmpl_1_1distributed__graph__communicator.html#a871cba17f8d1891fb0613f9a23c38866":[2,0,0,14,197], +"classmpl_1_1distributed__graph__communicator.html#a88368d3f4d7b375825ba839746aea7dd":[2,0,0,14,19], +"classmpl_1_1distributed__graph__communicator.html#a89b9a55af5259f119281592b4f63f2ee":[2,0,0,14,130], +"classmpl_1_1distributed__graph__communicator.html#a8e43e08af5e8481049731092274aca76":[2,0,0,14,72], +"classmpl_1_1distributed__graph__communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b":[2,0,0,14,171], +"classmpl_1_1distributed__graph__communicator.html#a95d5c90f2a58fe228d846942fe700645":[2,0,0,14,49], +"classmpl_1_1distributed__graph__communicator.html#a970647a9680c6bdc3ffbe0814b32f989":[2,0,0,14,108], +"classmpl_1_1distributed__graph__communicator.html#a997e3a727642f7fe7ab74a7342fa334b":[2,0,0,14,13], +"classmpl_1_1distributed__graph__communicator.html#a9dccde1bf10e911c3a00d1a546005e94":[2,0,0,14,89], +"classmpl_1_1distributed__graph__communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d":[2,0,0,14,158], +"classmpl_1_1distributed__graph__communicator.html#a9fbb87f9933ff071092164c9e264d817":[2,0,0,14,121], +"classmpl_1_1distributed__graph__communicator.html#aa018e93fa8e391b0f7ac34ad707a64fe":[2,0,0,14,84], +"classmpl_1_1distributed__graph__communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6":[2,0,0,14,172], +"classmpl_1_1distributed__graph__communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5":[2,0,0,14,187], +"classmpl_1_1distributed__graph__communicator.html#aa2b51b89d72555ebfb1862d1de688061":[2,0,0,14,56], +"classmpl_1_1distributed__graph__communicator.html#aa4407a90c2f598867b36e8e557b72ec0":[2,0,0,14,163], +"classmpl_1_1distributed__graph__communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf":[2,0,0,14,54], +"classmpl_1_1distributed__graph__communicator.html#aa541e7830014dce23eb1ce5f6bcfe281":[2,0,0,14,52], +"classmpl_1_1distributed__graph__communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca":[2,0,0,14,162], +"classmpl_1_1distributed__graph__communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42":[2,0,0,14,175], +"classmpl_1_1distributed__graph__communicator.html#aa91aed6395fdcbb40788323a4cf45110":[2,0,0,14,82], +"classmpl_1_1distributed__graph__communicator.html#aaa714c0902d770205ee9cfb636f20fed":[2,0,0,14,167], +"classmpl_1_1distributed__graph__communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f":[2,0,0,14,186], +"classmpl_1_1distributed__graph__communicator.html#aad369f0de0b51dc3cf7992ed26c0799d":[2,0,0,14,64], +"classmpl_1_1distributed__graph__communicator.html#aad40f322ef427d759fe699b1318c3103":[2,0,0,14,88], +"classmpl_1_1distributed__graph__communicator.html#aadb9f14a7a9f9bd44eae7832daed895d":[2,0,0,14,57], +"classmpl_1_1distributed__graph__communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2":[2,0,0,14,126], +"classmpl_1_1distributed__graph__communicator.html#aae3643fa3e833c9dfb4eaf871235aed3":[2,0,0,14,160], +"classmpl_1_1distributed__graph__communicator.html#aaf647eec3afe83caf2afafe5a82b405a":[2,0,0,14,123], +"classmpl_1_1distributed__graph__communicator.html#aafb144ba1a5494f2a21de28c50b3ab91":[2,0,0,14,30], +"classmpl_1_1distributed__graph__communicator.html#aba77e505c9c19f3c6acdf10d4bc9fe16":[2,0,0,14,90], +"classmpl_1_1distributed__graph__communicator.html#aba80b0971e6f8d2f04d1454f389833be":[2,0,0,14,178], +"classmpl_1_1distributed__graph__communicator.html#abb0001ba1ee4c2fbd53038bde821e647":[2,0,0,14,110], +"classmpl_1_1distributed__graph__communicator.html#abb3d36d582c7a469b5e49dca53c4f952":[2,0,0,14,42], +"classmpl_1_1distributed__graph__communicator.html#abbc79395f9583143b1427c2e3f1c6637":[2,0,0,14,150], +"classmpl_1_1distributed__graph__communicator.html#abdb6d8fc8a9aafabf50b96275f09775d":[2,0,0,14,101], +"classmpl_1_1distributed__graph__communicator.html#abe1bd8f32c690ee7a31456da2c437bdf":[2,0,0,14,193], +"classmpl_1_1distributed__graph__communicator.html#abe91007be7acef7641d6cbb08526d53b":[2,0,0,14,58], +"classmpl_1_1distributed__graph__communicator.html#abeb99f29459a82f9027dfc8b4bd60add":[2,0,0,14,196], +"classmpl_1_1distributed__graph__communicator.html#ac402242f2ad68dbce183e60cfcc82382":[2,0,0,14,190], +"classmpl_1_1distributed__graph__communicator.html#ac43f72ca3930976c113403fd465087b0":[2,0,0,14,28], +"classmpl_1_1distributed__graph__communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5":[2,0,0,14,25], +"classmpl_1_1distributed__graph__communicator.html#ac4b1db52070739de82b25f972b9e6996":[2,0,0,14,41], +"classmpl_1_1distributed__graph__communicator.html#ac514a6fe8a481f7120bc1d105c09ee96":[2,0,0,14,115], +"classmpl_1_1distributed__graph__communicator.html#ac7cb886dc70531a897bce6396c9a6e7e":[2,0,0,14,92], +"classmpl_1_1distributed__graph__communicator.html#ac8b0b4aa6e6c4e23ebd807ef809dad6b":[2,0,0,14,86], +"classmpl_1_1distributed__graph__communicator.html#acbe2058694618ea2c085d03bcaf4946c":[2,0,0,14,40], +"classmpl_1_1distributed__graph__communicator.html#acce39280ea657a7d9e5d675631cf7a12":[2,0,0,14,63], +"classmpl_1_1distributed__graph__communicator.html#acdeb1107c64614728b6c2cc0e65075bf":[2,0,0,14,127], +"classmpl_1_1distributed__graph__communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47":[2,0,0,14,48], +"classmpl_1_1distributed__graph__communicator.html#ad15575d951e6a6c4327052e2ff01730f":[2,0,0,14,55], +"classmpl_1_1distributed__graph__communicator.html#ad2342955984c4db387d52a5414b212c5":[2,0,0,14,103], +"classmpl_1_1distributed__graph__communicator.html#ad2d304708463bb6f91e1a54b3d87106a":[2,0,0,14,76], +"classmpl_1_1distributed__graph__communicator.html#ad5daeea3d8b7033a2f70cd19582e098a":[2,0,0,14,131], +"classmpl_1_1distributed__graph__communicator.html#ad67313aace6a05f58081939eb1d2a4b8":[2,0,0,14,38], +"classmpl_1_1distributed__graph__communicator.html#ad709e10e351d9ffd4dd9917a9b697c19":[2,0,0,14,18], +"classmpl_1_1distributed__graph__communicator.html#ad8c0dc208fd9705a2423346d0baaff58":[2,0,0,14,111], +"classmpl_1_1distributed__graph__communicator.html#ad9dda1e430895757470e09c7ac721dee":[2,0,0,14,21], +"classmpl_1_1distributed__graph__communicator.html#ada2dc41f3f09788b9dd87be27981668a":[2,0,0,14,139], +"classmpl_1_1distributed__graph__communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d":[2,0,0,14,36], +"classmpl_1_1distributed__graph__communicator.html#adb4b189592ceb6f3a16c53d48e3071b8":[2,0,0,14,176], +"classmpl_1_1distributed__graph__communicator.html#adb886db659e8bc352ca70800704b8956":[2,0,0,14,159], +"classmpl_1_1distributed__graph__communicator.html#add45a9df6b60973abe8d13b9161c0ed8":[2,0,0,14,153], +"classmpl_1_1distributed__graph__communicator.html#ade499e3631297c5268da93604ec68a94":[2,0,0,14,168], +"classmpl_1_1distributed__graph__communicator.html#adf4170f0647e141b72b441c99a5421f5":[2,0,0,14,16], +"classmpl_1_1distributed__graph__communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597":[2,0,0,14,170], +"classmpl_1_1distributed__graph__communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789":[2,0,0,14,148], +"classmpl_1_1distributed__graph__communicator.html#ae17e2ec67fab08b09d7c67923fa81b42":[2,0,0,14,44], +"classmpl_1_1distributed__graph__communicator.html#ae2941001b886519f2d10d0ebb9901e70":[2,0,0,14,31], +"classmpl_1_1distributed__graph__communicator.html#ae2bdc9265ab60a53dced1a251b3e5898":[2,0,0,14,195], +"classmpl_1_1distributed__graph__communicator.html#ae35acd56966f491923a80abbc13fe74a":[2,0,0,14,109], +"classmpl_1_1distributed__graph__communicator.html#ae4313c9f339d60a7c2fa1148a97626c9":[2,0,0,14,142], +"classmpl_1_1distributed__graph__communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3":[2,0,0,14,29], +"classmpl_1_1distributed__graph__communicator.html#ae6e7de007099b7dc579f638a39d56911":[2,0,0,14,106], +"classmpl_1_1distributed__graph__communicator.html#ae71687a9aa6bac6a2b888245aa801020":[2,0,0,14,81], +"classmpl_1_1distributed__graph__communicator.html#aea3f30e3e33676cfbd8f3757082949cd":[2,0,0,14,141], +"classmpl_1_1distributed__graph__communicator.html#aed2415ddb3e27cce97fd5317f781a86c":[2,0,0,14,157], +"classmpl_1_1distributed__graph__communicator.html#af11d56af7c3459eac6b3f5285788c8b9":[2,0,0,14,132], +"classmpl_1_1distributed__graph__communicator.html#af1d52b673c059c284806768be1240afc":[2,0,0,14,45], +"classmpl_1_1distributed__graph__communicator.html#af3ce31d403e1e2c143acb593ca1b21c2":[2,0,0,14,134], +"classmpl_1_1distributed__graph__communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f":[2,0,0,14,147], +"classmpl_1_1distributed__graph__communicator.html#af43c205c247a23c35ec015b257f10a6e":[2,0,0,14,43], +"classmpl_1_1distributed__graph__communicator.html#af5822b089b634a670a9f3cef6e37dcef":[2,0,0,14,135], +"classmpl_1_1distributed__graph__communicator.html#af66054a704ac25557aa25b356e8abd63":[2,0,0,14,2], +"classmpl_1_1distributed__graph__communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703":[2,0,0,14,2,2], +"classmpl_1_1distributed__graph__communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29":[2,0,0,14,2,3], +"classmpl_1_1distributed__graph__communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac":[2,0,0,14,2,1], +"classmpl_1_1distributed__graph__communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8":[2,0,0,14,2,0], +"classmpl_1_1distributed__graph__communicator.html#af786635362fca5a0f915771332383589":[2,0,0,14,112], +"classmpl_1_1distributed__graph__communicator.html#afa3fdbce27f981366ddd913b496c7023":[2,0,0,14,85], +"classmpl_1_1distributed__graph__communicator.html#afcb7048f892b4c371bba2e261e565656":[2,0,0,14,22], +"classmpl_1_1distributed__graph__communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3":[2,0,0,14,116], +"classmpl_1_1distributed__graph__communicator.html#afe6c73aa613bf07ed4790210f10a0f1c":[2,0,0,14,173], +"classmpl_1_1distributed__graph__communicator.html#afe84efb5ffee5860ab38c3a4d87ec65a":[2,0,0,14,143], +"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html":[2,0,0,14,0], +"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a16981b82ed0e23bc5ee44294fec1b4af":[2,0,0,14,0,2], +"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a88a535128a6ba0edea60dab411c425ec":[2,0,0,14,0,3], +"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#aa7dded0f45c35d7c28a87e443ddac33f":[2,0,0,14,0,1], +"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#ac33e4cd06803a0e689a73d737a39f815":[2,0,0,14,0,0], +"classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html":[2,0,0,14,1], +"classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#a26f5274dd9650e3feb1c245e4560bb19":[2,0,0,14,1,0], +"classmpl_1_1distributed__grid.html":[2,0,0,15], +"classmpl_1_1distributed__grid.html#a003cab421d434c154fc865a407cf60e8":[2,0,0,15,27], +"classmpl_1_1distributed__grid.html#a144e45f64ac0694660ba2891405bedf1":[2,0,0,15,31], +"classmpl_1_1distributed__grid.html#a1627554f0a1f004b002b4437f31ffde1":[2,0,0,15,29], +"classmpl_1_1distributed__grid.html#a19c79be242cf60cba067c6d5c74ac87d":[2,0,0,15,21], +"classmpl_1_1distributed__grid.html#a1aeca17c53c962ae27ca0e24d976171e":[2,0,0,15,30], +"classmpl_1_1distributed__grid.html#a2f644cd6560ba3d618e97da5bc735097":[2,0,0,15,35], +"classmpl_1_1distributed__grid.html#a32d7b6507e9184ed2e89324b40c7f6c9":[2,0,0,15,4], +"classmpl_1_1distributed__grid.html#a34a86347db9b7601f7e3d5e4dc4f9418":[2,0,0,15,8], +"classmpl_1_1distributed__grid.html#a39550233d58d0f53264b3f1bf5b3575b":[2,0,0,15,32], +"classmpl_1_1distributed__grid.html#a3dc2b8663427188f0fb8c122921e489a":[2,0,0,15,22], +"classmpl_1_1distributed__grid.html#a4945000e5319f35d2aa104769b276618":[2,0,0,15,19], +"classmpl_1_1distributed__grid.html#a4af35d52ae69a0b0dea4921ed2a2595e":[2,0,0,15,36], +"classmpl_1_1distributed__grid.html#a51579bec8d2ed2da636f1bc6db474ca6":[2,0,0,15,7], +"classmpl_1_1distributed__grid.html#a56a402c5f7b9e3b47469db51b1b76411":[2,0,0,15,34], +"classmpl_1_1distributed__grid.html#a5794c40591628769b667f0c6e4b879c6":[2,0,0,15,16], +"classmpl_1_1distributed__grid.html#a61aa2b89cdafd5132f06b7e5417b3392":[2,0,0,15,13], +"classmpl_1_1distributed__grid.html#a641426ea3c1d4b7a2dd43a13d07fbf31":[2,0,0,15,14], +"classmpl_1_1distributed__grid.html#a67abfe92a3bb5d4cf1708297a2e7343d":[2,0,0,15,6], +"classmpl_1_1distributed__grid.html#a807f6d8f2bc9c200c6e14c1decad88a1":[2,0,0,15,15], +"classmpl_1_1distributed__grid.html#a82adfb3638ace78e13b3803933f46585":[2,0,0,15,12], +"classmpl_1_1distributed__grid.html#a87a2ba870110b8c294ecaaa25c79826f":[2,0,0,15,25], +"classmpl_1_1distributed__grid.html#a88feb41c455585e1793b8e4ab382a540":[2,0,0,15,2], +"classmpl_1_1distributed__grid.html#a8ac663b4a2e9e68c1274bdf49c39c23c":[2,0,0,15,18], +"classmpl_1_1distributed__grid.html#a8f9854c65734629b85e7ea3ab69612ee":[2,0,0,15,26], +"classmpl_1_1distributed__grid.html#aa302039c192e73504a8bc85cb2379599":[2,0,0,15,33], +"classmpl_1_1distributed__grid.html#aa6d72bfcbade9ce4574dd810044a1aa1":[2,0,0,15,17], +"classmpl_1_1distributed__grid.html#aa726d934b2ec0b5479fdbe299cfa9a66":[2,0,0,15,28], +"classmpl_1_1distributed__grid.html#ab234ea807e04466672d1cb64fe6b0e9a":[2,0,0,15,10], +"classmpl_1_1distributed__grid.html#ab991c114a3494a36c2bf3a0b98edae75":[2,0,0,15,9], +"classmpl_1_1distributed__grid.html#ac2bb06d14b8dc3d305592b90be4b4245":[2,0,0,15,23], +"classmpl_1_1distributed__grid.html#ac533c3caf9f4a027a278bbdf57dfac0e":[2,0,0,15,11], +"classmpl_1_1distributed__grid.html#acd78758381fb6a8366913ca97dd10f86":[2,0,0,15,20], +"classmpl_1_1distributed__grid.html#adb4997427246517519393e49049bebbd":[2,0,0,15,24], +"classmpl_1_1distributed__grid.html#adbab66d465f005bb94e838740deb6ec4":[2,0,0,15,3], +"classmpl_1_1distributed__grid.html#aef0dc237dc10dbb89f77b95dafa860e0":[2,0,0,15,5], +"classmpl_1_1distributed__grid_1_1dimensions.html":[2,0,0,15,0], +"classmpl_1_1distributed__grid_1_1dimensions.html#a4234269aff1b0e9aaeb3646c5c5e59c4":[2,0,0,15,0,0], +"classmpl_1_1distributed__grid_1_1dimensions.html#a67917c6df24d025069ae3d703edd69aa":[2,0,0,15,0,3], +"classmpl_1_1distributed__grid_1_1dimensions.html#a7ef66eeee954466bec93ae54ce2f1de9":[2,0,0,15,0,4], +"classmpl_1_1distributed__grid_1_1dimensions.html#a894d21035df664610e1400581025ca7d":[2,0,0,15,0,2], +"classmpl_1_1distributed__grid_1_1dimensions.html#a9be7d0688024430750b7375e48f0ddb5":[2,0,0,15,0,1], +"classmpl_1_1distributed__grid_1_1size__overlap__pair.html":[2,0,0,15,1], +"classmpl_1_1distributed__grid_1_1size__overlap__pair.html#a027ebf7f9d8ee613042d8c2fa562a636":[2,0,0,15,1,0], +"classmpl_1_1distributed__grid_1_1size__overlap__pair.html#a7896ea2151387a2738a23654aa2dab74":[2,0,0,15,1,2], +"classmpl_1_1distributed__grid_1_1size__overlap__pair.html#ab24f528c5aef47d91274c9080da41a61":[2,0,0,15,1,1], +"classmpl_1_1empty__layout.html":[2,0,0,16], +"classmpl_1_1empty__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,16,5], +"classmpl_1_1empty__layout.html#a069da901219beb3e1c3da57289bdfb1a":[2,0,0,16,12], +"classmpl_1_1empty__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,16,17], +"classmpl_1_1empty__layout.html#a1246ee522d696afa489afd98eae2437c":[2,0,0,16,9], +"classmpl_1_1empty__layout.html#a224759434f429819105ed1a4094e077c":[2,0,0,16,10], +"classmpl_1_1empty__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,16,15], +"classmpl_1_1empty__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,16,20], +"classmpl_1_1empty__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,16,14], +"classmpl_1_1empty__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,16,18], +"classmpl_1_1empty__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,16,8] }; diff --git a/docs/html/navtreeindex3.js b/docs/html/navtreeindex3.js index c8955d8e..864b29bf 100644 --- a/docs/html/navtreeindex3.js +++ b/docs/html/navtreeindex3.js @@ -1,253 +1,253 @@ var NAVTREEINDEX3 = { -"classmpl_1_1communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84":[3,0,0,10,15], -"classmpl_1_1communicator.html#a55feab940e9c72241215918199931936":[2,0,0,11,21], -"classmpl_1_1communicator.html#a55feab940e9c72241215918199931936":[3,0,0,10,21], -"classmpl_1_1communicator.html#a55fef351e8bb5d3062d25683cb404c9d":[2,0,0,11,149], -"classmpl_1_1communicator.html#a55fef351e8bb5d3062d25683cb404c9d":[3,0,0,10,149], -"classmpl_1_1communicator.html#a5664d9591456924a7343082445bc8452":[2,0,0,11,68], -"classmpl_1_1communicator.html#a5664d9591456924a7343082445bc8452":[3,0,0,10,68], -"classmpl_1_1communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7":[3,0,0,10,86], -"classmpl_1_1communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7":[2,0,0,11,86], -"classmpl_1_1communicator.html#a58b6d65e9351b61c493967718f550614":[2,0,0,11,117], -"classmpl_1_1communicator.html#a58b6d65e9351b61c493967718f550614":[3,0,0,10,117], -"classmpl_1_1communicator.html#a5a80517f1de86265d2a863a7c1fd5032":[2,0,0,11,159], -"classmpl_1_1communicator.html#a5a80517f1de86265d2a863a7c1fd5032":[3,0,0,10,159], -"classmpl_1_1communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c":[3,0,0,10,81], -"classmpl_1_1communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c":[2,0,0,11,81], -"classmpl_1_1communicator.html#a5ce91750a7c77edf43e53ac88e4e8524":[2,0,0,11,59], -"classmpl_1_1communicator.html#a5ce91750a7c77edf43e53ac88e4e8524":[3,0,0,10,59], -"classmpl_1_1communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec":[3,0,0,10,30], -"classmpl_1_1communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec":[2,0,0,11,30], -"classmpl_1_1communicator.html#a601c251b4c10c6797af3cd741dea4d55":[3,0,0,10,53], -"classmpl_1_1communicator.html#a601c251b4c10c6797af3cd741dea4d55":[2,0,0,11,53], -"classmpl_1_1communicator.html#a6087bfa57412c9e8b80b6f380ebaaf7a":[3,0,0,10,185], -"classmpl_1_1communicator.html#a6087bfa57412c9e8b80b6f380ebaaf7a":[2,0,0,11,185], -"classmpl_1_1communicator.html#a6149ac444daf9efa0818c1ad86df03f4":[3,0,0,10,174], -"classmpl_1_1communicator.html#a6149ac444daf9efa0818c1ad86df03f4":[2,0,0,11,174], -"classmpl_1_1communicator.html#a615ca7d0551e964ca92c2d6f246bb595":[3,0,0,10,11], -"classmpl_1_1communicator.html#a615ca7d0551e964ca92c2d6f246bb595":[2,0,0,11,11], -"classmpl_1_1communicator.html#a61a0bccfa633febde368a29c749368bf":[2,0,0,11,7], -"classmpl_1_1communicator.html#a61a0bccfa633febde368a29c749368bf":[3,0,0,10,7], -"classmpl_1_1communicator.html#a61c69fd52a576be43b7331536f54b73f":[2,0,0,11,114], -"classmpl_1_1communicator.html#a61c69fd52a576be43b7331536f54b73f":[3,0,0,10,114], -"classmpl_1_1communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2":[2,0,0,11,33], -"classmpl_1_1communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2":[3,0,0,10,33], -"classmpl_1_1communicator.html#a636784ef8a1e076a303e3e6279de1e7d":[2,0,0,11,146], -"classmpl_1_1communicator.html#a636784ef8a1e076a303e3e6279de1e7d":[3,0,0,10,146], -"classmpl_1_1communicator.html#a670720b16047bf7556aea242ff96a7fb":[2,0,0,11,189], -"classmpl_1_1communicator.html#a670720b16047bf7556aea242ff96a7fb":[3,0,0,10,189], -"classmpl_1_1communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3":[3,0,0,10,16], -"classmpl_1_1communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3":[2,0,0,11,16], -"classmpl_1_1communicator.html#a67f541a36dee046cc12d15d9133930b7":[3,0,0,10,119], -"classmpl_1_1communicator.html#a67f541a36dee046cc12d15d9133930b7":[2,0,0,11,119], -"classmpl_1_1communicator.html#a68996ab5379c9a104572b804633d869e":[2,0,0,11,65], -"classmpl_1_1communicator.html#a68996ab5379c9a104572b804633d869e":[3,0,0,10,65], -"classmpl_1_1communicator.html#a693590693b8621565e94abdd6763d5b6":[2,0,0,11,136], -"classmpl_1_1communicator.html#a693590693b8621565e94abdd6763d5b6":[3,0,0,10,136], -"classmpl_1_1communicator.html#a69ebec18f9d55bc8e2b6951f97855068":[2,0,0,11,71], -"classmpl_1_1communicator.html#a69ebec18f9d55bc8e2b6951f97855068":[3,0,0,10,71], -"classmpl_1_1communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f":[2,0,0,11,84], -"classmpl_1_1communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f":[3,0,0,10,84], -"classmpl_1_1communicator.html#a719512973bc590402ac30b10e5227d2b":[2,0,0,11,32], -"classmpl_1_1communicator.html#a719512973bc590402ac30b10e5227d2b":[3,0,0,10,32], -"classmpl_1_1communicator.html#a72d2639f200e5a36f1f81df5c499f06f":[2,0,0,11,108], -"classmpl_1_1communicator.html#a72d2639f200e5a36f1f81df5c499f06f":[3,0,0,10,108], -"classmpl_1_1communicator.html#a73df8f569865237bc58e2445c7d07742":[2,0,0,11,56], -"classmpl_1_1communicator.html#a73df8f569865237bc58e2445c7d07742":[3,0,0,10,56], -"classmpl_1_1communicator.html#a753e8742d27ff29a660b07ee0b90b69e":[3,0,0,10,57], -"classmpl_1_1communicator.html#a753e8742d27ff29a660b07ee0b90b69e":[2,0,0,11,57], -"classmpl_1_1communicator.html#a76dbca1b1f6089ee9e07e997b5d79295":[3,0,0,10,80], -"classmpl_1_1communicator.html#a76dbca1b1f6089ee9e07e997b5d79295":[2,0,0,11,80], -"classmpl_1_1communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0":[3,0,0,10,170], -"classmpl_1_1communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0":[2,0,0,11,170], -"classmpl_1_1communicator.html#a779f215eb82ce71764befaae9918b596":[2,0,0,11,89], -"classmpl_1_1communicator.html#a779f215eb82ce71764befaae9918b596":[3,0,0,10,89], -"classmpl_1_1communicator.html#a79e5f4cd63cf9354ceedc4da193e2410":[2,0,0,11,94], -"classmpl_1_1communicator.html#a79e5f4cd63cf9354ceedc4da193e2410":[3,0,0,10,94], -"classmpl_1_1communicator.html#a7abdf44a7c377ba7191cb4abc6648afe":[3,0,0,10,67], -"classmpl_1_1communicator.html#a7abdf44a7c377ba7191cb4abc6648afe":[2,0,0,11,67], -"classmpl_1_1communicator.html#a7b672d71b83fafca8f6bf4d435331180":[2,0,0,11,41], -"classmpl_1_1communicator.html#a7b672d71b83fafca8f6bf4d435331180":[3,0,0,10,41], -"classmpl_1_1communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af":[3,0,0,10,162], -"classmpl_1_1communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af":[2,0,0,11,162], -"classmpl_1_1communicator.html#a7c53dda9ff4a482df724cab0edf000b3":[2,0,0,11,187], -"classmpl_1_1communicator.html#a7c53dda9ff4a482df724cab0edf000b3":[3,0,0,10,187], -"classmpl_1_1communicator.html#a7eddabba5f98c99db189844854690d13":[2,0,0,11,75], -"classmpl_1_1communicator.html#a7eddabba5f98c99db189844854690d13":[3,0,0,10,75], -"classmpl_1_1communicator.html#a82b6f15cef4c0daa6825bc699418df22":[3,0,0,10,92], -"classmpl_1_1communicator.html#a82b6f15cef4c0daa6825bc699418df22":[2,0,0,11,92], -"classmpl_1_1communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9":[2,0,0,11,43], -"classmpl_1_1communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9":[3,0,0,10,43], -"classmpl_1_1communicator.html#a864a79402650e1b3c453bf86a588dd1d":[3,0,0,10,188], -"classmpl_1_1communicator.html#a864a79402650e1b3c453bf86a588dd1d":[2,0,0,11,188], -"classmpl_1_1communicator.html#a871cba17f8d1891fb0613f9a23c38866":[3,0,0,10,182], -"classmpl_1_1communicator.html#a871cba17f8d1891fb0613f9a23c38866":[2,0,0,11,182], -"classmpl_1_1communicator.html#a88368d3f4d7b375825ba839746aea7dd":[3,0,0,10,25], -"classmpl_1_1communicator.html#a88368d3f4d7b375825ba839746aea7dd":[2,0,0,11,25], -"classmpl_1_1communicator.html#a89b9a55af5259f119281592b4f63f2ee":[2,0,0,11,125], -"classmpl_1_1communicator.html#a89b9a55af5259f119281592b4f63f2ee":[3,0,0,10,125], -"classmpl_1_1communicator.html#a8e43e08af5e8481049731092274aca76":[3,0,0,10,78], -"classmpl_1_1communicator.html#a8e43e08af5e8481049731092274aca76":[2,0,0,11,78], -"classmpl_1_1communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b":[3,0,0,10,156], -"classmpl_1_1communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b":[2,0,0,11,156], -"classmpl_1_1communicator.html#a95d5c90f2a58fe228d846942fe700645":[2,0,0,11,55], -"classmpl_1_1communicator.html#a95d5c90f2a58fe228d846942fe700645":[3,0,0,10,55], -"classmpl_1_1communicator.html#a970647a9680c6bdc3ffbe0814b32f989":[2,0,0,11,103], -"classmpl_1_1communicator.html#a970647a9680c6bdc3ffbe0814b32f989":[3,0,0,10,103], -"classmpl_1_1communicator.html#a997e3a727642f7fe7ab74a7342fa334b":[2,0,0,11,19], -"classmpl_1_1communicator.html#a997e3a727642f7fe7ab74a7342fa334b":[3,0,0,10,19], -"classmpl_1_1communicator.html#a9acb1690c4190b91b48cf919257182f3":[3,0,0,10,9], -"classmpl_1_1communicator.html#a9acb1690c4190b91b48cf919257182f3":[2,0,0,11,9], -"classmpl_1_1communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d":[2,0,0,11,143], -"classmpl_1_1communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d":[3,0,0,10,143], -"classmpl_1_1communicator.html#a9fbb87f9933ff071092164c9e264d817":[2,0,0,11,116], -"classmpl_1_1communicator.html#a9fbb87f9933ff071092164c9e264d817":[3,0,0,10,116], -"classmpl_1_1communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6":[2,0,0,11,157], -"classmpl_1_1communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6":[3,0,0,10,157], -"classmpl_1_1communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5":[3,0,0,10,172], -"classmpl_1_1communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5":[2,0,0,11,172], -"classmpl_1_1communicator.html#aa2b51b89d72555ebfb1862d1de688061":[3,0,0,10,62], -"classmpl_1_1communicator.html#aa2b51b89d72555ebfb1862d1de688061":[2,0,0,11,62], -"classmpl_1_1communicator.html#aa4407a90c2f598867b36e8e557b72ec0":[3,0,0,10,148], -"classmpl_1_1communicator.html#aa4407a90c2f598867b36e8e557b72ec0":[2,0,0,11,148], -"classmpl_1_1communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf":[3,0,0,10,60], -"classmpl_1_1communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf":[2,0,0,11,60], -"classmpl_1_1communicator.html#aa541e7830014dce23eb1ce5f6bcfe281":[3,0,0,10,58], -"classmpl_1_1communicator.html#aa541e7830014dce23eb1ce5f6bcfe281":[2,0,0,11,58], -"classmpl_1_1communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca":[3,0,0,10,147], -"classmpl_1_1communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca":[2,0,0,11,147], -"classmpl_1_1communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42":[2,0,0,11,160], -"classmpl_1_1communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42":[3,0,0,10,160], -"classmpl_1_1communicator.html#aa91aed6395fdcbb40788323a4cf45110":[2,0,0,11,88], -"classmpl_1_1communicator.html#aa91aed6395fdcbb40788323a4cf45110":[3,0,0,10,88], -"classmpl_1_1communicator.html#aaa714c0902d770205ee9cfb636f20fed":[2,0,0,11,152], -"classmpl_1_1communicator.html#aaa714c0902d770205ee9cfb636f20fed":[3,0,0,10,152], -"classmpl_1_1communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f":[2,0,0,11,171], -"classmpl_1_1communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f":[3,0,0,10,171], -"classmpl_1_1communicator.html#aad369f0de0b51dc3cf7992ed26c0799d":[2,0,0,11,70], -"classmpl_1_1communicator.html#aad369f0de0b51dc3cf7992ed26c0799d":[3,0,0,10,70], -"classmpl_1_1communicator.html#aadb9f14a7a9f9bd44eae7832daed895d":[2,0,0,11,63], -"classmpl_1_1communicator.html#aadb9f14a7a9f9bd44eae7832daed895d":[3,0,0,10,63], -"classmpl_1_1communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2":[2,0,0,11,121], -"classmpl_1_1communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2":[3,0,0,10,121], -"classmpl_1_1communicator.html#aae3643fa3e833c9dfb4eaf871235aed3":[3,0,0,10,145], -"classmpl_1_1communicator.html#aae3643fa3e833c9dfb4eaf871235aed3":[2,0,0,11,145], -"classmpl_1_1communicator.html#aaedab51467a9eb38a2aeedb58e357e3d":[2,0,0,11,6], -"classmpl_1_1communicator.html#aaedab51467a9eb38a2aeedb58e357e3d":[3,0,0,10,6], -"classmpl_1_1communicator.html#aaf647eec3afe83caf2afafe5a82b405a":[2,0,0,11,118], -"classmpl_1_1communicator.html#aaf647eec3afe83caf2afafe5a82b405a":[3,0,0,10,118], -"classmpl_1_1communicator.html#aafb144ba1a5494f2a21de28c50b3ab91":[2,0,0,11,36], -"classmpl_1_1communicator.html#aafb144ba1a5494f2a21de28c50b3ab91":[3,0,0,10,36], -"classmpl_1_1communicator.html#ab082b5c443bf7db3fd803e723510d533":[2,0,0,11,8], -"classmpl_1_1communicator.html#ab082b5c443bf7db3fd803e723510d533":[3,0,0,10,8], -"classmpl_1_1communicator.html#aba80b0971e6f8d2f04d1454f389833be":[3,0,0,10,163], -"classmpl_1_1communicator.html#aba80b0971e6f8d2f04d1454f389833be":[2,0,0,11,163], -"classmpl_1_1communicator.html#abb0001ba1ee4c2fbd53038bde821e647":[2,0,0,11,105], -"classmpl_1_1communicator.html#abb0001ba1ee4c2fbd53038bde821e647":[3,0,0,10,105], -"classmpl_1_1communicator.html#abb3d36d582c7a469b5e49dca53c4f952":[2,0,0,11,48], -"classmpl_1_1communicator.html#abb3d36d582c7a469b5e49dca53c4f952":[3,0,0,10,48], -"classmpl_1_1communicator.html#abbc79395f9583143b1427c2e3f1c6637":[2,0,0,11,135], -"classmpl_1_1communicator.html#abbc79395f9583143b1427c2e3f1c6637":[3,0,0,10,135], -"classmpl_1_1communicator.html#abdb6d8fc8a9aafabf50b96275f09775d":[3,0,0,10,96], -"classmpl_1_1communicator.html#abdb6d8fc8a9aafabf50b96275f09775d":[2,0,0,11,96], -"classmpl_1_1communicator.html#abe1bd8f32c690ee7a31456da2c437bdf":[2,0,0,11,178], -"classmpl_1_1communicator.html#abe1bd8f32c690ee7a31456da2c437bdf":[3,0,0,10,178], -"classmpl_1_1communicator.html#abe91007be7acef7641d6cbb08526d53b":[3,0,0,10,64], -"classmpl_1_1communicator.html#abe91007be7acef7641d6cbb08526d53b":[2,0,0,11,64], -"classmpl_1_1communicator.html#abeb99f29459a82f9027dfc8b4bd60add":[2,0,0,11,181], -"classmpl_1_1communicator.html#abeb99f29459a82f9027dfc8b4bd60add":[3,0,0,10,181], -"classmpl_1_1communicator.html#ac402242f2ad68dbce183e60cfcc82382":[2,0,0,11,175], -"classmpl_1_1communicator.html#ac402242f2ad68dbce183e60cfcc82382":[3,0,0,10,175], -"classmpl_1_1communicator.html#ac43f72ca3930976c113403fd465087b0":[3,0,0,10,34], -"classmpl_1_1communicator.html#ac43f72ca3930976c113403fd465087b0":[2,0,0,11,34], -"classmpl_1_1communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5":[2,0,0,11,31], -"classmpl_1_1communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5":[3,0,0,10,31], -"classmpl_1_1communicator.html#ac4b1db52070739de82b25f972b9e6996":[2,0,0,11,47], -"classmpl_1_1communicator.html#ac4b1db52070739de82b25f972b9e6996":[3,0,0,10,47], -"classmpl_1_1communicator.html#ac514a6fe8a481f7120bc1d105c09ee96":[3,0,0,10,110], -"classmpl_1_1communicator.html#ac514a6fe8a481f7120bc1d105c09ee96":[2,0,0,11,110], -"classmpl_1_1communicator.html#acbe2058694618ea2c085d03bcaf4946c":[2,0,0,11,46], -"classmpl_1_1communicator.html#acbe2058694618ea2c085d03bcaf4946c":[3,0,0,10,46], -"classmpl_1_1communicator.html#acce39280ea657a7d9e5d675631cf7a12":[2,0,0,11,69], -"classmpl_1_1communicator.html#acce39280ea657a7d9e5d675631cf7a12":[3,0,0,10,69], -"classmpl_1_1communicator.html#acdeb1107c64614728b6c2cc0e65075bf":[3,0,0,10,122], -"classmpl_1_1communicator.html#acdeb1107c64614728b6c2cc0e65075bf":[2,0,0,11,122], -"classmpl_1_1communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47":[2,0,0,11,54], -"classmpl_1_1communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47":[3,0,0,10,54], -"classmpl_1_1communicator.html#ad15575d951e6a6c4327052e2ff01730f":[3,0,0,10,61], -"classmpl_1_1communicator.html#ad15575d951e6a6c4327052e2ff01730f":[2,0,0,11,61], -"classmpl_1_1communicator.html#ad2342955984c4db387d52a5414b212c5":[3,0,0,10,98], -"classmpl_1_1communicator.html#ad2342955984c4db387d52a5414b212c5":[2,0,0,11,98], -"classmpl_1_1communicator.html#ad2d304708463bb6f91e1a54b3d87106a":[3,0,0,10,82], -"classmpl_1_1communicator.html#ad2d304708463bb6f91e1a54b3d87106a":[2,0,0,11,82], -"classmpl_1_1communicator.html#ad583dab604376864ba373505b7f33911":[2,0,0,11,130], -"classmpl_1_1communicator.html#ad583dab604376864ba373505b7f33911":[3,0,0,10,130], -"classmpl_1_1communicator.html#ad5daeea3d8b7033a2f70cd19582e098a":[2,0,0,11,126], -"classmpl_1_1communicator.html#ad5daeea3d8b7033a2f70cd19582e098a":[3,0,0,10,126], -"classmpl_1_1communicator.html#ad67313aace6a05f58081939eb1d2a4b8":[2,0,0,11,44], -"classmpl_1_1communicator.html#ad67313aace6a05f58081939eb1d2a4b8":[3,0,0,10,44], -"classmpl_1_1communicator.html#ad709e10e351d9ffd4dd9917a9b697c19":[3,0,0,10,24], -"classmpl_1_1communicator.html#ad709e10e351d9ffd4dd9917a9b697c19":[2,0,0,11,24], -"classmpl_1_1communicator.html#ad8c0dc208fd9705a2423346d0baaff58":[2,0,0,11,106], -"classmpl_1_1communicator.html#ad8c0dc208fd9705a2423346d0baaff58":[3,0,0,10,106], -"classmpl_1_1communicator.html#ad9dda1e430895757470e09c7ac721dee":[2,0,0,11,27], -"classmpl_1_1communicator.html#ad9dda1e430895757470e09c7ac721dee":[3,0,0,10,27], -"classmpl_1_1communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d":[2,0,0,11,42], -"classmpl_1_1communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d":[3,0,0,10,42], -"classmpl_1_1communicator.html#adb4b189592ceb6f3a16c53d48e3071b8":[3,0,0,10,161], -"classmpl_1_1communicator.html#adb4b189592ceb6f3a16c53d48e3071b8":[2,0,0,11,161], -"classmpl_1_1communicator.html#adb886db659e8bc352ca70800704b8956":[2,0,0,11,144], -"classmpl_1_1communicator.html#adb886db659e8bc352ca70800704b8956":[3,0,0,10,144], -"classmpl_1_1communicator.html#add45a9df6b60973abe8d13b9161c0ed8":[2,0,0,11,138], -"classmpl_1_1communicator.html#add45a9df6b60973abe8d13b9161c0ed8":[3,0,0,10,138], -"classmpl_1_1communicator.html#ade499e3631297c5268da93604ec68a94":[2,0,0,11,153], -"classmpl_1_1communicator.html#ade499e3631297c5268da93604ec68a94":[3,0,0,10,153], -"classmpl_1_1communicator.html#adf4170f0647e141b72b441c99a5421f5":[2,0,0,11,22], -"classmpl_1_1communicator.html#adf4170f0647e141b72b441c99a5421f5":[3,0,0,10,22], -"classmpl_1_1communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597":[3,0,0,10,155], -"classmpl_1_1communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597":[2,0,0,11,155], -"classmpl_1_1communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789":[2,0,0,11,133], -"classmpl_1_1communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789":[3,0,0,10,133], -"classmpl_1_1communicator.html#ae17e2ec67fab08b09d7c67923fa81b42":[2,0,0,11,50], -"classmpl_1_1communicator.html#ae17e2ec67fab08b09d7c67923fa81b42":[3,0,0,10,50], -"classmpl_1_1communicator.html#ae2941001b886519f2d10d0ebb9901e70":[2,0,0,11,37], -"classmpl_1_1communicator.html#ae2941001b886519f2d10d0ebb9901e70":[3,0,0,10,37], -"classmpl_1_1communicator.html#ae2bdc9265ab60a53dced1a251b3e5898":[2,0,0,11,180], -"classmpl_1_1communicator.html#ae2bdc9265ab60a53dced1a251b3e5898":[3,0,0,10,180], -"classmpl_1_1communicator.html#ae35acd56966f491923a80abbc13fe74a":[2,0,0,11,104], -"classmpl_1_1communicator.html#ae35acd56966f491923a80abbc13fe74a":[3,0,0,10,104], -"classmpl_1_1communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3":[3,0,0,10,35], -"classmpl_1_1communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3":[2,0,0,11,35], -"classmpl_1_1communicator.html#ae6e7de007099b7dc579f638a39d56911":[2,0,0,11,101], -"classmpl_1_1communicator.html#ae6e7de007099b7dc579f638a39d56911":[3,0,0,10,101], -"classmpl_1_1communicator.html#ae71687a9aa6bac6a2b888245aa801020":[3,0,0,10,87], -"classmpl_1_1communicator.html#ae71687a9aa6bac6a2b888245aa801020":[2,0,0,11,87], -"classmpl_1_1communicator.html#ae8dcb108a058800f583f92d8bc2d369f":[3,0,0,10,5], -"classmpl_1_1communicator.html#ae8dcb108a058800f583f92d8bc2d369f":[2,0,0,11,5], -"classmpl_1_1communicator.html#aea3f30e3e33676cfbd8f3757082949cd":[3,0,0,10,128], -"classmpl_1_1communicator.html#aea3f30e3e33676cfbd8f3757082949cd":[2,0,0,11,128], -"classmpl_1_1communicator.html#aed2415ddb3e27cce97fd5317f781a86c":[3,0,0,10,142], -"classmpl_1_1communicator.html#aed2415ddb3e27cce97fd5317f781a86c":[2,0,0,11,142], -"classmpl_1_1communicator.html#aef00e3ea7dcd56ab1c5fca19222af822":[3,0,0,10,10], -"classmpl_1_1communicator.html#aef00e3ea7dcd56ab1c5fca19222af822":[2,0,0,11,10], -"classmpl_1_1communicator.html#af11d56af7c3459eac6b3f5285788c8b9":[3,0,0,10,127], -"classmpl_1_1communicator.html#af11d56af7c3459eac6b3f5285788c8b9":[2,0,0,11,127], -"classmpl_1_1communicator.html#af1d52b673c059c284806768be1240afc":[2,0,0,11,51], -"classmpl_1_1communicator.html#af1d52b673c059c284806768be1240afc":[3,0,0,10,51], -"classmpl_1_1communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f":[2,0,0,11,132], -"classmpl_1_1communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f":[3,0,0,10,132], -"classmpl_1_1communicator.html#af43c205c247a23c35ec015b257f10a6e":[3,0,0,10,49], -"classmpl_1_1communicator.html#af43c205c247a23c35ec015b257f10a6e":[2,0,0,11,49], -"classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63":[2,0,0,11,4], -"classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63":[3,0,0,10,4], -"classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703":[2,0,0,11,4,2], -"classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703":[3,0,0,10,4,2], -"classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29":[2,0,0,11,4,3], -"classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29":[3,0,0,10,4,3], -"classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac":[2,0,0,11,4,1], -"classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac":[3,0,0,10,4,1], -"classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8":[2,0,0,11,4,0], -"classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8":[3,0,0,10,4,0], -"classmpl_1_1communicator.html#af786635362fca5a0f915771332383589":[3,0,0,10,107] +"classmpl_1_1empty__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,16,19], +"classmpl_1_1empty__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,16,3], +"classmpl_1_1empty__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,16,6], +"classmpl_1_1empty__layout.html#a9facbf460f04ad85b60338794916c48e":[2,0,0,16,2], +"classmpl_1_1empty__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,16,4], +"classmpl_1_1empty__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,16,11], +"classmpl_1_1empty__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,16,13], +"classmpl_1_1empty__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,16,7], +"classmpl_1_1empty__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,16,16], +"classmpl_1_1empty__layout.html#ae20bac5a00ded8343c1e49333c4e17bc":[2,0,0,16,1], +"classmpl_1_1empty__layout.html#ae754e55f1d794ace955529f239a93de5":[2,0,0,16,0], +"classmpl_1_1error.html":[2,0,0,17], +"classmpl_1_1error.html#a63195dd370214a0afa3bd38b59ba7b37":[2,0,0,17,0], +"classmpl_1_1error.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,17,1], +"classmpl_1_1graph__communicator.html":[2,0,0,18], +"classmpl_1_1graph__communicator.html#a0053567d5a44c1783b35050f25f99ff0":[2,0,0,18,5], +"classmpl_1_1graph__communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09":[2,0,0,18,12], +"classmpl_1_1graph__communicator.html#a031345325782266cecb521469e42d8c3":[2,0,0,18,119], +"classmpl_1_1graph__communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69":[2,0,0,18,94], +"classmpl_1_1graph__communicator.html#a03afcae482e770e40ca5df7ae77b29c6":[2,0,0,18,137], +"classmpl_1_1graph__communicator.html#a03d88ad3aa943dc51578259c03b0b695":[2,0,0,18,151], +"classmpl_1_1graph__communicator.html#a05ed2a65531e978c766f9af918f5e5a3":[2,0,0,18,20], +"classmpl_1_1graph__communicator.html#a06525ff878eb073c02dc0bef285f06ac":[2,0,0,18,103], +"classmpl_1_1graph__communicator.html#a068c77bb2536523c2bcbeb4d3d8efc7b":[2,0,0,18,86], +"classmpl_1_1graph__communicator.html#a07591e9922db9239a75ab1b6c7b70f11":[2,0,0,18,193], +"classmpl_1_1graph__communicator.html#a0a2866d44cee859fc064e2e32a6710d7":[2,0,0,18,14], +"classmpl_1_1graph__communicator.html#a0ca545be8c199264a127b16180450162":[2,0,0,18,153], +"classmpl_1_1graph__communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3":[2,0,0,18,11], +"classmpl_1_1graph__communicator.html#a0e6459ad572cb1a69cb149df1871f2c6":[2,0,0,18,101], +"classmpl_1_1graph__communicator.html#a0e7776c9ef670b685701dfd197b76912":[2,0,0,18,17], +"classmpl_1_1graph__communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3":[2,0,0,18,95], +"classmpl_1_1graph__communicator.html#a100f19741ccecda229eb1bb6659c1dd8":[2,0,0,18,190], +"classmpl_1_1graph__communicator.html#a14ad784ff91391983f667a5cadbfe367":[2,0,0,18,99], +"classmpl_1_1graph__communicator.html#a14b2306de71e02b0390c564ff6ba7c21":[2,0,0,18,69], +"classmpl_1_1graph__communicator.html#a153a492a90432d228638e2548b2a65b5":[2,0,0,18,145], +"classmpl_1_1graph__communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f":[2,0,0,18,191], +"classmpl_1_1graph__communicator.html#a17526ad519286bf2fa81a3701c0afe03":[2,0,0,18,197], +"classmpl_1_1graph__communicator.html#a179246280657f80aa624f7ebcb8ac9a4":[2,0,0,18,128], +"classmpl_1_1graph__communicator.html#a17dd29d46d12c1cafd0d4b9f7aa4f8e7":[2,0,0,18,36], +"classmpl_1_1graph__communicator.html#a192fabbdbac09436fab92943148c5185":[2,0,0,18,79], +"classmpl_1_1graph__communicator.html#a1948c90e2873f0db6b7fc32f7240e80a":[2,0,0,18,117], +"classmpl_1_1graph__communicator.html#a197f9833a6c4685a2368b7bea2a60cd8":[2,0,0,18,164], +"classmpl_1_1graph__communicator.html#a19912b0013f991bbebf2ef46fcb93c70":[2,0,0,18,106], +"classmpl_1_1graph__communicator.html#a1a2fbf1a89b606c316790a29a6c24344":[2,0,0,18,8], +"classmpl_1_1graph__communicator.html#a1bf177485606687353cd50bc5a3b3c59":[2,0,0,18,72], +"classmpl_1_1graph__communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644":[2,0,0,18,187], +"classmpl_1_1graph__communicator.html#a1f45f3b4b5afa504963d30203bebcd67":[2,0,0,18,181], +"classmpl_1_1graph__communicator.html#a20505014d3a5ac58a5601faee033d003":[2,0,0,18,70], +"classmpl_1_1graph__communicator.html#a20766ee389c97340241ff730eae49475":[2,0,0,18,73], +"classmpl_1_1graph__communicator.html#a20c2142532726d3a3f25e4eb3293fd4c":[2,0,0,18,155], +"classmpl_1_1graph__communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb":[2,0,0,18,33], +"classmpl_1_1graph__communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a":[2,0,0,18,182], +"classmpl_1_1graph__communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe":[2,0,0,18,7], +"classmpl_1_1graph__communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627":[2,0,0,18,165], +"classmpl_1_1graph__communicator.html#a2a901501dfe4dad53249a142a6c61f8a":[2,0,0,18,183], +"classmpl_1_1graph__communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f":[2,0,0,18,127], +"classmpl_1_1graph__communicator.html#a32881aa49f5e9c71792e98629a131822":[2,0,0,18,48], +"classmpl_1_1graph__communicator.html#a34c527f23af855f716bf00a2658c9436":[2,0,0,18,68], +"classmpl_1_1graph__communicator.html#a36031fd4a0c2ed7bab527e0a4663971f":[2,0,0,18,179], +"classmpl_1_1graph__communicator.html#a377702be1b30166ad458fcef11b2c239":[2,0,0,18,135], +"classmpl_1_1graph__communicator.html#a39c2f12ebc86e0930266a60ffecea926":[2,0,0,18,148], +"classmpl_1_1graph__communicator.html#a3b4d541cab8706ae5a4a699aef0662d3":[2,0,0,18,178], +"classmpl_1_1graph__communicator.html#a3f433b69dace132e01bea64624fff4b3":[2,0,0,18,198], +"classmpl_1_1graph__communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416":[2,0,0,18,113], +"classmpl_1_1graph__communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc":[2,0,0,18,97], +"classmpl_1_1graph__communicator.html#a3fbbc822e36ea95e865a7b37ac0ad984":[2,0,0,18,93], +"classmpl_1_1graph__communicator.html#a43c7b3d19a5af4ba0f30e40045a2e459":[2,0,0,18,132], +"classmpl_1_1graph__communicator.html#a445e05af65cdc53b7a981d4884a4c3b8":[2,0,0,18,81], +"classmpl_1_1graph__communicator.html#a45585975b4b7cc0795a02abf6494963b":[2,0,0,18,41], +"classmpl_1_1graph__communicator.html#a455d8703c09913eebe31cd360351c308":[2,0,0,18,136], +"classmpl_1_1graph__communicator.html#a46e8797b907b9539b2ee90713a675e5c":[2,0,0,18,124], +"classmpl_1_1graph__communicator.html#a477820ee73599e311a6e73ef06fbdf33":[2,0,0,18,180], +"classmpl_1_1graph__communicator.html#a480ef5ac8533cd47ef55b04454baddca":[2,0,0,18,168], +"classmpl_1_1graph__communicator.html#a494c7c1849713e45d99d901b31250b35":[2,0,0,18,154], +"classmpl_1_1graph__communicator.html#a4a29592502142845c3bb0031221189a3":[2,0,0,18,75], +"classmpl_1_1graph__communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21":[2,0,0,18,116], +"classmpl_1_1graph__communicator.html#a4ac75dc1695c441e9e8faa185a458cc3":[2,0,0,18,34], +"classmpl_1_1graph__communicator.html#a4cff38dd56b3d53992babac77cbefa8d":[2,0,0,18,62], +"classmpl_1_1graph__communicator.html#a4db43a46f468c60e84b35f95577ff0f4":[2,0,0,18,23], +"classmpl_1_1graph__communicator.html#a4de1ecacd035af3dca830995098a2f49":[2,0,0,18,104], +"classmpl_1_1graph__communicator.html#a5314e5dc5b35f952dba239b8f03be330":[2,0,0,18,32], +"classmpl_1_1graph__communicator.html#a545def7768f6786e06c36277c1d21cde":[2,0,0,18,37], +"classmpl_1_1graph__communicator.html#a54da0c73668349841c941c53c6acff81":[2,0,0,18,139], +"classmpl_1_1graph__communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84":[2,0,0,18,9], +"classmpl_1_1graph__communicator.html#a55feab940e9c72241215918199931936":[2,0,0,18,15], +"classmpl_1_1graph__communicator.html#a55fef351e8bb5d3062d25683cb404c9d":[2,0,0,18,163], +"classmpl_1_1graph__communicator.html#a5664d9591456924a7343082445bc8452":[2,0,0,18,64], +"classmpl_1_1graph__communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7":[2,0,0,18,82], +"classmpl_1_1graph__communicator.html#a58b6d65e9351b61c493967718f550614":[2,0,0,18,121], +"classmpl_1_1graph__communicator.html#a5a80517f1de86265d2a863a7c1fd5032":[2,0,0,18,173], +"classmpl_1_1graph__communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c":[2,0,0,18,77], +"classmpl_1_1graph__communicator.html#a5ce91750a7c77edf43e53ac88e4e8524":[2,0,0,18,55], +"classmpl_1_1graph__communicator.html#a5ceb8a7771930409a0b7c54042b49866":[2,0,0,18,92], +"classmpl_1_1graph__communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec":[2,0,0,18,24], +"classmpl_1_1graph__communicator.html#a601c251b4c10c6797af3cd741dea4d55":[2,0,0,18,49], +"classmpl_1_1graph__communicator.html#a6149ac444daf9efa0818c1ad86df03f4":[2,0,0,18,188], +"classmpl_1_1graph__communicator.html#a61c69fd52a576be43b7331536f54b73f":[2,0,0,18,118], +"classmpl_1_1graph__communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2":[2,0,0,18,27], +"classmpl_1_1graph__communicator.html#a636784ef8a1e076a303e3e6279de1e7d":[2,0,0,18,160], +"classmpl_1_1graph__communicator.html#a65311bd6bde1b8de5b8acf9ae902104a":[2,0,0,18,90], +"classmpl_1_1graph__communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3":[2,0,0,18,10], +"classmpl_1_1graph__communicator.html#a67f541a36dee046cc12d15d9133930b7":[2,0,0,18,123], +"classmpl_1_1graph__communicator.html#a68996ab5379c9a104572b804633d869e":[2,0,0,18,61], +"classmpl_1_1graph__communicator.html#a693590693b8621565e94abdd6763d5b6":[2,0,0,18,150], +"classmpl_1_1graph__communicator.html#a69ebec18f9d55bc8e2b6951f97855068":[2,0,0,18,67], +"classmpl_1_1graph__communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f":[2,0,0,18,80], +"classmpl_1_1graph__communicator.html#a719512973bc590402ac30b10e5227d2b":[2,0,0,18,26], +"classmpl_1_1graph__communicator.html#a72d2639f200e5a36f1f81df5c499f06f":[2,0,0,18,112], +"classmpl_1_1graph__communicator.html#a73df8f569865237bc58e2445c7d07742":[2,0,0,18,52], +"classmpl_1_1graph__communicator.html#a753e8742d27ff29a660b07ee0b90b69e":[2,0,0,18,53], +"classmpl_1_1graph__communicator.html#a76dbca1b1f6089ee9e07e997b5d79295":[2,0,0,18,76], +"classmpl_1_1graph__communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0":[2,0,0,18,184], +"classmpl_1_1graph__communicator.html#a779f215eb82ce71764befaae9918b596":[2,0,0,18,85], +"classmpl_1_1graph__communicator.html#a79e5f4cd63cf9354ceedc4da193e2410":[2,0,0,18,98], +"classmpl_1_1graph__communicator.html#a7abdf44a7c377ba7191cb4abc6648afe":[2,0,0,18,63], +"classmpl_1_1graph__communicator.html#a7b672d71b83fafca8f6bf4d435331180":[2,0,0,18,35], +"classmpl_1_1graph__communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af":[2,0,0,18,176], +"classmpl_1_1graph__communicator.html#a7eddabba5f98c99db189844854690d13":[2,0,0,18,71], +"classmpl_1_1graph__communicator.html#a82b6f15cef4c0daa6825bc699418df22":[2,0,0,18,96], +"classmpl_1_1graph__communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9":[2,0,0,18,39], +"classmpl_1_1graph__communicator.html#a871cba17f8d1891fb0613f9a23c38866":[2,0,0,18,196], +"classmpl_1_1graph__communicator.html#a88368d3f4d7b375825ba839746aea7dd":[2,0,0,18,19], +"classmpl_1_1graph__communicator.html#a89b9a55af5259f119281592b4f63f2ee":[2,0,0,18,129], +"classmpl_1_1graph__communicator.html#a8e43e08af5e8481049731092274aca76":[2,0,0,18,74], +"classmpl_1_1graph__communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b":[2,0,0,18,170], +"classmpl_1_1graph__communicator.html#a95d5c90f2a58fe228d846942fe700645":[2,0,0,18,51], +"classmpl_1_1graph__communicator.html#a970647a9680c6bdc3ffbe0814b32f989":[2,0,0,18,107], +"classmpl_1_1graph__communicator.html#a997e3a727642f7fe7ab74a7342fa334b":[2,0,0,18,13], +"classmpl_1_1graph__communicator.html#a9b838df23d3b54ac7ff8f249e2a59e64":[2,0,0,18,6], +"classmpl_1_1graph__communicator.html#a9c706fcf6770f01b69256c7f76c97222":[2,0,0,18,144], +"classmpl_1_1graph__communicator.html#a9dccde1bf10e911c3a00d1a546005e94":[2,0,0,18,88], +"classmpl_1_1graph__communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d":[2,0,0,18,157], +"classmpl_1_1graph__communicator.html#a9fbb87f9933ff071092164c9e264d817":[2,0,0,18,120], +"classmpl_1_1graph__communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6":[2,0,0,18,171], +"classmpl_1_1graph__communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5":[2,0,0,18,186], +"classmpl_1_1graph__communicator.html#aa2b51b89d72555ebfb1862d1de688061":[2,0,0,18,58], +"classmpl_1_1graph__communicator.html#aa4407a90c2f598867b36e8e557b72ec0":[2,0,0,18,162], +"classmpl_1_1graph__communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf":[2,0,0,18,56], +"classmpl_1_1graph__communicator.html#aa541e7830014dce23eb1ce5f6bcfe281":[2,0,0,18,54], +"classmpl_1_1graph__communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca":[2,0,0,18,161], +"classmpl_1_1graph__communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42":[2,0,0,18,174], +"classmpl_1_1graph__communicator.html#aa91aed6395fdcbb40788323a4cf45110":[2,0,0,18,84], +"classmpl_1_1graph__communicator.html#aaa714c0902d770205ee9cfb636f20fed":[2,0,0,18,166], +"classmpl_1_1graph__communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f":[2,0,0,18,185], +"classmpl_1_1graph__communicator.html#aad369f0de0b51dc3cf7992ed26c0799d":[2,0,0,18,66], +"classmpl_1_1graph__communicator.html#aad40f322ef427d759fe699b1318c3103":[2,0,0,18,87], +"classmpl_1_1graph__communicator.html#aadb9f14a7a9f9bd44eae7832daed895d":[2,0,0,18,59], +"classmpl_1_1graph__communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2":[2,0,0,18,125], +"classmpl_1_1graph__communicator.html#aae3643fa3e833c9dfb4eaf871235aed3":[2,0,0,18,159], +"classmpl_1_1graph__communicator.html#aaf647eec3afe83caf2afafe5a82b405a":[2,0,0,18,122], +"classmpl_1_1graph__communicator.html#aafb144ba1a5494f2a21de28c50b3ab91":[2,0,0,18,30], +"classmpl_1_1graph__communicator.html#ab4242c2300ed9c2d844001847027b148":[2,0,0,18,4], +"classmpl_1_1graph__communicator.html#aba77e505c9c19f3c6acdf10d4bc9fe16":[2,0,0,18,89], +"classmpl_1_1graph__communicator.html#aba80b0971e6f8d2f04d1454f389833be":[2,0,0,18,177], +"classmpl_1_1graph__communicator.html#abb0001ba1ee4c2fbd53038bde821e647":[2,0,0,18,109], +"classmpl_1_1graph__communicator.html#abb3d36d582c7a469b5e49dca53c4f952":[2,0,0,18,44], +"classmpl_1_1graph__communicator.html#abbc79395f9583143b1427c2e3f1c6637":[2,0,0,18,149], +"classmpl_1_1graph__communicator.html#abdb6d8fc8a9aafabf50b96275f09775d":[2,0,0,18,100], +"classmpl_1_1graph__communicator.html#abe1bd8f32c690ee7a31456da2c437bdf":[2,0,0,18,192], +"classmpl_1_1graph__communicator.html#abe91007be7acef7641d6cbb08526d53b":[2,0,0,18,60], +"classmpl_1_1graph__communicator.html#abeb99f29459a82f9027dfc8b4bd60add":[2,0,0,18,195], +"classmpl_1_1graph__communicator.html#ac402242f2ad68dbce183e60cfcc82382":[2,0,0,18,189], +"classmpl_1_1graph__communicator.html#ac43f72ca3930976c113403fd465087b0":[2,0,0,18,28], +"classmpl_1_1graph__communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5":[2,0,0,18,25], +"classmpl_1_1graph__communicator.html#ac4b1db52070739de82b25f972b9e6996":[2,0,0,18,43], +"classmpl_1_1graph__communicator.html#ac514a6fe8a481f7120bc1d105c09ee96":[2,0,0,18,114], +"classmpl_1_1graph__communicator.html#ac7cb886dc70531a897bce6396c9a6e7e":[2,0,0,18,91], +"classmpl_1_1graph__communicator.html#acbe2058694618ea2c085d03bcaf4946c":[2,0,0,18,42], +"classmpl_1_1graph__communicator.html#acce39280ea657a7d9e5d675631cf7a12":[2,0,0,18,65], +"classmpl_1_1graph__communicator.html#acdeb1107c64614728b6c2cc0e65075bf":[2,0,0,18,126], +"classmpl_1_1graph__communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47":[2,0,0,18,50], +"classmpl_1_1graph__communicator.html#ad15575d951e6a6c4327052e2ff01730f":[2,0,0,18,57], +"classmpl_1_1graph__communicator.html#ad2342955984c4db387d52a5414b212c5":[2,0,0,18,102], +"classmpl_1_1graph__communicator.html#ad2d304708463bb6f91e1a54b3d87106a":[2,0,0,18,78], +"classmpl_1_1graph__communicator.html#ad517010b26940090a839b6ef0c3d95ad":[2,0,0,18,141], +"classmpl_1_1graph__communicator.html#ad5daeea3d8b7033a2f70cd19582e098a":[2,0,0,18,130], +"classmpl_1_1graph__communicator.html#ad67313aace6a05f58081939eb1d2a4b8":[2,0,0,18,40], +"classmpl_1_1graph__communicator.html#ad709e10e351d9ffd4dd9917a9b697c19":[2,0,0,18,18], +"classmpl_1_1graph__communicator.html#ad8c0dc208fd9705a2423346d0baaff58":[2,0,0,18,110], +"classmpl_1_1graph__communicator.html#ad9dda1e430895757470e09c7ac721dee":[2,0,0,18,21], +"classmpl_1_1graph__communicator.html#ada2dc41f3f09788b9dd87be27981668a":[2,0,0,18,138], +"classmpl_1_1graph__communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d":[2,0,0,18,38], +"classmpl_1_1graph__communicator.html#adb4b189592ceb6f3a16c53d48e3071b8":[2,0,0,18,175], +"classmpl_1_1graph__communicator.html#adb886db659e8bc352ca70800704b8956":[2,0,0,18,158], +"classmpl_1_1graph__communicator.html#adce11d71ed0d0398316f5a5669b5bdbf":[2,0,0,18,143], +"classmpl_1_1graph__communicator.html#add45a9df6b60973abe8d13b9161c0ed8":[2,0,0,18,152], +"classmpl_1_1graph__communicator.html#ade499e3631297c5268da93604ec68a94":[2,0,0,18,167], +"classmpl_1_1graph__communicator.html#adf4170f0647e141b72b441c99a5421f5":[2,0,0,18,16], +"classmpl_1_1graph__communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597":[2,0,0,18,169], +"classmpl_1_1graph__communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789":[2,0,0,18,147], +"classmpl_1_1graph__communicator.html#ae17e2ec67fab08b09d7c67923fa81b42":[2,0,0,18,46], +"classmpl_1_1graph__communicator.html#ae2941001b886519f2d10d0ebb9901e70":[2,0,0,18,31], +"classmpl_1_1graph__communicator.html#ae2bdc9265ab60a53dced1a251b3e5898":[2,0,0,18,194], +"classmpl_1_1graph__communicator.html#ae35acd56966f491923a80abbc13fe74a":[2,0,0,18,108], +"classmpl_1_1graph__communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3":[2,0,0,18,29], +"classmpl_1_1graph__communicator.html#ae6e7de007099b7dc579f638a39d56911":[2,0,0,18,105], +"classmpl_1_1graph__communicator.html#ae71687a9aa6bac6a2b888245aa801020":[2,0,0,18,83], +"classmpl_1_1graph__communicator.html#aea3f30e3e33676cfbd8f3757082949cd":[2,0,0,18,142], +"classmpl_1_1graph__communicator.html#aed2415ddb3e27cce97fd5317f781a86c":[2,0,0,18,156], +"classmpl_1_1graph__communicator.html#af11d56af7c3459eac6b3f5285788c8b9":[2,0,0,18,131], +"classmpl_1_1graph__communicator.html#af1d52b673c059c284806768be1240afc":[2,0,0,18,47], +"classmpl_1_1graph__communicator.html#af39af30840dbd4cdefb3c91b96f80a40":[2,0,0,18,140], +"classmpl_1_1graph__communicator.html#af3ce31d403e1e2c143acb593ca1b21c2":[2,0,0,18,133], +"classmpl_1_1graph__communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f":[2,0,0,18,146], +"classmpl_1_1graph__communicator.html#af43c205c247a23c35ec015b257f10a6e":[2,0,0,18,45], +"classmpl_1_1graph__communicator.html#af5822b089b634a670a9f3cef6e37dcef":[2,0,0,18,134], +"classmpl_1_1graph__communicator.html#af66054a704ac25557aa25b356e8abd63":[2,0,0,18,2], +"classmpl_1_1graph__communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703":[2,0,0,18,2,2], +"classmpl_1_1graph__communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29":[2,0,0,18,2,3], +"classmpl_1_1graph__communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac":[2,0,0,18,2,1], +"classmpl_1_1graph__communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8":[2,0,0,18,2,0], +"classmpl_1_1graph__communicator.html#af786635362fca5a0f915771332383589":[2,0,0,18,111], +"classmpl_1_1graph__communicator.html#af81016b2d1c45d91880894f13ba74182":[2,0,0,18,3], +"classmpl_1_1graph__communicator.html#afcb7048f892b4c371bba2e261e565656":[2,0,0,18,22], +"classmpl_1_1graph__communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3":[2,0,0,18,115], +"classmpl_1_1graph__communicator.html#afe6c73aa613bf07ed4790210f10a0f1c":[2,0,0,18,172], +"classmpl_1_1graph__communicator_1_1edge__set.html":[2,0,0,18,0], +"classmpl_1_1graph__communicator_1_1edge__set.html#a17430180fb679bda0388e2e5a9ee18f8":[2,0,0,18,0,0], +"classmpl_1_1graph__communicator_1_1edge__set.html#a552f6b7dfdeeaf97dda2450135f23783":[2,0,0,18,0,1], +"classmpl_1_1graph__communicator_1_1edge__set.html#ab1f12c9c8eaa5d350d019abe32817b86":[2,0,0,18,0,3], +"classmpl_1_1graph__communicator_1_1edge__set.html#ab94d3075422b9dc7eeb87af9e32c0b43":[2,0,0,18,0,2], +"classmpl_1_1graph__communicator_1_1node__list.html":[2,0,0,18,1], +"classmpl_1_1graph__communicator_1_1node__list.html#a25f3935b78cf4dd11a589620e727536a":[2,0,0,18,1,3], +"classmpl_1_1graph__communicator_1_1node__list.html#a5f60260b8bd1bdc7fe8c7b7945e27b8c":[2,0,0,18,1,4], +"classmpl_1_1graph__communicator_1_1node__list.html#a6705675a9a7343424dece2f056060f4a":[2,0,0,18,1,1], +"classmpl_1_1graph__communicator_1_1node__list.html#a9321529165dbf31bdacaed44c2c3bd89":[2,0,0,18,1,0], +"classmpl_1_1graph__communicator_1_1node__list.html#aab4b2d09a2edf289b646510d0bf55eda":[2,0,0,18,1,5], +"classmpl_1_1graph__communicator_1_1node__list.html#aceebd8bb0abded270a3246abb4996efe":[2,0,0,18,1,6], +"classmpl_1_1graph__communicator_1_1node__list.html#afe55816c0169408a56e42c412f04e86f":[2,0,0,18,1,2], +"classmpl_1_1group.html":[2,0,0,19], +"classmpl_1_1group.html#a14eceda02a4e4a68124a4918320d34c6":[2,0,0,19,13], +"classmpl_1_1group.html#a1b3542e4a7d8cfcbf6bfc7ecb4905f4f":[2,0,0,19,20], +"classmpl_1_1group.html#a1c11d89daec6af7b0ed1b5668d355656":[2,0,0,19,23], +"classmpl_1_1group.html#a23b0ce7e15b1a90e4d2facdfd4f98dd4":[2,0,0,19,9], +"classmpl_1_1group.html#a2b7b139ae5443f229ef75b47ec92125b":[2,0,0,19,12], +"classmpl_1_1group.html#a3559e4d5efc98ec127fce7f3dc487291":[2,0,0,19,17], +"classmpl_1_1group.html#a38cdae96823a5ce04c1e4a637ca82d5a":[2,0,0,19,24], +"classmpl_1_1group.html#a41f80de72f9a7e5c3c4e15e99d0a6662":[2,0,0,19,6], +"classmpl_1_1group.html#a4ac9d08869779bc83b1603415421ab34":[2,0,0,19,18], +"classmpl_1_1group.html#a4bd2522d5cfecbd2c844e7bad1c0ae36":[2,0,0,19,15], +"classmpl_1_1group.html#a53b37e0aa8afb9fd837b529facd6e626":[2,0,0,19,14], +"classmpl_1_1group.html#a58537237d16d0ac6ecb5680e33997f26":[2,0,0,19,22], +"classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69":[2,0,0,19,5], +"classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69a10faae554c642e7607b1dd0cc8607703":[2,0,0,19,5,1], +"classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69ab4f45c85d7e3269abe7f894d94bf0f29":[2,0,0,19,5,2], +"classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69aee0cbdbacdada19376449799774976e8":[2,0,0,19,5,0], +"classmpl_1_1group.html#a91ec59cb7d18120ac6f5b0dc40f37a95":[2,0,0,19,16], +"classmpl_1_1group.html#a95548e78748fcfa9775a47754d185240":[2,0,0,19,7], +"classmpl_1_1group.html#a9c2c30c4d43f3bea292a6ed934f2397e":[2,0,0,19,11], +"classmpl_1_1group.html#aaab91fd6a016fe57c053102d6c8f9bc4":[2,0,0,19,19] }; diff --git a/docs/html/navtreeindex4.js b/docs/html/navtreeindex4.js index ba2b4c4c..f04b2196 100644 --- a/docs/html/navtreeindex4.js +++ b/docs/html/navtreeindex4.js @@ -1,253 +1,253 @@ var NAVTREEINDEX4 = { -"classmpl_1_1communicator.html#af786635362fca5a0f915771332383589":[2,0,0,11,107], -"classmpl_1_1communicator.html#afcb7048f892b4c371bba2e261e565656":[2,0,0,11,28], -"classmpl_1_1communicator.html#afcb7048f892b4c371bba2e261e565656":[3,0,0,10,28], -"classmpl_1_1communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3":[2,0,0,11,111], -"classmpl_1_1communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3":[3,0,0,10,111], -"classmpl_1_1communicator.html#afe6c73aa613bf07ed4790210f10a0f1c":[3,0,0,10,158], -"classmpl_1_1communicator.html#afe6c73aa613bf07ed4790210f10a0f1c":[2,0,0,11,158], -"classmpl_1_1communicator_1_1comm__collective__tag.html":[2,0,0,11,0], -"classmpl_1_1communicator_1_1comm__collective__tag.html":[3,0,0,10,0], -"classmpl_1_1communicator_1_1group__collective__tag.html":[2,0,0,11,1], -"classmpl_1_1communicator_1_1group__collective__tag.html":[3,0,0,10,1], -"classmpl_1_1communicator_1_1split__shared__memory__tag.html":[2,0,0,11,2], -"classmpl_1_1communicator_1_1split__shared__memory__tag.html":[3,0,0,10,2], -"classmpl_1_1communicator_1_1split__tag.html":[2,0,0,11,3], -"classmpl_1_1communicator_1_1split__tag.html":[3,0,0,10,3], -"classmpl_1_1contiguous__layout.html":[2,0,0,12], -"classmpl_1_1contiguous__layout.html":[3,0,0,11], -"classmpl_1_1contiguous__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[3,0,0,11,6], -"classmpl_1_1contiguous__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,12,6], -"classmpl_1_1contiguous__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,12,18], -"classmpl_1_1contiguous__layout.html#a0890ec4684e6a465170f88932e116d30":[3,0,0,11,18], -"classmpl_1_1contiguous__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,12,16], -"classmpl_1_1contiguous__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[3,0,0,11,16], -"classmpl_1_1contiguous__layout.html#a28e4940a8d711c15cada064a12ba0788":[2,0,0,12,22], -"classmpl_1_1contiguous__layout.html#a28e4940a8d711c15cada064a12ba0788":[3,0,0,11,22], -"classmpl_1_1contiguous__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,12,21], -"classmpl_1_1contiguous__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[3,0,0,11,21], -"classmpl_1_1contiguous__layout.html#a3d0d28fdc0b29e06d3780a00b2d9cf7f":[2,0,0,12,13], -"classmpl_1_1contiguous__layout.html#a3d0d28fdc0b29e06d3780a00b2d9cf7f":[3,0,0,11,13], -"classmpl_1_1contiguous__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,12,15], -"classmpl_1_1contiguous__layout.html#a45840e6936914baef876a0b67a8bb499":[3,0,0,11,15], -"classmpl_1_1contiguous__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,12,19], -"classmpl_1_1contiguous__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[3,0,0,11,19], -"classmpl_1_1contiguous__layout.html#a52268d8595fc53bfb6efa9e5ebdd1c11":[2,0,0,12,3], -"classmpl_1_1contiguous__layout.html#a52268d8595fc53bfb6efa9e5ebdd1c11":[3,0,0,11,3], -"classmpl_1_1contiguous__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,12,9], -"classmpl_1_1contiguous__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[3,0,0,11,9], -"classmpl_1_1contiguous__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,12,20], -"classmpl_1_1contiguous__layout.html#a80713f15de3244b019294ee277c8c650":[3,0,0,11,20], -"classmpl_1_1contiguous__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,12,4], -"classmpl_1_1contiguous__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[3,0,0,11,4], -"classmpl_1_1contiguous__layout.html#a8eda4ba99bfdf30d9773842d90616fd7":[2,0,0,12,2], -"classmpl_1_1contiguous__layout.html#a8eda4ba99bfdf30d9773842d90616fd7":[3,0,0,11,2], -"classmpl_1_1contiguous__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[3,0,0,11,7], -"classmpl_1_1contiguous__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,12,7], -"classmpl_1_1contiguous__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,12,5], -"classmpl_1_1contiguous__layout.html#aa391a934f031693cf985dcd1c675d8e4":[3,0,0,11,5], -"classmpl_1_1contiguous__layout.html#aae660e5421a3eecf9b365ae32df3cf29":[2,0,0,12,1], -"classmpl_1_1contiguous__layout.html#aae660e5421a3eecf9b365ae32df3cf29":[3,0,0,11,1], -"classmpl_1_1contiguous__layout.html#ab067e1300c01e8bba62f0414bbac5254":[2,0,0,12,0], -"classmpl_1_1contiguous__layout.html#ab067e1300c01e8bba62f0414bbac5254":[3,0,0,11,0], -"classmpl_1_1contiguous__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[3,0,0,11,12], -"classmpl_1_1contiguous__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,12,12], -"classmpl_1_1contiguous__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,12,14], -"classmpl_1_1contiguous__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[3,0,0,11,14], -"classmpl_1_1contiguous__layout.html#abce0f3197d6b2252c951535b443d7d5e":[3,0,0,11,8], -"classmpl_1_1contiguous__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,12,8], -"classmpl_1_1contiguous__layout.html#adb39eadffb6dbffe72480764ba486245":[2,0,0,12,10], -"classmpl_1_1contiguous__layout.html#adb39eadffb6dbffe72480764ba486245":[3,0,0,11,10], -"classmpl_1_1contiguous__layout.html#adda8d9c92a93fd7e1c7dddf5cd113403":[2,0,0,12,23], -"classmpl_1_1contiguous__layout.html#adda8d9c92a93fd7e1c7dddf5cd113403":[3,0,0,11,23], -"classmpl_1_1contiguous__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,12,17], -"classmpl_1_1contiguous__layout.html#adf592d9e08a92314cc086bd51d643953":[3,0,0,11,17], -"classmpl_1_1contiguous__layout.html#ae982602643daa885058b55d85b463ee9":[3,0,0,11,11], -"classmpl_1_1contiguous__layout.html#ae982602643daa885058b55d85b463ee9":[2,0,0,12,11], -"classmpl_1_1contiguous__layouts.html":[2,0,0,13], -"classmpl_1_1contiguous__layouts.html":[3,0,0,12], -"classmpl_1_1contiguous__layouts.html#a1eb8b54fe4aac54b7d7dd0ef16a2a82e":[3,0,0,12,3], -"classmpl_1_1contiguous__layouts.html#a1eb8b54fe4aac54b7d7dd0ef16a2a82e":[2,0,0,13,3], -"classmpl_1_1contiguous__layouts.html#a28e4940a8d711c15cada064a12ba0788":[3,0,0,12,2], -"classmpl_1_1contiguous__layouts.html#a28e4940a8d711c15cada064a12ba0788":[2,0,0,13,2], -"classmpl_1_1contiguous__layouts.html#a51ef8713bb2454de686381fd012e2845":[2,0,0,13,0], -"classmpl_1_1contiguous__layouts.html#a51ef8713bb2454de686381fd012e2845":[3,0,0,12,0], -"classmpl_1_1contiguous__layouts.html#a7c7201b2a4367597aac88ccfcbb9b797":[2,0,0,13,1], -"classmpl_1_1contiguous__layouts.html#a7c7201b2a4367597aac88ccfcbb9b797":[3,0,0,12,1], -"classmpl_1_1displacements.html":[3,0,0,13], -"classmpl_1_1displacements.html":[2,0,0,14], -"classmpl_1_1displacements.html#a0a9d79ddab90f97db23951542f9529ec":[2,0,0,14,0], -"classmpl_1_1displacements.html#a0a9d79ddab90f97db23951542f9529ec":[3,0,0,13,0], -"classmpl_1_1displacements.html#a4fa9b3a5848ac407a2c80db370d4fcd9":[2,0,0,14,4], -"classmpl_1_1displacements.html#a4fa9b3a5848ac407a2c80db370d4fcd9":[3,0,0,13,4], -"classmpl_1_1displacements.html#a6507f2260c13ced0a18e3d32af0c04a6":[2,0,0,14,1], -"classmpl_1_1displacements.html#a6507f2260c13ced0a18e3d32af0c04a6":[3,0,0,13,1], -"classmpl_1_1displacements.html#a9b3133c451300e447c43374b8e785783":[2,0,0,14,3], -"classmpl_1_1displacements.html#a9b3133c451300e447c43374b8e785783":[3,0,0,13,3], -"classmpl_1_1displacements.html#aa632306f2aadfee96b2842791d771cee":[2,0,0,14,6], -"classmpl_1_1displacements.html#aa632306f2aadfee96b2842791d771cee":[3,0,0,13,6], -"classmpl_1_1displacements.html#ad82ea20c78609a9c4f23b1f689f8b36f":[2,0,0,14,5], -"classmpl_1_1displacements.html#ad82ea20c78609a9c4f23b1f689f8b36f":[3,0,0,13,5], -"classmpl_1_1displacements.html#ae1e24fef18246a0ca1cd857a691a02ce":[3,0,0,13,2], -"classmpl_1_1displacements.html#ae1e24fef18246a0ca1cd857a691a02ce":[2,0,0,14,2], -"classmpl_1_1distributed__graph__communicator.html":[2,0,0,15], -"classmpl_1_1distributed__graph__communicator.html":[3,0,0,14], -"classmpl_1_1distributed__graph__communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09":[2,0,0,15,12], -"classmpl_1_1distributed__graph__communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09":[3,0,0,14,12], -"classmpl_1_1distributed__graph__communicator.html#a031345325782266cecb521469e42d8c3":[2,0,0,15,120], -"classmpl_1_1distributed__graph__communicator.html#a031345325782266cecb521469e42d8c3":[3,0,0,14,120], -"classmpl_1_1distributed__graph__communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69":[2,0,0,15,95], -"classmpl_1_1distributed__graph__communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69":[3,0,0,14,95], -"classmpl_1_1distributed__graph__communicator.html#a03afcae482e770e40ca5df7ae77b29c6":[2,0,0,15,138], -"classmpl_1_1distributed__graph__communicator.html#a03afcae482e770e40ca5df7ae77b29c6":[3,0,0,14,138], -"classmpl_1_1distributed__graph__communicator.html#a03d88ad3aa943dc51578259c03b0b695":[2,0,0,15,152], -"classmpl_1_1distributed__graph__communicator.html#a03d88ad3aa943dc51578259c03b0b695":[3,0,0,14,152], -"classmpl_1_1distributed__graph__communicator.html#a05ed2a65531e978c766f9af918f5e5a3":[3,0,0,14,20], -"classmpl_1_1distributed__graph__communicator.html#a05ed2a65531e978c766f9af918f5e5a3":[2,0,0,15,20], -"classmpl_1_1distributed__graph__communicator.html#a06525ff878eb073c02dc0bef285f06ac":[3,0,0,14,104], -"classmpl_1_1distributed__graph__communicator.html#a06525ff878eb073c02dc0bef285f06ac":[2,0,0,15,104], -"classmpl_1_1distributed__graph__communicator.html#a068c77bb2536523c2bcbeb4d3d8efc7b":[3,0,0,14,87], -"classmpl_1_1distributed__graph__communicator.html#a068c77bb2536523c2bcbeb4d3d8efc7b":[2,0,0,15,87], -"classmpl_1_1distributed__graph__communicator.html#a07591e9922db9239a75ab1b6c7b70f11":[3,0,0,14,194], -"classmpl_1_1distributed__graph__communicator.html#a07591e9922db9239a75ab1b6c7b70f11":[2,0,0,15,194], -"classmpl_1_1distributed__graph__communicator.html#a0a2866d44cee859fc064e2e32a6710d7":[3,0,0,14,14], -"classmpl_1_1distributed__graph__communicator.html#a0a2866d44cee859fc064e2e32a6710d7":[2,0,0,15,14], -"classmpl_1_1distributed__graph__communicator.html#a0ca545be8c199264a127b16180450162":[3,0,0,14,154], -"classmpl_1_1distributed__graph__communicator.html#a0ca545be8c199264a127b16180450162":[2,0,0,15,154], -"classmpl_1_1distributed__graph__communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3":[3,0,0,14,11], -"classmpl_1_1distributed__graph__communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3":[2,0,0,15,11], -"classmpl_1_1distributed__graph__communicator.html#a0e6459ad572cb1a69cb149df1871f2c6":[3,0,0,14,102], -"classmpl_1_1distributed__graph__communicator.html#a0e6459ad572cb1a69cb149df1871f2c6":[2,0,0,15,102], -"classmpl_1_1distributed__graph__communicator.html#a0e7776c9ef670b685701dfd197b76912":[3,0,0,14,17], -"classmpl_1_1distributed__graph__communicator.html#a0e7776c9ef670b685701dfd197b76912":[2,0,0,15,17], -"classmpl_1_1distributed__graph__communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3":[2,0,0,15,96], -"classmpl_1_1distributed__graph__communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3":[3,0,0,14,96], -"classmpl_1_1distributed__graph__communicator.html#a100f19741ccecda229eb1bb6659c1dd8":[3,0,0,14,191], -"classmpl_1_1distributed__graph__communicator.html#a100f19741ccecda229eb1bb6659c1dd8":[2,0,0,15,191], -"classmpl_1_1distributed__graph__communicator.html#a14ad784ff91391983f667a5cadbfe367":[3,0,0,14,100], -"classmpl_1_1distributed__graph__communicator.html#a14ad784ff91391983f667a5cadbfe367":[2,0,0,15,100], -"classmpl_1_1distributed__graph__communicator.html#a14b2306de71e02b0390c564ff6ba7c21":[3,0,0,14,67], -"classmpl_1_1distributed__graph__communicator.html#a14b2306de71e02b0390c564ff6ba7c21":[2,0,0,15,67], -"classmpl_1_1distributed__graph__communicator.html#a153a492a90432d228638e2548b2a65b5":[3,0,0,14,144], -"classmpl_1_1distributed__graph__communicator.html#a153a492a90432d228638e2548b2a65b5":[2,0,0,15,144], -"classmpl_1_1distributed__graph__communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f":[3,0,0,14,192], -"classmpl_1_1distributed__graph__communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f":[2,0,0,15,192], -"classmpl_1_1distributed__graph__communicator.html#a17526ad519286bf2fa81a3701c0afe03":[2,0,0,15,198], -"classmpl_1_1distributed__graph__communicator.html#a17526ad519286bf2fa81a3701c0afe03":[3,0,0,14,198], -"classmpl_1_1distributed__graph__communicator.html#a179246280657f80aa624f7ebcb8ac9a4":[3,0,0,14,129], -"classmpl_1_1distributed__graph__communicator.html#a179246280657f80aa624f7ebcb8ac9a4":[2,0,0,15,129], -"classmpl_1_1distributed__graph__communicator.html#a192fabbdbac09436fab92943148c5185":[3,0,0,14,77], -"classmpl_1_1distributed__graph__communicator.html#a192fabbdbac09436fab92943148c5185":[2,0,0,15,77], -"classmpl_1_1distributed__graph__communicator.html#a1948c90e2873f0db6b7fc32f7240e80a":[3,0,0,14,118], -"classmpl_1_1distributed__graph__communicator.html#a1948c90e2873f0db6b7fc32f7240e80a":[2,0,0,15,118], -"classmpl_1_1distributed__graph__communicator.html#a197f9833a6c4685a2368b7bea2a60cd8":[3,0,0,14,165], -"classmpl_1_1distributed__graph__communicator.html#a197f9833a6c4685a2368b7bea2a60cd8":[2,0,0,15,165], -"classmpl_1_1distributed__graph__communicator.html#a19912b0013f991bbebf2ef46fcb93c70":[2,0,0,15,107], -"classmpl_1_1distributed__graph__communicator.html#a19912b0013f991bbebf2ef46fcb93c70":[3,0,0,14,107], -"classmpl_1_1distributed__graph__communicator.html#a1a2fbf1a89b606c316790a29a6c24344":[2,0,0,15,8], -"classmpl_1_1distributed__graph__communicator.html#a1a2fbf1a89b606c316790a29a6c24344":[3,0,0,14,8], -"classmpl_1_1distributed__graph__communicator.html#a1bf177485606687353cd50bc5a3b3c59":[2,0,0,15,70], -"classmpl_1_1distributed__graph__communicator.html#a1bf177485606687353cd50bc5a3b3c59":[3,0,0,14,70], -"classmpl_1_1distributed__graph__communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644":[2,0,0,15,188], -"classmpl_1_1distributed__graph__communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644":[3,0,0,14,188], -"classmpl_1_1distributed__graph__communicator.html#a1f45f3b4b5afa504963d30203bebcd67":[3,0,0,14,182], -"classmpl_1_1distributed__graph__communicator.html#a1f45f3b4b5afa504963d30203bebcd67":[2,0,0,15,182], -"classmpl_1_1distributed__graph__communicator.html#a20505014d3a5ac58a5601faee033d003":[3,0,0,14,68], -"classmpl_1_1distributed__graph__communicator.html#a20505014d3a5ac58a5601faee033d003":[2,0,0,15,68], -"classmpl_1_1distributed__graph__communicator.html#a20766ee389c97340241ff730eae49475":[2,0,0,15,71], -"classmpl_1_1distributed__graph__communicator.html#a20766ee389c97340241ff730eae49475":[3,0,0,14,71], -"classmpl_1_1distributed__graph__communicator.html#a20c2142532726d3a3f25e4eb3293fd4c":[2,0,0,15,156], -"classmpl_1_1distributed__graph__communicator.html#a20c2142532726d3a3f25e4eb3293fd4c":[3,0,0,14,156], -"classmpl_1_1distributed__graph__communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb":[2,0,0,15,33], -"classmpl_1_1distributed__graph__communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb":[3,0,0,14,33], -"classmpl_1_1distributed__graph__communicator.html#a2431581c87c06df890a849c6b91972b9":[2,0,0,15,3], -"classmpl_1_1distributed__graph__communicator.html#a2431581c87c06df890a849c6b91972b9":[3,0,0,14,3], -"classmpl_1_1distributed__graph__communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a":[2,0,0,15,183], -"classmpl_1_1distributed__graph__communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a":[3,0,0,14,183], -"classmpl_1_1distributed__graph__communicator.html#a27a19494efdc8558802169947a8adeed":[3,0,0,14,146], -"classmpl_1_1distributed__graph__communicator.html#a27a19494efdc8558802169947a8adeed":[2,0,0,15,146], -"classmpl_1_1distributed__graph__communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe":[2,0,0,15,7], -"classmpl_1_1distributed__graph__communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe":[3,0,0,14,7], -"classmpl_1_1distributed__graph__communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627":[3,0,0,14,166], -"classmpl_1_1distributed__graph__communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627":[2,0,0,15,166], -"classmpl_1_1distributed__graph__communicator.html#a2a901501dfe4dad53249a142a6c61f8a":[2,0,0,15,184], -"classmpl_1_1distributed__graph__communicator.html#a2a901501dfe4dad53249a142a6c61f8a":[3,0,0,14,184], -"classmpl_1_1distributed__graph__communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f":[3,0,0,14,128], -"classmpl_1_1distributed__graph__communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f":[2,0,0,15,128], -"classmpl_1_1distributed__graph__communicator.html#a32881aa49f5e9c71792e98629a131822":[2,0,0,15,46], -"classmpl_1_1distributed__graph__communicator.html#a32881aa49f5e9c71792e98629a131822":[3,0,0,14,46], -"classmpl_1_1distributed__graph__communicator.html#a3365eb0152e5a5c34327478974193d24":[3,0,0,14,4], -"classmpl_1_1distributed__graph__communicator.html#a3365eb0152e5a5c34327478974193d24":[2,0,0,15,4], -"classmpl_1_1distributed__graph__communicator.html#a34c527f23af855f716bf00a2658c9436":[3,0,0,14,66], -"classmpl_1_1distributed__graph__communicator.html#a34c527f23af855f716bf00a2658c9436":[2,0,0,15,66], -"classmpl_1_1distributed__graph__communicator.html#a36031fd4a0c2ed7bab527e0a4663971f":[2,0,0,15,180], -"classmpl_1_1distributed__graph__communicator.html#a36031fd4a0c2ed7bab527e0a4663971f":[3,0,0,14,180], -"classmpl_1_1distributed__graph__communicator.html#a377702be1b30166ad458fcef11b2c239":[2,0,0,15,136], -"classmpl_1_1distributed__graph__communicator.html#a377702be1b30166ad458fcef11b2c239":[3,0,0,14,136], -"classmpl_1_1distributed__graph__communicator.html#a382f89a6edce34c57070c8be15b33205":[3,0,0,14,6], -"classmpl_1_1distributed__graph__communicator.html#a382f89a6edce34c57070c8be15b33205":[2,0,0,15,6], -"classmpl_1_1distributed__graph__communicator.html#a39c2f12ebc86e0930266a60ffecea926":[2,0,0,15,149], -"classmpl_1_1distributed__graph__communicator.html#a39c2f12ebc86e0930266a60ffecea926":[3,0,0,14,149], -"classmpl_1_1distributed__graph__communicator.html#a3b4d541cab8706ae5a4a699aef0662d3":[3,0,0,14,179], -"classmpl_1_1distributed__graph__communicator.html#a3b4d541cab8706ae5a4a699aef0662d3":[2,0,0,15,179], -"classmpl_1_1distributed__graph__communicator.html#a3f433b69dace132e01bea64624fff4b3":[2,0,0,15,199], -"classmpl_1_1distributed__graph__communicator.html#a3f433b69dace132e01bea64624fff4b3":[3,0,0,14,199], -"classmpl_1_1distributed__graph__communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416":[3,0,0,14,114], -"classmpl_1_1distributed__graph__communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416":[2,0,0,15,114], -"classmpl_1_1distributed__graph__communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc":[2,0,0,15,98], -"classmpl_1_1distributed__graph__communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc":[3,0,0,14,98], -"classmpl_1_1distributed__graph__communicator.html#a3fbbc822e36ea95e865a7b37ac0ad984":[2,0,0,15,94], -"classmpl_1_1distributed__graph__communicator.html#a3fbbc822e36ea95e865a7b37ac0ad984":[3,0,0,14,94], -"classmpl_1_1distributed__graph__communicator.html#a43c7b3d19a5af4ba0f30e40045a2e459":[2,0,0,15,133], -"classmpl_1_1distributed__graph__communicator.html#a43c7b3d19a5af4ba0f30e40045a2e459":[3,0,0,14,133], -"classmpl_1_1distributed__graph__communicator.html#a445e05af65cdc53b7a981d4884a4c3b8":[3,0,0,14,79], -"classmpl_1_1distributed__graph__communicator.html#a445e05af65cdc53b7a981d4884a4c3b8":[2,0,0,15,79], -"classmpl_1_1distributed__graph__communicator.html#a45585975b4b7cc0795a02abf6494963b":[2,0,0,15,39], -"classmpl_1_1distributed__graph__communicator.html#a45585975b4b7cc0795a02abf6494963b":[3,0,0,14,39], -"classmpl_1_1distributed__graph__communicator.html#a455d8703c09913eebe31cd360351c308":[3,0,0,14,137], -"classmpl_1_1distributed__graph__communicator.html#a455d8703c09913eebe31cd360351c308":[2,0,0,15,137], -"classmpl_1_1distributed__graph__communicator.html#a46e8797b907b9539b2ee90713a675e5c":[2,0,0,15,125], -"classmpl_1_1distributed__graph__communicator.html#a46e8797b907b9539b2ee90713a675e5c":[3,0,0,14,125], -"classmpl_1_1distributed__graph__communicator.html#a477820ee73599e311a6e73ef06fbdf33":[2,0,0,15,181], -"classmpl_1_1distributed__graph__communicator.html#a477820ee73599e311a6e73ef06fbdf33":[3,0,0,14,181], -"classmpl_1_1distributed__graph__communicator.html#a480ef5ac8533cd47ef55b04454baddca":[3,0,0,14,169], -"classmpl_1_1distributed__graph__communicator.html#a480ef5ac8533cd47ef55b04454baddca":[2,0,0,15,169], -"classmpl_1_1distributed__graph__communicator.html#a494c7c1849713e45d99d901b31250b35":[3,0,0,14,155], -"classmpl_1_1distributed__graph__communicator.html#a494c7c1849713e45d99d901b31250b35":[2,0,0,15,155], -"classmpl_1_1distributed__graph__communicator.html#a4a29592502142845c3bb0031221189a3":[2,0,0,15,73], -"classmpl_1_1distributed__graph__communicator.html#a4a29592502142845c3bb0031221189a3":[3,0,0,14,73], -"classmpl_1_1distributed__graph__communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21":[3,0,0,14,117], -"classmpl_1_1distributed__graph__communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21":[2,0,0,15,117], -"classmpl_1_1distributed__graph__communicator.html#a4ac75dc1695c441e9e8faa185a458cc3":[2,0,0,15,34], -"classmpl_1_1distributed__graph__communicator.html#a4ac75dc1695c441e9e8faa185a458cc3":[3,0,0,14,34], -"classmpl_1_1distributed__graph__communicator.html#a4cff38dd56b3d53992babac77cbefa8d":[2,0,0,15,60], -"classmpl_1_1distributed__graph__communicator.html#a4cff38dd56b3d53992babac77cbefa8d":[3,0,0,14,60], -"classmpl_1_1distributed__graph__communicator.html#a4db43a46f468c60e84b35f95577ff0f4":[3,0,0,14,23], -"classmpl_1_1distributed__graph__communicator.html#a4db43a46f468c60e84b35f95577ff0f4":[2,0,0,15,23], -"classmpl_1_1distributed__graph__communicator.html#a4de1ecacd035af3dca830995098a2f49":[2,0,0,15,105], -"classmpl_1_1distributed__graph__communicator.html#a4de1ecacd035af3dca830995098a2f49":[3,0,0,14,105], -"classmpl_1_1distributed__graph__communicator.html#a4ef63ca9340ce71f4903e2ce890fdcc0":[3,0,0,14,5], -"classmpl_1_1distributed__graph__communicator.html#a4ef63ca9340ce71f4903e2ce890fdcc0":[2,0,0,15,5], -"classmpl_1_1distributed__graph__communicator.html#a5314e5dc5b35f952dba239b8f03be330":[3,0,0,14,32], -"classmpl_1_1distributed__graph__communicator.html#a5314e5dc5b35f952dba239b8f03be330":[2,0,0,15,32], -"classmpl_1_1distributed__graph__communicator.html#a54da0c73668349841c941c53c6acff81":[2,0,0,15,140], -"classmpl_1_1distributed__graph__communicator.html#a54da0c73668349841c941c53c6acff81":[3,0,0,14,140], -"classmpl_1_1distributed__graph__communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84":[3,0,0,14,9], -"classmpl_1_1distributed__graph__communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84":[2,0,0,15,9], -"classmpl_1_1distributed__graph__communicator.html#a55feab940e9c72241215918199931936":[2,0,0,15,15], -"classmpl_1_1distributed__graph__communicator.html#a55feab940e9c72241215918199931936":[3,0,0,14,15], -"classmpl_1_1distributed__graph__communicator.html#a55fef351e8bb5d3062d25683cb404c9d":[2,0,0,15,164], -"classmpl_1_1distributed__graph__communicator.html#a55fef351e8bb5d3062d25683cb404c9d":[3,0,0,14,164], -"classmpl_1_1distributed__graph__communicator.html#a5664d9591456924a7343082445bc8452":[3,0,0,14,62], -"classmpl_1_1distributed__graph__communicator.html#a5664d9591456924a7343082445bc8452":[2,0,0,15,62], -"classmpl_1_1distributed__graph__communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7":[3,0,0,14,80], -"classmpl_1_1distributed__graph__communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7":[2,0,0,15,80], -"classmpl_1_1distributed__graph__communicator.html#a58b6d65e9351b61c493967718f550614":[2,0,0,15,122], -"classmpl_1_1distributed__graph__communicator.html#a58b6d65e9351b61c493967718f550614":[3,0,0,14,122], -"classmpl_1_1distributed__graph__communicator.html#a5a80517f1de86265d2a863a7c1fd5032":[2,0,0,15,174], -"classmpl_1_1distributed__graph__communicator.html#a5a80517f1de86265d2a863a7c1fd5032":[3,0,0,14,174], -"classmpl_1_1distributed__graph__communicator.html#a5a8f9ed0c2035ded24a38989d75a5494":[3,0,0,14,145], -"classmpl_1_1distributed__graph__communicator.html#a5a8f9ed0c2035ded24a38989d75a5494":[2,0,0,15,145], -"classmpl_1_1distributed__graph__communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c":[2,0,0,15,75] +"classmpl_1_1group.html#ac54706f36382139b24b24a0311e0763b":[2,0,0,19,10], +"classmpl_1_1group.html#ac820bf356be8b94134cb08f8efa087ba":[2,0,0,19,21], +"classmpl_1_1group.html#ae721323f69336a1ac2e4029a83ed0570":[2,0,0,19,8], +"classmpl_1_1group_1_1_union__tag.html":[2,0,0,19,4], +"classmpl_1_1group_1_1difference__tag.html":[2,0,0,19,0], +"classmpl_1_1group_1_1exclude__tag.html":[2,0,0,19,1], +"classmpl_1_1group_1_1include__tag.html":[2,0,0,19,2], +"classmpl_1_1group_1_1intersection__tag.html":[2,0,0,19,3], +"classmpl_1_1heterogeneous__layout.html":[2,0,0,20], +"classmpl_1_1heterogeneous__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,20,8], +"classmpl_1_1heterogeneous__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,20,20], +"classmpl_1_1heterogeneous__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,20,18], +"classmpl_1_1heterogeneous__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,20,23], +"classmpl_1_1heterogeneous__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,20,17], +"classmpl_1_1heterogeneous__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,20,21], +"classmpl_1_1heterogeneous__layout.html#a4ee194df608a408783938ba0d8f5ca4a":[2,0,0,20,1], +"classmpl_1_1heterogeneous__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,20,11], +"classmpl_1_1heterogeneous__layout.html#a72a2fe2e326f5bfc1dd9b188acd07072":[2,0,0,20,15], +"classmpl_1_1heterogeneous__layout.html#a75a8d595647135a6393ed04dc9431f30":[2,0,0,20,4], +"classmpl_1_1heterogeneous__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,20,22], +"classmpl_1_1heterogeneous__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,20,6], +"classmpl_1_1heterogeneous__layout.html#a893948e465f7ef673612c94395eebd70":[2,0,0,20,3], +"classmpl_1_1heterogeneous__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,20,9], +"classmpl_1_1heterogeneous__layout.html#a9e570881a42bed31cf1aa593c0138215":[2,0,0,20,5], +"classmpl_1_1heterogeneous__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,20,7], +"classmpl_1_1heterogeneous__layout.html#aa4701dfc7a4cb2402ed3484e87947be6":[2,0,0,20,13], +"classmpl_1_1heterogeneous__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,20,14], +"classmpl_1_1heterogeneous__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,20,16], +"classmpl_1_1heterogeneous__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,20,10], +"classmpl_1_1heterogeneous__layout.html#ada4aa6f3f64e5bd5519b36a5d80c780e":[2,0,0,20,12], +"classmpl_1_1heterogeneous__layout.html#adb64a08a7007a01451855f95d0190cf4":[2,0,0,20,2], +"classmpl_1_1heterogeneous__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,20,19], +"classmpl_1_1heterogeneous__layout_1_1parameter.html":[2,0,0,20,0], +"classmpl_1_1heterogeneous__layout_1_1parameter.html#a3e6002677c2e8ffdeba903453ff6120f":[2,0,0,20,0,1], +"classmpl_1_1heterogeneous__layout_1_1parameter.html#a4e576170d803d71eb3e0bcc402ea632d":[2,0,0,20,0,3], +"classmpl_1_1heterogeneous__layout_1_1parameter.html#a513ff59ef3a4f879b4505410e428147d":[2,0,0,20,0,0], +"classmpl_1_1heterogeneous__layout_1_1parameter.html#adfbbfebde35bdcb9a004ac6ae0128d13":[2,0,0,20,0,2], +"classmpl_1_1hindexed__block__layout.html":[2,0,0,21], +"classmpl_1_1hindexed__block__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,21,8], +"classmpl_1_1hindexed__block__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,21,20], +"classmpl_1_1hindexed__block__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,21,18], +"classmpl_1_1hindexed__block__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,21,23], +"classmpl_1_1hindexed__block__layout.html#a31e0a5a0b069597199140c0fc6df1d13":[2,0,0,21,15], +"classmpl_1_1hindexed__block__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,21,17], +"classmpl_1_1hindexed__block__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,21,21], +"classmpl_1_1hindexed__block__layout.html#a58ef3baba410d7e6699ba6a1e2daa907":[2,0,0,21,3], +"classmpl_1_1hindexed__block__layout.html#a5cbc07359787a6d3472a29c8b0deec93":[2,0,0,21,2], +"classmpl_1_1hindexed__block__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,21,11], +"classmpl_1_1hindexed__block__layout.html#a5f5f55079a3ef89bcd395dae67a2206d":[2,0,0,21,1], +"classmpl_1_1hindexed__block__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,21,22], +"classmpl_1_1hindexed__block__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,21,6], +"classmpl_1_1hindexed__block__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,21,9], +"classmpl_1_1hindexed__block__layout.html#a9cedaad857c684ce5265110c6a9b82e5":[2,0,0,21,13], +"classmpl_1_1hindexed__block__layout.html#a9efe673232ce9180c2c96f0048da8187":[2,0,0,21,12], +"classmpl_1_1hindexed__block__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,21,7], +"classmpl_1_1hindexed__block__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,21,14], +"classmpl_1_1hindexed__block__layout.html#ab4a0d6418553bd6182bbf7c8ce85755f":[2,0,0,21,5], +"classmpl_1_1hindexed__block__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,21,16], +"classmpl_1_1hindexed__block__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,21,10], +"classmpl_1_1hindexed__block__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,21,19], +"classmpl_1_1hindexed__block__layout.html#aeb1c8663c6f16128cf8055d08761a5b9":[2,0,0,21,4], +"classmpl_1_1hindexed__block__layout_1_1parameter.html":[2,0,0,21,0], +"classmpl_1_1hindexed__block__layout_1_1parameter.html#a5577f0cc7963c4a58195922e1da85403":[2,0,0,21,0,0], +"classmpl_1_1hindexed__block__layout_1_1parameter.html#a6699819fb72a60027c750f93aa0df8c1":[2,0,0,21,0,3], +"classmpl_1_1hindexed__block__layout_1_1parameter.html#ac31e4f491add1a9bad604b9c8303d3a3":[2,0,0,21,0,1], +"classmpl_1_1hindexed__block__layout_1_1parameter.html#ada60546fd361cd67a04fe083a5c09f35":[2,0,0,21,0,2], +"classmpl_1_1hindexed__layout.html":[2,0,0,22], +"classmpl_1_1hindexed__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,22,8], +"classmpl_1_1hindexed__layout.html#a06906f27dd6bd4b40c5025bb0958bb5f":[2,0,0,22,4], +"classmpl_1_1hindexed__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,22,20], +"classmpl_1_1hindexed__layout.html#a0b6540a5b7232bdccfdaa2fbd3f1ce11":[2,0,0,22,3], +"classmpl_1_1hindexed__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,22,18], +"classmpl_1_1hindexed__layout.html#a26743fb491f074969ce4d92a17eb8960":[2,0,0,22,2], +"classmpl_1_1hindexed__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,22,23], +"classmpl_1_1hindexed__layout.html#a36148d9a6a2209eee2a10e57b5bacb23":[2,0,0,22,1], +"classmpl_1_1hindexed__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,22,17], +"classmpl_1_1hindexed__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,22,21], +"classmpl_1_1hindexed__layout.html#a51e7ccbf3a8b3552c53d0624fbff10d3":[2,0,0,22,13], +"classmpl_1_1hindexed__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,22,11], +"classmpl_1_1hindexed__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,22,22], +"classmpl_1_1hindexed__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,22,6], +"classmpl_1_1hindexed__layout.html#a96cdefc4ba1b2513df1eb4377cffb58e":[2,0,0,22,15], +"classmpl_1_1hindexed__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,22,9], +"classmpl_1_1hindexed__layout.html#a9d5c13ca208f4a753e8418b3a0ca2019":[2,0,0,22,5], +"classmpl_1_1hindexed__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,22,7], +"classmpl_1_1hindexed__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,22,14], +"classmpl_1_1hindexed__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,22,16], +"classmpl_1_1hindexed__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,22,10], +"classmpl_1_1hindexed__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,22,19], +"classmpl_1_1hindexed__layout.html#ae36e81cb6bbec4abe96e430e6d02f938":[2,0,0,22,12], +"classmpl_1_1hindexed__layout_1_1parameter.html":[2,0,0,22,0], +"classmpl_1_1hindexed__layout_1_1parameter.html#a137203f563366d04c169371675dba0ea":[2,0,0,22,0,2], +"classmpl_1_1hindexed__layout_1_1parameter.html#a22fbba95008c8cf65c704ca1711f3a1c":[2,0,0,22,0,3], +"classmpl_1_1hindexed__layout_1_1parameter.html#ab8f9a7e2e4c17f1cd55ad7f268fc7ac0":[2,0,0,22,0,1], +"classmpl_1_1hindexed__layout_1_1parameter.html#ac1f84b65ffbb428a02e099c7e7b1b16a":[2,0,0,22,0,0], +"classmpl_1_1impl_1_1irequest.html":[2,0,0,0,0], +"classmpl_1_1impl_1_1prequest.html":[2,0,0,0,1], +"classmpl_1_1impl_1_1request.html":[2,0,0,0,2], +"classmpl_1_1impl_1_1request__pool.html":[2,0,0,0,3], +"classmpl_1_1impl_1_1topology__communicator.html":[2,0,0,0,4], +"classmpl_1_1impl_1_1topology__communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09":[2,0,0,0,4,6], +"classmpl_1_1impl_1_1topology__communicator.html#a031345325782266cecb521469e42d8c3":[2,0,0,0,4,111], +"classmpl_1_1impl_1_1topology__communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69":[2,0,0,0,4,86], +"classmpl_1_1impl_1_1topology__communicator.html#a03afcae482e770e40ca5df7ae77b29c6":[2,0,0,0,4,129], +"classmpl_1_1impl_1_1topology__communicator.html#a03d88ad3aa943dc51578259c03b0b695":[2,0,0,0,4,140], +"classmpl_1_1impl_1_1topology__communicator.html#a05ed2a65531e978c766f9af918f5e5a3":[2,0,0,0,4,14], +"classmpl_1_1impl_1_1topology__communicator.html#a06525ff878eb073c02dc0bef285f06ac":[2,0,0,0,4,95], +"classmpl_1_1impl_1_1topology__communicator.html#a068c77bb2536523c2bcbeb4d3d8efc7b":[2,0,0,0,4,78], +"classmpl_1_1impl_1_1topology__communicator.html#a07591e9922db9239a75ab1b6c7b70f11":[2,0,0,0,4,182], +"classmpl_1_1impl_1_1topology__communicator.html#a0a2866d44cee859fc064e2e32a6710d7":[2,0,0,0,4,8], +"classmpl_1_1impl_1_1topology__communicator.html#a0ca545be8c199264a127b16180450162":[2,0,0,0,4,142], +"classmpl_1_1impl_1_1topology__communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3":[2,0,0,0,4,5], +"classmpl_1_1impl_1_1topology__communicator.html#a0e6459ad572cb1a69cb149df1871f2c6":[2,0,0,0,4,93], +"classmpl_1_1impl_1_1topology__communicator.html#a0e7776c9ef670b685701dfd197b76912":[2,0,0,0,4,11], +"classmpl_1_1impl_1_1topology__communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3":[2,0,0,0,4,87], +"classmpl_1_1impl_1_1topology__communicator.html#a100f19741ccecda229eb1bb6659c1dd8":[2,0,0,0,4,179], +"classmpl_1_1impl_1_1topology__communicator.html#a14ad784ff91391983f667a5cadbfe367":[2,0,0,0,4,91], +"classmpl_1_1impl_1_1topology__communicator.html#a14b2306de71e02b0390c564ff6ba7c21":[2,0,0,0,4,61], +"classmpl_1_1impl_1_1topology__communicator.html#a153a492a90432d228638e2548b2a65b5":[2,0,0,0,4,134], +"classmpl_1_1impl_1_1topology__communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f":[2,0,0,0,4,180], +"classmpl_1_1impl_1_1topology__communicator.html#a17526ad519286bf2fa81a3701c0afe03":[2,0,0,0,4,186], +"classmpl_1_1impl_1_1topology__communicator.html#a179246280657f80aa624f7ebcb8ac9a4":[2,0,0,0,4,120], +"classmpl_1_1impl_1_1topology__communicator.html#a192fabbdbac09436fab92943148c5185":[2,0,0,0,4,71], +"classmpl_1_1impl_1_1topology__communicator.html#a1948c90e2873f0db6b7fc32f7240e80a":[2,0,0,0,4,109], +"classmpl_1_1impl_1_1topology__communicator.html#a197f9833a6c4685a2368b7bea2a60cd8":[2,0,0,0,4,153], +"classmpl_1_1impl_1_1topology__communicator.html#a19912b0013f991bbebf2ef46fcb93c70":[2,0,0,0,4,98], +"classmpl_1_1impl_1_1topology__communicator.html#a1a2fbf1a89b606c316790a29a6c24344":[2,0,0,0,4,2], +"classmpl_1_1impl_1_1topology__communicator.html#a1bf177485606687353cd50bc5a3b3c59":[2,0,0,0,4,64], +"classmpl_1_1impl_1_1topology__communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644":[2,0,0,0,4,176], +"classmpl_1_1impl_1_1topology__communicator.html#a1f45f3b4b5afa504963d30203bebcd67":[2,0,0,0,4,170], +"classmpl_1_1impl_1_1topology__communicator.html#a20505014d3a5ac58a5601faee033d003":[2,0,0,0,4,62], +"classmpl_1_1impl_1_1topology__communicator.html#a20766ee389c97340241ff730eae49475":[2,0,0,0,4,65], +"classmpl_1_1impl_1_1topology__communicator.html#a20c2142532726d3a3f25e4eb3293fd4c":[2,0,0,0,4,144], +"classmpl_1_1impl_1_1topology__communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb":[2,0,0,0,4,27], +"classmpl_1_1impl_1_1topology__communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a":[2,0,0,0,4,171], +"classmpl_1_1impl_1_1topology__communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe":[2,0,0,0,4,1], +"classmpl_1_1impl_1_1topology__communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627":[2,0,0,0,4,154], +"classmpl_1_1impl_1_1topology__communicator.html#a2a901501dfe4dad53249a142a6c61f8a":[2,0,0,0,4,172], +"classmpl_1_1impl_1_1topology__communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f":[2,0,0,0,4,119], +"classmpl_1_1impl_1_1topology__communicator.html#a32881aa49f5e9c71792e98629a131822":[2,0,0,0,4,40], +"classmpl_1_1impl_1_1topology__communicator.html#a34c527f23af855f716bf00a2658c9436":[2,0,0,0,4,60], +"classmpl_1_1impl_1_1topology__communicator.html#a36031fd4a0c2ed7bab527e0a4663971f":[2,0,0,0,4,168], +"classmpl_1_1impl_1_1topology__communicator.html#a377702be1b30166ad458fcef11b2c239":[2,0,0,0,4,127], +"classmpl_1_1impl_1_1topology__communicator.html#a39c2f12ebc86e0930266a60ffecea926":[2,0,0,0,4,137], +"classmpl_1_1impl_1_1topology__communicator.html#a3b4d541cab8706ae5a4a699aef0662d3":[2,0,0,0,4,167], +"classmpl_1_1impl_1_1topology__communicator.html#a3f433b69dace132e01bea64624fff4b3":[2,0,0,0,4,187], +"classmpl_1_1impl_1_1topology__communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416":[2,0,0,0,4,105], +"classmpl_1_1impl_1_1topology__communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc":[2,0,0,0,4,89], +"classmpl_1_1impl_1_1topology__communicator.html#a3fbbc822e36ea95e865a7b37ac0ad984":[2,0,0,0,4,85], +"classmpl_1_1impl_1_1topology__communicator.html#a43c7b3d19a5af4ba0f30e40045a2e459":[2,0,0,0,4,124], +"classmpl_1_1impl_1_1topology__communicator.html#a445e05af65cdc53b7a981d4884a4c3b8":[2,0,0,0,4,73], +"classmpl_1_1impl_1_1topology__communicator.html#a45585975b4b7cc0795a02abf6494963b":[2,0,0,0,4,33], +"classmpl_1_1impl_1_1topology__communicator.html#a455d8703c09913eebe31cd360351c308":[2,0,0,0,4,128], +"classmpl_1_1impl_1_1topology__communicator.html#a46e8797b907b9539b2ee90713a675e5c":[2,0,0,0,4,116], +"classmpl_1_1impl_1_1topology__communicator.html#a477820ee73599e311a6e73ef06fbdf33":[2,0,0,0,4,169], +"classmpl_1_1impl_1_1topology__communicator.html#a480ef5ac8533cd47ef55b04454baddca":[2,0,0,0,4,157], +"classmpl_1_1impl_1_1topology__communicator.html#a494c7c1849713e45d99d901b31250b35":[2,0,0,0,4,143], +"classmpl_1_1impl_1_1topology__communicator.html#a4a29592502142845c3bb0031221189a3":[2,0,0,0,4,67], +"classmpl_1_1impl_1_1topology__communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21":[2,0,0,0,4,108], +"classmpl_1_1impl_1_1topology__communicator.html#a4ac75dc1695c441e9e8faa185a458cc3":[2,0,0,0,4,28], +"classmpl_1_1impl_1_1topology__communicator.html#a4cff38dd56b3d53992babac77cbefa8d":[2,0,0,0,4,54], +"classmpl_1_1impl_1_1topology__communicator.html#a4db43a46f468c60e84b35f95577ff0f4":[2,0,0,0,4,17], +"classmpl_1_1impl_1_1topology__communicator.html#a4de1ecacd035af3dca830995098a2f49":[2,0,0,0,4,96], +"classmpl_1_1impl_1_1topology__communicator.html#a5314e5dc5b35f952dba239b8f03be330":[2,0,0,0,4,26], +"classmpl_1_1impl_1_1topology__communicator.html#a54da0c73668349841c941c53c6acff81":[2,0,0,0,4,131], +"classmpl_1_1impl_1_1topology__communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84":[2,0,0,0,4,3], +"classmpl_1_1impl_1_1topology__communicator.html#a55feab940e9c72241215918199931936":[2,0,0,0,4,9], +"classmpl_1_1impl_1_1topology__communicator.html#a55fef351e8bb5d3062d25683cb404c9d":[2,0,0,0,4,152], +"classmpl_1_1impl_1_1topology__communicator.html#a5664d9591456924a7343082445bc8452":[2,0,0,0,4,56], +"classmpl_1_1impl_1_1topology__communicator.html#a57de7fa3dd71c67ff0da9826c7ef0c71":[2,0,0,0,4,133], +"classmpl_1_1impl_1_1topology__communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7":[2,0,0,0,4,74], +"classmpl_1_1impl_1_1topology__communicator.html#a58b6d65e9351b61c493967718f550614":[2,0,0,0,4,113], +"classmpl_1_1impl_1_1topology__communicator.html#a5a80517f1de86265d2a863a7c1fd5032":[2,0,0,0,4,162], +"classmpl_1_1impl_1_1topology__communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c":[2,0,0,0,4,69], +"classmpl_1_1impl_1_1topology__communicator.html#a5ce91750a7c77edf43e53ac88e4e8524":[2,0,0,0,4,47], +"classmpl_1_1impl_1_1topology__communicator.html#a5ceb8a7771930409a0b7c54042b49866":[2,0,0,0,4,84], +"classmpl_1_1impl_1_1topology__communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec":[2,0,0,0,4,18], +"classmpl_1_1impl_1_1topology__communicator.html#a601c251b4c10c6797af3cd741dea4d55":[2,0,0,0,4,41], +"classmpl_1_1impl_1_1topology__communicator.html#a6149ac444daf9efa0818c1ad86df03f4":[2,0,0,0,4,177], +"classmpl_1_1impl_1_1topology__communicator.html#a61c69fd52a576be43b7331536f54b73f":[2,0,0,0,4,110], +"classmpl_1_1impl_1_1topology__communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2":[2,0,0,0,4,21], +"classmpl_1_1impl_1_1topology__communicator.html#a636784ef8a1e076a303e3e6279de1e7d":[2,0,0,0,4,149], +"classmpl_1_1impl_1_1topology__communicator.html#a65311bd6bde1b8de5b8acf9ae902104a":[2,0,0,0,4,82], +"classmpl_1_1impl_1_1topology__communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3":[2,0,0,0,4,4], +"classmpl_1_1impl_1_1topology__communicator.html#a67f541a36dee046cc12d15d9133930b7":[2,0,0,0,4,115], +"classmpl_1_1impl_1_1topology__communicator.html#a68996ab5379c9a104572b804633d869e":[2,0,0,0,4,53], +"classmpl_1_1impl_1_1topology__communicator.html#a693590693b8621565e94abdd6763d5b6":[2,0,0,0,4,139], +"classmpl_1_1impl_1_1topology__communicator.html#a69ebec18f9d55bc8e2b6951f97855068":[2,0,0,0,4,59], +"classmpl_1_1impl_1_1topology__communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f":[2,0,0,0,4,72], +"classmpl_1_1impl_1_1topology__communicator.html#a719512973bc590402ac30b10e5227d2b":[2,0,0,0,4,20], +"classmpl_1_1impl_1_1topology__communicator.html#a72d2639f200e5a36f1f81df5c499f06f":[2,0,0,0,4,104], +"classmpl_1_1impl_1_1topology__communicator.html#a73df8f569865237bc58e2445c7d07742":[2,0,0,0,4,44], +"classmpl_1_1impl_1_1topology__communicator.html#a753e8742d27ff29a660b07ee0b90b69e":[2,0,0,0,4,45], +"classmpl_1_1impl_1_1topology__communicator.html#a76dbca1b1f6089ee9e07e997b5d79295":[2,0,0,0,4,68], +"classmpl_1_1impl_1_1topology__communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0":[2,0,0,0,4,173], +"classmpl_1_1impl_1_1topology__communicator.html#a779f215eb82ce71764befaae9918b596":[2,0,0,0,4,77], +"classmpl_1_1impl_1_1topology__communicator.html#a79e5f4cd63cf9354ceedc4da193e2410":[2,0,0,0,4,90], +"classmpl_1_1impl_1_1topology__communicator.html#a7abdf44a7c377ba7191cb4abc6648afe":[2,0,0,0,4,55], +"classmpl_1_1impl_1_1topology__communicator.html#a7b672d71b83fafca8f6bf4d435331180":[2,0,0,0,4,29], +"classmpl_1_1impl_1_1topology__communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af":[2,0,0,0,4,165], +"classmpl_1_1impl_1_1topology__communicator.html#a7eddabba5f98c99db189844854690d13":[2,0,0,0,4,63], +"classmpl_1_1impl_1_1topology__communicator.html#a82b6f15cef4c0daa6825bc699418df22":[2,0,0,0,4,88], +"classmpl_1_1impl_1_1topology__communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9":[2,0,0,0,4,31], +"classmpl_1_1impl_1_1topology__communicator.html#a871cba17f8d1891fb0613f9a23c38866":[2,0,0,0,4,185], +"classmpl_1_1impl_1_1topology__communicator.html#a88368d3f4d7b375825ba839746aea7dd":[2,0,0,0,4,13], +"classmpl_1_1impl_1_1topology__communicator.html#a89b9a55af5259f119281592b4f63f2ee":[2,0,0,0,4,121], +"classmpl_1_1impl_1_1topology__communicator.html#a8e43e08af5e8481049731092274aca76":[2,0,0,0,4,66], +"classmpl_1_1impl_1_1topology__communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b":[2,0,0,0,4,159], +"classmpl_1_1impl_1_1topology__communicator.html#a95d5c90f2a58fe228d846942fe700645":[2,0,0,0,4,43], +"classmpl_1_1impl_1_1topology__communicator.html#a970647a9680c6bdc3ffbe0814b32f989":[2,0,0,0,4,99], +"classmpl_1_1impl_1_1topology__communicator.html#a997e3a727642f7fe7ab74a7342fa334b":[2,0,0,0,4,7], +"classmpl_1_1impl_1_1topology__communicator.html#a9dccde1bf10e911c3a00d1a546005e94":[2,0,0,0,4,80], +"classmpl_1_1impl_1_1topology__communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d":[2,0,0,0,4,146], +"classmpl_1_1impl_1_1topology__communicator.html#a9fbb87f9933ff071092164c9e264d817":[2,0,0,0,4,112], +"classmpl_1_1impl_1_1topology__communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6":[2,0,0,0,4,160], +"classmpl_1_1impl_1_1topology__communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5":[2,0,0,0,4,175], +"classmpl_1_1impl_1_1topology__communicator.html#aa2b51b89d72555ebfb1862d1de688061":[2,0,0,0,4,50], +"classmpl_1_1impl_1_1topology__communicator.html#aa4407a90c2f598867b36e8e557b72ec0":[2,0,0,0,4,151], +"classmpl_1_1impl_1_1topology__communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf":[2,0,0,0,4,48], +"classmpl_1_1impl_1_1topology__communicator.html#aa541e7830014dce23eb1ce5f6bcfe281":[2,0,0,0,4,46], +"classmpl_1_1impl_1_1topology__communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca":[2,0,0,0,4,150], +"classmpl_1_1impl_1_1topology__communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42":[2,0,0,0,4,163], +"classmpl_1_1impl_1_1topology__communicator.html#aa91aed6395fdcbb40788323a4cf45110":[2,0,0,0,4,76], +"classmpl_1_1impl_1_1topology__communicator.html#aaa714c0902d770205ee9cfb636f20fed":[2,0,0,0,4,155], +"classmpl_1_1impl_1_1topology__communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f":[2,0,0,0,4,174], +"classmpl_1_1impl_1_1topology__communicator.html#aad369f0de0b51dc3cf7992ed26c0799d":[2,0,0,0,4,58], +"classmpl_1_1impl_1_1topology__communicator.html#aad40f322ef427d759fe699b1318c3103":[2,0,0,0,4,79], +"classmpl_1_1impl_1_1topology__communicator.html#aadb9f14a7a9f9bd44eae7832daed895d":[2,0,0,0,4,51], +"classmpl_1_1impl_1_1topology__communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2":[2,0,0,0,4,117], +"classmpl_1_1impl_1_1topology__communicator.html#aae3643fa3e833c9dfb4eaf871235aed3":[2,0,0,0,4,148], +"classmpl_1_1impl_1_1topology__communicator.html#aaf647eec3afe83caf2afafe5a82b405a":[2,0,0,0,4,114], +"classmpl_1_1impl_1_1topology__communicator.html#aafb144ba1a5494f2a21de28c50b3ab91":[2,0,0,0,4,24], +"classmpl_1_1impl_1_1topology__communicator.html#aba77e505c9c19f3c6acdf10d4bc9fe16":[2,0,0,0,4,81], +"classmpl_1_1impl_1_1topology__communicator.html#aba80b0971e6f8d2f04d1454f389833be":[2,0,0,0,4,166], +"classmpl_1_1impl_1_1topology__communicator.html#abb0001ba1ee4c2fbd53038bde821e647":[2,0,0,0,4,101], +"classmpl_1_1impl_1_1topology__communicator.html#abb3d36d582c7a469b5e49dca53c4f952":[2,0,0,0,4,36], +"classmpl_1_1impl_1_1topology__communicator.html#abbc79395f9583143b1427c2e3f1c6637":[2,0,0,0,4,138], +"classmpl_1_1impl_1_1topology__communicator.html#abdb6d8fc8a9aafabf50b96275f09775d":[2,0,0,0,4,92], +"classmpl_1_1impl_1_1topology__communicator.html#abe1bd8f32c690ee7a31456da2c437bdf":[2,0,0,0,4,181], +"classmpl_1_1impl_1_1topology__communicator.html#abe91007be7acef7641d6cbb08526d53b":[2,0,0,0,4,52], +"classmpl_1_1impl_1_1topology__communicator.html#abeb99f29459a82f9027dfc8b4bd60add":[2,0,0,0,4,184], +"classmpl_1_1impl_1_1topology__communicator.html#ac402242f2ad68dbce183e60cfcc82382":[2,0,0,0,4,178], +"classmpl_1_1impl_1_1topology__communicator.html#ac43f72ca3930976c113403fd465087b0":[2,0,0,0,4,22], +"classmpl_1_1impl_1_1topology__communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5":[2,0,0,0,4,19], +"classmpl_1_1impl_1_1topology__communicator.html#ac4b1db52070739de82b25f972b9e6996":[2,0,0,0,4,35], +"classmpl_1_1impl_1_1topology__communicator.html#ac514a6fe8a481f7120bc1d105c09ee96":[2,0,0,0,4,106], +"classmpl_1_1impl_1_1topology__communicator.html#ac7cb886dc70531a897bce6396c9a6e7e":[2,0,0,0,4,83], +"classmpl_1_1impl_1_1topology__communicator.html#acbe2058694618ea2c085d03bcaf4946c":[2,0,0,0,4,34], +"classmpl_1_1impl_1_1topology__communicator.html#acce39280ea657a7d9e5d675631cf7a12":[2,0,0,0,4,57], +"classmpl_1_1impl_1_1topology__communicator.html#acdeb1107c64614728b6c2cc0e65075bf":[2,0,0,0,4,118] }; diff --git a/docs/html/navtreeindex5.js b/docs/html/navtreeindex5.js index 3444e036..b0e5bd37 100644 --- a/docs/html/navtreeindex5.js +++ b/docs/html/navtreeindex5.js @@ -1,253 +1,253 @@ var NAVTREEINDEX5 = { -"classmpl_1_1distributed__graph__communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c":[3,0,0,14,75], -"classmpl_1_1distributed__graph__communicator.html#a5ce91750a7c77edf43e53ac88e4e8524":[3,0,0,14,53], -"classmpl_1_1distributed__graph__communicator.html#a5ce91750a7c77edf43e53ac88e4e8524":[2,0,0,15,53], -"classmpl_1_1distributed__graph__communicator.html#a5ceb8a7771930409a0b7c54042b49866":[2,0,0,15,93], -"classmpl_1_1distributed__graph__communicator.html#a5ceb8a7771930409a0b7c54042b49866":[3,0,0,14,93], -"classmpl_1_1distributed__graph__communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec":[2,0,0,15,24], -"classmpl_1_1distributed__graph__communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec":[3,0,0,14,24], -"classmpl_1_1distributed__graph__communicator.html#a601c251b4c10c6797af3cd741dea4d55":[2,0,0,15,47], -"classmpl_1_1distributed__graph__communicator.html#a601c251b4c10c6797af3cd741dea4d55":[3,0,0,14,47], -"classmpl_1_1distributed__graph__communicator.html#a6149ac444daf9efa0818c1ad86df03f4":[3,0,0,14,189], -"classmpl_1_1distributed__graph__communicator.html#a6149ac444daf9efa0818c1ad86df03f4":[2,0,0,15,189], -"classmpl_1_1distributed__graph__communicator.html#a61c69fd52a576be43b7331536f54b73f":[2,0,0,15,119], -"classmpl_1_1distributed__graph__communicator.html#a61c69fd52a576be43b7331536f54b73f":[3,0,0,14,119], -"classmpl_1_1distributed__graph__communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2":[2,0,0,15,27], -"classmpl_1_1distributed__graph__communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2":[3,0,0,14,27], -"classmpl_1_1distributed__graph__communicator.html#a636784ef8a1e076a303e3e6279de1e7d":[3,0,0,14,161], -"classmpl_1_1distributed__graph__communicator.html#a636784ef8a1e076a303e3e6279de1e7d":[2,0,0,15,161], -"classmpl_1_1distributed__graph__communicator.html#a65311bd6bde1b8de5b8acf9ae902104a":[3,0,0,14,91], -"classmpl_1_1distributed__graph__communicator.html#a65311bd6bde1b8de5b8acf9ae902104a":[2,0,0,15,91], -"classmpl_1_1distributed__graph__communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3":[2,0,0,15,10], -"classmpl_1_1distributed__graph__communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3":[3,0,0,14,10], -"classmpl_1_1distributed__graph__communicator.html#a67f541a36dee046cc12d15d9133930b7":[3,0,0,14,124], -"classmpl_1_1distributed__graph__communicator.html#a67f541a36dee046cc12d15d9133930b7":[2,0,0,15,124], -"classmpl_1_1distributed__graph__communicator.html#a68996ab5379c9a104572b804633d869e":[2,0,0,15,59], -"classmpl_1_1distributed__graph__communicator.html#a68996ab5379c9a104572b804633d869e":[3,0,0,14,59], -"classmpl_1_1distributed__graph__communicator.html#a693590693b8621565e94abdd6763d5b6":[3,0,0,14,151], -"classmpl_1_1distributed__graph__communicator.html#a693590693b8621565e94abdd6763d5b6":[2,0,0,15,151], -"classmpl_1_1distributed__graph__communicator.html#a69ebec18f9d55bc8e2b6951f97855068":[3,0,0,14,65], -"classmpl_1_1distributed__graph__communicator.html#a69ebec18f9d55bc8e2b6951f97855068":[2,0,0,15,65], -"classmpl_1_1distributed__graph__communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f":[3,0,0,14,78], -"classmpl_1_1distributed__graph__communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f":[2,0,0,15,78], -"classmpl_1_1distributed__graph__communicator.html#a719512973bc590402ac30b10e5227d2b":[2,0,0,15,26], -"classmpl_1_1distributed__graph__communicator.html#a719512973bc590402ac30b10e5227d2b":[3,0,0,14,26], -"classmpl_1_1distributed__graph__communicator.html#a72d2639f200e5a36f1f81df5c499f06f":[3,0,0,14,113], -"classmpl_1_1distributed__graph__communicator.html#a72d2639f200e5a36f1f81df5c499f06f":[2,0,0,15,113], -"classmpl_1_1distributed__graph__communicator.html#a73df8f569865237bc58e2445c7d07742":[3,0,0,14,50], -"classmpl_1_1distributed__graph__communicator.html#a73df8f569865237bc58e2445c7d07742":[2,0,0,15,50], -"classmpl_1_1distributed__graph__communicator.html#a753e8742d27ff29a660b07ee0b90b69e":[2,0,0,15,51], -"classmpl_1_1distributed__graph__communicator.html#a753e8742d27ff29a660b07ee0b90b69e":[3,0,0,14,51], -"classmpl_1_1distributed__graph__communicator.html#a76dbca1b1f6089ee9e07e997b5d79295":[3,0,0,14,74], -"classmpl_1_1distributed__graph__communicator.html#a76dbca1b1f6089ee9e07e997b5d79295":[2,0,0,15,74], -"classmpl_1_1distributed__graph__communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0":[3,0,0,14,185], -"classmpl_1_1distributed__graph__communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0":[2,0,0,15,185], -"classmpl_1_1distributed__graph__communicator.html#a779f215eb82ce71764befaae9918b596":[2,0,0,15,83], -"classmpl_1_1distributed__graph__communicator.html#a779f215eb82ce71764befaae9918b596":[3,0,0,14,83], -"classmpl_1_1distributed__graph__communicator.html#a79e5f4cd63cf9354ceedc4da193e2410":[3,0,0,14,99], -"classmpl_1_1distributed__graph__communicator.html#a79e5f4cd63cf9354ceedc4da193e2410":[2,0,0,15,99], -"classmpl_1_1distributed__graph__communicator.html#a7abdf44a7c377ba7191cb4abc6648afe":[3,0,0,14,61], -"classmpl_1_1distributed__graph__communicator.html#a7abdf44a7c377ba7191cb4abc6648afe":[2,0,0,15,61], -"classmpl_1_1distributed__graph__communicator.html#a7b672d71b83fafca8f6bf4d435331180":[2,0,0,15,35], -"classmpl_1_1distributed__graph__communicator.html#a7b672d71b83fafca8f6bf4d435331180":[3,0,0,14,35], -"classmpl_1_1distributed__graph__communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af":[2,0,0,15,177], -"classmpl_1_1distributed__graph__communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af":[3,0,0,14,177], -"classmpl_1_1distributed__graph__communicator.html#a7eddabba5f98c99db189844854690d13":[2,0,0,15,69], -"classmpl_1_1distributed__graph__communicator.html#a7eddabba5f98c99db189844854690d13":[3,0,0,14,69], -"classmpl_1_1distributed__graph__communicator.html#a82b6f15cef4c0daa6825bc699418df22":[3,0,0,14,97], -"classmpl_1_1distributed__graph__communicator.html#a82b6f15cef4c0daa6825bc699418df22":[2,0,0,15,97], -"classmpl_1_1distributed__graph__communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9":[3,0,0,14,37], -"classmpl_1_1distributed__graph__communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9":[2,0,0,15,37], -"classmpl_1_1distributed__graph__communicator.html#a871cba17f8d1891fb0613f9a23c38866":[3,0,0,14,197], -"classmpl_1_1distributed__graph__communicator.html#a871cba17f8d1891fb0613f9a23c38866":[2,0,0,15,197], -"classmpl_1_1distributed__graph__communicator.html#a88368d3f4d7b375825ba839746aea7dd":[3,0,0,14,19], -"classmpl_1_1distributed__graph__communicator.html#a88368d3f4d7b375825ba839746aea7dd":[2,0,0,15,19], -"classmpl_1_1distributed__graph__communicator.html#a89b9a55af5259f119281592b4f63f2ee":[2,0,0,15,130], -"classmpl_1_1distributed__graph__communicator.html#a89b9a55af5259f119281592b4f63f2ee":[3,0,0,14,130], -"classmpl_1_1distributed__graph__communicator.html#a8e43e08af5e8481049731092274aca76":[3,0,0,14,72], -"classmpl_1_1distributed__graph__communicator.html#a8e43e08af5e8481049731092274aca76":[2,0,0,15,72], -"classmpl_1_1distributed__graph__communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b":[3,0,0,14,171], -"classmpl_1_1distributed__graph__communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b":[2,0,0,15,171], -"classmpl_1_1distributed__graph__communicator.html#a95d5c90f2a58fe228d846942fe700645":[2,0,0,15,49], -"classmpl_1_1distributed__graph__communicator.html#a95d5c90f2a58fe228d846942fe700645":[3,0,0,14,49], -"classmpl_1_1distributed__graph__communicator.html#a970647a9680c6bdc3ffbe0814b32f989":[3,0,0,14,108], -"classmpl_1_1distributed__graph__communicator.html#a970647a9680c6bdc3ffbe0814b32f989":[2,0,0,15,108], -"classmpl_1_1distributed__graph__communicator.html#a997e3a727642f7fe7ab74a7342fa334b":[3,0,0,14,13], -"classmpl_1_1distributed__graph__communicator.html#a997e3a727642f7fe7ab74a7342fa334b":[2,0,0,15,13], -"classmpl_1_1distributed__graph__communicator.html#a9dccde1bf10e911c3a00d1a546005e94":[3,0,0,14,89], -"classmpl_1_1distributed__graph__communicator.html#a9dccde1bf10e911c3a00d1a546005e94":[2,0,0,15,89], -"classmpl_1_1distributed__graph__communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d":[3,0,0,14,158], -"classmpl_1_1distributed__graph__communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d":[2,0,0,15,158], -"classmpl_1_1distributed__graph__communicator.html#a9fbb87f9933ff071092164c9e264d817":[3,0,0,14,121], -"classmpl_1_1distributed__graph__communicator.html#a9fbb87f9933ff071092164c9e264d817":[2,0,0,15,121], -"classmpl_1_1distributed__graph__communicator.html#aa018e93fa8e391b0f7ac34ad707a64fe":[2,0,0,15,84], -"classmpl_1_1distributed__graph__communicator.html#aa018e93fa8e391b0f7ac34ad707a64fe":[3,0,0,14,84], -"classmpl_1_1distributed__graph__communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6":[2,0,0,15,172], -"classmpl_1_1distributed__graph__communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6":[3,0,0,14,172], -"classmpl_1_1distributed__graph__communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5":[2,0,0,15,187], -"classmpl_1_1distributed__graph__communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5":[3,0,0,14,187], -"classmpl_1_1distributed__graph__communicator.html#aa2b51b89d72555ebfb1862d1de688061":[3,0,0,14,56], -"classmpl_1_1distributed__graph__communicator.html#aa2b51b89d72555ebfb1862d1de688061":[2,0,0,15,56], -"classmpl_1_1distributed__graph__communicator.html#aa4407a90c2f598867b36e8e557b72ec0":[3,0,0,14,163], -"classmpl_1_1distributed__graph__communicator.html#aa4407a90c2f598867b36e8e557b72ec0":[2,0,0,15,163], -"classmpl_1_1distributed__graph__communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf":[3,0,0,14,54], -"classmpl_1_1distributed__graph__communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf":[2,0,0,15,54], -"classmpl_1_1distributed__graph__communicator.html#aa541e7830014dce23eb1ce5f6bcfe281":[2,0,0,15,52], -"classmpl_1_1distributed__graph__communicator.html#aa541e7830014dce23eb1ce5f6bcfe281":[3,0,0,14,52], -"classmpl_1_1distributed__graph__communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca":[2,0,0,15,162], -"classmpl_1_1distributed__graph__communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca":[3,0,0,14,162], -"classmpl_1_1distributed__graph__communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42":[2,0,0,15,175], -"classmpl_1_1distributed__graph__communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42":[3,0,0,14,175], -"classmpl_1_1distributed__graph__communicator.html#aa91aed6395fdcbb40788323a4cf45110":[2,0,0,15,82], -"classmpl_1_1distributed__graph__communicator.html#aa91aed6395fdcbb40788323a4cf45110":[3,0,0,14,82], -"classmpl_1_1distributed__graph__communicator.html#aaa714c0902d770205ee9cfb636f20fed":[2,0,0,15,167], -"classmpl_1_1distributed__graph__communicator.html#aaa714c0902d770205ee9cfb636f20fed":[3,0,0,14,167], -"classmpl_1_1distributed__graph__communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f":[3,0,0,14,186], -"classmpl_1_1distributed__graph__communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f":[2,0,0,15,186], -"classmpl_1_1distributed__graph__communicator.html#aad369f0de0b51dc3cf7992ed26c0799d":[3,0,0,14,64], -"classmpl_1_1distributed__graph__communicator.html#aad369f0de0b51dc3cf7992ed26c0799d":[2,0,0,15,64], -"classmpl_1_1distributed__graph__communicator.html#aad40f322ef427d759fe699b1318c3103":[2,0,0,15,88], -"classmpl_1_1distributed__graph__communicator.html#aad40f322ef427d759fe699b1318c3103":[3,0,0,14,88], -"classmpl_1_1distributed__graph__communicator.html#aadb9f14a7a9f9bd44eae7832daed895d":[3,0,0,14,57], -"classmpl_1_1distributed__graph__communicator.html#aadb9f14a7a9f9bd44eae7832daed895d":[2,0,0,15,57], -"classmpl_1_1distributed__graph__communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2":[3,0,0,14,126], -"classmpl_1_1distributed__graph__communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2":[2,0,0,15,126], -"classmpl_1_1distributed__graph__communicator.html#aae3643fa3e833c9dfb4eaf871235aed3":[2,0,0,15,160], -"classmpl_1_1distributed__graph__communicator.html#aae3643fa3e833c9dfb4eaf871235aed3":[3,0,0,14,160], -"classmpl_1_1distributed__graph__communicator.html#aaf647eec3afe83caf2afafe5a82b405a":[2,0,0,15,123], -"classmpl_1_1distributed__graph__communicator.html#aaf647eec3afe83caf2afafe5a82b405a":[3,0,0,14,123], -"classmpl_1_1distributed__graph__communicator.html#aafb144ba1a5494f2a21de28c50b3ab91":[3,0,0,14,30], -"classmpl_1_1distributed__graph__communicator.html#aafb144ba1a5494f2a21de28c50b3ab91":[2,0,0,15,30], -"classmpl_1_1distributed__graph__communicator.html#aba77e505c9c19f3c6acdf10d4bc9fe16":[2,0,0,15,90], -"classmpl_1_1distributed__graph__communicator.html#aba77e505c9c19f3c6acdf10d4bc9fe16":[3,0,0,14,90], -"classmpl_1_1distributed__graph__communicator.html#aba80b0971e6f8d2f04d1454f389833be":[3,0,0,14,178], -"classmpl_1_1distributed__graph__communicator.html#aba80b0971e6f8d2f04d1454f389833be":[2,0,0,15,178], -"classmpl_1_1distributed__graph__communicator.html#abb0001ba1ee4c2fbd53038bde821e647":[3,0,0,14,110], -"classmpl_1_1distributed__graph__communicator.html#abb0001ba1ee4c2fbd53038bde821e647":[2,0,0,15,110], -"classmpl_1_1distributed__graph__communicator.html#abb3d36d582c7a469b5e49dca53c4f952":[2,0,0,15,42], -"classmpl_1_1distributed__graph__communicator.html#abb3d36d582c7a469b5e49dca53c4f952":[3,0,0,14,42], -"classmpl_1_1distributed__graph__communicator.html#abbc79395f9583143b1427c2e3f1c6637":[2,0,0,15,150], -"classmpl_1_1distributed__graph__communicator.html#abbc79395f9583143b1427c2e3f1c6637":[3,0,0,14,150], -"classmpl_1_1distributed__graph__communicator.html#abdb6d8fc8a9aafabf50b96275f09775d":[3,0,0,14,101], -"classmpl_1_1distributed__graph__communicator.html#abdb6d8fc8a9aafabf50b96275f09775d":[2,0,0,15,101], -"classmpl_1_1distributed__graph__communicator.html#abe1bd8f32c690ee7a31456da2c437bdf":[3,0,0,14,193], -"classmpl_1_1distributed__graph__communicator.html#abe1bd8f32c690ee7a31456da2c437bdf":[2,0,0,15,193], -"classmpl_1_1distributed__graph__communicator.html#abe91007be7acef7641d6cbb08526d53b":[3,0,0,14,58], -"classmpl_1_1distributed__graph__communicator.html#abe91007be7acef7641d6cbb08526d53b":[2,0,0,15,58], -"classmpl_1_1distributed__graph__communicator.html#abeb99f29459a82f9027dfc8b4bd60add":[2,0,0,15,196], -"classmpl_1_1distributed__graph__communicator.html#abeb99f29459a82f9027dfc8b4bd60add":[3,0,0,14,196], -"classmpl_1_1distributed__graph__communicator.html#ac402242f2ad68dbce183e60cfcc82382":[3,0,0,14,190], -"classmpl_1_1distributed__graph__communicator.html#ac402242f2ad68dbce183e60cfcc82382":[2,0,0,15,190], -"classmpl_1_1distributed__graph__communicator.html#ac43f72ca3930976c113403fd465087b0":[2,0,0,15,28], -"classmpl_1_1distributed__graph__communicator.html#ac43f72ca3930976c113403fd465087b0":[3,0,0,14,28], -"classmpl_1_1distributed__graph__communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5":[3,0,0,14,25], -"classmpl_1_1distributed__graph__communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5":[2,0,0,15,25], -"classmpl_1_1distributed__graph__communicator.html#ac4b1db52070739de82b25f972b9e6996":[3,0,0,14,41], -"classmpl_1_1distributed__graph__communicator.html#ac4b1db52070739de82b25f972b9e6996":[2,0,0,15,41], -"classmpl_1_1distributed__graph__communicator.html#ac514a6fe8a481f7120bc1d105c09ee96":[3,0,0,14,115], -"classmpl_1_1distributed__graph__communicator.html#ac514a6fe8a481f7120bc1d105c09ee96":[2,0,0,15,115], -"classmpl_1_1distributed__graph__communicator.html#ac7cb886dc70531a897bce6396c9a6e7e":[3,0,0,14,92], -"classmpl_1_1distributed__graph__communicator.html#ac7cb886dc70531a897bce6396c9a6e7e":[2,0,0,15,92], -"classmpl_1_1distributed__graph__communicator.html#ac8b0b4aa6e6c4e23ebd807ef809dad6b":[2,0,0,15,86], -"classmpl_1_1distributed__graph__communicator.html#ac8b0b4aa6e6c4e23ebd807ef809dad6b":[3,0,0,14,86], -"classmpl_1_1distributed__graph__communicator.html#acbe2058694618ea2c085d03bcaf4946c":[3,0,0,14,40], -"classmpl_1_1distributed__graph__communicator.html#acbe2058694618ea2c085d03bcaf4946c":[2,0,0,15,40], -"classmpl_1_1distributed__graph__communicator.html#acce39280ea657a7d9e5d675631cf7a12":[3,0,0,14,63], -"classmpl_1_1distributed__graph__communicator.html#acce39280ea657a7d9e5d675631cf7a12":[2,0,0,15,63], -"classmpl_1_1distributed__graph__communicator.html#acdeb1107c64614728b6c2cc0e65075bf":[3,0,0,14,127], -"classmpl_1_1distributed__graph__communicator.html#acdeb1107c64614728b6c2cc0e65075bf":[2,0,0,15,127], -"classmpl_1_1distributed__graph__communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47":[3,0,0,14,48], -"classmpl_1_1distributed__graph__communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47":[2,0,0,15,48], -"classmpl_1_1distributed__graph__communicator.html#ad15575d951e6a6c4327052e2ff01730f":[3,0,0,14,55], -"classmpl_1_1distributed__graph__communicator.html#ad15575d951e6a6c4327052e2ff01730f":[2,0,0,15,55], -"classmpl_1_1distributed__graph__communicator.html#ad2342955984c4db387d52a5414b212c5":[3,0,0,14,103], -"classmpl_1_1distributed__graph__communicator.html#ad2342955984c4db387d52a5414b212c5":[2,0,0,15,103], -"classmpl_1_1distributed__graph__communicator.html#ad2d304708463bb6f91e1a54b3d87106a":[2,0,0,15,76], -"classmpl_1_1distributed__graph__communicator.html#ad2d304708463bb6f91e1a54b3d87106a":[3,0,0,14,76], -"classmpl_1_1distributed__graph__communicator.html#ad5daeea3d8b7033a2f70cd19582e098a":[3,0,0,14,131], -"classmpl_1_1distributed__graph__communicator.html#ad5daeea3d8b7033a2f70cd19582e098a":[2,0,0,15,131], -"classmpl_1_1distributed__graph__communicator.html#ad67313aace6a05f58081939eb1d2a4b8":[2,0,0,15,38], -"classmpl_1_1distributed__graph__communicator.html#ad67313aace6a05f58081939eb1d2a4b8":[3,0,0,14,38], -"classmpl_1_1distributed__graph__communicator.html#ad709e10e351d9ffd4dd9917a9b697c19":[3,0,0,14,18], -"classmpl_1_1distributed__graph__communicator.html#ad709e10e351d9ffd4dd9917a9b697c19":[2,0,0,15,18], -"classmpl_1_1distributed__graph__communicator.html#ad8c0dc208fd9705a2423346d0baaff58":[2,0,0,15,111], -"classmpl_1_1distributed__graph__communicator.html#ad8c0dc208fd9705a2423346d0baaff58":[3,0,0,14,111], -"classmpl_1_1distributed__graph__communicator.html#ad9dda1e430895757470e09c7ac721dee":[3,0,0,14,21], -"classmpl_1_1distributed__graph__communicator.html#ad9dda1e430895757470e09c7ac721dee":[2,0,0,15,21], -"classmpl_1_1distributed__graph__communicator.html#ada2dc41f3f09788b9dd87be27981668a":[2,0,0,15,139], -"classmpl_1_1distributed__graph__communicator.html#ada2dc41f3f09788b9dd87be27981668a":[3,0,0,14,139], -"classmpl_1_1distributed__graph__communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d":[2,0,0,15,36], -"classmpl_1_1distributed__graph__communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d":[3,0,0,14,36], -"classmpl_1_1distributed__graph__communicator.html#adb4b189592ceb6f3a16c53d48e3071b8":[2,0,0,15,176], -"classmpl_1_1distributed__graph__communicator.html#adb4b189592ceb6f3a16c53d48e3071b8":[3,0,0,14,176], -"classmpl_1_1distributed__graph__communicator.html#adb886db659e8bc352ca70800704b8956":[3,0,0,14,159], -"classmpl_1_1distributed__graph__communicator.html#adb886db659e8bc352ca70800704b8956":[2,0,0,15,159], -"classmpl_1_1distributed__graph__communicator.html#add45a9df6b60973abe8d13b9161c0ed8":[2,0,0,15,153], -"classmpl_1_1distributed__graph__communicator.html#add45a9df6b60973abe8d13b9161c0ed8":[3,0,0,14,153], -"classmpl_1_1distributed__graph__communicator.html#ade499e3631297c5268da93604ec68a94":[2,0,0,15,168], -"classmpl_1_1distributed__graph__communicator.html#ade499e3631297c5268da93604ec68a94":[3,0,0,14,168], -"classmpl_1_1distributed__graph__communicator.html#adf4170f0647e141b72b441c99a5421f5":[3,0,0,14,16], -"classmpl_1_1distributed__graph__communicator.html#adf4170f0647e141b72b441c99a5421f5":[2,0,0,15,16], -"classmpl_1_1distributed__graph__communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597":[3,0,0,14,170], -"classmpl_1_1distributed__graph__communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597":[2,0,0,15,170], -"classmpl_1_1distributed__graph__communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789":[3,0,0,14,148], -"classmpl_1_1distributed__graph__communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789":[2,0,0,15,148], -"classmpl_1_1distributed__graph__communicator.html#ae17e2ec67fab08b09d7c67923fa81b42":[3,0,0,14,44], -"classmpl_1_1distributed__graph__communicator.html#ae17e2ec67fab08b09d7c67923fa81b42":[2,0,0,15,44], -"classmpl_1_1distributed__graph__communicator.html#ae2941001b886519f2d10d0ebb9901e70":[3,0,0,14,31], -"classmpl_1_1distributed__graph__communicator.html#ae2941001b886519f2d10d0ebb9901e70":[2,0,0,15,31], -"classmpl_1_1distributed__graph__communicator.html#ae2bdc9265ab60a53dced1a251b3e5898":[3,0,0,14,195], -"classmpl_1_1distributed__graph__communicator.html#ae2bdc9265ab60a53dced1a251b3e5898":[2,0,0,15,195], -"classmpl_1_1distributed__graph__communicator.html#ae35acd56966f491923a80abbc13fe74a":[2,0,0,15,109], -"classmpl_1_1distributed__graph__communicator.html#ae35acd56966f491923a80abbc13fe74a":[3,0,0,14,109], -"classmpl_1_1distributed__graph__communicator.html#ae4313c9f339d60a7c2fa1148a97626c9":[3,0,0,14,142], -"classmpl_1_1distributed__graph__communicator.html#ae4313c9f339d60a7c2fa1148a97626c9":[2,0,0,15,142], -"classmpl_1_1distributed__graph__communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3":[2,0,0,15,29], -"classmpl_1_1distributed__graph__communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3":[3,0,0,14,29], -"classmpl_1_1distributed__graph__communicator.html#ae6e7de007099b7dc579f638a39d56911":[3,0,0,14,106], -"classmpl_1_1distributed__graph__communicator.html#ae6e7de007099b7dc579f638a39d56911":[2,0,0,15,106], -"classmpl_1_1distributed__graph__communicator.html#ae71687a9aa6bac6a2b888245aa801020":[2,0,0,15,81], -"classmpl_1_1distributed__graph__communicator.html#ae71687a9aa6bac6a2b888245aa801020":[3,0,0,14,81], -"classmpl_1_1distributed__graph__communicator.html#aea3f30e3e33676cfbd8f3757082949cd":[3,0,0,14,141], -"classmpl_1_1distributed__graph__communicator.html#aea3f30e3e33676cfbd8f3757082949cd":[2,0,0,15,141], -"classmpl_1_1distributed__graph__communicator.html#aed2415ddb3e27cce97fd5317f781a86c":[2,0,0,15,157], -"classmpl_1_1distributed__graph__communicator.html#aed2415ddb3e27cce97fd5317f781a86c":[3,0,0,14,157], -"classmpl_1_1distributed__graph__communicator.html#af11d56af7c3459eac6b3f5285788c8b9":[2,0,0,15,132], -"classmpl_1_1distributed__graph__communicator.html#af11d56af7c3459eac6b3f5285788c8b9":[3,0,0,14,132], -"classmpl_1_1distributed__graph__communicator.html#af1d52b673c059c284806768be1240afc":[3,0,0,14,45], -"classmpl_1_1distributed__graph__communicator.html#af1d52b673c059c284806768be1240afc":[2,0,0,15,45], -"classmpl_1_1distributed__graph__communicator.html#af3ce31d403e1e2c143acb593ca1b21c2":[3,0,0,14,134], -"classmpl_1_1distributed__graph__communicator.html#af3ce31d403e1e2c143acb593ca1b21c2":[2,0,0,15,134], -"classmpl_1_1distributed__graph__communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f":[3,0,0,14,147], -"classmpl_1_1distributed__graph__communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f":[2,0,0,15,147], -"classmpl_1_1distributed__graph__communicator.html#af43c205c247a23c35ec015b257f10a6e":[2,0,0,15,43], -"classmpl_1_1distributed__graph__communicator.html#af43c205c247a23c35ec015b257f10a6e":[3,0,0,14,43], -"classmpl_1_1distributed__graph__communicator.html#af5822b089b634a670a9f3cef6e37dcef":[2,0,0,15,135], -"classmpl_1_1distributed__graph__communicator.html#af5822b089b634a670a9f3cef6e37dcef":[3,0,0,14,135], -"classmpl_1_1distributed__graph__communicator.html#af66054a704ac25557aa25b356e8abd63":[2,0,0,15,2], -"classmpl_1_1distributed__graph__communicator.html#af66054a704ac25557aa25b356e8abd63":[3,0,0,14,2], -"classmpl_1_1distributed__graph__communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703":[2,0,0,15,2,2], -"classmpl_1_1distributed__graph__communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703":[3,0,0,14,2,2], -"classmpl_1_1distributed__graph__communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29":[2,0,0,15,2,3], -"classmpl_1_1distributed__graph__communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29":[3,0,0,14,2,3], -"classmpl_1_1distributed__graph__communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac":[2,0,0,15,2,1], -"classmpl_1_1distributed__graph__communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac":[3,0,0,14,2,1], -"classmpl_1_1distributed__graph__communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8":[2,0,0,15,2,0], -"classmpl_1_1distributed__graph__communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8":[3,0,0,14,2,0], -"classmpl_1_1distributed__graph__communicator.html#af786635362fca5a0f915771332383589":[2,0,0,15,112], -"classmpl_1_1distributed__graph__communicator.html#af786635362fca5a0f915771332383589":[3,0,0,14,112], -"classmpl_1_1distributed__graph__communicator.html#afa3fdbce27f981366ddd913b496c7023":[2,0,0,15,85], -"classmpl_1_1distributed__graph__communicator.html#afa3fdbce27f981366ddd913b496c7023":[3,0,0,14,85], -"classmpl_1_1distributed__graph__communicator.html#afcb7048f892b4c371bba2e261e565656":[3,0,0,14,22], -"classmpl_1_1distributed__graph__communicator.html#afcb7048f892b4c371bba2e261e565656":[2,0,0,15,22], -"classmpl_1_1distributed__graph__communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3":[2,0,0,15,116], -"classmpl_1_1distributed__graph__communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3":[3,0,0,14,116], -"classmpl_1_1distributed__graph__communicator.html#afe6c73aa613bf07ed4790210f10a0f1c":[2,0,0,15,173], -"classmpl_1_1distributed__graph__communicator.html#afe6c73aa613bf07ed4790210f10a0f1c":[3,0,0,14,173], -"classmpl_1_1distributed__graph__communicator.html#afe84efb5ffee5860ab38c3a4d87ec65a":[3,0,0,14,143], -"classmpl_1_1distributed__graph__communicator.html#afe84efb5ffee5860ab38c3a4d87ec65a":[2,0,0,15,143], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html":[2,0,0,15,0], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html":[3,0,0,14,0], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a16981b82ed0e23bc5ee44294fec1b4af":[2,0,0,15,0,7] +"classmpl_1_1impl_1_1topology__communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47":[2,0,0,0,4,42], +"classmpl_1_1impl_1_1topology__communicator.html#ad15575d951e6a6c4327052e2ff01730f":[2,0,0,0,4,49], +"classmpl_1_1impl_1_1topology__communicator.html#ad2342955984c4db387d52a5414b212c5":[2,0,0,0,4,94], +"classmpl_1_1impl_1_1topology__communicator.html#ad2d304708463bb6f91e1a54b3d87106a":[2,0,0,0,4,70], +"classmpl_1_1impl_1_1topology__communicator.html#ad5daeea3d8b7033a2f70cd19582e098a":[2,0,0,0,4,122], +"classmpl_1_1impl_1_1topology__communicator.html#ad67313aace6a05f58081939eb1d2a4b8":[2,0,0,0,4,32], +"classmpl_1_1impl_1_1topology__communicator.html#ad709e10e351d9ffd4dd9917a9b697c19":[2,0,0,0,4,12], +"classmpl_1_1impl_1_1topology__communicator.html#ad8c0dc208fd9705a2423346d0baaff58":[2,0,0,0,4,102], +"classmpl_1_1impl_1_1topology__communicator.html#ad9dda1e430895757470e09c7ac721dee":[2,0,0,0,4,15], +"classmpl_1_1impl_1_1topology__communicator.html#ada2dc41f3f09788b9dd87be27981668a":[2,0,0,0,4,130], +"classmpl_1_1impl_1_1topology__communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d":[2,0,0,0,4,30], +"classmpl_1_1impl_1_1topology__communicator.html#adb4b189592ceb6f3a16c53d48e3071b8":[2,0,0,0,4,164], +"classmpl_1_1impl_1_1topology__communicator.html#adb886db659e8bc352ca70800704b8956":[2,0,0,0,4,147], +"classmpl_1_1impl_1_1topology__communicator.html#add45a9df6b60973abe8d13b9161c0ed8":[2,0,0,0,4,141], +"classmpl_1_1impl_1_1topology__communicator.html#ade499e3631297c5268da93604ec68a94":[2,0,0,0,4,156], +"classmpl_1_1impl_1_1topology__communicator.html#adf4170f0647e141b72b441c99a5421f5":[2,0,0,0,4,10], +"classmpl_1_1impl_1_1topology__communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597":[2,0,0,0,4,158], +"classmpl_1_1impl_1_1topology__communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789":[2,0,0,0,4,136], +"classmpl_1_1impl_1_1topology__communicator.html#ae17e2ec67fab08b09d7c67923fa81b42":[2,0,0,0,4,38], +"classmpl_1_1impl_1_1topology__communicator.html#ae2941001b886519f2d10d0ebb9901e70":[2,0,0,0,4,25], +"classmpl_1_1impl_1_1topology__communicator.html#ae2bdc9265ab60a53dced1a251b3e5898":[2,0,0,0,4,183], +"classmpl_1_1impl_1_1topology__communicator.html#ae35acd56966f491923a80abbc13fe74a":[2,0,0,0,4,100], +"classmpl_1_1impl_1_1topology__communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3":[2,0,0,0,4,23], +"classmpl_1_1impl_1_1topology__communicator.html#ae6e7de007099b7dc579f638a39d56911":[2,0,0,0,4,97], +"classmpl_1_1impl_1_1topology__communicator.html#ae71687a9aa6bac6a2b888245aa801020":[2,0,0,0,4,75], +"classmpl_1_1impl_1_1topology__communicator.html#aea3f30e3e33676cfbd8f3757082949cd":[2,0,0,0,4,132], +"classmpl_1_1impl_1_1topology__communicator.html#aed2415ddb3e27cce97fd5317f781a86c":[2,0,0,0,4,145], +"classmpl_1_1impl_1_1topology__communicator.html#af11d56af7c3459eac6b3f5285788c8b9":[2,0,0,0,4,123], +"classmpl_1_1impl_1_1topology__communicator.html#af1d52b673c059c284806768be1240afc":[2,0,0,0,4,39], +"classmpl_1_1impl_1_1topology__communicator.html#af3ce31d403e1e2c143acb593ca1b21c2":[2,0,0,0,4,125], +"classmpl_1_1impl_1_1topology__communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f":[2,0,0,0,4,135], +"classmpl_1_1impl_1_1topology__communicator.html#af43c205c247a23c35ec015b257f10a6e":[2,0,0,0,4,37], +"classmpl_1_1impl_1_1topology__communicator.html#af5822b089b634a670a9f3cef6e37dcef":[2,0,0,0,4,126], +"classmpl_1_1impl_1_1topology__communicator.html#af66054a704ac25557aa25b356e8abd63":[2,0,0,0,4,0], +"classmpl_1_1impl_1_1topology__communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703":[2,0,0,0,4,0,2], +"classmpl_1_1impl_1_1topology__communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29":[2,0,0,0,4,0,3], +"classmpl_1_1impl_1_1topology__communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac":[2,0,0,0,4,0,1], +"classmpl_1_1impl_1_1topology__communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8":[2,0,0,0,4,0,0], +"classmpl_1_1impl_1_1topology__communicator.html#af786635362fca5a0f915771332383589":[2,0,0,0,4,103], +"classmpl_1_1impl_1_1topology__communicator.html#afcb7048f892b4c371bba2e261e565656":[2,0,0,0,4,16], +"classmpl_1_1impl_1_1topology__communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3":[2,0,0,0,4,107], +"classmpl_1_1impl_1_1topology__communicator.html#afe6c73aa613bf07ed4790210f10a0f1c":[2,0,0,0,4,161], +"classmpl_1_1indexed__block__layout.html":[2,0,0,23], +"classmpl_1_1indexed__block__layout.html#a0397342ecc9d8e57d7e7443971966e2c":[2,0,0,23,13], +"classmpl_1_1indexed__block__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,23,8], +"classmpl_1_1indexed__block__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,23,20], +"classmpl_1_1indexed__block__layout.html#a09471a11699169f30d5165bbe912cf8a":[2,0,0,23,3], +"classmpl_1_1indexed__block__layout.html#a1dc6994a6a2609d758a2311557a29998":[2,0,0,23,4], +"classmpl_1_1indexed__block__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,23,18], +"classmpl_1_1indexed__block__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,23,23], +"classmpl_1_1indexed__block__layout.html#a2e7623e83f661a3948ca83f797149070":[2,0,0,23,15], +"classmpl_1_1indexed__block__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,23,17], +"classmpl_1_1indexed__block__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,23,21], +"classmpl_1_1indexed__block__layout.html#a53a1cb6e0006c275f9780191ceade271":[2,0,0,23,1], +"classmpl_1_1indexed__block__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,23,11], +"classmpl_1_1indexed__block__layout.html#a74478123f3da83ff60414e723836f46a":[2,0,0,23,12], +"classmpl_1_1indexed__block__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,23,22], +"classmpl_1_1indexed__block__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,23,6], +"classmpl_1_1indexed__block__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,23,9], +"classmpl_1_1indexed__block__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,23,7], +"classmpl_1_1indexed__block__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,23,14], +"classmpl_1_1indexed__block__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,23,16], +"classmpl_1_1indexed__block__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,23,10], +"classmpl_1_1indexed__block__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,23,19], +"classmpl_1_1indexed__block__layout.html#ae555bc8d3b95d9180a65668f9caece8e":[2,0,0,23,5], +"classmpl_1_1indexed__block__layout.html#afe8a5303c144ec5b1b19c7d71cc90e99":[2,0,0,23,2], +"classmpl_1_1indexed__block__layout_1_1parameter.html":[2,0,0,23,0], +"classmpl_1_1indexed__block__layout_1_1parameter.html#a3f34394906bb3098855aee75cf44edd3":[2,0,0,23,0,3], +"classmpl_1_1indexed__block__layout_1_1parameter.html#a4b2073a35551d6b746134e15f19dbbc5":[2,0,0,23,0,1], +"classmpl_1_1indexed__block__layout_1_1parameter.html#a5bb1c084eb68e977508c6982b270af5b":[2,0,0,23,0,2], +"classmpl_1_1indexed__block__layout_1_1parameter.html#a702595e25a34275d3057c27dae064688":[2,0,0,23,0,0], +"classmpl_1_1indexed__layout.html":[2,0,0,24], +"classmpl_1_1indexed__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,24,8], +"classmpl_1_1indexed__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,24,20], +"classmpl_1_1indexed__layout.html#a1b604ca3e6e607f1e7c33d771c88d275":[2,0,0,24,13], +"classmpl_1_1indexed__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,24,18], +"classmpl_1_1indexed__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,24,23], +"classmpl_1_1indexed__layout.html#a2ef13d7c3e8178574a15db51056df13e":[2,0,0,24,12], +"classmpl_1_1indexed__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,24,17], +"classmpl_1_1indexed__layout.html#a4814730ccbda9d2c8f4a00c76466bcf4":[2,0,0,24,3], +"classmpl_1_1indexed__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,24,21], +"classmpl_1_1indexed__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,24,11], +"classmpl_1_1indexed__layout.html#a637fa395f20bf6a7b06f33fe8477716a":[2,0,0,24,2], +"classmpl_1_1indexed__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,24,22], +"classmpl_1_1indexed__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,24,6], +"classmpl_1_1indexed__layout.html#a8193a18df935777de33730ecda553f18":[2,0,0,24,1], +"classmpl_1_1indexed__layout.html#a91ad5d974413ad678d1bfd10e403f31f":[2,0,0,24,5], +"classmpl_1_1indexed__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,24,9], +"classmpl_1_1indexed__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,24,7], +"classmpl_1_1indexed__layout.html#aaca95a4fc535798296b2287e87934820":[2,0,0,24,15], +"classmpl_1_1indexed__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,24,14], +"classmpl_1_1indexed__layout.html#ab1ced466b429dc64c875e27b57763b46":[2,0,0,24,4], +"classmpl_1_1indexed__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,24,16], +"classmpl_1_1indexed__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,24,10], +"classmpl_1_1indexed__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,24,19], +"classmpl_1_1indexed__layout_1_1parameter.html":[2,0,0,24,0], +"classmpl_1_1indexed__layout_1_1parameter.html#a00e184b92d6c09a49438d48979194f99":[2,0,0,24,0,3], +"classmpl_1_1indexed__layout_1_1parameter.html#a200ede70b91a8a0ef5cf50cfa52e8635":[2,0,0,24,0,0], +"classmpl_1_1indexed__layout_1_1parameter.html#a6062daa18018ab29118a60a86bf54937":[2,0,0,24,0,1], +"classmpl_1_1indexed__layout_1_1parameter.html#a663702e0127ea25518e32acbbf95c7c9":[2,0,0,24,0,2], +"classmpl_1_1invalid__argument.html":[2,0,0,25], +"classmpl_1_1invalid__argument.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,25,0], +"classmpl_1_1invalid__count.html":[2,0,0,26], +"classmpl_1_1invalid__count.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,26,0], +"classmpl_1_1invalid__datatype__bound.html":[2,0,0,27], +"classmpl_1_1invalid__datatype__bound.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,27,0], +"classmpl_1_1invalid__dim.html":[2,0,0,28], +"classmpl_1_1invalid__dim.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,28,0], +"classmpl_1_1invalid__layout.html":[2,0,0,29], +"classmpl_1_1invalid__layout.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,29,0], +"classmpl_1_1invalid__rank.html":[2,0,0,30], +"classmpl_1_1invalid__rank.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,30,0], +"classmpl_1_1invalid__size.html":[2,0,0,31], +"classmpl_1_1invalid__size.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,31,0], +"classmpl_1_1invalid__tag.html":[2,0,0,32], +"classmpl_1_1invalid__tag.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,32,0], +"classmpl_1_1irequest.html":[2,0,0,33], +"classmpl_1_1irequest__pool.html":[2,0,0,34], +"classmpl_1_1iterator__layout.html":[2,0,0,35], +"classmpl_1_1iterator__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,35,10], +"classmpl_1_1iterator__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,35,22], +"classmpl_1_1iterator__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,35,20], +"classmpl_1_1iterator__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,35,25], +"classmpl_1_1iterator__layout.html#a3d55526b2176cdb3c067b65d3c301183":[2,0,0,35,4], +"classmpl_1_1iterator__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,35,19], +"classmpl_1_1iterator__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,35,23], +"classmpl_1_1iterator__layout.html#a54214c5c1248484bed83aba2aa4c1dc6":[2,0,0,35,3], +"classmpl_1_1iterator__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,35,13], +"classmpl_1_1iterator__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,35,24], +"classmpl_1_1iterator__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,35,8], +"classmpl_1_1iterator__layout.html#a863e369b02d60dd0d7058ed9ff6fb56c":[2,0,0,35,2], +"classmpl_1_1iterator__layout.html#a89ead1f759da22664d13f1c915dc8cd8":[2,0,0,35,6], +"classmpl_1_1iterator__layout.html#a9845f240dca4a7f7cfee5ac8f8c4cb09":[2,0,0,35,1], +"classmpl_1_1iterator__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,35,11], +"classmpl_1_1iterator__layout.html#aa065b1d83d11439b548ca9c67ce2b55a":[2,0,0,35,17], +"classmpl_1_1iterator__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,35,9], +"classmpl_1_1iterator__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,35,16], +"classmpl_1_1iterator__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,35,18], +"classmpl_1_1iterator__layout.html#ab6a4de59b8716604d3fd66fd7e708300":[2,0,0,35,5], +"classmpl_1_1iterator__layout.html#ab8bedf7645837efd22d0197749e8eb8d":[2,0,0,35,14], +"classmpl_1_1iterator__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,35,12], +"classmpl_1_1iterator__layout.html#ac26e4b99081e901b36cd89329ac22ffe":[2,0,0,35,7], +"classmpl_1_1iterator__layout.html#ac80c19464fd5b48ceb62ac7592619f32":[2,0,0,35,15], +"classmpl_1_1iterator__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,35,21], +"classmpl_1_1iterator__layout_1_1parameter.html":[2,0,0,35,0], +"classmpl_1_1iterator__layout_1_1parameter.html#a379a502823866a2428a10702c4e30d20":[2,0,0,35,0,1], +"classmpl_1_1iterator__layout_1_1parameter.html#a8b9b1dcef19978283dcebf2d03cd727d":[2,0,0,35,0,0], +"classmpl_1_1layout.html":[2,0,0,36], +"classmpl_1_1layout.html#a057fa0a49c1133de3b41b8c5eefe576c":[2,0,0,36,11], +"classmpl_1_1layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,36,6], +"classmpl_1_1layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,36,17], +"classmpl_1_1layout.html#a09c644368b2506e471715313e9059717":[2,0,0,36,3], +"classmpl_1_1layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,36,15], +"classmpl_1_1layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,36,20], +"classmpl_1_1layout.html#a4247e7ceac8381a08ce49a21370238d2":[2,0,0,36,2], +"classmpl_1_1layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,36,14], +"classmpl_1_1layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,36,18], +"classmpl_1_1layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,36,9], +"classmpl_1_1layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,36,19], +"classmpl_1_1layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,36,4], +"classmpl_1_1layout.html#a8f6bbd313a30534934c9a4004d1d3f0f":[2,0,0,36,21], +"classmpl_1_1layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,36,7], +"classmpl_1_1layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,36,5], +"classmpl_1_1layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,36,12], +"classmpl_1_1layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,36,13], +"classmpl_1_1layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,36,8], +"classmpl_1_1layout.html#ac0dc61784adeaeaf328f741871add748":[2,0,0,36,22], +"classmpl_1_1layout.html#ac1edd6042f0c959638583136b00c89db":[2,0,0,36,0], +"classmpl_1_1layout.html#ad1a727c34eaefc6031a00042b177b9b9":[2,0,0,36,1], +"classmpl_1_1layout.html#ada64a312d8d2032e9b1faef1ffca5dbd":[2,0,0,36,10], +"classmpl_1_1layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,36,16], +"classmpl_1_1layouts.html":[2,0,0,37], +"classmpl_1_1layouts.html#a089858363f1176c0c87760fe8c3b8503":[2,0,0,37,1], +"classmpl_1_1layouts.html#a3b76572f81889e2efafaecc7aeb0f764":[2,0,0,37,2], +"classmpl_1_1layouts.html#af5b700e5e64692188758a0e704979a96":[2,0,0,37,0], +"classmpl_1_1local__grid.html":[2,0,0,38], +"classmpl_1_1local__grid.html#a016e0dbc1d748bea7bf40f5ad6917a67":[2,0,0,38,2], +"classmpl_1_1local__grid.html#a0bc2c3d68db9a67e6bd415c2c7d0131b":[2,0,0,38,17], +"classmpl_1_1local__grid.html#a17585fc73aba29fb6ab0e3d8022b25be":[2,0,0,38,16], +"classmpl_1_1local__grid.html#a213eb274680567cdcd292f5080f22e71":[2,0,0,38,15], +"classmpl_1_1local__grid.html#a2a7363850b17823d78fc1030e11bcdaf":[2,0,0,38,13], +"classmpl_1_1local__grid.html#a49ea125a5efe80df775f8dc62acaa2f2":[2,0,0,38,11], +"classmpl_1_1local__grid.html#a54c9c6a7dd781ebeb95768f157c01ad7":[2,0,0,38,1], +"classmpl_1_1local__grid.html#a6be0b3c4b9aced8db5d1a250a722a4bf":[2,0,0,38,18], +"classmpl_1_1local__grid.html#a713ce59b43926706509b9a3a6a127a41":[2,0,0,38,24], +"classmpl_1_1local__grid.html#a768da13de21322c71202e4d615023316":[2,0,0,38,14], +"classmpl_1_1local__grid.html#a884c5dfdd939ad61fd2ad4de8d1c63fd":[2,0,0,38,19], +"classmpl_1_1local__grid.html#a98aca5a379a25cce8d753629f1872796":[2,0,0,38,10], +"classmpl_1_1local__grid.html#aa34ade9741224f1539935e220ba95105":[2,0,0,38,6], +"classmpl_1_1local__grid.html#aab729f6d024a0550cd75781ac7e7f7a7":[2,0,0,38,3], +"classmpl_1_1local__grid.html#aadd875af7e7296c2f1c3ce289612a741":[2,0,0,38,12], +"classmpl_1_1local__grid.html#ab2318fdfc94ef7e9d626202597dfd6f4":[2,0,0,38,8], +"classmpl_1_1local__grid.html#ac2d6883c856c1edf80dccf0586f0c0b4":[2,0,0,38,23], +"classmpl_1_1local__grid.html#acd9f95c3471b08a4dc3da723d6c121b3":[2,0,0,38,21], +"classmpl_1_1local__grid.html#ace4a57097109ad8e4236426f2b81570f":[2,0,0,38,9], +"classmpl_1_1local__grid.html#adee4f6ca84465120671ec7ab6f673ebf":[2,0,0,38,22], +"classmpl_1_1local__grid.html#ae0ebb9b3054ff110c5bbb2594729a84f":[2,0,0,38,7], +"classmpl_1_1local__grid.html#ae475f7494bbd3986b2850906ea360b6d":[2,0,0,38,4], +"classmpl_1_1local__grid.html#aea49a8961c1544888e3d697614e76282":[2,0,0,38,20], +"classmpl_1_1local__grid.html#afbdae75370bc044bbb0f0f8ce22c4544":[2,0,0,38,5], +"classmpl_1_1local__grid_1_1dimensions.html":[2,0,0,38,0], +"classmpl_1_1local__grid_1_1dimensions.html#a0134108e71b799e3c39e966f149937d5":[2,0,0,38,0,3], +"classmpl_1_1local__grid_1_1dimensions.html#a767a2725a0c272861e790d73820a9ddd":[2,0,0,38,0,0], +"classmpl_1_1local__grid_1_1dimensions.html#aa1cdf19eec6da42b29ce7fd4a3025364":[2,0,0,38,0,1], +"classmpl_1_1local__grid_1_1dimensions.html#aa399ae6edba94e1a9c1ebe91d9b2d11e":[2,0,0,38,0,2], +"classmpl_1_1null__layout.html":[2,0,0,46], +"classmpl_1_1null__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,46,4], +"classmpl_1_1null__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,46,14], +"classmpl_1_1null__layout.html#a1e3a1fc89a2e4cc97313b09613a19fbb":[2,0,0,46,1], +"classmpl_1_1null__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,46,12], +"classmpl_1_1null__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,46,17], +"classmpl_1_1null__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,46,11], +"classmpl_1_1null__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,46,15], +"classmpl_1_1null__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,46,7], +"classmpl_1_1null__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,46,16], +"classmpl_1_1null__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,46,2], +"classmpl_1_1null__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,46,5], +"classmpl_1_1null__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,46,3], +"classmpl_1_1null__layout.html#aa902f79f8f54981548bfd7d74c11ec44":[2,0,0,46,10], +"classmpl_1_1null__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,46,8], +"classmpl_1_1null__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,46,9], +"classmpl_1_1null__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,46,6], +"classmpl_1_1null__layout.html#acac7c25a8345ee4860f372efb0528159":[2,0,0,46,0], +"classmpl_1_1null__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,46,13], +"classmpl_1_1prequest.html":[2,0,0,59], +"classmpl_1_1prequest__pool.html":[2,0,0,60], +"classmpl_1_1ranks.html":[2,0,0,61], +"classmpl_1_1ranks.html#a1fbed6a868f8b6c5e64cbbf09143e26f":[2,0,0,61,3], +"classmpl_1_1ranks.html#a26a4953810763dec408121b213b8d9ee":[2,0,0,61,0], +"classmpl_1_1ranks.html#a5a849ed7e37368988037974e10bdfd81":[2,0,0,61,2], +"classmpl_1_1ranks.html#a78f75166b8370635c0e845452599db80":[2,0,0,61,1], +"classmpl_1_1ranks.html#a988be0bf88d82f0b34aa826d7ba82b44":[2,0,0,61,5], +"classmpl_1_1ranks.html#acb6c3e3088cac56b8af02aeccf0d7a40":[2,0,0,61,4], +"classmpl_1_1status__t.html":[2,0,0,63], +"classmpl_1_1status__t.html#a02861de720edc848695719d097a0cc65":[2,0,0,63,0], +"classmpl_1_1status__t.html#a10d1875d30534ff94e21d98aeed02e11":[2,0,0,63,4], +"classmpl_1_1status__t.html#a58de4e6c82f27f003be7d8d7425e0791":[2,0,0,63,3], +"classmpl_1_1status__t.html#a76b56d148b261f474f473d936c1fd878":[2,0,0,63,7], +"classmpl_1_1status__t.html#a781043b8bfd8ccef19e1f512021d2c83":[2,0,0,63,2], +"classmpl_1_1status__t.html#a87d62778e3e1f35f55f80a909f49130f":[2,0,0,63,1], +"classmpl_1_1status__t.html#a934d03b57e03aa23841cc44f0b73b7c1":[2,0,0,63,5], +"classmpl_1_1status__t.html#a9d17d0e813a4ff51a178c96ffb3455f0":[2,0,0,63,6], +"classmpl_1_1strided__vector__layout.html":[2,0,0,64], +"classmpl_1_1strided__vector__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,64,7], +"classmpl_1_1strided__vector__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,64,19], +"classmpl_1_1strided__vector__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,64,17], +"classmpl_1_1strided__vector__layout.html#a26fbff388559dd91cbe8d4f5c0bf54be":[2,0,0,64,0], +"classmpl_1_1strided__vector__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,64,22], +"classmpl_1_1strided__vector__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,64,16], +"classmpl_1_1strided__vector__layout.html#a497249e5a8b40b25329923b9062512f2":[2,0,0,64,15] }; diff --git a/docs/html/navtreeindex6.js b/docs/html/navtreeindex6.js index 2f03c5d1..741b5ef3 100644 --- a/docs/html/navtreeindex6.js +++ b/docs/html/navtreeindex6.js @@ -1,253 +1,200 @@ var NAVTREEINDEX6 = { -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a16981b82ed0e23bc5ee44294fec1b4af":[3,0,0,14,0,7], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a5425d74e6c4cea81f2d26501e09d256b":[3,0,0,14,0,0], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a5425d74e6c4cea81f2d26501e09d256b":[2,0,0,15,0,0], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a855d65e72816eaa7d08fc4db9feb5df0":[3,0,0,14,0,2], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a855d65e72816eaa7d08fc4db9feb5df0":[2,0,0,15,0,2], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a88a535128a6ba0edea60dab411c425ec":[3,0,0,14,0,8], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a88a535128a6ba0edea60dab411c425ec":[2,0,0,15,0,8], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a8bfae66c480cea453e5efc29a48caa86":[3,0,0,14,0,3], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a8bfae66c480cea453e5efc29a48caa86":[2,0,0,15,0,3], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#aa7dded0f45c35d7c28a87e443ddac33f":[2,0,0,15,0,6], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#aa7dded0f45c35d7c28a87e443ddac33f":[3,0,0,14,0,6], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#abde052dc7aa30e7322ae4f110e099a28":[3,0,0,14,0,4], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#abde052dc7aa30e7322ae4f110e099a28":[2,0,0,15,0,4], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#ac33e4cd06803a0e689a73d737a39f815":[3,0,0,14,0,5], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#ac33e4cd06803a0e689a73d737a39f815":[2,0,0,15,0,5], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#ac78cd1aea35357b5a113b50abec60a75":[2,0,0,15,0,1], -"classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#ac78cd1aea35357b5a113b50abec60a75":[3,0,0,14,0,1], -"classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html":[2,0,0,15,1], -"classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html":[3,0,0,14,1], -"classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#a26f5274dd9650e3feb1c245e4560bb19":[2,0,0,15,1,0], -"classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#a26f5274dd9650e3feb1c245e4560bb19":[3,0,0,14,1,0], -"classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#a8e6c3be2673ad743f58a418650176ba6":[2,0,0,15,1,1], -"classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#a8e6c3be2673ad743f58a418650176ba6":[3,0,0,14,1,1], -"classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#afae44c103e3457db3608ccbe5a0a0b03":[3,0,0,14,1,2], -"classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#afae44c103e3457db3608ccbe5a0a0b03":[2,0,0,15,1,2], -"classmpl_1_1distributed__grid.html":[3,0,0,15], -"classmpl_1_1distributed__grid.html":[2,0,0,16], -"classmpl_1_1distributed__grid.html#a003cab421d434c154fc865a407cf60e8":[2,0,0,16,27], -"classmpl_1_1distributed__grid.html#a003cab421d434c154fc865a407cf60e8":[3,0,0,15,27], -"classmpl_1_1distributed__grid.html#a144e45f64ac0694660ba2891405bedf1":[2,0,0,16,31], -"classmpl_1_1distributed__grid.html#a144e45f64ac0694660ba2891405bedf1":[3,0,0,15,31], -"classmpl_1_1distributed__grid.html#a1627554f0a1f004b002b4437f31ffde1":[2,0,0,16,29], -"classmpl_1_1distributed__grid.html#a1627554f0a1f004b002b4437f31ffde1":[3,0,0,15,29], -"classmpl_1_1distributed__grid.html#a19c79be242cf60cba067c6d5c74ac87d":[3,0,0,15,21], -"classmpl_1_1distributed__grid.html#a19c79be242cf60cba067c6d5c74ac87d":[2,0,0,16,21], -"classmpl_1_1distributed__grid.html#a1aeca17c53c962ae27ca0e24d976171e":[3,0,0,15,30], -"classmpl_1_1distributed__grid.html#a1aeca17c53c962ae27ca0e24d976171e":[2,0,0,16,30], -"classmpl_1_1distributed__grid.html#a2f644cd6560ba3d618e97da5bc735097":[2,0,0,16,35], -"classmpl_1_1distributed__grid.html#a2f644cd6560ba3d618e97da5bc735097":[3,0,0,15,35], -"classmpl_1_1distributed__grid.html#a32d7b6507e9184ed2e89324b40c7f6c9":[2,0,0,16,4], -"classmpl_1_1distributed__grid.html#a32d7b6507e9184ed2e89324b40c7f6c9":[3,0,0,15,4], -"classmpl_1_1distributed__grid.html#a34a86347db9b7601f7e3d5e4dc4f9418":[3,0,0,15,8], -"classmpl_1_1distributed__grid.html#a34a86347db9b7601f7e3d5e4dc4f9418":[2,0,0,16,8], -"classmpl_1_1distributed__grid.html#a39550233d58d0f53264b3f1bf5b3575b":[3,0,0,15,32], -"classmpl_1_1distributed__grid.html#a39550233d58d0f53264b3f1bf5b3575b":[2,0,0,16,32], -"classmpl_1_1distributed__grid.html#a3dc2b8663427188f0fb8c122921e489a":[2,0,0,16,22], -"classmpl_1_1distributed__grid.html#a3dc2b8663427188f0fb8c122921e489a":[3,0,0,15,22], -"classmpl_1_1distributed__grid.html#a4945000e5319f35d2aa104769b276618":[2,0,0,16,19], -"classmpl_1_1distributed__grid.html#a4945000e5319f35d2aa104769b276618":[3,0,0,15,19], -"classmpl_1_1distributed__grid.html#a4af35d52ae69a0b0dea4921ed2a2595e":[3,0,0,15,36], -"classmpl_1_1distributed__grid.html#a4af35d52ae69a0b0dea4921ed2a2595e":[2,0,0,16,36], -"classmpl_1_1distributed__grid.html#a51579bec8d2ed2da636f1bc6db474ca6":[3,0,0,15,7], -"classmpl_1_1distributed__grid.html#a51579bec8d2ed2da636f1bc6db474ca6":[2,0,0,16,7], -"classmpl_1_1distributed__grid.html#a56a402c5f7b9e3b47469db51b1b76411":[2,0,0,16,34], -"classmpl_1_1distributed__grid.html#a56a402c5f7b9e3b47469db51b1b76411":[3,0,0,15,34], -"classmpl_1_1distributed__grid.html#a5794c40591628769b667f0c6e4b879c6":[3,0,0,15,16], -"classmpl_1_1distributed__grid.html#a5794c40591628769b667f0c6e4b879c6":[2,0,0,16,16], -"classmpl_1_1distributed__grid.html#a61aa2b89cdafd5132f06b7e5417b3392":[2,0,0,16,13], -"classmpl_1_1distributed__grid.html#a61aa2b89cdafd5132f06b7e5417b3392":[3,0,0,15,13], -"classmpl_1_1distributed__grid.html#a641426ea3c1d4b7a2dd43a13d07fbf31":[2,0,0,16,14], -"classmpl_1_1distributed__grid.html#a641426ea3c1d4b7a2dd43a13d07fbf31":[3,0,0,15,14], -"classmpl_1_1distributed__grid.html#a67abfe92a3bb5d4cf1708297a2e7343d":[2,0,0,16,6], -"classmpl_1_1distributed__grid.html#a67abfe92a3bb5d4cf1708297a2e7343d":[3,0,0,15,6], -"classmpl_1_1distributed__grid.html#a807f6d8f2bc9c200c6e14c1decad88a1":[3,0,0,15,15], -"classmpl_1_1distributed__grid.html#a807f6d8f2bc9c200c6e14c1decad88a1":[2,0,0,16,15], -"classmpl_1_1distributed__grid.html#a82adfb3638ace78e13b3803933f46585":[3,0,0,15,12], -"classmpl_1_1distributed__grid.html#a82adfb3638ace78e13b3803933f46585":[2,0,0,16,12], -"classmpl_1_1distributed__grid.html#a87a2ba870110b8c294ecaaa25c79826f":[3,0,0,15,25], -"classmpl_1_1distributed__grid.html#a87a2ba870110b8c294ecaaa25c79826f":[2,0,0,16,25], -"classmpl_1_1distributed__grid.html#a88feb41c455585e1793b8e4ab382a540":[2,0,0,16,2], -"classmpl_1_1distributed__grid.html#a88feb41c455585e1793b8e4ab382a540":[3,0,0,15,2], -"classmpl_1_1distributed__grid.html#a8ac663b4a2e9e68c1274bdf49c39c23c":[2,0,0,16,18], -"classmpl_1_1distributed__grid.html#a8ac663b4a2e9e68c1274bdf49c39c23c":[3,0,0,15,18], -"classmpl_1_1distributed__grid.html#a8f9854c65734629b85e7ea3ab69612ee":[2,0,0,16,26], -"classmpl_1_1distributed__grid.html#a8f9854c65734629b85e7ea3ab69612ee":[3,0,0,15,26], -"classmpl_1_1distributed__grid.html#aa302039c192e73504a8bc85cb2379599":[2,0,0,16,33], -"classmpl_1_1distributed__grid.html#aa302039c192e73504a8bc85cb2379599":[3,0,0,15,33], -"classmpl_1_1distributed__grid.html#aa6d72bfcbade9ce4574dd810044a1aa1":[3,0,0,15,17], -"classmpl_1_1distributed__grid.html#aa6d72bfcbade9ce4574dd810044a1aa1":[2,0,0,16,17], -"classmpl_1_1distributed__grid.html#aa726d934b2ec0b5479fdbe299cfa9a66":[2,0,0,16,28], -"classmpl_1_1distributed__grid.html#aa726d934b2ec0b5479fdbe299cfa9a66":[3,0,0,15,28], -"classmpl_1_1distributed__grid.html#ab234ea807e04466672d1cb64fe6b0e9a":[2,0,0,16,10], -"classmpl_1_1distributed__grid.html#ab234ea807e04466672d1cb64fe6b0e9a":[3,0,0,15,10], -"classmpl_1_1distributed__grid.html#ab991c114a3494a36c2bf3a0b98edae75":[2,0,0,16,9], -"classmpl_1_1distributed__grid.html#ab991c114a3494a36c2bf3a0b98edae75":[3,0,0,15,9], -"classmpl_1_1distributed__grid.html#ac2bb06d14b8dc3d305592b90be4b4245":[3,0,0,15,23], -"classmpl_1_1distributed__grid.html#ac2bb06d14b8dc3d305592b90be4b4245":[2,0,0,16,23], -"classmpl_1_1distributed__grid.html#ac533c3caf9f4a027a278bbdf57dfac0e":[2,0,0,16,11], -"classmpl_1_1distributed__grid.html#ac533c3caf9f4a027a278bbdf57dfac0e":[3,0,0,15,11], -"classmpl_1_1distributed__grid.html#acd78758381fb6a8366913ca97dd10f86":[2,0,0,16,20], -"classmpl_1_1distributed__grid.html#acd78758381fb6a8366913ca97dd10f86":[3,0,0,15,20], -"classmpl_1_1distributed__grid.html#adb4997427246517519393e49049bebbd":[2,0,0,16,24], -"classmpl_1_1distributed__grid.html#adb4997427246517519393e49049bebbd":[3,0,0,15,24], -"classmpl_1_1distributed__grid.html#adbab66d465f005bb94e838740deb6ec4":[3,0,0,15,3], -"classmpl_1_1distributed__grid.html#adbab66d465f005bb94e838740deb6ec4":[2,0,0,16,3], -"classmpl_1_1distributed__grid.html#aef0dc237dc10dbb89f77b95dafa860e0":[3,0,0,15,5], -"classmpl_1_1distributed__grid.html#aef0dc237dc10dbb89f77b95dafa860e0":[2,0,0,16,5], -"classmpl_1_1distributed__grid_1_1dimensions.html":[2,0,0,16,0], -"classmpl_1_1distributed__grid_1_1dimensions.html":[3,0,0,15,0], -"classmpl_1_1distributed__grid_1_1dimensions.html#a1104ae5dc102133af3801569848e3052":[2,0,0,16,0,4], -"classmpl_1_1distributed__grid_1_1dimensions.html#a1104ae5dc102133af3801569848e3052":[3,0,0,15,0,4], -"classmpl_1_1distributed__grid_1_1dimensions.html#a12485247b1062d3f0f73c858185f51bb":[3,0,0,15,0,5], -"classmpl_1_1distributed__grid_1_1dimensions.html#a12485247b1062d3f0f73c858185f51bb":[2,0,0,16,0,5], -"classmpl_1_1distributed__grid_1_1dimensions.html#a39a982a284a1c264dc9b2c633be8f920":[3,0,0,15,0,12], -"classmpl_1_1distributed__grid_1_1dimensions.html#a39a982a284a1c264dc9b2c633be8f920":[2,0,0,16,0,12], -"classmpl_1_1distributed__grid_1_1dimensions.html#a4234269aff1b0e9aaeb3646c5c5e59c4":[3,0,0,15,0,13], -"classmpl_1_1distributed__grid_1_1dimensions.html#a4234269aff1b0e9aaeb3646c5c5e59c4":[2,0,0,16,0,13], -"classmpl_1_1distributed__grid_1_1dimensions.html#a4aa7c8f061a34d093429d3116d1f4738":[2,0,0,16,0,10], -"classmpl_1_1distributed__grid_1_1dimensions.html#a4aa7c8f061a34d093429d3116d1f4738":[3,0,0,15,0,10], -"classmpl_1_1distributed__grid_1_1dimensions.html#a633df14d612a5a06aecb6a7a4f2775f0":[2,0,0,16,0,0], -"classmpl_1_1distributed__grid_1_1dimensions.html#a633df14d612a5a06aecb6a7a4f2775f0":[3,0,0,15,0,0], -"classmpl_1_1distributed__grid_1_1dimensions.html#a67917c6df24d025069ae3d703edd69aa":[3,0,0,15,0,18], -"classmpl_1_1distributed__grid_1_1dimensions.html#a67917c6df24d025069ae3d703edd69aa":[2,0,0,16,0,18], -"classmpl_1_1distributed__grid_1_1dimensions.html#a691847323bb99bfaaadc32aea94b77a4":[2,0,0,16,0,14], -"classmpl_1_1distributed__grid_1_1dimensions.html#a691847323bb99bfaaadc32aea94b77a4":[3,0,0,15,0,14], -"classmpl_1_1distributed__grid_1_1dimensions.html#a6b31044ed4f19efd4b5f11e922c197ce":[3,0,0,15,0,7], -"classmpl_1_1distributed__grid_1_1dimensions.html#a6b31044ed4f19efd4b5f11e922c197ce":[2,0,0,16,0,7], -"classmpl_1_1distributed__grid_1_1dimensions.html#a71f1e2fb5473cb5f4740f77b4981bca6":[3,0,0,15,0,8], -"classmpl_1_1distributed__grid_1_1dimensions.html#a71f1e2fb5473cb5f4740f77b4981bca6":[2,0,0,16,0,8], -"classmpl_1_1distributed__grid_1_1dimensions.html#a777b0b3479a3be7b092eebfe42a2e923":[2,0,0,16,0,3], -"classmpl_1_1distributed__grid_1_1dimensions.html#a777b0b3479a3be7b092eebfe42a2e923":[3,0,0,15,0,3], -"classmpl_1_1distributed__grid_1_1dimensions.html#a7ef66eeee954466bec93ae54ce2f1de9":[3,0,0,15,0,19], -"classmpl_1_1distributed__grid_1_1dimensions.html#a7ef66eeee954466bec93ae54ce2f1de9":[2,0,0,16,0,19], -"classmpl_1_1distributed__grid_1_1dimensions.html#a894d21035df664610e1400581025ca7d":[3,0,0,15,0,17], -"classmpl_1_1distributed__grid_1_1dimensions.html#a894d21035df664610e1400581025ca7d":[2,0,0,16,0,17], -"classmpl_1_1distributed__grid_1_1dimensions.html#a970cdde63ec39539cf1f2cd8e8b290da":[3,0,0,15,0,11], -"classmpl_1_1distributed__grid_1_1dimensions.html#a970cdde63ec39539cf1f2cd8e8b290da":[2,0,0,16,0,11], -"classmpl_1_1distributed__grid_1_1dimensions.html#a9be7d0688024430750b7375e48f0ddb5":[2,0,0,16,0,16], -"classmpl_1_1distributed__grid_1_1dimensions.html#a9be7d0688024430750b7375e48f0ddb5":[3,0,0,15,0,16], -"classmpl_1_1distributed__grid_1_1dimensions.html#aa006903038282202482f8d5fed47d765":[2,0,0,16,0,6], -"classmpl_1_1distributed__grid_1_1dimensions.html#aa006903038282202482f8d5fed47d765":[3,0,0,15,0,6], -"classmpl_1_1distributed__grid_1_1dimensions.html#ab40f9a1d115aee074419bc689b607d8b":[3,0,0,15,0,15], -"classmpl_1_1distributed__grid_1_1dimensions.html#ab40f9a1d115aee074419bc689b607d8b":[2,0,0,16,0,15], -"classmpl_1_1distributed__grid_1_1dimensions.html#ab6a1c5e822586134f597b059eb00000d":[3,0,0,15,0,2], -"classmpl_1_1distributed__grid_1_1dimensions.html#ab6a1c5e822586134f597b059eb00000d":[2,0,0,16,0,2], -"classmpl_1_1distributed__grid_1_1dimensions.html#ac16a09ce9008a9260e3d750562a45ced":[2,0,0,16,0,1], -"classmpl_1_1distributed__grid_1_1dimensions.html#ac16a09ce9008a9260e3d750562a45ced":[3,0,0,15,0,1], -"classmpl_1_1distributed__grid_1_1dimensions.html#ad909c366be2bae287f8ea2051ae4be4a":[2,0,0,16,0,9], -"classmpl_1_1distributed__grid_1_1dimensions.html#ad909c366be2bae287f8ea2051ae4be4a":[3,0,0,15,0,9], -"classmpl_1_1distributed__grid_1_1dimensions.html#aed92b0c67390eff049ba51342c40fa6f":[2,0,0,16,0,20], -"classmpl_1_1distributed__grid_1_1dimensions.html#aed92b0c67390eff049ba51342c40fa6f":[3,0,0,15,0,20], -"classmpl_1_1distributed__grid_1_1size__overlap__pair.html":[2,0,0,16,1], -"classmpl_1_1distributed__grid_1_1size__overlap__pair.html":[3,0,0,15,1], -"classmpl_1_1distributed__grid_1_1size__overlap__pair.html#a027ebf7f9d8ee613042d8c2fa562a636":[3,0,0,15,1,0], -"classmpl_1_1distributed__grid_1_1size__overlap__pair.html#a027ebf7f9d8ee613042d8c2fa562a636":[2,0,0,16,1,0], -"classmpl_1_1distributed__grid_1_1size__overlap__pair.html#a7896ea2151387a2738a23654aa2dab74":[3,0,0,15,1,2], -"classmpl_1_1distributed__grid_1_1size__overlap__pair.html#a7896ea2151387a2738a23654aa2dab74":[2,0,0,16,1,2], -"classmpl_1_1distributed__grid_1_1size__overlap__pair.html#ab24f528c5aef47d91274c9080da41a61":[2,0,0,16,1,1], -"classmpl_1_1distributed__grid_1_1size__overlap__pair.html#ab24f528c5aef47d91274c9080da41a61":[3,0,0,15,1,1], -"classmpl_1_1empty__layout.html":[3,0,0,16], -"classmpl_1_1empty__layout.html":[2,0,0,17], -"classmpl_1_1empty__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,17,5], -"classmpl_1_1empty__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[3,0,0,16,5], -"classmpl_1_1empty__layout.html#a069da901219beb3e1c3da57289bdfb1a":[3,0,0,16,12], -"classmpl_1_1empty__layout.html#a069da901219beb3e1c3da57289bdfb1a":[2,0,0,17,12], -"classmpl_1_1empty__layout.html#a0890ec4684e6a465170f88932e116d30":[3,0,0,16,17], -"classmpl_1_1empty__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,17,17], -"classmpl_1_1empty__layout.html#a1246ee522d696afa489afd98eae2437c":[2,0,0,17,9], -"classmpl_1_1empty__layout.html#a1246ee522d696afa489afd98eae2437c":[3,0,0,16,9], -"classmpl_1_1empty__layout.html#a224759434f429819105ed1a4094e077c":[3,0,0,16,10], -"classmpl_1_1empty__layout.html#a224759434f429819105ed1a4094e077c":[2,0,0,17,10], -"classmpl_1_1empty__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,17,15], -"classmpl_1_1empty__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[3,0,0,16,15], -"classmpl_1_1empty__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,17,20], -"classmpl_1_1empty__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[3,0,0,16,20], -"classmpl_1_1empty__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,17,14], -"classmpl_1_1empty__layout.html#a45840e6936914baef876a0b67a8bb499":[3,0,0,16,14], -"classmpl_1_1empty__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[3,0,0,16,18], -"classmpl_1_1empty__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,17,18], -"classmpl_1_1empty__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,17,8], -"classmpl_1_1empty__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[3,0,0,16,8], -"classmpl_1_1empty__layout.html#a80713f15de3244b019294ee277c8c650":[3,0,0,16,19], -"classmpl_1_1empty__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,17,19], -"classmpl_1_1empty__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[3,0,0,16,3], -"classmpl_1_1empty__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,17,3], -"classmpl_1_1empty__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[3,0,0,16,6], -"classmpl_1_1empty__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,17,6], -"classmpl_1_1empty__layout.html#a9facbf460f04ad85b60338794916c48e":[2,0,0,17,2], -"classmpl_1_1empty__layout.html#a9facbf460f04ad85b60338794916c48e":[3,0,0,16,2], -"classmpl_1_1empty__layout.html#aa391a934f031693cf985dcd1c675d8e4":[3,0,0,16,4], -"classmpl_1_1empty__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,17,4], -"classmpl_1_1empty__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,17,11], -"classmpl_1_1empty__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[3,0,0,16,11], -"classmpl_1_1empty__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,17,13], -"classmpl_1_1empty__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[3,0,0,16,13], -"classmpl_1_1empty__layout.html#abce0f3197d6b2252c951535b443d7d5e":[3,0,0,16,7], -"classmpl_1_1empty__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,17,7], -"classmpl_1_1empty__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,17,16], -"classmpl_1_1empty__layout.html#adf592d9e08a92314cc086bd51d643953":[3,0,0,16,16], -"classmpl_1_1empty__layout.html#ae20bac5a00ded8343c1e49333c4e17bc":[2,0,0,17,1], -"classmpl_1_1empty__layout.html#ae20bac5a00ded8343c1e49333c4e17bc":[3,0,0,16,1], -"classmpl_1_1empty__layout.html#ae754e55f1d794ace955529f239a93de5":[3,0,0,16,0], -"classmpl_1_1empty__layout.html#ae754e55f1d794ace955529f239a93de5":[2,0,0,17,0], -"classmpl_1_1error.html":[2,0,0,18], -"classmpl_1_1error.html":[3,0,0,17], -"classmpl_1_1error.html#a63195dd370214a0afa3bd38b59ba7b37":[2,0,0,18,0], -"classmpl_1_1error.html#a63195dd370214a0afa3bd38b59ba7b37":[3,0,0,17,0], -"classmpl_1_1error.html#a74cba88f95894c0abf2baff78a88076e":[2,0,0,18,1], -"classmpl_1_1error.html#a74cba88f95894c0abf2baff78a88076e":[3,0,0,17,1], -"classmpl_1_1graph__communicator.html":[2,0,0,19], -"classmpl_1_1graph__communicator.html":[3,0,0,18], -"classmpl_1_1graph__communicator.html#a0053567d5a44c1783b35050f25f99ff0":[2,0,0,19,5], -"classmpl_1_1graph__communicator.html#a0053567d5a44c1783b35050f25f99ff0":[3,0,0,18,5], -"classmpl_1_1graph__communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09":[2,0,0,19,12], -"classmpl_1_1graph__communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09":[3,0,0,18,12], -"classmpl_1_1graph__communicator.html#a031345325782266cecb521469e42d8c3":[3,0,0,18,119], -"classmpl_1_1graph__communicator.html#a031345325782266cecb521469e42d8c3":[2,0,0,19,119], -"classmpl_1_1graph__communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69":[2,0,0,19,94], -"classmpl_1_1graph__communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69":[3,0,0,18,94], -"classmpl_1_1graph__communicator.html#a03afcae482e770e40ca5df7ae77b29c6":[3,0,0,18,137], -"classmpl_1_1graph__communicator.html#a03afcae482e770e40ca5df7ae77b29c6":[2,0,0,19,137], -"classmpl_1_1graph__communicator.html#a03d88ad3aa943dc51578259c03b0b695":[3,0,0,18,151], -"classmpl_1_1graph__communicator.html#a03d88ad3aa943dc51578259c03b0b695":[2,0,0,19,151], -"classmpl_1_1graph__communicator.html#a05ed2a65531e978c766f9af918f5e5a3":[2,0,0,19,20], -"classmpl_1_1graph__communicator.html#a05ed2a65531e978c766f9af918f5e5a3":[3,0,0,18,20], -"classmpl_1_1graph__communicator.html#a06525ff878eb073c02dc0bef285f06ac":[2,0,0,19,103], -"classmpl_1_1graph__communicator.html#a06525ff878eb073c02dc0bef285f06ac":[3,0,0,18,103], -"classmpl_1_1graph__communicator.html#a068c77bb2536523c2bcbeb4d3d8efc7b":[2,0,0,19,86], -"classmpl_1_1graph__communicator.html#a068c77bb2536523c2bcbeb4d3d8efc7b":[3,0,0,18,86], -"classmpl_1_1graph__communicator.html#a07591e9922db9239a75ab1b6c7b70f11":[3,0,0,18,193], -"classmpl_1_1graph__communicator.html#a07591e9922db9239a75ab1b6c7b70f11":[2,0,0,19,193], -"classmpl_1_1graph__communicator.html#a0a2866d44cee859fc064e2e32a6710d7":[2,0,0,19,14], -"classmpl_1_1graph__communicator.html#a0a2866d44cee859fc064e2e32a6710d7":[3,0,0,18,14], -"classmpl_1_1graph__communicator.html#a0ca545be8c199264a127b16180450162":[3,0,0,18,153], -"classmpl_1_1graph__communicator.html#a0ca545be8c199264a127b16180450162":[2,0,0,19,153], -"classmpl_1_1graph__communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3":[2,0,0,19,11], -"classmpl_1_1graph__communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3":[3,0,0,18,11], -"classmpl_1_1graph__communicator.html#a0e6459ad572cb1a69cb149df1871f2c6":[3,0,0,18,101], -"classmpl_1_1graph__communicator.html#a0e6459ad572cb1a69cb149df1871f2c6":[2,0,0,19,101], -"classmpl_1_1graph__communicator.html#a0e7776c9ef670b685701dfd197b76912":[2,0,0,19,17], -"classmpl_1_1graph__communicator.html#a0e7776c9ef670b685701dfd197b76912":[3,0,0,18,17], -"classmpl_1_1graph__communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3":[3,0,0,18,95], -"classmpl_1_1graph__communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3":[2,0,0,19,95], -"classmpl_1_1graph__communicator.html#a100f19741ccecda229eb1bb6659c1dd8":[2,0,0,19,190], -"classmpl_1_1graph__communicator.html#a100f19741ccecda229eb1bb6659c1dd8":[3,0,0,18,190], -"classmpl_1_1graph__communicator.html#a14ad784ff91391983f667a5cadbfe367":[3,0,0,18,99], -"classmpl_1_1graph__communicator.html#a14ad784ff91391983f667a5cadbfe367":[2,0,0,19,99], -"classmpl_1_1graph__communicator.html#a14b2306de71e02b0390c564ff6ba7c21":[3,0,0,18,69], -"classmpl_1_1graph__communicator.html#a14b2306de71e02b0390c564ff6ba7c21":[2,0,0,19,69], -"classmpl_1_1graph__communicator.html#a153a492a90432d228638e2548b2a65b5":[2,0,0,19,145], -"classmpl_1_1graph__communicator.html#a153a492a90432d228638e2548b2a65b5":[3,0,0,18,145], -"classmpl_1_1graph__communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f":[3,0,0,18,191], -"classmpl_1_1graph__communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f":[2,0,0,19,191], -"classmpl_1_1graph__communicator.html#a17526ad519286bf2fa81a3701c0afe03":[3,0,0,18,197], -"classmpl_1_1graph__communicator.html#a17526ad519286bf2fa81a3701c0afe03":[2,0,0,19,197], -"classmpl_1_1graph__communicator.html#a179246280657f80aa624f7ebcb8ac9a4":[3,0,0,18,128], -"classmpl_1_1graph__communicator.html#a179246280657f80aa624f7ebcb8ac9a4":[2,0,0,19,128], -"classmpl_1_1graph__communicator.html#a17dd29d46d12c1cafd0d4b9f7aa4f8e7":[3,0,0,18,36], -"classmpl_1_1graph__communicator.html#a17dd29d46d12c1cafd0d4b9f7aa4f8e7":[2,0,0,19,36], -"classmpl_1_1graph__communicator.html#a192fabbdbac09436fab92943148c5185":[3,0,0,18,79] +"classmpl_1_1strided__vector__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,64,20], +"classmpl_1_1strided__vector__layout.html#a5996f952887a7ad754de6b862f71bd60":[2,0,0,64,1], +"classmpl_1_1strided__vector__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,64,10], +"classmpl_1_1strided__vector__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,64,21], +"classmpl_1_1strided__vector__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,64,5], +"classmpl_1_1strided__vector__layout.html#a9120a85b7377a2e625b0b0966164339f":[2,0,0,64,12], +"classmpl_1_1strided__vector__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,64,8], +"classmpl_1_1strided__vector__layout.html#a9ea9a57f672e317522e4e8929bdc9ea2":[2,0,0,64,4], +"classmpl_1_1strided__vector__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,64,6], +"classmpl_1_1strided__vector__layout.html#aa9cbbcfed65d7a004c435b699ccd4d74":[2,0,0,64,11], +"classmpl_1_1strided__vector__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,64,13], +"classmpl_1_1strided__vector__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,64,14], +"classmpl_1_1strided__vector__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,64,9], +"classmpl_1_1strided__vector__layout.html#acbd61feed56dc16a8121b9e05490ca4f":[2,0,0,64,2], +"classmpl_1_1strided__vector__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,64,18], +"classmpl_1_1strided__vector__layout.html#af5f48479be2f758f7ee107166ff8b6ab":[2,0,0,64,3], +"classmpl_1_1struct__builder.html":[2,0,0,65], +"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html":[2,0,0,72], +"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html":[2,0,0,71], +"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html":[2,0,0,70], +"classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html":[2,0,0,69], +"classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html":[2,0,0,66], +"classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html":[2,0,0,67], +"classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html":[2,0,0,68], +"classmpl_1_1struct__layout.html":[2,0,0,73], +"classmpl_1_1struct__layout.html#ac8edfd2e43039745840de4d7f14e13b7":[2,0,0,73,1], +"classmpl_1_1struct__layout.html#ada968c08d05ee6c94464bba46c7b2566":[2,0,0,73,0], +"classmpl_1_1subarray__layout.html":[2,0,0,74], +"classmpl_1_1subarray__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,74,8], +"classmpl_1_1subarray__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,74,20], +"classmpl_1_1subarray__layout.html#a2243a1c2887f4c6bbf11403528912906":[2,0,0,74,1], +"classmpl_1_1subarray__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,74,18], +"classmpl_1_1subarray__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,74,23], +"classmpl_1_1subarray__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,74,17], +"classmpl_1_1subarray__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,74,21], +"classmpl_1_1subarray__layout.html#a4c8c9abf713ae31b48f8504bb5929455":[2,0,0,74,5], +"classmpl_1_1subarray__layout.html#a50f1141d79adc3100b3c4ab7d963b76f":[2,0,0,74,16], +"classmpl_1_1subarray__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,74,11], +"classmpl_1_1subarray__layout.html#a6c9462225f9727417f1063a7300c1580":[2,0,0,74,3], +"classmpl_1_1subarray__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,74,22], +"classmpl_1_1subarray__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,74,6], +"classmpl_1_1subarray__layout.html#a8b4ea22298e053cea9267edbeaf057ed":[2,0,0,74,4], +"classmpl_1_1subarray__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,74,9], +"classmpl_1_1subarray__layout.html#a9d10a8cb6f0e530fd4d6677ed6a6e16d":[2,0,0,74,12], +"classmpl_1_1subarray__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,74,7], +"classmpl_1_1subarray__layout.html#aa96074e957a0d2271f5ff45a248cdbd0":[2,0,0,74,2], +"classmpl_1_1subarray__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,74,14], +"classmpl_1_1subarray__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,74,15], +"classmpl_1_1subarray__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,74,10], +"classmpl_1_1subarray__layout.html#adad3946bd689cb93da9fc1f182d17f37":[2,0,0,74,13], +"classmpl_1_1subarray__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,74,19], +"classmpl_1_1subarray__layout_1_1parameter.html":[2,0,0,74,0], +"classmpl_1_1subarray__layout_1_1parameter.html#a0db1e2fb063f6a67012b961fcd199170":[2,0,0,74,0,1], +"classmpl_1_1subarray__layout_1_1parameter.html#a155ab0d9cb1eb40d8f8d7ae9fbc2bdca":[2,0,0,74,0,5], +"classmpl_1_1subarray__layout_1_1parameter.html#a60f802b57d449678d80496b82c3751de":[2,0,0,74,0,4], +"classmpl_1_1subarray__layout_1_1parameter.html#a77ad6bab244fed5453132ca9a5ac3c6c":[2,0,0,74,0,2], +"classmpl_1_1subarray__layout_1_1parameter.html#aac6ad3727ba7277233e52e96cb28ffbf":[2,0,0,74,0,0], +"classmpl_1_1subarray__layout_1_1parameter.html#adb56550a413cee796a9e3e7c9a268f24":[2,0,0,74,0,3], +"classmpl_1_1tag__t.html":[2,0,0,75], +"classmpl_1_1tag__t.html#a1946fdf44d007662a538252b11dc5d23":[2,0,0,75,2], +"classmpl_1_1tag__t.html#a290110d503cd4d6bf1bbd0553f78c0a6":[2,0,0,75,0], +"classmpl_1_1tag__t.html#aee28b8c00b151ccee302f75016b63f7b":[2,0,0,75,1], +"classmpl_1_1vector__layout.html":[2,0,0,76], +"classmpl_1_1vector__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,76,6], +"classmpl_1_1vector__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,76,18], +"classmpl_1_1vector__layout.html#a1a81501116e20200a783f9799a412482":[2,0,0,76,1], +"classmpl_1_1vector__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,76,16], +"classmpl_1_1vector__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,76,21], +"classmpl_1_1vector__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,76,15], +"classmpl_1_1vector__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,76,19], +"classmpl_1_1vector__layout.html#a58151c81908894ffdd9279df6126367a":[2,0,0,76,3], +"classmpl_1_1vector__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,76,9], +"classmpl_1_1vector__layout.html#a7ac32dc6996968661dc9f4cd685b8d57":[2,0,0,76,10], +"classmpl_1_1vector__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,76,20], +"classmpl_1_1vector__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,76,4], +"classmpl_1_1vector__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,76,7], +"classmpl_1_1vector__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,76,5], +"classmpl_1_1vector__layout.html#aa88614eb8266c7ca511275674335c986":[2,0,0,76,14], +"classmpl_1_1vector__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,76,12], +"classmpl_1_1vector__layout.html#ab153f0de6c047fffe6adbf22b0a0efb1":[2,0,0,76,11], +"classmpl_1_1vector__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,76,13], +"classmpl_1_1vector__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,76,8], +"classmpl_1_1vector__layout.html#ac466af7b2403264214290c8e12c37cb5":[2,0,0,76,0], +"classmpl_1_1vector__layout.html#acc41027491fb0772f5f6f1bbe4a8029b":[2,0,0,76,2], +"classmpl_1_1vector__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,76,17], +"collective_8cc-example.html":[3,3], +"communicator_8cc-example.html":[3,4], +"distributed_grid_8cc-example.html":[3,5], +"distributed_grid_scatter_gather_8cc-example.html":[3,6], +"examples.html":[3], +"functions.html":[2,3,0,0], +"functions.html":[2,3,0], +"functions_b.html":[2,3,0,1], +"functions_c.html":[2,3,0,2], +"functions_d.html":[2,3,0,3], +"functions_e.html":[2,3,0,4], +"functions_enum.html":[2,3,4], +"functions_func.html":[2,3,1], +"functions_func.html":[2,3,1,0], +"functions_func_b.html":[2,3,1,1], +"functions_func_c.html":[2,3,1,2], +"functions_func_d.html":[2,3,1,3], +"functions_func_e.html":[2,3,1,4], +"functions_func_g.html":[2,3,1,5], +"functions_func_h.html":[2,3,1,6], +"functions_func_i.html":[2,3,1,7], +"functions_func_l.html":[2,3,1,8], +"functions_func_m.html":[2,3,1,9], +"functions_func_n.html":[2,3,1,10], +"functions_func_o.html":[2,3,1,11], +"functions_func_p.html":[2,3,1,12], +"functions_func_r.html":[2,3,1,13], +"functions_func_s.html":[2,3,1,14], +"functions_func_t.html":[2,3,1,15], +"functions_func_u.html":[2,3,1,16], +"functions_func_v.html":[2,3,1,17], +"functions_func_w.html":[2,3,1,18], +"functions_func_~.html":[2,3,1,19], +"functions_g.html":[2,3,0,5], +"functions_h.html":[2,3,0,6], +"functions_i.html":[2,3,0,7], +"functions_l.html":[2,3,0,8], +"functions_m.html":[2,3,0,9], +"functions_n.html":[2,3,0,10], +"functions_o.html":[2,3,0,11], +"functions_p.html":[2,3,0,12], +"functions_r.html":[2,3,0,13], +"functions_rela.html":[2,3,5], +"functions_s.html":[2,3,0,14], +"functions_t.html":[2,3,0,15], +"functions_type.html":[2,3,3], +"functions_u.html":[2,3,0,16], +"functions_v.html":[2,3,0,17], +"functions_vars.html":[2,3,2], +"functions_w.html":[2,3,0,18], +"functions_~.html":[2,3,0,19], +"gather_8cc-example.html":[3,7], +"gatherv_8cc-example.html":[3,8], +"heat_equation__jacobi_method_8cc-example.html":[3,9], +"heat_equation_successive_over-relaxation_8cc-example.html":[3,10], +"hello_world_8cc-example.html":[3,11], +"hierarchy.html":[2,2], +"index.html":[], +"index.html":[0], +"iterators_8cc-example.html":[3,12], +"layouts_8cc-example.html":[3,13], +"matrix_gather_8cc-example.html":[3,14], +"md_data_types.html":[1], +"nonblocking_8cc-example.html":[3,15], +"nonblocking_mult_8cc-example.html":[3,16], +"pages.html":[], +"parallel_sort_mpi_8c-example.html":[3,17], +"parallel_sort_mpl_8cc-example.html":[3,18], +"probe_8cc-example.html":[3,19], +"reduce_lcm_8cc-example.html":[3,20], +"reduce_min_loc_8cc-example.html":[3,21], +"standard_types_8cc-example.html":[3,22], +"stl_container_8cc-example.html":[3,23], +"struct_8cc-example.html":[3,24], +"structmpl_1_1bit__and.html":[2,0,0,5], +"structmpl_1_1bit__and.html#a7133da51787910d7e6ca97be99782268":[2,0,0,5,0], +"structmpl_1_1bit__or.html":[2,0,0,6], +"structmpl_1_1bit__or.html#ab5a228ee19d0bfb34f9b239a85dc5eac":[2,0,0,6,0], +"structmpl_1_1bit__xor.html":[2,0,0,7], +"structmpl_1_1bit__xor.html#a8d990747d97457d18652ac9a58e424fb":[2,0,0,7,0], +"structmpl_1_1logical__and.html":[2,0,0,39], +"structmpl_1_1logical__and.html#a41d77b4ab90b1d0363eb65dea6100d00":[2,0,0,39,0], +"structmpl_1_1logical__or.html":[2,0,0,40], +"structmpl_1_1logical__or.html#ad4f0f01a628867690d1fd9e4f265b681":[2,0,0,40,0], +"structmpl_1_1logical__xor.html":[2,0,0,41], +"structmpl_1_1logical__xor.html#a66bb19d69956d437e42f8cbea11b8fb1":[2,0,0,41,0], +"structmpl_1_1max.html":[2,0,0,42], +"structmpl_1_1max.html#a2908e4ec953dd58edf8079788bec51e0":[2,0,0,42,0], +"structmpl_1_1min.html":[2,0,0,43], +"structmpl_1_1min.html#a23b201ffe2013e1f55f1ea0cdc02e0f8":[2,0,0,43,0], +"structmpl_1_1mprobe__status.html":[2,0,0,44], +"structmpl_1_1mprobe__status.html#a1bd4ee6dd27523dd27cbeb2f2e7974e7":[2,0,0,44,0], +"structmpl_1_1mprobe__status.html#ad5f29b026bbd4e57d9ed3e74fbb0e415":[2,0,0,44,1], +"structmpl_1_1multiplies.html":[2,0,0,45], +"structmpl_1_1multiplies.html#a224ea72086f08b923bb32ac7ebf1704d":[2,0,0,45,0], +"structmpl_1_1op__traits.html":[2,0,0,47], +"structmpl_1_1op__traits_3_01bit__and_3_01_t_01_4_01_4.html":[2,0,0,48], +"structmpl_1_1op__traits_3_01bit__or_3_01_t_01_4_01_4.html":[2,0,0,49], +"structmpl_1_1op__traits_3_01bit__xor_3_01_t_01_4_01_4.html":[2,0,0,50], +"structmpl_1_1op__traits_3_01logical__and_3_01_t_01_4_01_4.html":[2,0,0,51], +"structmpl_1_1op__traits_3_01logical__or_3_01_t_01_4_01_4.html":[2,0,0,52], +"structmpl_1_1op__traits_3_01logical__xor_3_01_t_01_4_01_4.html":[2,0,0,53], +"structmpl_1_1op__traits_3_01max_3_01_t_01_4_01_4.html":[2,0,0,54], +"structmpl_1_1op__traits_3_01min_3_01_t_01_4_01_4.html":[2,0,0,55], +"structmpl_1_1op__traits_3_01multiplies_3_01_t_01_4_01_4.html":[2,0,0,56], +"structmpl_1_1op__traits_3_01plus_3_01_t_01_4_01_4.html":[2,0,0,57], +"structmpl_1_1plus.html":[2,0,0,58], +"structmpl_1_1plus.html#a946a45253a41fb515c6d4cf467eeac41":[2,0,0,58,0], +"structmpl_1_1shift__ranks.html":[2,0,0,62], +"subarray_8cc-example.html":[3,25], +"vibrating_string_mpi_8c-example.html":[3,26], +"vibrating_string_mpl_8cc-example.html":[3,27] }; diff --git a/docs/html/navtreeindex7.js b/docs/html/navtreeindex7.js deleted file mode 100644 index 92a18375..00000000 --- a/docs/html/navtreeindex7.js +++ /dev/null @@ -1,253 +0,0 @@ -var NAVTREEINDEX7 = -{ -"classmpl_1_1graph__communicator.html#a192fabbdbac09436fab92943148c5185":[2,0,0,19,79], -"classmpl_1_1graph__communicator.html#a1948c90e2873f0db6b7fc32f7240e80a":[3,0,0,18,117], -"classmpl_1_1graph__communicator.html#a1948c90e2873f0db6b7fc32f7240e80a":[2,0,0,19,117], -"classmpl_1_1graph__communicator.html#a197f9833a6c4685a2368b7bea2a60cd8":[3,0,0,18,164], -"classmpl_1_1graph__communicator.html#a197f9833a6c4685a2368b7bea2a60cd8":[2,0,0,19,164], -"classmpl_1_1graph__communicator.html#a19912b0013f991bbebf2ef46fcb93c70":[2,0,0,19,106], -"classmpl_1_1graph__communicator.html#a19912b0013f991bbebf2ef46fcb93c70":[3,0,0,18,106], -"classmpl_1_1graph__communicator.html#a1a2fbf1a89b606c316790a29a6c24344":[2,0,0,19,8], -"classmpl_1_1graph__communicator.html#a1a2fbf1a89b606c316790a29a6c24344":[3,0,0,18,8], -"classmpl_1_1graph__communicator.html#a1bf177485606687353cd50bc5a3b3c59":[3,0,0,18,72], -"classmpl_1_1graph__communicator.html#a1bf177485606687353cd50bc5a3b3c59":[2,0,0,19,72], -"classmpl_1_1graph__communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644":[3,0,0,18,187], -"classmpl_1_1graph__communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644":[2,0,0,19,187], -"classmpl_1_1graph__communicator.html#a1f45f3b4b5afa504963d30203bebcd67":[3,0,0,18,181], -"classmpl_1_1graph__communicator.html#a1f45f3b4b5afa504963d30203bebcd67":[2,0,0,19,181], -"classmpl_1_1graph__communicator.html#a20505014d3a5ac58a5601faee033d003":[3,0,0,18,70], -"classmpl_1_1graph__communicator.html#a20505014d3a5ac58a5601faee033d003":[2,0,0,19,70], -"classmpl_1_1graph__communicator.html#a20766ee389c97340241ff730eae49475":[2,0,0,19,73], -"classmpl_1_1graph__communicator.html#a20766ee389c97340241ff730eae49475":[3,0,0,18,73], -"classmpl_1_1graph__communicator.html#a20c2142532726d3a3f25e4eb3293fd4c":[3,0,0,18,155], -"classmpl_1_1graph__communicator.html#a20c2142532726d3a3f25e4eb3293fd4c":[2,0,0,19,155], -"classmpl_1_1graph__communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb":[2,0,0,19,33], -"classmpl_1_1graph__communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb":[3,0,0,18,33], -"classmpl_1_1graph__communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a":[2,0,0,19,182], -"classmpl_1_1graph__communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a":[3,0,0,18,182], -"classmpl_1_1graph__communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe":[2,0,0,19,7], -"classmpl_1_1graph__communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe":[3,0,0,18,7], -"classmpl_1_1graph__communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627":[2,0,0,19,165], -"classmpl_1_1graph__communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627":[3,0,0,18,165], -"classmpl_1_1graph__communicator.html#a2a901501dfe4dad53249a142a6c61f8a":[3,0,0,18,183], -"classmpl_1_1graph__communicator.html#a2a901501dfe4dad53249a142a6c61f8a":[2,0,0,19,183], -"classmpl_1_1graph__communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f":[3,0,0,18,127], -"classmpl_1_1graph__communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f":[2,0,0,19,127], -"classmpl_1_1graph__communicator.html#a32881aa49f5e9c71792e98629a131822":[2,0,0,19,48], -"classmpl_1_1graph__communicator.html#a32881aa49f5e9c71792e98629a131822":[3,0,0,18,48], -"classmpl_1_1graph__communicator.html#a34c527f23af855f716bf00a2658c9436":[3,0,0,18,68], -"classmpl_1_1graph__communicator.html#a34c527f23af855f716bf00a2658c9436":[2,0,0,19,68], -"classmpl_1_1graph__communicator.html#a36031fd4a0c2ed7bab527e0a4663971f":[2,0,0,19,179], -"classmpl_1_1graph__communicator.html#a36031fd4a0c2ed7bab527e0a4663971f":[3,0,0,18,179], -"classmpl_1_1graph__communicator.html#a377702be1b30166ad458fcef11b2c239":[2,0,0,19,135], -"classmpl_1_1graph__communicator.html#a377702be1b30166ad458fcef11b2c239":[3,0,0,18,135], -"classmpl_1_1graph__communicator.html#a39c2f12ebc86e0930266a60ffecea926":[2,0,0,19,148], -"classmpl_1_1graph__communicator.html#a39c2f12ebc86e0930266a60ffecea926":[3,0,0,18,148], -"classmpl_1_1graph__communicator.html#a3b4d541cab8706ae5a4a699aef0662d3":[2,0,0,19,178], -"classmpl_1_1graph__communicator.html#a3b4d541cab8706ae5a4a699aef0662d3":[3,0,0,18,178], -"classmpl_1_1graph__communicator.html#a3f433b69dace132e01bea64624fff4b3":[2,0,0,19,198], -"classmpl_1_1graph__communicator.html#a3f433b69dace132e01bea64624fff4b3":[3,0,0,18,198], -"classmpl_1_1graph__communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416":[2,0,0,19,113], -"classmpl_1_1graph__communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416":[3,0,0,18,113], -"classmpl_1_1graph__communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc":[3,0,0,18,97], -"classmpl_1_1graph__communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc":[2,0,0,19,97], -"classmpl_1_1graph__communicator.html#a3fbbc822e36ea95e865a7b37ac0ad984":[2,0,0,19,93], -"classmpl_1_1graph__communicator.html#a3fbbc822e36ea95e865a7b37ac0ad984":[3,0,0,18,93], -"classmpl_1_1graph__communicator.html#a43c7b3d19a5af4ba0f30e40045a2e459":[3,0,0,18,132], -"classmpl_1_1graph__communicator.html#a43c7b3d19a5af4ba0f30e40045a2e459":[2,0,0,19,132], -"classmpl_1_1graph__communicator.html#a445e05af65cdc53b7a981d4884a4c3b8":[3,0,0,18,81], -"classmpl_1_1graph__communicator.html#a445e05af65cdc53b7a981d4884a4c3b8":[2,0,0,19,81], -"classmpl_1_1graph__communicator.html#a45585975b4b7cc0795a02abf6494963b":[2,0,0,19,41], -"classmpl_1_1graph__communicator.html#a45585975b4b7cc0795a02abf6494963b":[3,0,0,18,41], -"classmpl_1_1graph__communicator.html#a455d8703c09913eebe31cd360351c308":[3,0,0,18,136], -"classmpl_1_1graph__communicator.html#a455d8703c09913eebe31cd360351c308":[2,0,0,19,136], -"classmpl_1_1graph__communicator.html#a46e8797b907b9539b2ee90713a675e5c":[3,0,0,18,124], -"classmpl_1_1graph__communicator.html#a46e8797b907b9539b2ee90713a675e5c":[2,0,0,19,124], -"classmpl_1_1graph__communicator.html#a477820ee73599e311a6e73ef06fbdf33":[2,0,0,19,180], -"classmpl_1_1graph__communicator.html#a477820ee73599e311a6e73ef06fbdf33":[3,0,0,18,180], -"classmpl_1_1graph__communicator.html#a480ef5ac8533cd47ef55b04454baddca":[3,0,0,18,168], -"classmpl_1_1graph__communicator.html#a480ef5ac8533cd47ef55b04454baddca":[2,0,0,19,168], -"classmpl_1_1graph__communicator.html#a494c7c1849713e45d99d901b31250b35":[3,0,0,18,154], -"classmpl_1_1graph__communicator.html#a494c7c1849713e45d99d901b31250b35":[2,0,0,19,154], -"classmpl_1_1graph__communicator.html#a4a29592502142845c3bb0031221189a3":[2,0,0,19,75], -"classmpl_1_1graph__communicator.html#a4a29592502142845c3bb0031221189a3":[3,0,0,18,75], -"classmpl_1_1graph__communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21":[2,0,0,19,116], -"classmpl_1_1graph__communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21":[3,0,0,18,116], -"classmpl_1_1graph__communicator.html#a4ac75dc1695c441e9e8faa185a458cc3":[2,0,0,19,34], -"classmpl_1_1graph__communicator.html#a4ac75dc1695c441e9e8faa185a458cc3":[3,0,0,18,34], -"classmpl_1_1graph__communicator.html#a4cff38dd56b3d53992babac77cbefa8d":[2,0,0,19,62], -"classmpl_1_1graph__communicator.html#a4cff38dd56b3d53992babac77cbefa8d":[3,0,0,18,62], -"classmpl_1_1graph__communicator.html#a4db43a46f468c60e84b35f95577ff0f4":[3,0,0,18,23], -"classmpl_1_1graph__communicator.html#a4db43a46f468c60e84b35f95577ff0f4":[2,0,0,19,23], -"classmpl_1_1graph__communicator.html#a4de1ecacd035af3dca830995098a2f49":[3,0,0,18,104], -"classmpl_1_1graph__communicator.html#a4de1ecacd035af3dca830995098a2f49":[2,0,0,19,104], -"classmpl_1_1graph__communicator.html#a5314e5dc5b35f952dba239b8f03be330":[2,0,0,19,32], -"classmpl_1_1graph__communicator.html#a5314e5dc5b35f952dba239b8f03be330":[3,0,0,18,32], -"classmpl_1_1graph__communicator.html#a545def7768f6786e06c36277c1d21cde":[2,0,0,19,37], -"classmpl_1_1graph__communicator.html#a545def7768f6786e06c36277c1d21cde":[3,0,0,18,37], -"classmpl_1_1graph__communicator.html#a54da0c73668349841c941c53c6acff81":[3,0,0,18,139], -"classmpl_1_1graph__communicator.html#a54da0c73668349841c941c53c6acff81":[2,0,0,19,139], -"classmpl_1_1graph__communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84":[3,0,0,18,9], -"classmpl_1_1graph__communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84":[2,0,0,19,9], -"classmpl_1_1graph__communicator.html#a55feab940e9c72241215918199931936":[3,0,0,18,15], -"classmpl_1_1graph__communicator.html#a55feab940e9c72241215918199931936":[2,0,0,19,15], -"classmpl_1_1graph__communicator.html#a55fef351e8bb5d3062d25683cb404c9d":[3,0,0,18,163], -"classmpl_1_1graph__communicator.html#a55fef351e8bb5d3062d25683cb404c9d":[2,0,0,19,163], -"classmpl_1_1graph__communicator.html#a5664d9591456924a7343082445bc8452":[2,0,0,19,64], -"classmpl_1_1graph__communicator.html#a5664d9591456924a7343082445bc8452":[3,0,0,18,64], -"classmpl_1_1graph__communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7":[3,0,0,18,82], -"classmpl_1_1graph__communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7":[2,0,0,19,82], -"classmpl_1_1graph__communicator.html#a58b6d65e9351b61c493967718f550614":[3,0,0,18,121], -"classmpl_1_1graph__communicator.html#a58b6d65e9351b61c493967718f550614":[2,0,0,19,121], -"classmpl_1_1graph__communicator.html#a5a80517f1de86265d2a863a7c1fd5032":[3,0,0,18,173], -"classmpl_1_1graph__communicator.html#a5a80517f1de86265d2a863a7c1fd5032":[2,0,0,19,173], -"classmpl_1_1graph__communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c":[2,0,0,19,77], -"classmpl_1_1graph__communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c":[3,0,0,18,77], -"classmpl_1_1graph__communicator.html#a5ce91750a7c77edf43e53ac88e4e8524":[2,0,0,19,55], -"classmpl_1_1graph__communicator.html#a5ce91750a7c77edf43e53ac88e4e8524":[3,0,0,18,55], -"classmpl_1_1graph__communicator.html#a5ceb8a7771930409a0b7c54042b49866":[3,0,0,18,92], -"classmpl_1_1graph__communicator.html#a5ceb8a7771930409a0b7c54042b49866":[2,0,0,19,92], -"classmpl_1_1graph__communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec":[3,0,0,18,24], -"classmpl_1_1graph__communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec":[2,0,0,19,24], -"classmpl_1_1graph__communicator.html#a601c251b4c10c6797af3cd741dea4d55":[3,0,0,18,49], -"classmpl_1_1graph__communicator.html#a601c251b4c10c6797af3cd741dea4d55":[2,0,0,19,49], -"classmpl_1_1graph__communicator.html#a6149ac444daf9efa0818c1ad86df03f4":[3,0,0,18,188], -"classmpl_1_1graph__communicator.html#a6149ac444daf9efa0818c1ad86df03f4":[2,0,0,19,188], -"classmpl_1_1graph__communicator.html#a61c69fd52a576be43b7331536f54b73f":[3,0,0,18,118], -"classmpl_1_1graph__communicator.html#a61c69fd52a576be43b7331536f54b73f":[2,0,0,19,118], -"classmpl_1_1graph__communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2":[2,0,0,19,27], -"classmpl_1_1graph__communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2":[3,0,0,18,27], -"classmpl_1_1graph__communicator.html#a636784ef8a1e076a303e3e6279de1e7d":[2,0,0,19,160], -"classmpl_1_1graph__communicator.html#a636784ef8a1e076a303e3e6279de1e7d":[3,0,0,18,160], -"classmpl_1_1graph__communicator.html#a65311bd6bde1b8de5b8acf9ae902104a":[2,0,0,19,90], -"classmpl_1_1graph__communicator.html#a65311bd6bde1b8de5b8acf9ae902104a":[3,0,0,18,90], -"classmpl_1_1graph__communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3":[3,0,0,18,10], -"classmpl_1_1graph__communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3":[2,0,0,19,10], -"classmpl_1_1graph__communicator.html#a67f541a36dee046cc12d15d9133930b7":[2,0,0,19,123], -"classmpl_1_1graph__communicator.html#a67f541a36dee046cc12d15d9133930b7":[3,0,0,18,123], -"classmpl_1_1graph__communicator.html#a68996ab5379c9a104572b804633d869e":[3,0,0,18,61], -"classmpl_1_1graph__communicator.html#a68996ab5379c9a104572b804633d869e":[2,0,0,19,61], -"classmpl_1_1graph__communicator.html#a693590693b8621565e94abdd6763d5b6":[2,0,0,19,150], -"classmpl_1_1graph__communicator.html#a693590693b8621565e94abdd6763d5b6":[3,0,0,18,150], -"classmpl_1_1graph__communicator.html#a69ebec18f9d55bc8e2b6951f97855068":[2,0,0,19,67], -"classmpl_1_1graph__communicator.html#a69ebec18f9d55bc8e2b6951f97855068":[3,0,0,18,67], -"classmpl_1_1graph__communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f":[3,0,0,18,80], -"classmpl_1_1graph__communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f":[2,0,0,19,80], -"classmpl_1_1graph__communicator.html#a719512973bc590402ac30b10e5227d2b":[2,0,0,19,26], -"classmpl_1_1graph__communicator.html#a719512973bc590402ac30b10e5227d2b":[3,0,0,18,26], -"classmpl_1_1graph__communicator.html#a72d2639f200e5a36f1f81df5c499f06f":[3,0,0,18,112], -"classmpl_1_1graph__communicator.html#a72d2639f200e5a36f1f81df5c499f06f":[2,0,0,19,112], -"classmpl_1_1graph__communicator.html#a73df8f569865237bc58e2445c7d07742":[2,0,0,19,52], -"classmpl_1_1graph__communicator.html#a73df8f569865237bc58e2445c7d07742":[3,0,0,18,52], -"classmpl_1_1graph__communicator.html#a753e8742d27ff29a660b07ee0b90b69e":[2,0,0,19,53], -"classmpl_1_1graph__communicator.html#a753e8742d27ff29a660b07ee0b90b69e":[3,0,0,18,53], -"classmpl_1_1graph__communicator.html#a76dbca1b1f6089ee9e07e997b5d79295":[2,0,0,19,76], -"classmpl_1_1graph__communicator.html#a76dbca1b1f6089ee9e07e997b5d79295":[3,0,0,18,76], -"classmpl_1_1graph__communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0":[2,0,0,19,184], -"classmpl_1_1graph__communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0":[3,0,0,18,184], -"classmpl_1_1graph__communicator.html#a779f215eb82ce71764befaae9918b596":[3,0,0,18,85], -"classmpl_1_1graph__communicator.html#a779f215eb82ce71764befaae9918b596":[2,0,0,19,85], -"classmpl_1_1graph__communicator.html#a79e5f4cd63cf9354ceedc4da193e2410":[2,0,0,19,98], -"classmpl_1_1graph__communicator.html#a79e5f4cd63cf9354ceedc4da193e2410":[3,0,0,18,98], -"classmpl_1_1graph__communicator.html#a7abdf44a7c377ba7191cb4abc6648afe":[2,0,0,19,63], -"classmpl_1_1graph__communicator.html#a7abdf44a7c377ba7191cb4abc6648afe":[3,0,0,18,63], -"classmpl_1_1graph__communicator.html#a7b672d71b83fafca8f6bf4d435331180":[3,0,0,18,35], -"classmpl_1_1graph__communicator.html#a7b672d71b83fafca8f6bf4d435331180":[2,0,0,19,35], -"classmpl_1_1graph__communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af":[3,0,0,18,176], -"classmpl_1_1graph__communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af":[2,0,0,19,176], -"classmpl_1_1graph__communicator.html#a7eddabba5f98c99db189844854690d13":[2,0,0,19,71], -"classmpl_1_1graph__communicator.html#a7eddabba5f98c99db189844854690d13":[3,0,0,18,71], -"classmpl_1_1graph__communicator.html#a82b6f15cef4c0daa6825bc699418df22":[3,0,0,18,96], -"classmpl_1_1graph__communicator.html#a82b6f15cef4c0daa6825bc699418df22":[2,0,0,19,96], -"classmpl_1_1graph__communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9":[3,0,0,18,39], -"classmpl_1_1graph__communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9":[2,0,0,19,39], -"classmpl_1_1graph__communicator.html#a871cba17f8d1891fb0613f9a23c38866":[2,0,0,19,196], -"classmpl_1_1graph__communicator.html#a871cba17f8d1891fb0613f9a23c38866":[3,0,0,18,196], -"classmpl_1_1graph__communicator.html#a88368d3f4d7b375825ba839746aea7dd":[3,0,0,18,19], -"classmpl_1_1graph__communicator.html#a88368d3f4d7b375825ba839746aea7dd":[2,0,0,19,19], -"classmpl_1_1graph__communicator.html#a89b9a55af5259f119281592b4f63f2ee":[2,0,0,19,129], -"classmpl_1_1graph__communicator.html#a89b9a55af5259f119281592b4f63f2ee":[3,0,0,18,129], -"classmpl_1_1graph__communicator.html#a8e43e08af5e8481049731092274aca76":[3,0,0,18,74], -"classmpl_1_1graph__communicator.html#a8e43e08af5e8481049731092274aca76":[2,0,0,19,74], -"classmpl_1_1graph__communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b":[3,0,0,18,170], -"classmpl_1_1graph__communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b":[2,0,0,19,170], -"classmpl_1_1graph__communicator.html#a95d5c90f2a58fe228d846942fe700645":[3,0,0,18,51], -"classmpl_1_1graph__communicator.html#a95d5c90f2a58fe228d846942fe700645":[2,0,0,19,51], -"classmpl_1_1graph__communicator.html#a970647a9680c6bdc3ffbe0814b32f989":[3,0,0,18,107], -"classmpl_1_1graph__communicator.html#a970647a9680c6bdc3ffbe0814b32f989":[2,0,0,19,107], -"classmpl_1_1graph__communicator.html#a997e3a727642f7fe7ab74a7342fa334b":[2,0,0,19,13], -"classmpl_1_1graph__communicator.html#a997e3a727642f7fe7ab74a7342fa334b":[3,0,0,18,13], -"classmpl_1_1graph__communicator.html#a9b838df23d3b54ac7ff8f249e2a59e64":[2,0,0,19,6], -"classmpl_1_1graph__communicator.html#a9b838df23d3b54ac7ff8f249e2a59e64":[3,0,0,18,6], -"classmpl_1_1graph__communicator.html#a9c706fcf6770f01b69256c7f76c97222":[2,0,0,19,144], -"classmpl_1_1graph__communicator.html#a9c706fcf6770f01b69256c7f76c97222":[3,0,0,18,144], -"classmpl_1_1graph__communicator.html#a9dccde1bf10e911c3a00d1a546005e94":[2,0,0,19,88], -"classmpl_1_1graph__communicator.html#a9dccde1bf10e911c3a00d1a546005e94":[3,0,0,18,88], -"classmpl_1_1graph__communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d":[3,0,0,18,157], -"classmpl_1_1graph__communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d":[2,0,0,19,157], -"classmpl_1_1graph__communicator.html#a9fbb87f9933ff071092164c9e264d817":[3,0,0,18,120], -"classmpl_1_1graph__communicator.html#a9fbb87f9933ff071092164c9e264d817":[2,0,0,19,120], -"classmpl_1_1graph__communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6":[2,0,0,19,171], -"classmpl_1_1graph__communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6":[3,0,0,18,171], -"classmpl_1_1graph__communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5":[3,0,0,18,186], -"classmpl_1_1graph__communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5":[2,0,0,19,186], -"classmpl_1_1graph__communicator.html#aa2b51b89d72555ebfb1862d1de688061":[3,0,0,18,58], -"classmpl_1_1graph__communicator.html#aa2b51b89d72555ebfb1862d1de688061":[2,0,0,19,58], -"classmpl_1_1graph__communicator.html#aa4407a90c2f598867b36e8e557b72ec0":[3,0,0,18,162], -"classmpl_1_1graph__communicator.html#aa4407a90c2f598867b36e8e557b72ec0":[2,0,0,19,162], -"classmpl_1_1graph__communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf":[3,0,0,18,56], -"classmpl_1_1graph__communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf":[2,0,0,19,56], -"classmpl_1_1graph__communicator.html#aa541e7830014dce23eb1ce5f6bcfe281":[2,0,0,19,54], -"classmpl_1_1graph__communicator.html#aa541e7830014dce23eb1ce5f6bcfe281":[3,0,0,18,54], -"classmpl_1_1graph__communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca":[3,0,0,18,161], -"classmpl_1_1graph__communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca":[2,0,0,19,161], -"classmpl_1_1graph__communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42":[2,0,0,19,174], -"classmpl_1_1graph__communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42":[3,0,0,18,174], -"classmpl_1_1graph__communicator.html#aa91aed6395fdcbb40788323a4cf45110":[3,0,0,18,84], -"classmpl_1_1graph__communicator.html#aa91aed6395fdcbb40788323a4cf45110":[2,0,0,19,84], -"classmpl_1_1graph__communicator.html#aaa714c0902d770205ee9cfb636f20fed":[3,0,0,18,166], -"classmpl_1_1graph__communicator.html#aaa714c0902d770205ee9cfb636f20fed":[2,0,0,19,166], -"classmpl_1_1graph__communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f":[2,0,0,19,185], -"classmpl_1_1graph__communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f":[3,0,0,18,185], -"classmpl_1_1graph__communicator.html#aad369f0de0b51dc3cf7992ed26c0799d":[2,0,0,19,66], -"classmpl_1_1graph__communicator.html#aad369f0de0b51dc3cf7992ed26c0799d":[3,0,0,18,66], -"classmpl_1_1graph__communicator.html#aad40f322ef427d759fe699b1318c3103":[3,0,0,18,87], -"classmpl_1_1graph__communicator.html#aad40f322ef427d759fe699b1318c3103":[2,0,0,19,87], -"classmpl_1_1graph__communicator.html#aadb9f14a7a9f9bd44eae7832daed895d":[2,0,0,19,59], -"classmpl_1_1graph__communicator.html#aadb9f14a7a9f9bd44eae7832daed895d":[3,0,0,18,59], -"classmpl_1_1graph__communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2":[2,0,0,19,125], -"classmpl_1_1graph__communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2":[3,0,0,18,125], -"classmpl_1_1graph__communicator.html#aae3643fa3e833c9dfb4eaf871235aed3":[3,0,0,18,159], -"classmpl_1_1graph__communicator.html#aae3643fa3e833c9dfb4eaf871235aed3":[2,0,0,19,159], -"classmpl_1_1graph__communicator.html#aaf647eec3afe83caf2afafe5a82b405a":[3,0,0,18,122], -"classmpl_1_1graph__communicator.html#aaf647eec3afe83caf2afafe5a82b405a":[2,0,0,19,122], -"classmpl_1_1graph__communicator.html#aafb144ba1a5494f2a21de28c50b3ab91":[3,0,0,18,30], -"classmpl_1_1graph__communicator.html#aafb144ba1a5494f2a21de28c50b3ab91":[2,0,0,19,30], -"classmpl_1_1graph__communicator.html#ab4242c2300ed9c2d844001847027b148":[3,0,0,18,4], -"classmpl_1_1graph__communicator.html#ab4242c2300ed9c2d844001847027b148":[2,0,0,19,4], -"classmpl_1_1graph__communicator.html#aba77e505c9c19f3c6acdf10d4bc9fe16":[2,0,0,19,89], -"classmpl_1_1graph__communicator.html#aba77e505c9c19f3c6acdf10d4bc9fe16":[3,0,0,18,89], -"classmpl_1_1graph__communicator.html#aba80b0971e6f8d2f04d1454f389833be":[2,0,0,19,177], -"classmpl_1_1graph__communicator.html#aba80b0971e6f8d2f04d1454f389833be":[3,0,0,18,177], -"classmpl_1_1graph__communicator.html#abb0001ba1ee4c2fbd53038bde821e647":[2,0,0,19,109], -"classmpl_1_1graph__communicator.html#abb0001ba1ee4c2fbd53038bde821e647":[3,0,0,18,109], -"classmpl_1_1graph__communicator.html#abb3d36d582c7a469b5e49dca53c4f952":[3,0,0,18,44], -"classmpl_1_1graph__communicator.html#abb3d36d582c7a469b5e49dca53c4f952":[2,0,0,19,44], -"classmpl_1_1graph__communicator.html#abbc79395f9583143b1427c2e3f1c6637":[3,0,0,18,149], -"classmpl_1_1graph__communicator.html#abbc79395f9583143b1427c2e3f1c6637":[2,0,0,19,149], -"classmpl_1_1graph__communicator.html#abdb6d8fc8a9aafabf50b96275f09775d":[2,0,0,19,100], -"classmpl_1_1graph__communicator.html#abdb6d8fc8a9aafabf50b96275f09775d":[3,0,0,18,100], -"classmpl_1_1graph__communicator.html#abe1bd8f32c690ee7a31456da2c437bdf":[3,0,0,18,192], -"classmpl_1_1graph__communicator.html#abe1bd8f32c690ee7a31456da2c437bdf":[2,0,0,19,192], -"classmpl_1_1graph__communicator.html#abe91007be7acef7641d6cbb08526d53b":[2,0,0,19,60], -"classmpl_1_1graph__communicator.html#abe91007be7acef7641d6cbb08526d53b":[3,0,0,18,60], -"classmpl_1_1graph__communicator.html#abeb99f29459a82f9027dfc8b4bd60add":[2,0,0,19,195], -"classmpl_1_1graph__communicator.html#abeb99f29459a82f9027dfc8b4bd60add":[3,0,0,18,195], -"classmpl_1_1graph__communicator.html#ac402242f2ad68dbce183e60cfcc82382":[2,0,0,19,189], -"classmpl_1_1graph__communicator.html#ac402242f2ad68dbce183e60cfcc82382":[3,0,0,18,189], -"classmpl_1_1graph__communicator.html#ac43f72ca3930976c113403fd465087b0":[3,0,0,18,28], -"classmpl_1_1graph__communicator.html#ac43f72ca3930976c113403fd465087b0":[2,0,0,19,28], -"classmpl_1_1graph__communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5":[2,0,0,19,25], -"classmpl_1_1graph__communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5":[3,0,0,18,25], -"classmpl_1_1graph__communicator.html#ac4b1db52070739de82b25f972b9e6996":[3,0,0,18,43] -}; diff --git a/docs/html/navtreeindex8.js b/docs/html/navtreeindex8.js deleted file mode 100644 index c6654ad9..00000000 --- a/docs/html/navtreeindex8.js +++ /dev/null @@ -1,253 +0,0 @@ -var NAVTREEINDEX8 = -{ -"classmpl_1_1graph__communicator.html#ac4b1db52070739de82b25f972b9e6996":[2,0,0,19,43], -"classmpl_1_1graph__communicator.html#ac514a6fe8a481f7120bc1d105c09ee96":[3,0,0,18,114], -"classmpl_1_1graph__communicator.html#ac514a6fe8a481f7120bc1d105c09ee96":[2,0,0,19,114], -"classmpl_1_1graph__communicator.html#ac7cb886dc70531a897bce6396c9a6e7e":[3,0,0,18,91], -"classmpl_1_1graph__communicator.html#ac7cb886dc70531a897bce6396c9a6e7e":[2,0,0,19,91], -"classmpl_1_1graph__communicator.html#acbe2058694618ea2c085d03bcaf4946c":[3,0,0,18,42], -"classmpl_1_1graph__communicator.html#acbe2058694618ea2c085d03bcaf4946c":[2,0,0,19,42], -"classmpl_1_1graph__communicator.html#acce39280ea657a7d9e5d675631cf7a12":[2,0,0,19,65], -"classmpl_1_1graph__communicator.html#acce39280ea657a7d9e5d675631cf7a12":[3,0,0,18,65], -"classmpl_1_1graph__communicator.html#acdeb1107c64614728b6c2cc0e65075bf":[2,0,0,19,126], -"classmpl_1_1graph__communicator.html#acdeb1107c64614728b6c2cc0e65075bf":[3,0,0,18,126], -"classmpl_1_1graph__communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47":[2,0,0,19,50], -"classmpl_1_1graph__communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47":[3,0,0,18,50], -"classmpl_1_1graph__communicator.html#ad15575d951e6a6c4327052e2ff01730f":[3,0,0,18,57], -"classmpl_1_1graph__communicator.html#ad15575d951e6a6c4327052e2ff01730f":[2,0,0,19,57], -"classmpl_1_1graph__communicator.html#ad2342955984c4db387d52a5414b212c5":[2,0,0,19,102], -"classmpl_1_1graph__communicator.html#ad2342955984c4db387d52a5414b212c5":[3,0,0,18,102], -"classmpl_1_1graph__communicator.html#ad2d304708463bb6f91e1a54b3d87106a":[2,0,0,19,78], -"classmpl_1_1graph__communicator.html#ad2d304708463bb6f91e1a54b3d87106a":[3,0,0,18,78], -"classmpl_1_1graph__communicator.html#ad517010b26940090a839b6ef0c3d95ad":[2,0,0,19,141], -"classmpl_1_1graph__communicator.html#ad517010b26940090a839b6ef0c3d95ad":[3,0,0,18,141], -"classmpl_1_1graph__communicator.html#ad5daeea3d8b7033a2f70cd19582e098a":[3,0,0,18,130], -"classmpl_1_1graph__communicator.html#ad5daeea3d8b7033a2f70cd19582e098a":[2,0,0,19,130], -"classmpl_1_1graph__communicator.html#ad67313aace6a05f58081939eb1d2a4b8":[3,0,0,18,40], -"classmpl_1_1graph__communicator.html#ad67313aace6a05f58081939eb1d2a4b8":[2,0,0,19,40], -"classmpl_1_1graph__communicator.html#ad709e10e351d9ffd4dd9917a9b697c19":[3,0,0,18,18], -"classmpl_1_1graph__communicator.html#ad709e10e351d9ffd4dd9917a9b697c19":[2,0,0,19,18], -"classmpl_1_1graph__communicator.html#ad8c0dc208fd9705a2423346d0baaff58":[2,0,0,19,110], -"classmpl_1_1graph__communicator.html#ad8c0dc208fd9705a2423346d0baaff58":[3,0,0,18,110], -"classmpl_1_1graph__communicator.html#ad9dda1e430895757470e09c7ac721dee":[3,0,0,18,21], -"classmpl_1_1graph__communicator.html#ad9dda1e430895757470e09c7ac721dee":[2,0,0,19,21], -"classmpl_1_1graph__communicator.html#ada2dc41f3f09788b9dd87be27981668a":[2,0,0,19,138], -"classmpl_1_1graph__communicator.html#ada2dc41f3f09788b9dd87be27981668a":[3,0,0,18,138], -"classmpl_1_1graph__communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d":[2,0,0,19,38], -"classmpl_1_1graph__communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d":[3,0,0,18,38], -"classmpl_1_1graph__communicator.html#adb4b189592ceb6f3a16c53d48e3071b8":[2,0,0,19,175], -"classmpl_1_1graph__communicator.html#adb4b189592ceb6f3a16c53d48e3071b8":[3,0,0,18,175], -"classmpl_1_1graph__communicator.html#adb886db659e8bc352ca70800704b8956":[2,0,0,19,158], -"classmpl_1_1graph__communicator.html#adb886db659e8bc352ca70800704b8956":[3,0,0,18,158], -"classmpl_1_1graph__communicator.html#adce11d71ed0d0398316f5a5669b5bdbf":[3,0,0,18,143], -"classmpl_1_1graph__communicator.html#adce11d71ed0d0398316f5a5669b5bdbf":[2,0,0,19,143], -"classmpl_1_1graph__communicator.html#add45a9df6b60973abe8d13b9161c0ed8":[3,0,0,18,152], -"classmpl_1_1graph__communicator.html#add45a9df6b60973abe8d13b9161c0ed8":[2,0,0,19,152], -"classmpl_1_1graph__communicator.html#ade499e3631297c5268da93604ec68a94":[2,0,0,19,167], -"classmpl_1_1graph__communicator.html#ade499e3631297c5268da93604ec68a94":[3,0,0,18,167], -"classmpl_1_1graph__communicator.html#adf4170f0647e141b72b441c99a5421f5":[2,0,0,19,16], -"classmpl_1_1graph__communicator.html#adf4170f0647e141b72b441c99a5421f5":[3,0,0,18,16], -"classmpl_1_1graph__communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597":[2,0,0,19,169], -"classmpl_1_1graph__communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597":[3,0,0,18,169], -"classmpl_1_1graph__communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789":[2,0,0,19,147], -"classmpl_1_1graph__communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789":[3,0,0,18,147], -"classmpl_1_1graph__communicator.html#ae17e2ec67fab08b09d7c67923fa81b42":[2,0,0,19,46], -"classmpl_1_1graph__communicator.html#ae17e2ec67fab08b09d7c67923fa81b42":[3,0,0,18,46], -"classmpl_1_1graph__communicator.html#ae2941001b886519f2d10d0ebb9901e70":[2,0,0,19,31], -"classmpl_1_1graph__communicator.html#ae2941001b886519f2d10d0ebb9901e70":[3,0,0,18,31], -"classmpl_1_1graph__communicator.html#ae2bdc9265ab60a53dced1a251b3e5898":[2,0,0,19,194], -"classmpl_1_1graph__communicator.html#ae2bdc9265ab60a53dced1a251b3e5898":[3,0,0,18,194], -"classmpl_1_1graph__communicator.html#ae35acd56966f491923a80abbc13fe74a":[3,0,0,18,108], -"classmpl_1_1graph__communicator.html#ae35acd56966f491923a80abbc13fe74a":[2,0,0,19,108], -"classmpl_1_1graph__communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3":[2,0,0,19,29], -"classmpl_1_1graph__communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3":[3,0,0,18,29], -"classmpl_1_1graph__communicator.html#ae6e7de007099b7dc579f638a39d56911":[3,0,0,18,105], -"classmpl_1_1graph__communicator.html#ae6e7de007099b7dc579f638a39d56911":[2,0,0,19,105], -"classmpl_1_1graph__communicator.html#ae71687a9aa6bac6a2b888245aa801020":[2,0,0,19,83], -"classmpl_1_1graph__communicator.html#ae71687a9aa6bac6a2b888245aa801020":[3,0,0,18,83], -"classmpl_1_1graph__communicator.html#aea3f30e3e33676cfbd8f3757082949cd":[2,0,0,19,142], -"classmpl_1_1graph__communicator.html#aea3f30e3e33676cfbd8f3757082949cd":[3,0,0,18,142], -"classmpl_1_1graph__communicator.html#aed2415ddb3e27cce97fd5317f781a86c":[3,0,0,18,156], -"classmpl_1_1graph__communicator.html#aed2415ddb3e27cce97fd5317f781a86c":[2,0,0,19,156], -"classmpl_1_1graph__communicator.html#af11d56af7c3459eac6b3f5285788c8b9":[2,0,0,19,131], -"classmpl_1_1graph__communicator.html#af11d56af7c3459eac6b3f5285788c8b9":[3,0,0,18,131], -"classmpl_1_1graph__communicator.html#af1d52b673c059c284806768be1240afc":[2,0,0,19,47], -"classmpl_1_1graph__communicator.html#af1d52b673c059c284806768be1240afc":[3,0,0,18,47], -"classmpl_1_1graph__communicator.html#af39af30840dbd4cdefb3c91b96f80a40":[2,0,0,19,140], -"classmpl_1_1graph__communicator.html#af39af30840dbd4cdefb3c91b96f80a40":[3,0,0,18,140], -"classmpl_1_1graph__communicator.html#af3ce31d403e1e2c143acb593ca1b21c2":[3,0,0,18,133], -"classmpl_1_1graph__communicator.html#af3ce31d403e1e2c143acb593ca1b21c2":[2,0,0,19,133], -"classmpl_1_1graph__communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f":[2,0,0,19,146], -"classmpl_1_1graph__communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f":[3,0,0,18,146], -"classmpl_1_1graph__communicator.html#af43c205c247a23c35ec015b257f10a6e":[2,0,0,19,45], -"classmpl_1_1graph__communicator.html#af43c205c247a23c35ec015b257f10a6e":[3,0,0,18,45], -"classmpl_1_1graph__communicator.html#af5822b089b634a670a9f3cef6e37dcef":[3,0,0,18,134], -"classmpl_1_1graph__communicator.html#af5822b089b634a670a9f3cef6e37dcef":[2,0,0,19,134], -"classmpl_1_1graph__communicator.html#af66054a704ac25557aa25b356e8abd63":[2,0,0,19,2], -"classmpl_1_1graph__communicator.html#af66054a704ac25557aa25b356e8abd63":[3,0,0,18,2], -"classmpl_1_1graph__communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703":[2,0,0,19,2,2], -"classmpl_1_1graph__communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703":[3,0,0,18,2,2], -"classmpl_1_1graph__communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29":[2,0,0,19,2,3], -"classmpl_1_1graph__communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29":[3,0,0,18,2,3], -"classmpl_1_1graph__communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac":[2,0,0,19,2,1], -"classmpl_1_1graph__communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac":[3,0,0,18,2,1], -"classmpl_1_1graph__communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8":[2,0,0,19,2,0], -"classmpl_1_1graph__communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8":[3,0,0,18,2,0], -"classmpl_1_1graph__communicator.html#af786635362fca5a0f915771332383589":[3,0,0,18,111], -"classmpl_1_1graph__communicator.html#af786635362fca5a0f915771332383589":[2,0,0,19,111], -"classmpl_1_1graph__communicator.html#af81016b2d1c45d91880894f13ba74182":[2,0,0,19,3], -"classmpl_1_1graph__communicator.html#af81016b2d1c45d91880894f13ba74182":[3,0,0,18,3], -"classmpl_1_1graph__communicator.html#afcb7048f892b4c371bba2e261e565656":[3,0,0,18,22], -"classmpl_1_1graph__communicator.html#afcb7048f892b4c371bba2e261e565656":[2,0,0,19,22], -"classmpl_1_1graph__communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3":[2,0,0,19,115], -"classmpl_1_1graph__communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3":[3,0,0,18,115], -"classmpl_1_1graph__communicator.html#afe6c73aa613bf07ed4790210f10a0f1c":[2,0,0,19,172], -"classmpl_1_1graph__communicator.html#afe6c73aa613bf07ed4790210f10a0f1c":[3,0,0,18,172], -"classmpl_1_1graph__communicator_1_1edge__set.html":[3,0,0,18,0], -"classmpl_1_1graph__communicator_1_1edge__set.html":[2,0,0,19,0], -"classmpl_1_1graph__communicator_1_1edge__set.html#a015685ec461e590fa7272cbf91220d18":[3,0,0,18,0,0], -"classmpl_1_1graph__communicator_1_1edge__set.html#a015685ec461e590fa7272cbf91220d18":[2,0,0,19,0,0], -"classmpl_1_1graph__communicator_1_1edge__set.html#a108a464ce7190e45fe9aa162ffcd779c":[3,0,0,18,0,2], -"classmpl_1_1graph__communicator_1_1edge__set.html#a108a464ce7190e45fe9aa162ffcd779c":[2,0,0,19,0,2], -"classmpl_1_1graph__communicator_1_1edge__set.html#a17430180fb679bda0388e2e5a9ee18f8":[2,0,0,19,0,5], -"classmpl_1_1graph__communicator_1_1edge__set.html#a17430180fb679bda0388e2e5a9ee18f8":[3,0,0,18,0,5], -"classmpl_1_1graph__communicator_1_1edge__set.html#a552f6b7dfdeeaf97dda2450135f23783":[2,0,0,19,0,6], -"classmpl_1_1graph__communicator_1_1edge__set.html#a552f6b7dfdeeaf97dda2450135f23783":[3,0,0,18,0,6], -"classmpl_1_1graph__communicator_1_1edge__set.html#ab1f12c9c8eaa5d350d019abe32817b86":[2,0,0,19,0,8], -"classmpl_1_1graph__communicator_1_1edge__set.html#ab1f12c9c8eaa5d350d019abe32817b86":[3,0,0,18,0,8], -"classmpl_1_1graph__communicator_1_1edge__set.html#ab383a23d687c47ad7b85309f81ffdb1b":[2,0,0,19,0,1], -"classmpl_1_1graph__communicator_1_1edge__set.html#ab383a23d687c47ad7b85309f81ffdb1b":[3,0,0,18,0,1], -"classmpl_1_1graph__communicator_1_1edge__set.html#ab94d3075422b9dc7eeb87af9e32c0b43":[3,0,0,18,0,7], -"classmpl_1_1graph__communicator_1_1edge__set.html#ab94d3075422b9dc7eeb87af9e32c0b43":[2,0,0,19,0,7], -"classmpl_1_1graph__communicator_1_1edge__set.html#abcf980f8207f9165319e4ea0b1785112":[3,0,0,18,0,4], -"classmpl_1_1graph__communicator_1_1edge__set.html#abcf980f8207f9165319e4ea0b1785112":[2,0,0,19,0,4], -"classmpl_1_1graph__communicator_1_1edge__set.html#acc11f382d1c7534095f6392fec035fe6":[2,0,0,19,0,3], -"classmpl_1_1graph__communicator_1_1edge__set.html#acc11f382d1c7534095f6392fec035fe6":[3,0,0,18,0,3], -"classmpl_1_1graph__communicator_1_1node__list.html":[3,0,0,18,1], -"classmpl_1_1graph__communicator_1_1node__list.html":[2,0,0,19,1], -"classmpl_1_1graph__communicator_1_1node__list.html#a199f783f69146375fd4890c1b318189f":[2,0,0,19,1,3], -"classmpl_1_1graph__communicator_1_1node__list.html#a199f783f69146375fd4890c1b318189f":[3,0,0,18,1,3], -"classmpl_1_1graph__communicator_1_1node__list.html#a25f3935b78cf4dd11a589620e727536a":[2,0,0,19,1,8], -"classmpl_1_1graph__communicator_1_1node__list.html#a25f3935b78cf4dd11a589620e727536a":[3,0,0,18,1,8], -"classmpl_1_1graph__communicator_1_1node__list.html#a51b3fcd822115593a2af29b5745aa224":[2,0,0,19,1,4], -"classmpl_1_1graph__communicator_1_1node__list.html#a51b3fcd822115593a2af29b5745aa224":[3,0,0,18,1,4], -"classmpl_1_1graph__communicator_1_1node__list.html#a5586635b21b9dbc9cb1d50c1cf9471a1":[2,0,0,19,1,0], -"classmpl_1_1graph__communicator_1_1node__list.html#a5586635b21b9dbc9cb1d50c1cf9471a1":[3,0,0,18,1,0], -"classmpl_1_1graph__communicator_1_1node__list.html#a5f60260b8bd1bdc7fe8c7b7945e27b8c":[2,0,0,19,1,9], -"classmpl_1_1graph__communicator_1_1node__list.html#a5f60260b8bd1bdc7fe8c7b7945e27b8c":[3,0,0,18,1,9], -"classmpl_1_1graph__communicator_1_1node__list.html#a6705675a9a7343424dece2f056060f4a":[3,0,0,18,1,6], -"classmpl_1_1graph__communicator_1_1node__list.html#a6705675a9a7343424dece2f056060f4a":[2,0,0,19,1,6], -"classmpl_1_1graph__communicator_1_1node__list.html#a864a79402650e1b3c453bf86a588dd1d":[3,0,0,18,1,12], -"classmpl_1_1graph__communicator_1_1node__list.html#a864a79402650e1b3c453bf86a588dd1d":[2,0,0,19,1,12], -"classmpl_1_1graph__communicator_1_1node__list.html#a8678648832d56e5b555d19e491e6268a":[3,0,0,18,1,2], -"classmpl_1_1graph__communicator_1_1node__list.html#a8678648832d56e5b555d19e491e6268a":[2,0,0,19,1,2], -"classmpl_1_1graph__communicator_1_1node__list.html#a9321529165dbf31bdacaed44c2c3bd89":[2,0,0,19,1,5], -"classmpl_1_1graph__communicator_1_1node__list.html#a9321529165dbf31bdacaed44c2c3bd89":[3,0,0,18,1,5], -"classmpl_1_1graph__communicator_1_1node__list.html#aa84022c75e433a413319022844309f84":[2,0,0,19,1,1], -"classmpl_1_1graph__communicator_1_1node__list.html#aa84022c75e433a413319022844309f84":[3,0,0,18,1,1], -"classmpl_1_1graph__communicator_1_1node__list.html#aab4b2d09a2edf289b646510d0bf55eda":[3,0,0,18,1,10], -"classmpl_1_1graph__communicator_1_1node__list.html#aab4b2d09a2edf289b646510d0bf55eda":[2,0,0,19,1,10], -"classmpl_1_1graph__communicator_1_1node__list.html#aceebd8bb0abded270a3246abb4996efe":[3,0,0,18,1,11], -"classmpl_1_1graph__communicator_1_1node__list.html#aceebd8bb0abded270a3246abb4996efe":[2,0,0,19,1,11], -"classmpl_1_1graph__communicator_1_1node__list.html#afe55816c0169408a56e42c412f04e86f":[2,0,0,19,1,7], -"classmpl_1_1graph__communicator_1_1node__list.html#afe55816c0169408a56e42c412f04e86f":[3,0,0,18,1,7], -"classmpl_1_1group.html":[2,0,0,20], -"classmpl_1_1group.html":[3,0,0,19], -"classmpl_1_1group.html#a14eceda02a4e4a68124a4918320d34c6":[2,0,0,20,13], -"classmpl_1_1group.html#a14eceda02a4e4a68124a4918320d34c6":[3,0,0,19,13], -"classmpl_1_1group.html#a1b3542e4a7d8cfcbf6bfc7ecb4905f4f":[2,0,0,20,20], -"classmpl_1_1group.html#a1b3542e4a7d8cfcbf6bfc7ecb4905f4f":[3,0,0,19,20], -"classmpl_1_1group.html#a1c11d89daec6af7b0ed1b5668d355656":[3,0,0,19,23], -"classmpl_1_1group.html#a1c11d89daec6af7b0ed1b5668d355656":[2,0,0,20,23], -"classmpl_1_1group.html#a23b0ce7e15b1a90e4d2facdfd4f98dd4":[3,0,0,19,9], -"classmpl_1_1group.html#a23b0ce7e15b1a90e4d2facdfd4f98dd4":[2,0,0,20,9], -"classmpl_1_1group.html#a28e4940a8d711c15cada064a12ba0788":[3,0,0,19,25], -"classmpl_1_1group.html#a28e4940a8d711c15cada064a12ba0788":[2,0,0,20,25], -"classmpl_1_1group.html#a2b7b139ae5443f229ef75b47ec92125b":[2,0,0,20,12], -"classmpl_1_1group.html#a2b7b139ae5443f229ef75b47ec92125b":[3,0,0,19,12], -"classmpl_1_1group.html#a3559e4d5efc98ec127fce7f3dc487291":[2,0,0,20,17], -"classmpl_1_1group.html#a3559e4d5efc98ec127fce7f3dc487291":[3,0,0,19,17], -"classmpl_1_1group.html#a38cdae96823a5ce04c1e4a637ca82d5a":[3,0,0,19,24], -"classmpl_1_1group.html#a38cdae96823a5ce04c1e4a637ca82d5a":[2,0,0,20,24], -"classmpl_1_1group.html#a41f80de72f9a7e5c3c4e15e99d0a6662":[3,0,0,19,6], -"classmpl_1_1group.html#a41f80de72f9a7e5c3c4e15e99d0a6662":[2,0,0,20,6], -"classmpl_1_1group.html#a4ac9d08869779bc83b1603415421ab34":[2,0,0,20,18], -"classmpl_1_1group.html#a4ac9d08869779bc83b1603415421ab34":[3,0,0,19,18], -"classmpl_1_1group.html#a4bd2522d5cfecbd2c844e7bad1c0ae36":[2,0,0,20,15], -"classmpl_1_1group.html#a4bd2522d5cfecbd2c844e7bad1c0ae36":[3,0,0,19,15], -"classmpl_1_1group.html#a53b37e0aa8afb9fd837b529facd6e626":[2,0,0,20,14], -"classmpl_1_1group.html#a53b37e0aa8afb9fd837b529facd6e626":[3,0,0,19,14], -"classmpl_1_1group.html#a58537237d16d0ac6ecb5680e33997f26":[2,0,0,20,22], -"classmpl_1_1group.html#a58537237d16d0ac6ecb5680e33997f26":[3,0,0,19,22], -"classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69":[2,0,0,20,5], -"classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69":[3,0,0,19,5], -"classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69a10faae554c642e7607b1dd0cc8607703":[2,0,0,20,5,1], -"classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69a10faae554c642e7607b1dd0cc8607703":[3,0,0,19,5,1], -"classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69ab4f45c85d7e3269abe7f894d94bf0f29":[2,0,0,20,5,2], -"classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69ab4f45c85d7e3269abe7f894d94bf0f29":[3,0,0,19,5,2], -"classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69aee0cbdbacdada19376449799774976e8":[2,0,0,20,5,0], -"classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69aee0cbdbacdada19376449799774976e8":[3,0,0,19,5,0], -"classmpl_1_1group.html#a91ec59cb7d18120ac6f5b0dc40f37a95":[2,0,0,20,16], -"classmpl_1_1group.html#a91ec59cb7d18120ac6f5b0dc40f37a95":[3,0,0,19,16], -"classmpl_1_1group.html#a95548e78748fcfa9775a47754d185240":[3,0,0,19,7], -"classmpl_1_1group.html#a95548e78748fcfa9775a47754d185240":[2,0,0,20,7], -"classmpl_1_1group.html#a9c2c30c4d43f3bea292a6ed934f2397e":[3,0,0,19,11], -"classmpl_1_1group.html#a9c2c30c4d43f3bea292a6ed934f2397e":[2,0,0,20,11], -"classmpl_1_1group.html#aaab91fd6a016fe57c053102d6c8f9bc4":[3,0,0,19,19], -"classmpl_1_1group.html#aaab91fd6a016fe57c053102d6c8f9bc4":[2,0,0,20,19], -"classmpl_1_1group.html#ac54706f36382139b24b24a0311e0763b":[3,0,0,19,10], -"classmpl_1_1group.html#ac54706f36382139b24b24a0311e0763b":[2,0,0,20,10], -"classmpl_1_1group.html#ac820bf356be8b94134cb08f8efa087ba":[3,0,0,19,21], -"classmpl_1_1group.html#ac820bf356be8b94134cb08f8efa087ba":[2,0,0,20,21], -"classmpl_1_1group.html#ae721323f69336a1ac2e4029a83ed0570":[2,0,0,20,8], -"classmpl_1_1group.html#ae721323f69336a1ac2e4029a83ed0570":[3,0,0,19,8], -"classmpl_1_1group_1_1_union__tag.html":[2,0,0,20,4], -"classmpl_1_1group_1_1_union__tag.html":[3,0,0,19,4], -"classmpl_1_1group_1_1difference__tag.html":[2,0,0,20,0], -"classmpl_1_1group_1_1difference__tag.html":[3,0,0,19,0], -"classmpl_1_1group_1_1exclude__tag.html":[3,0,0,19,1], -"classmpl_1_1group_1_1exclude__tag.html":[2,0,0,20,1], -"classmpl_1_1group_1_1include__tag.html":[3,0,0,19,2], -"classmpl_1_1group_1_1include__tag.html":[2,0,0,20,2], -"classmpl_1_1group_1_1intersection__tag.html":[3,0,0,19,3], -"classmpl_1_1group_1_1intersection__tag.html":[2,0,0,20,3], -"classmpl_1_1heterogeneous__layout.html":[2,0,0,21], -"classmpl_1_1heterogeneous__layout.html":[3,0,0,20], -"classmpl_1_1heterogeneous__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,21,8], -"classmpl_1_1heterogeneous__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[3,0,0,20,8], -"classmpl_1_1heterogeneous__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,21,20], -"classmpl_1_1heterogeneous__layout.html#a0890ec4684e6a465170f88932e116d30":[3,0,0,20,20], -"classmpl_1_1heterogeneous__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[3,0,0,20,18], -"classmpl_1_1heterogeneous__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,21,18], -"classmpl_1_1heterogeneous__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[3,0,0,20,23], -"classmpl_1_1heterogeneous__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,21,23], -"classmpl_1_1heterogeneous__layout.html#a45840e6936914baef876a0b67a8bb499":[3,0,0,20,17], -"classmpl_1_1heterogeneous__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,21,17], -"classmpl_1_1heterogeneous__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[3,0,0,20,21], -"classmpl_1_1heterogeneous__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,21,21], -"classmpl_1_1heterogeneous__layout.html#a4ee194df608a408783938ba0d8f5ca4a":[3,0,0,20,1], -"classmpl_1_1heterogeneous__layout.html#a4ee194df608a408783938ba0d8f5ca4a":[2,0,0,21,1], -"classmpl_1_1heterogeneous__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,21,11], -"classmpl_1_1heterogeneous__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[3,0,0,20,11], -"classmpl_1_1heterogeneous__layout.html#a72a2fe2e326f5bfc1dd9b188acd07072":[2,0,0,21,15], -"classmpl_1_1heterogeneous__layout.html#a72a2fe2e326f5bfc1dd9b188acd07072":[3,0,0,20,15], -"classmpl_1_1heterogeneous__layout.html#a75a8d595647135a6393ed04dc9431f30":[2,0,0,21,4], -"classmpl_1_1heterogeneous__layout.html#a75a8d595647135a6393ed04dc9431f30":[3,0,0,20,4], -"classmpl_1_1heterogeneous__layout.html#a80713f15de3244b019294ee277c8c650":[3,0,0,20,22], -"classmpl_1_1heterogeneous__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,21,22], -"classmpl_1_1heterogeneous__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[3,0,0,20,6], -"classmpl_1_1heterogeneous__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,21,6], -"classmpl_1_1heterogeneous__layout.html#a893948e465f7ef673612c94395eebd70":[3,0,0,20,3], -"classmpl_1_1heterogeneous__layout.html#a893948e465f7ef673612c94395eebd70":[2,0,0,21,3], -"classmpl_1_1heterogeneous__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[3,0,0,20,9], -"classmpl_1_1heterogeneous__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,21,9], -"classmpl_1_1heterogeneous__layout.html#a9e570881a42bed31cf1aa593c0138215":[3,0,0,20,5], -"classmpl_1_1heterogeneous__layout.html#a9e570881a42bed31cf1aa593c0138215":[2,0,0,21,5], -"classmpl_1_1heterogeneous__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,21,7], -"classmpl_1_1heterogeneous__layout.html#aa391a934f031693cf985dcd1c675d8e4":[3,0,0,20,7], -"classmpl_1_1heterogeneous__layout.html#aa4701dfc7a4cb2402ed3484e87947be6":[3,0,0,20,13], -"classmpl_1_1heterogeneous__layout.html#aa4701dfc7a4cb2402ed3484e87947be6":[2,0,0,21,13], -"classmpl_1_1heterogeneous__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[3,0,0,20,14], -"classmpl_1_1heterogeneous__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,21,14], -"classmpl_1_1heterogeneous__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,21,16] -}; diff --git a/docs/html/navtreeindex9.js b/docs/html/navtreeindex9.js deleted file mode 100644 index 0e549b5c..00000000 --- a/docs/html/navtreeindex9.js +++ /dev/null @@ -1,253 +0,0 @@ -var NAVTREEINDEX9 = -{ -"classmpl_1_1heterogeneous__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[3,0,0,20,16], -"classmpl_1_1heterogeneous__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,21,10], -"classmpl_1_1heterogeneous__layout.html#abce0f3197d6b2252c951535b443d7d5e":[3,0,0,20,10], -"classmpl_1_1heterogeneous__layout.html#ada4aa6f3f64e5bd5519b36a5d80c780e":[2,0,0,21,12], -"classmpl_1_1heterogeneous__layout.html#ada4aa6f3f64e5bd5519b36a5d80c780e":[3,0,0,20,12], -"classmpl_1_1heterogeneous__layout.html#adb64a08a7007a01451855f95d0190cf4":[3,0,0,20,2], -"classmpl_1_1heterogeneous__layout.html#adb64a08a7007a01451855f95d0190cf4":[2,0,0,21,2], -"classmpl_1_1heterogeneous__layout.html#adf592d9e08a92314cc086bd51d643953":[3,0,0,20,19], -"classmpl_1_1heterogeneous__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,21,19], -"classmpl_1_1heterogeneous__layout_1_1parameter.html":[3,0,0,20,0], -"classmpl_1_1heterogeneous__layout_1_1parameter.html":[2,0,0,21,0], -"classmpl_1_1heterogeneous__layout_1_1parameter.html#a345f190da284e84ef033bec2677fdd5f":[3,0,0,20,0,4], -"classmpl_1_1heterogeneous__layout_1_1parameter.html#a345f190da284e84ef033bec2677fdd5f":[2,0,0,21,0,4], -"classmpl_1_1heterogeneous__layout_1_1parameter.html#a3e6002677c2e8ffdeba903453ff6120f":[2,0,0,21,0,1], -"classmpl_1_1heterogeneous__layout_1_1parameter.html#a3e6002677c2e8ffdeba903453ff6120f":[3,0,0,20,0,1], -"classmpl_1_1heterogeneous__layout_1_1parameter.html#a4e576170d803d71eb3e0bcc402ea632d":[2,0,0,21,0,3], -"classmpl_1_1heterogeneous__layout_1_1parameter.html#a4e576170d803d71eb3e0bcc402ea632d":[3,0,0,20,0,3], -"classmpl_1_1heterogeneous__layout_1_1parameter.html#a513ff59ef3a4f879b4505410e428147d":[2,0,0,21,0,0], -"classmpl_1_1heterogeneous__layout_1_1parameter.html#a513ff59ef3a4f879b4505410e428147d":[3,0,0,20,0,0], -"classmpl_1_1heterogeneous__layout_1_1parameter.html#adfbbfebde35bdcb9a004ac6ae0128d13":[2,0,0,21,0,2], -"classmpl_1_1heterogeneous__layout_1_1parameter.html#adfbbfebde35bdcb9a004ac6ae0128d13":[3,0,0,20,0,2], -"classmpl_1_1hindexed__block__layout.html":[3,0,0,21], -"classmpl_1_1hindexed__block__layout.html":[2,0,0,22], -"classmpl_1_1hindexed__block__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,22,8], -"classmpl_1_1hindexed__block__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[3,0,0,21,8], -"classmpl_1_1hindexed__block__layout.html#a0890ec4684e6a465170f88932e116d30":[3,0,0,21,20], -"classmpl_1_1hindexed__block__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,22,20], -"classmpl_1_1hindexed__block__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[3,0,0,21,18], -"classmpl_1_1hindexed__block__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,22,18], -"classmpl_1_1hindexed__block__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,22,23], -"classmpl_1_1hindexed__block__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[3,0,0,21,23], -"classmpl_1_1hindexed__block__layout.html#a31e0a5a0b069597199140c0fc6df1d13":[3,0,0,21,15], -"classmpl_1_1hindexed__block__layout.html#a31e0a5a0b069597199140c0fc6df1d13":[2,0,0,22,15], -"classmpl_1_1hindexed__block__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,22,17], -"classmpl_1_1hindexed__block__layout.html#a45840e6936914baef876a0b67a8bb499":[3,0,0,21,17], -"classmpl_1_1hindexed__block__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[3,0,0,21,21], -"classmpl_1_1hindexed__block__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,22,21], -"classmpl_1_1hindexed__block__layout.html#a58ef3baba410d7e6699ba6a1e2daa907":[3,0,0,21,3], -"classmpl_1_1hindexed__block__layout.html#a58ef3baba410d7e6699ba6a1e2daa907":[2,0,0,22,3], -"classmpl_1_1hindexed__block__layout.html#a5cbc07359787a6d3472a29c8b0deec93":[2,0,0,22,2], -"classmpl_1_1hindexed__block__layout.html#a5cbc07359787a6d3472a29c8b0deec93":[3,0,0,21,2], -"classmpl_1_1hindexed__block__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[3,0,0,21,11], -"classmpl_1_1hindexed__block__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,22,11], -"classmpl_1_1hindexed__block__layout.html#a5f5f55079a3ef89bcd395dae67a2206d":[2,0,0,22,1], -"classmpl_1_1hindexed__block__layout.html#a5f5f55079a3ef89bcd395dae67a2206d":[3,0,0,21,1], -"classmpl_1_1hindexed__block__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,22,22], -"classmpl_1_1hindexed__block__layout.html#a80713f15de3244b019294ee277c8c650":[3,0,0,21,22], -"classmpl_1_1hindexed__block__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[3,0,0,21,6], -"classmpl_1_1hindexed__block__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,22,6], -"classmpl_1_1hindexed__block__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,22,9], -"classmpl_1_1hindexed__block__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[3,0,0,21,9], -"classmpl_1_1hindexed__block__layout.html#a9cedaad857c684ce5265110c6a9b82e5":[3,0,0,21,13], -"classmpl_1_1hindexed__block__layout.html#a9cedaad857c684ce5265110c6a9b82e5":[2,0,0,22,13], -"classmpl_1_1hindexed__block__layout.html#a9efe673232ce9180c2c96f0048da8187":[3,0,0,21,12], -"classmpl_1_1hindexed__block__layout.html#a9efe673232ce9180c2c96f0048da8187":[2,0,0,22,12], -"classmpl_1_1hindexed__block__layout.html#aa391a934f031693cf985dcd1c675d8e4":[3,0,0,21,7], -"classmpl_1_1hindexed__block__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,22,7], -"classmpl_1_1hindexed__block__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[3,0,0,21,14], -"classmpl_1_1hindexed__block__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,22,14], -"classmpl_1_1hindexed__block__layout.html#ab4a0d6418553bd6182bbf7c8ce85755f":[3,0,0,21,5], -"classmpl_1_1hindexed__block__layout.html#ab4a0d6418553bd6182bbf7c8ce85755f":[2,0,0,22,5], -"classmpl_1_1hindexed__block__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,22,16], -"classmpl_1_1hindexed__block__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[3,0,0,21,16], -"classmpl_1_1hindexed__block__layout.html#abce0f3197d6b2252c951535b443d7d5e":[3,0,0,21,10], -"classmpl_1_1hindexed__block__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,22,10], -"classmpl_1_1hindexed__block__layout.html#adf592d9e08a92314cc086bd51d643953":[3,0,0,21,19], -"classmpl_1_1hindexed__block__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,22,19], -"classmpl_1_1hindexed__block__layout.html#aeb1c8663c6f16128cf8055d08761a5b9":[2,0,0,22,4], -"classmpl_1_1hindexed__block__layout.html#aeb1c8663c6f16128cf8055d08761a5b9":[3,0,0,21,4], -"classmpl_1_1hindexed__block__layout_1_1parameter.html":[2,0,0,22,0], -"classmpl_1_1hindexed__block__layout_1_1parameter.html":[3,0,0,21,0], -"classmpl_1_1hindexed__block__layout_1_1parameter.html#a5577f0cc7963c4a58195922e1da85403":[2,0,0,22,0,0], -"classmpl_1_1hindexed__block__layout_1_1parameter.html#a5577f0cc7963c4a58195922e1da85403":[3,0,0,21,0,0], -"classmpl_1_1hindexed__block__layout_1_1parameter.html#a6699819fb72a60027c750f93aa0df8c1":[3,0,0,21,0,3], -"classmpl_1_1hindexed__block__layout_1_1parameter.html#a6699819fb72a60027c750f93aa0df8c1":[2,0,0,22,0,3], -"classmpl_1_1hindexed__block__layout_1_1parameter.html#a69ff431775bd1969641bcb73a6ee8668":[3,0,0,21,0,4], -"classmpl_1_1hindexed__block__layout_1_1parameter.html#a69ff431775bd1969641bcb73a6ee8668":[2,0,0,22,0,4], -"classmpl_1_1hindexed__block__layout_1_1parameter.html#ac31e4f491add1a9bad604b9c8303d3a3":[3,0,0,21,0,1], -"classmpl_1_1hindexed__block__layout_1_1parameter.html#ac31e4f491add1a9bad604b9c8303d3a3":[2,0,0,22,0,1], -"classmpl_1_1hindexed__block__layout_1_1parameter.html#ada60546fd361cd67a04fe083a5c09f35":[3,0,0,21,0,2], -"classmpl_1_1hindexed__block__layout_1_1parameter.html#ada60546fd361cd67a04fe083a5c09f35":[2,0,0,22,0,2], -"classmpl_1_1hindexed__layout.html":[3,0,0,22], -"classmpl_1_1hindexed__layout.html":[2,0,0,23], -"classmpl_1_1hindexed__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[3,0,0,22,8], -"classmpl_1_1hindexed__layout.html#a05cc59346d0b585b92a266ac7e4512eb":[2,0,0,23,8], -"classmpl_1_1hindexed__layout.html#a06906f27dd6bd4b40c5025bb0958bb5f":[3,0,0,22,4], -"classmpl_1_1hindexed__layout.html#a06906f27dd6bd4b40c5025bb0958bb5f":[2,0,0,23,4], -"classmpl_1_1hindexed__layout.html#a0890ec4684e6a465170f88932e116d30":[3,0,0,22,20], -"classmpl_1_1hindexed__layout.html#a0890ec4684e6a465170f88932e116d30":[2,0,0,23,20], -"classmpl_1_1hindexed__layout.html#a0b6540a5b7232bdccfdaa2fbd3f1ce11":[3,0,0,22,3], -"classmpl_1_1hindexed__layout.html#a0b6540a5b7232bdccfdaa2fbd3f1ce11":[2,0,0,23,3], -"classmpl_1_1hindexed__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[2,0,0,23,18], -"classmpl_1_1hindexed__layout.html#a245932be5b4d58bb00a05b29208ab7c4":[3,0,0,22,18], -"classmpl_1_1hindexed__layout.html#a26743fb491f074969ce4d92a17eb8960":[2,0,0,23,2], -"classmpl_1_1hindexed__layout.html#a26743fb491f074969ce4d92a17eb8960":[3,0,0,22,2], -"classmpl_1_1hindexed__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[2,0,0,23,23], -"classmpl_1_1hindexed__layout.html#a2c768cf5cbbcf2dcf50a03a809df457f":[3,0,0,22,23], -"classmpl_1_1hindexed__layout.html#a36148d9a6a2209eee2a10e57b5bacb23":[2,0,0,23,1], -"classmpl_1_1hindexed__layout.html#a36148d9a6a2209eee2a10e57b5bacb23":[3,0,0,22,1], -"classmpl_1_1hindexed__layout.html#a45840e6936914baef876a0b67a8bb499":[2,0,0,23,17], -"classmpl_1_1hindexed__layout.html#a45840e6936914baef876a0b67a8bb499":[3,0,0,22,17], -"classmpl_1_1hindexed__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[3,0,0,22,21], -"classmpl_1_1hindexed__layout.html#a4b0e56adef2f212d061f971b2ecafd0a":[2,0,0,23,21], -"classmpl_1_1hindexed__layout.html#a51e7ccbf3a8b3552c53d0624fbff10d3":[2,0,0,23,13], -"classmpl_1_1hindexed__layout.html#a51e7ccbf3a8b3552c53d0624fbff10d3":[3,0,0,22,13], -"classmpl_1_1hindexed__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[3,0,0,22,11], -"classmpl_1_1hindexed__layout.html#a5eb103b30a8ddabfa28e70030a7c8e11":[2,0,0,23,11], -"classmpl_1_1hindexed__layout.html#a80713f15de3244b019294ee277c8c650":[3,0,0,22,22], -"classmpl_1_1hindexed__layout.html#a80713f15de3244b019294ee277c8c650":[2,0,0,23,22], -"classmpl_1_1hindexed__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[2,0,0,23,6], -"classmpl_1_1hindexed__layout.html#a808408eaf18cfd04f8fc0e43ad8abece":[3,0,0,22,6], -"classmpl_1_1hindexed__layout.html#a96cdefc4ba1b2513df1eb4377cffb58e":[2,0,0,23,15], -"classmpl_1_1hindexed__layout.html#a96cdefc4ba1b2513df1eb4377cffb58e":[3,0,0,22,15], -"classmpl_1_1hindexed__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[2,0,0,23,9], -"classmpl_1_1hindexed__layout.html#a9aea61b5ce92681aee5df4a61672c02b":[3,0,0,22,9], -"classmpl_1_1hindexed__layout.html#a9d5c13ca208f4a753e8418b3a0ca2019":[3,0,0,22,5], -"classmpl_1_1hindexed__layout.html#a9d5c13ca208f4a753e8418b3a0ca2019":[2,0,0,23,5], -"classmpl_1_1hindexed__layout.html#aa391a934f031693cf985dcd1c675d8e4":[3,0,0,22,7], -"classmpl_1_1hindexed__layout.html#aa391a934f031693cf985dcd1c675d8e4":[2,0,0,23,7], -"classmpl_1_1hindexed__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[3,0,0,22,14], -"classmpl_1_1hindexed__layout.html#ab0a15251c4fd7bc10630bb9f00a392c4":[2,0,0,23,14], -"classmpl_1_1hindexed__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[3,0,0,22,16], -"classmpl_1_1hindexed__layout.html#ab57eff0aeed0dee1e02bcfbec750d79f":[2,0,0,23,16], -"classmpl_1_1hindexed__layout.html#abce0f3197d6b2252c951535b443d7d5e":[2,0,0,23,10], -"classmpl_1_1hindexed__layout.html#abce0f3197d6b2252c951535b443d7d5e":[3,0,0,22,10], -"classmpl_1_1hindexed__layout.html#adf592d9e08a92314cc086bd51d643953":[3,0,0,22,19], -"classmpl_1_1hindexed__layout.html#adf592d9e08a92314cc086bd51d643953":[2,0,0,23,19], -"classmpl_1_1hindexed__layout.html#ae36e81cb6bbec4abe96e430e6d02f938":[2,0,0,23,12], -"classmpl_1_1hindexed__layout.html#ae36e81cb6bbec4abe96e430e6d02f938":[3,0,0,22,12], -"classmpl_1_1hindexed__layout_1_1parameter.html":[3,0,0,22,0], -"classmpl_1_1hindexed__layout_1_1parameter.html":[2,0,0,23,0], -"classmpl_1_1hindexed__layout_1_1parameter.html#a137203f563366d04c169371675dba0ea":[2,0,0,23,0,2], -"classmpl_1_1hindexed__layout_1_1parameter.html#a137203f563366d04c169371675dba0ea":[3,0,0,22,0,2], -"classmpl_1_1hindexed__layout_1_1parameter.html#a22fbba95008c8cf65c704ca1711f3a1c":[2,0,0,23,0,3], -"classmpl_1_1hindexed__layout_1_1parameter.html#a22fbba95008c8cf65c704ca1711f3a1c":[3,0,0,22,0,3], -"classmpl_1_1hindexed__layout_1_1parameter.html#ab8f9a7e2e4c17f1cd55ad7f268fc7ac0":[2,0,0,23,0,1], -"classmpl_1_1hindexed__layout_1_1parameter.html#ab8f9a7e2e4c17f1cd55ad7f268fc7ac0":[3,0,0,22,0,1], -"classmpl_1_1hindexed__layout_1_1parameter.html#ac1f84b65ffbb428a02e099c7e7b1b16a":[2,0,0,23,0,0], -"classmpl_1_1hindexed__layout_1_1parameter.html#ac1f84b65ffbb428a02e099c7e7b1b16a":[3,0,0,22,0,0], -"classmpl_1_1hindexed__layout_1_1parameter.html#adc58655b3738b34c8feb41b014aa8227":[3,0,0,22,0,4], -"classmpl_1_1hindexed__layout_1_1parameter.html#adc58655b3738b34c8feb41b014aa8227":[2,0,0,23,0,4], -"classmpl_1_1impl_1_1irequest.html":[3,0,0,0,0], -"classmpl_1_1impl_1_1irequest.html":[2,0,0,1,0], -"classmpl_1_1impl_1_1irequest.html#a1f093c2ed5b963f78f55f8c9fee06f07":[3,0,0,0,0,0], -"classmpl_1_1impl_1_1irequest.html#a1f093c2ed5b963f78f55f8c9fee06f07":[2,0,0,1,0,0], -"classmpl_1_1impl_1_1irequest.html#aa9403354e473e9978d6e49bc4389c9fe":[2,0,0,1,0,2], -"classmpl_1_1impl_1_1irequest.html#aa9403354e473e9978d6e49bc4389c9fe":[3,0,0,0,0,2], -"classmpl_1_1impl_1_1irequest.html#afc6c0627314f63682b958c13cf936247":[2,0,0,1,0,1], -"classmpl_1_1impl_1_1irequest.html#afc6c0627314f63682b958c13cf936247":[3,0,0,0,0,1], -"classmpl_1_1impl_1_1prequest.html":[3,0,0,0,1], -"classmpl_1_1impl_1_1prequest.html":[2,0,0,1,1], -"classmpl_1_1impl_1_1prequest.html#a8c7c30bf6b0c6ffc75d78caeac645230":[2,0,0,1,1,1], -"classmpl_1_1impl_1_1prequest.html#a8c7c30bf6b0c6ffc75d78caeac645230":[3,0,0,0,1,1], -"classmpl_1_1impl_1_1prequest.html#a99278de2244bd4d9129a7a07c40dd721":[2,0,0,1,1,2], -"classmpl_1_1impl_1_1prequest.html#a99278de2244bd4d9129a7a07c40dd721":[3,0,0,0,1,2], -"classmpl_1_1impl_1_1prequest.html#af3844c4d36b3642909a2d6ce76794fd5":[2,0,0,1,1,0], -"classmpl_1_1impl_1_1prequest.html#af3844c4d36b3642909a2d6ce76794fd5":[3,0,0,0,1,0], -"classmpl_1_1impl_1_1request.html":[2,0,0,1,2], -"classmpl_1_1impl_1_1request.html":[3,0,0,0,2], -"classmpl_1_1impl_1_1request.html#a1182379a389ccf58d502142d550eed1a":[2,0,0,1,2,4], -"classmpl_1_1impl_1_1request.html#a1182379a389ccf58d502142d550eed1a":[3,0,0,0,2,4], -"classmpl_1_1impl_1_1request.html#a33283c16ad83120ba14976a109ee9040":[2,0,0,1,2,8], -"classmpl_1_1impl_1_1request.html#a33283c16ad83120ba14976a109ee9040":[3,0,0,0,2,8], -"classmpl_1_1impl_1_1request.html#a50d6175fd7b272b5c4a5b0ac26b8724c":[3,0,0,0,2,0], -"classmpl_1_1impl_1_1request.html#a50d6175fd7b272b5c4a5b0ac26b8724c":[2,0,0,1,2,0], -"classmpl_1_1impl_1_1request.html#a5593bb18f48fc5f74da74ff604936fd2":[2,0,0,1,2,1], -"classmpl_1_1impl_1_1request.html#a5593bb18f48fc5f74da74ff604936fd2":[3,0,0,0,2,1], -"classmpl_1_1impl_1_1request.html#a89cc002a4f4c608d7ecdc3ef03fa575a":[2,0,0,1,2,9], -"classmpl_1_1impl_1_1request.html#a89cc002a4f4c608d7ecdc3ef03fa575a":[3,0,0,0,2,9], -"classmpl_1_1impl_1_1request.html#a8ed5bdb05a4a5caf7dc2c08832b6fc73":[2,0,0,1,2,7], -"classmpl_1_1impl_1_1request.html#a8ed5bdb05a4a5caf7dc2c08832b6fc73":[3,0,0,0,2,7], -"classmpl_1_1impl_1_1request.html#a9731fa2fb0157e792af4d9e5ade4103b":[2,0,0,1,2,10], -"classmpl_1_1impl_1_1request.html#a9731fa2fb0157e792af4d9e5ade4103b":[3,0,0,0,2,10], -"classmpl_1_1impl_1_1request.html#ab53c21c706def81d4953a618ab426c08":[3,0,0,0,2,5], -"classmpl_1_1impl_1_1request.html#ab53c21c706def81d4953a618ab426c08":[2,0,0,1,2,5], -"classmpl_1_1impl_1_1request.html#ad2ddcfa49b35df4120235692fdebdef2":[2,0,0,1,2,6], -"classmpl_1_1impl_1_1request.html#ad2ddcfa49b35df4120235692fdebdef2":[3,0,0,0,2,6], -"classmpl_1_1impl_1_1request.html#ae54279c8f5ad406e91b5fc0eb0acab33":[2,0,0,1,2,2], -"classmpl_1_1impl_1_1request.html#ae54279c8f5ad406e91b5fc0eb0acab33":[3,0,0,0,2,2], -"classmpl_1_1impl_1_1request.html#aec0305ea4db43ce204b10419ea47ab88":[3,0,0,0,2,3], -"classmpl_1_1impl_1_1request.html#aec0305ea4db43ce204b10419ea47ab88":[2,0,0,1,2,3], -"classmpl_1_1impl_1_1request.html#aedca3ad316f078b0190b9396197a7605":[2,0,0,1,2,11], -"classmpl_1_1impl_1_1request.html#aedca3ad316f078b0190b9396197a7605":[3,0,0,0,2,11], -"classmpl_1_1impl_1_1request__pool.html":[2,0,0,1,3], -"classmpl_1_1impl_1_1request__pool.html":[3,0,0,0,3], -"classmpl_1_1impl_1_1request__pool.html#a0119c4bd3e340044868b9c26bae2a6f9":[2,0,0,1,3,14], -"classmpl_1_1impl_1_1request__pool.html#a0119c4bd3e340044868b9c26bae2a6f9":[3,0,0,0,3,14], -"classmpl_1_1impl_1_1request__pool.html#a09521b62f5b53546c854e89644245b70":[2,0,0,1,3,5], -"classmpl_1_1impl_1_1request__pool.html#a09521b62f5b53546c854e89644245b70":[3,0,0,0,3,5], -"classmpl_1_1impl_1_1request__pool.html#a0adfe04dd4bf29535b6687562fb88989":[3,0,0,0,3,15], -"classmpl_1_1impl_1_1request__pool.html#a0adfe04dd4bf29535b6687562fb88989":[2,0,0,1,3,15], -"classmpl_1_1impl_1_1request__pool.html#a1acdccf04f454806bac255279ac53974":[3,0,0,0,3,17], -"classmpl_1_1impl_1_1request__pool.html#a1acdccf04f454806bac255279ac53974":[2,0,0,1,3,17], -"classmpl_1_1impl_1_1request__pool.html#a1e864f5b3e62bb28db94bec090235401":[3,0,0,0,3,16], -"classmpl_1_1impl_1_1request__pool.html#a1e864f5b3e62bb28db94bec090235401":[2,0,0,1,3,16], -"classmpl_1_1impl_1_1request__pool.html#a40b2e7f51521f6cbf1ba99c26547dade":[3,0,0,0,3,12], -"classmpl_1_1impl_1_1request__pool.html#a40b2e7f51521f6cbf1ba99c26547dade":[2,0,0,1,3,12], -"classmpl_1_1impl_1_1request__pool.html#a4191612db45d53cab3a294f3ac2f9018":[2,0,0,1,3,6], -"classmpl_1_1impl_1_1request__pool.html#a4191612db45d53cab3a294f3ac2f9018":[3,0,0,0,3,6], -"classmpl_1_1impl_1_1request__pool.html#a541dc0dc092a1cf68f983ef23318e3e7":[2,0,0,1,3,2], -"classmpl_1_1impl_1_1request__pool.html#a541dc0dc092a1cf68f983ef23318e3e7":[3,0,0,0,3,2], -"classmpl_1_1impl_1_1request__pool.html#a55de4601b01500daff1468db92ab2ac9":[2,0,0,1,3,3], -"classmpl_1_1impl_1_1request__pool.html#a55de4601b01500daff1468db92ab2ac9":[3,0,0,0,3,3], -"classmpl_1_1impl_1_1request__pool.html#a5b3f8f3986dc6bc5852939446531c767":[3,0,0,0,3,0], -"classmpl_1_1impl_1_1request__pool.html#a5b3f8f3986dc6bc5852939446531c767":[2,0,0,1,3,0], -"classmpl_1_1impl_1_1request__pool.html#a5ebba7b0471ba84cf591abace463072f":[2,0,0,1,3,13], -"classmpl_1_1impl_1_1request__pool.html#a5ebba7b0471ba84cf591abace463072f":[3,0,0,0,3,13], -"classmpl_1_1impl_1_1request__pool.html#a7761f370d4bbef127a41fc1f4b0f39f9":[3,0,0,0,3,8], -"classmpl_1_1impl_1_1request__pool.html#a7761f370d4bbef127a41fc1f4b0f39f9":[2,0,0,1,3,8], -"classmpl_1_1impl_1_1request__pool.html#a9b2ce42dc5ec15f8875673e07f6d77bf":[2,0,0,1,3,11], -"classmpl_1_1impl_1_1request__pool.html#a9b2ce42dc5ec15f8875673e07f6d77bf":[3,0,0,0,3,11], -"classmpl_1_1impl_1_1request__pool.html#aad75fcd95d200f87043b6bf59074f5e2":[3,0,0,0,3,10], -"classmpl_1_1impl_1_1request__pool.html#aad75fcd95d200f87043b6bf59074f5e2":[2,0,0,1,3,10], -"classmpl_1_1impl_1_1request__pool.html#ab076cdb8feb7b1270497af73430e4fde":[3,0,0,0,3,18], -"classmpl_1_1impl_1_1request__pool.html#ab076cdb8feb7b1270497af73430e4fde":[2,0,0,1,3,18], -"classmpl_1_1impl_1_1request__pool.html#ab431bc48d9e0a81eeac03ae8a53592ba":[3,0,0,0,3,1], -"classmpl_1_1impl_1_1request__pool.html#ab431bc48d9e0a81eeac03ae8a53592ba":[2,0,0,1,3,1], -"classmpl_1_1impl_1_1request__pool.html#acdd1055b70611cd8796d0c22ccfb2397":[3,0,0,0,3,7], -"classmpl_1_1impl_1_1request__pool.html#acdd1055b70611cd8796d0c22ccfb2397":[2,0,0,1,3,7], -"classmpl_1_1impl_1_1request__pool.html#ade8d3d85e937db0607a6da284d290891":[2,0,0,1,3,9], -"classmpl_1_1impl_1_1request__pool.html#ade8d3d85e937db0607a6da284d290891":[3,0,0,0,3,9], -"classmpl_1_1impl_1_1request__pool.html#aedfd5afa202dcc4f82d06d45ba23a198":[3,0,0,0,3,4], -"classmpl_1_1impl_1_1request__pool.html#aedfd5afa202dcc4f82d06d45ba23a198":[2,0,0,1,3,4], -"classmpl_1_1impl_1_1topology__communicator.html":[2,0,0,1,4], -"classmpl_1_1impl_1_1topology__communicator.html":[3,0,0,0,4], -"classmpl_1_1impl_1_1topology__communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09":[2,0,0,1,4,6], -"classmpl_1_1impl_1_1topology__communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09":[3,0,0,0,4,6], -"classmpl_1_1impl_1_1topology__communicator.html#a031345325782266cecb521469e42d8c3":[3,0,0,0,4,111], -"classmpl_1_1impl_1_1topology__communicator.html#a031345325782266cecb521469e42d8c3":[2,0,0,1,4,111], -"classmpl_1_1impl_1_1topology__communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69":[3,0,0,0,4,86], -"classmpl_1_1impl_1_1topology__communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69":[2,0,0,1,4,86], -"classmpl_1_1impl_1_1topology__communicator.html#a03afcae482e770e40ca5df7ae77b29c6":[3,0,0,0,4,129], -"classmpl_1_1impl_1_1topology__communicator.html#a03afcae482e770e40ca5df7ae77b29c6":[2,0,0,1,4,129], -"classmpl_1_1impl_1_1topology__communicator.html#a03d88ad3aa943dc51578259c03b0b695":[3,0,0,0,4,140], -"classmpl_1_1impl_1_1topology__communicator.html#a03d88ad3aa943dc51578259c03b0b695":[2,0,0,1,4,140], -"classmpl_1_1impl_1_1topology__communicator.html#a05ed2a65531e978c766f9af918f5e5a3":[3,0,0,0,4,14], -"classmpl_1_1impl_1_1topology__communicator.html#a05ed2a65531e978c766f9af918f5e5a3":[2,0,0,1,4,14], -"classmpl_1_1impl_1_1topology__communicator.html#a06525ff878eb073c02dc0bef285f06ac":[3,0,0,0,4,95], -"classmpl_1_1impl_1_1topology__communicator.html#a06525ff878eb073c02dc0bef285f06ac":[2,0,0,1,4,95], -"classmpl_1_1impl_1_1topology__communicator.html#a068c77bb2536523c2bcbeb4d3d8efc7b":[3,0,0,0,4,78], -"classmpl_1_1impl_1_1topology__communicator.html#a068c77bb2536523c2bcbeb4d3d8efc7b":[2,0,0,1,4,78], -"classmpl_1_1impl_1_1topology__communicator.html#a07591e9922db9239a75ab1b6c7b70f11":[2,0,0,1,4,182], -"classmpl_1_1impl_1_1topology__communicator.html#a07591e9922db9239a75ab1b6c7b70f11":[3,0,0,0,4,182], -"classmpl_1_1impl_1_1topology__communicator.html#a0a2866d44cee859fc064e2e32a6710d7":[2,0,0,1,4,8], -"classmpl_1_1impl_1_1topology__communicator.html#a0a2866d44cee859fc064e2e32a6710d7":[3,0,0,0,4,8], -"classmpl_1_1impl_1_1topology__communicator.html#a0ca545be8c199264a127b16180450162":[3,0,0,0,4,142], -"classmpl_1_1impl_1_1topology__communicator.html#a0ca545be8c199264a127b16180450162":[2,0,0,1,4,142], -"classmpl_1_1impl_1_1topology__communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3":[2,0,0,1,4,5], -"classmpl_1_1impl_1_1topology__communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3":[3,0,0,0,4,5], -"classmpl_1_1impl_1_1topology__communicator.html#a0e6459ad572cb1a69cb149df1871f2c6":[2,0,0,1,4,93] -}; diff --git a/docs/html/nonblocking_8cc-example.html b/docs/html/nonblocking_8cc-example.html index 9d064cfb..146ef06b 100644 --- a/docs/html/nonblocking_8cc-example.html +++ b/docs/html/nonblocking_8cc-example.html @@ -105,35 +105,35 @@
              }
              int main() {
              - +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              // run the program with two or more processes
              -
              if (comm_world.size() < 2)
              +
              if (comm_world.size() < 2)
              return EXIT_FAILURE;
              const int n{12};
              std::vector<int> v_1(n), v_2(n), v_3(n), v_4(n);
              - +
              // process 0 sends
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              // see MPI Standard for the semantics of standard send, buffered send,
              // synchronous send and ready send
              double x{1.23456};
              -
              mpl::irequest r(comm_world.isend(x, 1)); // send x to rank 1 via standard send
              +
              mpl::irequest r(comm_world.isend(x, 1)); // send x to rank 1 via standard send
              r.wait(); // wait until send has finished
              ++x;
              {
              // create a buffer for buffered send,
              // memory will be freed on leaving the scope
              -
              const int size{comm_world.bsend_size<decltype(x)>()};
              -
              mpl::bsend_buffer buff(size);
              -
              r = comm_world.ibsend(x, 1); // send x to rank 1 via buffered send
              -
              r.wait(); // wait until send has finished
              +
              const int size{comm_world.bsend_size<decltype(x)>()};
              +
              mpl::bsend_buffer buff(size);
              +
              r = comm_world.ibsend(x, 1); // send x to rank 1 via buffered send
              +
              r.wait(); // wait until send has finished
              }
              ++x;
              -
              r = comm_world.issend(x, 1); // send x to rank 1 via synchronous send
              -
              r.wait(); // wait until send has finished
              +
              r = comm_world.issend(x, 1); // send x to rank 1 via synchronous send
              +
              r.wait(); // wait until send has finished
              ++x;
              -
              r = comm_world.irsend(x, 1); // send x to rank 1 via ready send
              -
              r.wait(); // wait until send has finished
              +
              r = comm_world.irsend(x, 1); // send x to rank 1 via ready send
              +
              r.wait(); // wait until send has finished
              std::iota(v_1.begin(), v_1.end(), 0);
              std::iota(v_2.begin(), v_2.end(), 1);
              std::iota(v_3.begin(), v_3.end(), 2);
              @@ -141,57 +141,57 @@
              {
              // create a buffer for buffered send,
              // memory will be freed on leaving the scope
              -
              const int size{comm_world.bsend_size(l)};
              +
              const int size{comm_world.bsend_size(l)};
              mpl::bsend_buffer buff(size);
              - -
              r.push(comm_world.isend(v_1.data(), l, 1)); // send x to rank 1 via standard send
              -
              r.push(comm_world.ibsend(v_2.data(), l, 1)); // send x to rank 1 via buffered send
              -
              r.push(comm_world.issend(v_3.data(), l, 1)); // send x to rank 1 via synchronous send
              -
              r.push(comm_world.irsend(v_4.data(), l, 1)); // send x to rank 1 via ready send
              -
              r.waitall(); // wait until all sends have finished
              + +
              r.push(comm_world.isend(v_1.data(), l, 1)); // send x to rank 1 via standard send
              +
              r.push(comm_world.ibsend(v_2.data(), l, 1)); // send x to rank 1 via buffered send
              +
              r.push(comm_world.issend(v_3.data(), l, 1)); // send x to rank 1 via synchronous send
              +
              r.push(comm_world.irsend(v_4.data(), l, 1)); // send x to rank 1 via ready send
              +
              r.waitall(); // wait until all sends have finished
              }
              {
              -
              r.push(comm_world.isend(v_1.data(), l, 1)); // send v1 to rank 1 via standard send
              -
              r.push(comm_world.ibsend(v_2.data(), l, 1)); // send v2 to rank 1 via buffered send
              -
              r.push(comm_world.issend(v_3.data(), l, 1)); // send v3 to rank 1 via synchronous send
              -
              r.push(comm_world.irsend(v_4.data(), l, 1)); // send v4 to rank 1 via ready send
              +
              r.push(comm_world.isend(v_1.data(), l, 1)); // send v1 to rank 1 via standard send
              +
              r.push(comm_world.ibsend(v_2.data(), l, 1)); // send v2 to rank 1 via buffered send
              +
              r.push(comm_world.issend(v_3.data(), l, 1)); // send v3 to rank 1 via synchronous send
              +
              r.push(comm_world.irsend(v_4.data(), l, 1)); // send v4 to rank 1 via ready send
              std::array<mpl::irequest_pool::size_type, 4>
              finished; // memory to store indices of finished send operations
              while (true) {
              -
              auto i{r.waitsome(finished.begin())}; // wait until one ore more sends have finished
              +
              auto i{r.waitsome(finished.begin())}; // wait until one ore more sends have finished
              if (i == finished.begin()) // there have been no pending sends
              break;
              // print indices of finished sends
              std::cout << "send finished : ";
              std::for_each(finished.begin(), i,
              -
              [](mpl::irequest_pool::size_type j) { std::cout << j << ' '; });
              +
              [](mpl::irequest_pool::size_type j) { std::cout << j << ' '; });
              std::cout << "\n";
              }
              }
              }
              // process 1 receives
              -
              if (comm_world.rank() == 1) {
              +
              if (comm_world.rank() == 1) {
              double x;
              -
              mpl::irequest r(comm_world.irecv(x, 0)); // receive x from rank 0
              +
              mpl::irequest r(comm_world.irecv(x, 0)); // receive x from rank 0
              r.wait(); // wait until receive has finished
              std::cout << "x = " << x << '\n';
              -
              r = comm_world.irecv(x, 0); // receive x from rank 0
              +
              r = comm_world.irecv(x, 0); // receive x from rank 0
              r.wait(); // wait until receive has finished
              std::cout << "x = " << x << '\n';
              -
              r = comm_world.irecv(x, 0); // receive x from rank 0
              +
              r = comm_world.irecv(x, 0); // receive x from rank 0
              r.wait(); // wait until receive has finished
              std::cout << "x = " << x << '\n';
              -
              r = comm_world.irecv(x, 0); // receive x from rank 0
              +
              r = comm_world.irecv(x, 0); // receive x from rank 0
              r.wait(); // wait until receive has finished
              std::cout << "x = " << x << '\n';
              {
              -
              r.push(comm_world.irecv(v_1.data(), l, 0)); // receive v1 from rank 0
              -
              r.push(comm_world.irecv(v_2.data(), l, 0)); // receive v2 from rank 0
              -
              r.push(comm_world.irecv(v_3.data(), l, 0)); // receive v3 from rank 0
              -
              r.push(comm_world.irecv(v_4.data(), l, 0)); // receive v4 from rank 0
              -
              r.waitall(); // wait until all receives have finished
              +
              r.push(comm_world.irecv(v_1.data(), l, 0)); // receive v1 from rank 0
              +
              r.push(comm_world.irecv(v_2.data(), l, 0)); // receive v2 from rank 0
              +
              r.push(comm_world.irecv(v_3.data(), l, 0)); // receive v3 from rank 0
              +
              r.push(comm_world.irecv(v_4.data(), l, 0)); // receive v4 from rank 0
              +
              r.waitall(); // wait until all receives have finished
              print_range("v = ", v_1.begin(), v_1.end());
              print_range("v = ", v_2.begin(), v_2.end());
              print_range("v = ", v_3.begin(), v_3.end());
              @@ -199,20 +199,20 @@
              }
              {
              -
              r.push(comm_world.irecv(v_1.data(), l, 0)); // receive v1 from rank 0
              -
              r.push(comm_world.irecv(v_2.data(), l, 0)); // receive v2 from rank 0
              -
              r.push(comm_world.irecv(v_3.data(), l, 0)); // receive v3 from rank 0
              -
              r.push(comm_world.irecv(v_4.data(), l, 0)); // receive v4 from rank 0
              +
              r.push(comm_world.irecv(v_1.data(), l, 0)); // receive v1 from rank 0
              +
              r.push(comm_world.irecv(v_2.data(), l, 0)); // receive v2 from rank 0
              +
              r.push(comm_world.irecv(v_3.data(), l, 0)); // receive v3 from rank 0
              +
              r.push(comm_world.irecv(v_4.data(), l, 0)); // receive v4 from rank 0
              while (true) {
              std::array<mpl::irequest_pool::size_type, 4>
              finished; // memory to store indices of finished recv operations
              -
              auto i{r.waitsome(finished.begin())}; // wait until one ore more receives have finished
              +
              auto i{r.waitsome(finished.begin())}; // wait until one ore more receives have finished
              if (i == finished.begin()) // there have been no pending receives
              break;
              // print indices of finished receives
              std::cout << "recv finished : ";
              std::for_each(finished.begin(), i,
              -
              [](mpl::irequest_pool::size_type j) { std::cout << j << ' '; });
              +
              [](mpl::irequest_pool::size_type j) { std::cout << j << ' '; });
              std::cout << '\n';
              }
              print_range("v = ", v_1.begin(), v_1.end());
              @@ -224,19 +224,13 @@
              return EXIT_SUCCESS;
              }
              Buffer manager for buffered send operations.
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              int bsend_size(int number=1) const
              determines the message buffer size
              Definition: comm_group.hpp:902
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              int bsend_size(int number=1) const
              Determines the message buffer size.
              Definition: comm_group.hpp:911
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              Layout representing contiguous storage several objects.
              Definition: layout.hpp:458
              - -
              std::vector< MPI_Request >::size_type size_type
              Definition: request.hpp:115
              -
              void push(T &&other)
              Definition: request.hpp:158
              - -
              status_t wait()
              Definition: request.hpp:92
              Container for managing a list of non-blocking communication requests.
              Definition: request.hpp:249
              Represents a non-blocking communication request.
              Definition: request.hpp:224
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              diff --git a/docs/html/nonblocking_mult_8cc-example.html b/docs/html/nonblocking_mult_8cc-example.html index 18cabaa6..7f4a43c0 100644 --- a/docs/html/nonblocking_mult_8cc-example.html +++ b/docs/html/nonblocking_mult_8cc-example.html @@ -93,31 +93,27 @@
              #include <mpl/mpl.hpp>
              int main() {
              - -
              double x{1.23456 + comm_world.rank()};
              -
              mpl::irequest r_send(comm_world.isend(x, 0)); // nonblocking send to rank 0
              +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              +
              double x{1.23456 + comm_world.rank()};
              +
              mpl::irequest r_send(comm_world.isend(x, 0)); // nonblocking send to rank 0
              // rank 0 receives data from all ranks
              -
              if (comm_world.rank() == 0) {
              -
              std::vector<double> v(comm_world.size());
              - -
              for (int i{0}; i < comm_world.size(); ++i)
              -
              r_pool.push(comm_world.irecv(v[i], i));
              -
              r_pool.waitall(); // wait to finish all receive operations
              -
              for (int i{0}; i < comm_world.size(); ++i)
              +
              if (comm_world.rank() == 0) {
              +
              std::vector<double> v(comm_world.size());
              + +
              for (int i{0}; i < comm_world.size(); ++i)
              +
              r_pool.push(comm_world.irecv(v[i], i));
              +
              r_pool.waitall(); // wait to finish all receive operations
              +
              for (int i{0}; i < comm_world.size(); ++i)
              std::cout << i << '\t' << v[i] << '\n';
              }
              -
              r_send.wait(); // wait to finish send operation
              +
              r_send.wait(); // wait to finish send operation
              return EXIT_SUCCESS;
              }
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              - -
              void push(T &&other)
              Definition: request.hpp:158
              -
              status_t wait()
              Definition: request.hpp:92
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              Container for managing a list of non-blocking communication requests.
              Definition: request.hpp:249
              Represents a non-blocking communication request.
              Definition: request.hpp:224
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              diff --git a/docs/html/operator_8hpp_source.html b/docs/html/operator_8hpp_source.html index 5fad4d8d..8f5ada69 100644 --- a/docs/html/operator_8hpp_source.html +++ b/docs/html/operator_8hpp_source.html @@ -96,7 +96,7 @@
              8#include <memory>
              9#include <ciso646>
              10
              -
              11namespace mpl {
              +
              11namespace mpl {
              12
              16 template<typename T>
              17 struct max {
              @@ -263,7 +263,6 @@
              268} // namespace mpl
              269
              270#endif
              -
              Function object for calculating the bitwise conjunction of two values in reduction operations as comm...
              Definition: operator.hpp:94
              T operator()(const T &x, const T &y) const
              Definition: operator.hpp:98
              Function object for calculating the bitwise (inclusive) disjunction of two values in reduction operat...
              Definition: operator.hpp:105
              diff --git a/docs/html/parallel_sort_mpl_8cc-example.html b/docs/html/parallel_sort_mpl_8cc-example.html index 210d05db..f92cecc9 100644 --- a/docs/html/parallel_sort_mpl_8cc-example.html +++ b/docs/html/parallel_sort_mpl_8cc-example.html @@ -122,12 +122,12 @@
              //
              template<typename T>
              void parallel_sort(std::vector<T> &v) {
              - -
              const int rank{comm_world.rank()};
              -
              const int size{comm_world.size()};
              +
              auto comm_world{mpl::environment::comm_world()};
              +
              const int rank{comm_world.rank()};
              +
              const int size{comm_world.size()};
              std::vector<T> local_pivots, pivots(size * (size - 1));
              std::sample(begin(v), end(v), std::back_inserter(local_pivots), size - 1, mt);
              -
              comm_world.allgather(local_pivots.data(), mpl::vector_layout<T>(size - 1), pivots.data(),
              +
              comm_world.allgather(local_pivots.data(), mpl::vector_layout<T>(size - 1), pivots.data(),
              std::sort(begin(pivots), end(pivots));
              local_pivots.clear();
              @@ -143,26 +143,26 @@
              for (std::size_t i{0}; i < pivot_pos.size() - 1; ++i)
              local_block_sizes.push_back(
              static_cast<int>(std::distance(pivot_pos[i], pivot_pos[i + 1])));
              -
              comm_world.allgather(local_block_sizes.data(), mpl::vector_layout<int>(size),
              +
              comm_world.allgather(local_block_sizes.data(), mpl::vector_layout<int>(size),
              block_sizes.data(), mpl::vector_layout<int>(size));
              -
              mpl::layouts<T> send_layouts, recv_layouts;
              +
              mpl::layouts<T> send_layouts, recv_layouts;
              int send_pos{0}, recv_pos{0};
              for (int i{0}; i < size; ++i) {
              -
              send_layouts.push_back(mpl::indexed_layout<T>({{block_sizes[rank * size + i], send_pos}}));
              +
              send_layouts.push_back(mpl::indexed_layout<T>({{block_sizes[rank * size + i], send_pos}}));
              send_pos += block_sizes[rank * size + i];
              recv_layouts.push_back(mpl::indexed_layout<T>({{block_sizes[rank + size * i], recv_pos}}));
              recv_pos += block_sizes[rank + size * i];
              }
              std::vector<T> v_2(recv_pos);
              -
              comm_world.alltoallv(v.data(), send_layouts, v_2.data(), recv_layouts);
              +
              comm_world.alltoallv(v.data(), send_layouts, v_2.data(), recv_layouts);
              std::sort(begin(v_2), end(v_2));
              swap(v, v_2);
              }
              int main() {
              - -
              const int rank{comm_world.rank()};
              -
              const int size{comm_world.size()};
              +
              const auto &comm_world{mpl::environment::comm_world()};
              +
              const int rank{comm_world.rank()};
              +
              const int size{comm_world.size()};
              const std::size_t N{100000000 / static_cast<std::size_t>(size)};
              std::vector<double> v(N);
              @@ -170,14 +170,13 @@
              parallel_sort(v);
              return EXIT_SUCCESS;
              }
              -
              void alltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
              Sends messages with a variable amount of data to all processes and receives messages with a variable ...
              -
              void allgather(const T &senddata, T *recvdata) const
              Gather messages from all processes and distribute result to all processes.
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              +
              void alltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
              Sends messages with a variable amount of data to all processes and receives messages with a variable ...
              +
              void allgather(const T &senddata, T *recvdata) const
              Gather messages from all processes and distribute result to all processes.
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              Layout representing data in a sequence of consecutive homogenous blocks of varying lengths.
              Definition: layout.hpp:723
              -
              container for storing layouts
              Definition: layout.hpp:1661
              +
              container for storing layouts
              Definition: layout.hpp:1664
              Layout representing contiguous storage several objects.
              Definition: layout.hpp:568
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              diff --git a/docs/html/probe_8cc-example.html b/docs/html/probe_8cc-example.html index 7676a64a..e643c054 100644 --- a/docs/html/probe_8cc-example.html +++ b/docs/html/probe_8cc-example.html @@ -104,26 +104,26 @@
              }
              int main() {
              - +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              // run the program with two or more processes
              -
              if (comm_world.size() < 2)
              +
              if (comm_world.size() < 2)
              return EXIT_FAILURE;
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              // send a message of n elements to rank 1
              enum class tag { send = 29 };
              const int n{12};
              std::vector<int> v(n);
              - +
              std::iota(v.begin(), v.end(), 0);
              -
              comm_world.send(v.data(), l, 1, tag::send);
              +
              comm_world.send(v.data(), l, 1, tag::send);
              }
              -
              if (comm_world.rank() == 1) {
              +
              if (comm_world.rank() == 1) {
              // receive a message of an a priori unknown number of elements from rank 0
              // first probe for a message from some arbitrary rank with any tag
              - +
              mpl::status_t s(comm_world.probe(mpl::any_source, mpl::tag_t::any()));
              // decode the number of elements, the source and the tag
              const int n{s.get_count<int>()}, source{s.source()};
              -
              const mpl::tag_t tag(s.tag());
              +
              const mpl::tag_t tag(s.tag());
              std::cerr << "source : " << s.source() << '\n'
              << "tag : " << s.tag() << '\n'
              << "error : " << s.error() << '\n'
              @@ -132,21 +132,19 @@
              std::vector<int> v(n);
              // finally, receive the message
              -
              comm_world.recv(v.data(), l, source, tag);
              +
              comm_world.recv(v.data(), l, source, tag);
              print_range("v = ", v.begin(), v.end());
              }
              return EXIT_SUCCESS;
              }
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              -
              status_t probe(int source, tag_t t=tag_t(0)) const
              Blocking test for an incoming message.
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              +
              status_t probe(int source, tag_t t=tag_t(0)) const
              Blocking test for an incoming message.
              Layout representing contiguous storage several objects.
              Definition: layout.hpp:458
              Class that represents the status of a received message.
              Definition: status.hpp:20
              Class for representing tag parameters in communication operations.
              Definition: tag.hpp:12
              static tag_t any()
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              -
              constexpr int any_source
              Wildcard value to indicate in a receive operation, e.g., communicator::recv, that any source is accep...
              Definition: mpl.hpp:13
              diff --git a/docs/html/ranks_8hpp_source.html b/docs/html/ranks_8hpp_source.html index 91c8267d..85a9e3c4 100644 --- a/docs/html/ranks_8hpp_source.html +++ b/docs/html/ranks_8hpp_source.html @@ -94,7 +94,7 @@
              6#include <vector>
              7#include <utility>
              8
              -
              9namespace mpl {
              +
              9namespace mpl {
              10
              13 class ranks : private std::vector<int> {
              14 using base = std::vector<int>;
              @@ -137,7 +137,6 @@
              ranks(std::initializer_list< int > init)
              Constructs collection of ranks from a braces expression of integers.
              Definition: ranks.hpp:28
              const int * operator()() const
              Gives access to internal data.
              Definition: ranks.hpp:49
              int * operator()()
              Gives access to internal data.
              Definition: ranks.hpp:53
              - diff --git a/docs/html/reduce_lcm_8cc-example.html b/docs/html/reduce_lcm_8cc-example.html index 4af32bef..8d0f6bfd 100644 --- a/docs/html/reduce_lcm_8cc-example.html +++ b/docs/html/reduce_lcm_8cc-example.html @@ -124,25 +124,25 @@
              };
              int main() {
              - +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              // generate data
              -
              std::mt19937_64 g(std::time(nullptr) * comm_world.rank()); // random seed
              +
              std::mt19937_64 g(std::time(nullptr) * comm_world.rank()); // random seed
              std::uniform_int_distribution uniform{1, 12};
              const int n{8};
              // populate vector with random data
              std::vector<int> v(n);
              std::generate(v.begin(), v.end(), [&g, &uniform]() { return uniform(g); });
              // calculate the least common multiple and send result to rank 0
              - -
              if (comm_world.rank() == 0) {
              + +
              if (comm_world.rank() == 0) {
              std::vector<int> result(n);
              // calculate the least common multiple
              -
              comm_world.reduce(lcm<int>(), 0, v.data(), result.data(), layout);
              +
              comm_world.reduce(lcm<int>(), 0, v.data(), result.data(), layout);
              // to check the result display data from all ranks
              std::cout << "Arguments:\n";
              -
              for (int r{0}; r < comm_world.size(); ++r) {
              +
              for (int r{0}; r < comm_world.size(); ++r) {
              if (r > 0)
              -
              comm_world.recv(v.data(), layout, r);
              +
              comm_world.recv(v.data(), layout, r);
              for (auto i : v)
              std::cout << i << '\t';
              std::cout << '\n';
              @@ -154,18 +154,17 @@
              std::cout << '\n';
              } else {
              // calculate the least common multiple
              -
              comm_world.reduce(lcm<int>(), 0, v.data(), layout);
              +
              comm_world.reduce(lcm<int>(), 0, v.data(), layout);
              // send data to rank 0 for display
              -
              comm_world.send(v.data(), layout, 0);
              +
              comm_world.send(v.data(), layout, 0);
              }
              return EXIT_SUCCESS;
              }
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              void reduce(F f, int root_rank, const T &senddata, T &recvdata) const
              Performs a reduction operation over all processes.
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              void reduce(F f, int root_rank, const T &senddata, T &recvdata) const
              Performs a reduction operation over all processes.
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              Layout representing contiguous storage several objects.
              Definition: layout.hpp:458
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              diff --git a/docs/html/reduce_min_loc_8cc-example.html b/docs/html/reduce_min_loc_8cc-example.html index 703ce38b..b6d62d4b 100644 --- a/docs/html/reduce_min_loc_8cc-example.html +++ b/docs/html/reduce_min_loc_8cc-example.html @@ -100,28 +100,28 @@
              using pair_t = std::pair<double, int>;
              int main() {
              - +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              // generate data
              -
              std::mt19937_64 g(std::time(nullptr) * comm_world.rank()); // random seed
              +
              std::mt19937_64 g(std::time(nullptr) * comm_world.rank()); // random seed
              std::uniform_real_distribution<> uniform;
              const int n{8};
              // populate vector with random data
              std::vector<pair_t> v(n);
              -
              std::generate(v.begin(), v.end(), [&comm_world, &g, &uniform]() {
              +
              std::generate(v.begin(), v.end(), [&comm_world, &g, &uniform]() {
              return std::make_pair(uniform(g), comm_world.rank());
              });
              // calculate minimum and its location and send result to rank root
              -
              const int root {0};
              - -
              if (comm_world.rank() == root) {
              +
              const int root {0};
              + +
              if (comm_world.rank() == root) {
              std::vector<pair_t> result(n);
              // calculate minimum
              -
              comm_world.reduce(mpl::min<pair_t>(), root, v.data(), result.data(), layout);
              +
              comm_world.reduce(mpl::min<pair_t>(), root, v.data(), result.data(), layout);
              // display data from all ranks
              std::cout << "arguments:\n";
              -
              for (int r{0}; r < comm_world.size(); ++r) {
              +
              for (int r{0}; r < comm_world.size(); ++r) {
              if (r > 0)
              -
              comm_world.recv(v.data(), layout, r);
              +
              comm_world.recv(v.data(), layout, r);
              for (auto i : v)
              std::cout << std::fixed << std::setprecision(5) << i.first << ' ' << i.second << '\t';
              std::cout << '\n';
              @@ -133,19 +133,17 @@
              std::cout << '\n';
              } else {
              // calculate minimum and its location and send result to rank 0
              -
              comm_world.reduce(mpl::min<pair_t>(), root, v.data(), layout);
              +
              comm_world.reduce(mpl::min<pair_t>(), root, v.data(), layout);
              // send data to rank 0 for display
              -
              comm_world.send(v.data(), layout, root);
              +
              comm_world.send(v.data(), layout, root);
              }
              return EXIT_SUCCESS;
              }
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              void reduce(F f, int root_rank, const T &senddata, T &recvdata) const
              Performs a reduction operation over all processes.
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              void reduce(F f, int root_rank, const T &senddata, T &recvdata) const
              Performs a reduction operation over all processes.
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              Layout representing contiguous storage several objects.
              Definition: layout.hpp:458
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              -
              constexpr int root
              Special value to indicate the root process in some intercommunicator collective operations.
              Definition: mpl.hpp:26
              Function object for calculating the minimum of two values in reduction operations as communicator::re...
              Definition: operator.hpp:28
              diff --git a/docs/html/request_8hpp_source.html b/docs/html/request_8hpp_source.html index 82e33187..ae6b997f 100644 --- a/docs/html/request_8hpp_source.html +++ b/docs/html/request_8hpp_source.html @@ -94,7 +94,7 @@
              6#include <utility>
              7#include <vector>
              8
              -
              9namespace mpl {
              +
              9namespace mpl {
              10
              11 class irequest;
              12
              @@ -116,22 +116,22 @@
              28 MPI_Request req = MPI_REQUEST_NULL;
              29
              30 public:
              -
              31 explicit irequest(MPI_Request req) : req(req) {}
              +
              31 explicit irequest(MPI_Request req) : req(req) {}
              32
              33 friend class request<irequest>;
              34
              -
              35 friend class request_pool<mpl::irequest>;
              +
              35 friend class request_pool<mpl::irequest>;
              36 };
              37
              38 class prequest {
              39 MPI_Request req = MPI_REQUEST_NULL;
              40
              41 public:
              -
              42 explicit prequest(MPI_Request req) : req(req) {}
              +
              42 explicit prequest(MPI_Request req) : req(req) {}
              43
              44 friend class request<prequest>;
              45
              -
              46 friend class request_pool<mpl::prequest>;
              +
              46 friend class request_pool<mpl::prequest>;
              47 };
              48
              49 //------------------------------------------------------------------
              @@ -142,23 +142,23 @@
              54 MPI_Request req;
              55
              56 public:
              -
              57 request() = delete;
              +
              57 request() = delete;
              58
              -
              59 request(const request &) = delete;
              +
              59 request(const request &) = delete;
              60
              -
              61 explicit request(const irequest &req) : req{req.req} {}
              -
              62 explicit request(const prequest &req) : req{req.req} {}
              +
              61 explicit request(const irequest &req) : req{req.req} {}
              +
              62 explicit request(const prequest &req) : req{req.req} {}
              63
              -
              64 request(request &&other) noexcept : req(other.req) { other.req = MPI_REQUEST_NULL; }
              +
              64 request(request &&other) noexcept : req(other.req) { other.req = MPI_REQUEST_NULL; }
              65
              - +
              66 ~request() {
              67 if (req != MPI_REQUEST_NULL)
              68 MPI_Request_free(&req);
              69 }
              70
              -
              71 void operator=(const request &) = delete;
              +
              71 void operator=(const request &) = delete;
              72
              -
              73 request &operator=(request &&other) noexcept {
              +
              73 request &operator=(request &&other) noexcept {
              74 if (this != &other) {
              75 if (req != MPI_REQUEST_NULL)
              76 MPI_Request_free(&req);
              @@ -168,22 +168,22 @@
              80 return *this;
              81 }
              82
              -
              83 void cancel() { MPI_Cancel(&req); }
              +
              83 void cancel() { MPI_Cancel(&req); }
              84
              -
              85 std::pair<bool, status_t> test() {
              +
              85 std::pair<bool, status_t> test() {
              86 int result;
              87 status_t s;
              88 MPI_Test(&req, &result, static_cast<MPI_Status *>(&s));
              89 return std::make_pair(static_cast<bool>(result), s);
              90 }
              91
              - +
              92 status_t wait() {
              93 status_t s;
              94 MPI_Wait(&req, static_cast<MPI_Status *>(&s));
              95 return s;
              96 }
              97
              -
              98 std::pair<bool, status_t> get_status() {
              +
              98 std::pair<bool, status_t> get_status() {
              99 int result;
              100 status_t s;
              101 MPI_Request_get_status(req, &result, static_cast<MPI_Status *>(&s));
              @@ -200,25 +200,25 @@
              112 std::vector<status_t> stats;
              113
              114 public:
              -
              115 using size_type = std::vector<MPI_Request>::size_type;
              +
              115 using size_type = std::vector<MPI_Request>::size_type;
              116
              -
              117 request_pool() = default;
              +
              117 request_pool() = default;
              118
              -
              119 request_pool(const request_pool &) = delete;
              +
              119 request_pool(const request_pool &) = delete;
              120
              -
              121 request_pool(request_pool &&other) noexcept
              +
              121 request_pool(request_pool &&other) noexcept
              122 : reqs(std::move(other.reqs)), stats(std::move(other.stats)) {}
              123
              - +
              124 ~request_pool() {
              125 for (std::vector<MPI_Request>::iterator i(reqs.begin()), i_end(reqs.end()); i != i_end;
              126 ++i)
              127 if ((*i) != MPI_REQUEST_NULL)
              128 MPI_Request_free(&(*i));
              129 }
              130
              -
              131 void operator=(const request_pool &) = delete;
              +
              131 void operator=(const request_pool &) = delete;
              132
              - +
              133 request_pool &operator=(request_pool &&other) noexcept {
              134 if (this != &other) {
              135 for (std::vector<MPI_Request>::iterator i(reqs.begin()), i_end(reqs.end());
              136 i != i_end; ++i)
              @@ -230,59 +230,59 @@
              142 return *this;
              143 }
              144
              -
              145 [[nodiscard]] size_type size() const { return reqs.size(); }
              +
              145 [[nodiscard]] size_type size() const { return reqs.size(); }
              146
              -
              147 [[nodiscard]] bool empty() const { return reqs.empty(); }
              +
              147 [[nodiscard]] bool empty() const { return reqs.empty(); }
              148
              -
              149 [[nodiscard]] const status_t &get_status(size_type i) const { return stats[i]; }
              +
              149 [[nodiscard]] const status_t &get_status(size_type i) const { return stats[i]; }
              150
              -
              151 void cancel(size_type i) { MPI_Cancel(&reqs[i]); }
              +
              151 void cancel(size_type i) { MPI_Cancel(&reqs[i]); }
              152
              -
              153 void cancelall() {
              -
              154 for (size_type i = 0; i < reqs.size(); ++i)
              +
              153 void cancelall() {
              +
              154 for (size_type i = 0; i < reqs.size(); ++i)
              155 cancel(i);
              156 }
              157
              -
              158 void push(T &&other) {
              +
              158 void push(T &&other) {
              159 reqs.push_back(other.req);
              160 other.req = MPI_REQUEST_NULL;
              161 stats.push_back(status_t());
              162 }
              163
              -
              164 std::pair<bool, size_type> waitany() {
              +
              164 std::pair<bool, size_type> waitany() {
              165 int index;
              166 status_t s;
              167 MPI_Waitany(size(), &reqs[0], &index, static_cast<MPI_Status *>(&s));
              168 if (index != MPI_UNDEFINED) {
              169 stats[index] = s;
              -
              170 return std::make_pair(true, static_cast<size_type>(index));
              +
              170 return std::make_pair(true, static_cast<size_type>(index));
              171 }
              172 return std::make_pair(false, size());
              173 }
              174
              -
              175 std::pair<bool, size_type> testany() {
              +
              175 std::pair<bool, size_type> testany() {
              176 int index, flag;
              177 status_t s;
              178 MPI_Testany(size(), &reqs[0], &index, &flag, static_cast<MPI_Status *>(&s));
              179 if (flag != 0 and index != MPI_UNDEFINED) {
              180 stats[index] = s;
              -
              181 return std::make_pair(true, static_cast<size_type>(index));
              +
              181 return std::make_pair(true, static_cast<size_type>(index));
              182 }
              183 return std::make_pair(static_cast<bool>(flag), size());
              184 }
              185
              -
              186 void waitall() {
              +
              186 void waitall() {
              187 MPI_Waitall(size(), &reqs[0], static_cast<MPI_Status *>(&stats[0]));
              188 }
              189
              -
              190 bool testall() {
              +
              190 bool testall() {
              191 int flag;
              192 MPI_Testall(size(), &reqs[0], &flag, static_cast<MPI_Status *>(&stats[0]));
              193 return flag;
              194 }
              195
              196 template<typename I>
              -
              197 I waitsome(I iter) {
              +
              197 I waitsome(I iter) {
              198 mpl::detail::flat_memory_out<int, I> indices(size(), iter);
              199 int count;
              200 MPI_Waitsome(size(), &reqs[0], &count, indices.data(),
              @@ -293,7 +293,7 @@
              205 }
              206
              207 template<typename I>
              -
              208 I testsome(I iter) {
              +
              208 I testsome(I iter) {
              209 mpl::detail::flat_memory_out<int, I> indices(size(), iter);
              210 int count;
              211 MPI_Testsome(size(), &reqs[0], &count, indices.data(),
              @@ -313,15 +313,15 @@
              226 using base::req;
              227
              228 public:
              -
              229 irequest(const impl::irequest &r) : base(r) {}
              +
              229 irequest(const impl::irequest &r) : base(r) {}
              230
              -
              231 irequest(const irequest &) = delete;
              +
              231 irequest(const irequest &) = delete;
              232
              -
              233 irequest(irequest &&r) noexcept : base(std::move(r)) {}
              +
              233 irequest(irequest &&r) noexcept : base(std::move(r)) {}
              234
              -
              235 void operator=(const irequest &) = delete;
              +
              235 void operator=(const irequest &) = delete;
              236
              -
              237 irequest &operator=(irequest &&other) noexcept {
              +
              237 irequest &operator=(irequest &&other) noexcept {
              238 if (this != &other)
              239 base::operator=(std::move(other));
              240 return *this;
              @@ -336,15 +336,15 @@
              251
              252 public:
              -
              253 irequest_pool() = default;
              +
              253 irequest_pool() = default;
              254
              -
              255 irequest_pool(const irequest_pool &) = delete;
              +
              255 irequest_pool(const irequest_pool &) = delete;
              256
              -
              257 irequest_pool(irequest_pool &&r) noexcept : base(std::move(r)) {}
              +
              257 irequest_pool(irequest_pool &&r) noexcept : base(std::move(r)) {}
              258
              -
              259 void operator=(const irequest_pool &) = delete;
              +
              259 void operator=(const irequest_pool &) = delete;
              260
              - +
              261 irequest_pool &operator=(irequest_pool &&other) noexcept {
              262 if (this != &other)
              263 base::operator=(std::move(other));
              264 return *this;
              @@ -358,21 +358,21 @@
              273 using base::req;
              274
              275 public:
              -
              276 prequest(const impl::prequest &r) : base(r) {}
              +
              276 prequest(const impl::prequest &r) : base(r) {}
              277
              -
              278 prequest(const prequest &) = delete;
              +
              278 prequest(const prequest &) = delete;
              279
              -
              280 prequest(prequest &&r) noexcept : base(std::move(r)) {}
              +
              280 prequest(prequest &&r) noexcept : base(std::move(r)) {}
              281
              -
              282 void operator=(const prequest &) = delete;
              +
              282 void operator=(const prequest &) = delete;
              283
              -
              284 prequest &operator=(prequest &&other) noexcept {
              +
              284 prequest &operator=(prequest &&other) noexcept {
              285 if (this != &other)
              286 base::operator=(std::move(other));
              287 return *this;
              288 }
              289
              -
              290 void start() { MPI_Start(&req); }
              +
              290 void start() { MPI_Start(&req); }
              291
              292 friend class impl::request_pool<prequest>;
              293 };
              @@ -384,86 +384,33 @@
              300 using base::reqs;
              301
              302 public:
              -
              303 prequest_pool() = default;
              +
              303 prequest_pool() = default;
              304
              -
              305 void operator=(const prequest_pool &) = delete;
              +
              305 void operator=(const prequest_pool &) = delete;
              306
              - +
              307 prequest_pool &operator=(prequest_pool &&other) noexcept {
              308 if (this != &other)
              309 base::operator=(std::move(other));
              310 return *this;
              311 }
              312
              -
              313 prequest_pool(prequest_pool &&r) noexcept : base(std::move(r)) {}
              +
              313 prequest_pool(prequest_pool &&r) noexcept : base(std::move(r)) {}
              314
              -
              315 void startall() { MPI_Startall(size(), &reqs[0]); }
              +
              315 void startall() { MPI_Startall(size(), &reqs[0]); }
              316 };
              317
              318} // namespace mpl
              319
              320#endif
              -
              irequest(MPI_Request req)
              Definition: request.hpp:31
              -
              prequest(MPI_Request req)
              Definition: request.hpp:42
              -
              std::pair< bool, size_type > testany()
              Definition: request.hpp:175
              -
              void cancel(size_type i)
              Definition: request.hpp:151
              - -
              std::pair< bool, size_type > waitany()
              Definition: request.hpp:164
              - -
              size_type size() const
              Definition: request.hpp:145
              - -
              request_pool(const request_pool &)=delete
              -
              request_pool(request_pool &&other) noexcept
              Definition: request.hpp:121
              -
              std::vector< MPI_Request >::size_type size_type
              Definition: request.hpp:115
              - -
              const status_t & get_status(size_type i) const
              Definition: request.hpp:149
              -
              void push(T &&other)
              Definition: request.hpp:158
              -
              request_pool & operator=(request_pool &&other) noexcept
              Definition: request.hpp:133
              - - -
              bool empty() const
              Definition: request.hpp:147
              -
              void operator=(const request_pool &)=delete
              - -
              request(request &&other) noexcept
              Definition: request.hpp:64
              -
              void operator=(const request &)=delete
              - -
              request(const request &)=delete
              -
              request & operator=(request &&other) noexcept
              Definition: request.hpp:73
              -
              std::pair< bool, status_t > get_status()
              Definition: request.hpp:98
              -
              std::pair< bool, status_t > test()
              Definition: request.hpp:85
              - - -
              request(const irequest &req)
              Definition: request.hpp:61
              -
              request(const prequest &req)
              Definition: request.hpp:62
              -
              status_t wait()
              Definition: request.hpp:92
              Container for managing a list of non-blocking communication requests.
              Definition: request.hpp:249
              -
              irequest_pool(irequest_pool &&r) noexcept
              Definition: request.hpp:257
              -
              irequest_pool(const irequest_pool &)=delete
              -
              void operator=(const irequest_pool &)=delete
              -
              irequest_pool()=default
              -
              irequest_pool & operator=(irequest_pool &&other) noexcept
              Definition: request.hpp:261
              Represents a non-blocking communication request.
              Definition: request.hpp:224
              -
              irequest(const impl::irequest &r)
              Definition: request.hpp:229
              -
              irequest(irequest &&r) noexcept
              Definition: request.hpp:233
              -
              irequest(const irequest &)=delete
              -
              void operator=(const irequest &)=delete
              Container for managing a list of persisting communication requests.
              Definition: request.hpp:298
              -
              prequest_pool()=default
              -
              void operator=(const prequest_pool &)=delete
              -
              prequest_pool(prequest_pool &&r) noexcept
              Definition: request.hpp:313
              - -
              prequest_pool & operator=(prequest_pool &&other) noexcept
              Definition: request.hpp:307
              Represents a persistent communication request.
              Definition: request.hpp:271
              -
              prequest(prequest &&r) noexcept
              Definition: request.hpp:280
              -
              prequest(const impl::prequest &r)
              Definition: request.hpp:276
              -
              prequest(const prequest &)=delete
              -
              prequest & operator=(prequest &&other) noexcept
              Definition: request.hpp:284
              -
              void operator=(const prequest &)=delete
              Class that represents the status of a received message.
              Definition: status.hpp:20
              - diff --git a/docs/html/search/all_0.js b/docs/html/search/all_0.js index 0283489b..ba52bf29 100644 --- a/docs/html/search/all_0.js +++ b/docs/html/search/all_0.js @@ -1,18 +1,15 @@ var searchData= [ ['abort_0',['abort',['../classmpl_1_1communicator.html#a27f12a9cb7b591f63db98cf7a2b32cfe',1,'mpl::communicator']]], - ['absolute_1',['absolute',['../namespacempl.html#af7799eb8fd405a1f2f1f226fe24626f5',1,'mpl']]], - ['absolute_5fdata_2',['absolute_data',['../classmpl_1_1absolute__data.html',1,'mpl']]], - ['absolute_5fdata_3c_20const_20t_20_2a_20_3e_3',['absolute_data< const T * >',['../classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html',1,'mpl']]], - ['absolute_5fdata_3c_20t_20_2a_20_3e_4',['absolute_data< T * >',['../classmpl_1_1absolute__data_3_01_t_01_5_01_4.html',1,'mpl']]], - ['add_5',['add',['../classmpl_1_1cartesian__communicator_1_1included__tags.html#ac2cfb27c6cb4ef1d70aa4e7139fa60ad',1,'mpl::cartesian_communicator::included_tags::add()'],['../classmpl_1_1heterogeneous__layout_1_1parameter.html#adfbbfebde35bdcb9a004ac6ae0128d13',1,'mpl::heterogeneous_layout::parameter::add(const absolute_data< T * > &x, const Ts &...xs)'],['../classmpl_1_1heterogeneous__layout_1_1parameter.html#a4e576170d803d71eb3e0bcc402ea632d',1,'mpl::heterogeneous_layout::parameter::add(const T &x, const Ts &...xs)'],['../classmpl_1_1subarray__layout_1_1parameter.html#adb56550a413cee796a9e3e7c9a268f24',1,'mpl::subarray_layout::parameter::add()'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html#a6699819fb72a60027c750f93aa0df8c1',1,'mpl::hindexed_block_layout::parameter::add()'],['../classmpl_1_1indexed__block__layout_1_1parameter.html#a3f34394906bb3098855aee75cf44edd3',1,'mpl::indexed_block_layout::parameter::add()'],['../classmpl_1_1hindexed__layout_1_1parameter.html#a22fbba95008c8cf65c704ca1711f3a1c',1,'mpl::hindexed_layout::parameter::add()'],['../classmpl_1_1indexed__layout_1_1parameter.html#a00e184b92d6c09a49438d48979194f99',1,'mpl::indexed_layout::parameter::add()'],['../classmpl_1_1graph__communicator_1_1node__list.html#a25f3935b78cf4dd11a589620e727536a',1,'mpl::graph_communicator::node_list::add()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#ab94d3075422b9dc7eeb87af9e32c0b43',1,'mpl::graph_communicator::edge_set::add()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a16981b82ed0e23bc5ee44294fec1b4af',1,'mpl::distributed_graph_communicator::neighbours_set::add()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#aa77b8602f4cfcf88b8ac53ecf548e2ed',1,'mpl::cartesian_communicator::dimensions::add()'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a3d9a6b783c4c02ff2948fff730f8de8d',1,'mpl::cartesian_communicator::vector::add()']]], - ['allgather_6',['allgather',['../classmpl_1_1communicator.html#a1a2fbf1a89b606c316790a29a6c24344',1,'mpl::communicator::allgather(const T &senddata, T *recvdata) const'],['../classmpl_1_1communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84',1,'mpl::communicator::allgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const']]], - ['allgatherv_7',['allgatherv',['../classmpl_1_1communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3',1,'mpl::communicator::allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3',1,'mpl::communicator::allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const']]], - ['allocator_5ftype_8',['allocator_type',['../classmpl_1_1local__grid.html#a54c9c6a7dd781ebeb95768f157c01ad7',1,'mpl::local_grid::allocator_type()'],['../classmpl_1_1distributed__grid.html#a88feb41c455585e1793b8e4ab382a540',1,'mpl::distributed_grid::allocator_type()']]], - ['allreduce_9',['allreduce',['../classmpl_1_1communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09',1,'mpl::communicator::allreduce(F f, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a997e3a727642f7fe7ab74a7342fa334b',1,'mpl::communicator::allreduce(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a0a2866d44cee859fc064e2e32a6710d7',1,'mpl::communicator::allreduce(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a55feab940e9c72241215918199931936',1,'mpl::communicator::allreduce(F f, T *sendrecvdata, const contiguous_layout< T > &l) const']]], - ['alltoall_10',['alltoall',['../classmpl_1_1communicator.html#a88368d3f4d7b375825ba839746aea7dd',1,'mpl::communicator::alltoall(T *sendrecvdata, const layout< T > &sendrecvl) const'],['../classmpl_1_1communicator.html#ad709e10e351d9ffd4dd9917a9b697c19',1,'mpl::communicator::alltoall(T *sendrecvdata) const'],['../classmpl_1_1communicator.html#adf4170f0647e141b72b441c99a5421f5',1,'mpl::communicator::alltoall(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a0e7776c9ef670b685701dfd197b76912',1,'mpl::communicator::alltoall(const T *senddata, T *recvdata) const']]], - ['alltoallv_11',['alltoallv',['../classmpl_1_1communicator.html#a05ed2a65531e978c766f9af918f5e5a3',1,'mpl::communicator::alltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#ad9dda1e430895757470e09c7ac721dee',1,'mpl::communicator::alltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const'],['../classmpl_1_1communicator.html#a4db43a46f468c60e84b35f95577ff0f4',1,'mpl::communicator::alltoallv(T *sendrecvdata, const layouts< T > &sendrecvls, const displacements &sendrecvdispls) const'],['../classmpl_1_1communicator.html#afcb7048f892b4c371bba2e261e565656',1,'mpl::communicator::alltoallv(T *sendrecvdata, const layouts< T > &sendrecvls) const']]], - ['any_12',['any',['../classmpl_1_1tag__t.html#a36c19147cc45592c8df6a14258706ad8',1,'mpl::tag_t']]], - ['any_5fsource_13',['any_source',['../namespacempl.html#a410d15ee027fbbc82e25bce740d4c69b',1,'mpl']]], - ['array_5forders_14',['array_orders',['../namespacempl.html#a7fd33fa3d7b9a6f095cd55710c3b2dbf',1,'mpl']]] + ['absolute_5fdata_1',['absolute_data',['../classmpl_1_1absolute__data.html',1,'mpl']]], + ['absolute_5fdata_3c_20const_20t_20_2a_20_3e_2',['absolute_data< const T * >',['../classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html',1,'mpl']]], + ['absolute_5fdata_3c_20t_20_2a_20_3e_3',['absolute_data< T * >',['../classmpl_1_1absolute__data_3_01_t_01_5_01_4.html',1,'mpl']]], + ['add_4',['add',['../classmpl_1_1cartesian__communicator_1_1vector.html#a3d9a6b783c4c02ff2948fff730f8de8d',1,'mpl::cartesian_communicator::vector::add()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#ac2cfb27c6cb4ef1d70aa4e7139fa60ad',1,'mpl::cartesian_communicator::included_tags::add()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#aa77b8602f4cfcf88b8ac53ecf548e2ed',1,'mpl::cartesian_communicator::dimensions::add()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a16981b82ed0e23bc5ee44294fec1b4af',1,'mpl::distributed_graph_communicator::neighbours_set::add()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#ab94d3075422b9dc7eeb87af9e32c0b43',1,'mpl::graph_communicator::edge_set::add()'],['../classmpl_1_1graph__communicator_1_1node__list.html#a25f3935b78cf4dd11a589620e727536a',1,'mpl::graph_communicator::node_list::add()'],['../classmpl_1_1indexed__layout_1_1parameter.html#a00e184b92d6c09a49438d48979194f99',1,'mpl::indexed_layout::parameter::add()'],['../classmpl_1_1hindexed__layout_1_1parameter.html#a22fbba95008c8cf65c704ca1711f3a1c',1,'mpl::hindexed_layout::parameter::add()'],['../classmpl_1_1indexed__block__layout_1_1parameter.html#a3f34394906bb3098855aee75cf44edd3',1,'mpl::indexed_block_layout::parameter::add()'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html#a6699819fb72a60027c750f93aa0df8c1',1,'mpl::hindexed_block_layout::parameter::add()'],['../classmpl_1_1subarray__layout_1_1parameter.html#adb56550a413cee796a9e3e7c9a268f24',1,'mpl::subarray_layout::parameter::add()'],['../classmpl_1_1heterogeneous__layout_1_1parameter.html#a4e576170d803d71eb3e0bcc402ea632d',1,'mpl::heterogeneous_layout::parameter::add(const T &x, const Ts &...xs)'],['../classmpl_1_1heterogeneous__layout_1_1parameter.html#adfbbfebde35bdcb9a004ac6ae0128d13',1,'mpl::heterogeneous_layout::parameter::add(const absolute_data< T * > &x, const Ts &...xs)']]], + ['allgather_5',['allgather',['../classmpl_1_1communicator.html#a54fb76beae39c558bf5b13cfdcf4fe84',1,'mpl::communicator::allgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a1a2fbf1a89b606c316790a29a6c24344',1,'mpl::communicator::allgather(const T &senddata, T *recvdata) const']]], + ['allgatherv_6',['allgatherv',['../classmpl_1_1communicator.html#a0df700ec59ff3a9eb38dd362daf9ffb3',1,'mpl::communicator::allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#a677c5eceab70d8ec6e06742ac84dc1a3',1,'mpl::communicator::allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const']]], + ['allocator_5ftype_7',['allocator_type',['../classmpl_1_1distributed__grid.html#a88feb41c455585e1793b8e4ab382a540',1,'mpl::distributed_grid::allocator_type()'],['../classmpl_1_1local__grid.html#a54c9c6a7dd781ebeb95768f157c01ad7',1,'mpl::local_grid::allocator_type()']]], + ['allreduce_8',['allreduce',['../classmpl_1_1communicator.html#a0216770c7c9dbc1cc85497b79bbc9b09',1,'mpl::communicator::allreduce(F f, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a997e3a727642f7fe7ab74a7342fa334b',1,'mpl::communicator::allreduce(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a0a2866d44cee859fc064e2e32a6710d7',1,'mpl::communicator::allreduce(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a55feab940e9c72241215918199931936',1,'mpl::communicator::allreduce(F f, T *sendrecvdata, const contiguous_layout< T > &l) const']]], + ['alltoall_9',['alltoall',['../classmpl_1_1communicator.html#a0e7776c9ef670b685701dfd197b76912',1,'mpl::communicator::alltoall(const T *senddata, T *recvdata) const'],['../classmpl_1_1communicator.html#a88368d3f4d7b375825ba839746aea7dd',1,'mpl::communicator::alltoall(T *sendrecvdata, const layout< T > &sendrecvl) const'],['../classmpl_1_1communicator.html#ad709e10e351d9ffd4dd9917a9b697c19',1,'mpl::communicator::alltoall(T *sendrecvdata) const'],['../classmpl_1_1communicator.html#adf4170f0647e141b72b441c99a5421f5',1,'mpl::communicator::alltoall(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const']]], + ['alltoallv_10',['alltoallv',['../classmpl_1_1communicator.html#a05ed2a65531e978c766f9af918f5e5a3',1,'mpl::communicator::alltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#ad9dda1e430895757470e09c7ac721dee',1,'mpl::communicator::alltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const'],['../classmpl_1_1communicator.html#a4db43a46f468c60e84b35f95577ff0f4',1,'mpl::communicator::alltoallv(T *sendrecvdata, const layouts< T > &sendrecvls, const displacements &sendrecvdispls) const'],['../classmpl_1_1communicator.html#afcb7048f892b4c371bba2e261e565656',1,'mpl::communicator::alltoallv(T *sendrecvdata, const layouts< T > &sendrecvls) const']]], + ['any_11',['any',['../classmpl_1_1tag__t.html#a36c19147cc45592c8df6a14258706ad8',1,'mpl::tag_t']]] ]; diff --git a/docs/html/search/all_1.js b/docs/html/search/all_1.js index 2f7c2f09..cf75c091 100644 --- a/docs/html/search/all_1.js +++ b/docs/html/search/all_1.js @@ -1,29 +1,25 @@ var searchData= [ ['barrier_0',['barrier',['../classmpl_1_1communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec',1,'mpl::communicator']]], - ['base_5fstruct_5fbuilder_1',['base_struct_builder',['../classmpl_1_1base__struct__builder.html#a3138dac289f89c80ea2e7f0467f7a7c3',1,'mpl::base_struct_builder::base_struct_builder()'],['../classmpl_1_1base__struct__builder.html',1,'mpl::base_struct_builder< T >']]], - ['base_5fstruct_5fbuilder_3c_20s_20_3e_2',['base_struct_builder< S >',['../classmpl_1_1struct__layout.html#a1b10f2e35ead013aab50cab5e5aee21a',1,'mpl::struct_layout']]], - ['base_5fstruct_5fbuilder_3c_20std_3a_3aarray_3c_20t_2c_20n_20_3e_20_3e_3',['base_struct_builder< std::array< T, N > >',['../classmpl_1_1base__struct__builder.html',1,'mpl']]], - ['base_5fstruct_5fbuilder_3c_20std_3a_3apair_3c_20t1_2c_20t2_20_3e_20_3e_4',['base_struct_builder< std::pair< T1, T2 > >',['../classmpl_1_1base__struct__builder.html',1,'mpl']]], - ['base_5fstruct_5fbuilder_3c_20std_3a_3atuple_3c_20ts_2e_2e_2e_20_3e_20_3e_5',['base_struct_builder< std::tuple< Ts... > >',['../classmpl_1_1base__struct__builder.html',1,'mpl']]], - ['base_5fstruct_5fbuilder_3c_20t_5bn0_5d_3e_6',['base_struct_builder< T[N0]>',['../classmpl_1_1base__struct__builder.html',1,'mpl']]], - ['base_5fstruct_5fbuilder_3c_20t_5bn0_5d_5bn1_5d_3e_7',['base_struct_builder< T[N0][N1]>',['../classmpl_1_1base__struct__builder.html',1,'mpl']]], - ['base_5fstruct_5fbuilder_3c_20t_5bn0_5d_5bn1_5d_5bn2_5d_3e_8',['base_struct_builder< T[N0][N1][N2]>',['../classmpl_1_1base__struct__builder.html',1,'mpl']]], - ['base_5fstruct_5fbuilder_3c_20t_5bn0_5d_5bn1_5d_5bn2_5d_5bn3_5d_3e_9',['base_struct_builder< T[N0][N1][N2][N3]>',['../classmpl_1_1base__struct__builder.html',1,'mpl']]], - ['bcast_10',['bcast',['../classmpl_1_1communicator.html#a719512973bc590402ac30b10e5227d2b',1,'mpl::communicator::bcast(int root_rank, T *data, const layout< T > &l) const'],['../classmpl_1_1communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5',1,'mpl::communicator::bcast(int root_rank, T &data) const']]], - ['begin_11',['begin',['../classmpl_1_1distributed__grid_1_1dimensions.html#ad909c366be2bae287f8ea2051ae4be4a',1,'mpl::distributed_grid::dimensions::begin()'],['../classmpl_1_1local__grid_1_1dimensions.html#a9fe001a9733e41fa7d1c7eecc4597bdc',1,'mpl::local_grid::dimensions::begin()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a4aa7c8f061a34d093429d3116d1f4738',1,'mpl::distributed_grid::dimensions::begin()'],['../classmpl_1_1distributed__grid.html#a82adfb3638ace78e13b3803933f46585',1,'mpl::distributed_grid::begin()'],['../classmpl_1_1local__grid_1_1dimensions.html#aad9dda9392cfb376908c8bfcc1f4a46a',1,'mpl::local_grid::dimensions::begin()'],['../classmpl_1_1local__grid.html#a49ea125a5efe80df775f8dc62acaa2f2',1,'mpl::local_grid::begin()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a8347304cab220bd077fc5e3dc62052f8',1,'mpl::cartesian_communicator::dimensions::begin()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a667d98ea7708b6934ec8e85431a84087',1,'mpl::cartesian_communicator::dimensions::begin() const']]], - ['bit_5fand_12',['bit_and',['../structmpl_1_1bit__and.html',1,'mpl']]], - ['bit_5for_13',['bit_or',['../structmpl_1_1bit__or.html',1,'mpl']]], - ['bit_5fxor_14',['bit_xor',['../structmpl_1_1bit__xor.html',1,'mpl']]], - ['bsend_15',['bsend',['../classmpl_1_1communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2',1,'mpl::communicator::bsend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ac43f72ca3930976c113403fd465087b0',1,'mpl::communicator::bsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3',1,'mpl::communicator::bsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['bsend_5fbuffer_16',['bsend_buffer',['../classmpl_1_1bsend__buffer.html#a934b4eb83876f5cca25426fce5ce9d38',1,'mpl::bsend_buffer::bsend_buffer(int size)'],['../classmpl_1_1bsend__buffer.html#adde2469450f68ee1004d4abe9db9dff8',1,'mpl::bsend_buffer::bsend_buffer(bsend_buffer &&other)=delete'],['../classmpl_1_1bsend__buffer.html#a67db6581e3a0f2cc46a3ab9ab2b9a571',1,'mpl::bsend_buffer::bsend_buffer(const bsend_buffer &other)=delete'],['../classmpl_1_1bsend__buffer.html#aba791f693bf2109841329467cc7fd2ff',1,'mpl::bsend_buffer::bsend_buffer()=delete'],['../classmpl_1_1bsend__buffer.html',1,'mpl::bsend_buffer']]], - ['bsend_5finit_17',['bsend_init',['../classmpl_1_1communicator.html#aafb144ba1a5494f2a21de28c50b3ab91',1,'mpl::communicator::bsend_init(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ae2941001b886519f2d10d0ebb9901e70',1,'mpl::communicator::bsend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a5314e5dc5b35f952dba239b8f03be330',1,'mpl::communicator::bsend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['bsend_5foverhead_18',['bsend_overhead',['../namespacempl.html#a4bc7e110094061c98ce0bf2b136ff19a',1,'mpl']]], - ['bsend_5fsize_19',['bsend_size',['../classmpl_1_1communicator.html#a4ac75dc1695c441e9e8faa185a458cc3',1,'mpl::communicator::bsend_size(int number=1) const'],['../classmpl_1_1communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb',1,'mpl::communicator::bsend_size(const layout< T > &l, int number=1) const']]], - ['buffer_5fattach_20',['buffer_attach',['../namespacempl_1_1environment.html#ab112324f29c5e0a131f1863ab11f2ff5',1,'mpl::environment']]], - ['buffer_5fdetach_21',['buffer_detach',['../namespacempl_1_1environment.html#aa73a2d692feb579fac1c5c351503fbe2',1,'mpl::environment']]], - ['byte_5fextent_22',['byte_extent',['../classmpl_1_1layout.html#a808408eaf18cfd04f8fc0e43ad8abece',1,'mpl::layout']]], - ['byte_5flower_5fbound_23',['byte_lower_bound',['../classmpl_1_1layout.html#aa391a934f031693cf985dcd1c675d8e4',1,'mpl::layout']]], - ['byte_5fresize_24',['byte_resize',['../classmpl_1_1layout.html#a05cc59346d0b585b92a266ac7e4512eb',1,'mpl::layout']]], - ['byte_5fupper_5fbound_25',['byte_upper_bound',['../classmpl_1_1layout.html#a9aea61b5ce92681aee5df4a61672c02b',1,'mpl::layout']]] + ['base_5fstruct_5fbuilder_1',['base_struct_builder',['../classmpl_1_1base__struct__builder.html',1,'mpl']]], + ['base_5fstruct_5fbuilder_3c_20std_3a_3aarray_3c_20t_2c_20n_20_3e_20_3e_2',['base_struct_builder< std::array< T, N > >',['../classmpl_1_1base__struct__builder.html',1,'mpl']]], + ['base_5fstruct_5fbuilder_3c_20std_3a_3apair_3c_20t1_2c_20t2_20_3e_20_3e_3',['base_struct_builder< std::pair< T1, T2 > >',['../classmpl_1_1base__struct__builder.html',1,'mpl']]], + ['base_5fstruct_5fbuilder_3c_20std_3a_3atuple_3c_20ts_2e_2e_2e_20_3e_20_3e_4',['base_struct_builder< std::tuple< Ts... > >',['../classmpl_1_1base__struct__builder.html',1,'mpl']]], + ['base_5fstruct_5fbuilder_3c_20t_5bn0_5d_3e_5',['base_struct_builder< T[N0]>',['../classmpl_1_1base__struct__builder.html',1,'mpl']]], + ['base_5fstruct_5fbuilder_3c_20t_5bn0_5d_5bn1_5d_3e_6',['base_struct_builder< T[N0][N1]>',['../classmpl_1_1base__struct__builder.html',1,'mpl']]], + ['base_5fstruct_5fbuilder_3c_20t_5bn0_5d_5bn1_5d_5bn2_5d_3e_7',['base_struct_builder< T[N0][N1][N2]>',['../classmpl_1_1base__struct__builder.html',1,'mpl']]], + ['base_5fstruct_5fbuilder_3c_20t_5bn0_5d_5bn1_5d_5bn2_5d_5bn3_5d_3e_8',['base_struct_builder< T[N0][N1][N2][N3]>',['../classmpl_1_1base__struct__builder.html',1,'mpl']]], + ['bcast_9',['bcast',['../classmpl_1_1communicator.html#a719512973bc590402ac30b10e5227d2b',1,'mpl::communicator::bcast(int root_rank, T *data, const layout< T > &l) const'],['../classmpl_1_1communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5',1,'mpl::communicator::bcast(int root_rank, T &data) const']]], + ['begin_10',['begin',['../classmpl_1_1local__grid.html#a49ea125a5efe80df775f8dc62acaa2f2',1,'mpl::local_grid::begin()'],['../classmpl_1_1distributed__grid.html#a82adfb3638ace78e13b3803933f46585',1,'mpl::distributed_grid::begin()']]], + ['bit_5fand_11',['bit_and',['../structmpl_1_1bit__and.html',1,'mpl']]], + ['bit_5for_12',['bit_or',['../structmpl_1_1bit__or.html',1,'mpl']]], + ['bit_5fxor_13',['bit_xor',['../structmpl_1_1bit__xor.html',1,'mpl']]], + ['bsend_14',['bsend',['../classmpl_1_1communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2',1,'mpl::communicator::bsend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ac43f72ca3930976c113403fd465087b0',1,'mpl::communicator::bsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3',1,'mpl::communicator::bsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], + ['bsend_5fbuffer_15',['bsend_buffer',['../classmpl_1_1bsend__buffer.html#a934b4eb83876f5cca25426fce5ce9d38',1,'mpl::bsend_buffer::bsend_buffer(int size)'],['../classmpl_1_1bsend__buffer.html#adde2469450f68ee1004d4abe9db9dff8',1,'mpl::bsend_buffer::bsend_buffer(bsend_buffer &&other)=delete'],['../classmpl_1_1bsend__buffer.html#a67db6581e3a0f2cc46a3ab9ab2b9a571',1,'mpl::bsend_buffer::bsend_buffer(const bsend_buffer &other)=delete'],['../classmpl_1_1bsend__buffer.html#aba791f693bf2109841329467cc7fd2ff',1,'mpl::bsend_buffer::bsend_buffer()=delete'],['../classmpl_1_1bsend__buffer.html',1,'mpl::bsend_buffer']]], + ['bsend_5finit_16',['bsend_init',['../classmpl_1_1communicator.html#aafb144ba1a5494f2a21de28c50b3ab91',1,'mpl::communicator::bsend_init(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ae2941001b886519f2d10d0ebb9901e70',1,'mpl::communicator::bsend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a5314e5dc5b35f952dba239b8f03be330',1,'mpl::communicator::bsend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], + ['bsend_5fsize_17',['bsend_size',['../classmpl_1_1communicator.html#a4ac75dc1695c441e9e8faa185a458cc3',1,'mpl::communicator::bsend_size(int number=1) const'],['../classmpl_1_1communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb',1,'mpl::communicator::bsend_size(const layout< T > &l, int number=1) const']]], + ['byte_5fextent_18',['byte_extent',['../classmpl_1_1layout.html#a808408eaf18cfd04f8fc0e43ad8abece',1,'mpl::layout']]], + ['byte_5flower_5fbound_19',['byte_lower_bound',['../classmpl_1_1layout.html#aa391a934f031693cf985dcd1c675d8e4',1,'mpl::layout']]], + ['byte_5fresize_20',['byte_resize',['../classmpl_1_1layout.html#a05cc59346d0b585b92a266ac7e4512eb',1,'mpl::layout']]], + ['byte_5fupper_5fbound_21',['byte_upper_bound',['../classmpl_1_1layout.html#a9aea61b5ce92681aee5df4a61672c02b',1,'mpl::layout']]] ]; diff --git a/docs/html/search/all_10.js b/docs/html/search/all_10.js index d2ab0af5..c8059c48 100644 --- a/docs/html/search/all_10.js +++ b/docs/html/search/all_10.js @@ -1,22 +1,8 @@ var searchData= [ - ['tag_0',['tag',['../classmpl_1_1status__t.html#a76b56d148b261f474f473d936c1fd878',1,'mpl::status_t']]], - ['tag_5ft_1',['tag_t',['../classmpl_1_1tag__t.html',1,'mpl::tag_t'],['../classmpl_1_1tag__t.html#af2132893124b73da5792982e961f8e21',1,'mpl::tag_t::tag_t()=default'],['../classmpl_1_1tag__t.html#a290110d503cd4d6bf1bbd0553f78c0a6',1,'mpl::tag_t::tag_t(T t)'],['../classmpl_1_1tag__t.html#aee28b8c00b151ccee302f75016b63f7b',1,'mpl::tag_t::tag_t(int t)']]], - ['test_2',['test',['../classmpl_1_1impl_1_1request.html#a9731fa2fb0157e792af4d9e5ade4103b',1,'mpl::impl::request']]], - ['testall_3',['testall',['../classmpl_1_1impl_1_1request__pool.html#a5ebba7b0471ba84cf591abace463072f',1,'mpl::impl::request_pool']]], - ['testany_4',['testany',['../classmpl_1_1impl_1_1request__pool.html#a0119c4bd3e340044868b9c26bae2a6f9',1,'mpl::impl::request_pool']]], - ['testsome_5',['testsome',['../classmpl_1_1impl_1_1request__pool.html#a0adfe04dd4bf29535b6687562fb88989',1,'mpl::impl::request_pool']]], - ['threading_5fmode_6',['threading_mode',['../namespacempl_1_1environment.html#ac623e48336fe65e098fb56ebd16dba33',1,'mpl::environment']]], - ['threading_5fmodes_7',['threading_modes',['../namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828',1,'mpl']]], - ['topology_5fcommunicator_8',['topology_communicator',['../classmpl_1_1impl_1_1topology__communicator.html',1,'mpl::impl']]], - ['translate_9',['translate',['../classmpl_1_1group.html#a38cdae96823a5ce04c1e4a637ca82d5a',1,'mpl::group::translate(int rank, const group &other) const'],['../classmpl_1_1group.html#a1c11d89daec6af7b0ed1b5668d355656',1,'mpl::group::translate(const ranks &rank, const group &other) const']]], - ['true_5fbyte_5fextent_10',['true_byte_extent',['../classmpl_1_1layout.html#a45840e6936914baef876a0b67a8bb499',1,'mpl::layout']]], - ['true_5fbyte_5flower_5fbound_11',['true_byte_lower_bound',['../classmpl_1_1layout.html#a245932be5b4d58bb00a05b29208ab7c4',1,'mpl::layout']]], - ['true_5fbyte_5fupper_5fbound_12',['true_byte_upper_bound',['../classmpl_1_1layout.html#adf592d9e08a92314cc086bd51d643953',1,'mpl::layout']]], - ['true_5fextent_13',['true_extent',['../classmpl_1_1layout.html#a0890ec4684e6a465170f88932e116d30',1,'mpl::layout']]], - ['true_5flower_5fbound_14',['true_lower_bound',['../classmpl_1_1layout.html#a4b0e56adef2f212d061f971b2ecafd0a',1,'mpl::layout']]], - ['true_5fupper_5fbound_15',['true_upper_bound',['../classmpl_1_1layout.html#a80713f15de3244b019294ee277c8c650',1,'mpl::layout']]], - ['tuple_5felement_3c_20n_2c_20mpl_3a_3acartesian_5fcommunicator_3a_3adimensions_3a_3adimension_5fperiodicity_5fproxy_20_3e_16',['tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >',['../structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html',1,'std']]], - ['tuple_5fsize_3c_20mpl_3a_3acartesian_5fcommunicator_3a_3adimensions_3a_3adimension_5fperiodicity_5fproxy_20_3e_17',['tuple_size< mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >',['../structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html',1,'std']]], - ['type_18',['type',['../structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html#ade76dbf30ac4a03ad006fc2db5b9b8a2',1,'std::tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >']]] + ['unequal_0',['unequal',['../classmpl_1_1group.html#a1d1766424b26d5f157ff02a0044aaafd',1,'mpl::group::unequal()'],['../classmpl_1_1communicator.html#a10097f544da37d6c9c73606409ed151a',1,'mpl::communicator::unequal()'],['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69ab4f45c85d7e3269abe7f894d94bf0f29',1,'mpl::group::unequal()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29',1,'mpl::communicator::unequal()']]], + ['union_1',['Union',['../classmpl_1_1group.html#a048489f7dcb5dfd61ed0d874dabeb4c7',1,'mpl::group']]], + ['union_5ftag_2',['Union_tag',['../classmpl_1_1group_1_1_union__tag.html',1,'mpl::group']]], + ['up_3',['up',['../classmpl_1_1tag__t.html#ac0e81b5e69da16516bb6a0327a494eca',1,'mpl::tag_t']]], + ['upper_5fbound_4',['upper_bound',['../classmpl_1_1layout.html#a2c768cf5cbbcf2dcf50a03a809df457f',1,'mpl::layout']]] ]; diff --git a/docs/html/search/all_11.js b/docs/html/search/all_11.js index 093b50c2..aa73aa7c 100644 --- a/docs/html/search/all_11.js +++ b/docs/html/search/all_11.js @@ -1,9 +1,7 @@ var searchData= [ - ['undefined_0',['undefined',['../namespacempl.html#a551ed45948e628d93f6669b4cb01e750',1,'mpl']]], - ['unequal_1',['unequal',['../classmpl_1_1group.html#a1d1766424b26d5f157ff02a0044aaafd',1,'mpl::group::unequal()'],['../classmpl_1_1communicator.html#a10097f544da37d6c9c73606409ed151a',1,'mpl::communicator::unequal()'],['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69ab4f45c85d7e3269abe7f894d94bf0f29',1,'mpl::group::unequal()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29',1,'mpl::communicator::unequal()']]], - ['union_2',['Union',['../classmpl_1_1group.html#a048489f7dcb5dfd61ed0d874dabeb4c7',1,'mpl::group']]], - ['union_5ftag_3',['Union_tag',['../classmpl_1_1group_1_1_union__tag.html',1,'mpl::group']]], - ['up_4',['up',['../classmpl_1_1tag__t.html#ac0e81b5e69da16516bb6a0327a494eca',1,'mpl::tag_t']]], - ['upper_5fbound_5',['upper_bound',['../classmpl_1_1layout.html#a2c768cf5cbbcf2dcf50a03a809df457f',1,'mpl::layout']]] + ['value_5ftype_0',['value_type',['../classmpl_1_1distributed__grid.html#ab991c114a3494a36c2bf3a0b98edae75',1,'mpl::distributed_grid::value_type()'],['../classmpl_1_1local__grid.html#ab2318fdfc94ef7e9d626202597dfd6f4',1,'mpl::local_grid::value_type()']]], + ['vector_1',['vector',['../classmpl_1_1cartesian__communicator_1_1vector.html',1,'mpl::cartesian_communicator::vector'],['../classmpl_1_1cartesian__communicator_1_1vector.html#aadb32224556177212bda389440645f2d',1,'mpl::cartesian_communicator::vector::vector()=default'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a9ad2fab87c4ee7bc0c95ad0a12c519c4',1,'mpl::cartesian_communicator::vector::vector(int dimension)'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a6f1970d433943ef7aa5b1bd281aa92ce',1,'mpl::cartesian_communicator::vector::vector(std::initializer_list< int > init)']]], + ['vector_5flayout_2',['vector_layout',['../classmpl_1_1vector__layout.html',1,'mpl::vector_layout< T >'],['../classmpl_1_1vector__layout.html#ac466af7b2403264214290c8e12c37cb5',1,'mpl::vector_layout::vector_layout(size_t count=0)'],['../classmpl_1_1vector__layout.html#a1a81501116e20200a783f9799a412482',1,'mpl::vector_layout::vector_layout(size_t count, const layout< T > &l)'],['../classmpl_1_1vector__layout.html#acc41027491fb0772f5f6f1bbe4a8029b',1,'mpl::vector_layout::vector_layout(const vector_layout< T > &l)'],['../classmpl_1_1vector__layout.html#a58151c81908894ffdd9279df6126367a',1,'mpl::vector_layout::vector_layout(vector_layout &&l) noexcept']]], + ['vector_5ftype_3',['vector_type',['../classmpl_1_1distributed__grid.html#ab234ea807e04466672d1cb64fe6b0e9a',1,'mpl::distributed_grid::vector_type()'],['../classmpl_1_1local__grid.html#ace4a57097109ad8e4236426f2b81570f',1,'mpl::local_grid::vector_type()']]] ]; diff --git a/docs/html/search/all_12.js b/docs/html/search/all_12.js index e621ec5b..6cd75187 100644 --- a/docs/html/search/all_12.js +++ b/docs/html/search/all_12.js @@ -1,8 +1,4 @@ var searchData= [ - ['value_5ftype_0',['value_type',['../classmpl_1_1graph__communicator_1_1node__list.html#a51b3fcd822115593a2af29b5745aa224',1,'mpl::graph_communicator::node_list::value_type()'],['../classmpl_1_1cartesian__communicator_1_1vector.html#af62280a6766d3cfe8db967ab0ee5ac50',1,'mpl::cartesian_communicator::vector::value_type()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a4d4e69a2220d0670cabbbf3dd566000a',1,'mpl::cartesian_communicator::included_tags::value_type()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a0e2e337b0ef4cbfe65e84719f6f18b56',1,'mpl::cartesian_communicator::dimensions::value_type()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#ad4a9eef4a8a7cb42a4a4d303c9c1a613',1,'mpl::cartesian_communicator::dimensions::iterator::value_type()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a240a9c896e65954b25b9444db1e7f745',1,'mpl::cartesian_communicator::dimensions::const_iterator::value_type()'],['../classmpl_1_1displacements.html#a6507f2260c13ced0a18e3d32af0c04a6',1,'mpl::displacements::value_type()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#abde052dc7aa30e7322ae4f110e099a28',1,'mpl::distributed_graph_communicator::neighbours_set::value_type()'],['../classmpl_1_1distributed__grid.html#ab991c114a3494a36c2bf3a0b98edae75',1,'mpl::distributed_grid::value_type()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a1104ae5dc102133af3801569848e3052',1,'mpl::distributed_grid::dimensions::value_type()'],['../classmpl_1_1local__grid.html#ab2318fdfc94ef7e9d626202597dfd6f4',1,'mpl::local_grid::value_type()'],['../classmpl_1_1local__grid_1_1dimensions.html#a8dde7cc3e0f11533dcf221daed6368fe',1,'mpl::local_grid::dimensions::value_type()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#abcf980f8207f9165319e4ea0b1785112',1,'mpl::graph_communicator::edge_set::value_type()']]], - ['vector_1',['vector',['../classmpl_1_1cartesian__communicator_1_1vector.html',1,'mpl::cartesian_communicator::vector'],['../classmpl_1_1cartesian__communicator_1_1vector.html#aadb32224556177212bda389440645f2d',1,'mpl::cartesian_communicator::vector::vector()=default'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a9ad2fab87c4ee7bc0c95ad0a12c519c4',1,'mpl::cartesian_communicator::vector::vector(int dimension)'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a6f1970d433943ef7aa5b1bd281aa92ce',1,'mpl::cartesian_communicator::vector::vector(std::initializer_list< int > init)']]], - ['vector_5flayout_2',['vector_layout',['../classmpl_1_1vector__layout.html',1,'mpl::vector_layout< T >'],['../classmpl_1_1vector__layout.html#ac466af7b2403264214290c8e12c37cb5',1,'mpl::vector_layout::vector_layout(size_t count=0)'],['../classmpl_1_1vector__layout.html#a1a81501116e20200a783f9799a412482',1,'mpl::vector_layout::vector_layout(size_t count, const layout< T > &l)'],['../classmpl_1_1vector__layout.html#acc41027491fb0772f5f6f1bbe4a8029b',1,'mpl::vector_layout::vector_layout(const vector_layout< T > &l)'],['../classmpl_1_1vector__layout.html#a58151c81908894ffdd9279df6126367a',1,'mpl::vector_layout::vector_layout(vector_layout &&l) noexcept']]], - ['vector_5flayout_3c_20t_20_3e_3',['vector_layout< T >',['../classmpl_1_1layout.html#a477b919fe55146acf76bbe082bb4a214',1,'mpl::layout']]], - ['vector_5ftype_4',['vector_type',['../classmpl_1_1distributed__grid.html#ab234ea807e04466672d1cb64fe6b0e9a',1,'mpl::distributed_grid::vector_type()'],['../classmpl_1_1local__grid.html#ace4a57097109ad8e4236426f2b81570f',1,'mpl::local_grid::vector_type()']]] + ['what_0',['what',['../classmpl_1_1error.html#a74cba88f95894c0abf2baff78a88076e',1,'mpl::error']]] ]; diff --git a/docs/html/search/all_13.js b/docs/html/search/all_13.js index 888d01e1..dec748ee 100644 --- a/docs/html/search/all_13.js +++ b/docs/html/search/all_13.js @@ -1,12 +1,7 @@ var searchData= [ - ['wait_0',['wait',['../classmpl_1_1impl_1_1request.html#aedca3ad316f078b0190b9396197a7605',1,'mpl::impl::request']]], - ['waitall_1',['waitall',['../classmpl_1_1impl_1_1request__pool.html#a1e864f5b3e62bb28db94bec090235401',1,'mpl::impl::request_pool']]], - ['waitany_2',['waitany',['../classmpl_1_1impl_1_1request__pool.html#a1acdccf04f454806bac255279ac53974',1,'mpl::impl::request_pool']]], - ['waitsome_3',['waitsome',['../classmpl_1_1impl_1_1request__pool.html#ab076cdb8feb7b1270497af73430e4fde',1,'mpl::impl::request_pool']]], - ['weight_4',['weight',['../classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#afae44c103e3457db3608ccbe5a0a0b03',1,'mpl::distributed_graph_communicator::rank_weight_pair']]], - ['what_5',['what',['../classmpl_1_1error.html#a74cba88f95894c0abf2baff78a88076e',1,'mpl::error']]], - ['wtick_6',['wtick',['../namespacempl_1_1environment.html#ad5d86a31e41363a7b326baaa9dd32edb',1,'mpl::environment']]], - ['wtime_7',['wtime',['../namespacempl_1_1environment.html#a18e3982cf7b547d30b3f7f1236a079f6',1,'mpl::environment']]], - ['wtime_5fis_5fglobal_8',['wtime_is_global',['../namespacempl_1_1environment.html#a8df37b1fb318ae7efa867d9eda6b99b9',1,'mpl::environment']]] + ['_7ebsend_5fbuffer_0',['~bsend_buffer',['../classmpl_1_1bsend__buffer.html#a550e637a57ab5a1db036b6da63a488b9',1,'mpl::bsend_buffer']]], + ['_7ecommunicator_1',['~communicator',['../classmpl_1_1communicator.html#a47df48127ee7c1952d62832748b052cd',1,'mpl::communicator']]], + ['_7egroup_2',['~group',['../classmpl_1_1group.html#a4bd2522d5cfecbd2c844e7bad1c0ae36',1,'mpl::group']]], + ['_7elayout_3',['~layout',['../classmpl_1_1layout.html#a09c644368b2506e471715313e9059717',1,'mpl::layout']]] ]; diff --git a/docs/html/search/all_14.html b/docs/html/search/all_14.html deleted file mode 100644 index 700877a4..00000000 --- a/docs/html/search/all_14.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/all_14.js b/docs/html/search/all_14.js deleted file mode 100644 index 9e4dd32d..00000000 --- a/docs/html/search/all_14.js +++ /dev/null @@ -1,9 +0,0 @@ -var searchData= -[ - ['_7ebsend_5fbuffer_0',['~bsend_buffer',['../classmpl_1_1bsend__buffer.html#a550e637a57ab5a1db036b6da63a488b9',1,'mpl::bsend_buffer']]], - ['_7ecommunicator_1',['~communicator',['../classmpl_1_1communicator.html#a47df48127ee7c1952d62832748b052cd',1,'mpl::communicator']]], - ['_7egroup_2',['~group',['../classmpl_1_1group.html#a4bd2522d5cfecbd2c844e7bad1c0ae36',1,'mpl::group']]], - ['_7elayout_3',['~layout',['../classmpl_1_1layout.html#a09c644368b2506e471715313e9059717',1,'mpl::layout']]], - ['_7erequest_4',['~request',['../classmpl_1_1impl_1_1request.html#ab53c21c706def81d4953a618ab426c08',1,'mpl::impl::request']]], - ['_7erequest_5fpool_5',['~request_pool',['../classmpl_1_1impl_1_1request__pool.html#aedfd5afa202dcc4f82d06d45ba23a198',1,'mpl::impl::request_pool']]] -]; diff --git a/docs/html/search/all_2.js b/docs/html/search/all_2.js index 43ecda90..531d8aea 100644 --- a/docs/html/search/all_2.js +++ b/docs/html/search/all_2.js @@ -1,24 +1,15 @@ var searchData= [ - ['c_5forder_0',['C_order',['../namespacempl.html#a7fd33fa3d7b9a6f095cd55710c3b2dbfaadf55cfbf8cf8671022d5210c4eccaa8',1,'mpl']]], - ['cancel_1',['cancel',['../classmpl_1_1impl_1_1request.html#ad2ddcfa49b35df4120235692fdebdef2',1,'mpl::impl::request::cancel()'],['../classmpl_1_1impl_1_1request__pool.html#a09521b62f5b53546c854e89644245b70',1,'mpl::impl::request_pool::cancel(size_type i)']]], - ['cancelall_2',['cancelall',['../classmpl_1_1impl_1_1request__pool.html#a4191612db45d53cab3a294f3ac2f9018',1,'mpl::impl::request_pool']]], - ['cartesian_5fcommunicator_3',['cartesian_communicator',['../classmpl_1_1cartesian__communicator.html#a0c9fb786a1e4e458f11b73450f503b08',1,'mpl::cartesian_communicator::cartesian_communicator(cartesian_communicator &&other) noexcept'],['../classmpl_1_1cartesian__communicator.html#aaaf184e1efe161f33a006fc54fe0ff0b',1,'mpl::cartesian_communicator::cartesian_communicator(const cartesian_communicator &other, const included_tags &is_included)'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a6087bfa57412c9e8b80b6f380ebaaf7a',1,'mpl::cartesian_communicator::vector::cartesian_communicator()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a6087bfa57412c9e8b80b6f380ebaaf7a',1,'mpl::cartesian_communicator::included_tags::cartesian_communicator()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a6087bfa57412c9e8b80b6f380ebaaf7a',1,'mpl::cartesian_communicator::dimensions::cartesian_communicator()'],['../classmpl_1_1communicator.html#a6087bfa57412c9e8b80b6f380ebaaf7a',1,'mpl::communicator::cartesian_communicator()'],['../classmpl_1_1cartesian__communicator.html#a0be8c91aaa5cde91fcaa15dcba18902a',1,'mpl::cartesian_communicator::cartesian_communicator()=default'],['../classmpl_1_1cartesian__communicator.html#a8b5179d9d85d4768f6134ff34b1f671a',1,'mpl::cartesian_communicator::cartesian_communicator(const cartesian_communicator &other)'],['../classmpl_1_1cartesian__communicator.html#a7fbc0f1d669e21a5e1dd6f2601d256b8',1,'mpl::cartesian_communicator::cartesian_communicator(const communicator &other, const dimensions &dims, bool reorder=true)'],['../classmpl_1_1cartesian__communicator.html',1,'mpl::cartesian_communicator']]], - ['cbegin_4',['cbegin',['../classmpl_1_1distributed__grid_1_1dimensions.html#a970cdde63ec39539cf1f2cd8e8b290da',1,'mpl::distributed_grid::dimensions::cbegin()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a83beb2f3d7934fa15cc2fe9d73601d5d',1,'mpl::cartesian_communicator::dimensions::cbegin()'],['../classmpl_1_1local__grid_1_1dimensions.html#a1f28ef835386df911b7db5e044b17858',1,'mpl::local_grid::dimensions::cbegin()']]], - ['cend_5',['cend',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a0061b4a1b2f65b3a987204a51626ca4e',1,'mpl::cartesian_communicator::dimensions::cend()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a39a982a284a1c264dc9b2c633be8f920',1,'mpl::distributed_grid::dimensions::cend()'],['../classmpl_1_1local__grid_1_1dimensions.html#a8e2b64a5ee4a8e5befe471fabd764a6e',1,'mpl::local_grid::dimensions::cend()']]], - ['comm_5fcollective_6',['comm_collective',['../classmpl_1_1communicator.html#a589d83fa5ec31c153e23242c32ed0c9e',1,'mpl::communicator']]], - ['comm_5fcollective_5ftag_7',['comm_collective_tag',['../classmpl_1_1communicator_1_1comm__collective__tag.html',1,'mpl::communicator']]], - ['comm_5fself_8',['comm_self',['../namespacempl_1_1environment.html#a785bf3032ef30fadadf9d834549041c1',1,'mpl::environment']]], - ['comm_5fworld_9',['comm_world',['../namespacempl_1_1environment.html#a1f4644f4435160bb33ada569dc3f48ac',1,'mpl::environment']]], - ['communicator_10',['communicator',['../classmpl_1_1group.html#a28e4940a8d711c15cada064a12ba0788',1,'mpl::group::communicator()'],['../classmpl_1_1contiguous__layout.html#a28e4940a8d711c15cada064a12ba0788',1,'mpl::contiguous_layout::communicator()'],['../classmpl_1_1layouts.html#a28e4940a8d711c15cada064a12ba0788',1,'mpl::layouts::communicator()'],['../classmpl_1_1contiguous__layouts.html#a28e4940a8d711c15cada064a12ba0788',1,'mpl::contiguous_layouts::communicator()'],['../classmpl_1_1status__t.html#a28e4940a8d711c15cada064a12ba0788',1,'mpl::status_t::communicator()'],['../classmpl_1_1communicator.html#ae8dcb108a058800f583f92d8bc2d369f',1,'mpl::communicator::communicator()=default'],['../classmpl_1_1communicator.html#aaedab51467a9eb38a2aeedb58e357e3d',1,'mpl::communicator::communicator(const communicator &other)'],['../classmpl_1_1communicator.html#a61a0bccfa633febde368a29c749368bf',1,'mpl::communicator::communicator(communicator &&other) noexcept'],['../classmpl_1_1communicator.html#ab082b5c443bf7db3fd803e723510d533',1,'mpl::communicator::communicator(comm_collective_tag comm_collective, const communicator &other, const group &gr)'],['../classmpl_1_1communicator.html#a9acb1690c4190b91b48cf919257182f3',1,'mpl::communicator::communicator(group_collective_tag group_collective, const communicator &other, const group &gr, tag_t t=tag_t(0))'],['../classmpl_1_1communicator.html#aef00e3ea7dcd56ab1c5fca19222af822',1,'mpl::communicator::communicator(split_tag split, const communicator &other, color_type color, key_type key=0)'],['../classmpl_1_1communicator.html#a615ca7d0551e964ca92c2d6f246bb595',1,'mpl::communicator::communicator(split_shared_memory_tag split_shared_memory, const communicator &other, key_type key=0)'],['../classmpl_1_1communicator.html',1,'mpl::communicator']]], - ['compare_11',['compare',['../classmpl_1_1communicator.html#a7b672d71b83fafca8f6bf4d435331180',1,'mpl::communicator::compare()'],['../classmpl_1_1group.html#a91ec59cb7d18120ac6f5b0dc40f37a95',1,'mpl::group::compare()']]], - ['congruent_12',['congruent',['../classmpl_1_1communicator.html#aec5ab4324f1a084a93edbbab08bc3d91',1,'mpl::communicator::congruent()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac',1,'mpl::communicator::congruent()']]], - ['const_5fiterator_13',['const_iterator',['../classmpl_1_1graph__communicator_1_1node__list.html#a5586635b21b9dbc9cb1d50c1cf9471a1',1,'mpl::graph_communicator::node_list::const_iterator()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#afb583e0b115e329d7303d1d9b99884fa',1,'mpl::cartesian_communicator::dimensions::const_iterator::const_iterator()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#a015685ec461e590fa7272cbf91220d18',1,'mpl::graph_communicator::edge_set::const_iterator()'],['../classmpl_1_1local__grid_1_1dimensions.html#a79b159ea66770b5581b00330a95a2227',1,'mpl::local_grid::dimensions::const_iterator()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a633df14d612a5a06aecb6a7a4f2775f0',1,'mpl::distributed_grid::dimensions::const_iterator()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a5425d74e6c4cea81f2d26501e09d256b',1,'mpl::distributed_graph_communicator::neighbours_set::const_iterator()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a1aa72f4e0fcca8b7a149adeb640ead4e',1,'mpl::cartesian_communicator::included_tags::const_iterator()'],['../classmpl_1_1cartesian__communicator_1_1vector.html#ad9f677e798824f15bd7ae99bac9ec985',1,'mpl::cartesian_communicator::vector::const_iterator()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html',1,'mpl::cartesian_communicator::dimensions::const_iterator']]], - ['const_5fpointer_14',['const_pointer',['../classmpl_1_1distributed__grid.html#adbab66d465f005bb94e838740deb6ec4',1,'mpl::distributed_grid::const_pointer()'],['../classmpl_1_1local__grid.html#a016e0dbc1d748bea7bf40f5ad6917a67',1,'mpl::local_grid::const_pointer()']]], - ['const_5freference_15',['const_reference',['../classmpl_1_1distributed__grid.html#a32d7b6507e9184ed2e89324b40c7f6c9',1,'mpl::distributed_grid::const_reference()'],['../classmpl_1_1graph__communicator_1_1node__list.html#aa84022c75e433a413319022844309f84',1,'mpl::graph_communicator::node_list::const_reference()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#ab383a23d687c47ad7b85309f81ffdb1b',1,'mpl::graph_communicator::edge_set::const_reference()'],['../classmpl_1_1local__grid_1_1dimensions.html#a65540a03ba7eba65ad33b461f2737d95',1,'mpl::local_grid::dimensions::const_reference()'],['../classmpl_1_1local__grid.html#aab729f6d024a0550cd75781ac7e7f7a7',1,'mpl::local_grid::const_reference()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#ac78cd1aea35357b5a113b50abec60a75',1,'mpl::distributed_graph_communicator::neighbours_set::const_reference()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a52bc3894703534c57d950bf23228ff6f',1,'mpl::cartesian_communicator::dimensions::const_reference()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#ab46ef7e9748d1f33a0f8ff71d104e7e1',1,'mpl::cartesian_communicator::included_tags::const_reference()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#ac16a09ce9008a9260e3d750562a45ced',1,'mpl::distributed_grid::dimensions::const_reference()'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a6d37006e6cad284e3761d2dc9642ee88',1,'mpl::cartesian_communicator::vector::const_reference()']]], - ['contiguous_5flayout_16',['contiguous_layout',['../classmpl_1_1contiguous__layout.html#ab067e1300c01e8bba62f0414bbac5254',1,'mpl::contiguous_layout::contiguous_layout(size_t count=0)'],['../classmpl_1_1contiguous__layout.html#aae660e5421a3eecf9b365ae32df3cf29',1,'mpl::contiguous_layout::contiguous_layout(size_t count, const contiguous_layout< T > &l)'],['../classmpl_1_1contiguous__layout.html#a8eda4ba99bfdf30d9773842d90616fd7',1,'mpl::contiguous_layout::contiguous_layout(const contiguous_layout< T > &l)'],['../classmpl_1_1contiguous__layout.html#a52268d8595fc53bfb6efa9e5ebdd1c11',1,'mpl::contiguous_layout::contiguous_layout(contiguous_layout &&l) noexcept'],['../classmpl_1_1contiguous__layout.html',1,'mpl::contiguous_layout< T >']]], - ['contiguous_5flayout_3c_20t_20_3e_17',['contiguous_layout< T >',['../classmpl_1_1layout.html#a24fd43f71dcacaaa7f11f25121d457d6',1,'mpl::layout']]], - ['contiguous_5flayouts_18',['contiguous_layouts',['../classmpl_1_1contiguous__layouts.html#a7c7201b2a4367597aac88ccfcbb9b797',1,'mpl::contiguous_layouts::contiguous_layouts(size_type n)'],['../classmpl_1_1contiguous__layouts.html#a51ef8713bb2454de686381fd012e2845',1,'mpl::contiguous_layouts::contiguous_layouts()'],['../classmpl_1_1contiguous__layouts.html',1,'mpl::contiguous_layouts< T >']]], - ['contiguous_5flayouts_3c_20t_20_3e_19',['contiguous_layouts< T >',['../classmpl_1_1contiguous__layout.html#adda8d9c92a93fd7e1c7dddf5cd113403',1,'mpl::contiguous_layout']]], - ['coordinates_20',['coordinates',['../classmpl_1_1cartesian__communicator.html#afacca885dda7217d9c5f6ade30d2b14b',1,'mpl::cartesian_communicator::coordinates(int rank) const'],['../classmpl_1_1cartesian__communicator.html#a9319a8ed118960a716cbeba8c7ff6017',1,'mpl::cartesian_communicator::coordinates() const']]] + ['cartesian_5fcommunicator_0',['cartesian_communicator',['../classmpl_1_1cartesian__communicator.html#a0be8c91aaa5cde91fcaa15dcba18902a',1,'mpl::cartesian_communicator::cartesian_communicator()=default'],['../classmpl_1_1cartesian__communicator.html#a8b5179d9d85d4768f6134ff34b1f671a',1,'mpl::cartesian_communicator::cartesian_communicator(const cartesian_communicator &other)'],['../classmpl_1_1cartesian__communicator.html#a7fbc0f1d669e21a5e1dd6f2601d256b8',1,'mpl::cartesian_communicator::cartesian_communicator(const communicator &other, const dimensions &dims, bool reorder=true)'],['../classmpl_1_1cartesian__communicator.html#aaaf184e1efe161f33a006fc54fe0ff0b',1,'mpl::cartesian_communicator::cartesian_communicator(const cartesian_communicator &other, const included_tags &is_included)'],['../classmpl_1_1cartesian__communicator.html#a0c9fb786a1e4e458f11b73450f503b08',1,'mpl::cartesian_communicator::cartesian_communicator(cartesian_communicator &&other) noexcept'],['../classmpl_1_1cartesian__communicator.html',1,'mpl::cartesian_communicator']]], + ['comm_5fcollective_1',['comm_collective',['../classmpl_1_1communicator.html#a589d83fa5ec31c153e23242c32ed0c9e',1,'mpl::communicator']]], + ['comm_5fcollective_5ftag_2',['comm_collective_tag',['../classmpl_1_1communicator_1_1comm__collective__tag.html',1,'mpl::communicator']]], + ['communicator_3',['communicator',['../classmpl_1_1communicator.html#aef00e3ea7dcd56ab1c5fca19222af822',1,'mpl::communicator::communicator(split_tag split, const communicator &other, color_type color, key_type key=0)'],['../classmpl_1_1communicator.html#a615ca7d0551e964ca92c2d6f246bb595',1,'mpl::communicator::communicator(split_shared_memory_tag split_shared_memory, const communicator &other, key_type key=0)'],['../classmpl_1_1communicator.html#a9acb1690c4190b91b48cf919257182f3',1,'mpl::communicator::communicator(group_collective_tag group_collective, const communicator &other, const group &gr, tag_t t=tag_t(0))'],['../classmpl_1_1communicator.html#ab082b5c443bf7db3fd803e723510d533',1,'mpl::communicator::communicator(comm_collective_tag comm_collective, const communicator &other, const group &gr)'],['../classmpl_1_1communicator.html#a61a0bccfa633febde368a29c749368bf',1,'mpl::communicator::communicator(communicator &&other) noexcept'],['../classmpl_1_1communicator.html#ae8dcb108a058800f583f92d8bc2d369f',1,'mpl::communicator::communicator()=default'],['../classmpl_1_1communicator.html#aaedab51467a9eb38a2aeedb58e357e3d',1,'mpl::communicator::communicator(const communicator &other)'],['../classmpl_1_1communicator.html',1,'mpl::communicator']]], + ['compare_4',['compare',['../classmpl_1_1group.html#a91ec59cb7d18120ac6f5b0dc40f37a95',1,'mpl::group::compare()'],['../classmpl_1_1communicator.html#a7b672d71b83fafca8f6bf4d435331180',1,'mpl::communicator::compare(const communicator &other) const']]], + ['congruent_5',['congruent',['../classmpl_1_1communicator.html#aec5ab4324f1a084a93edbbab08bc3d91',1,'mpl::communicator::congruent()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac',1,'mpl::communicator::congruent()']]], + ['const_5fiterator_6',['const_iterator',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html',1,'mpl::cartesian_communicator::dimensions']]], + ['const_5fpointer_7',['const_pointer',['../classmpl_1_1local__grid.html#a016e0dbc1d748bea7bf40f5ad6917a67',1,'mpl::local_grid::const_pointer()'],['../classmpl_1_1distributed__grid.html#adbab66d465f005bb94e838740deb6ec4',1,'mpl::distributed_grid::const_pointer()']]], + ['const_5freference_8',['const_reference',['../classmpl_1_1distributed__grid.html#a32d7b6507e9184ed2e89324b40c7f6c9',1,'mpl::distributed_grid::const_reference()'],['../classmpl_1_1local__grid.html#aab729f6d024a0550cd75781ac7e7f7a7',1,'mpl::local_grid::const_reference()']]], + ['contiguous_5flayout_9',['contiguous_layout',['../classmpl_1_1contiguous__layout.html#ab067e1300c01e8bba62f0414bbac5254',1,'mpl::contiguous_layout::contiguous_layout(size_t count=0)'],['../classmpl_1_1contiguous__layout.html#aae660e5421a3eecf9b365ae32df3cf29',1,'mpl::contiguous_layout::contiguous_layout(size_t count, const contiguous_layout< T > &l)'],['../classmpl_1_1contiguous__layout.html#a8eda4ba99bfdf30d9773842d90616fd7',1,'mpl::contiguous_layout::contiguous_layout(const contiguous_layout< T > &l)'],['../classmpl_1_1contiguous__layout.html#a52268d8595fc53bfb6efa9e5ebdd1c11',1,'mpl::contiguous_layout::contiguous_layout(contiguous_layout &&l) noexcept'],['../classmpl_1_1contiguous__layout.html',1,'mpl::contiguous_layout< T >']]], + ['contiguous_5flayouts_10',['contiguous_layouts',['../classmpl_1_1contiguous__layouts.html#a51ef8713bb2454de686381fd012e2845',1,'mpl::contiguous_layouts::contiguous_layouts()'],['../classmpl_1_1contiguous__layouts.html#a7c7201b2a4367597aac88ccfcbb9b797',1,'mpl::contiguous_layouts::contiguous_layouts(size_type n)'],['../classmpl_1_1contiguous__layouts.html',1,'mpl::contiguous_layouts< T >']]], + ['coordinates_11',['coordinates',['../classmpl_1_1cartesian__communicator.html#afacca885dda7217d9c5f6ade30d2b14b',1,'mpl::cartesian_communicator::coordinates(int rank) const'],['../classmpl_1_1cartesian__communicator.html#a9319a8ed118960a716cbeba8c7ff6017',1,'mpl::cartesian_communicator::coordinates() const']]] ]; diff --git a/docs/html/search/all_3.js b/docs/html/search/all_3.js index 48064804..c5db85a9 100644 --- a/docs/html/search/all_3.js +++ b/docs/html/search/all_3.js @@ -1,20 +1,16 @@ var searchData= [ - ['data_0',['data',['../classmpl_1_1local__grid.html#a2a7363850b17823d78fc1030e11bcdaf',1,'mpl::local_grid::data() const'],['../classmpl_1_1local__grid.html#aadd875af7e7296c2f1c3ce289612a741',1,'mpl::local_grid::data()'],['../classmpl_1_1distributed__grid.html#a641426ea3c1d4b7a2dd43a13d07fbf31',1,'mpl::distributed_grid::data() const'],['../classmpl_1_1distributed__grid.html#a61aa2b89cdafd5132f06b7e5417b3392',1,'mpl::distributed_grid::data()']]], + ['data_0',['data',['../classmpl_1_1distributed__grid.html#a61aa2b89cdafd5132f06b7e5417b3392',1,'mpl::distributed_grid::data()'],['../classmpl_1_1distributed__grid.html#a641426ea3c1d4b7a2dd43a13d07fbf31',1,'mpl::distributed_grid::data() const'],['../classmpl_1_1local__grid.html#aadd875af7e7296c2f1c3ce289612a741',1,'mpl::local_grid::data()'],['../classmpl_1_1local__grid.html#a2a7363850b17823d78fc1030e11bcdaf',1,'mpl::local_grid::data() const']]], ['data_20types_1',['Data types',['../md_data_types.html',1,'']]], - ['data_5ftype_5fcategory_2',['data_type_category',['../classmpl_1_1struct__builder.html#a7a251c50cab3d224a1a8268530db4d6d',1,'mpl::struct_builder']]], - ['datatype_5ftraits_3c_20layout_3c_20t_20_3e_20_3e_3',['datatype_traits< layout< T > >',['../classmpl_1_1layout.html#ab05bcf7aebbf27c0d719ce8348a73a20',1,'mpl::layout']]], - ['datatype_5ftraits_5fimpl_3c_20t_2c_20void_20_3e_4',['datatype_traits_impl< T, void >',['../classmpl_1_1base__struct__builder.html#adff83dea1d51c8281fbf5ca3717206fa',1,'mpl::base_struct_builder']]], - ['degree_5',['degree',['../classmpl_1_1graph__communicator.html#a545def7768f6786e06c36277c1d21cde',1,'mpl::graph_communicator::degree(int rank) const'],['../classmpl_1_1graph__communicator.html#a17dd29d46d12c1cafd0d4b9f7aa4f8e7',1,'mpl::graph_communicator::degree() const']]], - ['destination_6',['destination',['../structmpl_1_1shift__ranks.html#ad9c6fc779c9f0ee61497af1a4f82fe27',1,'mpl::shift_ranks']]], - ['difference_7',['difference',['../classmpl_1_1group.html#a4990d6c5ee84cc8640d88a26e2bdc480',1,'mpl::group']]], - ['difference_5ftag_8',['difference_tag',['../classmpl_1_1group_1_1difference__tag.html',1,'mpl::group']]], - ['difference_5ftype_9',['difference_type',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a9e59695e3620081c6b31448102398296',1,'mpl::cartesian_communicator::dimensions::iterator::difference_type()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a9124b5277e84386543372a744c1f3263',1,'mpl::cartesian_communicator::dimensions::const_iterator::difference_type()'],['../classmpl_1_1distributed__grid.html#aef0dc237dc10dbb89f77b95dafa860e0',1,'mpl::distributed_grid::difference_type()'],['../classmpl_1_1local__grid.html#ae475f7494bbd3986b2850906ea360b6d',1,'mpl::local_grid::difference_type()']]], - ['dimension_5fperiodicity_5fproxy_10',['dimension_periodicity_proxy',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html',1,'mpl::cartesian_communicator::dimensions']]], - ['dimensionality_11',['dimensionality',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a85e2294bef52fe881817325a471cbbdd',1,'mpl::cartesian_communicator::dimensions::dimensionality()'],['../classmpl_1_1cartesian__communicator.html#a18dcf5985832334e0571e00a45d93d73',1,'mpl::cartesian_communicator::dimensionality()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a4234269aff1b0e9aaeb3646c5c5e59c4',1,'mpl::distributed_grid::dimensions::dimensionality()'],['../classmpl_1_1local__grid_1_1dimensions.html#a767a2725a0c272861e790d73820a9ddd',1,'mpl::local_grid::dimensions::dimensionality()']]], - ['dimensions_12',['dimensions',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a86e6c75a53843e5dcda1c2e48763e463',1,'mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy::dimensions()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a71f1e2fb5473cb5f4740f77b4981bca6',1,'mpl::distributed_grid::dimensions::dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1, const size_overlap_pair &size_2, const size_overlap_pair &size_3)'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a6b31044ed4f19efd4b5f11e922c197ce',1,'mpl::distributed_grid::dimensions::dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1, const size_overlap_pair &size_2)'],['../classmpl_1_1distributed__grid_1_1dimensions.html#aa006903038282202482f8d5fed47d765',1,'mpl::distributed_grid::dimensions::dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1)'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a12485247b1062d3f0f73c858185f51bb',1,'mpl::distributed_grid::dimensions::dimensions(const size_overlap_pair &size_0)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a1c0bd8407ba113ff99fb79a562c63111',1,'mpl::cartesian_communicator::dimensions::dimensions(std::initializer_list< std::tuple< int, periodicity_tag > > list)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a797a227c86268a426e3c78d2cc0bde0e',1,'mpl::cartesian_communicator::dimensions::dimensions(std::initializer_list< periodicity_tag > list)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#ab2ef164390601631c8551b0112a7637f',1,'mpl::cartesian_communicator::dimensions::dimensions(int size)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a66a3ce1f62e1e85e9d94bbf73d59be8c',1,'mpl::cartesian_communicator::dimensions::dimensions()=default'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a90ce86dd81472bbcdf612649366be94c',1,'mpl::cartesian_communicator::vector::dimensions()'],['../classmpl_1_1local__grid_1_1dimensions.html#ae59e515d543aeeeac98bccb23a102e83',1,'mpl::local_grid::dimensions::dimensions(const size_type &size_0)'],['../classmpl_1_1local__grid_1_1dimensions.html#a1a5fcff7b7e95203667e647731fcf2f1',1,'mpl::local_grid::dimensions::dimensions(const size_type &size_0, const size_type &size_1)'],['../classmpl_1_1local__grid_1_1dimensions.html#a5623191cfc621bde04d8b1136c043565',1,'mpl::local_grid::dimensions::dimensions(const size_type &size_0, const size_type &size_1, const size_type &size_2)'],['../classmpl_1_1local__grid_1_1dimensions.html#ab8b1729c7b9ca64080b7860dcad4867d',1,'mpl::local_grid::dimensions::dimensions(const size_type &size_0, const size_type &size_1, const size_type &size_2, const size_type &size_3)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html',1,'mpl::cartesian_communicator::dimensions'],['../classmpl_1_1distributed__grid_1_1dimensions.html',1,'mpl::distributed_grid< dim, T, A >::dimensions'],['../classmpl_1_1local__grid_1_1dimensions.html',1,'mpl::local_grid< dim, T, A >::dimensions']]], - ['dims_5fcreate_13',['dims_create',['../namespacempl.html#a7b638dd4b816832f5bab22fac8f157af',1,'mpl::dims_create()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#afac55447acc7a9624d5f2cc75c78af85',1,'mpl::cartesian_communicator::dimensions::dims_create()']]], - ['displacements_14',['displacements',['../classmpl_1_1displacements.html#ae1e24fef18246a0ca1cd857a691a02ce',1,'mpl::displacements::displacements(size_type n=0)'],['../classmpl_1_1displacements.html#a9b3133c451300e447c43374b8e785783',1,'mpl::displacements::displacements(std::initializer_list< MPI_Aint > init)'],['../classmpl_1_1displacements.html#a4fa9b3a5848ac407a2c80db370d4fcd9',1,'mpl::displacements::displacements(const displacements &other)=default'],['../classmpl_1_1displacements.html#ad82ea20c78609a9c4f23b1f689f8b36f',1,'mpl::displacements::displacements(displacements &&other)=default'],['../classmpl_1_1displacements.html',1,'mpl::displacements']]], - ['distributed_5fgraph_5fcommunicator_15',['distributed_graph_communicator',['../classmpl_1_1communicator.html#a38537ffedd59ba7ac4018e44dd2c06c6',1,'mpl::communicator::distributed_graph_communicator()'],['../classmpl_1_1distributed__graph__communicator.html#a382f89a6edce34c57070c8be15b33205',1,'mpl::distributed_graph_communicator::distributed_graph_communicator(const communicator &other, const neighbours_set &sources, const neighbours_set &destinations, bool reorder=true)'],['../classmpl_1_1distributed__graph__communicator.html#a4ef63ca9340ce71f4903e2ce890fdcc0',1,'mpl::distributed_graph_communicator::distributed_graph_communicator(distributed_graph_communicator &&other) noexcept'],['../classmpl_1_1distributed__graph__communicator.html#a3365eb0152e5a5c34327478974193d24',1,'mpl::distributed_graph_communicator::distributed_graph_communicator(const distributed_graph_communicator &other)'],['../classmpl_1_1distributed__graph__communicator.html#a2431581c87c06df890a849c6b91972b9',1,'mpl::distributed_graph_communicator::distributed_graph_communicator()=default'],['../classmpl_1_1distributed__graph__communicator.html',1,'mpl::distributed_graph_communicator']]], - ['distributed_5fgrid_16',['distributed_grid',['../classmpl_1_1distributed__grid_1_1dimensions.html#aed92b0c67390eff049ba51342c40fa6f',1,'mpl::distributed_grid::dimensions::distributed_grid()'],['../classmpl_1_1distributed__grid.html#ac533c3caf9f4a027a278bbdf57dfac0e',1,'mpl::distributed_grid::distributed_grid()'],['../classmpl_1_1distributed__grid.html',1,'mpl::distributed_grid< dim, T, A >']]] + ['degree_2',['degree',['../classmpl_1_1graph__communicator.html#a17dd29d46d12c1cafd0d4b9f7aa4f8e7',1,'mpl::graph_communicator::degree() const'],['../classmpl_1_1graph__communicator.html#a545def7768f6786e06c36277c1d21cde',1,'mpl::graph_communicator::degree(int rank) const']]], + ['difference_3',['difference',['../classmpl_1_1group.html#a4990d6c5ee84cc8640d88a26e2bdc480',1,'mpl::group']]], + ['difference_5ftag_4',['difference_tag',['../classmpl_1_1group_1_1difference__tag.html',1,'mpl::group']]], + ['difference_5ftype_5',['difference_type',['../classmpl_1_1local__grid.html#ae475f7494bbd3986b2850906ea360b6d',1,'mpl::local_grid::difference_type()'],['../classmpl_1_1distributed__grid.html#aef0dc237dc10dbb89f77b95dafa860e0',1,'mpl::distributed_grid::difference_type()']]], + ['dimension_5fperiodicity_5fproxy_6',['dimension_periodicity_proxy',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html',1,'mpl::cartesian_communicator::dimensions']]], + ['dimensionality_7',['dimensionality',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a85e2294bef52fe881817325a471cbbdd',1,'mpl::cartesian_communicator::dimensions::dimensionality()'],['../classmpl_1_1cartesian__communicator.html#a18dcf5985832334e0571e00a45d93d73',1,'mpl::cartesian_communicator::dimensionality()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a4234269aff1b0e9aaeb3646c5c5e59c4',1,'mpl::distributed_grid::dimensions::dimensionality()'],['../classmpl_1_1local__grid_1_1dimensions.html#a767a2725a0c272861e790d73820a9ddd',1,'mpl::local_grid::dimensions::dimensionality()']]], + ['dimensions_8',['dimensions',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a1c0bd8407ba113ff99fb79a562c63111',1,'mpl::cartesian_communicator::dimensions::dimensions(std::initializer_list< std::tuple< int, periodicity_tag > > list)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a797a227c86268a426e3c78d2cc0bde0e',1,'mpl::cartesian_communicator::dimensions::dimensions(std::initializer_list< periodicity_tag > list)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#ab2ef164390601631c8551b0112a7637f',1,'mpl::cartesian_communicator::dimensions::dimensions(int size)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a66a3ce1f62e1e85e9d94bbf73d59be8c',1,'mpl::cartesian_communicator::dimensions::dimensions()=default'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a90ce86dd81472bbcdf612649366be94c',1,'mpl::cartesian_communicator::vector::dimensions()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html',1,'mpl::cartesian_communicator::dimensions'],['../classmpl_1_1distributed__grid_1_1dimensions.html',1,'mpl::distributed_grid< dim, T, A >::dimensions'],['../classmpl_1_1local__grid_1_1dimensions.html',1,'mpl::local_grid< dim, T, A >::dimensions']]], + ['dims_5fcreate_9',['dims_create',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#afac55447acc7a9624d5f2cc75c78af85',1,'mpl::cartesian_communicator::dimensions']]], + ['displacements_10',['displacements',['../classmpl_1_1displacements.html#ae1e24fef18246a0ca1cd857a691a02ce',1,'mpl::displacements::displacements(size_type n=0)'],['../classmpl_1_1displacements.html#a9b3133c451300e447c43374b8e785783',1,'mpl::displacements::displacements(std::initializer_list< MPI_Aint > init)'],['../classmpl_1_1displacements.html#a4fa9b3a5848ac407a2c80db370d4fcd9',1,'mpl::displacements::displacements(const displacements &other)=default'],['../classmpl_1_1displacements.html#ad82ea20c78609a9c4f23b1f689f8b36f',1,'mpl::displacements::displacements(displacements &&other)=default'],['../classmpl_1_1displacements.html',1,'mpl::displacements']]], + ['distributed_5fgraph_5fcommunicator_11',['distributed_graph_communicator',['../classmpl_1_1distributed__graph__communicator.html#a2431581c87c06df890a849c6b91972b9',1,'mpl::distributed_graph_communicator::distributed_graph_communicator()=default'],['../classmpl_1_1distributed__graph__communicator.html#a3365eb0152e5a5c34327478974193d24',1,'mpl::distributed_graph_communicator::distributed_graph_communicator(const distributed_graph_communicator &other)'],['../classmpl_1_1distributed__graph__communicator.html#a4ef63ca9340ce71f4903e2ce890fdcc0',1,'mpl::distributed_graph_communicator::distributed_graph_communicator(distributed_graph_communicator &&other) noexcept'],['../classmpl_1_1distributed__graph__communicator.html#a382f89a6edce34c57070c8be15b33205',1,'mpl::distributed_graph_communicator::distributed_graph_communicator(const communicator &other, const neighbours_set &sources, const neighbours_set &destinations, bool reorder=true)'],['../classmpl_1_1distributed__graph__communicator.html',1,'mpl::distributed_graph_communicator']]], + ['distributed_5fgrid_12',['distributed_grid',['../classmpl_1_1distributed__grid.html#ac533c3caf9f4a027a278bbdf57dfac0e',1,'mpl::distributed_grid::distributed_grid()'],['../classmpl_1_1distributed__grid.html',1,'mpl::distributed_grid< dim, T, A >']]] ]; diff --git a/docs/html/search/all_4.js b/docs/html/search/all_4.js index ed4ffbdb..3e8c53e1 100644 --- a/docs/html/search/all_4.js +++ b/docs/html/search/all_4.js @@ -1,16 +1,13 @@ var searchData= [ ['edge_5fset_0',['edge_set',['../classmpl_1_1graph__communicator_1_1edge__set.html#a17430180fb679bda0388e2e5a9ee18f8',1,'mpl::graph_communicator::edge_set::edge_set()=default'],['../classmpl_1_1graph__communicator_1_1edge__set.html#a552f6b7dfdeeaf97dda2450135f23783',1,'mpl::graph_communicator::edge_set::edge_set(std::initializer_list< value_type > init)'],['../classmpl_1_1graph__communicator_1_1edge__set.html',1,'mpl::graph_communicator::edge_set']]], - ['empty_1',['empty',['../classmpl_1_1impl_1_1request__pool.html#acdd1055b70611cd8796d0c22ccfb2397',1,'mpl::impl::request_pool']]], - ['empty_5flayout_2',['empty_layout',['../classmpl_1_1empty__layout.html#ae754e55f1d794ace955529f239a93de5',1,'mpl::empty_layout::empty_layout()'],['../classmpl_1_1empty__layout.html#ae20bac5a00ded8343c1e49333c4e17bc',1,'mpl::empty_layout::empty_layout(const empty_layout &l)'],['../classmpl_1_1empty__layout.html#a9facbf460f04ad85b60338794916c48e',1,'mpl::empty_layout::empty_layout(empty_layout &&l) noexcept'],['../classmpl_1_1empty__layout.html',1,'mpl::empty_layout< T >']]], - ['empty_5flayout_3c_20t_20_3e_3',['empty_layout< T >',['../classmpl_1_1layout.html#a7841d5d18df3df9d49003cdddb7e0b88',1,'mpl::layout']]], - ['end_4',['end',['../classmpl_1_1local__grid_1_1dimensions.html#a1cd6d5ec15683f71d3b32eb4118b7ce5',1,'mpl::local_grid::dimensions::end()'],['../classmpl_1_1local__grid.html#a768da13de21322c71202e4d615023316',1,'mpl::local_grid::end()'],['../classmpl_1_1local__grid_1_1dimensions.html#a3d111525dd74a250c6f62a23f3683319',1,'mpl::local_grid::dimensions::end()'],['../classmpl_1_1distributed__grid.html#a807f6d8f2bc9c200c6e14c1decad88a1',1,'mpl::distributed_grid::end()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#ab40f9a1d115aee074419bc689b607d8b',1,'mpl::distributed_grid::dimensions::end()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a6cb868c4a70a860b986d6bda59067c6f',1,'mpl::cartesian_communicator::dimensions::end() const'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#abe4772eeabdce64a87a2e8be98ddb196',1,'mpl::cartesian_communicator::dimensions::end()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a691847323bb99bfaaadc32aea94b77a4',1,'mpl::distributed_grid::dimensions::end()']]], - ['env_5',['env',['../classmpl_1_1communicator.html#a7c53dda9ff4a482df724cab0edf000b3',1,'mpl::communicator']]], - ['equality_5ftype_6',['equality_type',['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69',1,'mpl::group::equality_type()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63',1,'mpl::communicator::equality_type()']]], - ['error_7',['error',['../classmpl_1_1status__t.html#a87d62778e3e1f35f55f80a909f49130f',1,'mpl::status_t::error()'],['../classmpl_1_1error.html#a63195dd370214a0afa3bd38b59ba7b37',1,'mpl::error::error()'],['../classmpl_1_1error.html',1,'mpl::error']]], - ['exclude_8',['exclude',['../classmpl_1_1group.html#aa3aeb3976917ad6d46113f57d8bb386b',1,'mpl::group']]], - ['exclude_5ftag_9',['exclude_tag',['../classmpl_1_1group_1_1exclude__tag.html',1,'mpl::group']]], - ['excluded_10',['excluded',['../classmpl_1_1cartesian__communicator.html#a75f2017892fa8f340a0fa429e8042ede',1,'mpl::cartesian_communicator::excluded()'],['../classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588ac2413b3d6b0162ee66c1ee1a90828706',1,'mpl::cartesian_communicator::excluded()']]], - ['exscan_11',['exscan',['../classmpl_1_1communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d',1,'mpl::communicator::exscan(F f, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9',1,'mpl::communicator::exscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#ad67313aace6a05f58081939eb1d2a4b8',1,'mpl::communicator::exscan(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a45585975b4b7cc0795a02abf6494963b',1,'mpl::communicator::exscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const']]], - ['extent_12',['extent',['../classmpl_1_1layout.html#abce0f3197d6b2252c951535b443d7d5e',1,'mpl::layout']]] + ['empty_5flayout_1',['empty_layout',['../classmpl_1_1empty__layout.html#ae754e55f1d794ace955529f239a93de5',1,'mpl::empty_layout::empty_layout()'],['../classmpl_1_1empty__layout.html#ae20bac5a00ded8343c1e49333c4e17bc',1,'mpl::empty_layout::empty_layout(const empty_layout &l)'],['../classmpl_1_1empty__layout.html#a9facbf460f04ad85b60338794916c48e',1,'mpl::empty_layout::empty_layout(empty_layout &&l) noexcept'],['../classmpl_1_1empty__layout.html',1,'mpl::empty_layout< T >']]], + ['end_2',['end',['../classmpl_1_1distributed__grid.html#a807f6d8f2bc9c200c6e14c1decad88a1',1,'mpl::distributed_grid::end()'],['../classmpl_1_1local__grid.html#a768da13de21322c71202e4d615023316',1,'mpl::local_grid::end()']]], + ['equality_5ftype_3',['equality_type',['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69',1,'mpl::group::equality_type()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63',1,'mpl::communicator::equality_type()']]], + ['error_4',['error',['../classmpl_1_1error.html#a63195dd370214a0afa3bd38b59ba7b37',1,'mpl::error::error()'],['../classmpl_1_1status__t.html#a87d62778e3e1f35f55f80a909f49130f',1,'mpl::status_t::error()'],['../classmpl_1_1error.html',1,'mpl::error']]], + ['exclude_5',['exclude',['../classmpl_1_1group.html#aa3aeb3976917ad6d46113f57d8bb386b',1,'mpl::group']]], + ['exclude_5ftag_6',['exclude_tag',['../classmpl_1_1group_1_1exclude__tag.html',1,'mpl::group']]], + ['excluded_7',['excluded',['../classmpl_1_1cartesian__communicator.html#a75f2017892fa8f340a0fa429e8042ede',1,'mpl::cartesian_communicator::excluded()'],['../classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588ac2413b3d6b0162ee66c1ee1a90828706',1,'mpl::cartesian_communicator::excluded()']]], + ['exscan_8',['exscan',['../classmpl_1_1communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d',1,'mpl::communicator::exscan(F f, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9',1,'mpl::communicator::exscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#ad67313aace6a05f58081939eb1d2a4b8',1,'mpl::communicator::exscan(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a45585975b4b7cc0795a02abf6494963b',1,'mpl::communicator::exscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const']]], + ['extent_9',['extent',['../classmpl_1_1layout.html#abce0f3197d6b2252c951535b443d7d5e',1,'mpl::layout']]] ]; diff --git a/docs/html/search/all_5.js b/docs/html/search/all_5.js index df39e386..95263b1e 100644 --- a/docs/html/search/all_5.js +++ b/docs/html/search/all_5.js @@ -1,5 +1,15 @@ var searchData= [ - ['fortran_5forder_0',['Fortran_order',['../namespacempl.html#a7fd33fa3d7b9a6f095cd55710c3b2dbfae406b10bb96ad9064aebbf2835864097',1,'mpl']]], - ['funneled_1',['funneled',['../namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828a2110cc27d60e873203472314639a3c8a',1,'mpl']]] + ['gather_0',['gather',['../classmpl_1_1communicator.html#ac4b1db52070739de82b25f972b9e6996',1,'mpl::communicator::gather(int root_rank, const T &senddata, T *recvdata) const'],['../classmpl_1_1communicator.html#af43c205c247a23c35ec015b257f10a6e',1,'mpl::communicator::gather(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#acbe2058694618ea2c085d03bcaf4946c',1,'mpl::communicator::gather(int root_rank, const T &senddata) const'],['../classmpl_1_1communicator.html#abb3d36d582c7a469b5e49dca53c4f952',1,'mpl::communicator::gather(int root_rank, const T *senddata, const layout< T > &sendl) const']]], + ['gatherv_1',['gatherv',['../classmpl_1_1communicator.html#a32881aa49f5e9c71792e98629a131822',1,'mpl::communicator::gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#af1d52b673c059c284806768be1240afc',1,'mpl::communicator::gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const'],['../classmpl_1_1communicator.html#ae17e2ec67fab08b09d7c67923fa81b42',1,'mpl::communicator::gatherv(int root_rank, const T *senddata, const layout< T > &sendl) const']]], + ['gbegin_2',['gbegin',['../classmpl_1_1distributed__grid.html#a5794c40591628769b667f0c6e4b879c6',1,'mpl::distributed_grid']]], + ['gend_3',['gend',['../classmpl_1_1distributed__grid.html#aa6d72bfcbade9ce4574dd810044a1aa1',1,'mpl::distributed_grid']]], + ['get_5fcount_4',['get_count',['../classmpl_1_1status__t.html#a781043b8bfd8ccef19e1f512021d2c83',1,'mpl::status_t::get_count() const'],['../classmpl_1_1status__t.html#a58de4e6c82f27f003be7d8d7425e0791',1,'mpl::status_t::get_count(const layout< T > &l) const']]], + ['get_5fdimensions_5',['get_dimensions',['../classmpl_1_1cartesian__communicator.html#a04b09e9b3cf996574d651ed195d462d0',1,'mpl::cartesian_communicator']]], + ['gindex_6',['gindex',['../classmpl_1_1distributed__grid.html#a8ac663b4a2e9e68c1274bdf49c39c23c',1,'mpl::distributed_grid']]], + ['graph_5fcommunicator_7',['graph_communicator',['../classmpl_1_1graph__communicator.html#ab4242c2300ed9c2d844001847027b148',1,'mpl::graph_communicator::graph_communicator(const graph_communicator &other)'],['../classmpl_1_1graph__communicator.html#af81016b2d1c45d91880894f13ba74182',1,'mpl::graph_communicator::graph_communicator()=default'],['../classmpl_1_1graph__communicator.html#a0053567d5a44c1783b35050f25f99ff0',1,'mpl::graph_communicator::graph_communicator(graph_communicator &&other) noexcept'],['../classmpl_1_1graph__communicator.html#a9b838df23d3b54ac7ff8f249e2a59e64',1,'mpl::graph_communicator::graph_communicator(const communicator &other, const edge_set &edges, bool reorder=true)'],['../classmpl_1_1graph__communicator.html',1,'mpl::graph_communicator']]], + ['group_8',['group',['../classmpl_1_1group.html#a53b37e0aa8afb9fd837b529facd6e626',1,'mpl::group::group(exclude_tag tag, const group &other, const ranks &rank)'],['../classmpl_1_1group.html#a41f80de72f9a7e5c3c4e15e99d0a6662',1,'mpl::group::group()=default'],['../classmpl_1_1group.html#a95548e78748fcfa9775a47754d185240',1,'mpl::group::group(const group &other)'],['../classmpl_1_1group.html#ae721323f69336a1ac2e4029a83ed0570',1,'mpl::group::group(group &&other) noexcept'],['../classmpl_1_1group.html#a23b0ce7e15b1a90e4d2facdfd4f98dd4',1,'mpl::group::group(const communicator &comm)'],['../classmpl_1_1group.html#ac54706f36382139b24b24a0311e0763b',1,'mpl::group::group(Union_tag tag, const group &other_1, const group &other_2)'],['../classmpl_1_1group.html#a9c2c30c4d43f3bea292a6ed934f2397e',1,'mpl::group::group(intersection_tag tag, const group &other_1, const group &other_2)'],['../classmpl_1_1group.html#a2b7b139ae5443f229ef75b47ec92125b',1,'mpl::group::group(difference_tag tag, const group &other_1, const group &other_2)'],['../classmpl_1_1group.html#a14eceda02a4e4a68124a4918320d34c6',1,'mpl::group::group(include_tag tag, const group &other, const ranks &rank)'],['../classmpl_1_1group.html',1,'mpl::group']]], + ['group_5fcollective_9',['group_collective',['../classmpl_1_1communicator.html#a10aacc97fad097c50a84e886a49f5743',1,'mpl::communicator']]], + ['group_5fcollective_5ftag_10',['group_collective_tag',['../classmpl_1_1communicator_1_1group__collective__tag.html',1,'mpl::communicator']]], + ['gsize_11',['gsize',['../classmpl_1_1distributed__grid.html#a4945000e5319f35d2aa104769b276618',1,'mpl::distributed_grid']]] ]; diff --git a/docs/html/search/all_6.js b/docs/html/search/all_6.js index f01b9403..506cdb3b 100644 --- a/docs/html/search/all_6.js +++ b/docs/html/search/all_6.js @@ -1,17 +1,6 @@ var searchData= [ - ['gather_0',['gather',['../classmpl_1_1communicator.html#ac4b1db52070739de82b25f972b9e6996',1,'mpl::communicator::gather(int root_rank, const T &senddata, T *recvdata) const'],['../classmpl_1_1communicator.html#af43c205c247a23c35ec015b257f10a6e',1,'mpl::communicator::gather(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#acbe2058694618ea2c085d03bcaf4946c',1,'mpl::communicator::gather(int root_rank, const T &senddata) const'],['../classmpl_1_1communicator.html#abb3d36d582c7a469b5e49dca53c4f952',1,'mpl::communicator::gather(int root_rank, const T *senddata, const layout< T > &sendl) const']]], - ['gatherv_1',['gatherv',['../classmpl_1_1communicator.html#a32881aa49f5e9c71792e98629a131822',1,'mpl::communicator::gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#af1d52b673c059c284806768be1240afc',1,'mpl::communicator::gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const'],['../classmpl_1_1communicator.html#ae17e2ec67fab08b09d7c67923fa81b42',1,'mpl::communicator::gatherv(int root_rank, const T *senddata, const layout< T > &sendl) const']]], - ['gbegin_2',['gbegin',['../classmpl_1_1distributed__grid.html#a5794c40591628769b667f0c6e4b879c6',1,'mpl::distributed_grid']]], - ['gend_3',['gend',['../classmpl_1_1distributed__grid.html#aa6d72bfcbade9ce4574dd810044a1aa1',1,'mpl::distributed_grid']]], - ['get_4',['get',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a0555d632d9963ded11815f6c21e8c009',1,'mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy']]], - ['get_5fcount_5',['get_count',['../classmpl_1_1status__t.html#a781043b8bfd8ccef19e1f512021d2c83',1,'mpl::status_t::get_count() const'],['../classmpl_1_1status__t.html#a58de4e6c82f27f003be7d8d7425e0791',1,'mpl::status_t::get_count(const layout< T > &l) const']]], - ['get_5fdimensions_6',['get_dimensions',['../classmpl_1_1cartesian__communicator.html#a04b09e9b3cf996574d651ed195d462d0',1,'mpl::cartesian_communicator']]], - ['get_5fstatus_7',['get_status',['../classmpl_1_1impl_1_1request__pool.html#a7761f370d4bbef127a41fc1f4b0f39f9',1,'mpl::impl::request_pool::get_status()'],['../classmpl_1_1impl_1_1request.html#a8ed5bdb05a4a5caf7dc2c08832b6fc73',1,'mpl::impl::request::get_status()']]], - ['gindex_8',['gindex',['../classmpl_1_1distributed__grid.html#a8ac663b4a2e9e68c1274bdf49c39c23c',1,'mpl::distributed_grid']]], - ['graph_5fcommunicator_9',['graph_communicator',['../classmpl_1_1graph__communicator_1_1node__list.html#a864a79402650e1b3c453bf86a588dd1d',1,'mpl::graph_communicator::node_list::graph_communicator()'],['../classmpl_1_1graph__communicator.html#af81016b2d1c45d91880894f13ba74182',1,'mpl::graph_communicator::graph_communicator()=default'],['../classmpl_1_1graph__communicator.html#ab4242c2300ed9c2d844001847027b148',1,'mpl::graph_communicator::graph_communicator(const graph_communicator &other)'],['../classmpl_1_1communicator.html#a864a79402650e1b3c453bf86a588dd1d',1,'mpl::communicator::graph_communicator()'],['../classmpl_1_1graph__communicator.html#a0053567d5a44c1783b35050f25f99ff0',1,'mpl::graph_communicator::graph_communicator(graph_communicator &&other) noexcept'],['../classmpl_1_1graph__communicator.html#a9b838df23d3b54ac7ff8f249e2a59e64',1,'mpl::graph_communicator::graph_communicator(const communicator &other, const edge_set &edges, bool reorder=true)'],['../classmpl_1_1graph__communicator.html',1,'mpl::graph_communicator']]], - ['group_10',['group',['../classmpl_1_1group.html#a53b37e0aa8afb9fd837b529facd6e626',1,'mpl::group::group()'],['../classmpl_1_1communicator.html#a670720b16047bf7556aea242ff96a7fb',1,'mpl::communicator::group()'],['../classmpl_1_1group.html#a41f80de72f9a7e5c3c4e15e99d0a6662',1,'mpl::group::group()=default'],['../classmpl_1_1group.html#a95548e78748fcfa9775a47754d185240',1,'mpl::group::group(const group &other)'],['../classmpl_1_1group.html#ae721323f69336a1ac2e4029a83ed0570',1,'mpl::group::group(group &&other) noexcept'],['../classmpl_1_1group.html#a23b0ce7e15b1a90e4d2facdfd4f98dd4',1,'mpl::group::group(const communicator &comm)'],['../classmpl_1_1group.html#ac54706f36382139b24b24a0311e0763b',1,'mpl::group::group(Union_tag tag, const group &other_1, const group &other_2)'],['../classmpl_1_1group.html#a9c2c30c4d43f3bea292a6ed934f2397e',1,'mpl::group::group(intersection_tag tag, const group &other_1, const group &other_2)'],['../classmpl_1_1group.html#a2b7b139ae5443f229ef75b47ec92125b',1,'mpl::group::group(difference_tag tag, const group &other_1, const group &other_2)'],['../classmpl_1_1group.html#a14eceda02a4e4a68124a4918320d34c6',1,'mpl::group::group(include_tag tag, const group &other, const ranks &rank)'],['../classmpl_1_1group.html',1,'mpl::group']]], - ['group_5fcollective_11',['group_collective',['../classmpl_1_1communicator.html#a10aacc97fad097c50a84e886a49f5743',1,'mpl::communicator']]], - ['group_5fcollective_5ftag_12',['group_collective_tag',['../classmpl_1_1communicator_1_1group__collective__tag.html',1,'mpl::communicator']]], - ['gsize_13',['gsize',['../classmpl_1_1distributed__grid.html#a4945000e5319f35d2aa104769b276618',1,'mpl::distributed_grid']]] + ['heterogeneous_5flayout_0',['heterogeneous_layout',['../classmpl_1_1heterogeneous__layout.html#a4ee194df608a408783938ba0d8f5ca4a',1,'mpl::heterogeneous_layout::heterogeneous_layout()'],['../classmpl_1_1heterogeneous__layout.html#adb64a08a7007a01451855f95d0190cf4',1,'mpl::heterogeneous_layout::heterogeneous_layout(const parameter &par)'],['../classmpl_1_1heterogeneous__layout.html#a893948e465f7ef673612c94395eebd70',1,'mpl::heterogeneous_layout::heterogeneous_layout(const T &x, const Ts &...xs)'],['../classmpl_1_1heterogeneous__layout.html#a75a8d595647135a6393ed04dc9431f30',1,'mpl::heterogeneous_layout::heterogeneous_layout(const heterogeneous_layout &l)=default'],['../classmpl_1_1heterogeneous__layout.html#a9e570881a42bed31cf1aa593c0138215',1,'mpl::heterogeneous_layout::heterogeneous_layout(heterogeneous_layout &&l) noexcept'],['../classmpl_1_1heterogeneous__layout.html',1,'mpl::heterogeneous_layout']]], + ['hindexed_5fblock_5flayout_1',['hindexed_block_layout',['../classmpl_1_1hindexed__block__layout.html#ab4a0d6418553bd6182bbf7c8ce85755f',1,'mpl::hindexed_block_layout::hindexed_block_layout(hindexed_block_layout< T > &&l) noexcept'],['../classmpl_1_1hindexed__block__layout.html#a5f5f55079a3ef89bcd395dae67a2206d',1,'mpl::hindexed_block_layout::hindexed_block_layout()'],['../classmpl_1_1hindexed__block__layout.html#a5cbc07359787a6d3472a29c8b0deec93',1,'mpl::hindexed_block_layout::hindexed_block_layout(int blocklength, const parameter &par)'],['../classmpl_1_1hindexed__block__layout.html#a58ef3baba410d7e6699ba6a1e2daa907',1,'mpl::hindexed_block_layout::hindexed_block_layout(int blocklength, const parameter &par, const layout< T > &l)'],['../classmpl_1_1hindexed__block__layout.html#aeb1c8663c6f16128cf8055d08761a5b9',1,'mpl::hindexed_block_layout::hindexed_block_layout(const hindexed_block_layout< T > &l)'],['../classmpl_1_1hindexed__block__layout.html',1,'mpl::hindexed_block_layout< T >']]], + ['hindexed_5flayout_2',['hindexed_layout',['../classmpl_1_1hindexed__layout.html#a36148d9a6a2209eee2a10e57b5bacb23',1,'mpl::hindexed_layout::hindexed_layout()'],['../classmpl_1_1hindexed__layout.html#a26743fb491f074969ce4d92a17eb8960',1,'mpl::hindexed_layout::hindexed_layout(const parameter &par)'],['../classmpl_1_1hindexed__layout.html#a0b6540a5b7232bdccfdaa2fbd3f1ce11',1,'mpl::hindexed_layout::hindexed_layout(const parameter &par, const layout< T > &l)'],['../classmpl_1_1hindexed__layout.html#a06906f27dd6bd4b40c5025bb0958bb5f',1,'mpl::hindexed_layout::hindexed_layout(const hindexed_layout< T > &l)'],['../classmpl_1_1hindexed__layout.html#a9d5c13ca208f4a753e8418b3a0ca2019',1,'mpl::hindexed_layout::hindexed_layout(hindexed_layout< T > &&l) noexcept'],['../classmpl_1_1hindexed__layout.html',1,'mpl::hindexed_layout< T >']]] ]; diff --git a/docs/html/search/all_7.js b/docs/html/search/all_7.js index b32ff68d..364264ab 100644 --- a/docs/html/search/all_7.js +++ b/docs/html/search/all_7.js @@ -1,8 +1,61 @@ var searchData= [ - ['heterogeneous_5flayout_0',['heterogeneous_layout',['../classmpl_1_1heterogeneous__layout.html#a9e570881a42bed31cf1aa593c0138215',1,'mpl::heterogeneous_layout::heterogeneous_layout(heterogeneous_layout &&l) noexcept'],['../classmpl_1_1heterogeneous__layout.html#a75a8d595647135a6393ed04dc9431f30',1,'mpl::heterogeneous_layout::heterogeneous_layout(const heterogeneous_layout &l)=default'],['../classmpl_1_1layout.html#a345f190da284e84ef033bec2677fdd5f',1,'mpl::layout::heterogeneous_layout()'],['../classmpl_1_1absolute__data_3_01_t_01_5_01_4.html#a345f190da284e84ef033bec2677fdd5f',1,'mpl::absolute_data< T * >::heterogeneous_layout()'],['../classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html#a345f190da284e84ef033bec2677fdd5f',1,'mpl::absolute_data< const T * >::heterogeneous_layout()'],['../classmpl_1_1heterogeneous__layout_1_1parameter.html#a345f190da284e84ef033bec2677fdd5f',1,'mpl::heterogeneous_layout::parameter::heterogeneous_layout()'],['../classmpl_1_1heterogeneous__layout.html#a4ee194df608a408783938ba0d8f5ca4a',1,'mpl::heterogeneous_layout::heterogeneous_layout()'],['../classmpl_1_1heterogeneous__layout.html#adb64a08a7007a01451855f95d0190cf4',1,'mpl::heterogeneous_layout::heterogeneous_layout(const parameter &par)'],['../classmpl_1_1heterogeneous__layout.html#a893948e465f7ef673612c94395eebd70',1,'mpl::heterogeneous_layout::heterogeneous_layout(const T &x, const Ts &...xs)'],['../classmpl_1_1heterogeneous__layout.html',1,'mpl::heterogeneous_layout']]], - ['hindexed_5fblock_5flayout_1',['hindexed_block_layout',['../classmpl_1_1hindexed__block__layout.html#ab4a0d6418553bd6182bbf7c8ce85755f',1,'mpl::hindexed_block_layout::hindexed_block_layout()'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html#a69ff431775bd1969641bcb73a6ee8668',1,'mpl::hindexed_block_layout::parameter::hindexed_block_layout()'],['../classmpl_1_1hindexed__block__layout.html#a5f5f55079a3ef89bcd395dae67a2206d',1,'mpl::hindexed_block_layout::hindexed_block_layout()'],['../classmpl_1_1hindexed__block__layout.html#a5cbc07359787a6d3472a29c8b0deec93',1,'mpl::hindexed_block_layout::hindexed_block_layout(int blocklength, const parameter &par)'],['../classmpl_1_1hindexed__block__layout.html#a58ef3baba410d7e6699ba6a1e2daa907',1,'mpl::hindexed_block_layout::hindexed_block_layout(int blocklength, const parameter &par, const layout< T > &l)'],['../classmpl_1_1hindexed__block__layout.html#aeb1c8663c6f16128cf8055d08761a5b9',1,'mpl::hindexed_block_layout::hindexed_block_layout(const hindexed_block_layout< T > &l)'],['../classmpl_1_1hindexed__block__layout.html',1,'mpl::hindexed_block_layout< T >']]], - ['hindexed_5fblock_5flayout_3c_20t_20_3e_2',['hindexed_block_layout< T >',['../classmpl_1_1layout.html#ab5519bf73c4607f6ec61588e7d7f0aad',1,'mpl::layout']]], - ['hindexed_5flayout_3',['hindexed_layout',['../classmpl_1_1hindexed__layout_1_1parameter.html#adc58655b3738b34c8feb41b014aa8227',1,'mpl::hindexed_layout::parameter::hindexed_layout()'],['../classmpl_1_1hindexed__layout.html#a36148d9a6a2209eee2a10e57b5bacb23',1,'mpl::hindexed_layout::hindexed_layout()'],['../classmpl_1_1hindexed__layout.html#a26743fb491f074969ce4d92a17eb8960',1,'mpl::hindexed_layout::hindexed_layout(const parameter &par)'],['../classmpl_1_1hindexed__layout.html#a0b6540a5b7232bdccfdaa2fbd3f1ce11',1,'mpl::hindexed_layout::hindexed_layout(const parameter &par, const layout< T > &l)'],['../classmpl_1_1hindexed__layout.html#a06906f27dd6bd4b40c5025bb0958bb5f',1,'mpl::hindexed_layout::hindexed_layout(const hindexed_layout< T > &l)'],['../classmpl_1_1hindexed__layout.html#a9d5c13ca208f4a753e8418b3a0ca2019',1,'mpl::hindexed_layout::hindexed_layout(hindexed_layout< T > &&l) noexcept'],['../classmpl_1_1hindexed__layout.html',1,'mpl::hindexed_layout< T >']]], - ['hindexed_5flayout_3c_20t_20_3e_4',['hindexed_layout< T >',['../classmpl_1_1layout.html#a2d817091be01028eba2db9128d792b76',1,'mpl::layout']]] + ['iallgather_0',['iallgather',['../classmpl_1_1communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47',1,'mpl::communicator::iallgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a601c251b4c10c6797af3cd741dea4d55',1,'mpl::communicator::iallgather(const T &senddata, T *recvdata) const']]], + ['iallgatherv_1',['iallgatherv',['../classmpl_1_1communicator.html#a95d5c90f2a58fe228d846942fe700645',1,'mpl::communicator::iallgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const'],['../classmpl_1_1communicator.html#a73df8f569865237bc58e2445c7d07742',1,'mpl::communicator::iallgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const']]], + ['iallreduce_2',['iallreduce',['../classmpl_1_1communicator.html#a753e8742d27ff29a660b07ee0b90b69e',1,'mpl::communicator::iallreduce(F f, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#aa541e7830014dce23eb1ce5f6bcfe281',1,'mpl::communicator::iallreduce(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a5ce91750a7c77edf43e53ac88e4e8524',1,'mpl::communicator::iallreduce(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf',1,'mpl::communicator::iallreduce(F f, T *sendrecvdata, const contiguous_layout< T > &l) const']]], + ['ialltoall_3',['ialltoall',['../classmpl_1_1communicator.html#aadb9f14a7a9f9bd44eae7832daed895d',1,'mpl::communicator::ialltoall(T *sendrecvdata) const'],['../classmpl_1_1communicator.html#aa2b51b89d72555ebfb1862d1de688061',1,'mpl::communicator::ialltoall(const T *senddata, T *recvdata) const'],['../classmpl_1_1communicator.html#ad15575d951e6a6c4327052e2ff01730f',1,'mpl::communicator::ialltoall(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#abe91007be7acef7641d6cbb08526d53b',1,'mpl::communicator::ialltoall(T *sendrecvdata, const layout< T > &sendrecvl) const']]], + ['ialltoallv_4',['ialltoallv',['../classmpl_1_1communicator.html#a68996ab5379c9a104572b804633d869e',1,'mpl::communicator::ialltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#a4cff38dd56b3d53992babac77cbefa8d',1,'mpl::communicator::ialltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const'],['../classmpl_1_1communicator.html#a5664d9591456924a7343082445bc8452',1,'mpl::communicator::ialltoallv(T *sendrecvdata, const layouts< T > &sendrecvls, const displacements &sendrecvdispls) const'],['../classmpl_1_1communicator.html#a7abdf44a7c377ba7191cb4abc6648afe',1,'mpl::communicator::ialltoallv(T *sendrecvdata, const layouts< T > &sendrecvls) const']]], + ['ibarrier_5',['ibarrier',['../classmpl_1_1communicator.html#acce39280ea657a7d9e5d675631cf7a12',1,'mpl::communicator']]], + ['ibcast_6',['ibcast',['../classmpl_1_1communicator.html#aad369f0de0b51dc3cf7992ed26c0799d',1,'mpl::communicator::ibcast(int root_rank, T &data) const'],['../classmpl_1_1communicator.html#a69ebec18f9d55bc8e2b6951f97855068',1,'mpl::communicator::ibcast(int root_rank, T *data, const layout< T > &l) const']]], + ['ibsend_7',['ibsend',['../classmpl_1_1communicator.html#a20505014d3a5ac58a5601faee033d003',1,'mpl::communicator::ibsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a34c527f23af855f716bf00a2658c9436',1,'mpl::communicator::ibsend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a14b2306de71e02b0390c564ff6ba7c21',1,'mpl::communicator::ibsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const']]], + ['identical_8',['identical',['../classmpl_1_1communicator.html#ac66083dad051e6b7042d47962d1e2c60',1,'mpl::communicator::identical()'],['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69aee0cbdbacdada19376449799774976e8',1,'mpl::group::identical()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8',1,'mpl::communicator::identical()'],['../classmpl_1_1group.html#a6515b87988032cf940014c3e553f254a',1,'mpl::group::identical()']]], + ['iexscan_9',['iexscan',['../classmpl_1_1communicator.html#a7eddabba5f98c99db189844854690d13',1,'mpl::communicator::iexscan(F f, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a1bf177485606687353cd50bc5a3b3c59',1,'mpl::communicator::iexscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a20766ee389c97340241ff730eae49475',1,'mpl::communicator::iexscan(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a8e43e08af5e8481049731092274aca76',1,'mpl::communicator::iexscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const']]], + ['igather_10',['igather',['../classmpl_1_1communicator.html#ad2d304708463bb6f91e1a54b3d87106a',1,'mpl::communicator::igather(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c',1,'mpl::communicator::igather(int root_rank, const T *senddata, const layout< T > &sendl) const'],['../classmpl_1_1communicator.html#a4a29592502142845c3bb0031221189a3',1,'mpl::communicator::igather(int root_rank, const T &senddata) const'],['../classmpl_1_1communicator.html#a76dbca1b1f6089ee9e07e997b5d79295',1,'mpl::communicator::igather(int root_rank, const T &senddata, T *recvdata) const']]], + ['igatherv_11',['igatherv',['../classmpl_1_1communicator.html#a445e05af65cdc53b7a981d4884a4c3b8',1,'mpl::communicator::igatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f',1,'mpl::communicator::igatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const'],['../classmpl_1_1communicator.html#a192fabbdbac09436fab92943148c5185',1,'mpl::communicator::igatherv(int root_rank, const T *senddata, const layout< T > &sendl) const']]], + ['improbe_12',['improbe',['../classmpl_1_1communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7',1,'mpl::communicator']]], + ['imrecv_13',['imrecv',['../classmpl_1_1communicator.html#aa91aed6395fdcbb40788323a4cf45110',1,'mpl::communicator::imrecv(T &data, message_t &m) const'],['../classmpl_1_1communicator.html#a779f215eb82ce71764befaae9918b596',1,'mpl::communicator::imrecv(T *data, const layout< T > &l, message_t &m) const'],['../classmpl_1_1communicator.html#ae71687a9aa6bac6a2b888245aa801020',1,'mpl::communicator::imrecv(iterT begin, iterT end, message_t &m) const']]], + ['in_5fdegree_14',['in_degree',['../classmpl_1_1distributed__graph__communicator.html#aa018e93fa8e391b0f7ac34ad707a64fe',1,'mpl::distributed_graph_communicator']]], + ['in_5fneighbors_15',['in_neighbors',['../classmpl_1_1distributed__graph__communicator.html#afa3fdbce27f981366ddd913b496c7023',1,'mpl::distributed_graph_communicator']]], + ['in_5fout_5fdegree_16',['in_out_degree',['../classmpl_1_1distributed__graph__communicator.html#ac8b0b4aa6e6c4e23ebd807ef809dad6b',1,'mpl::distributed_graph_communicator']]], + ['include_17',['include',['../classmpl_1_1group.html#ae5ef3b81a9b35085fe4ffd54cd280912',1,'mpl::group']]], + ['include_5ftag_18',['include_tag',['../classmpl_1_1group_1_1include__tag.html',1,'mpl::group']]], + ['included_19',['included',['../classmpl_1_1cartesian__communicator.html#a58cf7f390ec1fa47f44756eeddab44ce',1,'mpl::cartesian_communicator::included()'],['../classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588a99f78c54130e752954404fff0707dcbd',1,'mpl::cartesian_communicator::included()']]], + ['included_5ftag_20',['included_tag',['../classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588',1,'mpl::cartesian_communicator']]], + ['included_5ftags_21',['included_tags',['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a7c5d657f45d984865283fdb5dfd4edbc',1,'mpl::cartesian_communicator::included_tags::included_tags(int dimension)'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a949beacb76cdab143f823228f22cbf47',1,'mpl::cartesian_communicator::included_tags::included_tags(std::initializer_list< included_tag > init)'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#ae18657b9e6cee8ffa9549f3b4bc3e104',1,'mpl::cartesian_communicator::included_tags::included_tags()=default'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html',1,'mpl::cartesian_communicator::included_tags']]], + ['indexed_5fblock_5flayout_22',['indexed_block_layout',['../classmpl_1_1indexed__block__layout.html#a53a1cb6e0006c275f9780191ceade271',1,'mpl::indexed_block_layout::indexed_block_layout()'],['../classmpl_1_1indexed__block__layout.html#afe8a5303c144ec5b1b19c7d71cc90e99',1,'mpl::indexed_block_layout::indexed_block_layout(int blocklength, const parameter &par)'],['../classmpl_1_1indexed__block__layout.html#a1dc6994a6a2609d758a2311557a29998',1,'mpl::indexed_block_layout::indexed_block_layout(const indexed_block_layout< T > &l)'],['../classmpl_1_1indexed__block__layout.html#ae555bc8d3b95d9180a65668f9caece8e',1,'mpl::indexed_block_layout::indexed_block_layout(indexed_block_layout< T > &&l) noexcept'],['../classmpl_1_1indexed__block__layout.html#a09471a11699169f30d5165bbe912cf8a',1,'mpl::indexed_block_layout::indexed_block_layout(int blocklength, const parameter &par, const layout< T > &l)'],['../classmpl_1_1indexed__block__layout.html',1,'mpl::indexed_block_layout< T >']]], + ['indexed_5flayout_23',['indexed_layout',['../classmpl_1_1indexed__layout.html#a91ad5d974413ad678d1bfd10e403f31f',1,'mpl::indexed_layout::indexed_layout(indexed_layout< T > &&l) noexcept'],['../classmpl_1_1indexed__layout.html#a8193a18df935777de33730ecda553f18',1,'mpl::indexed_layout::indexed_layout()'],['../classmpl_1_1indexed__layout.html#ab1ced466b429dc64c875e27b57763b46',1,'mpl::indexed_layout::indexed_layout(const indexed_layout< T > &l)'],['../classmpl_1_1indexed__layout.html#a637fa395f20bf6a7b06f33fe8477716a',1,'mpl::indexed_layout::indexed_layout(const parameter &par)'],['../classmpl_1_1indexed__layout.html#a4814730ccbda9d2c8f4a00c76466bcf4',1,'mpl::indexed_layout::indexed_layout(const parameter &par, const layout< T > &l)'],['../classmpl_1_1indexed__layout.html',1,'mpl::indexed_layout< T >']]], + ['ineighbor_5fallgather_24',['ineighbor_allgather',['../classmpl_1_1impl_1_1topology__communicator.html#a068c77bb2536523c2bcbeb4d3d8efc7b',1,'mpl::impl::topology_communicator::ineighbor_allgather(const T &senddata, T *recvdata) const'],['../classmpl_1_1impl_1_1topology__communicator.html#aad40f322ef427d759fe699b1318c3103',1,'mpl::impl::topology_communicator::ineighbor_allgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const']]], + ['ineighbor_5fallgatherv_25',['ineighbor_allgatherv',['../classmpl_1_1impl_1_1topology__communicator.html#aba77e505c9c19f3c6acdf10d4bc9fe16',1,'mpl::impl::topology_communicator::ineighbor_allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1impl_1_1topology__communicator.html#a9dccde1bf10e911c3a00d1a546005e94',1,'mpl::impl::topology_communicator::ineighbor_allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const']]], + ['ineighbor_5falltoall_26',['ineighbor_alltoall',['../classmpl_1_1impl_1_1topology__communicator.html#ac7cb886dc70531a897bce6396c9a6e7e',1,'mpl::impl::topology_communicator::ineighbor_alltoall(const T *senddata, T *recvdata) const'],['../classmpl_1_1impl_1_1topology__communicator.html#a65311bd6bde1b8de5b8acf9ae902104a',1,'mpl::impl::topology_communicator::ineighbor_alltoall(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const']]], + ['ineighbor_5falltoallv_27',['ineighbor_alltoallv',['../classmpl_1_1impl_1_1topology__communicator.html#a5ceb8a7771930409a0b7c54042b49866',1,'mpl::impl::topology_communicator::ineighbor_alltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1impl_1_1topology__communicator.html#a3fbbc822e36ea95e865a7b37ac0ad984',1,'mpl::impl::topology_communicator::ineighbor_alltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const']]], + ['interior_5flayout_28',['interior_layout',['../classmpl_1_1distributed__grid.html#acd78758381fb6a8366913ca97dd10f86',1,'mpl::distributed_grid']]], + ['intersection_29',['intersection',['../classmpl_1_1group.html#a8e438a13834a708af8d3c0985082837c',1,'mpl::group']]], + ['intersection_5ftag_30',['intersection_tag',['../classmpl_1_1group_1_1intersection__tag.html',1,'mpl::group']]], + ['invalid_5fargument_31',['invalid_argument',['../classmpl_1_1invalid__argument.html',1,'mpl']]], + ['invalid_5fcount_32',['invalid_count',['../classmpl_1_1invalid__count.html',1,'mpl']]], + ['invalid_5fdatatype_5fbound_33',['invalid_datatype_bound',['../classmpl_1_1invalid__datatype__bound.html',1,'mpl']]], + ['invalid_5fdim_34',['invalid_dim',['../classmpl_1_1invalid__dim.html',1,'mpl']]], + ['invalid_5flayout_35',['invalid_layout',['../classmpl_1_1invalid__layout.html',1,'mpl']]], + ['invalid_5frank_36',['invalid_rank',['../classmpl_1_1invalid__rank.html',1,'mpl']]], + ['invalid_5fsize_37',['invalid_size',['../classmpl_1_1invalid__size.html',1,'mpl']]], + ['invalid_5ftag_38',['invalid_tag',['../classmpl_1_1invalid__tag.html',1,'mpl']]], + ['iprobe_39',['iprobe',['../classmpl_1_1communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69',1,'mpl::communicator']]], + ['irecv_40',['irecv',['../classmpl_1_1communicator.html#a82b6f15cef4c0daa6825bc699418df22',1,'mpl::communicator::irecv(T &data, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc',1,'mpl::communicator::irecv(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3',1,'mpl::communicator::irecv(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const']]], + ['ireduce_41',['ireduce',['../classmpl_1_1communicator.html#a14ad784ff91391983f667a5cadbfe367',1,'mpl::communicator::ireduce(F f, int root_rank, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a0e6459ad572cb1a69cb149df1871f2c6',1,'mpl::communicator::ireduce(F f, int root_rank, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#ad2342955984c4db387d52a5414b212c5',1,'mpl::communicator::ireduce(F f, int root_rank, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a79e5f4cd63cf9354ceedc4da193e2410',1,'mpl::communicator::ireduce(F f, int root_rank, const T &senddata) const'],['../classmpl_1_1communicator.html#a06525ff878eb073c02dc0bef285f06ac',1,'mpl::communicator::ireduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#abdb6d8fc8a9aafabf50b96275f09775d',1,'mpl::communicator::ireduce(F f, int root_rank, const T *senddata, const contiguous_layout< T > &l) const']]], + ['ireduce_5fscatter_42',['ireduce_scatter',['../classmpl_1_1communicator.html#a4de1ecacd035af3dca830995098a2f49',1,'mpl::communicator']]], + ['ireduce_5fscatter_5fblock_43',['ireduce_scatter_block',['../classmpl_1_1communicator.html#ae6e7de007099b7dc579f638a39d56911',1,'mpl::communicator::ireduce_scatter_block(F f, const T *senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a19912b0013f991bbebf2ef46fcb93c70',1,'mpl::communicator::ireduce_scatter_block(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &recvcount) const']]], + ['irequest_44',['irequest',['../classmpl_1_1impl_1_1irequest.html',1,'mpl::impl::irequest'],['../classmpl_1_1irequest.html',1,'mpl::irequest']]], + ['irequest_5fpool_45',['irequest_pool',['../classmpl_1_1irequest__pool.html',1,'mpl']]], + ['irsend_46',['irsend',['../classmpl_1_1communicator.html#a970647a9680c6bdc3ffbe0814b32f989',1,'mpl::communicator::irsend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ae35acd56966f491923a80abbc13fe74a',1,'mpl::communicator::irsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#abb0001ba1ee4c2fbd53038bde821e647',1,'mpl::communicator::irsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], + ['is_5fcanceled_47',['is_canceled',['../classmpl_1_1status__t.html#a10d1875d30534ff94e21d98aeed02e11',1,'mpl::status_t']]], + ['is_5fcancelled_48',['is_cancelled',['../classmpl_1_1status__t.html#a934d03b57e03aa23841cc44f0b73b7c1',1,'mpl::status_t']]], + ['is_5fcommutative_49',['is_commutative',['../structmpl_1_1op__traits_3_01multiplies_3_01_t_01_4_01_4.html#aaaa9046b4301afce0fa7f4a248d5b4c8',1,'mpl::op_traits< multiplies< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01logical__and_3_01_t_01_4_01_4.html#add32e7542a78d6602cf676264941e2cf',1,'mpl::op_traits< logical_and< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01bit__or_3_01_t_01_4_01_4.html#a0490fa18b50038565ddd8c8295fe4b64',1,'mpl::op_traits< bit_or< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01logical__or_3_01_t_01_4_01_4.html#a87880e2fda9d3cd285caa70d8a80ea98',1,'mpl::op_traits< logical_or< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01logical__xor_3_01_t_01_4_01_4.html#a658891deaa9ba8eabf193fa63affb093',1,'mpl::op_traits< logical_xor< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01bit__and_3_01_t_01_4_01_4.html#a56e74f675670625b54e05d5617a8fcb7',1,'mpl::op_traits< bit_and< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01plus_3_01_t_01_4_01_4.html#aef6e6a2daac6d0dac4daad3623f8a878',1,'mpl::op_traits< plus< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01min_3_01_t_01_4_01_4.html#aa616d40968c33cbf5aa8add4f96aab61',1,'mpl::op_traits< min< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01max_3_01_t_01_4_01_4.html#aa4a61a3d6653f36c1220705c1777afb2',1,'mpl::op_traits< max< T > >::is_commutative()'],['../structmpl_1_1op__traits.html#a24504be97499aae191b2850a712d40c0',1,'mpl::op_traits::is_commutative()'],['../structmpl_1_1op__traits_3_01bit__xor_3_01_t_01_4_01_4.html#aa86eb1173a3ec2eb6b11f76ddd559c78',1,'mpl::op_traits< bit_xor< T > >::is_commutative()']]], + ['is_5fvalid_50',['is_valid',['../classmpl_1_1communicator.html#ad8c0dc208fd9705a2423346d0baaff58',1,'mpl::communicator']]], + ['iscan_51',['iscan',['../classmpl_1_1communicator.html#ac514a6fe8a481f7120bc1d105c09ee96',1,'mpl::communicator::iscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a72d2639f200e5a36f1f81df5c499f06f',1,'mpl::communicator::iscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416',1,'mpl::communicator::iscan(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#af786635362fca5a0f915771332383589',1,'mpl::communicator::iscan(F f, const T &senddata, T &recvdata) const']]], + ['iscatter_52',['iscatter',['../classmpl_1_1communicator.html#a61c69fd52a576be43b7331536f54b73f',1,'mpl::communicator::iscatter(int root_rank, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3',1,'mpl::communicator::iscatter(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a1948c90e2873f0db6b7fc32f7240e80a',1,'mpl::communicator::iscatter(int root_rank, T &recvdata) const'],['../classmpl_1_1communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21',1,'mpl::communicator::iscatter(int root_rank, const T *senddata, T &recvdata) const']]], + ['iscatterv_53',['iscatterv',['../classmpl_1_1communicator.html#a9fbb87f9933ff071092164c9e264d817',1,'mpl::communicator::iscatterv(int root_rank, const T *senddata, const layouts< T > &sendls, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a58b6d65e9351b61c493967718f550614',1,'mpl::communicator::iscatterv(int root_rank, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a031345325782266cecb521469e42d8c3',1,'mpl::communicator::iscatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const']]], + ['isend_54',['isend',['../classmpl_1_1communicator.html#a67f541a36dee046cc12d15d9133930b7',1,'mpl::communicator::isend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a46e8797b907b9539b2ee90713a675e5c',1,'mpl::communicator::isend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#aaf647eec3afe83caf2afafe5a82b405a',1,'mpl::communicator::isend(const T &data, int destination, tag_t t=tag_t(0)) const']]], + ['issend_55',['issend',['../classmpl_1_1communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2',1,'mpl::communicator::issend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#acdeb1107c64614728b6c2cc0e65075bf',1,'mpl::communicator::issend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f',1,'mpl::communicator::issend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], + ['iterator_56',['iterator',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html',1,'mpl::cartesian_communicator::dimensions']]], + ['iterator_5flayout_57',['iterator_layout',['../classmpl_1_1iterator__layout.html#a9845f240dca4a7f7cfee5ac8f8c4cb09',1,'mpl::iterator_layout::iterator_layout()'],['../classmpl_1_1iterator__layout.html#a863e369b02d60dd0d7058ed9ff6fb56c',1,'mpl::iterator_layout::iterator_layout(iter_T first, iter_T last)'],['../classmpl_1_1iterator__layout.html#a54214c5c1248484bed83aba2aa4c1dc6',1,'mpl::iterator_layout::iterator_layout(const parameter &par)'],['../classmpl_1_1iterator__layout.html#a3d55526b2176cdb3c067b65d3c301183',1,'mpl::iterator_layout::iterator_layout(iter_T first, iter_T last, const layout< T > &l)'],['../classmpl_1_1iterator__layout.html#ab6a4de59b8716604d3fd66fd7e708300',1,'mpl::iterator_layout::iterator_layout(const parameter &par, const layout< T > &l)'],['../classmpl_1_1iterator__layout.html#a89ead1f759da22664d13f1c915dc8cd8',1,'mpl::iterator_layout::iterator_layout(const iterator_layout< T > &l)'],['../classmpl_1_1iterator__layout.html#ac26e4b99081e901b36cd89329ac22ffe',1,'mpl::iterator_layout::iterator_layout(iterator_layout< T > &&l) noexcept'],['../classmpl_1_1iterator__layout.html',1,'mpl::iterator_layout< T >']]] ]; diff --git a/docs/html/search/all_8.js b/docs/html/search/all_8.js index 41da7221..279cf596 100644 --- a/docs/html/search/all_8.js +++ b/docs/html/search/all_8.js @@ -1,71 +1,13 @@ var searchData= [ - ['iallgather_0',['iallgather',['../classmpl_1_1communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47',1,'mpl::communicator::iallgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a601c251b4c10c6797af3cd741dea4d55',1,'mpl::communicator::iallgather(const T &senddata, T *recvdata) const']]], - ['iallgatherv_1',['iallgatherv',['../classmpl_1_1communicator.html#a95d5c90f2a58fe228d846942fe700645',1,'mpl::communicator::iallgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const'],['../classmpl_1_1communicator.html#a73df8f569865237bc58e2445c7d07742',1,'mpl::communicator::iallgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const']]], - ['iallreduce_2',['iallreduce',['../classmpl_1_1communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf',1,'mpl::communicator::iallreduce(F f, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a5ce91750a7c77edf43e53ac88e4e8524',1,'mpl::communicator::iallreduce(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#aa541e7830014dce23eb1ce5f6bcfe281',1,'mpl::communicator::iallreduce(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a753e8742d27ff29a660b07ee0b90b69e',1,'mpl::communicator::iallreduce(F f, const T &senddata, T &recvdata) const']]], - ['ialltoall_3',['ialltoall',['../classmpl_1_1communicator.html#abe91007be7acef7641d6cbb08526d53b',1,'mpl::communicator::ialltoall(T *sendrecvdata, const layout< T > &sendrecvl) const'],['../classmpl_1_1communicator.html#aadb9f14a7a9f9bd44eae7832daed895d',1,'mpl::communicator::ialltoall(T *sendrecvdata) const'],['../classmpl_1_1communicator.html#ad15575d951e6a6c4327052e2ff01730f',1,'mpl::communicator::ialltoall(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#aa2b51b89d72555ebfb1862d1de688061',1,'mpl::communicator::ialltoall(const T *senddata, T *recvdata) const']]], - ['ialltoallv_4',['ialltoallv',['../classmpl_1_1communicator.html#a5664d9591456924a7343082445bc8452',1,'mpl::communicator::ialltoallv(T *sendrecvdata, const layouts< T > &sendrecvls, const displacements &sendrecvdispls) const'],['../classmpl_1_1communicator.html#a68996ab5379c9a104572b804633d869e',1,'mpl::communicator::ialltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#a4cff38dd56b3d53992babac77cbefa8d',1,'mpl::communicator::ialltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const'],['../classmpl_1_1communicator.html#a7abdf44a7c377ba7191cb4abc6648afe',1,'mpl::communicator::ialltoallv(T *sendrecvdata, const layouts< T > &sendrecvls) const']]], - ['ibarrier_5',['ibarrier',['../classmpl_1_1communicator.html#acce39280ea657a7d9e5d675631cf7a12',1,'mpl::communicator']]], - ['ibcast_6',['ibcast',['../classmpl_1_1communicator.html#aad369f0de0b51dc3cf7992ed26c0799d',1,'mpl::communicator::ibcast(int root_rank, T &data) const'],['../classmpl_1_1communicator.html#a69ebec18f9d55bc8e2b6951f97855068',1,'mpl::communicator::ibcast(int root_rank, T *data, const layout< T > &l) const']]], - ['ibsend_7',['ibsend',['../classmpl_1_1communicator.html#a34c527f23af855f716bf00a2658c9436',1,'mpl::communicator::ibsend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a14b2306de71e02b0390c564ff6ba7c21',1,'mpl::communicator::ibsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a20505014d3a5ac58a5601faee033d003',1,'mpl::communicator::ibsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['identical_8',['identical',['../classmpl_1_1group.html#a6515b87988032cf940014c3e553f254a',1,'mpl::group::identical()'],['../classmpl_1_1communicator.html#ac66083dad051e6b7042d47962d1e2c60',1,'mpl::communicator::identical()'],['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69aee0cbdbacdada19376449799774976e8',1,'mpl::group::identical()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8',1,'mpl::communicator::identical()']]], - ['iexscan_9',['iexscan',['../classmpl_1_1communicator.html#a8e43e08af5e8481049731092274aca76',1,'mpl::communicator::iexscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a7eddabba5f98c99db189844854690d13',1,'mpl::communicator::iexscan(F f, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a1bf177485606687353cd50bc5a3b3c59',1,'mpl::communicator::iexscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a20766ee389c97340241ff730eae49475',1,'mpl::communicator::iexscan(F f, T &sendrecvdata) const']]], - ['igather_10',['igather',['../classmpl_1_1communicator.html#ad2d304708463bb6f91e1a54b3d87106a',1,'mpl::communicator::igather(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a4a29592502142845c3bb0031221189a3',1,'mpl::communicator::igather(int root_rank, const T &senddata) const'],['../classmpl_1_1communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c',1,'mpl::communicator::igather(int root_rank, const T *senddata, const layout< T > &sendl) const'],['../classmpl_1_1communicator.html#a76dbca1b1f6089ee9e07e997b5d79295',1,'mpl::communicator::igather(int root_rank, const T &senddata, T *recvdata) const']]], - ['igatherv_11',['igatherv',['../classmpl_1_1communicator.html#a445e05af65cdc53b7a981d4884a4c3b8',1,'mpl::communicator::igatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f',1,'mpl::communicator::igatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const'],['../classmpl_1_1communicator.html#a192fabbdbac09436fab92943148c5185',1,'mpl::communicator::igatherv(int root_rank, const T *senddata, const layout< T > &sendl) const']]], - ['improbe_12',['improbe',['../classmpl_1_1communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7',1,'mpl::communicator']]], - ['imrecv_13',['imrecv',['../classmpl_1_1communicator.html#a779f215eb82ce71764befaae9918b596',1,'mpl::communicator::imrecv(T *data, const layout< T > &l, message_t &m) const'],['../classmpl_1_1communicator.html#ae71687a9aa6bac6a2b888245aa801020',1,'mpl::communicator::imrecv(iterT begin, iterT end, message_t &m) const'],['../classmpl_1_1communicator.html#aa91aed6395fdcbb40788323a4cf45110',1,'mpl::communicator::imrecv(T &data, message_t &m) const']]], - ['in_5fdegree_14',['in_degree',['../classmpl_1_1distributed__graph__communicator.html#aa018e93fa8e391b0f7ac34ad707a64fe',1,'mpl::distributed_graph_communicator']]], - ['in_5fneighbors_15',['in_neighbors',['../classmpl_1_1distributed__graph__communicator.html#afa3fdbce27f981366ddd913b496c7023',1,'mpl::distributed_graph_communicator']]], - ['in_5fout_5fdegree_16',['in_out_degree',['../classmpl_1_1distributed__graph__communicator.html#ac8b0b4aa6e6c4e23ebd807ef809dad6b',1,'mpl::distributed_graph_communicator']]], - ['include_17',['include',['../classmpl_1_1group.html#ae5ef3b81a9b35085fe4ffd54cd280912',1,'mpl::group']]], - ['include_5ftag_18',['include_tag',['../classmpl_1_1group_1_1include__tag.html',1,'mpl::group']]], - ['included_19',['included',['../classmpl_1_1cartesian__communicator.html#a58cf7f390ec1fa47f44756eeddab44ce',1,'mpl::cartesian_communicator::included()'],['../classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588a99f78c54130e752954404fff0707dcbd',1,'mpl::cartesian_communicator::included()']]], - ['included_5ftag_20',['included_tag',['../classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588',1,'mpl::cartesian_communicator']]], - ['included_5ftags_21',['included_tags',['../classmpl_1_1cartesian__communicator_1_1included__tags.html#ae18657b9e6cee8ffa9549f3b4bc3e104',1,'mpl::cartesian_communicator::included_tags::included_tags()=default'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a7c5d657f45d984865283fdb5dfd4edbc',1,'mpl::cartesian_communicator::included_tags::included_tags(int dimension)'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a949beacb76cdab143f823228f22cbf47',1,'mpl::cartesian_communicator::included_tags::included_tags(std::initializer_list< included_tag > init)'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html',1,'mpl::cartesian_communicator::included_tags']]], - ['indexed_5fblock_5flayout_22',['indexed_block_layout',['../classmpl_1_1indexed__block__layout.html#a09471a11699169f30d5165bbe912cf8a',1,'mpl::indexed_block_layout::indexed_block_layout()'],['../classmpl_1_1indexed__block__layout_1_1parameter.html#a17af34d4276ce99356fc0b943e6bce54',1,'mpl::indexed_block_layout::parameter::indexed_block_layout()'],['../classmpl_1_1indexed__block__layout.html#a53a1cb6e0006c275f9780191ceade271',1,'mpl::indexed_block_layout::indexed_block_layout()'],['../classmpl_1_1indexed__block__layout.html#ae555bc8d3b95d9180a65668f9caece8e',1,'mpl::indexed_block_layout::indexed_block_layout(indexed_block_layout< T > &&l) noexcept'],['../classmpl_1_1indexed__block__layout.html#a1dc6994a6a2609d758a2311557a29998',1,'mpl::indexed_block_layout::indexed_block_layout(const indexed_block_layout< T > &l)'],['../classmpl_1_1indexed__block__layout.html#afe8a5303c144ec5b1b19c7d71cc90e99',1,'mpl::indexed_block_layout::indexed_block_layout(int blocklength, const parameter &par)'],['../classmpl_1_1indexed__block__layout.html',1,'mpl::indexed_block_layout< T >']]], - ['indexed_5fblock_5flayout_3c_20t_20_3e_23',['indexed_block_layout< T >',['../classmpl_1_1layout.html#aa503cf6532650fac11937626cb1a9a68',1,'mpl::layout']]], - ['indexed_5flayout_24',['indexed_layout',['../classmpl_1_1indexed__layout.html#a8193a18df935777de33730ecda553f18',1,'mpl::indexed_layout::indexed_layout()'],['../classmpl_1_1indexed__layout_1_1parameter.html#a97dc21015db1900818c4f2cbedf2823c',1,'mpl::indexed_layout::parameter::indexed_layout()'],['../classmpl_1_1indexed__layout.html#a637fa395f20bf6a7b06f33fe8477716a',1,'mpl::indexed_layout::indexed_layout(const parameter &par)'],['../classmpl_1_1indexed__layout.html#a4814730ccbda9d2c8f4a00c76466bcf4',1,'mpl::indexed_layout::indexed_layout(const parameter &par, const layout< T > &l)'],['../classmpl_1_1indexed__layout.html#ab1ced466b429dc64c875e27b57763b46',1,'mpl::indexed_layout::indexed_layout(const indexed_layout< T > &l)'],['../classmpl_1_1indexed__layout.html#a91ad5d974413ad678d1bfd10e403f31f',1,'mpl::indexed_layout::indexed_layout(indexed_layout< T > &&l) noexcept'],['../classmpl_1_1indexed__layout.html',1,'mpl::indexed_layout< T >']]], - ['indexed_5flayout_3c_20t_20_3e_25',['indexed_layout< T >',['../classmpl_1_1layout.html#aab715201eed750d6cc9831d5a98b9858',1,'mpl::layout']]], - ['ineighbor_5fallgather_26',['ineighbor_allgather',['../classmpl_1_1impl_1_1topology__communicator.html#a068c77bb2536523c2bcbeb4d3d8efc7b',1,'mpl::impl::topology_communicator::ineighbor_allgather(const T &senddata, T *recvdata) const'],['../classmpl_1_1impl_1_1topology__communicator.html#aad40f322ef427d759fe699b1318c3103',1,'mpl::impl::topology_communicator::ineighbor_allgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const']]], - ['ineighbor_5fallgatherv_27',['ineighbor_allgatherv',['../classmpl_1_1impl_1_1topology__communicator.html#aba77e505c9c19f3c6acdf10d4bc9fe16',1,'mpl::impl::topology_communicator::ineighbor_allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1impl_1_1topology__communicator.html#a9dccde1bf10e911c3a00d1a546005e94',1,'mpl::impl::topology_communicator::ineighbor_allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const']]], - ['ineighbor_5falltoall_28',['ineighbor_alltoall',['../classmpl_1_1impl_1_1topology__communicator.html#ac7cb886dc70531a897bce6396c9a6e7e',1,'mpl::impl::topology_communicator::ineighbor_alltoall(const T *senddata, T *recvdata) const'],['../classmpl_1_1impl_1_1topology__communicator.html#a65311bd6bde1b8de5b8acf9ae902104a',1,'mpl::impl::topology_communicator::ineighbor_alltoall(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const']]], - ['ineighbor_5falltoallv_29',['ineighbor_alltoallv',['../classmpl_1_1impl_1_1topology__communicator.html#a3fbbc822e36ea95e865a7b37ac0ad984',1,'mpl::impl::topology_communicator::ineighbor_alltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const'],['../classmpl_1_1impl_1_1topology__communicator.html#a5ceb8a7771930409a0b7c54042b49866',1,'mpl::impl::topology_communicator::ineighbor_alltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const']]], - ['interior_5flayout_30',['interior_layout',['../classmpl_1_1distributed__grid.html#acd78758381fb6a8366913ca97dd10f86',1,'mpl::distributed_grid']]], - ['intersection_31',['intersection',['../classmpl_1_1group.html#a8e438a13834a708af8d3c0985082837c',1,'mpl::group']]], - ['intersection_5ftag_32',['intersection_tag',['../classmpl_1_1group_1_1intersection__tag.html',1,'mpl::group']]], - ['invalid_5fargument_33',['invalid_argument',['../classmpl_1_1invalid__argument.html#a561fcad448834774831ed758c927c911',1,'mpl::invalid_argument::invalid_argument()'],['../classmpl_1_1invalid__argument.html',1,'mpl::invalid_argument']]], - ['invalid_5fcount_34',['invalid_count',['../classmpl_1_1invalid__count.html#ae565237bd4635f06cb5daa665ac316c3',1,'mpl::invalid_count::invalid_count()'],['../classmpl_1_1invalid__count.html',1,'mpl::invalid_count']]], - ['invalid_5fdatatype_5fbound_35',['invalid_datatype_bound',['../classmpl_1_1invalid__datatype__bound.html#ae8bb5417f504c1140e7312d85c35c79d',1,'mpl::invalid_datatype_bound::invalid_datatype_bound()'],['../classmpl_1_1invalid__datatype__bound.html',1,'mpl::invalid_datatype_bound']]], - ['invalid_5fdim_36',['invalid_dim',['../classmpl_1_1invalid__dim.html#a35fcdedad1a82a8df4961ec9f8c2b13f',1,'mpl::invalid_dim::invalid_dim()'],['../classmpl_1_1invalid__dim.html',1,'mpl::invalid_dim']]], - ['invalid_5flayout_37',['invalid_layout',['../classmpl_1_1invalid__layout.html#aba5a34fef955a918716733b36085baa5',1,'mpl::invalid_layout::invalid_layout()'],['../classmpl_1_1invalid__layout.html',1,'mpl::invalid_layout']]], - ['invalid_5frank_38',['invalid_rank',['../classmpl_1_1invalid__rank.html#ad37eac9d409ae80bc126da73cb048294',1,'mpl::invalid_rank::invalid_rank()'],['../classmpl_1_1invalid__rank.html',1,'mpl::invalid_rank']]], - ['invalid_5fsize_39',['invalid_size',['../classmpl_1_1invalid__size.html#af22c29b8f2a1b74d134a8c221d89bc58',1,'mpl::invalid_size::invalid_size()'],['../classmpl_1_1invalid__size.html',1,'mpl::invalid_size']]], - ['invalid_5ftag_40',['invalid_tag',['../classmpl_1_1invalid__tag.html#a7e4700f381c0e849e1c0a6b51aee9465',1,'mpl::invalid_tag::invalid_tag()'],['../classmpl_1_1invalid__tag.html',1,'mpl::invalid_tag']]], - ['iprobe_41',['iprobe',['../classmpl_1_1communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69',1,'mpl::communicator']]], - ['irecv_42',['irecv',['../classmpl_1_1communicator.html#a82b6f15cef4c0daa6825bc699418df22',1,'mpl::communicator::irecv(T &data, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc',1,'mpl::communicator::irecv(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3',1,'mpl::communicator::irecv(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const']]], - ['ireduce_43',['ireduce',['../classmpl_1_1communicator.html#a14ad784ff91391983f667a5cadbfe367',1,'mpl::communicator::ireduce(F f, int root_rank, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a0e6459ad572cb1a69cb149df1871f2c6',1,'mpl::communicator::ireduce(F f, int root_rank, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#ad2342955984c4db387d52a5414b212c5',1,'mpl::communicator::ireduce(F f, int root_rank, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a79e5f4cd63cf9354ceedc4da193e2410',1,'mpl::communicator::ireduce(F f, int root_rank, const T &senddata) const'],['../classmpl_1_1communicator.html#a06525ff878eb073c02dc0bef285f06ac',1,'mpl::communicator::ireduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#abdb6d8fc8a9aafabf50b96275f09775d',1,'mpl::communicator::ireduce(F f, int root_rank, const T *senddata, const contiguous_layout< T > &l) const']]], - ['ireduce_5fscatter_44',['ireduce_scatter',['../classmpl_1_1communicator.html#a4de1ecacd035af3dca830995098a2f49',1,'mpl::communicator']]], - ['ireduce_5fscatter_5fblock_45',['ireduce_scatter_block',['../classmpl_1_1communicator.html#ae6e7de007099b7dc579f638a39d56911',1,'mpl::communicator::ireduce_scatter_block(F f, const T *senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a19912b0013f991bbebf2ef46fcb93c70',1,'mpl::communicator::ireduce_scatter_block(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &recvcount) const']]], - ['irequest_46',['irequest',['../classmpl_1_1impl_1_1irequest.html#a1f093c2ed5b963f78f55f8c9fee06f07',1,'mpl::impl::irequest::irequest()'],['../classmpl_1_1irequest.html#a67a88cdd06a34645ed430bbd6922a8b9',1,'mpl::irequest::irequest(const impl::irequest &r)'],['../classmpl_1_1irequest.html#ae4f7b65e9d801916ac0cb47c3c379de2',1,'mpl::irequest::irequest(const irequest &)=delete'],['../classmpl_1_1irequest.html#aad342024a6c6fe73177850401fe2130d',1,'mpl::irequest::irequest(irequest &&r) noexcept'],['../classmpl_1_1impl_1_1irequest.html',1,'mpl::impl::irequest'],['../classmpl_1_1irequest.html',1,'mpl::irequest']]], - ['irequest_5fpool_47',['irequest_pool',['../classmpl_1_1irequest__pool.html#ae02a4f735ff77cf1e85ae79c399e5b8a',1,'mpl::irequest_pool::irequest_pool()=default'],['../classmpl_1_1irequest__pool.html#a1a8d4dfb6f2d6b2a12fb752a0c3cd37c',1,'mpl::irequest_pool::irequest_pool(const irequest_pool &)=delete'],['../classmpl_1_1irequest__pool.html#a0a59a78777963e261f6c89db28f07f28',1,'mpl::irequest_pool::irequest_pool(irequest_pool &&r) noexcept'],['../classmpl_1_1irequest__pool.html',1,'mpl::irequest_pool']]], - ['irsend_48',['irsend',['../classmpl_1_1communicator.html#a970647a9680c6bdc3ffbe0814b32f989',1,'mpl::communicator::irsend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ae35acd56966f491923a80abbc13fe74a',1,'mpl::communicator::irsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#abb0001ba1ee4c2fbd53038bde821e647',1,'mpl::communicator::irsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['is_5fcanceled_49',['is_canceled',['../classmpl_1_1status__t.html#a10d1875d30534ff94e21d98aeed02e11',1,'mpl::status_t']]], - ['is_5fcancelled_50',['is_cancelled',['../classmpl_1_1status__t.html#a934d03b57e03aa23841cc44f0b73b7c1',1,'mpl::status_t']]], - ['is_5fcommutative_51',['is_commutative',['../structmpl_1_1op__traits.html#a24504be97499aae191b2850a712d40c0',1,'mpl::op_traits::is_commutative()'],['../structmpl_1_1op__traits_3_01max_3_01_t_01_4_01_4.html#aa4a61a3d6653f36c1220705c1777afb2',1,'mpl::op_traits< max< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01min_3_01_t_01_4_01_4.html#aa616d40968c33cbf5aa8add4f96aab61',1,'mpl::op_traits< min< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01plus_3_01_t_01_4_01_4.html#aef6e6a2daac6d0dac4daad3623f8a878',1,'mpl::op_traits< plus< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01multiplies_3_01_t_01_4_01_4.html#aaaa9046b4301afce0fa7f4a248d5b4c8',1,'mpl::op_traits< multiplies< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01logical__and_3_01_t_01_4_01_4.html#add32e7542a78d6602cf676264941e2cf',1,'mpl::op_traits< logical_and< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01logical__or_3_01_t_01_4_01_4.html#a87880e2fda9d3cd285caa70d8a80ea98',1,'mpl::op_traits< logical_or< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01logical__xor_3_01_t_01_4_01_4.html#a658891deaa9ba8eabf193fa63affb093',1,'mpl::op_traits< logical_xor< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01bit__and_3_01_t_01_4_01_4.html#a56e74f675670625b54e05d5617a8fcb7',1,'mpl::op_traits< bit_and< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01bit__or_3_01_t_01_4_01_4.html#a0490fa18b50038565ddd8c8295fe4b64',1,'mpl::op_traits< bit_or< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01bit__xor_3_01_t_01_4_01_4.html#aa86eb1173a3ec2eb6b11f76ddd559c78',1,'mpl::op_traits< bit_xor< T > >::is_commutative()']]], - ['is_5fthread_5fmain_52',['is_thread_main',['../namespacempl_1_1environment.html#a9bf5f93d0014124492bffd5b2df1f571',1,'mpl::environment']]], - ['is_5fvalid_53',['is_valid',['../classmpl_1_1communicator.html#ad8c0dc208fd9705a2423346d0baaff58',1,'mpl::communicator']]], - ['iscan_54',['iscan',['../classmpl_1_1communicator.html#af786635362fca5a0f915771332383589',1,'mpl::communicator::iscan(F f, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a72d2639f200e5a36f1f81df5c499f06f',1,'mpl::communicator::iscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416',1,'mpl::communicator::iscan(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#ac514a6fe8a481f7120bc1d105c09ee96',1,'mpl::communicator::iscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const']]], - ['iscatter_55',['iscatter',['../classmpl_1_1communicator.html#a61c69fd52a576be43b7331536f54b73f',1,'mpl::communicator::iscatter(int root_rank, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a1948c90e2873f0db6b7fc32f7240e80a',1,'mpl::communicator::iscatter(int root_rank, T &recvdata) const'],['../classmpl_1_1communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3',1,'mpl::communicator::iscatter(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21',1,'mpl::communicator::iscatter(int root_rank, const T *senddata, T &recvdata) const']]], - ['iscatterv_56',['iscatterv',['../classmpl_1_1communicator.html#a58b6d65e9351b61c493967718f550614',1,'mpl::communicator::iscatterv(int root_rank, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a9fbb87f9933ff071092164c9e264d817',1,'mpl::communicator::iscatterv(int root_rank, const T *senddata, const layouts< T > &sendls, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a031345325782266cecb521469e42d8c3',1,'mpl::communicator::iscatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const']]], - ['isend_57',['isend',['../classmpl_1_1communicator.html#aaf647eec3afe83caf2afafe5a82b405a',1,'mpl::communicator::isend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a67f541a36dee046cc12d15d9133930b7',1,'mpl::communicator::isend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a46e8797b907b9539b2ee90713a675e5c',1,'mpl::communicator::isend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['issend_58',['issend',['../classmpl_1_1communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2',1,'mpl::communicator::issend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#acdeb1107c64614728b6c2cc0e65075bf',1,'mpl::communicator::issend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f',1,'mpl::communicator::issend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['iterator_59',['iterator',['../classmpl_1_1cartesian__communicator_1_1vector.html#a95eab3eb70b4574c8850af64b20b41f3',1,'mpl::cartesian_communicator::vector::iterator()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a6d15151da59d0483bb7da33aba71dc60',1,'mpl::cartesian_communicator::included_tags::iterator()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a855d65e72816eaa7d08fc4db9feb5df0',1,'mpl::distributed_graph_communicator::neighbours_set::iterator()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#ab6a1c5e822586134f597b059eb00000d',1,'mpl::distributed_grid::dimensions::iterator()'],['../classmpl_1_1local__grid_1_1dimensions.html#a43e2c08d9b3a82586cf93b17fd851331',1,'mpl::local_grid::dimensions::iterator()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#a108a464ce7190e45fe9aa162ffcd779c',1,'mpl::graph_communicator::edge_set::iterator()'],['../classmpl_1_1graph__communicator_1_1node__list.html#a8678648832d56e5b555d19e491e6268a',1,'mpl::graph_communicator::node_list::iterator()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a7823145e46bc588bc50f4e06f38ab349',1,'mpl::cartesian_communicator::dimensions::iterator::iterator()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html',1,'mpl::cartesian_communicator::dimensions::iterator']]], - ['iterator_5fcategory_60',['iterator_category',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#acaa75ca51d75d81868f0ea74d9a3fa05',1,'mpl::cartesian_communicator::dimensions::iterator::iterator_category()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#acda97b96d05cf49d244e973870831ffc',1,'mpl::cartesian_communicator::dimensions::const_iterator::iterator_category()']]], - ['iterator_5flayout_61',['iterator_layout',['../classmpl_1_1iterator__layout.html#a54214c5c1248484bed83aba2aa4c1dc6',1,'mpl::iterator_layout::iterator_layout(const parameter &par)'],['../classmpl_1_1iterator__layout.html#a3d55526b2176cdb3c067b65d3c301183',1,'mpl::iterator_layout::iterator_layout(iter_T first, iter_T last, const layout< T > &l)'],['../classmpl_1_1iterator__layout.html#ab6a4de59b8716604d3fd66fd7e708300',1,'mpl::iterator_layout::iterator_layout(const parameter &par, const layout< T > &l)'],['../classmpl_1_1iterator__layout.html#a89ead1f759da22664d13f1c915dc8cd8',1,'mpl::iterator_layout::iterator_layout(const iterator_layout< T > &l)'],['../classmpl_1_1iterator__layout.html#ac26e4b99081e901b36cd89329ac22ffe',1,'mpl::iterator_layout::iterator_layout(iterator_layout< T > &&l) noexcept'],['../classmpl_1_1iterator__layout_1_1parameter.html#a58c52e5547d2956c368d96c3585da540',1,'mpl::iterator_layout::parameter::iterator_layout()'],['../classmpl_1_1iterator__layout.html#a9845f240dca4a7f7cfee5ac8f8c4cb09',1,'mpl::iterator_layout::iterator_layout()'],['../classmpl_1_1iterator__layout.html#a863e369b02d60dd0d7058ed9ff6fb56c',1,'mpl::iterator_layout::iterator_layout(iter_T first, iter_T last)'],['../classmpl_1_1iterator__layout.html',1,'mpl::iterator_layout< T >']]], - ['iterator_5flayout_3c_20t_20_3e_62',['iterator_layout< T >',['../classmpl_1_1layout.html#aef5d3d4d7c5d1ed3908c19feac4c6be1',1,'mpl::layout']]], - ['request_63',['request',['../classmpl_1_1status__t.html#a435a6a142566db821f6585961da52ed3',1,'mpl::status_t']]], - ['request_5fpool_64',['request_pool',['../classmpl_1_1status__t.html#ab9c9880cf76979a056acfe2cb6bf6772',1,'mpl::status_t']]], - ['request_5fpool_3c_20irequest_20_3e_65',['request_pool< irequest >',['../classmpl_1_1irequest.html#ac0fb8b83ea79062c37d219742c871bcc',1,'mpl::irequest']]], - ['request_5fpool_3c_20prequest_20_3e_66',['request_pool< prequest >',['../classmpl_1_1prequest.html#a8c58374ad21d57465ce6914abe69fdf8',1,'mpl::prequest']]], - ['topology_5fcommunicator_67',['topology_communicator',['../classmpl_1_1layouts.html#a1eb8b54fe4aac54b7d7dd0ef16a2a82e',1,'mpl::layouts::topology_communicator()'],['../classmpl_1_1contiguous__layouts.html#a1eb8b54fe4aac54b7d7dd0ef16a2a82e',1,'mpl::contiguous_layouts::topology_communicator()']]] + ['layout_0',['layout',['../classmpl_1_1layout.html#a4247e7ceac8381a08ce49a21370238d2',1,'mpl::layout::layout(layout &&l) noexcept'],['../classmpl_1_1layout.html#ad1a727c34eaefc6031a00042b177b9b9',1,'mpl::layout::layout(const layout &l)'],['../classmpl_1_1layout.html#ac1edd6042f0c959638583136b00c89db',1,'mpl::layout::layout()'],['../classmpl_1_1layout.html',1,'mpl::layout< T >']]], + ['layout_3c_20void_20_3e_1',['layout< void >',['../classmpl_1_1layout.html',1,'mpl']]], + ['layouts_2',['layouts',['../classmpl_1_1layouts.html#af5b700e5e64692188758a0e704979a96',1,'mpl::layouts::layouts()'],['../classmpl_1_1layouts.html#a089858363f1176c0c87760fe8c3b8503',1,'mpl::layouts::layouts(size_type n)'],['../classmpl_1_1layouts.html#a3b76572f81889e2efafaecc7aeb0f764',1,'mpl::layouts::layouts(size_type n, const layout< T > &l)'],['../classmpl_1_1layouts.html',1,'mpl::layouts< T >']]], + ['left_5fborder_5flayout_3',['left_border_layout',['../classmpl_1_1distributed__grid.html#a19c79be242cf60cba067c6d5c74ac87d',1,'mpl::distributed_grid']]], + ['left_5fmirror_5flayout_4',['left_mirror_layout',['../classmpl_1_1distributed__grid.html#a3dc2b8663427188f0fb8c122921e489a',1,'mpl::distributed_grid']]], + ['local_5fgrid_5',['local_grid',['../classmpl_1_1local__grid.html#a98aca5a379a25cce8d753629f1872796',1,'mpl::local_grid::local_grid()'],['../classmpl_1_1local__grid.html',1,'mpl::local_grid< dim, T, A >']]], + ['logical_5fand_6',['logical_and',['../structmpl_1_1logical__and.html',1,'mpl']]], + ['logical_5for_7',['logical_or',['../structmpl_1_1logical__or.html',1,'mpl']]], + ['logical_5fxor_8',['logical_xor',['../structmpl_1_1logical__xor.html',1,'mpl']]], + ['lower_5fbound_9',['lower_bound',['../classmpl_1_1layout.html#a5eb103b30a8ddabfa28e70030a7c8e11',1,'mpl::layout']]] ]; diff --git a/docs/html/search/all_9.js b/docs/html/search/all_9.js index c60fc0e2..18850c63 100644 --- a/docs/html/search/all_9.js +++ b/docs/html/search/all_9.js @@ -1,13 +1,12 @@ var searchData= [ - ['layout_0',['layout',['../classmpl_1_1layout.html#a4247e7ceac8381a08ce49a21370238d2',1,'mpl::layout::layout(layout &&l) noexcept'],['../classmpl_1_1layout.html#ad1a727c34eaefc6031a00042b177b9b9',1,'mpl::layout::layout(const layout &l)'],['../classmpl_1_1layout.html#ac1edd6042f0c959638583136b00c89db',1,'mpl::layout::layout()'],['../classmpl_1_1layout.html',1,'mpl::layout< T >']]], - ['layout_3c_20void_20_3e_1',['layout< void >',['../classmpl_1_1layout.html',1,'mpl']]], - ['layouts_2',['layouts',['../classmpl_1_1layouts.html#af5b700e5e64692188758a0e704979a96',1,'mpl::layouts::layouts()'],['../classmpl_1_1layouts.html#a089858363f1176c0c87760fe8c3b8503',1,'mpl::layouts::layouts(size_type n)'],['../classmpl_1_1layouts.html#a3b76572f81889e2efafaecc7aeb0f764',1,'mpl::layouts::layouts(size_type n, const layout< T > &l)'],['../classmpl_1_1layouts.html',1,'mpl::layouts< T >']]], - ['left_5fborder_5flayout_3',['left_border_layout',['../classmpl_1_1distributed__grid.html#a19c79be242cf60cba067c6d5c74ac87d',1,'mpl::distributed_grid']]], - ['left_5fmirror_5flayout_4',['left_mirror_layout',['../classmpl_1_1distributed__grid.html#a3dc2b8663427188f0fb8c122921e489a',1,'mpl::distributed_grid']]], - ['local_5fgrid_5',['local_grid',['../classmpl_1_1local__grid_1_1dimensions.html#ad7e845ddcd260c1f9386866d30c09788',1,'mpl::local_grid::dimensions::local_grid()'],['../classmpl_1_1local__grid.html#a98aca5a379a25cce8d753629f1872796',1,'mpl::local_grid::local_grid()'],['../classmpl_1_1local__grid.html',1,'mpl::local_grid< dim, T, A >']]], - ['logical_5fand_6',['logical_and',['../structmpl_1_1logical__and.html',1,'mpl']]], - ['logical_5for_7',['logical_or',['../structmpl_1_1logical__or.html',1,'mpl']]], - ['logical_5fxor_8',['logical_xor',['../structmpl_1_1logical__xor.html',1,'mpl']]], - ['lower_5fbound_9',['lower_bound',['../classmpl_1_1layout.html#a5eb103b30a8ddabfa28e70030a7c8e11',1,'mpl::layout']]] + ['make_5fabsolute_0',['make_absolute',['../classmpl_1_1layout.html#ac0dc61784adeaeaf328f741871add748',1,'mpl::layout::make_absolute()'],['../classmpl_1_1layout.html#a8f6bbd313a30534934c9a4004d1d3f0f',1,'mpl::layout::make_absolute()'],['../classmpl_1_1absolute__data_3_01_t_01_5_01_4.html#ac0dc61784adeaeaf328f741871add748',1,'mpl::absolute_data< T * >::make_absolute()'],['../classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html#a8f6bbd313a30534934c9a4004d1d3f0f',1,'mpl::absolute_data< const T * >::make_absolute()']]], + ['max_1',['max',['../structmpl_1_1max.html',1,'mpl']]], + ['message_2',['message',['../structmpl_1_1mprobe__status.html#a1bd4ee6dd27523dd27cbeb2f2e7974e7',1,'mpl::mprobe_status']]], + ['min_3',['min',['../structmpl_1_1min.html',1,'mpl']]], + ['mpl_20_2d_20a_20message_20passing_20library_4',['MPL - A message passing library',['../index.html',1,'']]], + ['mprobe_5',['mprobe',['../classmpl_1_1communicator.html#a179246280657f80aa624f7ebcb8ac9a4',1,'mpl::communicator']]], + ['mprobe_5fstatus_6',['mprobe_status',['../structmpl_1_1mprobe__status.html',1,'mpl']]], + ['mrecv_7',['mrecv',['../classmpl_1_1communicator.html#ad5daeea3d8b7033a2f70cd19582e098a',1,'mpl::communicator::mrecv(T &data, message_t &m) const'],['../classmpl_1_1communicator.html#af11d56af7c3459eac6b3f5285788c8b9',1,'mpl::communicator::mrecv(T *data, const layout< T > &l, message_t &m) const'],['../classmpl_1_1communicator.html#a89b9a55af5259f119281592b4f63f2ee',1,'mpl::communicator::mrecv(iterT begin, iterT end, message_t &m) const']]], + ['multiplies_8',['multiplies',['../structmpl_1_1multiplies.html',1,'mpl']]] ]; diff --git a/docs/html/search/all_a.js b/docs/html/search/all_a.js index a2c7ccba..9f22e351 100644 --- a/docs/html/search/all_a.js +++ b/docs/html/search/all_a.js @@ -1,17 +1,12 @@ var searchData= [ - ['environment_0',['environment',['../namespacempl_1_1environment.html',1,'mpl']]], - ['impl_1',['impl',['../namespacempl_1_1impl.html',1,'mpl']]], - ['make_5fabsolute_2',['make_absolute',['../namespacempl.html#a118b145797198062151e6f43ee52046b',1,'mpl::make_absolute(const T *x, const layout< T > &l)'],['../namespacempl.html#a6481521478393b302a549178d93b8503',1,'mpl::make_absolute(T *x, const layout< T > &l)'],['../classmpl_1_1layout.html#ac0dc61784adeaeaf328f741871add748',1,'mpl::layout::make_absolute()'],['../classmpl_1_1layout.html#a8f6bbd313a30534934c9a4004d1d3f0f',1,'mpl::layout::make_absolute()'],['../classmpl_1_1absolute__data_3_01_t_01_5_01_4.html#ac0dc61784adeaeaf328f741871add748',1,'mpl::absolute_data< T * >::make_absolute()'],['../classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html#a8f6bbd313a30534934c9a4004d1d3f0f',1,'mpl::absolute_data< const T * >::make_absolute()']]], - ['max_3',['max',['../structmpl_1_1max.html',1,'mpl']]], - ['message_4',['message',['../structmpl_1_1mprobe__status.html#a1bd4ee6dd27523dd27cbeb2f2e7974e7',1,'mpl::mprobe_status']]], - ['message_5ft_5',['message_t',['../namespacempl.html#a3685893e866d7db6c3b3765d26ef386b',1,'mpl']]], - ['min_6',['min',['../structmpl_1_1min.html',1,'mpl']]], - ['mpl_7',['mpl',['../namespacempl.html',1,'']]], - ['mpl_20_2d_20a_20message_20passing_20library_8',['MPL - A message passing library',['../index.html',1,'']]], - ['mprobe_9',['mprobe',['../classmpl_1_1communicator.html#a179246280657f80aa624f7ebcb8ac9a4',1,'mpl::communicator']]], - ['mprobe_5fstatus_10',['mprobe_status',['../structmpl_1_1mprobe__status.html',1,'mpl']]], - ['mrecv_11',['mrecv',['../classmpl_1_1communicator.html#ad5daeea3d8b7033a2f70cd19582e098a',1,'mpl::communicator::mrecv(T &data, message_t &m) const'],['../classmpl_1_1communicator.html#af11d56af7c3459eac6b3f5285788c8b9',1,'mpl::communicator::mrecv(T *data, const layout< T > &l, message_t &m) const'],['../classmpl_1_1communicator.html#a89b9a55af5259f119281592b4f63f2ee',1,'mpl::communicator::mrecv(iterT begin, iterT end, message_t &m) const']]], - ['multiple_12',['multiple',['../namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828ace495ab8d79db0d37413d8e95b54e606',1,'mpl']]], - ['multiplies_13',['multiplies',['../structmpl_1_1multiplies.html',1,'mpl']]] + ['neighbor_5fallgather_0',['neighbor_allgather',['../classmpl_1_1impl_1_1topology__communicator.html#a43c7b3d19a5af4ba0f30e40045a2e459',1,'mpl::impl::topology_communicator::neighbor_allgather(const T &senddata, T *recvdata) const'],['../classmpl_1_1impl_1_1topology__communicator.html#af3ce31d403e1e2c143acb593ca1b21c2',1,'mpl::impl::topology_communicator::neighbor_allgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const']]], + ['neighbor_5fallgatherv_1',['neighbor_allgatherv',['../classmpl_1_1impl_1_1topology__communicator.html#a377702be1b30166ad458fcef11b2c239',1,'mpl::impl::topology_communicator::neighbor_allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1impl_1_1topology__communicator.html#af5822b089b634a670a9f3cef6e37dcef',1,'mpl::impl::topology_communicator::neighbor_allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const']]], + ['neighbor_5falltoall_2',['neighbor_alltoall',['../classmpl_1_1impl_1_1topology__communicator.html#a03afcae482e770e40ca5df7ae77b29c6',1,'mpl::impl::topology_communicator::neighbor_alltoall(const T *senddata, T *recvdata) const'],['../classmpl_1_1impl_1_1topology__communicator.html#a455d8703c09913eebe31cd360351c308',1,'mpl::impl::topology_communicator::neighbor_alltoall(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const']]], + ['neighbor_5falltoallv_3',['neighbor_alltoallv',['../classmpl_1_1impl_1_1topology__communicator.html#ada2dc41f3f09788b9dd87be27981668a',1,'mpl::impl::topology_communicator::neighbor_alltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1impl_1_1topology__communicator.html#a54da0c73668349841c941c53c6acff81',1,'mpl::impl::topology_communicator::neighbor_alltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const']]], + ['neighbors_4',['neighbors',['../classmpl_1_1graph__communicator.html#ad517010b26940090a839b6ef0c3d95ad',1,'mpl::graph_communicator::neighbors(int rank) const'],['../classmpl_1_1graph__communicator.html#af39af30840dbd4cdefb3c91b96f80a40',1,'mpl::graph_communicator::neighbors() const']]], + ['neighbours_5fset_5',['neighbours_set',['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html',1,'mpl::distributed_graph_communicator::neighbours_set'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#aa7dded0f45c35d7c28a87e443ddac33f',1,'mpl::distributed_graph_communicator::neighbours_set::neighbours_set(std::initializer_list< value_type > init)'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#ac33e4cd06803a0e689a73d737a39f815',1,'mpl::distributed_graph_communicator::neighbours_set::neighbours_set()=default']]], + ['node_5flist_6',['node_list',['../classmpl_1_1graph__communicator_1_1node__list.html',1,'mpl::graph_communicator::node_list'],['../classmpl_1_1graph__communicator_1_1node__list.html#a9321529165dbf31bdacaed44c2c3bd89',1,'mpl::graph_communicator::node_list::node_list()=default'],['../classmpl_1_1graph__communicator_1_1node__list.html#a6705675a9a7343424dece2f056060f4a',1,'mpl::graph_communicator::node_list::node_list(int nodes)'],['../classmpl_1_1graph__communicator_1_1node__list.html#afe55816c0169408a56e42c412f04e86f',1,'mpl::graph_communicator::node_list::node_list(std::initializer_list< int > init)']]], + ['non_5fperiodic_7',['non_periodic',['../classmpl_1_1cartesian__communicator.html#a147f10d80cecd3078f3688c56a169a70',1,'mpl::cartesian_communicator::non_periodic()'],['../classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836aa688e8ffe09270eeb4eaf5ca79db24cd',1,'mpl::cartesian_communicator::non_periodic()']]], + ['null_5flayout_8',['null_layout',['../classmpl_1_1null__layout.html',1,'mpl::null_layout< T >'],['../classmpl_1_1null__layout.html#acac7c25a8345ee4860f372efb0528159',1,'mpl::null_layout::null_layout() noexcept'],['../classmpl_1_1null__layout.html#a1e3a1fc89a2e4cc97313b09613a19fbb',1,'mpl::null_layout::null_layout(const null_layout &l) noexcept']]] ]; diff --git a/docs/html/search/all_b.js b/docs/html/search/all_b.js index e2fcda3b..b1d9fe20 100644 --- a/docs/html/search/all_b.js +++ b/docs/html/search/all_b.js @@ -1,13 +1,26 @@ var searchData= [ - ['neighbor_5fallgather_0',['neighbor_allgather',['../classmpl_1_1impl_1_1topology__communicator.html#a43c7b3d19a5af4ba0f30e40045a2e459',1,'mpl::impl::topology_communicator::neighbor_allgather(const T &senddata, T *recvdata) const'],['../classmpl_1_1impl_1_1topology__communicator.html#af3ce31d403e1e2c143acb593ca1b21c2',1,'mpl::impl::topology_communicator::neighbor_allgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const']]], - ['neighbor_5fallgatherv_1',['neighbor_allgatherv',['../classmpl_1_1impl_1_1topology__communicator.html#a377702be1b30166ad458fcef11b2c239',1,'mpl::impl::topology_communicator::neighbor_allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1impl_1_1topology__communicator.html#af5822b089b634a670a9f3cef6e37dcef',1,'mpl::impl::topology_communicator::neighbor_allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const']]], - ['neighbor_5falltoall_2',['neighbor_alltoall',['../classmpl_1_1impl_1_1topology__communicator.html#a03afcae482e770e40ca5df7ae77b29c6',1,'mpl::impl::topology_communicator::neighbor_alltoall(const T *senddata, T *recvdata) const'],['../classmpl_1_1impl_1_1topology__communicator.html#a455d8703c09913eebe31cd360351c308',1,'mpl::impl::topology_communicator::neighbor_alltoall(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const']]], - ['neighbor_5falltoallv_3',['neighbor_alltoallv',['../classmpl_1_1impl_1_1topology__communicator.html#ada2dc41f3f09788b9dd87be27981668a',1,'mpl::impl::topology_communicator::neighbor_alltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1impl_1_1topology__communicator.html#a54da0c73668349841c941c53c6acff81',1,'mpl::impl::topology_communicator::neighbor_alltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const']]], - ['neighbors_4',['neighbors',['../classmpl_1_1graph__communicator.html#ad517010b26940090a839b6ef0c3d95ad',1,'mpl::graph_communicator::neighbors(int rank) const'],['../classmpl_1_1graph__communicator.html#af39af30840dbd4cdefb3c91b96f80a40',1,'mpl::graph_communicator::neighbors() const']]], - ['neighbours_5fset_5',['neighbours_set',['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html',1,'mpl::distributed_graph_communicator::neighbours_set'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#aa7dded0f45c35d7c28a87e443ddac33f',1,'mpl::distributed_graph_communicator::neighbours_set::neighbours_set(std::initializer_list< value_type > init)'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#ac33e4cd06803a0e689a73d737a39f815',1,'mpl::distributed_graph_communicator::neighbours_set::neighbours_set()=default']]], - ['node_5flist_6',['node_list',['../classmpl_1_1graph__communicator_1_1node__list.html',1,'mpl::graph_communicator::node_list'],['../classmpl_1_1graph__communicator_1_1node__list.html#a9321529165dbf31bdacaed44c2c3bd89',1,'mpl::graph_communicator::node_list::node_list()=default'],['../classmpl_1_1graph__communicator_1_1node__list.html#a6705675a9a7343424dece2f056060f4a',1,'mpl::graph_communicator::node_list::node_list(int nodes)'],['../classmpl_1_1graph__communicator_1_1node__list.html#afe55816c0169408a56e42c412f04e86f',1,'mpl::graph_communicator::node_list::node_list(std::initializer_list< int > init)']]], - ['non_5fperiodic_7',['non_periodic',['../classmpl_1_1cartesian__communicator.html#a147f10d80cecd3078f3688c56a169a70',1,'mpl::cartesian_communicator::non_periodic()'],['../classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836aa688e8ffe09270eeb4eaf5ca79db24cd',1,'mpl::cartesian_communicator::non_periodic()']]], - ['null_5flayout_8',['null_layout',['../classmpl_1_1null__layout.html',1,'mpl::null_layout< T >'],['../classmpl_1_1null__layout.html#acac7c25a8345ee4860f372efb0528159',1,'mpl::null_layout::null_layout() noexcept'],['../classmpl_1_1null__layout.html#a1e3a1fc89a2e4cc97313b09613a19fbb',1,'mpl::null_layout::null_layout(const null_layout &l) noexcept'],['../classmpl_1_1null__layout.html#a870ae11bff01c96d3a71028826c8d477',1,'mpl::null_layout::null_layout(null_layout &&l) noexcept']]], - ['null_5flayout_3c_20t_20_3e_9',['null_layout< T >',['../classmpl_1_1layout.html#a297cff9dc710fa1e886d36a3db3fe53b',1,'mpl::layout']]] + ['obegin_0',['obegin',['../classmpl_1_1distributed__grid.html#ac2bb06d14b8dc3d305592b90be4b4245',1,'mpl::distributed_grid']]], + ['oend_1',['oend',['../classmpl_1_1distributed__grid.html#adb4997427246517519393e49049bebbd',1,'mpl::distributed_grid']]], + ['op_5ftraits_2',['op_traits',['../structmpl_1_1op__traits.html',1,'mpl']]], + ['op_5ftraits_3c_20bit_5fand_3c_20t_20_3e_20_3e_3',['op_traits< bit_and< T > >',['../structmpl_1_1op__traits_3_01bit__and_3_01_t_01_4_01_4.html',1,'mpl']]], + ['op_5ftraits_3c_20bit_5for_3c_20t_20_3e_20_3e_4',['op_traits< bit_or< T > >',['../structmpl_1_1op__traits_3_01bit__or_3_01_t_01_4_01_4.html',1,'mpl']]], + ['op_5ftraits_3c_20bit_5fxor_3c_20t_20_3e_20_3e_5',['op_traits< bit_xor< T > >',['../structmpl_1_1op__traits_3_01bit__xor_3_01_t_01_4_01_4.html',1,'mpl']]], + ['op_5ftraits_3c_20logical_5fand_3c_20t_20_3e_20_3e_6',['op_traits< logical_and< T > >',['../structmpl_1_1op__traits_3_01logical__and_3_01_t_01_4_01_4.html',1,'mpl']]], + ['op_5ftraits_3c_20logical_5for_3c_20t_20_3e_20_3e_7',['op_traits< logical_or< T > >',['../structmpl_1_1op__traits_3_01logical__or_3_01_t_01_4_01_4.html',1,'mpl']]], + ['op_5ftraits_3c_20logical_5fxor_3c_20t_20_3e_20_3e_8',['op_traits< logical_xor< T > >',['../structmpl_1_1op__traits_3_01logical__xor_3_01_t_01_4_01_4.html',1,'mpl']]], + ['op_5ftraits_3c_20max_3c_20t_20_3e_20_3e_9',['op_traits< max< T > >',['../structmpl_1_1op__traits_3_01max_3_01_t_01_4_01_4.html',1,'mpl']]], + ['op_5ftraits_3c_20min_3c_20t_20_3e_20_3e_10',['op_traits< min< T > >',['../structmpl_1_1op__traits_3_01min_3_01_t_01_4_01_4.html',1,'mpl']]], + ['op_5ftraits_3c_20multiplies_3c_20t_20_3e_20_3e_11',['op_traits< multiplies< T > >',['../structmpl_1_1op__traits_3_01multiplies_3_01_t_01_4_01_4.html',1,'mpl']]], + ['op_5ftraits_3c_20plus_3c_20t_20_3e_20_3e_12',['op_traits< plus< T > >',['../structmpl_1_1op__traits_3_01plus_3_01_t_01_4_01_4.html',1,'mpl']]], + ['operator_20int_13',['operator int',['../classmpl_1_1tag__t.html#a1946fdf44d007662a538252b11dc5d23',1,'mpl::tag_t']]], + ['operator_21_3d_14',['operator!=',['../classmpl_1_1communicator.html#aea3f30e3e33676cfbd8f3757082949cd',1,'mpl::communicator::operator!=()'],['../classmpl_1_1group.html#a3559e4d5efc98ec127fce7f3dc487291',1,'mpl::group::operator!=()']]], + ['operator_28_29_15',['operator()',['../classmpl_1_1local__grid.html#adee4f6ca84465120671ec7ab6f673ebf',1,'mpl::local_grid::operator()()'],['../classmpl_1_1ranks.html#acb6c3e3088cac56b8af02aeccf0d7a40',1,'mpl::ranks::operator()()'],['../classmpl_1_1ranks.html#a988be0bf88d82f0b34aa826d7ba82b44',1,'mpl::ranks::operator()() const'],['../structmpl_1_1bit__xor.html#a8d990747d97457d18652ac9a58e424fb',1,'mpl::bit_xor::operator()()'],['../structmpl_1_1bit__or.html#ab5a228ee19d0bfb34f9b239a85dc5eac',1,'mpl::bit_or::operator()()'],['../structmpl_1_1bit__and.html#a7133da51787910d7e6ca97be99782268',1,'mpl::bit_and::operator()()'],['../structmpl_1_1logical__xor.html#a66bb19d69956d437e42f8cbea11b8fb1',1,'mpl::logical_xor::operator()()'],['../structmpl_1_1logical__or.html#ad4f0f01a628867690d1fd9e4f265b681',1,'mpl::logical_or::operator()()'],['../structmpl_1_1logical__and.html#a41d77b4ab90b1d0363eb65dea6100d00',1,'mpl::logical_and::operator()()'],['../structmpl_1_1multiplies.html#a224ea72086f08b923bb32ac7ebf1704d',1,'mpl::multiplies::operator()()'],['../structmpl_1_1plus.html#a946a45253a41fb515c6d4cf467eeac41',1,'mpl::plus::operator()()'],['../structmpl_1_1min.html#a23b201ffe2013e1f55f1ea0cdc02e0f8',1,'mpl::min::operator()()'],['../structmpl_1_1max.html#a2908e4ec953dd58edf8079788bec51e0',1,'mpl::max::operator()()'],['../classmpl_1_1local__grid.html#acd9f95c3471b08a4dc3da723d6c121b3',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1, size_type i_2, size_type i_3)'],['../classmpl_1_1local__grid.html#a884c5dfdd939ad61fd2ad4de8d1c63fd',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1, size_type i_2)'],['../classmpl_1_1displacements.html#aa632306f2aadfee96b2842791d771cee',1,'mpl::displacements::operator()()'],['../classmpl_1_1distributed__grid.html#a87a2ba870110b8c294ecaaa25c79826f',1,'mpl::distributed_grid::operator()(size_type i_0)'],['../classmpl_1_1distributed__grid.html#a8f9854c65734629b85e7ea3ab69612ee',1,'mpl::distributed_grid::operator()(size_type i_0) const'],['../classmpl_1_1distributed__grid.html#a003cab421d434c154fc865a407cf60e8',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1)'],['../classmpl_1_1distributed__grid.html#aa726d934b2ec0b5479fdbe299cfa9a66',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1) const'],['../classmpl_1_1distributed__grid.html#a1627554f0a1f004b002b4437f31ffde1',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1, size_type i_2)'],['../classmpl_1_1distributed__grid.html#a1aeca17c53c962ae27ca0e24d976171e',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1, size_type i_2) const'],['../classmpl_1_1distributed__grid.html#a144e45f64ac0694660ba2891405bedf1',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1, size_type i_2, size_type i_3)'],['../classmpl_1_1distributed__grid.html#a39550233d58d0f53264b3f1bf5b3575b',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1, size_type i_2, size_type i_3) const'],['../classmpl_1_1local__grid.html#a213eb274680567cdcd292f5080f22e71',1,'mpl::local_grid::operator()(size_type i_0)'],['../classmpl_1_1local__grid.html#a17585fc73aba29fb6ab0e3d8022b25be',1,'mpl::local_grid::operator()(size_type i_0) const'],['../classmpl_1_1local__grid.html#a0bc2c3d68db9a67e6bd415c2c7d0131b',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1)'],['../classmpl_1_1local__grid.html#a6be0b3c4b9aced8db5d1a250a722a4bf',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1) const'],['../classmpl_1_1local__grid.html#aea49a8961c1544888e3d697614e76282',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1, size_type i_2) const']]], + ['operator_3d_16',['operator=',['../classmpl_1_1strided__vector__layout.html#aa9cbbcfed65d7a004c435b699ccd4d74',1,'mpl::strided_vector_layout::operator=(const strided_vector_layout< T > &l)=default'],['../classmpl_1_1strided__vector__layout.html#a9120a85b7377a2e625b0b0966164339f',1,'mpl::strided_vector_layout::operator=(strided_vector_layout< T > &&l) noexcept=default'],['../classmpl_1_1indexed__layout.html#a2ef13d7c3e8178574a15db51056df13e',1,'mpl::indexed_layout::operator=(const indexed_layout< T > &l)=default'],['../classmpl_1_1indexed__layout.html#a1b604ca3e6e607f1e7c33d771c88d275',1,'mpl::indexed_layout::operator=(indexed_layout< T > &&l) noexcept=default'],['../classmpl_1_1hindexed__layout.html#ae36e81cb6bbec4abe96e430e6d02f938',1,'mpl::hindexed_layout::operator=(const hindexed_layout< T > &l)=default'],['../classmpl_1_1hindexed__layout.html#a51e7ccbf3a8b3552c53d0624fbff10d3',1,'mpl::hindexed_layout::operator=(hindexed_layout< T > &&l) noexcept=default'],['../classmpl_1_1vector__layout.html#ab153f0de6c047fffe6adbf22b0a0efb1',1,'mpl::vector_layout::operator=()'],['../classmpl_1_1indexed__block__layout.html#a74478123f3da83ff60414e723836f46a',1,'mpl::indexed_block_layout::operator=(const indexed_block_layout< T > &l)=default'],['../classmpl_1_1indexed__block__layout.html#a0397342ecc9d8e57d7e7443971966e2c',1,'mpl::indexed_block_layout::operator=(indexed_block_layout< T > &&l) noexcept=default'],['../classmpl_1_1hindexed__block__layout.html#a9efe673232ce9180c2c96f0048da8187',1,'mpl::hindexed_block_layout::operator=(const hindexed_block_layout< T > &l)=default'],['../classmpl_1_1hindexed__block__layout.html#a9cedaad857c684ce5265110c6a9b82e5',1,'mpl::hindexed_block_layout::operator=(hindexed_block_layout< T > &&l) noexcept=default'],['../classmpl_1_1iterator__layout.html#ab8bedf7645837efd22d0197749e8eb8d',1,'mpl::iterator_layout::operator=(const iterator_layout< T > &l)=default'],['../classmpl_1_1iterator__layout.html#ac80c19464fd5b48ceb62ac7592619f32',1,'mpl::iterator_layout::operator=(iterator_layout< T > &&l) noexcept=default'],['../classmpl_1_1subarray__layout.html#a9d10a8cb6f0e530fd4d6677ed6a6e16d',1,'mpl::subarray_layout::operator=(const subarray_layout< T > &l)=default'],['../classmpl_1_1subarray__layout.html#adad3946bd689cb93da9fc1f182d17f37',1,'mpl::subarray_layout::operator=(subarray_layout< T > &&l) noexcept=default'],['../classmpl_1_1heterogeneous__layout.html#ada4aa6f3f64e5bd5519b36a5d80c780e',1,'mpl::heterogeneous_layout::operator=(const heterogeneous_layout &l)=default'],['../classmpl_1_1heterogeneous__layout.html#aa4701dfc7a4cb2402ed3484e87947be6',1,'mpl::heterogeneous_layout::operator=(heterogeneous_layout &&l) noexcept=default'],['../classmpl_1_1impl_1_1topology__communicator.html#a57de7fa3dd71c67ff0da9826c7ef0c71',1,'mpl::impl::topology_communicator::operator=()'],['../classmpl_1_1distributed__graph__communicator.html#ae4313c9f339d60a7c2fa1148a97626c9',1,'mpl::distributed_graph_communicator::operator=()'],['../classmpl_1_1bsend__buffer.html#aa14cb912c156e9dc34934131071163b7',1,'mpl::bsend_buffer::operator=()'],['../classmpl_1_1vector__layout.html#a7ac32dc6996968661dc9f4cd685b8d57',1,'mpl::vector_layout::operator=()'],['../classmpl_1_1cartesian__communicator.html#a404d0186a6e9cbbac0e79ae320eeb382',1,'mpl::cartesian_communicator::operator=(const cartesian_communicator &other) noexcept'],['../classmpl_1_1cartesian__communicator.html#a4800098a181afa4eff436bdfe9c11a44',1,'mpl::cartesian_communicator::operator=(cartesian_communicator &&other) noexcept'],['../classmpl_1_1group.html#a4ac9d08869779bc83b1603415421ab34',1,'mpl::group::operator=(const group &other)'],['../classmpl_1_1group.html#aaab91fd6a016fe57c053102d6c8f9bc4',1,'mpl::group::operator=(group &&other) noexcept'],['../classmpl_1_1communicator.html#ad583dab604376864ba373505b7f33911',1,'mpl::communicator::operator=(const communicator &other) noexcept'],['../classmpl_1_1communicator.html#a06c080c4492462cd582894a04191de56',1,'mpl::communicator::operator=(communicator &&other) noexcept'],['../classmpl_1_1distributed__graph__communicator.html#afe84efb5ffee5860ab38c3a4d87ec65a',1,'mpl::distributed_graph_communicator::operator=()'],['../classmpl_1_1bsend__buffer.html#a8e4d57e9746570efa124e919cd0de1d2',1,'mpl::bsend_buffer::operator=()'],['../classmpl_1_1graph__communicator.html#adce11d71ed0d0398316f5a5669b5bdbf',1,'mpl::graph_communicator::operator=(const graph_communicator &other) noexcept'],['../classmpl_1_1graph__communicator.html#a9c706fcf6770f01b69256c7f76c97222',1,'mpl::graph_communicator::operator=(graph_communicator &&other) noexcept'],['../classmpl_1_1layout.html#ada64a312d8d2032e9b1faef1ffca5dbd',1,'mpl::layout::operator=(const layout &l)'],['../classmpl_1_1layout.html#a057fa0a49c1133de3b41b8c5eefe576c',1,'mpl::layout::operator=(layout &&l) noexcept'],['../classmpl_1_1empty__layout.html#a1246ee522d696afa489afd98eae2437c',1,'mpl::empty_layout::operator=(const empty_layout< T > &l)=default'],['../classmpl_1_1empty__layout.html#a224759434f429819105ed1a4094e077c',1,'mpl::empty_layout::operator=(empty_layout< T > &&l) noexcept=default'],['../classmpl_1_1contiguous__layout.html#adb39eadffb6dbffe72480764ba486245',1,'mpl::contiguous_layout::operator=(const contiguous_layout< T > &l)'],['../classmpl_1_1contiguous__layout.html#ae982602643daa885058b55d85b463ee9',1,'mpl::contiguous_layout::operator=(contiguous_layout< T > &&l) noexcept']]], + ['operator_3d_3d_17',['operator==',['../classmpl_1_1communicator.html#a153a492a90432d228638e2548b2a65b5',1,'mpl::communicator::operator==()'],['../classmpl_1_1group.html#a1b3542e4a7d8cfcbf6bfc7ecb4905f4f',1,'mpl::group::operator==()']]], + ['operator_5b_5d_18',['operator[]',['../classmpl_1_1cartesian__communicator_1_1vector.html#a3d22ddb853627dcb5d33d690c28a44ac',1,'mpl::cartesian_communicator::vector::operator[]()'],['../classmpl_1_1graph__communicator_1_1node__list.html#aab4b2d09a2edf289b646510d0bf55eda',1,'mpl::graph_communicator::node_list::operator[](int index) const'],['../classmpl_1_1graph__communicator_1_1node__list.html#a5f60260b8bd1bdc7fe8c7b7945e27b8c',1,'mpl::graph_communicator::node_list::operator[](int index)'],['../classmpl_1_1local__grid_1_1dimensions.html#aa1cdf19eec6da42b29ce7fd4a3025364',1,'mpl::local_grid::dimensions::operator[](size_type dimension)'],['../classmpl_1_1local__grid_1_1dimensions.html#aa399ae6edba94e1a9c1ebe91d9b2d11e',1,'mpl::local_grid::dimensions::operator[](size_type dimension) const'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a9be7d0688024430750b7375e48f0ddb5',1,'mpl::distributed_grid::dimensions::operator[](size_type dimension)'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a894d21035df664610e1400581025ca7d',1,'mpl::distributed_grid::dimensions::operator[](size_type dimension) const'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a80fafe9770e980d59b9628564d4c74cd',1,'mpl::cartesian_communicator::dimensions::operator[](int dimension)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a786ec6e005db9b3beeadcc3ad8527d70',1,'mpl::cartesian_communicator::dimensions::operator[](int dimension) const'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a82a715985b94853367abcfb164082ac4',1,'mpl::cartesian_communicator::included_tags::operator[](int index) const'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a373c7869e0aa251e05fb578a2aea95e9',1,'mpl::cartesian_communicator::included_tags::operator[](int index)'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a20fb79f818b48bbc40b88adefae3734a',1,'mpl::cartesian_communicator::vector::operator[]()']]], + ['order_19',['order',['../classmpl_1_1subarray__layout_1_1parameter.html#a155ab0d9cb1eb40d8f8d7ae9fbc2bdca',1,'mpl::subarray_layout::parameter::order(array_orders new_order)'],['../classmpl_1_1subarray__layout_1_1parameter.html#a60f802b57d449678d80496b82c3751de',1,'mpl::subarray_layout::parameter::order() const']]], + ['out_5fdegree_20',['out_degree',['../classmpl_1_1distributed__graph__communicator.html#a5a8f9ed0c2035ded24a38989d75a5494',1,'mpl::distributed_graph_communicator']]], + ['out_5fneighbors_21',['out_neighbors',['../classmpl_1_1distributed__graph__communicator.html#a27a19494efdc8558802169947a8adeed',1,'mpl::distributed_graph_communicator']]], + ['overlap_22',['overlap',['../classmpl_1_1distributed__grid_1_1size__overlap__pair.html#ab24f528c5aef47d91274c9080da41a61',1,'mpl::distributed_grid::size_overlap_pair::overlap()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a67917c6df24d025069ae3d703edd69aa',1,'mpl::distributed_grid::dimensions::overlap()']]] ]; diff --git a/docs/html/search/all_c.js b/docs/html/search/all_c.js index d9062768..f79c0fd2 100644 --- a/docs/html/search/all_c.js +++ b/docs/html/search/all_c.js @@ -1,30 +1,12 @@ var searchData= [ - ['obegin_0',['obegin',['../classmpl_1_1distributed__grid.html#ac2bb06d14b8dc3d305592b90be4b4245',1,'mpl::distributed_grid']]], - ['oend_1',['oend',['../classmpl_1_1distributed__grid.html#adb4997427246517519393e49049bebbd',1,'mpl::distributed_grid']]], - ['op_5ftraits_2',['op_traits',['../structmpl_1_1op__traits.html',1,'mpl']]], - ['op_5ftraits_3c_20bit_5fand_3c_20t_20_3e_20_3e_3',['op_traits< bit_and< T > >',['../structmpl_1_1op__traits_3_01bit__and_3_01_t_01_4_01_4.html',1,'mpl']]], - ['op_5ftraits_3c_20bit_5for_3c_20t_20_3e_20_3e_4',['op_traits< bit_or< T > >',['../structmpl_1_1op__traits_3_01bit__or_3_01_t_01_4_01_4.html',1,'mpl']]], - ['op_5ftraits_3c_20bit_5fxor_3c_20t_20_3e_20_3e_5',['op_traits< bit_xor< T > >',['../structmpl_1_1op__traits_3_01bit__xor_3_01_t_01_4_01_4.html',1,'mpl']]], - ['op_5ftraits_3c_20logical_5fand_3c_20t_20_3e_20_3e_6',['op_traits< logical_and< T > >',['../structmpl_1_1op__traits_3_01logical__and_3_01_t_01_4_01_4.html',1,'mpl']]], - ['op_5ftraits_3c_20logical_5for_3c_20t_20_3e_20_3e_7',['op_traits< logical_or< T > >',['../structmpl_1_1op__traits_3_01logical__or_3_01_t_01_4_01_4.html',1,'mpl']]], - ['op_5ftraits_3c_20logical_5fxor_3c_20t_20_3e_20_3e_8',['op_traits< logical_xor< T > >',['../structmpl_1_1op__traits_3_01logical__xor_3_01_t_01_4_01_4.html',1,'mpl']]], - ['op_5ftraits_3c_20max_3c_20t_20_3e_20_3e_9',['op_traits< max< T > >',['../structmpl_1_1op__traits_3_01max_3_01_t_01_4_01_4.html',1,'mpl']]], - ['op_5ftraits_3c_20min_3c_20t_20_3e_20_3e_10',['op_traits< min< T > >',['../structmpl_1_1op__traits_3_01min_3_01_t_01_4_01_4.html',1,'mpl']]], - ['op_5ftraits_3c_20multiplies_3c_20t_20_3e_20_3e_11',['op_traits< multiplies< T > >',['../structmpl_1_1op__traits_3_01multiplies_3_01_t_01_4_01_4.html',1,'mpl']]], - ['op_5ftraits_3c_20plus_3c_20t_20_3e_20_3e_12',['op_traits< plus< T > >',['../structmpl_1_1op__traits_3_01plus_3_01_t_01_4_01_4.html',1,'mpl']]], - ['operator_20int_13',['operator int',['../classmpl_1_1tag__t.html#a1946fdf44d007662a538252b11dc5d23',1,'mpl::tag_t']]], - ['operator_21_3d_14',['operator!=',['../namespacempl.html#a79afe2e73335bd43c875005716304b89',1,'mpl::operator!=(tag_t t1, tag_t t2)'],['../namespacempl.html#af4c305e85a8670fe754351dd3f8366b7',1,'mpl::operator!=(const graph_communicator::node_list &l_1, const graph_communicator::node_list &l_2)'],['../namespacempl.html#ab242c0bf99fd03e51e406ee59b36ac4f',1,'mpl::operator!=(const distributed_graph_communicator::rank_weight_pair &pair_1, const distributed_graph_communicator::rank_weight_pair &pair_2)'],['../classmpl_1_1group.html#a3559e4d5efc98ec127fce7f3dc487291',1,'mpl::group::operator!=()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a5fbca5b71055f2b793ae1607239b13a0',1,'mpl::cartesian_communicator::dimensions::const_iterator::operator!=()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a55a8ee0e80dad1a7da9d751c25bc0386',1,'mpl::cartesian_communicator::dimensions::iterator::operator!=()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a1303b66cdd13a09584a89b44bff40d7a',1,'mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy::operator!=()'],['../classmpl_1_1communicator.html#aea3f30e3e33676cfbd8f3757082949cd',1,'mpl::communicator::operator!=()']]], - ['operator_28_29_15',['operator()',['../structmpl_1_1bit__or.html#ab5a228ee19d0bfb34f9b239a85dc5eac',1,'mpl::bit_or::operator()()'],['../classmpl_1_1local__grid.html#adee4f6ca84465120671ec7ab6f673ebf',1,'mpl::local_grid::operator()()'],['../structmpl_1_1max.html#a2908e4ec953dd58edf8079788bec51e0',1,'mpl::max::operator()()'],['../structmpl_1_1min.html#a23b201ffe2013e1f55f1ea0cdc02e0f8',1,'mpl::min::operator()()'],['../structmpl_1_1plus.html#a946a45253a41fb515c6d4cf467eeac41',1,'mpl::plus::operator()()'],['../structmpl_1_1multiplies.html#a224ea72086f08b923bb32ac7ebf1704d',1,'mpl::multiplies::operator()()'],['../structmpl_1_1logical__and.html#a41d77b4ab90b1d0363eb65dea6100d00',1,'mpl::logical_and::operator()()'],['../structmpl_1_1logical__xor.html#a66bb19d69956d437e42f8cbea11b8fb1',1,'mpl::logical_xor::operator()()'],['../structmpl_1_1bit__and.html#a7133da51787910d7e6ca97be99782268',1,'mpl::bit_and::operator()()'],['../structmpl_1_1bit__xor.html#a8d990747d97457d18652ac9a58e424fb',1,'mpl::bit_xor::operator()()'],['../classmpl_1_1ranks.html#a988be0bf88d82f0b34aa826d7ba82b44',1,'mpl::ranks::operator()() const'],['../classmpl_1_1ranks.html#acb6c3e3088cac56b8af02aeccf0d7a40',1,'mpl::ranks::operator()()'],['../structmpl_1_1logical__or.html#ad4f0f01a628867690d1fd9e4f265b681',1,'mpl::logical_or::operator()()'],['../classmpl_1_1distributed__grid.html#a144e45f64ac0694660ba2891405bedf1',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1, size_type i_2, size_type i_3)'],['../classmpl_1_1distributed__grid.html#a003cab421d434c154fc865a407cf60e8',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1)'],['../classmpl_1_1distributed__grid.html#a8f9854c65734629b85e7ea3ab69612ee',1,'mpl::distributed_grid::operator()(size_type i_0) const'],['../classmpl_1_1distributed__grid.html#a87a2ba870110b8c294ecaaa25c79826f',1,'mpl::distributed_grid::operator()(size_type i_0)'],['../classmpl_1_1displacements.html#aa632306f2aadfee96b2842791d771cee',1,'mpl::displacements::operator()()'],['../classmpl_1_1distributed__grid.html#aa726d934b2ec0b5479fdbe299cfa9a66',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1) const'],['../classmpl_1_1distributed__grid.html#a1627554f0a1f004b002b4437f31ffde1',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1, size_type i_2)'],['../classmpl_1_1distributed__grid.html#a1aeca17c53c962ae27ca0e24d976171e',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1, size_type i_2) const'],['../classmpl_1_1distributed__grid.html#a39550233d58d0f53264b3f1bf5b3575b',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1, size_type i_2, size_type i_3) const'],['../classmpl_1_1local__grid.html#a213eb274680567cdcd292f5080f22e71',1,'mpl::local_grid::operator()(size_type i_0)'],['../classmpl_1_1local__grid.html#acd9f95c3471b08a4dc3da723d6c121b3',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1, size_type i_2, size_type i_3)'],['../classmpl_1_1local__grid.html#a17585fc73aba29fb6ab0e3d8022b25be',1,'mpl::local_grid::operator()(size_type i_0) const'],['../classmpl_1_1local__grid.html#a0bc2c3d68db9a67e6bd415c2c7d0131b',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1)'],['../classmpl_1_1local__grid.html#a6be0b3c4b9aced8db5d1a250a722a4bf',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1) const'],['../classmpl_1_1local__grid.html#a884c5dfdd939ad61fd2ad4de8d1c63fd',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1, size_type i_2)'],['../classmpl_1_1local__grid.html#aea49a8961c1544888e3d697614e76282',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1, size_type i_2) const']]], - ['operator_2a_16',['operator*',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#aef35daadcb5e7c9292367318d1e4ad2a',1,'mpl::cartesian_communicator::dimensions::iterator::operator*()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a96670119c07635bab19f68b1c865c0a7',1,'mpl::cartesian_communicator::dimensions::const_iterator::operator*() const']]], - ['operator_2b_2b_17',['operator++',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a0749daf0892e8c7c0d5b5da5bc8d0749',1,'mpl::cartesian_communicator::dimensions::const_iterator::operator++()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a9cc5ab905da7e4568ca31d9d7034992a',1,'mpl::cartesian_communicator::dimensions::const_iterator::operator++(int)'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#acb32b214c2b2a45fd4d770f2f32d414a',1,'mpl::cartesian_communicator::dimensions::iterator::operator++(int)'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#ac2db8b996b26b13b844e0f715f1eee3f',1,'mpl::cartesian_communicator::dimensions::iterator::operator++()']]], - ['operator_3c_3c_18',['operator<<',['../namespacempl.html#a6aabc6191f8b6e463e4c283f7b05985a',1,'mpl']]], - ['operator_3d_19',['operator=',['../classmpl_1_1indexed__block__layout.html#a74478123f3da83ff60414e723836f46a',1,'mpl::indexed_block_layout::operator=(const indexed_block_layout< T > &l)=default'],['../classmpl_1_1indexed__block__layout.html#a0397342ecc9d8e57d7e7443971966e2c',1,'mpl::indexed_block_layout::operator=(indexed_block_layout< T > &&l) noexcept=default'],['../classmpl_1_1hindexed__block__layout.html#a9efe673232ce9180c2c96f0048da8187',1,'mpl::hindexed_block_layout::operator=(const hindexed_block_layout< T > &l)=default'],['../classmpl_1_1hindexed__block__layout.html#a9cedaad857c684ce5265110c6a9b82e5',1,'mpl::hindexed_block_layout::operator=(hindexed_block_layout< T > &&l) noexcept=default'],['../classmpl_1_1iterator__layout.html#ab8bedf7645837efd22d0197749e8eb8d',1,'mpl::iterator_layout::operator=(const iterator_layout< T > &l)=default'],['../classmpl_1_1iterator__layout.html#ac80c19464fd5b48ceb62ac7592619f32',1,'mpl::iterator_layout::operator=(iterator_layout< T > &&l) noexcept=default'],['../classmpl_1_1subarray__layout.html#a9d10a8cb6f0e530fd4d6677ed6a6e16d',1,'mpl::subarray_layout::operator=(const subarray_layout< T > &l)=default'],['../classmpl_1_1subarray__layout.html#adad3946bd689cb93da9fc1f182d17f37',1,'mpl::subarray_layout::operator=(subarray_layout< T > &&l) noexcept=default'],['../classmpl_1_1heterogeneous__layout.html#ada4aa6f3f64e5bd5519b36a5d80c780e',1,'mpl::heterogeneous_layout::operator=(const heterogeneous_layout &l)=default'],['../classmpl_1_1heterogeneous__layout.html#aa4701dfc7a4cb2402ed3484e87947be6',1,'mpl::heterogeneous_layout::operator=(heterogeneous_layout &&l) noexcept=default'],['../classmpl_1_1impl_1_1request.html#a33283c16ad83120ba14976a109ee9040',1,'mpl::impl::request::operator=(const request &)=delete'],['../classmpl_1_1impl_1_1request.html#a89cc002a4f4c608d7ecdc3ef03fa575a',1,'mpl::impl::request::operator=(request &&other) noexcept'],['../classmpl_1_1impl_1_1request__pool.html#ade8d3d85e937db0607a6da284d290891',1,'mpl::impl::request_pool::operator=(const request_pool &)=delete'],['../classmpl_1_1impl_1_1request__pool.html#aad75fcd95d200f87043b6bf59074f5e2',1,'mpl::impl::request_pool::operator=(request_pool &&other) noexcept'],['../classmpl_1_1irequest.html#af5b70e2988f99a85b17ce3e4f80fee36',1,'mpl::irequest::operator=(const irequest &)=delete'],['../classmpl_1_1irequest.html#afc1a5562cbe2971ed389b6733dfd551e',1,'mpl::irequest::operator=(irequest &&other) noexcept'],['../classmpl_1_1irequest__pool.html#a79a2d05644a537414fdfdb90de9dd7ab',1,'mpl::irequest_pool::operator=(const irequest_pool &)=delete'],['../classmpl_1_1irequest__pool.html#aed3ca89d2b316935ff07d39fb0f6be61',1,'mpl::irequest_pool::operator=(irequest_pool &&other) noexcept'],['../classmpl_1_1prequest.html#ac73e55bc09c70db84fd4a32f9aa986d5',1,'mpl::prequest::operator=(const prequest &)=delete'],['../classmpl_1_1prequest.html#a9b969f7e70507186466267e3fb029e09',1,'mpl::prequest::operator=(prequest &&other) noexcept'],['../classmpl_1_1prequest__pool.html#a4335e6cb787ded0e1ec4616460107eb0',1,'mpl::prequest_pool::operator=(const prequest_pool &)=delete'],['../classmpl_1_1prequest__pool.html#a837cce36fab3191a0239a1aab47dc752',1,'mpl::prequest_pool::operator=(prequest_pool &&other) noexcept'],['../classmpl_1_1impl_1_1topology__communicator.html#a57de7fa3dd71c67ff0da9826c7ef0c71',1,'mpl::impl::topology_communicator::operator=()'],['../classmpl_1_1layout.html#ada64a312d8d2032e9b1faef1ffca5dbd',1,'mpl::layout::operator=()'],['../classmpl_1_1bsend__buffer.html#aa14cb912c156e9dc34934131071163b7',1,'mpl::bsend_buffer::operator=()'],['../classmpl_1_1group.html#a4ac9d08869779bc83b1603415421ab34',1,'mpl::group::operator=()'],['../classmpl_1_1cartesian__communicator.html#a4800098a181afa4eff436bdfe9c11a44',1,'mpl::cartesian_communicator::operator=(cartesian_communicator &&other) noexcept'],['../classmpl_1_1cartesian__communicator.html#a404d0186a6e9cbbac0e79ae320eeb382',1,'mpl::cartesian_communicator::operator=(const cartesian_communicator &other) noexcept'],['../classmpl_1_1hindexed__layout.html#a51e7ccbf3a8b3552c53d0624fbff10d3',1,'mpl::hindexed_layout::operator=()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a3353907d5c2825712c2a80362a891f52',1,'mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy::operator=()'],['../classmpl_1_1group.html#aaab91fd6a016fe57c053102d6c8f9bc4',1,'mpl::group::operator=()'],['../classmpl_1_1communicator.html#ad583dab604376864ba373505b7f33911',1,'mpl::communicator::operator=(const communicator &other) noexcept'],['../classmpl_1_1communicator.html#a06c080c4492462cd582894a04191de56',1,'mpl::communicator::operator=(communicator &&other) noexcept'],['../classmpl_1_1base__struct__builder.html#a89fee93a94ed5fe7d423733cb3ba4224',1,'mpl::base_struct_builder::operator=()'],['../classmpl_1_1distributed__graph__communicator.html#ae4313c9f339d60a7c2fa1148a97626c9',1,'mpl::distributed_graph_communicator::operator=(const distributed_graph_communicator &other) noexcept'],['../classmpl_1_1distributed__graph__communicator.html#afe84efb5ffee5860ab38c3a4d87ec65a',1,'mpl::distributed_graph_communicator::operator=(distributed_graph_communicator &&other) noexcept'],['../classmpl_1_1bsend__buffer.html#a8e4d57e9746570efa124e919cd0de1d2',1,'mpl::bsend_buffer::operator=()'],['../classmpl_1_1graph__communicator.html#adce11d71ed0d0398316f5a5669b5bdbf',1,'mpl::graph_communicator::operator=()'],['../classmpl_1_1vector__layout.html#ab153f0de6c047fffe6adbf22b0a0efb1',1,'mpl::vector_layout::operator=()'],['../classmpl_1_1hindexed__layout.html#ae36e81cb6bbec4abe96e430e6d02f938',1,'mpl::hindexed_layout::operator=()'],['../classmpl_1_1indexed__layout.html#a1b604ca3e6e607f1e7c33d771c88d275',1,'mpl::indexed_layout::operator=(indexed_layout< T > &&l) noexcept=default'],['../classmpl_1_1indexed__layout.html#a2ef13d7c3e8178574a15db51056df13e',1,'mpl::indexed_layout::operator=(const indexed_layout< T > &l)=default'],['../classmpl_1_1strided__vector__layout.html#a9120a85b7377a2e625b0b0966164339f',1,'mpl::strided_vector_layout::operator=(strided_vector_layout< T > &&l) noexcept=default'],['../classmpl_1_1strided__vector__layout.html#aa9cbbcfed65d7a004c435b699ccd4d74',1,'mpl::strided_vector_layout::operator=(const strided_vector_layout< T > &l)=default'],['../classmpl_1_1graph__communicator.html#a9c706fcf6770f01b69256c7f76c97222',1,'mpl::graph_communicator::operator=()'],['../classmpl_1_1vector__layout.html#a7ac32dc6996968661dc9f4cd685b8d57',1,'mpl::vector_layout::operator=()'],['../classmpl_1_1contiguous__layout.html#ae982602643daa885058b55d85b463ee9',1,'mpl::contiguous_layout::operator=(contiguous_layout< T > &&l) noexcept'],['../classmpl_1_1contiguous__layout.html#adb39eadffb6dbffe72480764ba486245',1,'mpl::contiguous_layout::operator=(const contiguous_layout< T > &l)'],['../classmpl_1_1empty__layout.html#a224759434f429819105ed1a4094e077c',1,'mpl::empty_layout::operator=(empty_layout< T > &&l) noexcept=default'],['../classmpl_1_1empty__layout.html#a1246ee522d696afa489afd98eae2437c',1,'mpl::empty_layout::operator=(const empty_layout< T > &l)=default'],['../classmpl_1_1layout.html#a057fa0a49c1133de3b41b8c5eefe576c',1,'mpl::layout::operator=()']]], - ['operator_3d_3d_20',['operator==',['../namespacempl.html#ab82856a9a5264addefc5e436a19e3565',1,'mpl::operator==(tag_t t1, tag_t t2)'],['../namespacempl.html#a39c14458a8b289cc73bce2e2e156783b',1,'mpl::operator==(const graph_communicator::node_list &l_1, const graph_communicator::node_list &l_2)'],['../namespacempl.html#a9593329c5b9cc66fdf2defd6f2e00431',1,'mpl::operator==(const distributed_graph_communicator::rank_weight_pair &pair_1, const distributed_graph_communicator::rank_weight_pair &pair_2)'],['../classmpl_1_1communicator.html#a153a492a90432d228638e2548b2a65b5',1,'mpl::communicator::operator==()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a4fcb9247987978603e60fafd6b1b0efc',1,'mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy::operator==()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a81d10d7799462c7ca5e7cf19119ca356',1,'mpl::cartesian_communicator::dimensions::iterator::operator==()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#ab0ac7de651351823aece097eb3be1cfb',1,'mpl::cartesian_communicator::dimensions::const_iterator::operator==()'],['../classmpl_1_1group.html#a1b3542e4a7d8cfcbf6bfc7ecb4905f4f',1,'mpl::group::operator==()']]], - ['operator_3e_3e_21',['operator>>',['../namespacempl.html#a700cde8da9a9d5af915974f05b9863b4',1,'mpl']]], - ['operator_5b_5d_22',['operator[]',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a786ec6e005db9b3beeadcc3ad8527d70',1,'mpl::cartesian_communicator::dimensions::operator[]()'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a3d22ddb853627dcb5d33d690c28a44ac',1,'mpl::cartesian_communicator::vector::operator[](int index)'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a20fb79f818b48bbc40b88adefae3734a',1,'mpl::cartesian_communicator::vector::operator[](int index) const'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a373c7869e0aa251e05fb578a2aea95e9',1,'mpl::cartesian_communicator::included_tags::operator[]()'],['../classmpl_1_1graph__communicator_1_1node__list.html#aab4b2d09a2edf289b646510d0bf55eda',1,'mpl::graph_communicator::node_list::operator[](int index) const'],['../classmpl_1_1graph__communicator_1_1node__list.html#a5f60260b8bd1bdc7fe8c7b7945e27b8c',1,'mpl::graph_communicator::node_list::operator[](int index)'],['../classmpl_1_1local__grid_1_1dimensions.html#aa1cdf19eec6da42b29ce7fd4a3025364',1,'mpl::local_grid::dimensions::operator[](size_type dimension)'],['../classmpl_1_1local__grid_1_1dimensions.html#aa399ae6edba94e1a9c1ebe91d9b2d11e',1,'mpl::local_grid::dimensions::operator[](size_type dimension) const'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a9be7d0688024430750b7375e48f0ddb5',1,'mpl::distributed_grid::dimensions::operator[](size_type dimension)'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a894d21035df664610e1400581025ca7d',1,'mpl::distributed_grid::dimensions::operator[](size_type dimension) const'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a80fafe9770e980d59b9628564d4c74cd',1,'mpl::cartesian_communicator::dimensions::operator[]()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a82a715985b94853367abcfb164082ac4',1,'mpl::cartesian_communicator::included_tags::operator[]()']]], - ['order_23',['order',['../classmpl_1_1subarray__layout_1_1parameter.html#a155ab0d9cb1eb40d8f8d7ae9fbc2bdca',1,'mpl::subarray_layout::parameter::order(array_orders new_order)'],['../classmpl_1_1subarray__layout_1_1parameter.html#a60f802b57d449678d80496b82c3751de',1,'mpl::subarray_layout::parameter::order() const']]], - ['out_5fdegree_24',['out_degree',['../classmpl_1_1distributed__graph__communicator.html#a5a8f9ed0c2035ded24a38989d75a5494',1,'mpl::distributed_graph_communicator']]], - ['out_5fneighbors_25',['out_neighbors',['../classmpl_1_1distributed__graph__communicator.html#a27a19494efdc8558802169947a8adeed',1,'mpl::distributed_graph_communicator']]], - ['overlap_26',['overlap',['../classmpl_1_1distributed__grid_1_1size__overlap__pair.html#ab24f528c5aef47d91274c9080da41a61',1,'mpl::distributed_grid::size_overlap_pair::overlap()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a67917c6df24d025069ae3d703edd69aa',1,'mpl::distributed_grid::dimensions::overlap()']]] + ['parameter_0',['parameter',['../classmpl_1_1heterogeneous__layout_1_1parameter.html',1,'mpl::heterogeneous_layout::parameter'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html',1,'mpl::hindexed_block_layout< T >::parameter'],['../classmpl_1_1hindexed__layout_1_1parameter.html',1,'mpl::hindexed_layout< T >::parameter'],['../classmpl_1_1indexed__block__layout_1_1parameter.html',1,'mpl::indexed_block_layout< T >::parameter'],['../classmpl_1_1indexed__layout_1_1parameter.html',1,'mpl::indexed_layout< T >::parameter'],['../classmpl_1_1iterator__layout_1_1parameter.html',1,'mpl::iterator_layout< T >::parameter'],['../classmpl_1_1subarray__layout_1_1parameter.html',1,'mpl::subarray_layout< T >::parameter'],['../classmpl_1_1indexed__block__layout_1_1parameter.html#a4b2073a35551d6b746134e15f19dbbc5',1,'mpl::indexed_block_layout::parameter::parameter(const List_T &list)'],['../classmpl_1_1indexed__block__layout_1_1parameter.html#a5bb1c084eb68e977508c6982b270af5b',1,'mpl::indexed_block_layout::parameter::parameter(std::initializer_list< int > list)'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html#a5577f0cc7963c4a58195922e1da85403',1,'mpl::hindexed_block_layout::parameter::parameter()=default'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html#ac31e4f491add1a9bad604b9c8303d3a3',1,'mpl::hindexed_block_layout::parameter::parameter(const List_T &list)'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html#ada60546fd361cd67a04fe083a5c09f35',1,'mpl::hindexed_block_layout::parameter::parameter(std::initializer_list< ssize_t > list)'],['../classmpl_1_1iterator__layout_1_1parameter.html#a8b9b1dcef19978283dcebf2d03cd727d',1,'mpl::iterator_layout::parameter::parameter()=default'],['../classmpl_1_1iterator__layout_1_1parameter.html#a379a502823866a2428a10702c4e30d20',1,'mpl::iterator_layout::parameter::parameter(iter_T first, iter_T last)'],['../classmpl_1_1subarray__layout_1_1parameter.html#aac6ad3727ba7277233e52e96cb28ffbf',1,'mpl::subarray_layout::parameter::parameter()=default'],['../classmpl_1_1subarray__layout_1_1parameter.html#a0db1e2fb063f6a67012b961fcd199170',1,'mpl::subarray_layout::parameter::parameter(const List_T &V)'],['../classmpl_1_1subarray__layout_1_1parameter.html#a77ad6bab244fed5453132ca9a5ac3c6c',1,'mpl::subarray_layout::parameter::parameter(std::initializer_list< std::array< int, 3 > > list)'],['../classmpl_1_1heterogeneous__layout_1_1parameter.html#a513ff59ef3a4f879b4505410e428147d',1,'mpl::heterogeneous_layout::parameter::parameter()=default'],['../classmpl_1_1heterogeneous__layout_1_1parameter.html#a3e6002677c2e8ffdeba903453ff6120f',1,'mpl::heterogeneous_layout::parameter::parameter(const Ts &...xs)'],['../classmpl_1_1hindexed__layout_1_1parameter.html#a137203f563366d04c169371675dba0ea',1,'mpl::hindexed_layout::parameter::parameter(std::initializer_list< std::tuple< int, ssize_t > > list)'],['../classmpl_1_1hindexed__layout_1_1parameter.html#ab8f9a7e2e4c17f1cd55ad7f268fc7ac0',1,'mpl::hindexed_layout::parameter::parameter(const List_T &list)'],['../classmpl_1_1hindexed__layout_1_1parameter.html#ac1f84b65ffbb428a02e099c7e7b1b16a',1,'mpl::hindexed_layout::parameter::parameter()=default'],['../classmpl_1_1indexed__layout_1_1parameter.html#a663702e0127ea25518e32acbbf95c7c9',1,'mpl::indexed_layout::parameter::parameter(std::initializer_list< std::tuple< int, int > > list)'],['../classmpl_1_1indexed__layout_1_1parameter.html#a6062daa18018ab29118a60a86bf54937',1,'mpl::indexed_layout::parameter::parameter(const List_T &list)'],['../classmpl_1_1indexed__layout_1_1parameter.html#a200ede70b91a8a0ef5cf50cfa52e8635',1,'mpl::indexed_layout::parameter::parameter()=default'],['../classmpl_1_1indexed__block__layout_1_1parameter.html#a702595e25a34275d3057c27dae064688',1,'mpl::indexed_block_layout::parameter::parameter()']]], + ['periodic_1',['periodic',['../classmpl_1_1cartesian__communicator.html#acec10c2952506fd723880a5f81ab8100',1,'mpl::cartesian_communicator::periodic()'],['../classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836ae6ffdec5e14fce371eb7ae99edebbbee',1,'mpl::cartesian_communicator::periodic()']]], + ['periodicity_2',['periodicity',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#ae4711dea9668fee29fd5e6fc2cc72a6f',1,'mpl::cartesian_communicator::dimensions']]], + ['periodicity_5ftag_3',['periodicity_tag',['../classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836',1,'mpl::cartesian_communicator']]], + ['plus_4',['plus',['../structmpl_1_1plus.html',1,'mpl']]], + ['pointer_5',['pointer',['../classmpl_1_1local__grid.html#afbdae75370bc044bbb0f0f8ce22c4544',1,'mpl::local_grid::pointer()'],['../classmpl_1_1distributed__grid.html#a67abfe92a3bb5d4cf1708297a2e7343d',1,'mpl::distributed_grid::pointer()']]], + ['prequest_6',['prequest',['../classmpl_1_1impl_1_1prequest.html',1,'mpl::impl::prequest'],['../classmpl_1_1prequest.html',1,'mpl::prequest']]], + ['prequest_5fpool_7',['prequest_pool',['../classmpl_1_1prequest__pool.html',1,'mpl']]], + ['probe_8',['probe',['../classmpl_1_1communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f',1,'mpl::communicator']]] ]; diff --git a/docs/html/search/all_d.js b/docs/html/search/all_d.js index 01d89500..a6e1b73b 100644 --- a/docs/html/search/all_d.js +++ b/docs/html/search/all_d.js @@ -1,15 +1,25 @@ var searchData= [ - ['parameter_0',['parameter',['../classmpl_1_1heterogeneous__layout_1_1parameter.html',1,'mpl::heterogeneous_layout::parameter'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html',1,'mpl::hindexed_block_layout< T >::parameter'],['../classmpl_1_1hindexed__layout_1_1parameter.html',1,'mpl::hindexed_layout< T >::parameter'],['../classmpl_1_1indexed__block__layout_1_1parameter.html',1,'mpl::indexed_block_layout< T >::parameter'],['../classmpl_1_1indexed__layout_1_1parameter.html',1,'mpl::indexed_layout< T >::parameter'],['../classmpl_1_1iterator__layout_1_1parameter.html',1,'mpl::iterator_layout< T >::parameter'],['../classmpl_1_1subarray__layout_1_1parameter.html',1,'mpl::subarray_layout< T >::parameter'],['../classmpl_1_1indexed__block__layout_1_1parameter.html#a5bb1c084eb68e977508c6982b270af5b',1,'mpl::indexed_block_layout::parameter::parameter()'],['../classmpl_1_1iterator__layout_1_1parameter.html#a379a502823866a2428a10702c4e30d20',1,'mpl::iterator_layout::parameter::parameter()'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html#a5577f0cc7963c4a58195922e1da85403',1,'mpl::hindexed_block_layout::parameter::parameter()=default'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html#ac31e4f491add1a9bad604b9c8303d3a3',1,'mpl::hindexed_block_layout::parameter::parameter(const List_T &list)'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html#ada60546fd361cd67a04fe083a5c09f35',1,'mpl::hindexed_block_layout::parameter::parameter(std::initializer_list< ssize_t > list)'],['../classmpl_1_1iterator__layout_1_1parameter.html#a8b9b1dcef19978283dcebf2d03cd727d',1,'mpl::iterator_layout::parameter::parameter()'],['../classmpl_1_1subarray__layout_1_1parameter.html#aac6ad3727ba7277233e52e96cb28ffbf',1,'mpl::subarray_layout::parameter::parameter()=default'],['../classmpl_1_1subarray__layout_1_1parameter.html#a0db1e2fb063f6a67012b961fcd199170',1,'mpl::subarray_layout::parameter::parameter(const List_T &V)'],['../classmpl_1_1subarray__layout_1_1parameter.html#a77ad6bab244fed5453132ca9a5ac3c6c',1,'mpl::subarray_layout::parameter::parameter(std::initializer_list< std::array< int, 3 > > list)'],['../classmpl_1_1heterogeneous__layout_1_1parameter.html#a513ff59ef3a4f879b4505410e428147d',1,'mpl::heterogeneous_layout::parameter::parameter()=default'],['../classmpl_1_1heterogeneous__layout_1_1parameter.html#a3e6002677c2e8ffdeba903453ff6120f',1,'mpl::heterogeneous_layout::parameter::parameter(const Ts &...xs)'],['../classmpl_1_1indexed__block__layout_1_1parameter.html#a702595e25a34275d3057c27dae064688',1,'mpl::indexed_block_layout::parameter::parameter()'],['../classmpl_1_1hindexed__layout_1_1parameter.html#a137203f563366d04c169371675dba0ea',1,'mpl::hindexed_layout::parameter::parameter(std::initializer_list< std::tuple< int, ssize_t > > list)'],['../classmpl_1_1hindexed__layout_1_1parameter.html#ab8f9a7e2e4c17f1cd55ad7f268fc7ac0',1,'mpl::hindexed_layout::parameter::parameter(const List_T &list)'],['../classmpl_1_1hindexed__layout_1_1parameter.html#ac1f84b65ffbb428a02e099c7e7b1b16a',1,'mpl::hindexed_layout::parameter::parameter()=default'],['../classmpl_1_1indexed__layout_1_1parameter.html#a663702e0127ea25518e32acbbf95c7c9',1,'mpl::indexed_layout::parameter::parameter(std::initializer_list< std::tuple< int, int > > list)'],['../classmpl_1_1indexed__layout_1_1parameter.html#a6062daa18018ab29118a60a86bf54937',1,'mpl::indexed_layout::parameter::parameter(const List_T &list)'],['../classmpl_1_1indexed__layout_1_1parameter.html#a200ede70b91a8a0ef5cf50cfa52e8635',1,'mpl::indexed_layout::parameter::parameter()=default'],['../classmpl_1_1indexed__block__layout_1_1parameter.html#a4b2073a35551d6b746134e15f19dbbc5',1,'mpl::indexed_block_layout::parameter::parameter()']]], - ['periodic_1',['periodic',['../classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836ae6ffdec5e14fce371eb7ae99edebbbee',1,'mpl::cartesian_communicator::periodic()'],['../classmpl_1_1cartesian__communicator.html#acec10c2952506fd723880a5f81ab8100',1,'mpl::cartesian_communicator::periodic()']]], - ['periodicity_2',['periodicity',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#ae4711dea9668fee29fd5e6fc2cc72a6f',1,'mpl::cartesian_communicator::dimensions']]], - ['periodicity_5ftag_3',['periodicity_tag',['../classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836',1,'mpl::cartesian_communicator']]], - ['plus_4',['plus',['../structmpl_1_1plus.html',1,'mpl']]], - ['pointer_5',['pointer',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a3cf701146a093e49ac1906d9969f7a79',1,'mpl::cartesian_communicator::dimensions::iterator::pointer()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a32dd93ebdc5b3f3c1379c8555dc266a1',1,'mpl::cartesian_communicator::dimensions::const_iterator::pointer()'],['../classmpl_1_1distributed__grid.html#a67abfe92a3bb5d4cf1708297a2e7343d',1,'mpl::distributed_grid::pointer()'],['../classmpl_1_1local__grid.html#afbdae75370bc044bbb0f0f8ce22c4544',1,'mpl::local_grid::pointer()']]], - ['prequest_6',['prequest',['../classmpl_1_1impl_1_1prequest.html',1,'mpl::impl::prequest'],['../classmpl_1_1prequest.html',1,'mpl::prequest'],['../classmpl_1_1prequest.html#a458628a7d368a6ac066e1c0d72a1ae1a',1,'mpl::prequest::prequest(const impl::prequest &r)'],['../classmpl_1_1prequest.html#a3fb481bf82af15bc42066ee8691eb6a4',1,'mpl::prequest::prequest(prequest &&r) noexcept'],['../classmpl_1_1prequest.html#a8b93ba9394c9577c518b467a77c6c1bb',1,'mpl::prequest::prequest(const prequest &)=delete'],['../classmpl_1_1impl_1_1prequest.html#af3844c4d36b3642909a2d6ce76794fd5',1,'mpl::impl::prequest::prequest()']]], - ['prequest_5fpool_7',['prequest_pool',['../classmpl_1_1prequest__pool.html',1,'mpl::prequest_pool'],['../classmpl_1_1prequest__pool.html#a3a5407de7b96fd18fac2bfed66ce2340',1,'mpl::prequest_pool::prequest_pool()=default'],['../classmpl_1_1prequest__pool.html#a5488a23548717d84d691fd0e35df7eed',1,'mpl::prequest_pool::prequest_pool(prequest_pool &&r) noexcept']]], - ['probe_8',['probe',['../classmpl_1_1communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f',1,'mpl::communicator']]], - ['proc_5fnull_9',['proc_null',['../namespacempl.html#a50a0f0b35e2150b88de70497e424ab4c',1,'mpl']]], - ['processor_5fname_10',['processor_name',['../namespacempl_1_1environment.html#a89bda4aaa36251049ffdecdbe79a4322',1,'mpl::environment']]], - ['push_11',['push',['../classmpl_1_1impl_1_1request__pool.html#a9b2ce42dc5ec15f8875673e07f6d77bf',1,'mpl::impl::request_pool']]] + ['rank_0',['rank',['../classmpl_1_1cartesian__communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789',1,'mpl::cartesian_communicator::rank()'],['../classmpl_1_1communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789',1,'mpl::communicator::rank()'],['../classmpl_1_1group.html#ac820bf356be8b94134cb08f8efa087ba',1,'mpl::group::rank()'],['../classmpl_1_1cartesian__communicator.html#a417ae78d850eca389dcc1a7ed5a4804f',1,'mpl::cartesian_communicator::rank()']]], + ['rank_5fweight_5fpair_1',['rank_weight_pair',['../classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html',1,'mpl::distributed_graph_communicator::rank_weight_pair'],['../classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#a26f5274dd9650e3feb1c245e4560bb19',1,'mpl::distributed_graph_communicator::rank_weight_pair::rank_weight_pair()']]], + ['ranks_2',['ranks',['../classmpl_1_1ranks.html',1,'mpl::ranks'],['../classmpl_1_1ranks.html#a26a4953810763dec408121b213b8d9ee',1,'mpl::ranks::ranks(size_type n=0)'],['../classmpl_1_1ranks.html#a78f75166b8370635c0e845452599db80',1,'mpl::ranks::ranks(std::initializer_list< int > init)'],['../classmpl_1_1ranks.html#a5a849ed7e37368988037974e10bdfd81',1,'mpl::ranks::ranks(const ranks &other)=default'],['../classmpl_1_1ranks.html#a1fbed6a868f8b6c5e64cbbf09143e26f',1,'mpl::ranks::ranks(ranks &&other) noexcept']]], + ['recv_3',['recv',['../classmpl_1_1communicator.html#abbc79395f9583143b1427c2e3f1c6637',1,'mpl::communicator::recv(T &data, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a693590693b8621565e94abdd6763d5b6',1,'mpl::communicator::recv(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a39c2f12ebc86e0930266a60ffecea926',1,'mpl::communicator::recv(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const']]], + ['recv_5finit_4',['recv_init',['../classmpl_1_1communicator.html#add45a9df6b60973abe8d13b9161c0ed8',1,'mpl::communicator::recv_init(T &data, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a0ca545be8c199264a127b16180450162',1,'mpl::communicator::recv_init(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a03d88ad3aa943dc51578259c03b0b695',1,'mpl::communicator::recv_init(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const']]], + ['reduce_5',['reduce',['../classmpl_1_1communicator.html#a20c2142532726d3a3f25e4eb3293fd4c',1,'mpl::communicator::reduce(F f, int root_rank, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d',1,'mpl::communicator::reduce(F f, int root_rank, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#adb886db659e8bc352ca70800704b8956',1,'mpl::communicator::reduce(F f, int root_rank, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a494c7c1849713e45d99d901b31250b35',1,'mpl::communicator::reduce(F f, int root_rank, const T &senddata) const'],['../classmpl_1_1communicator.html#aae3643fa3e833c9dfb4eaf871235aed3',1,'mpl::communicator::reduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#aed2415ddb3e27cce97fd5317f781a86c',1,'mpl::communicator::reduce(F f, int root_rank, const T *senddata, const contiguous_layout< T > &l) const']]], + ['reduce_5fscatter_6',['reduce_scatter',['../classmpl_1_1communicator.html#a636784ef8a1e076a303e3e6279de1e7d',1,'mpl::communicator']]], + ['reduce_5fscatter_5fblock_7',['reduce_scatter_block',['../classmpl_1_1communicator.html#aa4407a90c2f598867b36e8e557b72ec0',1,'mpl::communicator::reduce_scatter_block(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &recvcount) const'],['../classmpl_1_1communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca',1,'mpl::communicator::reduce_scatter_block(F f, const T *senddata, T &recvdata) const']]], + ['reference_8',['reference',['../classmpl_1_1local__grid.html#aa34ade9741224f1539935e220ba95105',1,'mpl::local_grid::reference()'],['../classmpl_1_1distributed__grid.html#a51579bec8d2ed2da636f1bc6db474ca6',1,'mpl::distributed_grid::reference()']]], + ['register_5felement_9',['register_element',['../classmpl_1_1struct__layout.html#ada968c08d05ee6c94464bba46c7b2566',1,'mpl::struct_layout']]], + ['register_5fstruct_10',['register_struct',['../classmpl_1_1struct__layout.html#ac8edfd2e43039745840de4d7f14e13b7',1,'mpl::struct_layout']]], + ['request_11',['request',['../classmpl_1_1impl_1_1request.html',1,'mpl::impl']]], + ['request_3c_20impl_3a_3airequest_20_3e_12',['request< impl::irequest >',['../classmpl_1_1impl_1_1request.html',1,'mpl::impl']]], + ['request_3c_20impl_3a_3aprequest_20_3e_13',['request< impl::prequest >',['../classmpl_1_1impl_1_1request.html',1,'mpl::impl']]], + ['request_5fpool_14',['request_pool',['../classmpl_1_1impl_1_1request__pool.html',1,'mpl::impl']]], + ['request_5fpool_3c_20irequest_20_3e_15',['request_pool< irequest >',['../classmpl_1_1impl_1_1request__pool.html',1,'mpl::impl']]], + ['request_5fpool_3c_20prequest_20_3e_16',['request_pool< prequest >',['../classmpl_1_1impl_1_1request__pool.html',1,'mpl::impl']]], + ['resize_17',['resize',['../classmpl_1_1layout.html#ab0a15251c4fd7bc10630bb9f00a392c4',1,'mpl::layout']]], + ['right_5fborder_5flayout_18',['right_border_layout',['../classmpl_1_1distributed__grid.html#aa302039c192e73504a8bc85cb2379599',1,'mpl::distributed_grid']]], + ['right_5fmirror_5flayout_19',['right_mirror_layout',['../classmpl_1_1distributed__grid.html#a56a402c5f7b9e3b47469db51b1b76411',1,'mpl::distributed_grid']]], + ['rsend_20',['rsend',['../classmpl_1_1communicator.html#a55fef351e8bb5d3062d25683cb404c9d',1,'mpl::communicator::rsend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a197f9833a6c4685a2368b7bea2a60cd8',1,'mpl::communicator::rsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627',1,'mpl::communicator::rsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], + ['rsend_5finit_21',['rsend_init',['../classmpl_1_1communicator.html#aaa714c0902d770205ee9cfb636f20fed',1,'mpl::communicator::rsend_init(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ade499e3631297c5268da93604ec68a94',1,'mpl::communicator::rsend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a480ef5ac8533cd47ef55b04454baddca',1,'mpl::communicator::rsend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]] ]; diff --git a/docs/html/search/all_e.js b/docs/html/search/all_e.js index 505bd65f..39954ea6 100644 --- a/docs/html/search/all_e.js +++ b/docs/html/search/all_e.js @@ -1,30 +1,38 @@ var searchData= [ - ['rank_0',['rank',['../classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#a8e6c3be2673ad743f58a418650176ba6',1,'mpl::distributed_graph_communicator::rank_weight_pair::rank()'],['../classmpl_1_1cartesian__communicator.html#a417ae78d850eca389dcc1a7ed5a4804f',1,'mpl::cartesian_communicator::rank()'],['../classmpl_1_1group.html#ac820bf356be8b94134cb08f8efa087ba',1,'mpl::group::rank()'],['../classmpl_1_1communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789',1,'mpl::communicator::rank()'],['../classmpl_1_1cartesian__communicator.html#ae07d74b4f28b45e4bf56777d5d2a9789',1,'mpl::cartesian_communicator::rank()']]], - ['rank_5fweight_5fpair_1',['rank_weight_pair',['../classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html',1,'mpl::distributed_graph_communicator::rank_weight_pair'],['../classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#a26f5274dd9650e3feb1c245e4560bb19',1,'mpl::distributed_graph_communicator::rank_weight_pair::rank_weight_pair()']]], - ['ranks_2',['ranks',['../classmpl_1_1ranks.html',1,'mpl::ranks'],['../classmpl_1_1ranks.html#a1fbed6a868f8b6c5e64cbbf09143e26f',1,'mpl::ranks::ranks(ranks &&other) noexcept'],['../classmpl_1_1ranks.html#a5a849ed7e37368988037974e10bdfd81',1,'mpl::ranks::ranks(const ranks &other)=default'],['../classmpl_1_1ranks.html#a78f75166b8370635c0e845452599db80',1,'mpl::ranks::ranks(std::initializer_list< int > init)'],['../classmpl_1_1ranks.html#a26a4953810763dec408121b213b8d9ee',1,'mpl::ranks::ranks(size_type n=0)']]], - ['recv_3',['recv',['../classmpl_1_1communicator.html#abbc79395f9583143b1427c2e3f1c6637',1,'mpl::communicator::recv(T &data, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a39c2f12ebc86e0930266a60ffecea926',1,'mpl::communicator::recv(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a693590693b8621565e94abdd6763d5b6',1,'mpl::communicator::recv(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const']]], - ['recv_5finit_4',['recv_init',['../classmpl_1_1communicator.html#add45a9df6b60973abe8d13b9161c0ed8',1,'mpl::communicator::recv_init(T &data, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a0ca545be8c199264a127b16180450162',1,'mpl::communicator::recv_init(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a03d88ad3aa943dc51578259c03b0b695',1,'mpl::communicator::recv_init(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const']]], - ['reduce_5',['reduce',['../classmpl_1_1communicator.html#a20c2142532726d3a3f25e4eb3293fd4c',1,'mpl::communicator::reduce(F f, int root_rank, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d',1,'mpl::communicator::reduce(F f, int root_rank, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#adb886db659e8bc352ca70800704b8956',1,'mpl::communicator::reduce(F f, int root_rank, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a494c7c1849713e45d99d901b31250b35',1,'mpl::communicator::reduce(F f, int root_rank, const T &senddata) const'],['../classmpl_1_1communicator.html#aae3643fa3e833c9dfb4eaf871235aed3',1,'mpl::communicator::reduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#aed2415ddb3e27cce97fd5317f781a86c',1,'mpl::communicator::reduce(F f, int root_rank, const T *senddata, const contiguous_layout< T > &l) const']]], - ['reduce_5fscatter_6',['reduce_scatter',['../classmpl_1_1communicator.html#a636784ef8a1e076a303e3e6279de1e7d',1,'mpl::communicator']]], - ['reduce_5fscatter_5fblock_7',['reduce_scatter_block',['../classmpl_1_1communicator.html#aa4407a90c2f598867b36e8e557b72ec0',1,'mpl::communicator::reduce_scatter_block(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &recvcount) const'],['../classmpl_1_1communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca',1,'mpl::communicator::reduce_scatter_block(F f, const T *senddata, T &recvdata) const']]], - ['reference_8',['reference',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a3df2e96495b39551a49133cf423e31f5',1,'mpl::cartesian_communicator::dimensions::const_iterator::reference()'],['../classmpl_1_1distributed__grid.html#a51579bec8d2ed2da636f1bc6db474ca6',1,'mpl::distributed_grid::reference()'],['../classmpl_1_1graph__communicator_1_1node__list.html#a199f783f69146375fd4890c1b318189f',1,'mpl::graph_communicator::node_list::reference()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a8bfae66c480cea453e5efc29a48caa86',1,'mpl::distributed_graph_communicator::neighbours_set::reference()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#acc11f382d1c7534095f6392fec035fe6',1,'mpl::graph_communicator::edge_set::reference()'],['../classmpl_1_1local__grid_1_1dimensions.html#aada2962f222ad01378a706bf18931e55',1,'mpl::local_grid::dimensions::reference()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a841f9c67444cbd1589f1ea3066edfe38',1,'mpl::cartesian_communicator::included_tags::reference()'],['../classmpl_1_1local__grid.html#aa34ade9741224f1539935e220ba95105',1,'mpl::local_grid::reference()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a777b0b3479a3be7b092eebfe42a2e923',1,'mpl::distributed_grid::dimensions::reference()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a2f0de8706bb7698b56f2e46b859ecd25',1,'mpl::cartesian_communicator::dimensions::reference()'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a0dab1fa97a7c8b5862f4c808e1475c6c',1,'mpl::cartesian_communicator::vector::reference()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#acc37d5d5bfa96b9560bb466407f8bf5c',1,'mpl::cartesian_communicator::dimensions::iterator::reference()']]], - ['register_5felement_9',['register_element',['../classmpl_1_1struct__layout.html#ada968c08d05ee6c94464bba46c7b2566',1,'mpl::struct_layout']]], - ['register_5fstruct_10',['register_struct',['../classmpl_1_1struct__layout.html#ac8edfd2e43039745840de4d7f14e13b7',1,'mpl::struct_layout']]], - ['request_11',['request',['../classmpl_1_1impl_1_1request.html',1,'mpl::impl::request< T >'],['../classmpl_1_1impl_1_1request.html#a1182379a389ccf58d502142d550eed1a',1,'mpl::impl::request::request(request &&other) noexcept'],['../classmpl_1_1impl_1_1request.html#aec0305ea4db43ce204b10419ea47ab88',1,'mpl::impl::request::request(const prequest &req)'],['../classmpl_1_1impl_1_1request.html#a50d6175fd7b272b5c4a5b0ac26b8724c',1,'mpl::impl::request::request()=delete'],['../classmpl_1_1impl_1_1request.html#a5593bb18f48fc5f74da74ff604936fd2',1,'mpl::impl::request::request(const request &)=delete'],['../classmpl_1_1impl_1_1request.html#ae54279c8f5ad406e91b5fc0eb0acab33',1,'mpl::impl::request::request(const irequest &req)']]], - ['request_3c_20impl_3a_3airequest_20_3e_12',['request< impl::irequest >',['../classmpl_1_1impl_1_1request.html',1,'mpl::impl']]], - ['request_3c_20impl_3a_3aprequest_20_3e_13',['request< impl::prequest >',['../classmpl_1_1impl_1_1request.html',1,'mpl::impl']]], - ['request_3c_20irequest_20_3e_14',['request< irequest >',['../classmpl_1_1impl_1_1irequest.html#afc6c0627314f63682b958c13cf936247',1,'mpl::impl::irequest']]], - ['request_3c_20prequest_20_3e_15',['request< prequest >',['../classmpl_1_1impl_1_1prequest.html#a8c7c30bf6b0c6ffc75d78caeac645230',1,'mpl::impl::prequest']]], - ['request_5fpool_16',['request_pool',['../classmpl_1_1impl_1_1request__pool.html',1,'mpl::impl::request_pool< T >'],['../classmpl_1_1impl_1_1request__pool.html#ab431bc48d9e0a81eeac03ae8a53592ba',1,'mpl::impl::request_pool::request_pool()=default'],['../classmpl_1_1impl_1_1request__pool.html#a541dc0dc092a1cf68f983ef23318e3e7',1,'mpl::impl::request_pool::request_pool(const request_pool &)=delete'],['../classmpl_1_1impl_1_1request__pool.html#a55de4601b01500daff1468db92ab2ac9',1,'mpl::impl::request_pool::request_pool(request_pool &&other) noexcept']]], - ['request_5fpool_3c_20irequest_20_3e_17',['request_pool< irequest >',['../classmpl_1_1impl_1_1request__pool.html',1,'mpl::impl']]], - ['request_5fpool_3c_20mpl_3a_3airequest_20_3e_18',['request_pool< mpl::irequest >',['../classmpl_1_1impl_1_1irequest.html#aa9403354e473e9978d6e49bc4389c9fe',1,'mpl::impl::irequest']]], - ['request_5fpool_3c_20mpl_3a_3aprequest_20_3e_19',['request_pool< mpl::prequest >',['../classmpl_1_1impl_1_1prequest.html#a99278de2244bd4d9129a7a07c40dd721',1,'mpl::impl::prequest']]], - ['request_5fpool_3c_20prequest_20_3e_20',['request_pool< prequest >',['../classmpl_1_1impl_1_1request__pool.html',1,'mpl::impl']]], - ['resize_21',['resize',['../classmpl_1_1layout.html#ab0a15251c4fd7bc10630bb9f00a392c4',1,'mpl::layout']]], - ['right_5fborder_5flayout_22',['right_border_layout',['../classmpl_1_1distributed__grid.html#aa302039c192e73504a8bc85cb2379599',1,'mpl::distributed_grid']]], - ['right_5fmirror_5flayout_23',['right_mirror_layout',['../classmpl_1_1distributed__grid.html#a56a402c5f7b9e3b47469db51b1b76411',1,'mpl::distributed_grid']]], - ['root_24',['root',['../namespacempl.html#a580d63de8f272555e40bb7ea90f23ccc',1,'mpl']]], - ['rsend_25',['rsend',['../classmpl_1_1communicator.html#a55fef351e8bb5d3062d25683cb404c9d',1,'mpl::communicator::rsend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a197f9833a6c4685a2368b7bea2a60cd8',1,'mpl::communicator::rsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627',1,'mpl::communicator::rsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['rsend_5finit_26',['rsend_init',['../classmpl_1_1communicator.html#aaa714c0902d770205ee9cfb636f20fed',1,'mpl::communicator::rsend_init(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ade499e3631297c5268da93604ec68a94',1,'mpl::communicator::rsend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a480ef5ac8533cd47ef55b04454baddca',1,'mpl::communicator::rsend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]] + ['scan_0',['scan',['../classmpl_1_1communicator.html#afe6c73aa613bf07ed4790210f10a0f1c',1,'mpl::communicator::scan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6',1,'mpl::communicator::scan(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b',1,'mpl::communicator::scan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597',1,'mpl::communicator::scan(F f, const T &senddata, T &recvdata) const']]], + ['scatter_1',['scatter',['../classmpl_1_1communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af',1,'mpl::communicator::scatter(int root_rank, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#adb4b189592ceb6f3a16c53d48e3071b8',1,'mpl::communicator::scatter(int root_rank, T &recvdata) const'],['../classmpl_1_1communicator.html#a5a80517f1de86265d2a863a7c1fd5032',1,'mpl::communicator::scatter(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42',1,'mpl::communicator::scatter(int root_rank, const T *senddata, T &recvdata) const']]], + ['scatterv_2',['scatterv',['../classmpl_1_1communicator.html#aba80b0971e6f8d2f04d1454f389833be',1,'mpl::communicator::scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a3b4d541cab8706ae5a4a699aef0662d3',1,'mpl::communicator::scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a36031fd4a0c2ed7bab527e0a4663971f',1,'mpl::communicator::scatterv(int root_rank, T *recvdata, const layout< T > &recvl) const']]], + ['send_3',['send',['../classmpl_1_1communicator.html#a1f45f3b4b5afa504963d30203bebcd67',1,'mpl::communicator::send(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a477820ee73599e311a6e73ef06fbdf33',1,'mpl::communicator::send(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a',1,'mpl::communicator::send(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], + ['send_5finit_4',['send_init',['../classmpl_1_1communicator.html#a2a901501dfe4dad53249a142a6c61f8a',1,'mpl::communicator::send_init(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0',1,'mpl::communicator::send_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f',1,'mpl::communicator::send_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], + ['sendrecv_5',['sendrecv',['../classmpl_1_1communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5',1,'mpl::communicator::sendrecv(const T &senddata, int destination, tag_t sendtag, T &recvdata, int source, tag_t recvtag) const'],['../classmpl_1_1communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644',1,'mpl::communicator::sendrecv(const T *senddata, const layout< T > &sendl, int destination, tag_t sendtag, T *recvdata, const layout< T > &recvl, int source, tag_t recvtag) const'],['../classmpl_1_1communicator.html#a6149ac444daf9efa0818c1ad86df03f4',1,'mpl::communicator::sendrecv(iterT1 begin1, iterT1 end1, int destination, tag_t sendtag, iterT2 begin2, iterT2 end2, int source, tag_t recvtag) const']]], + ['sendrecv_5freplace_6',['sendrecv_replace',['../classmpl_1_1communicator.html#a100f19741ccecda229eb1bb6659c1dd8',1,'mpl::communicator::sendrecv_replace(T &data, int destination, tag_t sendtag, int source, tag_t recvtag) const'],['../classmpl_1_1communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f',1,'mpl::communicator::sendrecv_replace(T *data, const layout< T > &l, int destination, tag_t sendtag, int source, tag_t recvtag) const'],['../classmpl_1_1communicator.html#ac402242f2ad68dbce183e60cfcc82382',1,'mpl::communicator::sendrecv_replace(iterT begin, iterT end, int destination, tag_t sendtag, int source, tag_t recvtag) const']]], + ['shift_7',['shift',['../classmpl_1_1cartesian__communicator.html#a1b8b3f2f9c7f6c6c5f009d47c52f7919',1,'mpl::cartesian_communicator']]], + ['shift_5franks_8',['shift_ranks',['../structmpl_1_1shift__ranks.html',1,'mpl']]], + ['similar_9',['similar',['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703',1,'mpl::communicator::similar()'],['../classmpl_1_1communicator.html#abe7076a9aaa13cb078e700c0cb616f3f',1,'mpl::communicator::similar()'],['../classmpl_1_1group.html#a0611c7cf397e6b98529ed9596b2c62f6',1,'mpl::group::similar()'],['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69a10faae554c642e7607b1dd0cc8607703',1,'mpl::group::similar()']]], + ['size_10',['size',['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a39edb9ac5555118a37675167b577b11d',1,'mpl::cartesian_communicator::included_tags::size()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a1b76409115713a0bda67f72748f773da',1,'mpl::cartesian_communicator::dimensions::size()'],['../classmpl_1_1group.html#a58537237d16d0ac6ecb5680e33997f26',1,'mpl::group::size()'],['../classmpl_1_1communicator.html#abe1bd8f32c690ee7a31456da2c437bdf',1,'mpl::communicator::size()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a88a535128a6ba0edea60dab411c425ec',1,'mpl::distributed_graph_communicator::neighbours_set::size()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a7ef66eeee954466bec93ae54ce2f1de9',1,'mpl::distributed_grid::dimensions::size()'],['../classmpl_1_1distributed__grid.html#a2f644cd6560ba3d618e97da5bc735097',1,'mpl::distributed_grid::size()'],['../classmpl_1_1local__grid_1_1dimensions.html#a0134108e71b799e3c39e966f149937d5',1,'mpl::local_grid::dimensions::size()'],['../classmpl_1_1local__grid.html#ac2d6883c856c1edf80dccf0586f0c0b4',1,'mpl::local_grid::size()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#ab1f12c9c8eaa5d350d019abe32817b86',1,'mpl::graph_communicator::edge_set::size()'],['../classmpl_1_1graph__communicator_1_1node__list.html#aceebd8bb0abded270a3246abb4996efe',1,'mpl::graph_communicator::node_list::size()'],['../classmpl_1_1distributed__grid_1_1size__overlap__pair.html#a7896ea2151387a2738a23654aa2dab74',1,'mpl::distributed_grid::size_overlap_pair::size()']]], + ['size_5foverlap_5fpair_11',['size_overlap_pair',['../classmpl_1_1distributed__grid_1_1size__overlap__pair.html',1,'mpl::distributed_grid< dim, T, A >::size_overlap_pair'],['../classmpl_1_1distributed__grid_1_1size__overlap__pair.html#a027ebf7f9d8ee613042d8c2fa562a636',1,'mpl::distributed_grid::size_overlap_pair::size_overlap_pair()']]], + ['size_5ftype_12',['size_type',['../classmpl_1_1local__grid.html#ae0ebb9b3054ff110c5bbb2594729a84f',1,'mpl::local_grid::size_type()'],['../classmpl_1_1distributed__grid.html#a34a86347db9b7601f7e3d5e4dc4f9418',1,'mpl::distributed_grid::size_type()']]], + ['source_13',['source',['../classmpl_1_1status__t.html#a9d17d0e813a4ff51a178c96ffb3455f0',1,'mpl::status_t']]], + ['split_14',['split',['../classmpl_1_1communicator.html#a8b95f2880fc6fb1b32fe5896f9af15a9',1,'mpl::communicator']]], + ['split_5fshared_5fmemory_15',['split_shared_memory',['../classmpl_1_1communicator.html#ad2c339d4e6a55d6f5d1c9c030a5175a3',1,'mpl::communicator']]], + ['split_5fshared_5fmemory_5ftag_16',['split_shared_memory_tag',['../classmpl_1_1communicator_1_1split__shared__memory__tag.html',1,'mpl::communicator']]], + ['split_5ftag_17',['split_tag',['../classmpl_1_1communicator_1_1split__tag.html',1,'mpl::communicator']]], + ['ssend_18',['ssend',['../classmpl_1_1communicator.html#ae2bdc9265ab60a53dced1a251b3e5898',1,'mpl::communicator::ssend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a07591e9922db9239a75ab1b6c7b70f11',1,'mpl::communicator::ssend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#abeb99f29459a82f9027dfc8b4bd60add',1,'mpl::communicator::ssend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], + ['ssend_5finit_19',['ssend_init',['../classmpl_1_1communicator.html#a3f433b69dace132e01bea64624fff4b3',1,'mpl::communicator::ssend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a17526ad519286bf2fa81a3701c0afe03',1,'mpl::communicator::ssend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a871cba17f8d1891fb0613f9a23c38866',1,'mpl::communicator::ssend_init(const T &data, int destination, tag_t t=tag_t(0)) const']]], + ['status_20',['status',['../structmpl_1_1mprobe__status.html#ad5f29b026bbd4e57d9ed3e74fbb0e415',1,'mpl::mprobe_status']]], + ['status_5ft_21',['status_t',['../classmpl_1_1status__t.html',1,'mpl::status_t'],['../classmpl_1_1status__t.html#a02861de720edc848695719d097a0cc65',1,'mpl::status_t::status_t()']]], + ['strided_5fvector_5flayout_22',['strided_vector_layout',['../classmpl_1_1strided__vector__layout.html',1,'mpl::strided_vector_layout< T >'],['../classmpl_1_1strided__vector__layout.html#af5f48479be2f758f7ee107166ff8b6ab',1,'mpl::strided_vector_layout::strided_vector_layout(const strided_vector_layout< T > &l)'],['../classmpl_1_1strided__vector__layout.html#a26fbff388559dd91cbe8d4f5c0bf54be',1,'mpl::strided_vector_layout::strided_vector_layout()'],['../classmpl_1_1strided__vector__layout.html#a5996f952887a7ad754de6b862f71bd60',1,'mpl::strided_vector_layout::strided_vector_layout(int count, int blocklength, int stride)'],['../classmpl_1_1strided__vector__layout.html#acbd61feed56dc16a8121b9e05490ca4f',1,'mpl::strided_vector_layout::strided_vector_layout(int count, int blocklength, int stride, const layout< T > &l)'],['../classmpl_1_1strided__vector__layout.html#a9ea9a57f672e317522e4e8929bdc9ea2',1,'mpl::strided_vector_layout::strided_vector_layout(strided_vector_layout< T > &&l) noexcept']]], + ['struct_5fbuilder_23',['struct_builder',['../classmpl_1_1struct__builder.html',1,'mpl']]], + ['struct_5fbuilder_3c_20std_3a_3aarray_3c_20t_2c_20n_20_3e_20_3e_24',['struct_builder< std::array< T, N > >',['../classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html',1,'mpl']]], + ['struct_5fbuilder_3c_20std_3a_3apair_3c_20t1_2c_20t2_20_3e_20_3e_25',['struct_builder< std::pair< T1, T2 > >',['../classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html',1,'mpl']]], + ['struct_5fbuilder_3c_20std_3a_3atuple_3c_20ts_2e_2e_2e_20_3e_20_3e_26',['struct_builder< std::tuple< Ts... > >',['../classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html',1,'mpl']]], + ['struct_5fbuilder_3c_20t_5bn0_5d_3e_27',['struct_builder< T[N0]>',['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html',1,'mpl']]], + ['struct_5fbuilder_3c_20t_5bn0_5d_5bn1_5d_3e_28',['struct_builder< T[N0][N1]>',['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html',1,'mpl']]], + ['struct_5fbuilder_3c_20t_5bn0_5d_5bn1_5d_5bn2_5d_3e_29',['struct_builder< T[N0][N1][N2]>',['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html',1,'mpl']]], + ['struct_5fbuilder_3c_20t_5bn0_5d_5bn1_5d_5bn2_5d_5bn3_5d_3e_30',['struct_builder< T[N0][N1][N2][N3]>',['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html',1,'mpl']]], + ['struct_5flayout_31',['struct_layout',['../classmpl_1_1struct__layout.html',1,'mpl']]], + ['sub_5flayouts_32',['sub_layouts',['../classmpl_1_1local__grid.html#a713ce59b43926706509b9a3a6a127a41',1,'mpl::local_grid']]], + ['subarray_5flayout_33',['subarray_layout',['../classmpl_1_1subarray__layout.html',1,'mpl::subarray_layout< T >'],['../classmpl_1_1subarray__layout.html#a2243a1c2887f4c6bbf11403528912906',1,'mpl::subarray_layout::subarray_layout()'],['../classmpl_1_1subarray__layout.html#aa96074e957a0d2271f5ff45a248cdbd0',1,'mpl::subarray_layout::subarray_layout(const parameter &par)'],['../classmpl_1_1subarray__layout.html#a6c9462225f9727417f1063a7300c1580',1,'mpl::subarray_layout::subarray_layout(const parameter &par, const layout< T > &l)'],['../classmpl_1_1subarray__layout.html#a8b4ea22298e053cea9267edbeaf057ed',1,'mpl::subarray_layout::subarray_layout(const subarray_layout< T > &l)'],['../classmpl_1_1subarray__layout.html#a4c8c9abf713ae31b48f8504bb5929455',1,'mpl::subarray_layout::subarray_layout(subarray_layout< T > &&l) noexcept']]], + ['swap_34',['swap',['../classmpl_1_1heterogeneous__layout.html#a72a2fe2e326f5bfc1dd9b188acd07072',1,'mpl::heterogeneous_layout::swap()'],['../classmpl_1_1subarray__layout.html#a50f1141d79adc3100b3c4ab7d963b76f',1,'mpl::subarray_layout::swap()'],['../classmpl_1_1iterator__layout.html#aa065b1d83d11439b548ca9c67ce2b55a',1,'mpl::iterator_layout::swap()'],['../classmpl_1_1hindexed__block__layout.html#a31e0a5a0b069597199140c0fc6df1d13',1,'mpl::hindexed_block_layout::swap()'],['../classmpl_1_1indexed__block__layout.html#a2e7623e83f661a3948ca83f797149070',1,'mpl::indexed_block_layout::swap()'],['../classmpl_1_1hindexed__layout.html#a96cdefc4ba1b2513df1eb4377cffb58e',1,'mpl::hindexed_layout::swap()'],['../classmpl_1_1indexed__layout.html#aaca95a4fc535798296b2287e87934820',1,'mpl::indexed_layout::swap()'],['../classmpl_1_1strided__vector__layout.html#a497249e5a8b40b25329923b9062512f2',1,'mpl::strided_vector_layout::swap()'],['../classmpl_1_1vector__layout.html#aa88614eb8266c7ca511275674335c986',1,'mpl::vector_layout::swap()'],['../classmpl_1_1contiguous__layout.html#a3d0d28fdc0b29e06d3780a00b2d9cf7f',1,'mpl::contiguous_layout::swap()'],['../classmpl_1_1empty__layout.html#a069da901219beb3e1c3da57289bdfb1a',1,'mpl::empty_layout::swap()'],['../classmpl_1_1null__layout.html#aa902f79f8f54981548bfd7d74c11ec44',1,'mpl::null_layout::swap()'],['../classmpl_1_1layout.html#ab57eff0aeed0dee1e02bcfbec750d79f',1,'mpl::layout::swap()'],['../classmpl_1_1distributed__grid.html#a4af35d52ae69a0b0dea4921ed2a2595e',1,'mpl::distributed_grid::swap()']]] ]; diff --git a/docs/html/search/all_f.js b/docs/html/search/all_f.js index 7ad87f26..27750043 100644 --- a/docs/html/search/all_f.js +++ b/docs/html/search/all_f.js @@ -1,47 +1,13 @@ var searchData= [ - ['scan_0',['scan',['../classmpl_1_1communicator.html#afe6c73aa613bf07ed4790210f10a0f1c',1,'mpl::communicator::scan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6',1,'mpl::communicator::scan(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b',1,'mpl::communicator::scan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597',1,'mpl::communicator::scan(F f, const T &senddata, T &recvdata) const']]], - ['scatter_1',['scatter',['../classmpl_1_1communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af',1,'mpl::communicator::scatter(int root_rank, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#adb4b189592ceb6f3a16c53d48e3071b8',1,'mpl::communicator::scatter(int root_rank, T &recvdata) const'],['../classmpl_1_1communicator.html#a5a80517f1de86265d2a863a7c1fd5032',1,'mpl::communicator::scatter(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42',1,'mpl::communicator::scatter(int root_rank, const T *senddata, T &recvdata) const']]], - ['scatterv_2',['scatterv',['../classmpl_1_1communicator.html#a36031fd4a0c2ed7bab527e0a4663971f',1,'mpl::communicator::scatterv(int root_rank, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a3b4d541cab8706ae5a4a699aef0662d3',1,'mpl::communicator::scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#aba80b0971e6f8d2f04d1454f389833be',1,'mpl::communicator::scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const']]], - ['send_3',['send',['../classmpl_1_1communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a',1,'mpl::communicator::send(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a1f45f3b4b5afa504963d30203bebcd67',1,'mpl::communicator::send(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a477820ee73599e311a6e73ef06fbdf33',1,'mpl::communicator::send(const T &data, int destination, tag_t t=tag_t(0)) const']]], - ['send_5finit_4',['send_init',['../classmpl_1_1communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0',1,'mpl::communicator::send_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a2a901501dfe4dad53249a142a6c61f8a',1,'mpl::communicator::send_init(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f',1,'mpl::communicator::send_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['sendrecv_5',['sendrecv',['../classmpl_1_1communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5',1,'mpl::communicator::sendrecv(const T &senddata, int destination, tag_t sendtag, T &recvdata, int source, tag_t recvtag) const'],['../classmpl_1_1communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644',1,'mpl::communicator::sendrecv(const T *senddata, const layout< T > &sendl, int destination, tag_t sendtag, T *recvdata, const layout< T > &recvl, int source, tag_t recvtag) const'],['../classmpl_1_1communicator.html#a6149ac444daf9efa0818c1ad86df03f4',1,'mpl::communicator::sendrecv(iterT1 begin1, iterT1 end1, int destination, tag_t sendtag, iterT2 begin2, iterT2 end2, int source, tag_t recvtag) const']]], - ['sendrecv_5freplace_6',['sendrecv_replace',['../classmpl_1_1communicator.html#a100f19741ccecda229eb1bb6659c1dd8',1,'mpl::communicator::sendrecv_replace(T &data, int destination, tag_t sendtag, int source, tag_t recvtag) const'],['../classmpl_1_1communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f',1,'mpl::communicator::sendrecv_replace(T *data, const layout< T > &l, int destination, tag_t sendtag, int source, tag_t recvtag) const'],['../classmpl_1_1communicator.html#ac402242f2ad68dbce183e60cfcc82382',1,'mpl::communicator::sendrecv_replace(iterT begin, iterT end, int destination, tag_t sendtag, int source, tag_t recvtag) const']]], - ['serialized_7',['serialized',['../namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828afb741eb55bd67db2031aa661671fba7c',1,'mpl']]], - ['shift_8',['shift',['../classmpl_1_1cartesian__communicator.html#a1b8b3f2f9c7f6c6c5f009d47c52f7919',1,'mpl::cartesian_communicator']]], - ['shift_5franks_9',['shift_ranks',['../structmpl_1_1shift__ranks.html',1,'mpl']]], - ['similar_10',['similar',['../classmpl_1_1group.html#a0611c7cf397e6b98529ed9596b2c62f6',1,'mpl::group::similar()'],['../classmpl_1_1communicator.html#abe7076a9aaa13cb078e700c0cb616f3f',1,'mpl::communicator::similar()'],['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69a10faae554c642e7607b1dd0cc8607703',1,'mpl::group::similar()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703',1,'mpl::communicator::similar()']]], - ['single_11',['single',['../namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828add5c07036f2975ff4bce568b6511d3bc',1,'mpl']]], - ['size_12',['size',['../classmpl_1_1distributed__grid_1_1size__overlap__pair.html#a7896ea2151387a2738a23654aa2dab74',1,'mpl::distributed_grid::size_overlap_pair::size()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a39edb9ac5555118a37675167b577b11d',1,'mpl::cartesian_communicator::included_tags::size()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a1b76409115713a0bda67f72748f773da',1,'mpl::cartesian_communicator::dimensions::size()'],['../classmpl_1_1group.html#a58537237d16d0ac6ecb5680e33997f26',1,'mpl::group::size()'],['../classmpl_1_1communicator.html#abe1bd8f32c690ee7a31456da2c437bdf',1,'mpl::communicator::size()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a88a535128a6ba0edea60dab411c425ec',1,'mpl::distributed_graph_communicator::neighbours_set::size()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a7ef66eeee954466bec93ae54ce2f1de9',1,'mpl::distributed_grid::dimensions::size()'],['../classmpl_1_1distributed__grid.html#a2f644cd6560ba3d618e97da5bc735097',1,'mpl::distributed_grid::size()'],['../classmpl_1_1local__grid_1_1dimensions.html#a0134108e71b799e3c39e966f149937d5',1,'mpl::local_grid::dimensions::size()'],['../classmpl_1_1local__grid.html#ac2d6883c856c1edf80dccf0586f0c0b4',1,'mpl::local_grid::size()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#ab1f12c9c8eaa5d350d019abe32817b86',1,'mpl::graph_communicator::edge_set::size()'],['../classmpl_1_1graph__communicator_1_1node__list.html#aceebd8bb0abded270a3246abb4996efe',1,'mpl::graph_communicator::node_list::size()'],['../classmpl_1_1impl_1_1request__pool.html#a40b2e7f51521f6cbf1ba99c26547dade',1,'mpl::impl::request_pool::size()']]], - ['size_5foverlap_5fpair_13',['size_overlap_pair',['../classmpl_1_1distributed__grid_1_1size__overlap__pair.html',1,'mpl::distributed_grid< dim, T, A >::size_overlap_pair'],['../classmpl_1_1distributed__grid_1_1size__overlap__pair.html#a027ebf7f9d8ee613042d8c2fa562a636',1,'mpl::distributed_grid::size_overlap_pair::size_overlap_pair()']]], - ['size_5ft_14',['size_t',['../namespacempl.html#a3cd70ef6c91cacaf9265de4c9dd93ddf',1,'mpl']]], - ['size_5ftype_15',['size_type',['../classmpl_1_1impl_1_1request__pool.html#a5b3f8f3986dc6bc5852939446531c767',1,'mpl::impl::request_pool::size_type()'],['../classmpl_1_1local__grid.html#ae0ebb9b3054ff110c5bbb2594729a84f',1,'mpl::local_grid::size_type()'],['../classmpl_1_1distributed__grid.html#a34a86347db9b7601f7e3d5e4dc4f9418',1,'mpl::distributed_grid::size_type()'],['../classmpl_1_1displacements.html#a0a9d79ddab90f97db23951542f9529ec',1,'mpl::displacements::size_type()']]], - ['source_16',['source',['../structmpl_1_1shift__ranks.html#afb38d83c7519b1f4202e826c9ae9568b',1,'mpl::shift_ranks::source()'],['../classmpl_1_1status__t.html#a9d17d0e813a4ff51a178c96ffb3455f0',1,'mpl::status_t::source()']]], - ['split_17',['split',['../classmpl_1_1communicator.html#a8b95f2880fc6fb1b32fe5896f9af15a9',1,'mpl::communicator']]], - ['split_5fshared_5fmemory_18',['split_shared_memory',['../classmpl_1_1communicator.html#ad2c339d4e6a55d6f5d1c9c030a5175a3',1,'mpl::communicator']]], - ['split_5fshared_5fmemory_5ftag_19',['split_shared_memory_tag',['../classmpl_1_1communicator_1_1split__shared__memory__tag.html',1,'mpl::communicator']]], - ['split_5ftag_20',['split_tag',['../classmpl_1_1communicator_1_1split__tag.html',1,'mpl::communicator']]], - ['ssend_21',['ssend',['../classmpl_1_1communicator.html#a07591e9922db9239a75ab1b6c7b70f11',1,'mpl::communicator::ssend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ae2bdc9265ab60a53dced1a251b3e5898',1,'mpl::communicator::ssend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#abeb99f29459a82f9027dfc8b4bd60add',1,'mpl::communicator::ssend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['ssend_5finit_22',['ssend_init',['../classmpl_1_1communicator.html#a871cba17f8d1891fb0613f9a23c38866',1,'mpl::communicator::ssend_init(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a17526ad519286bf2fa81a3701c0afe03',1,'mpl::communicator::ssend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a3f433b69dace132e01bea64624fff4b3',1,'mpl::communicator::ssend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['ssize_5ft_23',['ssize_t',['../namespacempl.html#acf6b82700b0f144cbcd49b1233e1083d',1,'mpl']]], - ['start_24',['start',['../classmpl_1_1prequest.html#a98397dc9bd862965e040491483082d65',1,'mpl::prequest']]], - ['startall_25',['startall',['../classmpl_1_1prequest__pool.html#a819ee42db512114958c31b95864e5cdd',1,'mpl::prequest_pool']]], - ['status_26',['status',['../structmpl_1_1mprobe__status.html#ad5f29b026bbd4e57d9ed3e74fbb0e415',1,'mpl::mprobe_status']]], - ['status_5ft_27',['status_t',['../classmpl_1_1status__t.html',1,'mpl::status_t'],['../classmpl_1_1status__t.html#a02861de720edc848695719d097a0cc65',1,'mpl::status_t::status_t()']]], - ['std_28',['std',['../namespacestd.html',1,'']]], - ['strided_5fvector_5flayout_29',['strided_vector_layout',['../classmpl_1_1strided__vector__layout.html',1,'mpl::strided_vector_layout< T >'],['../classmpl_1_1strided__vector__layout.html#a26fbff388559dd91cbe8d4f5c0bf54be',1,'mpl::strided_vector_layout::strided_vector_layout()'],['../classmpl_1_1strided__vector__layout.html#a5996f952887a7ad754de6b862f71bd60',1,'mpl::strided_vector_layout::strided_vector_layout(int count, int blocklength, int stride)'],['../classmpl_1_1strided__vector__layout.html#acbd61feed56dc16a8121b9e05490ca4f',1,'mpl::strided_vector_layout::strided_vector_layout(int count, int blocklength, int stride, const layout< T > &l)'],['../classmpl_1_1strided__vector__layout.html#af5f48479be2f758f7ee107166ff8b6ab',1,'mpl::strided_vector_layout::strided_vector_layout(const strided_vector_layout< T > &l)'],['../classmpl_1_1strided__vector__layout.html#a9ea9a57f672e317522e4e8929bdc9ea2',1,'mpl::strided_vector_layout::strided_vector_layout(strided_vector_layout< T > &&l) noexcept']]], - ['strided_5fvector_5flayout_3c_20t_20_3e_30',['strided_vector_layout< T >',['../classmpl_1_1layout.html#a12753d9d9517a88356cc3d1fc6e1c571',1,'mpl::layout']]], - ['struct_5fbuilder_31',['struct_builder',['../classmpl_1_1struct__builder.html',1,'mpl::struct_builder< T >'],['../classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html#aa3ddf9c1a4b20c0da0c32c2ca98d7be3',1,'mpl::struct_builder< std::array< T, N > >::struct_builder()'],['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html#a994090fb8f342df0546baa10fe298ee3',1,'mpl::struct_builder< T[N0][N1][N2][N3]>::struct_builder()'],['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html#af2c1e87c7b483609493dc6ab333f1d02',1,'mpl::struct_builder< T[N0][N1][N2]>::struct_builder()'],['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html#aaf371600324b88c0b0e1fcd85f47c89a',1,'mpl::struct_builder< T[N0][N1]>::struct_builder()'],['../classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html#ad358a07c14d549703b11a0c26c8ed49f',1,'mpl::struct_builder< std::pair< T1, T2 > >::struct_builder()'],['../classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html#aca6ed8f6236fc432dcca0d7a656c6ca5',1,'mpl::struct_builder< std::tuple< Ts... > >::struct_builder()'],['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html#a12b92cf1cac112f326ef9c1ff3fff9e9',1,'mpl::struct_builder< T[N0]>::struct_builder()']]], - ['struct_5fbuilder_3c_20std_3a_3aarray_3c_20t_2c_20n_20_3e_20_3e_32',['struct_builder< std::array< T, N > >',['../classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html',1,'mpl']]], - ['struct_5fbuilder_3c_20std_3a_3apair_3c_20t1_2c_20t2_20_3e_20_3e_33',['struct_builder< std::pair< T1, T2 > >',['../classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html',1,'mpl']]], - ['struct_5fbuilder_3c_20std_3a_3atuple_3c_20ts_2e_2e_2e_20_3e_20_3e_34',['struct_builder< std::tuple< Ts... > >',['../classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html',1,'mpl']]], - ['struct_5fbuilder_3c_20t_5bn0_5d_3e_35',['struct_builder< T[N0]>',['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html',1,'mpl']]], - ['struct_5fbuilder_3c_20t_5bn0_5d_5bn1_5d_3e_36',['struct_builder< T[N0][N1]>',['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html',1,'mpl']]], - ['struct_5fbuilder_3c_20t_5bn0_5d_5bn1_5d_5bn2_5d_3e_37',['struct_builder< T[N0][N1][N2]>',['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html',1,'mpl']]], - ['struct_5fbuilder_3c_20t_5bn0_5d_5bn1_5d_5bn2_5d_5bn3_5d_3e_38',['struct_builder< T[N0][N1][N2][N3]>',['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html',1,'mpl']]], - ['struct_5flayout_39',['struct_layout',['../classmpl_1_1struct__layout.html',1,'mpl']]], - ['sub_5flayouts_40',['sub_layouts',['../classmpl_1_1local__grid.html#a713ce59b43926706509b9a3a6a127a41',1,'mpl::local_grid']]], - ['subarray_5flayout_41',['subarray_layout',['../classmpl_1_1subarray__layout.html',1,'mpl::subarray_layout< T >'],['../classmpl_1_1subarray__layout.html#a4c8c9abf713ae31b48f8504bb5929455',1,'mpl::subarray_layout::subarray_layout()'],['../classmpl_1_1subarray__layout_1_1parameter.html#a44e33f146bbe2cb7692c6fd9eeefdfc4',1,'mpl::subarray_layout::parameter::subarray_layout()'],['../classmpl_1_1subarray__layout.html#a2243a1c2887f4c6bbf11403528912906',1,'mpl::subarray_layout::subarray_layout()'],['../classmpl_1_1subarray__layout.html#aa96074e957a0d2271f5ff45a248cdbd0',1,'mpl::subarray_layout::subarray_layout(const parameter &par)'],['../classmpl_1_1subarray__layout.html#a6c9462225f9727417f1063a7300c1580',1,'mpl::subarray_layout::subarray_layout(const parameter &par, const layout< T > &l)'],['../classmpl_1_1subarray__layout.html#a8b4ea22298e053cea9267edbeaf057ed',1,'mpl::subarray_layout::subarray_layout(const subarray_layout< T > &l)']]], - ['subarray_5flayout_3c_20t_20_3e_42',['subarray_layout< T >',['../classmpl_1_1layout.html#ad86a2fab89091a3c1e2cf8d0775c9d7b',1,'mpl::layout']]], - ['swap_43',['swap',['../classmpl_1_1indexed__block__layout.html#a2e7623e83f661a3948ca83f797149070',1,'mpl::indexed_block_layout::swap()'],['../classmpl_1_1distributed__grid.html#a4af35d52ae69a0b0dea4921ed2a2595e',1,'mpl::distributed_grid::swap()'],['../classmpl_1_1local__grid.html#afd4c45c7fb2a713f5e0434acce617320',1,'mpl::local_grid::swap()'],['../classmpl_1_1heterogeneous__layout.html#a72a2fe2e326f5bfc1dd9b188acd07072',1,'mpl::heterogeneous_layout::swap()'],['../classmpl_1_1subarray__layout.html#a50f1141d79adc3100b3c4ab7d963b76f',1,'mpl::subarray_layout::swap()'],['../classmpl_1_1iterator__layout.html#aa065b1d83d11439b548ca9c67ce2b55a',1,'mpl::iterator_layout::swap()'],['../classmpl_1_1hindexed__block__layout.html#a31e0a5a0b069597199140c0fc6df1d13',1,'mpl::hindexed_block_layout::swap()'],['../classmpl_1_1layout.html#ab57eff0aeed0dee1e02bcfbec750d79f',1,'mpl::layout::swap()'],['../classmpl_1_1hindexed__layout.html#a96cdefc4ba1b2513df1eb4377cffb58e',1,'mpl::hindexed_layout::swap()'],['../classmpl_1_1indexed__layout.html#aaca95a4fc535798296b2287e87934820',1,'mpl::indexed_layout::swap()'],['../classmpl_1_1strided__vector__layout.html#a497249e5a8b40b25329923b9062512f2',1,'mpl::strided_vector_layout::swap()'],['../classmpl_1_1vector__layout.html#aa88614eb8266c7ca511275674335c986',1,'mpl::vector_layout::swap()'],['../classmpl_1_1contiguous__layout.html#a3d0d28fdc0b29e06d3780a00b2d9cf7f',1,'mpl::contiguous_layout::swap()'],['../classmpl_1_1empty__layout.html#a069da901219beb3e1c3da57289bdfb1a',1,'mpl::empty_layout::swap()'],['../classmpl_1_1null__layout.html#aa902f79f8f54981548bfd7d74c11ec44',1,'mpl::null_layout::swap()']]] + ['tag_0',['tag',['../classmpl_1_1status__t.html#a76b56d148b261f474f473d936c1fd878',1,'mpl::status_t']]], + ['tag_5ft_1',['tag_t',['../classmpl_1_1tag__t.html',1,'mpl::tag_t'],['../classmpl_1_1tag__t.html#a290110d503cd4d6bf1bbd0553f78c0a6',1,'mpl::tag_t::tag_t(T t)'],['../classmpl_1_1tag__t.html#aee28b8c00b151ccee302f75016b63f7b',1,'mpl::tag_t::tag_t(int t)']]], + ['topology_5fcommunicator_2',['topology_communicator',['../classmpl_1_1impl_1_1topology__communicator.html',1,'mpl::impl']]], + ['translate_3',['translate',['../classmpl_1_1group.html#a38cdae96823a5ce04c1e4a637ca82d5a',1,'mpl::group::translate(int rank, const group &other) const'],['../classmpl_1_1group.html#a1c11d89daec6af7b0ed1b5668d355656',1,'mpl::group::translate(const ranks &rank, const group &other) const']]], + ['true_5fbyte_5fextent_4',['true_byte_extent',['../classmpl_1_1layout.html#a45840e6936914baef876a0b67a8bb499',1,'mpl::layout']]], + ['true_5fbyte_5flower_5fbound_5',['true_byte_lower_bound',['../classmpl_1_1layout.html#a245932be5b4d58bb00a05b29208ab7c4',1,'mpl::layout']]], + ['true_5fbyte_5fupper_5fbound_6',['true_byte_upper_bound',['../classmpl_1_1layout.html#adf592d9e08a92314cc086bd51d643953',1,'mpl::layout']]], + ['true_5fextent_7',['true_extent',['../classmpl_1_1layout.html#a0890ec4684e6a465170f88932e116d30',1,'mpl::layout']]], + ['true_5flower_5fbound_8',['true_lower_bound',['../classmpl_1_1layout.html#a4b0e56adef2f212d061f971b2ecafd0a',1,'mpl::layout']]], + ['true_5fupper_5fbound_9',['true_upper_bound',['../classmpl_1_1layout.html#a80713f15de3244b019294ee277c8c650',1,'mpl::layout']]] ]; diff --git a/docs/html/search/classes_f.js b/docs/html/search/classes_f.js index e83c770e..9b9fcb0b 100644 --- a/docs/html/search/classes_f.js +++ b/docs/html/search/classes_f.js @@ -1,7 +1,5 @@ var searchData= [ ['tag_5ft_0',['tag_t',['../classmpl_1_1tag__t.html',1,'mpl']]], - ['topology_5fcommunicator_1',['topology_communicator',['../classmpl_1_1impl_1_1topology__communicator.html',1,'mpl::impl']]], - ['tuple_5felement_3c_20n_2c_20mpl_3a_3acartesian_5fcommunicator_3a_3adimensions_3a_3adimension_5fperiodicity_5fproxy_20_3e_2',['tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >',['../structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html',1,'std']]], - ['tuple_5fsize_3c_20mpl_3a_3acartesian_5fcommunicator_3a_3adimensions_3a_3adimension_5fperiodicity_5fproxy_20_3e_3',['tuple_size< mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >',['../structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html',1,'std']]] + ['topology_5fcommunicator_1',['topology_communicator',['../classmpl_1_1impl_1_1topology__communicator.html',1,'mpl::impl']]] ]; diff --git a/docs/html/search/enums_0.js b/docs/html/search/enums_0.js index 73ee66e8..c496fea9 100644 --- a/docs/html/search/enums_0.js +++ b/docs/html/search/enums_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['array_5forders_0',['array_orders',['../namespacempl.html#a7fd33fa3d7b9a6f095cd55710c3b2dbf',1,'mpl']]] + ['equality_5ftype_0',['equality_type',['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69',1,'mpl::group::equality_type()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63',1,'mpl::communicator::equality_type()']]] ]; diff --git a/docs/html/search/enums_1.js b/docs/html/search/enums_1.js index c496fea9..8878766b 100644 --- a/docs/html/search/enums_1.js +++ b/docs/html/search/enums_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['equality_5ftype_0',['equality_type',['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69',1,'mpl::group::equality_type()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63',1,'mpl::communicator::equality_type()']]] + ['included_5ftag_0',['included_tag',['../classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588',1,'mpl::cartesian_communicator']]] ]; diff --git a/docs/html/search/enums_2.js b/docs/html/search/enums_2.js index 8878766b..ec22e9aa 100644 --- a/docs/html/search/enums_2.js +++ b/docs/html/search/enums_2.js @@ -1,4 +1,4 @@ var searchData= [ - ['included_5ftag_0',['included_tag',['../classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588',1,'mpl::cartesian_communicator']]] + ['periodicity_5ftag_0',['periodicity_tag',['../classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836',1,'mpl::cartesian_communicator']]] ]; diff --git a/docs/html/search/enums_3.html b/docs/html/search/enums_3.html deleted file mode 100644 index 2af75242..00000000 --- a/docs/html/search/enums_3.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/enums_3.js b/docs/html/search/enums_3.js deleted file mode 100644 index ec22e9aa..00000000 --- a/docs/html/search/enums_3.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['periodicity_5ftag_0',['periodicity_tag',['../classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836',1,'mpl::cartesian_communicator']]] -]; diff --git a/docs/html/search/enums_4.html b/docs/html/search/enums_4.html deleted file mode 100644 index 075a48bb..00000000 --- a/docs/html/search/enums_4.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/enums_4.js b/docs/html/search/enums_4.js deleted file mode 100644 index 8b0600db..00000000 --- a/docs/html/search/enums_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['threading_5fmodes_0',['threading_modes',['../namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828',1,'mpl']]] -]; diff --git a/docs/html/search/enumvalues_0.js b/docs/html/search/enumvalues_0.js index 1b12119c..e8e73dff 100644 --- a/docs/html/search/enumvalues_0.js +++ b/docs/html/search/enumvalues_0.js @@ -1,5 +1,4 @@ var searchData= [ - ['c_5forder_0',['C_order',['../namespacempl.html#a7fd33fa3d7b9a6f095cd55710c3b2dbfaadf55cfbf8cf8671022d5210c4eccaa8',1,'mpl']]], - ['congruent_1',['congruent',['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac',1,'mpl::communicator']]] + ['congruent_0',['congruent',['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63aecf9c13ef0ea0b37562355d0c5f982ac',1,'mpl::communicator']]] ]; diff --git a/docs/html/search/enumvalues_2.js b/docs/html/search/enumvalues_2.js index df39e386..b08e4bde 100644 --- a/docs/html/search/enumvalues_2.js +++ b/docs/html/search/enumvalues_2.js @@ -1,5 +1,5 @@ var searchData= [ - ['fortran_5forder_0',['Fortran_order',['../namespacempl.html#a7fd33fa3d7b9a6f095cd55710c3b2dbfae406b10bb96ad9064aebbf2835864097',1,'mpl']]], - ['funneled_1',['funneled',['../namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828a2110cc27d60e873203472314639a3c8a',1,'mpl']]] + ['identical_0',['identical',['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69aee0cbdbacdada19376449799774976e8',1,'mpl::group::identical()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8',1,'mpl::communicator::identical()']]], + ['included_1',['included',['../classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588a99f78c54130e752954404fff0707dcbd',1,'mpl::cartesian_communicator']]] ]; diff --git a/docs/html/search/enumvalues_3.js b/docs/html/search/enumvalues_3.js index b08e4bde..a3f88918 100644 --- a/docs/html/search/enumvalues_3.js +++ b/docs/html/search/enumvalues_3.js @@ -1,5 +1,4 @@ var searchData= [ - ['identical_0',['identical',['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69aee0cbdbacdada19376449799774976e8',1,'mpl::group::identical()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63aee0cbdbacdada19376449799774976e8',1,'mpl::communicator::identical()']]], - ['included_1',['included',['../classmpl_1_1cartesian__communicator.html#a6d418e0f1e1b98d37419ccb300e0a588a99f78c54130e752954404fff0707dcbd',1,'mpl::cartesian_communicator']]] + ['non_5fperiodic_0',['non_periodic',['../classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836aa688e8ffe09270eeb4eaf5ca79db24cd',1,'mpl::cartesian_communicator']]] ]; diff --git a/docs/html/search/enumvalues_4.js b/docs/html/search/enumvalues_4.js index da5728fa..49984b3f 100644 --- a/docs/html/search/enumvalues_4.js +++ b/docs/html/search/enumvalues_4.js @@ -1,4 +1,4 @@ var searchData= [ - ['multiple_0',['multiple',['../namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828ace495ab8d79db0d37413d8e95b54e606',1,'mpl']]] + ['periodic_0',['periodic',['../classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836ae6ffdec5e14fce371eb7ae99edebbbee',1,'mpl::cartesian_communicator']]] ]; diff --git a/docs/html/search/enumvalues_5.js b/docs/html/search/enumvalues_5.js index a3f88918..364f237a 100644 --- a/docs/html/search/enumvalues_5.js +++ b/docs/html/search/enumvalues_5.js @@ -1,4 +1,4 @@ var searchData= [ - ['non_5fperiodic_0',['non_periodic',['../classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836aa688e8ffe09270eeb4eaf5ca79db24cd',1,'mpl::cartesian_communicator']]] + ['similar_0',['similar',['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69a10faae554c642e7607b1dd0cc8607703',1,'mpl::group::similar()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703',1,'mpl::communicator::similar()']]] ]; diff --git a/docs/html/search/enumvalues_6.js b/docs/html/search/enumvalues_6.js index 49984b3f..e133bfc3 100644 --- a/docs/html/search/enumvalues_6.js +++ b/docs/html/search/enumvalues_6.js @@ -1,4 +1,4 @@ var searchData= [ - ['periodic_0',['periodic',['../classmpl_1_1cartesian__communicator.html#ae9ce556db3cf987d546db12da3382836ae6ffdec5e14fce371eb7ae99edebbbee',1,'mpl::cartesian_communicator']]] + ['unequal_0',['unequal',['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69ab4f45c85d7e3269abe7f894d94bf0f29',1,'mpl::group::unequal()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29',1,'mpl::communicator::unequal()']]] ]; diff --git a/docs/html/search/enumvalues_7.html b/docs/html/search/enumvalues_7.html deleted file mode 100644 index 124bdbe9..00000000 --- a/docs/html/search/enumvalues_7.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/enumvalues_7.js b/docs/html/search/enumvalues_7.js deleted file mode 100644 index c28ff4e1..00000000 --- a/docs/html/search/enumvalues_7.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['serialized_0',['serialized',['../namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828afb741eb55bd67db2031aa661671fba7c',1,'mpl']]], - ['similar_1',['similar',['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69a10faae554c642e7607b1dd0cc8607703',1,'mpl::group::similar()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63a10faae554c642e7607b1dd0cc8607703',1,'mpl::communicator::similar()']]], - ['single_2',['single',['../namespacempl.html#ae999d5e4faab6f30cd2e3bb225828828add5c07036f2975ff4bce568b6511d3bc',1,'mpl']]] -]; diff --git a/docs/html/search/enumvalues_8.html b/docs/html/search/enumvalues_8.html deleted file mode 100644 index 83162c0c..00000000 --- a/docs/html/search/enumvalues_8.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/enumvalues_8.js b/docs/html/search/enumvalues_8.js deleted file mode 100644 index e133bfc3..00000000 --- a/docs/html/search/enumvalues_8.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['unequal_0',['unequal',['../classmpl_1_1group.html#a78eb3d59b04c2e989ea52c60d39ffa69ab4f45c85d7e3269abe7f894d94bf0f29',1,'mpl::group::unequal()'],['../classmpl_1_1communicator.html#af66054a704ac25557aa25b356e8abd63ab4f45c85d7e3269abe7f894d94bf0f29',1,'mpl::communicator::unequal()']]] -]; diff --git a/docs/html/search/functions_1.js b/docs/html/search/functions_1.js index 80ef7b5f..2bfe160b 100644 --- a/docs/html/search/functions_1.js +++ b/docs/html/search/functions_1.js @@ -1,17 +1,14 @@ var searchData= [ ['barrier_0',['barrier',['../classmpl_1_1communicator.html#a5df6a6f331aa4c60b7b5664c5260c0ec',1,'mpl::communicator']]], - ['base_5fstruct_5fbuilder_1',['base_struct_builder',['../classmpl_1_1base__struct__builder.html#a3138dac289f89c80ea2e7f0467f7a7c3',1,'mpl::base_struct_builder']]], - ['bcast_2',['bcast',['../classmpl_1_1communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5',1,'mpl::communicator::bcast(int root_rank, T &data) const'],['../classmpl_1_1communicator.html#a719512973bc590402ac30b10e5227d2b',1,'mpl::communicator::bcast(int root_rank, T *data, const layout< T > &l) const']]], - ['begin_3',['begin',['../classmpl_1_1distributed__grid.html#a82adfb3638ace78e13b3803933f46585',1,'mpl::distributed_grid::begin()'],['../classmpl_1_1local__grid.html#a49ea125a5efe80df775f8dc62acaa2f2',1,'mpl::local_grid::begin()'],['../classmpl_1_1local__grid_1_1dimensions.html#aad9dda9392cfb376908c8bfcc1f4a46a',1,'mpl::local_grid::dimensions::begin() const'],['../classmpl_1_1local__grid_1_1dimensions.html#a9fe001a9733e41fa7d1c7eecc4597bdc',1,'mpl::local_grid::dimensions::begin()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a4aa7c8f061a34d093429d3116d1f4738',1,'mpl::distributed_grid::dimensions::begin() const'],['../classmpl_1_1distributed__grid_1_1dimensions.html#ad909c366be2bae287f8ea2051ae4be4a',1,'mpl::distributed_grid::dimensions::begin()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a667d98ea7708b6934ec8e85431a84087',1,'mpl::cartesian_communicator::dimensions::begin() const'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a8347304cab220bd077fc5e3dc62052f8',1,'mpl::cartesian_communicator::dimensions::begin()']]], - ['bsend_4',['bsend',['../classmpl_1_1communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2',1,'mpl::communicator::bsend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ac43f72ca3930976c113403fd465087b0',1,'mpl::communicator::bsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3',1,'mpl::communicator::bsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['bsend_5fbuffer_5',['bsend_buffer',['../classmpl_1_1bsend__buffer.html#aba791f693bf2109841329467cc7fd2ff',1,'mpl::bsend_buffer::bsend_buffer()=delete'],['../classmpl_1_1bsend__buffer.html#a934b4eb83876f5cca25426fce5ce9d38',1,'mpl::bsend_buffer::bsend_buffer(int size)'],['../classmpl_1_1bsend__buffer.html#adde2469450f68ee1004d4abe9db9dff8',1,'mpl::bsend_buffer::bsend_buffer(bsend_buffer &&other)=delete'],['../classmpl_1_1bsend__buffer.html#a67db6581e3a0f2cc46a3ab9ab2b9a571',1,'mpl::bsend_buffer::bsend_buffer(const bsend_buffer &other)=delete']]], - ['bsend_5finit_6',['bsend_init',['../classmpl_1_1communicator.html#aafb144ba1a5494f2a21de28c50b3ab91',1,'mpl::communicator::bsend_init(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ae2941001b886519f2d10d0ebb9901e70',1,'mpl::communicator::bsend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a5314e5dc5b35f952dba239b8f03be330',1,'mpl::communicator::bsend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['bsend_5fsize_7',['bsend_size',['../classmpl_1_1communicator.html#a4ac75dc1695c441e9e8faa185a458cc3',1,'mpl::communicator::bsend_size(int number=1) const'],['../classmpl_1_1communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb',1,'mpl::communicator::bsend_size(const layout< T > &l, int number=1) const']]], - ['buffer_5fattach_8',['buffer_attach',['../namespacempl_1_1environment.html#ab112324f29c5e0a131f1863ab11f2ff5',1,'mpl::environment']]], - ['buffer_5fdetach_9',['buffer_detach',['../namespacempl_1_1environment.html#aa73a2d692feb579fac1c5c351503fbe2',1,'mpl::environment']]], - ['byte_5fextent_10',['byte_extent',['../classmpl_1_1layout.html#a808408eaf18cfd04f8fc0e43ad8abece',1,'mpl::layout']]], - ['byte_5flower_5fbound_11',['byte_lower_bound',['../classmpl_1_1layout.html#aa391a934f031693cf985dcd1c675d8e4',1,'mpl::layout']]], - ['byte_5fresize_12',['byte_resize',['../classmpl_1_1layout.html#a05cc59346d0b585b92a266ac7e4512eb',1,'mpl::layout']]], - ['byte_5fupper_5fbound_13',['byte_upper_bound',['../classmpl_1_1layout.html#a9aea61b5ce92681aee5df4a61672c02b',1,'mpl::layout']]] + ['bcast_1',['bcast',['../classmpl_1_1communicator.html#ac4a94a9f873d03588857a3a8ded2d2e5',1,'mpl::communicator::bcast(int root_rank, T &data) const'],['../classmpl_1_1communicator.html#a719512973bc590402ac30b10e5227d2b',1,'mpl::communicator::bcast(int root_rank, T *data, const layout< T > &l) const']]], + ['begin_2',['begin',['../classmpl_1_1distributed__grid.html#a82adfb3638ace78e13b3803933f46585',1,'mpl::distributed_grid::begin()'],['../classmpl_1_1local__grid.html#a49ea125a5efe80df775f8dc62acaa2f2',1,'mpl::local_grid::begin()']]], + ['bsend_3',['bsend',['../classmpl_1_1communicator.html#a6329f7e1d90eaadbeee586c609cc4fe2',1,'mpl::communicator::bsend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ac43f72ca3930976c113403fd465087b0',1,'mpl::communicator::bsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ae4fb203eedb17ad02a5bbda04221d0b3',1,'mpl::communicator::bsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], + ['bsend_5fbuffer_4',['bsend_buffer',['../classmpl_1_1bsend__buffer.html#adde2469450f68ee1004d4abe9db9dff8',1,'mpl::bsend_buffer::bsend_buffer(bsend_buffer &&other)=delete'],['../classmpl_1_1bsend__buffer.html#a934b4eb83876f5cca25426fce5ce9d38',1,'mpl::bsend_buffer::bsend_buffer(int size)'],['../classmpl_1_1bsend__buffer.html#a67db6581e3a0f2cc46a3ab9ab2b9a571',1,'mpl::bsend_buffer::bsend_buffer(const bsend_buffer &other)=delete'],['../classmpl_1_1bsend__buffer.html#aba791f693bf2109841329467cc7fd2ff',1,'mpl::bsend_buffer::bsend_buffer()=delete']]], + ['bsend_5finit_5',['bsend_init',['../classmpl_1_1communicator.html#aafb144ba1a5494f2a21de28c50b3ab91',1,'mpl::communicator::bsend_init(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ae2941001b886519f2d10d0ebb9901e70',1,'mpl::communicator::bsend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a5314e5dc5b35f952dba239b8f03be330',1,'mpl::communicator::bsend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], + ['bsend_5fsize_6',['bsend_size',['../classmpl_1_1communicator.html#a4ac75dc1695c441e9e8faa185a458cc3',1,'mpl::communicator::bsend_size(int number=1) const'],['../classmpl_1_1communicator.html#a21c5bb2a8553bdaeaa4ae27e936c43fb',1,'mpl::communicator::bsend_size(const layout< T > &l, int number=1) const']]], + ['byte_5fextent_7',['byte_extent',['../classmpl_1_1layout.html#a808408eaf18cfd04f8fc0e43ad8abece',1,'mpl::layout']]], + ['byte_5flower_5fbound_8',['byte_lower_bound',['../classmpl_1_1layout.html#aa391a934f031693cf985dcd1c675d8e4',1,'mpl::layout']]], + ['byte_5fresize_9',['byte_resize',['../classmpl_1_1layout.html#a05cc59346d0b585b92a266ac7e4512eb',1,'mpl::layout']]], + ['byte_5fupper_5fbound_10',['byte_upper_bound',['../classmpl_1_1layout.html#a9aea61b5ce92681aee5df4a61672c02b',1,'mpl::layout']]] ]; diff --git a/docs/html/search/functions_12.js b/docs/html/search/functions_12.js index 9e0844ec..6cd75187 100644 --- a/docs/html/search/functions_12.js +++ b/docs/html/search/functions_12.js @@ -1,11 +1,4 @@ var searchData= [ - ['wait_0',['wait',['../classmpl_1_1impl_1_1request.html#aedca3ad316f078b0190b9396197a7605',1,'mpl::impl::request']]], - ['waitall_1',['waitall',['../classmpl_1_1impl_1_1request__pool.html#a1e864f5b3e62bb28db94bec090235401',1,'mpl::impl::request_pool']]], - ['waitany_2',['waitany',['../classmpl_1_1impl_1_1request__pool.html#a1acdccf04f454806bac255279ac53974',1,'mpl::impl::request_pool']]], - ['waitsome_3',['waitsome',['../classmpl_1_1impl_1_1request__pool.html#ab076cdb8feb7b1270497af73430e4fde',1,'mpl::impl::request_pool']]], - ['what_4',['what',['../classmpl_1_1error.html#a74cba88f95894c0abf2baff78a88076e',1,'mpl::error']]], - ['wtick_5',['wtick',['../namespacempl_1_1environment.html#ad5d86a31e41363a7b326baaa9dd32edb',1,'mpl::environment']]], - ['wtime_6',['wtime',['../namespacempl_1_1environment.html#a18e3982cf7b547d30b3f7f1236a079f6',1,'mpl::environment']]], - ['wtime_5fis_5fglobal_7',['wtime_is_global',['../namespacempl_1_1environment.html#a8df37b1fb318ae7efa867d9eda6b99b9',1,'mpl::environment']]] + ['what_0',['what',['../classmpl_1_1error.html#a74cba88f95894c0abf2baff78a88076e',1,'mpl::error']]] ]; diff --git a/docs/html/search/functions_13.js b/docs/html/search/functions_13.js index 9e4dd32d..dec748ee 100644 --- a/docs/html/search/functions_13.js +++ b/docs/html/search/functions_13.js @@ -3,7 +3,5 @@ var searchData= ['_7ebsend_5fbuffer_0',['~bsend_buffer',['../classmpl_1_1bsend__buffer.html#a550e637a57ab5a1db036b6da63a488b9',1,'mpl::bsend_buffer']]], ['_7ecommunicator_1',['~communicator',['../classmpl_1_1communicator.html#a47df48127ee7c1952d62832748b052cd',1,'mpl::communicator']]], ['_7egroup_2',['~group',['../classmpl_1_1group.html#a4bd2522d5cfecbd2c844e7bad1c0ae36',1,'mpl::group']]], - ['_7elayout_3',['~layout',['../classmpl_1_1layout.html#a09c644368b2506e471715313e9059717',1,'mpl::layout']]], - ['_7erequest_4',['~request',['../classmpl_1_1impl_1_1request.html#ab53c21c706def81d4953a618ab426c08',1,'mpl::impl::request']]], - ['_7erequest_5fpool_5',['~request_pool',['../classmpl_1_1impl_1_1request__pool.html#aedfd5afa202dcc4f82d06d45ba23a198',1,'mpl::impl::request_pool']]] + ['_7elayout_3',['~layout',['../classmpl_1_1layout.html#a09c644368b2506e471715313e9059717',1,'mpl::layout']]] ]; diff --git a/docs/html/search/functions_2.js b/docs/html/search/functions_2.js index 065f2d82..6a025ec6 100644 --- a/docs/html/search/functions_2.js +++ b/docs/html/search/functions_2.js @@ -1,16 +1,9 @@ var searchData= [ - ['cancel_0',['cancel',['../classmpl_1_1impl_1_1request__pool.html#a09521b62f5b53546c854e89644245b70',1,'mpl::impl::request_pool::cancel()'],['../classmpl_1_1impl_1_1request.html#ad2ddcfa49b35df4120235692fdebdef2',1,'mpl::impl::request::cancel()']]], - ['cancelall_1',['cancelall',['../classmpl_1_1impl_1_1request__pool.html#a4191612db45d53cab3a294f3ac2f9018',1,'mpl::impl::request_pool']]], - ['cartesian_5fcommunicator_2',['cartesian_communicator',['../classmpl_1_1cartesian__communicator.html#a0be8c91aaa5cde91fcaa15dcba18902a',1,'mpl::cartesian_communicator::cartesian_communicator()=default'],['../classmpl_1_1cartesian__communicator.html#a8b5179d9d85d4768f6134ff34b1f671a',1,'mpl::cartesian_communicator::cartesian_communicator(const cartesian_communicator &other)'],['../classmpl_1_1cartesian__communicator.html#a7fbc0f1d669e21a5e1dd6f2601d256b8',1,'mpl::cartesian_communicator::cartesian_communicator(const communicator &other, const dimensions &dims, bool reorder=true)'],['../classmpl_1_1cartesian__communicator.html#aaaf184e1efe161f33a006fc54fe0ff0b',1,'mpl::cartesian_communicator::cartesian_communicator(const cartesian_communicator &other, const included_tags &is_included)'],['../classmpl_1_1cartesian__communicator.html#a0c9fb786a1e4e458f11b73450f503b08',1,'mpl::cartesian_communicator::cartesian_communicator(cartesian_communicator &&other) noexcept']]], - ['cbegin_3',['cbegin',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a83beb2f3d7934fa15cc2fe9d73601d5d',1,'mpl::cartesian_communicator::dimensions::cbegin()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a970cdde63ec39539cf1f2cd8e8b290da',1,'mpl::distributed_grid::dimensions::cbegin()'],['../classmpl_1_1local__grid_1_1dimensions.html#a1f28ef835386df911b7db5e044b17858',1,'mpl::local_grid::dimensions::cbegin()']]], - ['cend_4',['cend',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a0061b4a1b2f65b3a987204a51626ca4e',1,'mpl::cartesian_communicator::dimensions::cend()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a39a982a284a1c264dc9b2c633be8f920',1,'mpl::distributed_grid::dimensions::cend()'],['../classmpl_1_1local__grid_1_1dimensions.html#a8e2b64a5ee4a8e5befe471fabd764a6e',1,'mpl::local_grid::dimensions::cend()']]], - ['comm_5fself_5',['comm_self',['../namespacempl_1_1environment.html#a785bf3032ef30fadadf9d834549041c1',1,'mpl::environment']]], - ['comm_5fworld_6',['comm_world',['../namespacempl_1_1environment.html#a1f4644f4435160bb33ada569dc3f48ac',1,'mpl::environment']]], - ['communicator_7',['communicator',['../classmpl_1_1communicator.html#ab082b5c443bf7db3fd803e723510d533',1,'mpl::communicator::communicator(comm_collective_tag comm_collective, const communicator &other, const group &gr)'],['../classmpl_1_1communicator.html#ae8dcb108a058800f583f92d8bc2d369f',1,'mpl::communicator::communicator()=default'],['../classmpl_1_1communicator.html#aaedab51467a9eb38a2aeedb58e357e3d',1,'mpl::communicator::communicator(const communicator &other)'],['../classmpl_1_1communicator.html#a615ca7d0551e964ca92c2d6f246bb595',1,'mpl::communicator::communicator(split_shared_memory_tag split_shared_memory, const communicator &other, key_type key=0)'],['../classmpl_1_1communicator.html#aef00e3ea7dcd56ab1c5fca19222af822',1,'mpl::communicator::communicator(split_tag split, const communicator &other, color_type color, key_type key=0)'],['../classmpl_1_1communicator.html#a9acb1690c4190b91b48cf919257182f3',1,'mpl::communicator::communicator(group_collective_tag group_collective, const communicator &other, const group &gr, tag_t t=tag_t(0))'],['../classmpl_1_1communicator.html#a61a0bccfa633febde368a29c749368bf',1,'mpl::communicator::communicator(communicator &&other) noexcept']]], - ['compare_8',['compare',['../classmpl_1_1group.html#a91ec59cb7d18120ac6f5b0dc40f37a95',1,'mpl::group::compare()'],['../classmpl_1_1communicator.html#a7b672d71b83fafca8f6bf4d435331180',1,'mpl::communicator::compare()']]], - ['const_5fiterator_9',['const_iterator',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#afb583e0b115e329d7303d1d9b99884fa',1,'mpl::cartesian_communicator::dimensions::const_iterator']]], - ['contiguous_5flayout_10',['contiguous_layout',['../classmpl_1_1contiguous__layout.html#ab067e1300c01e8bba62f0414bbac5254',1,'mpl::contiguous_layout::contiguous_layout(size_t count=0)'],['../classmpl_1_1contiguous__layout.html#aae660e5421a3eecf9b365ae32df3cf29',1,'mpl::contiguous_layout::contiguous_layout(size_t count, const contiguous_layout< T > &l)'],['../classmpl_1_1contiguous__layout.html#a8eda4ba99bfdf30d9773842d90616fd7',1,'mpl::contiguous_layout::contiguous_layout(const contiguous_layout< T > &l)'],['../classmpl_1_1contiguous__layout.html#a52268d8595fc53bfb6efa9e5ebdd1c11',1,'mpl::contiguous_layout::contiguous_layout(contiguous_layout &&l) noexcept']]], - ['contiguous_5flayouts_11',['contiguous_layouts',['../classmpl_1_1contiguous__layouts.html#a51ef8713bb2454de686381fd012e2845',1,'mpl::contiguous_layouts::contiguous_layouts()'],['../classmpl_1_1contiguous__layouts.html#a7c7201b2a4367597aac88ccfcbb9b797',1,'mpl::contiguous_layouts::contiguous_layouts(size_type n)']]], - ['coordinates_12',['coordinates',['../classmpl_1_1cartesian__communicator.html#afacca885dda7217d9c5f6ade30d2b14b',1,'mpl::cartesian_communicator::coordinates(int rank) const'],['../classmpl_1_1cartesian__communicator.html#a9319a8ed118960a716cbeba8c7ff6017',1,'mpl::cartesian_communicator::coordinates() const']]] + ['cartesian_5fcommunicator_0',['cartesian_communicator',['../classmpl_1_1cartesian__communicator.html#a8b5179d9d85d4768f6134ff34b1f671a',1,'mpl::cartesian_communicator::cartesian_communicator(const cartesian_communicator &other)'],['../classmpl_1_1cartesian__communicator.html#a7fbc0f1d669e21a5e1dd6f2601d256b8',1,'mpl::cartesian_communicator::cartesian_communicator(const communicator &other, const dimensions &dims, bool reorder=true)'],['../classmpl_1_1cartesian__communicator.html#aaaf184e1efe161f33a006fc54fe0ff0b',1,'mpl::cartesian_communicator::cartesian_communicator(const cartesian_communicator &other, const included_tags &is_included)'],['../classmpl_1_1cartesian__communicator.html#a0c9fb786a1e4e458f11b73450f503b08',1,'mpl::cartesian_communicator::cartesian_communicator(cartesian_communicator &&other) noexcept'],['../classmpl_1_1cartesian__communicator.html#a0be8c91aaa5cde91fcaa15dcba18902a',1,'mpl::cartesian_communicator::cartesian_communicator()=default']]], + ['communicator_1',['communicator',['../classmpl_1_1communicator.html#a615ca7d0551e964ca92c2d6f246bb595',1,'mpl::communicator::communicator(split_shared_memory_tag split_shared_memory, const communicator &other, key_type key=0)'],['../classmpl_1_1communicator.html#aef00e3ea7dcd56ab1c5fca19222af822',1,'mpl::communicator::communicator(split_tag split, const communicator &other, color_type color, key_type key=0)'],['../classmpl_1_1communicator.html#a9acb1690c4190b91b48cf919257182f3',1,'mpl::communicator::communicator(group_collective_tag group_collective, const communicator &other, const group &gr, tag_t t=tag_t(0))'],['../classmpl_1_1communicator.html#ab082b5c443bf7db3fd803e723510d533',1,'mpl::communicator::communicator(comm_collective_tag comm_collective, const communicator &other, const group &gr)'],['../classmpl_1_1communicator.html#a61a0bccfa633febde368a29c749368bf',1,'mpl::communicator::communicator(communicator &&other) noexcept'],['../classmpl_1_1communicator.html#aaedab51467a9eb38a2aeedb58e357e3d',1,'mpl::communicator::communicator(const communicator &other)'],['../classmpl_1_1communicator.html#ae8dcb108a058800f583f92d8bc2d369f',1,'mpl::communicator::communicator()=default']]], + ['compare_2',['compare',['../classmpl_1_1group.html#a91ec59cb7d18120ac6f5b0dc40f37a95',1,'mpl::group::compare()'],['../classmpl_1_1communicator.html#a7b672d71b83fafca8f6bf4d435331180',1,'mpl::communicator::compare()']]], + ['contiguous_5flayout_3',['contiguous_layout',['../classmpl_1_1contiguous__layout.html#ab067e1300c01e8bba62f0414bbac5254',1,'mpl::contiguous_layout::contiguous_layout(size_t count=0)'],['../classmpl_1_1contiguous__layout.html#aae660e5421a3eecf9b365ae32df3cf29',1,'mpl::contiguous_layout::contiguous_layout(size_t count, const contiguous_layout< T > &l)'],['../classmpl_1_1contiguous__layout.html#a8eda4ba99bfdf30d9773842d90616fd7',1,'mpl::contiguous_layout::contiguous_layout(const contiguous_layout< T > &l)'],['../classmpl_1_1contiguous__layout.html#a52268d8595fc53bfb6efa9e5ebdd1c11',1,'mpl::contiguous_layout::contiguous_layout(contiguous_layout &&l) noexcept']]], + ['contiguous_5flayouts_4',['contiguous_layouts',['../classmpl_1_1contiguous__layouts.html#a51ef8713bb2454de686381fd012e2845',1,'mpl::contiguous_layouts::contiguous_layouts()'],['../classmpl_1_1contiguous__layouts.html#a7c7201b2a4367597aac88ccfcbb9b797',1,'mpl::contiguous_layouts::contiguous_layouts(size_type n)']]], + ['coordinates_5',['coordinates',['../classmpl_1_1cartesian__communicator.html#afacca885dda7217d9c5f6ade30d2b14b',1,'mpl::cartesian_communicator::coordinates(int rank) const'],['../classmpl_1_1cartesian__communicator.html#a9319a8ed118960a716cbeba8c7ff6017',1,'mpl::cartesian_communicator::coordinates() const']]] ]; diff --git a/docs/html/search/functions_3.js b/docs/html/search/functions_3.js index 1ac2ccf8..8927bbe5 100644 --- a/docs/html/search/functions_3.js +++ b/docs/html/search/functions_3.js @@ -1,11 +1,10 @@ var searchData= [ - ['data_0',['data',['../classmpl_1_1distributed__grid.html#a641426ea3c1d4b7a2dd43a13d07fbf31',1,'mpl::distributed_grid::data() const'],['../classmpl_1_1distributed__grid.html#a61aa2b89cdafd5132f06b7e5417b3392',1,'mpl::distributed_grid::data()'],['../classmpl_1_1local__grid.html#a2a7363850b17823d78fc1030e11bcdaf',1,'mpl::local_grid::data() const'],['../classmpl_1_1local__grid.html#aadd875af7e7296c2f1c3ce289612a741',1,'mpl::local_grid::data()']]], + ['data_0',['data',['../classmpl_1_1distributed__grid.html#a641426ea3c1d4b7a2dd43a13d07fbf31',1,'mpl::distributed_grid::data()'],['../classmpl_1_1local__grid.html#aadd875af7e7296c2f1c3ce289612a741',1,'mpl::local_grid::data()'],['../classmpl_1_1local__grid.html#a2a7363850b17823d78fc1030e11bcdaf',1,'mpl::local_grid::data() const'],['../classmpl_1_1distributed__grid.html#a61aa2b89cdafd5132f06b7e5417b3392',1,'mpl::distributed_grid::data()']]], ['degree_1',['degree',['../classmpl_1_1graph__communicator.html#a545def7768f6786e06c36277c1d21cde',1,'mpl::graph_communicator::degree(int rank) const'],['../classmpl_1_1graph__communicator.html#a17dd29d46d12c1cafd0d4b9f7aa4f8e7',1,'mpl::graph_communicator::degree() const']]], - ['dimensionality_2',['dimensionality',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a85e2294bef52fe881817325a471cbbdd',1,'mpl::cartesian_communicator::dimensions::dimensionality()'],['../classmpl_1_1cartesian__communicator.html#a18dcf5985832334e0571e00a45d93d73',1,'mpl::cartesian_communicator::dimensionality()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a4234269aff1b0e9aaeb3646c5c5e59c4',1,'mpl::distributed_grid::dimensions::dimensionality()'],['../classmpl_1_1local__grid_1_1dimensions.html#a767a2725a0c272861e790d73820a9ddd',1,'mpl::local_grid::dimensions::dimensionality() const']]], - ['dimensions_3',['dimensions',['../classmpl_1_1local__grid_1_1dimensions.html#ab8b1729c7b9ca64080b7860dcad4867d',1,'mpl::local_grid::dimensions::dimensions(const size_type &size_0, const size_type &size_1, const size_type &size_2, const size_type &size_3)'],['../classmpl_1_1local__grid_1_1dimensions.html#a5623191cfc621bde04d8b1136c043565',1,'mpl::local_grid::dimensions::dimensions(const size_type &size_0, const size_type &size_1, const size_type &size_2)'],['../classmpl_1_1local__grid_1_1dimensions.html#a1a5fcff7b7e95203667e647731fcf2f1',1,'mpl::local_grid::dimensions::dimensions(const size_type &size_0, const size_type &size_1)'],['../classmpl_1_1local__grid_1_1dimensions.html#ae59e515d543aeeeac98bccb23a102e83',1,'mpl::local_grid::dimensions::dimensions(const size_type &size_0)'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a71f1e2fb5473cb5f4740f77b4981bca6',1,'mpl::distributed_grid::dimensions::dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1, const size_overlap_pair &size_2, const size_overlap_pair &size_3)'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a6b31044ed4f19efd4b5f11e922c197ce',1,'mpl::distributed_grid::dimensions::dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1, const size_overlap_pair &size_2)'],['../classmpl_1_1distributed__grid_1_1dimensions.html#aa006903038282202482f8d5fed47d765',1,'mpl::distributed_grid::dimensions::dimensions(const size_overlap_pair &size_0, const size_overlap_pair &size_1)'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a12485247b1062d3f0f73c858185f51bb',1,'mpl::distributed_grid::dimensions::dimensions(const size_overlap_pair &size_0)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a1c0bd8407ba113ff99fb79a562c63111',1,'mpl::cartesian_communicator::dimensions::dimensions(std::initializer_list< std::tuple< int, periodicity_tag > > list)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a797a227c86268a426e3c78d2cc0bde0e',1,'mpl::cartesian_communicator::dimensions::dimensions(std::initializer_list< periodicity_tag > list)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#ab2ef164390601631c8551b0112a7637f',1,'mpl::cartesian_communicator::dimensions::dimensions(int size)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a66a3ce1f62e1e85e9d94bbf73d59be8c',1,'mpl::cartesian_communicator::dimensions::dimensions()=default'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a90ce86dd81472bbcdf612649366be94c',1,'mpl::cartesian_communicator::vector::dimensions()']]], - ['dims_5fcreate_4',['dims_create',['../namespacempl.html#a7b638dd4b816832f5bab22fac8f157af',1,'mpl']]], - ['displacements_5',['displacements',['../classmpl_1_1displacements.html#ae1e24fef18246a0ca1cd857a691a02ce',1,'mpl::displacements::displacements(size_type n=0)'],['../classmpl_1_1displacements.html#a9b3133c451300e447c43374b8e785783',1,'mpl::displacements::displacements(std::initializer_list< MPI_Aint > init)'],['../classmpl_1_1displacements.html#a4fa9b3a5848ac407a2c80db370d4fcd9',1,'mpl::displacements::displacements(const displacements &other)=default'],['../classmpl_1_1displacements.html#ad82ea20c78609a9c4f23b1f689f8b36f',1,'mpl::displacements::displacements(displacements &&other)=default']]], - ['distributed_5fgraph_5fcommunicator_6',['distributed_graph_communicator',['../classmpl_1_1distributed__graph__communicator.html#a2431581c87c06df890a849c6b91972b9',1,'mpl::distributed_graph_communicator::distributed_graph_communicator()=default'],['../classmpl_1_1distributed__graph__communicator.html#a3365eb0152e5a5c34327478974193d24',1,'mpl::distributed_graph_communicator::distributed_graph_communicator(const distributed_graph_communicator &other)'],['../classmpl_1_1distributed__graph__communicator.html#a4ef63ca9340ce71f4903e2ce890fdcc0',1,'mpl::distributed_graph_communicator::distributed_graph_communicator(distributed_graph_communicator &&other) noexcept'],['../classmpl_1_1distributed__graph__communicator.html#a382f89a6edce34c57070c8be15b33205',1,'mpl::distributed_graph_communicator::distributed_graph_communicator(const communicator &other, const neighbours_set &sources, const neighbours_set &destinations, bool reorder=true)']]], - ['distributed_5fgrid_7',['distributed_grid',['../classmpl_1_1distributed__grid.html#ac533c3caf9f4a027a278bbdf57dfac0e',1,'mpl::distributed_grid']]] + ['dimensionality_2',['dimensionality',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a85e2294bef52fe881817325a471cbbdd',1,'mpl::cartesian_communicator::dimensions::dimensionality()'],['../classmpl_1_1cartesian__communicator.html#a18dcf5985832334e0571e00a45d93d73',1,'mpl::cartesian_communicator::dimensionality()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a4234269aff1b0e9aaeb3646c5c5e59c4',1,'mpl::distributed_grid::dimensions::dimensionality()'],['../classmpl_1_1local__grid_1_1dimensions.html#a767a2725a0c272861e790d73820a9ddd',1,'mpl::local_grid::dimensions::dimensionality()']]], + ['dimensions_3',['dimensions',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#ab2ef164390601631c8551b0112a7637f',1,'mpl::cartesian_communicator::dimensions::dimensions(int size)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a1c0bd8407ba113ff99fb79a562c63111',1,'mpl::cartesian_communicator::dimensions::dimensions(std::initializer_list< std::tuple< int, periodicity_tag > > list)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a797a227c86268a426e3c78d2cc0bde0e',1,'mpl::cartesian_communicator::dimensions::dimensions(std::initializer_list< periodicity_tag > list)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a66a3ce1f62e1e85e9d94bbf73d59be8c',1,'mpl::cartesian_communicator::dimensions::dimensions()=default'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a90ce86dd81472bbcdf612649366be94c',1,'mpl::cartesian_communicator::vector::dimensions()']]], + ['displacements_4',['displacements',['../classmpl_1_1displacements.html#ae1e24fef18246a0ca1cd857a691a02ce',1,'mpl::displacements::displacements(size_type n=0)'],['../classmpl_1_1displacements.html#a9b3133c451300e447c43374b8e785783',1,'mpl::displacements::displacements(std::initializer_list< MPI_Aint > init)'],['../classmpl_1_1displacements.html#a4fa9b3a5848ac407a2c80db370d4fcd9',1,'mpl::displacements::displacements(const displacements &other)=default'],['../classmpl_1_1displacements.html#ad82ea20c78609a9c4f23b1f689f8b36f',1,'mpl::displacements::displacements(displacements &&other)=default']]], + ['distributed_5fgraph_5fcommunicator_5',['distributed_graph_communicator',['../classmpl_1_1distributed__graph__communicator.html#a2431581c87c06df890a849c6b91972b9',1,'mpl::distributed_graph_communicator::distributed_graph_communicator()=default'],['../classmpl_1_1distributed__graph__communicator.html#a3365eb0152e5a5c34327478974193d24',1,'mpl::distributed_graph_communicator::distributed_graph_communicator(const distributed_graph_communicator &other)'],['../classmpl_1_1distributed__graph__communicator.html#a4ef63ca9340ce71f4903e2ce890fdcc0',1,'mpl::distributed_graph_communicator::distributed_graph_communicator(distributed_graph_communicator &&other) noexcept'],['../classmpl_1_1distributed__graph__communicator.html#a382f89a6edce34c57070c8be15b33205',1,'mpl::distributed_graph_communicator::distributed_graph_communicator(const communicator &other, const neighbours_set &sources, const neighbours_set &destinations, bool reorder=true)']]], + ['distributed_5fgrid_6',['distributed_grid',['../classmpl_1_1distributed__grid.html#ac533c3caf9f4a027a278bbdf57dfac0e',1,'mpl::distributed_grid']]] ]; diff --git a/docs/html/search/functions_4.js b/docs/html/search/functions_4.js index 1e8f97d9..ee0ca56e 100644 --- a/docs/html/search/functions_4.js +++ b/docs/html/search/functions_4.js @@ -1,10 +1,9 @@ var searchData= [ - ['edge_5fset_0',['edge_set',['../classmpl_1_1graph__communicator_1_1edge__set.html#a552f6b7dfdeeaf97dda2450135f23783',1,'mpl::graph_communicator::edge_set::edge_set(std::initializer_list< value_type > init)'],['../classmpl_1_1graph__communicator_1_1edge__set.html#a17430180fb679bda0388e2e5a9ee18f8',1,'mpl::graph_communicator::edge_set::edge_set()=default']]], - ['empty_1',['empty',['../classmpl_1_1impl_1_1request__pool.html#acdd1055b70611cd8796d0c22ccfb2397',1,'mpl::impl::request_pool']]], - ['empty_5flayout_2',['empty_layout',['../classmpl_1_1empty__layout.html#ae754e55f1d794ace955529f239a93de5',1,'mpl::empty_layout::empty_layout()'],['../classmpl_1_1empty__layout.html#ae20bac5a00ded8343c1e49333c4e17bc',1,'mpl::empty_layout::empty_layout(const empty_layout &l)'],['../classmpl_1_1empty__layout.html#a9facbf460f04ad85b60338794916c48e',1,'mpl::empty_layout::empty_layout(empty_layout &&l) noexcept']]], - ['end_3',['end',['../classmpl_1_1distributed__grid.html#a807f6d8f2bc9c200c6e14c1decad88a1',1,'mpl::distributed_grid::end()'],['../classmpl_1_1local__grid.html#a768da13de21322c71202e4d615023316',1,'mpl::local_grid::end()'],['../classmpl_1_1local__grid_1_1dimensions.html#a3d111525dd74a250c6f62a23f3683319',1,'mpl::local_grid::dimensions::end() const'],['../classmpl_1_1local__grid_1_1dimensions.html#a1cd6d5ec15683f71d3b32eb4118b7ce5',1,'mpl::local_grid::dimensions::end()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#ab40f9a1d115aee074419bc689b607d8b',1,'mpl::distributed_grid::dimensions::end() const'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a691847323bb99bfaaadc32aea94b77a4',1,'mpl::distributed_grid::dimensions::end()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a6cb868c4a70a860b986d6bda59067c6f',1,'mpl::cartesian_communicator::dimensions::end() const'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#abe4772eeabdce64a87a2e8be98ddb196',1,'mpl::cartesian_communicator::dimensions::end()']]], - ['error_4',['error',['../classmpl_1_1error.html#a63195dd370214a0afa3bd38b59ba7b37',1,'mpl::error::error()'],['../classmpl_1_1status__t.html#a87d62778e3e1f35f55f80a909f49130f',1,'mpl::status_t::error()']]], - ['exscan_5',['exscan',['../classmpl_1_1communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d',1,'mpl::communicator::exscan(F f, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9',1,'mpl::communicator::exscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#ad67313aace6a05f58081939eb1d2a4b8',1,'mpl::communicator::exscan(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a45585975b4b7cc0795a02abf6494963b',1,'mpl::communicator::exscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const']]], - ['extent_6',['extent',['../classmpl_1_1layout.html#abce0f3197d6b2252c951535b443d7d5e',1,'mpl::layout']]] + ['edge_5fset_0',['edge_set',['../classmpl_1_1graph__communicator_1_1edge__set.html#a17430180fb679bda0388e2e5a9ee18f8',1,'mpl::graph_communicator::edge_set::edge_set()=default'],['../classmpl_1_1graph__communicator_1_1edge__set.html#a552f6b7dfdeeaf97dda2450135f23783',1,'mpl::graph_communicator::edge_set::edge_set(std::initializer_list< value_type > init)']]], + ['empty_5flayout_1',['empty_layout',['../classmpl_1_1empty__layout.html#ae754e55f1d794ace955529f239a93de5',1,'mpl::empty_layout::empty_layout()'],['../classmpl_1_1empty__layout.html#ae20bac5a00ded8343c1e49333c4e17bc',1,'mpl::empty_layout::empty_layout(const empty_layout &l)'],['../classmpl_1_1empty__layout.html#a9facbf460f04ad85b60338794916c48e',1,'mpl::empty_layout::empty_layout(empty_layout &&l) noexcept']]], + ['end_2',['end',['../classmpl_1_1distributed__grid.html#a807f6d8f2bc9c200c6e14c1decad88a1',1,'mpl::distributed_grid::end()'],['../classmpl_1_1local__grid.html#a768da13de21322c71202e4d615023316',1,'mpl::local_grid::end()']]], + ['error_3',['error',['../classmpl_1_1error.html#a63195dd370214a0afa3bd38b59ba7b37',1,'mpl::error::error()'],['../classmpl_1_1status__t.html#a87d62778e3e1f35f55f80a909f49130f',1,'mpl::status_t::error()']]], + ['exscan_4',['exscan',['../classmpl_1_1communicator.html#adb0ada85d9fbc0a7f7355be5cf53262d',1,'mpl::communicator::exscan(F f, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a832be63c2e97542cc35c4ced9e5ba3b9',1,'mpl::communicator::exscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#ad67313aace6a05f58081939eb1d2a4b8',1,'mpl::communicator::exscan(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a45585975b4b7cc0795a02abf6494963b',1,'mpl::communicator::exscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const']]], + ['extent_5',['extent',['../classmpl_1_1layout.html#abce0f3197d6b2252c951535b443d7d5e',1,'mpl::layout']]] ]; diff --git a/docs/html/search/functions_5.js b/docs/html/search/functions_5.js index cbf4b1fa..e9dd935a 100644 --- a/docs/html/search/functions_5.js +++ b/docs/html/search/functions_5.js @@ -4,12 +4,10 @@ var searchData= ['gatherv_1',['gatherv',['../classmpl_1_1communicator.html#a32881aa49f5e9c71792e98629a131822',1,'mpl::communicator::gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#af1d52b673c059c284806768be1240afc',1,'mpl::communicator::gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const'],['../classmpl_1_1communicator.html#ae17e2ec67fab08b09d7c67923fa81b42',1,'mpl::communicator::gatherv(int root_rank, const T *senddata, const layout< T > &sendl) const']]], ['gbegin_2',['gbegin',['../classmpl_1_1distributed__grid.html#a5794c40591628769b667f0c6e4b879c6',1,'mpl::distributed_grid']]], ['gend_3',['gend',['../classmpl_1_1distributed__grid.html#aa6d72bfcbade9ce4574dd810044a1aa1',1,'mpl::distributed_grid']]], - ['get_4',['get',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a0555d632d9963ded11815f6c21e8c009',1,'mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy']]], - ['get_5fcount_5',['get_count',['../classmpl_1_1status__t.html#a781043b8bfd8ccef19e1f512021d2c83',1,'mpl::status_t::get_count() const'],['../classmpl_1_1status__t.html#a58de4e6c82f27f003be7d8d7425e0791',1,'mpl::status_t::get_count(const layout< T > &l) const']]], - ['get_5fdimensions_6',['get_dimensions',['../classmpl_1_1cartesian__communicator.html#a04b09e9b3cf996574d651ed195d462d0',1,'mpl::cartesian_communicator']]], - ['get_5fstatus_7',['get_status',['../classmpl_1_1impl_1_1request.html#a8ed5bdb05a4a5caf7dc2c08832b6fc73',1,'mpl::impl::request::get_status()'],['../classmpl_1_1impl_1_1request__pool.html#a7761f370d4bbef127a41fc1f4b0f39f9',1,'mpl::impl::request_pool::get_status()']]], - ['gindex_8',['gindex',['../classmpl_1_1distributed__grid.html#a8ac663b4a2e9e68c1274bdf49c39c23c',1,'mpl::distributed_grid']]], - ['graph_5fcommunicator_9',['graph_communicator',['../classmpl_1_1graph__communicator.html#af81016b2d1c45d91880894f13ba74182',1,'mpl::graph_communicator::graph_communicator()=default'],['../classmpl_1_1graph__communicator.html#ab4242c2300ed9c2d844001847027b148',1,'mpl::graph_communicator::graph_communicator(const graph_communicator &other)'],['../classmpl_1_1graph__communicator.html#a0053567d5a44c1783b35050f25f99ff0',1,'mpl::graph_communicator::graph_communicator(graph_communicator &&other) noexcept'],['../classmpl_1_1graph__communicator.html#a9b838df23d3b54ac7ff8f249e2a59e64',1,'mpl::graph_communicator::graph_communicator(const communicator &other, const edge_set &edges, bool reorder=true)']]], - ['group_10',['group',['../classmpl_1_1group.html#a41f80de72f9a7e5c3c4e15e99d0a6662',1,'mpl::group::group()=default'],['../classmpl_1_1group.html#a95548e78748fcfa9775a47754d185240',1,'mpl::group::group(const group &other)'],['../classmpl_1_1group.html#ae721323f69336a1ac2e4029a83ed0570',1,'mpl::group::group(group &&other) noexcept'],['../classmpl_1_1group.html#a23b0ce7e15b1a90e4d2facdfd4f98dd4',1,'mpl::group::group(const communicator &comm)'],['../classmpl_1_1group.html#ac54706f36382139b24b24a0311e0763b',1,'mpl::group::group(Union_tag tag, const group &other_1, const group &other_2)'],['../classmpl_1_1group.html#a9c2c30c4d43f3bea292a6ed934f2397e',1,'mpl::group::group(intersection_tag tag, const group &other_1, const group &other_2)'],['../classmpl_1_1group.html#a2b7b139ae5443f229ef75b47ec92125b',1,'mpl::group::group(difference_tag tag, const group &other_1, const group &other_2)'],['../classmpl_1_1group.html#a14eceda02a4e4a68124a4918320d34c6',1,'mpl::group::group(include_tag tag, const group &other, const ranks &rank)'],['../classmpl_1_1group.html#a53b37e0aa8afb9fd837b529facd6e626',1,'mpl::group::group(exclude_tag tag, const group &other, const ranks &rank)']]], - ['gsize_11',['gsize',['../classmpl_1_1distributed__grid.html#a4945000e5319f35d2aa104769b276618',1,'mpl::distributed_grid']]] + ['get_5fcount_4',['get_count',['../classmpl_1_1status__t.html#a781043b8bfd8ccef19e1f512021d2c83',1,'mpl::status_t::get_count() const'],['../classmpl_1_1status__t.html#a58de4e6c82f27f003be7d8d7425e0791',1,'mpl::status_t::get_count(const layout< T > &l) const']]], + ['get_5fdimensions_5',['get_dimensions',['../classmpl_1_1cartesian__communicator.html#a04b09e9b3cf996574d651ed195d462d0',1,'mpl::cartesian_communicator']]], + ['gindex_6',['gindex',['../classmpl_1_1distributed__grid.html#a8ac663b4a2e9e68c1274bdf49c39c23c',1,'mpl::distributed_grid']]], + ['graph_5fcommunicator_7',['graph_communicator',['../classmpl_1_1graph__communicator.html#af81016b2d1c45d91880894f13ba74182',1,'mpl::graph_communicator::graph_communicator()=default'],['../classmpl_1_1graph__communicator.html#a9b838df23d3b54ac7ff8f249e2a59e64',1,'mpl::graph_communicator::graph_communicator(const communicator &other, const edge_set &edges, bool reorder=true)'],['../classmpl_1_1graph__communicator.html#a0053567d5a44c1783b35050f25f99ff0',1,'mpl::graph_communicator::graph_communicator(graph_communicator &&other) noexcept'],['../classmpl_1_1graph__communicator.html#ab4242c2300ed9c2d844001847027b148',1,'mpl::graph_communicator::graph_communicator(const graph_communicator &other)']]], + ['group_8',['group',['../classmpl_1_1group.html#a41f80de72f9a7e5c3c4e15e99d0a6662',1,'mpl::group::group()=default'],['../classmpl_1_1group.html#a95548e78748fcfa9775a47754d185240',1,'mpl::group::group(const group &other)'],['../classmpl_1_1group.html#ae721323f69336a1ac2e4029a83ed0570',1,'mpl::group::group(group &&other) noexcept'],['../classmpl_1_1group.html#a23b0ce7e15b1a90e4d2facdfd4f98dd4',1,'mpl::group::group(const communicator &comm)'],['../classmpl_1_1group.html#ac54706f36382139b24b24a0311e0763b',1,'mpl::group::group(Union_tag tag, const group &other_1, const group &other_2)'],['../classmpl_1_1group.html#a9c2c30c4d43f3bea292a6ed934f2397e',1,'mpl::group::group(intersection_tag tag, const group &other_1, const group &other_2)'],['../classmpl_1_1group.html#a2b7b139ae5443f229ef75b47ec92125b',1,'mpl::group::group(difference_tag tag, const group &other_1, const group &other_2)'],['../classmpl_1_1group.html#a14eceda02a4e4a68124a4918320d34c6',1,'mpl::group::group(include_tag tag, const group &other, const ranks &rank)'],['../classmpl_1_1group.html#a53b37e0aa8afb9fd837b529facd6e626',1,'mpl::group::group(exclude_tag tag, const group &other, const ranks &rank)']]], + ['gsize_9',['gsize',['../classmpl_1_1distributed__grid.html#a4945000e5319f35d2aa104769b276618',1,'mpl::distributed_grid']]] ]; diff --git a/docs/html/search/functions_7.js b/docs/html/search/functions_7.js index bec6419c..e4b30393 100644 --- a/docs/html/search/functions_7.js +++ b/docs/html/search/functions_7.js @@ -1,54 +1,42 @@ var searchData= [ ['iallgather_0',['iallgather',['../classmpl_1_1communicator.html#acf38d8c4df7076f5e2aaaf43c7f85b47',1,'mpl::communicator::iallgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a601c251b4c10c6797af3cd741dea4d55',1,'mpl::communicator::iallgather(const T &senddata, T *recvdata) const']]], - ['iallgatherv_1',['iallgatherv',['../classmpl_1_1communicator.html#a95d5c90f2a58fe228d846942fe700645',1,'mpl::communicator::iallgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const'],['../classmpl_1_1communicator.html#a73df8f569865237bc58e2445c7d07742',1,'mpl::communicator::iallgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const']]], - ['iallreduce_2',['iallreduce',['../classmpl_1_1communicator.html#aa541e7830014dce23eb1ce5f6bcfe281',1,'mpl::communicator::iallreduce(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a5ce91750a7c77edf43e53ac88e4e8524',1,'mpl::communicator::iallreduce(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf',1,'mpl::communicator::iallreduce(F f, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a753e8742d27ff29a660b07ee0b90b69e',1,'mpl::communicator::iallreduce(F f, const T &senddata, T &recvdata) const']]], + ['iallgatherv_1',['iallgatherv',['../classmpl_1_1communicator.html#a73df8f569865237bc58e2445c7d07742',1,'mpl::communicator::iallgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#a95d5c90f2a58fe228d846942fe700645',1,'mpl::communicator::iallgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const']]], + ['iallreduce_2',['iallreduce',['../classmpl_1_1communicator.html#a753e8742d27ff29a660b07ee0b90b69e',1,'mpl::communicator::iallreduce(F f, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#aa541e7830014dce23eb1ce5f6bcfe281',1,'mpl::communicator::iallreduce(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a5ce91750a7c77edf43e53ac88e4e8524',1,'mpl::communicator::iallreduce(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#aa50f2d3ad4ca9b8e917997c0aa211edf',1,'mpl::communicator::iallreduce(F f, T *sendrecvdata, const contiguous_layout< T > &l) const']]], ['ialltoall_3',['ialltoall',['../classmpl_1_1communicator.html#aa2b51b89d72555ebfb1862d1de688061',1,'mpl::communicator::ialltoall(const T *senddata, T *recvdata) const'],['../classmpl_1_1communicator.html#ad15575d951e6a6c4327052e2ff01730f',1,'mpl::communicator::ialltoall(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#aadb9f14a7a9f9bd44eae7832daed895d',1,'mpl::communicator::ialltoall(T *sendrecvdata) const'],['../classmpl_1_1communicator.html#abe91007be7acef7641d6cbb08526d53b',1,'mpl::communicator::ialltoall(T *sendrecvdata, const layout< T > &sendrecvl) const']]], - ['ialltoallv_4',['ialltoallv',['../classmpl_1_1communicator.html#a68996ab5379c9a104572b804633d869e',1,'mpl::communicator::ialltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#a4cff38dd56b3d53992babac77cbefa8d',1,'mpl::communicator::ialltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const'],['../classmpl_1_1communicator.html#a5664d9591456924a7343082445bc8452',1,'mpl::communicator::ialltoallv(T *sendrecvdata, const layouts< T > &sendrecvls, const displacements &sendrecvdispls) const'],['../classmpl_1_1communicator.html#a7abdf44a7c377ba7191cb4abc6648afe',1,'mpl::communicator::ialltoallv(T *sendrecvdata, const layouts< T > &sendrecvls) const']]], + ['ialltoallv_4',['ialltoallv',['../classmpl_1_1communicator.html#a68996ab5379c9a104572b804633d869e',1,'mpl::communicator::ialltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#a7abdf44a7c377ba7191cb4abc6648afe',1,'mpl::communicator::ialltoallv(T *sendrecvdata, const layouts< T > &sendrecvls) const'],['../classmpl_1_1communicator.html#a5664d9591456924a7343082445bc8452',1,'mpl::communicator::ialltoallv(T *sendrecvdata, const layouts< T > &sendrecvls, const displacements &sendrecvdispls) const'],['../classmpl_1_1communicator.html#a4cff38dd56b3d53992babac77cbefa8d',1,'mpl::communicator::ialltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const']]], ['ibarrier_5',['ibarrier',['../classmpl_1_1communicator.html#acce39280ea657a7d9e5d675631cf7a12',1,'mpl::communicator']]], ['ibcast_6',['ibcast',['../classmpl_1_1communicator.html#aad369f0de0b51dc3cf7992ed26c0799d',1,'mpl::communicator::ibcast(int root_rank, T &data) const'],['../classmpl_1_1communicator.html#a69ebec18f9d55bc8e2b6951f97855068',1,'mpl::communicator::ibcast(int root_rank, T *data, const layout< T > &l) const']]], ['ibsend_7',['ibsend',['../classmpl_1_1communicator.html#a34c527f23af855f716bf00a2658c9436',1,'mpl::communicator::ibsend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a14b2306de71e02b0390c564ff6ba7c21',1,'mpl::communicator::ibsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a20505014d3a5ac58a5601faee033d003',1,'mpl::communicator::ibsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['iexscan_8',['iexscan',['../classmpl_1_1communicator.html#a7eddabba5f98c99db189844854690d13',1,'mpl::communicator::iexscan(F f, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a1bf177485606687353cd50bc5a3b3c59',1,'mpl::communicator::iexscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a20766ee389c97340241ff730eae49475',1,'mpl::communicator::iexscan(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a8e43e08af5e8481049731092274aca76',1,'mpl::communicator::iexscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const']]], - ['igather_9',['igather',['../classmpl_1_1communicator.html#a76dbca1b1f6089ee9e07e997b5d79295',1,'mpl::communicator::igather(int root_rank, const T &senddata, T *recvdata) const'],['../classmpl_1_1communicator.html#ad2d304708463bb6f91e1a54b3d87106a',1,'mpl::communicator::igather(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a4a29592502142845c3bb0031221189a3',1,'mpl::communicator::igather(int root_rank, const T &senddata) const'],['../classmpl_1_1communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c',1,'mpl::communicator::igather(int root_rank, const T *senddata, const layout< T > &sendl) const']]], - ['igatherv_10',['igatherv',['../classmpl_1_1communicator.html#a192fabbdbac09436fab92943148c5185',1,'mpl::communicator::igatherv(int root_rank, const T *senddata, const layout< T > &sendl) const'],['../classmpl_1_1communicator.html#a445e05af65cdc53b7a981d4884a4c3b8',1,'mpl::communicator::igatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f',1,'mpl::communicator::igatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const']]], + ['iexscan_8',['iexscan',['../classmpl_1_1communicator.html#a8e43e08af5e8481049731092274aca76',1,'mpl::communicator::iexscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a20766ee389c97340241ff730eae49475',1,'mpl::communicator::iexscan(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a1bf177485606687353cd50bc5a3b3c59',1,'mpl::communicator::iexscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a7eddabba5f98c99db189844854690d13',1,'mpl::communicator::iexscan(F f, const T &senddata, T &recvdata) const']]], + ['igather_9',['igather',['../classmpl_1_1communicator.html#ad2d304708463bb6f91e1a54b3d87106a',1,'mpl::communicator::igather(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a4a29592502142845c3bb0031221189a3',1,'mpl::communicator::igather(int root_rank, const T &senddata) const'],['../classmpl_1_1communicator.html#a5caeabedfdd6d607e4e1e8d3fc3b5a9c',1,'mpl::communicator::igather(int root_rank, const T *senddata, const layout< T > &sendl) const'],['../classmpl_1_1communicator.html#a76dbca1b1f6089ee9e07e997b5d79295',1,'mpl::communicator::igather(int root_rank, const T &senddata, T *recvdata) const']]], + ['igatherv_10',['igatherv',['../classmpl_1_1communicator.html#a445e05af65cdc53b7a981d4884a4c3b8',1,'mpl::communicator::igatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1communicator.html#a6dfe6a60042ae3b7c58be60f5f11aa3f',1,'mpl::communicator::igatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const'],['../classmpl_1_1communicator.html#a192fabbdbac09436fab92943148c5185',1,'mpl::communicator::igatherv(int root_rank, const T *senddata, const layout< T > &sendl) const']]], ['improbe_11',['improbe',['../classmpl_1_1communicator.html#a584ab09712e5a092f7b4dd7a2000c8b7',1,'mpl::communicator']]], ['imrecv_12',['imrecv',['../classmpl_1_1communicator.html#aa91aed6395fdcbb40788323a4cf45110',1,'mpl::communicator::imrecv(T &data, message_t &m) const'],['../classmpl_1_1communicator.html#a779f215eb82ce71764befaae9918b596',1,'mpl::communicator::imrecv(T *data, const layout< T > &l, message_t &m) const'],['../classmpl_1_1communicator.html#ae71687a9aa6bac6a2b888245aa801020',1,'mpl::communicator::imrecv(iterT begin, iterT end, message_t &m) const']]], ['in_5fdegree_13',['in_degree',['../classmpl_1_1distributed__graph__communicator.html#aa018e93fa8e391b0f7ac34ad707a64fe',1,'mpl::distributed_graph_communicator']]], ['in_5fneighbors_14',['in_neighbors',['../classmpl_1_1distributed__graph__communicator.html#afa3fdbce27f981366ddd913b496c7023',1,'mpl::distributed_graph_communicator']]], ['in_5fout_5fdegree_15',['in_out_degree',['../classmpl_1_1distributed__graph__communicator.html#ac8b0b4aa6e6c4e23ebd807ef809dad6b',1,'mpl::distributed_graph_communicator']]], ['included_5ftags_16',['included_tags',['../classmpl_1_1cartesian__communicator_1_1included__tags.html#ae18657b9e6cee8ffa9549f3b4bc3e104',1,'mpl::cartesian_communicator::included_tags::included_tags()=default'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a7c5d657f45d984865283fdb5dfd4edbc',1,'mpl::cartesian_communicator::included_tags::included_tags(int dimension)'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a949beacb76cdab143f823228f22cbf47',1,'mpl::cartesian_communicator::included_tags::included_tags(std::initializer_list< included_tag > init)']]], - ['indexed_5fblock_5flayout_17',['indexed_block_layout',['../classmpl_1_1indexed__block__layout.html#a1dc6994a6a2609d758a2311557a29998',1,'mpl::indexed_block_layout::indexed_block_layout(const indexed_block_layout< T > &l)'],['../classmpl_1_1indexed__block__layout.html#ae555bc8d3b95d9180a65668f9caece8e',1,'mpl::indexed_block_layout::indexed_block_layout(indexed_block_layout< T > &&l) noexcept'],['../classmpl_1_1indexed__block__layout.html#afe8a5303c144ec5b1b19c7d71cc90e99',1,'mpl::indexed_block_layout::indexed_block_layout(int blocklength, const parameter &par)'],['../classmpl_1_1indexed__block__layout.html#a53a1cb6e0006c275f9780191ceade271',1,'mpl::indexed_block_layout::indexed_block_layout()'],['../classmpl_1_1indexed__block__layout.html#a09471a11699169f30d5165bbe912cf8a',1,'mpl::indexed_block_layout::indexed_block_layout(int blocklength, const parameter &par, const layout< T > &l)']]], - ['indexed_5flayout_18',['indexed_layout',['../classmpl_1_1indexed__layout.html#a8193a18df935777de33730ecda553f18',1,'mpl::indexed_layout::indexed_layout()'],['../classmpl_1_1indexed__layout.html#a637fa395f20bf6a7b06f33fe8477716a',1,'mpl::indexed_layout::indexed_layout(const parameter &par)'],['../classmpl_1_1indexed__layout.html#a4814730ccbda9d2c8f4a00c76466bcf4',1,'mpl::indexed_layout::indexed_layout(const parameter &par, const layout< T > &l)'],['../classmpl_1_1indexed__layout.html#ab1ced466b429dc64c875e27b57763b46',1,'mpl::indexed_layout::indexed_layout(const indexed_layout< T > &l)'],['../classmpl_1_1indexed__layout.html#a91ad5d974413ad678d1bfd10e403f31f',1,'mpl::indexed_layout::indexed_layout(indexed_layout< T > &&l) noexcept']]], + ['indexed_5fblock_5flayout_17',['indexed_block_layout',['../classmpl_1_1indexed__block__layout.html#a53a1cb6e0006c275f9780191ceade271',1,'mpl::indexed_block_layout::indexed_block_layout()'],['../classmpl_1_1indexed__block__layout.html#afe8a5303c144ec5b1b19c7d71cc90e99',1,'mpl::indexed_block_layout::indexed_block_layout(int blocklength, const parameter &par)'],['../classmpl_1_1indexed__block__layout.html#a09471a11699169f30d5165bbe912cf8a',1,'mpl::indexed_block_layout::indexed_block_layout(int blocklength, const parameter &par, const layout< T > &l)'],['../classmpl_1_1indexed__block__layout.html#a1dc6994a6a2609d758a2311557a29998',1,'mpl::indexed_block_layout::indexed_block_layout(const indexed_block_layout< T > &l)'],['../classmpl_1_1indexed__block__layout.html#ae555bc8d3b95d9180a65668f9caece8e',1,'mpl::indexed_block_layout::indexed_block_layout(indexed_block_layout< T > &&l) noexcept']]], + ['indexed_5flayout_18',['indexed_layout',['../classmpl_1_1indexed__layout.html#ab1ced466b429dc64c875e27b57763b46',1,'mpl::indexed_layout::indexed_layout(const indexed_layout< T > &l)'],['../classmpl_1_1indexed__layout.html#a91ad5d974413ad678d1bfd10e403f31f',1,'mpl::indexed_layout::indexed_layout(indexed_layout< T > &&l) noexcept'],['../classmpl_1_1indexed__layout.html#a637fa395f20bf6a7b06f33fe8477716a',1,'mpl::indexed_layout::indexed_layout(const parameter &par)'],['../classmpl_1_1indexed__layout.html#a4814730ccbda9d2c8f4a00c76466bcf4',1,'mpl::indexed_layout::indexed_layout(const parameter &par, const layout< T > &l)'],['../classmpl_1_1indexed__layout.html#a8193a18df935777de33730ecda553f18',1,'mpl::indexed_layout::indexed_layout()']]], ['ineighbor_5fallgather_19',['ineighbor_allgather',['../classmpl_1_1impl_1_1topology__communicator.html#a068c77bb2536523c2bcbeb4d3d8efc7b',1,'mpl::impl::topology_communicator::ineighbor_allgather(const T &senddata, T *recvdata) const'],['../classmpl_1_1impl_1_1topology__communicator.html#aad40f322ef427d759fe699b1318c3103',1,'mpl::impl::topology_communicator::ineighbor_allgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const']]], ['ineighbor_5fallgatherv_20',['ineighbor_allgatherv',['../classmpl_1_1impl_1_1topology__communicator.html#aba77e505c9c19f3c6acdf10d4bc9fe16',1,'mpl::impl::topology_communicator::ineighbor_allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1impl_1_1topology__communicator.html#a9dccde1bf10e911c3a00d1a546005e94',1,'mpl::impl::topology_communicator::ineighbor_allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const']]], ['ineighbor_5falltoall_21',['ineighbor_alltoall',['../classmpl_1_1impl_1_1topology__communicator.html#ac7cb886dc70531a897bce6396c9a6e7e',1,'mpl::impl::topology_communicator::ineighbor_alltoall(const T *senddata, T *recvdata) const'],['../classmpl_1_1impl_1_1topology__communicator.html#a65311bd6bde1b8de5b8acf9ae902104a',1,'mpl::impl::topology_communicator::ineighbor_alltoall(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const']]], ['ineighbor_5falltoallv_22',['ineighbor_alltoallv',['../classmpl_1_1impl_1_1topology__communicator.html#a5ceb8a7771930409a0b7c54042b49866',1,'mpl::impl::topology_communicator::ineighbor_alltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1impl_1_1topology__communicator.html#a3fbbc822e36ea95e865a7b37ac0ad984',1,'mpl::impl::topology_communicator::ineighbor_alltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const']]], ['interior_5flayout_23',['interior_layout',['../classmpl_1_1distributed__grid.html#acd78758381fb6a8366913ca97dd10f86',1,'mpl::distributed_grid']]], - ['invalid_5fargument_24',['invalid_argument',['../classmpl_1_1invalid__argument.html#a561fcad448834774831ed758c927c911',1,'mpl::invalid_argument']]], - ['invalid_5fcount_25',['invalid_count',['../classmpl_1_1invalid__count.html#ae565237bd4635f06cb5daa665ac316c3',1,'mpl::invalid_count']]], - ['invalid_5fdatatype_5fbound_26',['invalid_datatype_bound',['../classmpl_1_1invalid__datatype__bound.html#ae8bb5417f504c1140e7312d85c35c79d',1,'mpl::invalid_datatype_bound']]], - ['invalid_5fdim_27',['invalid_dim',['../classmpl_1_1invalid__dim.html#a35fcdedad1a82a8df4961ec9f8c2b13f',1,'mpl::invalid_dim']]], - ['invalid_5flayout_28',['invalid_layout',['../classmpl_1_1invalid__layout.html#aba5a34fef955a918716733b36085baa5',1,'mpl::invalid_layout']]], - ['invalid_5frank_29',['invalid_rank',['../classmpl_1_1invalid__rank.html#ad37eac9d409ae80bc126da73cb048294',1,'mpl::invalid_rank']]], - ['invalid_5fsize_30',['invalid_size',['../classmpl_1_1invalid__size.html#af22c29b8f2a1b74d134a8c221d89bc58',1,'mpl::invalid_size']]], - ['invalid_5ftag_31',['invalid_tag',['../classmpl_1_1invalid__tag.html#a7e4700f381c0e849e1c0a6b51aee9465',1,'mpl::invalid_tag']]], - ['iprobe_32',['iprobe',['../classmpl_1_1communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69',1,'mpl::communicator']]], - ['irecv_33',['irecv',['../classmpl_1_1communicator.html#a82b6f15cef4c0daa6825bc699418df22',1,'mpl::communicator::irecv(T &data, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc',1,'mpl::communicator::irecv(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3',1,'mpl::communicator::irecv(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const']]], - ['ireduce_34',['ireduce',['../classmpl_1_1communicator.html#a79e5f4cd63cf9354ceedc4da193e2410',1,'mpl::communicator::ireduce(F f, int root_rank, const T &senddata) const'],['../classmpl_1_1communicator.html#abdb6d8fc8a9aafabf50b96275f09775d',1,'mpl::communicator::ireduce(F f, int root_rank, const T *senddata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a06525ff878eb073c02dc0bef285f06ac',1,'mpl::communicator::ireduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#ad2342955984c4db387d52a5414b212c5',1,'mpl::communicator::ireduce(F f, int root_rank, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a0e6459ad572cb1a69cb149df1871f2c6',1,'mpl::communicator::ireduce(F f, int root_rank, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a14ad784ff91391983f667a5cadbfe367',1,'mpl::communicator::ireduce(F f, int root_rank, const T &senddata, T &recvdata) const']]], - ['ireduce_5fscatter_35',['ireduce_scatter',['../classmpl_1_1communicator.html#a4de1ecacd035af3dca830995098a2f49',1,'mpl::communicator']]], - ['ireduce_5fscatter_5fblock_36',['ireduce_scatter_block',['../classmpl_1_1communicator.html#ae6e7de007099b7dc579f638a39d56911',1,'mpl::communicator::ireduce_scatter_block(F f, const T *senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a19912b0013f991bbebf2ef46fcb93c70',1,'mpl::communicator::ireduce_scatter_block(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &recvcount) const']]], - ['irequest_37',['irequest',['../classmpl_1_1impl_1_1irequest.html#a1f093c2ed5b963f78f55f8c9fee06f07',1,'mpl::impl::irequest::irequest()'],['../classmpl_1_1irequest.html#a67a88cdd06a34645ed430bbd6922a8b9',1,'mpl::irequest::irequest(const impl::irequest &r)'],['../classmpl_1_1irequest.html#ae4f7b65e9d801916ac0cb47c3c379de2',1,'mpl::irequest::irequest(const irequest &)=delete'],['../classmpl_1_1irequest.html#aad342024a6c6fe73177850401fe2130d',1,'mpl::irequest::irequest(irequest &&r) noexcept']]], - ['irequest_5fpool_38',['irequest_pool',['../classmpl_1_1irequest__pool.html#ae02a4f735ff77cf1e85ae79c399e5b8a',1,'mpl::irequest_pool::irequest_pool()=default'],['../classmpl_1_1irequest__pool.html#a1a8d4dfb6f2d6b2a12fb752a0c3cd37c',1,'mpl::irequest_pool::irequest_pool(const irequest_pool &)=delete'],['../classmpl_1_1irequest__pool.html#a0a59a78777963e261f6c89db28f07f28',1,'mpl::irequest_pool::irequest_pool(irequest_pool &&r) noexcept']]], - ['irsend_39',['irsend',['../classmpl_1_1communicator.html#abb0001ba1ee4c2fbd53038bde821e647',1,'mpl::communicator::irsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a970647a9680c6bdc3ffbe0814b32f989',1,'mpl::communicator::irsend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ae35acd56966f491923a80abbc13fe74a',1,'mpl::communicator::irsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const']]], - ['is_5fcanceled_40',['is_canceled',['../classmpl_1_1status__t.html#a10d1875d30534ff94e21d98aeed02e11',1,'mpl::status_t']]], - ['is_5fcancelled_41',['is_cancelled',['../classmpl_1_1status__t.html#a934d03b57e03aa23841cc44f0b73b7c1',1,'mpl::status_t']]], - ['is_5fthread_5fmain_42',['is_thread_main',['../namespacempl_1_1environment.html#a9bf5f93d0014124492bffd5b2df1f571',1,'mpl::environment']]], - ['is_5fvalid_43',['is_valid',['../classmpl_1_1communicator.html#ad8c0dc208fd9705a2423346d0baaff58',1,'mpl::communicator']]], - ['iscan_44',['iscan',['../classmpl_1_1communicator.html#a72d2639f200e5a36f1f81df5c499f06f',1,'mpl::communicator::iscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#ac514a6fe8a481f7120bc1d105c09ee96',1,'mpl::communicator::iscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416',1,'mpl::communicator::iscan(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#af786635362fca5a0f915771332383589',1,'mpl::communicator::iscan(F f, const T &senddata, T &recvdata) const']]], - ['iscatter_45',['iscatter',['../classmpl_1_1communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21',1,'mpl::communicator::iscatter(int root_rank, const T *senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a61c69fd52a576be43b7331536f54b73f',1,'mpl::communicator::iscatter(int root_rank, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a1948c90e2873f0db6b7fc32f7240e80a',1,'mpl::communicator::iscatter(int root_rank, T &recvdata) const'],['../classmpl_1_1communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3',1,'mpl::communicator::iscatter(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const']]], - ['iscatterv_46',['iscatterv',['../classmpl_1_1communicator.html#a031345325782266cecb521469e42d8c3',1,'mpl::communicator::iscatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a58b6d65e9351b61c493967718f550614',1,'mpl::communicator::iscatterv(int root_rank, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a9fbb87f9933ff071092164c9e264d817',1,'mpl::communicator::iscatterv(int root_rank, const T *senddata, const layouts< T > &sendls, T *recvdata, const layout< T > &recvl) const']]], - ['isend_47',['isend',['../classmpl_1_1communicator.html#aaf647eec3afe83caf2afafe5a82b405a',1,'mpl::communicator::isend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a67f541a36dee046cc12d15d9133930b7',1,'mpl::communicator::isend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a46e8797b907b9539b2ee90713a675e5c',1,'mpl::communicator::isend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['issend_48',['issend',['../classmpl_1_1communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2',1,'mpl::communicator::issend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#acdeb1107c64614728b6c2cc0e65075bf',1,'mpl::communicator::issend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f',1,'mpl::communicator::issend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['iterator_49',['iterator',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a7823145e46bc588bc50f4e06f38ab349',1,'mpl::cartesian_communicator::dimensions::iterator']]], - ['iterator_5flayout_50',['iterator_layout',['../classmpl_1_1iterator__layout.html#a9845f240dca4a7f7cfee5ac8f8c4cb09',1,'mpl::iterator_layout::iterator_layout()'],['../classmpl_1_1iterator__layout.html#a863e369b02d60dd0d7058ed9ff6fb56c',1,'mpl::iterator_layout::iterator_layout(iter_T first, iter_T last)'],['../classmpl_1_1iterator__layout.html#a54214c5c1248484bed83aba2aa4c1dc6',1,'mpl::iterator_layout::iterator_layout(const parameter &par)'],['../classmpl_1_1iterator__layout.html#a3d55526b2176cdb3c067b65d3c301183',1,'mpl::iterator_layout::iterator_layout(iter_T first, iter_T last, const layout< T > &l)'],['../classmpl_1_1iterator__layout.html#ab6a4de59b8716604d3fd66fd7e708300',1,'mpl::iterator_layout::iterator_layout(const parameter &par, const layout< T > &l)'],['../classmpl_1_1iterator__layout.html#a89ead1f759da22664d13f1c915dc8cd8',1,'mpl::iterator_layout::iterator_layout(const iterator_layout< T > &l)'],['../classmpl_1_1iterator__layout.html#ac26e4b99081e901b36cd89329ac22ffe',1,'mpl::iterator_layout::iterator_layout(iterator_layout< T > &&l) noexcept']]] + ['iprobe_24',['iprobe',['../classmpl_1_1communicator.html#a03276e2b031fb6710e9b53c6c2fe2a69',1,'mpl::communicator']]], + ['irecv_25',['irecv',['../classmpl_1_1communicator.html#a3fb6c06d5d3d42ef8e9288ceb13cf1fc',1,'mpl::communicator::irecv(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a0fcfdb3b2cea05caf20f79d04d02a6c3',1,'mpl::communicator::irecv(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a82b6f15cef4c0daa6825bc699418df22',1,'mpl::communicator::irecv(T &data, int source, tag_t t=tag_t(0)) const']]], + ['ireduce_26',['ireduce',['../classmpl_1_1communicator.html#a14ad784ff91391983f667a5cadbfe367',1,'mpl::communicator::ireduce(F f, int root_rank, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a0e6459ad572cb1a69cb149df1871f2c6',1,'mpl::communicator::ireduce(F f, int root_rank, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#ad2342955984c4db387d52a5414b212c5',1,'mpl::communicator::ireduce(F f, int root_rank, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a79e5f4cd63cf9354ceedc4da193e2410',1,'mpl::communicator::ireduce(F f, int root_rank, const T &senddata) const'],['../classmpl_1_1communicator.html#a06525ff878eb073c02dc0bef285f06ac',1,'mpl::communicator::ireduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#abdb6d8fc8a9aafabf50b96275f09775d',1,'mpl::communicator::ireduce(F f, int root_rank, const T *senddata, const contiguous_layout< T > &l) const']]], + ['ireduce_5fscatter_27',['ireduce_scatter',['../classmpl_1_1communicator.html#a4de1ecacd035af3dca830995098a2f49',1,'mpl::communicator']]], + ['ireduce_5fscatter_5fblock_28',['ireduce_scatter_block',['../classmpl_1_1communicator.html#ae6e7de007099b7dc579f638a39d56911',1,'mpl::communicator::ireduce_scatter_block(F f, const T *senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a19912b0013f991bbebf2ef46fcb93c70',1,'mpl::communicator::ireduce_scatter_block(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &recvcount) const']]], + ['irsend_29',['irsend',['../classmpl_1_1communicator.html#abb0001ba1ee4c2fbd53038bde821e647',1,'mpl::communicator::irsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a970647a9680c6bdc3ffbe0814b32f989',1,'mpl::communicator::irsend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ae35acd56966f491923a80abbc13fe74a',1,'mpl::communicator::irsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const']]], + ['is_5fcanceled_30',['is_canceled',['../classmpl_1_1status__t.html#a10d1875d30534ff94e21d98aeed02e11',1,'mpl::status_t']]], + ['is_5fcancelled_31',['is_cancelled',['../classmpl_1_1status__t.html#a934d03b57e03aa23841cc44f0b73b7c1',1,'mpl::status_t']]], + ['is_5fvalid_32',['is_valid',['../classmpl_1_1communicator.html#ad8c0dc208fd9705a2423346d0baaff58',1,'mpl::communicator']]], + ['iscan_33',['iscan',['../classmpl_1_1communicator.html#af786635362fca5a0f915771332383589',1,'mpl::communicator::iscan(F f, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a72d2639f200e5a36f1f81df5c499f06f',1,'mpl::communicator::iscan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a3f51295cbdebc4da6dd7ceebef8c0416',1,'mpl::communicator::iscan(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#ac514a6fe8a481f7120bc1d105c09ee96',1,'mpl::communicator::iscan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const']]], + ['iscatter_34',['iscatter',['../classmpl_1_1communicator.html#a4a4bd8dbd2f19bfd2bc9b23908eeae21',1,'mpl::communicator::iscatter(int root_rank, const T *senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#afe30dce35d6cadc3fa8b55e6e83c3ad3',1,'mpl::communicator::iscatter(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a1948c90e2873f0db6b7fc32f7240e80a',1,'mpl::communicator::iscatter(int root_rank, T &recvdata) const'],['../classmpl_1_1communicator.html#a61c69fd52a576be43b7331536f54b73f',1,'mpl::communicator::iscatter(int root_rank, T *recvdata, const layout< T > &recvl) const']]], + ['iscatterv_35',['iscatterv',['../classmpl_1_1communicator.html#a9fbb87f9933ff071092164c9e264d817',1,'mpl::communicator::iscatterv(int root_rank, const T *senddata, const layouts< T > &sendls, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a58b6d65e9351b61c493967718f550614',1,'mpl::communicator::iscatterv(int root_rank, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a031345325782266cecb521469e42d8c3',1,'mpl::communicator::iscatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const']]], + ['isend_36',['isend',['../classmpl_1_1communicator.html#aaf647eec3afe83caf2afafe5a82b405a',1,'mpl::communicator::isend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a67f541a36dee046cc12d15d9133930b7',1,'mpl::communicator::isend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a46e8797b907b9539b2ee90713a675e5c',1,'mpl::communicator::isend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], + ['issend_37',['issend',['../classmpl_1_1communicator.html#aadcfecc2b4f736a1350faa9dd94f45f2',1,'mpl::communicator::issend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#acdeb1107c64614728b6c2cc0e65075bf',1,'mpl::communicator::issend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a2ce34a3cdb5ee17bbb48f8f38a09ce0f',1,'mpl::communicator::issend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], + ['iterator_5flayout_38',['iterator_layout',['../classmpl_1_1iterator__layout.html#a9845f240dca4a7f7cfee5ac8f8c4cb09',1,'mpl::iterator_layout::iterator_layout()'],['../classmpl_1_1iterator__layout.html#a863e369b02d60dd0d7058ed9ff6fb56c',1,'mpl::iterator_layout::iterator_layout(iter_T first, iter_T last)'],['../classmpl_1_1iterator__layout.html#a54214c5c1248484bed83aba2aa4c1dc6',1,'mpl::iterator_layout::iterator_layout(const parameter &par)'],['../classmpl_1_1iterator__layout.html#a3d55526b2176cdb3c067b65d3c301183',1,'mpl::iterator_layout::iterator_layout(iter_T first, iter_T last, const layout< T > &l)'],['../classmpl_1_1iterator__layout.html#ab6a4de59b8716604d3fd66fd7e708300',1,'mpl::iterator_layout::iterator_layout(const parameter &par, const layout< T > &l)'],['../classmpl_1_1iterator__layout.html#a89ead1f759da22664d13f1c915dc8cd8',1,'mpl::iterator_layout::iterator_layout(const iterator_layout< T > &l)'],['../classmpl_1_1iterator__layout.html#ac26e4b99081e901b36cd89329ac22ffe',1,'mpl::iterator_layout::iterator_layout(iterator_layout< T > &&l) noexcept']]] ]; diff --git a/docs/html/search/functions_9.js b/docs/html/search/functions_9.js index 4500a1c7..97cdc7b4 100644 --- a/docs/html/search/functions_9.js +++ b/docs/html/search/functions_9.js @@ -1,6 +1,5 @@ var searchData= [ - ['make_5fabsolute_0',['make_absolute',['../namespacempl.html#a6481521478393b302a549178d93b8503',1,'mpl::make_absolute(T *x, const layout< T > &l)'],['../namespacempl.html#a118b145797198062151e6f43ee52046b',1,'mpl::make_absolute(const T *x, const layout< T > &l)']]], - ['mprobe_1',['mprobe',['../classmpl_1_1communicator.html#a179246280657f80aa624f7ebcb8ac9a4',1,'mpl::communicator']]], - ['mrecv_2',['mrecv',['../classmpl_1_1communicator.html#ad5daeea3d8b7033a2f70cd19582e098a',1,'mpl::communicator::mrecv(T &data, message_t &m) const'],['../classmpl_1_1communicator.html#af11d56af7c3459eac6b3f5285788c8b9',1,'mpl::communicator::mrecv(T *data, const layout< T > &l, message_t &m) const'],['../classmpl_1_1communicator.html#a89b9a55af5259f119281592b4f63f2ee',1,'mpl::communicator::mrecv(iterT begin, iterT end, message_t &m) const']]] + ['mprobe_0',['mprobe',['../classmpl_1_1communicator.html#a179246280657f80aa624f7ebcb8ac9a4',1,'mpl::communicator']]], + ['mrecv_1',['mrecv',['../classmpl_1_1communicator.html#ad5daeea3d8b7033a2f70cd19582e098a',1,'mpl::communicator::mrecv(T &data, message_t &m) const'],['../classmpl_1_1communicator.html#af11d56af7c3459eac6b3f5285788c8b9',1,'mpl::communicator::mrecv(T *data, const layout< T > &l, message_t &m) const'],['../classmpl_1_1communicator.html#a89b9a55af5259f119281592b4f63f2ee',1,'mpl::communicator::mrecv(iterT begin, iterT end, message_t &m) const']]] ]; diff --git a/docs/html/search/functions_a.js b/docs/html/search/functions_a.js index a9970ccd..5b240426 100644 --- a/docs/html/search/functions_a.js +++ b/docs/html/search/functions_a.js @@ -4,8 +4,8 @@ var searchData= ['neighbor_5fallgatherv_1',['neighbor_allgatherv',['../classmpl_1_1impl_1_1topology__communicator.html#a377702be1b30166ad458fcef11b2c239',1,'mpl::impl::topology_communicator::neighbor_allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1impl_1_1topology__communicator.html#af5822b089b634a670a9f3cef6e37dcef',1,'mpl::impl::topology_communicator::neighbor_allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const']]], ['neighbor_5falltoall_2',['neighbor_alltoall',['../classmpl_1_1impl_1_1topology__communicator.html#a03afcae482e770e40ca5df7ae77b29c6',1,'mpl::impl::topology_communicator::neighbor_alltoall(const T *senddata, T *recvdata) const'],['../classmpl_1_1impl_1_1topology__communicator.html#a455d8703c09913eebe31cd360351c308',1,'mpl::impl::topology_communicator::neighbor_alltoall(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const']]], ['neighbor_5falltoallv_3',['neighbor_alltoallv',['../classmpl_1_1impl_1_1topology__communicator.html#ada2dc41f3f09788b9dd87be27981668a',1,'mpl::impl::topology_communicator::neighbor_alltoallv(const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const'],['../classmpl_1_1impl_1_1topology__communicator.html#a54da0c73668349841c941c53c6acff81',1,'mpl::impl::topology_communicator::neighbor_alltoallv(const T *senddata, const layouts< T > &sendls, T *recvdata, const layouts< T > &recvls) const']]], - ['neighbors_4',['neighbors',['../classmpl_1_1graph__communicator.html#af39af30840dbd4cdefb3c91b96f80a40',1,'mpl::graph_communicator::neighbors() const'],['../classmpl_1_1graph__communicator.html#ad517010b26940090a839b6ef0c3d95ad',1,'mpl::graph_communicator::neighbors(int rank) const']]], + ['neighbors_4',['neighbors',['../classmpl_1_1graph__communicator.html#ad517010b26940090a839b6ef0c3d95ad',1,'mpl::graph_communicator::neighbors(int rank) const'],['../classmpl_1_1graph__communicator.html#af39af30840dbd4cdefb3c91b96f80a40',1,'mpl::graph_communicator::neighbors() const']]], ['neighbours_5fset_5',['neighbours_set',['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#ac33e4cd06803a0e689a73d737a39f815',1,'mpl::distributed_graph_communicator::neighbours_set::neighbours_set()=default'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#aa7dded0f45c35d7c28a87e443ddac33f',1,'mpl::distributed_graph_communicator::neighbours_set::neighbours_set(std::initializer_list< value_type > init)']]], ['node_5flist_6',['node_list',['../classmpl_1_1graph__communicator_1_1node__list.html#a9321529165dbf31bdacaed44c2c3bd89',1,'mpl::graph_communicator::node_list::node_list()=default'],['../classmpl_1_1graph__communicator_1_1node__list.html#a6705675a9a7343424dece2f056060f4a',1,'mpl::graph_communicator::node_list::node_list(int nodes)'],['../classmpl_1_1graph__communicator_1_1node__list.html#afe55816c0169408a56e42c412f04e86f',1,'mpl::graph_communicator::node_list::node_list(std::initializer_list< int > init)']]], - ['null_5flayout_7',['null_layout',['../classmpl_1_1null__layout.html#acac7c25a8345ee4860f372efb0528159',1,'mpl::null_layout::null_layout() noexcept'],['../classmpl_1_1null__layout.html#a1e3a1fc89a2e4cc97313b09613a19fbb',1,'mpl::null_layout::null_layout(const null_layout &l) noexcept'],['../classmpl_1_1null__layout.html#a870ae11bff01c96d3a71028826c8d477',1,'mpl::null_layout::null_layout(null_layout &&l) noexcept']]] + ['null_5flayout_7',['null_layout',['../classmpl_1_1null__layout.html#acac7c25a8345ee4860f372efb0528159',1,'mpl::null_layout::null_layout() noexcept'],['../classmpl_1_1null__layout.html#a1e3a1fc89a2e4cc97313b09613a19fbb',1,'mpl::null_layout::null_layout(const null_layout &l) noexcept']]] ]; diff --git a/docs/html/search/functions_b.js b/docs/html/search/functions_b.js index fba6a745..4494c470 100644 --- a/docs/html/search/functions_b.js +++ b/docs/html/search/functions_b.js @@ -3,17 +3,13 @@ var searchData= ['obegin_0',['obegin',['../classmpl_1_1distributed__grid.html#ac2bb06d14b8dc3d305592b90be4b4245',1,'mpl::distributed_grid']]], ['oend_1',['oend',['../classmpl_1_1distributed__grid.html#adb4997427246517519393e49049bebbd',1,'mpl::distributed_grid']]], ['operator_20int_2',['operator int',['../classmpl_1_1tag__t.html#a1946fdf44d007662a538252b11dc5d23',1,'mpl::tag_t']]], - ['operator_21_3d_3',['operator!=',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a1303b66cdd13a09584a89b44bff40d7a',1,'mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy::operator!=()'],['../classmpl_1_1group.html#a3559e4d5efc98ec127fce7f3dc487291',1,'mpl::group::operator!=()'],['../classmpl_1_1communicator.html#aea3f30e3e33676cfbd8f3757082949cd',1,'mpl::communicator::operator!=()'],['../namespacempl.html#ab242c0bf99fd03e51e406ee59b36ac4f',1,'mpl::operator!=(const distributed_graph_communicator::rank_weight_pair &pair_1, const distributed_graph_communicator::rank_weight_pair &pair_2)'],['../namespacempl.html#af4c305e85a8670fe754351dd3f8366b7',1,'mpl::operator!=(const graph_communicator::node_list &l_1, const graph_communicator::node_list &l_2)'],['../namespacempl.html#a79afe2e73335bd43c875005716304b89',1,'mpl::operator!=(tag_t t1, tag_t t2)']]], - ['operator_28_29_4',['operator()',['../classmpl_1_1local__grid.html#adee4f6ca84465120671ec7ab6f673ebf',1,'mpl::local_grid::operator()()'],['../classmpl_1_1ranks.html#acb6c3e3088cac56b8af02aeccf0d7a40',1,'mpl::ranks::operator()()'],['../structmpl_1_1max.html#a2908e4ec953dd58edf8079788bec51e0',1,'mpl::max::operator()()'],['../structmpl_1_1min.html#a23b201ffe2013e1f55f1ea0cdc02e0f8',1,'mpl::min::operator()()'],['../structmpl_1_1plus.html#a946a45253a41fb515c6d4cf467eeac41',1,'mpl::plus::operator()()'],['../structmpl_1_1multiplies.html#a224ea72086f08b923bb32ac7ebf1704d',1,'mpl::multiplies::operator()()'],['../structmpl_1_1logical__and.html#a41d77b4ab90b1d0363eb65dea6100d00',1,'mpl::logical_and::operator()()'],['../structmpl_1_1logical__or.html#ad4f0f01a628867690d1fd9e4f265b681',1,'mpl::logical_or::operator()()'],['../structmpl_1_1logical__xor.html#a66bb19d69956d437e42f8cbea11b8fb1',1,'mpl::logical_xor::operator()()'],['../structmpl_1_1bit__and.html#a7133da51787910d7e6ca97be99782268',1,'mpl::bit_and::operator()()'],['../structmpl_1_1bit__or.html#ab5a228ee19d0bfb34f9b239a85dc5eac',1,'mpl::bit_or::operator()()'],['../structmpl_1_1bit__xor.html#a8d990747d97457d18652ac9a58e424fb',1,'mpl::bit_xor::operator()()'],['../classmpl_1_1ranks.html#a988be0bf88d82f0b34aa826d7ba82b44',1,'mpl::ranks::operator()()'],['../classmpl_1_1distributed__grid.html#a1aeca17c53c962ae27ca0e24d976171e',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1, size_type i_2) const'],['../classmpl_1_1distributed__grid.html#a003cab421d434c154fc865a407cf60e8',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1)'],['../classmpl_1_1distributed__grid.html#a8f9854c65734629b85e7ea3ab69612ee',1,'mpl::distributed_grid::operator()(size_type i_0) const'],['../classmpl_1_1distributed__grid.html#a87a2ba870110b8c294ecaaa25c79826f',1,'mpl::distributed_grid::operator()(size_type i_0)'],['../classmpl_1_1displacements.html#aa632306f2aadfee96b2842791d771cee',1,'mpl::displacements::operator()()'],['../classmpl_1_1local__grid.html#acd9f95c3471b08a4dc3da723d6c121b3',1,'mpl::local_grid::operator()()'],['../classmpl_1_1distributed__grid.html#aa726d934b2ec0b5479fdbe299cfa9a66',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1) const'],['../classmpl_1_1distributed__grid.html#a1627554f0a1f004b002b4437f31ffde1',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1, size_type i_2)'],['../classmpl_1_1distributed__grid.html#a144e45f64ac0694660ba2891405bedf1',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1, size_type i_2, size_type i_3)'],['../classmpl_1_1distributed__grid.html#a39550233d58d0f53264b3f1bf5b3575b',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1, size_type i_2, size_type i_3) const'],['../classmpl_1_1local__grid.html#a213eb274680567cdcd292f5080f22e71',1,'mpl::local_grid::operator()(size_type i_0)'],['../classmpl_1_1local__grid.html#a17585fc73aba29fb6ab0e3d8022b25be',1,'mpl::local_grid::operator()(size_type i_0) const'],['../classmpl_1_1local__grid.html#a0bc2c3d68db9a67e6bd415c2c7d0131b',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1)'],['../classmpl_1_1local__grid.html#a6be0b3c4b9aced8db5d1a250a722a4bf',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1) const'],['../classmpl_1_1local__grid.html#a884c5dfdd939ad61fd2ad4de8d1c63fd',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1, size_type i_2)'],['../classmpl_1_1local__grid.html#aea49a8961c1544888e3d697614e76282',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1, size_type i_2) const']]], - ['operator_2a_5',['operator*',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#aef35daadcb5e7c9292367318d1e4ad2a',1,'mpl::cartesian_communicator::dimensions::iterator::operator*()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a96670119c07635bab19f68b1c865c0a7',1,'mpl::cartesian_communicator::dimensions::const_iterator::operator*() const']]], - ['operator_2b_2b_6',['operator++',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a0749daf0892e8c7c0d5b5da5bc8d0749',1,'mpl::cartesian_communicator::dimensions::const_iterator::operator++()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a9cc5ab905da7e4568ca31d9d7034992a',1,'mpl::cartesian_communicator::dimensions::const_iterator::operator++(int)'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#acb32b214c2b2a45fd4d770f2f32d414a',1,'mpl::cartesian_communicator::dimensions::iterator::operator++(int)'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#ac2db8b996b26b13b844e0f715f1eee3f',1,'mpl::cartesian_communicator::dimensions::iterator::operator++()']]], - ['operator_3c_3c_7',['operator<<',['../namespacempl.html#a6aabc6191f8b6e463e4c283f7b05985a',1,'mpl']]], - ['operator_3d_8',['operator=',['../classmpl_1_1indexed__block__layout.html#a74478123f3da83ff60414e723836f46a',1,'mpl::indexed_block_layout::operator=(const indexed_block_layout< T > &l)=default'],['../classmpl_1_1indexed__block__layout.html#a0397342ecc9d8e57d7e7443971966e2c',1,'mpl::indexed_block_layout::operator=(indexed_block_layout< T > &&l) noexcept=default'],['../classmpl_1_1hindexed__block__layout.html#a9efe673232ce9180c2c96f0048da8187',1,'mpl::hindexed_block_layout::operator=(const hindexed_block_layout< T > &l)=default'],['../classmpl_1_1hindexed__block__layout.html#a9cedaad857c684ce5265110c6a9b82e5',1,'mpl::hindexed_block_layout::operator=(hindexed_block_layout< T > &&l) noexcept=default'],['../classmpl_1_1iterator__layout.html#ab8bedf7645837efd22d0197749e8eb8d',1,'mpl::iterator_layout::operator=(const iterator_layout< T > &l)=default'],['../classmpl_1_1iterator__layout.html#ac80c19464fd5b48ceb62ac7592619f32',1,'mpl::iterator_layout::operator=(iterator_layout< T > &&l) noexcept=default'],['../classmpl_1_1subarray__layout.html#a9d10a8cb6f0e530fd4d6677ed6a6e16d',1,'mpl::subarray_layout::operator=(const subarray_layout< T > &l)=default'],['../classmpl_1_1subarray__layout.html#adad3946bd689cb93da9fc1f182d17f37',1,'mpl::subarray_layout::operator=(subarray_layout< T > &&l) noexcept=default'],['../classmpl_1_1heterogeneous__layout.html#ada4aa6f3f64e5bd5519b36a5d80c780e',1,'mpl::heterogeneous_layout::operator=(const heterogeneous_layout &l)=default'],['../classmpl_1_1heterogeneous__layout.html#aa4701dfc7a4cb2402ed3484e87947be6',1,'mpl::heterogeneous_layout::operator=(heterogeneous_layout &&l) noexcept=default'],['../classmpl_1_1impl_1_1request.html#a33283c16ad83120ba14976a109ee9040',1,'mpl::impl::request::operator=(const request &)=delete'],['../classmpl_1_1impl_1_1request.html#a89cc002a4f4c608d7ecdc3ef03fa575a',1,'mpl::impl::request::operator=(request &&other) noexcept'],['../classmpl_1_1impl_1_1request__pool.html#ade8d3d85e937db0607a6da284d290891',1,'mpl::impl::request_pool::operator=(const request_pool &)=delete'],['../classmpl_1_1impl_1_1request__pool.html#aad75fcd95d200f87043b6bf59074f5e2',1,'mpl::impl::request_pool::operator=(request_pool &&other) noexcept'],['../classmpl_1_1irequest.html#af5b70e2988f99a85b17ce3e4f80fee36',1,'mpl::irequest::operator=(const irequest &)=delete'],['../classmpl_1_1irequest.html#afc1a5562cbe2971ed389b6733dfd551e',1,'mpl::irequest::operator=(irequest &&other) noexcept'],['../classmpl_1_1irequest__pool.html#a79a2d05644a537414fdfdb90de9dd7ab',1,'mpl::irequest_pool::operator=(const irequest_pool &)=delete'],['../classmpl_1_1irequest__pool.html#aed3ca89d2b316935ff07d39fb0f6be61',1,'mpl::irequest_pool::operator=(irequest_pool &&other) noexcept'],['../classmpl_1_1prequest.html#ac73e55bc09c70db84fd4a32f9aa986d5',1,'mpl::prequest::operator=(const prequest &)=delete'],['../classmpl_1_1prequest.html#a9b969f7e70507186466267e3fb029e09',1,'mpl::prequest::operator=(prequest &&other) noexcept'],['../classmpl_1_1prequest__pool.html#a4335e6cb787ded0e1ec4616460107eb0',1,'mpl::prequest_pool::operator=(const prequest_pool &)=delete'],['../classmpl_1_1prequest__pool.html#a837cce36fab3191a0239a1aab47dc752',1,'mpl::prequest_pool::operator=(prequest_pool &&other) noexcept'],['../classmpl_1_1impl_1_1topology__communicator.html#a57de7fa3dd71c67ff0da9826c7ef0c71',1,'mpl::impl::topology_communicator::operator=()'],['../classmpl_1_1contiguous__layout.html#ae982602643daa885058b55d85b463ee9',1,'mpl::contiguous_layout::operator=()'],['../classmpl_1_1bsend__buffer.html#aa14cb912c156e9dc34934131071163b7',1,'mpl::bsend_buffer::operator=()'],['../classmpl_1_1group.html#a4ac9d08869779bc83b1603415421ab34',1,'mpl::group::operator=()'],['../classmpl_1_1cartesian__communicator.html#a4800098a181afa4eff436bdfe9c11a44',1,'mpl::cartesian_communicator::operator=(cartesian_communicator &&other) noexcept'],['../classmpl_1_1cartesian__communicator.html#a404d0186a6e9cbbac0e79ae320eeb382',1,'mpl::cartesian_communicator::operator=(const cartesian_communicator &other) noexcept'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a3353907d5c2825712c2a80362a891f52',1,'mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy::operator=()'],['../classmpl_1_1hindexed__layout.html#a51e7ccbf3a8b3552c53d0624fbff10d3',1,'mpl::hindexed_layout::operator=()'],['../classmpl_1_1group.html#aaab91fd6a016fe57c053102d6c8f9bc4',1,'mpl::group::operator=()'],['../classmpl_1_1communicator.html#ad583dab604376864ba373505b7f33911',1,'mpl::communicator::operator=(const communicator &other) noexcept'],['../classmpl_1_1communicator.html#a06c080c4492462cd582894a04191de56',1,'mpl::communicator::operator=(communicator &&other) noexcept'],['../classmpl_1_1base__struct__builder.html#a89fee93a94ed5fe7d423733cb3ba4224',1,'mpl::base_struct_builder::operator=()'],['../classmpl_1_1distributed__graph__communicator.html#ae4313c9f339d60a7c2fa1148a97626c9',1,'mpl::distributed_graph_communicator::operator=(const distributed_graph_communicator &other) noexcept'],['../classmpl_1_1distributed__graph__communicator.html#afe84efb5ffee5860ab38c3a4d87ec65a',1,'mpl::distributed_graph_communicator::operator=(distributed_graph_communicator &&other) noexcept'],['../classmpl_1_1bsend__buffer.html#a8e4d57e9746570efa124e919cd0de1d2',1,'mpl::bsend_buffer::operator=()'],['../classmpl_1_1graph__communicator.html#adce11d71ed0d0398316f5a5669b5bdbf',1,'mpl::graph_communicator::operator=()'],['../classmpl_1_1vector__layout.html#ab153f0de6c047fffe6adbf22b0a0efb1',1,'mpl::vector_layout::operator=()'],['../classmpl_1_1hindexed__layout.html#ae36e81cb6bbec4abe96e430e6d02f938',1,'mpl::hindexed_layout::operator=()'],['../classmpl_1_1indexed__layout.html#a1b604ca3e6e607f1e7c33d771c88d275',1,'mpl::indexed_layout::operator=(indexed_layout< T > &&l) noexcept=default'],['../classmpl_1_1indexed__layout.html#a2ef13d7c3e8178574a15db51056df13e',1,'mpl::indexed_layout::operator=(const indexed_layout< T > &l)=default'],['../classmpl_1_1strided__vector__layout.html#a9120a85b7377a2e625b0b0966164339f',1,'mpl::strided_vector_layout::operator=(strided_vector_layout< T > &&l) noexcept=default'],['../classmpl_1_1strided__vector__layout.html#aa9cbbcfed65d7a004c435b699ccd4d74',1,'mpl::strided_vector_layout::operator=(const strided_vector_layout< T > &l)=default'],['../classmpl_1_1graph__communicator.html#a9c706fcf6770f01b69256c7f76c97222',1,'mpl::graph_communicator::operator=()'],['../classmpl_1_1vector__layout.html#a7ac32dc6996968661dc9f4cd685b8d57',1,'mpl::vector_layout::operator=()'],['../classmpl_1_1contiguous__layout.html#adb39eadffb6dbffe72480764ba486245',1,'mpl::contiguous_layout::operator=()'],['../classmpl_1_1empty__layout.html#a224759434f429819105ed1a4094e077c',1,'mpl::empty_layout::operator=(empty_layout< T > &&l) noexcept=default'],['../classmpl_1_1empty__layout.html#a1246ee522d696afa489afd98eae2437c',1,'mpl::empty_layout::operator=(const empty_layout< T > &l)=default'],['../classmpl_1_1layout.html#a057fa0a49c1133de3b41b8c5eefe576c',1,'mpl::layout::operator=(layout &&l) noexcept'],['../classmpl_1_1layout.html#ada64a312d8d2032e9b1faef1ffca5dbd',1,'mpl::layout::operator=(const layout &l)']]], - ['operator_3d_3d_9',['operator==',['../namespacempl.html#ab82856a9a5264addefc5e436a19e3565',1,'mpl::operator==(tag_t t1, tag_t t2)'],['../namespacempl.html#a39c14458a8b289cc73bce2e2e156783b',1,'mpl::operator==(const graph_communicator::node_list &l_1, const graph_communicator::node_list &l_2)'],['../namespacempl.html#a9593329c5b9cc66fdf2defd6f2e00431',1,'mpl::operator==(const distributed_graph_communicator::rank_weight_pair &pair_1, const distributed_graph_communicator::rank_weight_pair &pair_2)'],['../classmpl_1_1communicator.html#a153a492a90432d228638e2548b2a65b5',1,'mpl::communicator::operator==()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a4fcb9247987978603e60fafd6b1b0efc',1,'mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy::operator==()'],['../classmpl_1_1group.html#a1b3542e4a7d8cfcbf6bfc7ecb4905f4f',1,'mpl::group::operator==()']]], - ['operator_3e_3e_10',['operator>>',['../namespacempl.html#a700cde8da9a9d5af915974f05b9863b4',1,'mpl']]], - ['operator_5b_5d_11',['operator[]',['../classmpl_1_1distributed__grid_1_1dimensions.html#a894d21035df664610e1400581025ca7d',1,'mpl::distributed_grid::dimensions::operator[]()'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a3d22ddb853627dcb5d33d690c28a44ac',1,'mpl::cartesian_communicator::vector::operator[](int index)'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a20fb79f818b48bbc40b88adefae3734a',1,'mpl::cartesian_communicator::vector::operator[](int index) const'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a373c7869e0aa251e05fb578a2aea95e9',1,'mpl::cartesian_communicator::included_tags::operator[](int index)'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a82a715985b94853367abcfb164082ac4',1,'mpl::cartesian_communicator::included_tags::operator[](int index) const'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a786ec6e005db9b3beeadcc3ad8527d70',1,'mpl::cartesian_communicator::dimensions::operator[]()'],['../classmpl_1_1graph__communicator_1_1node__list.html#aab4b2d09a2edf289b646510d0bf55eda',1,'mpl::graph_communicator::node_list::operator[](int index) const'],['../classmpl_1_1graph__communicator_1_1node__list.html#a5f60260b8bd1bdc7fe8c7b7945e27b8c',1,'mpl::graph_communicator::node_list::operator[](int index)'],['../classmpl_1_1local__grid_1_1dimensions.html#aa1cdf19eec6da42b29ce7fd4a3025364',1,'mpl::local_grid::dimensions::operator[](size_type dimension)'],['../classmpl_1_1local__grid_1_1dimensions.html#aa399ae6edba94e1a9c1ebe91d9b2d11e',1,'mpl::local_grid::dimensions::operator[](size_type dimension) const'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a9be7d0688024430750b7375e48f0ddb5',1,'mpl::distributed_grid::dimensions::operator[]()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a80fafe9770e980d59b9628564d4c74cd',1,'mpl::cartesian_communicator::dimensions::operator[]()']]], - ['order_12',['order',['../classmpl_1_1subarray__layout_1_1parameter.html#a60f802b57d449678d80496b82c3751de',1,'mpl::subarray_layout::parameter::order() const'],['../classmpl_1_1subarray__layout_1_1parameter.html#a155ab0d9cb1eb40d8f8d7ae9fbc2bdca',1,'mpl::subarray_layout::parameter::order(array_orders new_order)']]], - ['out_5fdegree_13',['out_degree',['../classmpl_1_1distributed__graph__communicator.html#a5a8f9ed0c2035ded24a38989d75a5494',1,'mpl::distributed_graph_communicator']]], - ['out_5fneighbors_14',['out_neighbors',['../classmpl_1_1distributed__graph__communicator.html#a27a19494efdc8558802169947a8adeed',1,'mpl::distributed_graph_communicator']]], - ['overlap_15',['overlap',['../classmpl_1_1distributed__grid_1_1dimensions.html#a67917c6df24d025069ae3d703edd69aa',1,'mpl::distributed_grid::dimensions']]] + ['operator_21_3d_3',['operator!=',['../classmpl_1_1group.html#a3559e4d5efc98ec127fce7f3dc487291',1,'mpl::group::operator!=()'],['../classmpl_1_1communicator.html#aea3f30e3e33676cfbd8f3757082949cd',1,'mpl::communicator::operator!=()']]], + ['operator_28_29_4',['operator()',['../classmpl_1_1local__grid.html#acd9f95c3471b08a4dc3da723d6c121b3',1,'mpl::local_grid::operator()()'],['../structmpl_1_1logical__and.html#a41d77b4ab90b1d0363eb65dea6100d00',1,'mpl::logical_and::operator()()'],['../classmpl_1_1local__grid.html#adee4f6ca84465120671ec7ab6f673ebf',1,'mpl::local_grid::operator()()'],['../structmpl_1_1max.html#a2908e4ec953dd58edf8079788bec51e0',1,'mpl::max::operator()()'],['../structmpl_1_1min.html#a23b201ffe2013e1f55f1ea0cdc02e0f8',1,'mpl::min::operator()()'],['../structmpl_1_1plus.html#a946a45253a41fb515c6d4cf467eeac41',1,'mpl::plus::operator()()'],['../structmpl_1_1multiplies.html#a224ea72086f08b923bb32ac7ebf1704d',1,'mpl::multiplies::operator()()'],['../structmpl_1_1logical__or.html#ad4f0f01a628867690d1fd9e4f265b681',1,'mpl::logical_or::operator()()'],['../structmpl_1_1logical__xor.html#a66bb19d69956d437e42f8cbea11b8fb1',1,'mpl::logical_xor::operator()()'],['../structmpl_1_1bit__and.html#a7133da51787910d7e6ca97be99782268',1,'mpl::bit_and::operator()()'],['../structmpl_1_1bit__or.html#ab5a228ee19d0bfb34f9b239a85dc5eac',1,'mpl::bit_or::operator()()'],['../structmpl_1_1bit__xor.html#a8d990747d97457d18652ac9a58e424fb',1,'mpl::bit_xor::operator()()'],['../classmpl_1_1ranks.html#a988be0bf88d82f0b34aa826d7ba82b44',1,'mpl::ranks::operator()() const'],['../classmpl_1_1ranks.html#acb6c3e3088cac56b8af02aeccf0d7a40',1,'mpl::ranks::operator()()'],['../classmpl_1_1local__grid.html#a884c5dfdd939ad61fd2ad4de8d1c63fd',1,'mpl::local_grid::operator()()'],['../classmpl_1_1displacements.html#aa632306f2aadfee96b2842791d771cee',1,'mpl::displacements::operator()()'],['../classmpl_1_1distributed__grid.html#a87a2ba870110b8c294ecaaa25c79826f',1,'mpl::distributed_grid::operator()(size_type i_0)'],['../classmpl_1_1distributed__grid.html#a8f9854c65734629b85e7ea3ab69612ee',1,'mpl::distributed_grid::operator()(size_type i_0) const'],['../classmpl_1_1distributed__grid.html#a003cab421d434c154fc865a407cf60e8',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1)'],['../classmpl_1_1distributed__grid.html#aa726d934b2ec0b5479fdbe299cfa9a66',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1) const'],['../classmpl_1_1distributed__grid.html#a1627554f0a1f004b002b4437f31ffde1',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1, size_type i_2)'],['../classmpl_1_1distributed__grid.html#a1aeca17c53c962ae27ca0e24d976171e',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1, size_type i_2) const'],['../classmpl_1_1distributed__grid.html#a144e45f64ac0694660ba2891405bedf1',1,'mpl::distributed_grid::operator()(size_type i_0, size_type i_1, size_type i_2, size_type i_3)'],['../classmpl_1_1local__grid.html#aea49a8961c1544888e3d697614e76282',1,'mpl::local_grid::operator()()'],['../classmpl_1_1distributed__grid.html#a39550233d58d0f53264b3f1bf5b3575b',1,'mpl::distributed_grid::operator()()'],['../classmpl_1_1local__grid.html#a213eb274680567cdcd292f5080f22e71',1,'mpl::local_grid::operator()(size_type i_0)'],['../classmpl_1_1local__grid.html#a17585fc73aba29fb6ab0e3d8022b25be',1,'mpl::local_grid::operator()(size_type i_0) const'],['../classmpl_1_1local__grid.html#a0bc2c3d68db9a67e6bd415c2c7d0131b',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1)'],['../classmpl_1_1local__grid.html#a6be0b3c4b9aced8db5d1a250a722a4bf',1,'mpl::local_grid::operator()(size_type i_0, size_type i_1) const']]], + ['operator_3d_5',['operator=',['../classmpl_1_1strided__vector__layout.html#aa9cbbcfed65d7a004c435b699ccd4d74',1,'mpl::strided_vector_layout::operator=(const strided_vector_layout< T > &l)=default'],['../classmpl_1_1strided__vector__layout.html#a9120a85b7377a2e625b0b0966164339f',1,'mpl::strided_vector_layout::operator=(strided_vector_layout< T > &&l) noexcept=default'],['../classmpl_1_1indexed__layout.html#a2ef13d7c3e8178574a15db51056df13e',1,'mpl::indexed_layout::operator=(const indexed_layout< T > &l)=default'],['../classmpl_1_1indexed__layout.html#a1b604ca3e6e607f1e7c33d771c88d275',1,'mpl::indexed_layout::operator=(indexed_layout< T > &&l) noexcept=default'],['../classmpl_1_1hindexed__layout.html#ae36e81cb6bbec4abe96e430e6d02f938',1,'mpl::hindexed_layout::operator=(const hindexed_layout< T > &l)=default'],['../classmpl_1_1hindexed__layout.html#a51e7ccbf3a8b3552c53d0624fbff10d3',1,'mpl::hindexed_layout::operator=(hindexed_layout< T > &&l) noexcept=default'],['../classmpl_1_1vector__layout.html#ab153f0de6c047fffe6adbf22b0a0efb1',1,'mpl::vector_layout::operator=()'],['../classmpl_1_1indexed__block__layout.html#a74478123f3da83ff60414e723836f46a',1,'mpl::indexed_block_layout::operator=(const indexed_block_layout< T > &l)=default'],['../classmpl_1_1indexed__block__layout.html#a0397342ecc9d8e57d7e7443971966e2c',1,'mpl::indexed_block_layout::operator=(indexed_block_layout< T > &&l) noexcept=default'],['../classmpl_1_1hindexed__block__layout.html#a9efe673232ce9180c2c96f0048da8187',1,'mpl::hindexed_block_layout::operator=(const hindexed_block_layout< T > &l)=default'],['../classmpl_1_1hindexed__block__layout.html#a9cedaad857c684ce5265110c6a9b82e5',1,'mpl::hindexed_block_layout::operator=(hindexed_block_layout< T > &&l) noexcept=default'],['../classmpl_1_1iterator__layout.html#ab8bedf7645837efd22d0197749e8eb8d',1,'mpl::iterator_layout::operator=(const iterator_layout< T > &l)=default'],['../classmpl_1_1iterator__layout.html#ac80c19464fd5b48ceb62ac7592619f32',1,'mpl::iterator_layout::operator=(iterator_layout< T > &&l) noexcept=default'],['../classmpl_1_1subarray__layout.html#a9d10a8cb6f0e530fd4d6677ed6a6e16d',1,'mpl::subarray_layout::operator=(const subarray_layout< T > &l)=default'],['../classmpl_1_1subarray__layout.html#adad3946bd689cb93da9fc1f182d17f37',1,'mpl::subarray_layout::operator=(subarray_layout< T > &&l) noexcept=default'],['../classmpl_1_1heterogeneous__layout.html#ada4aa6f3f64e5bd5519b36a5d80c780e',1,'mpl::heterogeneous_layout::operator=(const heterogeneous_layout &l)=default'],['../classmpl_1_1heterogeneous__layout.html#aa4701dfc7a4cb2402ed3484e87947be6',1,'mpl::heterogeneous_layout::operator=(heterogeneous_layout &&l) noexcept=default'],['../classmpl_1_1impl_1_1topology__communicator.html#a57de7fa3dd71c67ff0da9826c7ef0c71',1,'mpl::impl::topology_communicator::operator=()'],['../classmpl_1_1graph__communicator.html#a9c706fcf6770f01b69256c7f76c97222',1,'mpl::graph_communicator::operator=()'],['../classmpl_1_1bsend__buffer.html#a8e4d57e9746570efa124e919cd0de1d2',1,'mpl::bsend_buffer::operator=()'],['../classmpl_1_1vector__layout.html#a7ac32dc6996968661dc9f4cd685b8d57',1,'mpl::vector_layout::operator=()'],['../classmpl_1_1cartesian__communicator.html#a404d0186a6e9cbbac0e79ae320eeb382',1,'mpl::cartesian_communicator::operator=(const cartesian_communicator &other) noexcept'],['../classmpl_1_1cartesian__communicator.html#a4800098a181afa4eff436bdfe9c11a44',1,'mpl::cartesian_communicator::operator=(cartesian_communicator &&other) noexcept'],['../classmpl_1_1group.html#a4ac9d08869779bc83b1603415421ab34',1,'mpl::group::operator=(const group &other)'],['../classmpl_1_1group.html#aaab91fd6a016fe57c053102d6c8f9bc4',1,'mpl::group::operator=(group &&other) noexcept'],['../classmpl_1_1communicator.html#ad583dab604376864ba373505b7f33911',1,'mpl::communicator::operator=(const communicator &other) noexcept'],['../classmpl_1_1communicator.html#a06c080c4492462cd582894a04191de56',1,'mpl::communicator::operator=(communicator &&other) noexcept'],['../classmpl_1_1distributed__graph__communicator.html#ae4313c9f339d60a7c2fa1148a97626c9',1,'mpl::distributed_graph_communicator::operator=(const distributed_graph_communicator &other) noexcept'],['../classmpl_1_1distributed__graph__communicator.html#afe84efb5ffee5860ab38c3a4d87ec65a',1,'mpl::distributed_graph_communicator::operator=(distributed_graph_communicator &&other) noexcept'],['../classmpl_1_1bsend__buffer.html#aa14cb912c156e9dc34934131071163b7',1,'mpl::bsend_buffer::operator=()'],['../classmpl_1_1graph__communicator.html#adce11d71ed0d0398316f5a5669b5bdbf',1,'mpl::graph_communicator::operator=()'],['../classmpl_1_1layout.html#ada64a312d8d2032e9b1faef1ffca5dbd',1,'mpl::layout::operator=(const layout &l)'],['../classmpl_1_1layout.html#a057fa0a49c1133de3b41b8c5eefe576c',1,'mpl::layout::operator=(layout &&l) noexcept'],['../classmpl_1_1empty__layout.html#a1246ee522d696afa489afd98eae2437c',1,'mpl::empty_layout::operator=(const empty_layout< T > &l)=default'],['../classmpl_1_1empty__layout.html#a224759434f429819105ed1a4094e077c',1,'mpl::empty_layout::operator=(empty_layout< T > &&l) noexcept=default'],['../classmpl_1_1contiguous__layout.html#adb39eadffb6dbffe72480764ba486245',1,'mpl::contiguous_layout::operator=(const contiguous_layout< T > &l)'],['../classmpl_1_1contiguous__layout.html#ae982602643daa885058b55d85b463ee9',1,'mpl::contiguous_layout::operator=(contiguous_layout< T > &&l) noexcept']]], + ['operator_3d_3d_6',['operator==',['../classmpl_1_1group.html#a1b3542e4a7d8cfcbf6bfc7ecb4905f4f',1,'mpl::group::operator==()'],['../classmpl_1_1communicator.html#a153a492a90432d228638e2548b2a65b5',1,'mpl::communicator::operator==()']]], + ['operator_5b_5d_7',['operator[]',['../classmpl_1_1cartesian__communicator_1_1vector.html#a3d22ddb853627dcb5d33d690c28a44ac',1,'mpl::cartesian_communicator::vector::operator[]()'],['../classmpl_1_1graph__communicator_1_1node__list.html#aab4b2d09a2edf289b646510d0bf55eda',1,'mpl::graph_communicator::node_list::operator[](int index) const'],['../classmpl_1_1graph__communicator_1_1node__list.html#a5f60260b8bd1bdc7fe8c7b7945e27b8c',1,'mpl::graph_communicator::node_list::operator[](int index)'],['../classmpl_1_1local__grid_1_1dimensions.html#aa1cdf19eec6da42b29ce7fd4a3025364',1,'mpl::local_grid::dimensions::operator[](size_type dimension)'],['../classmpl_1_1local__grid_1_1dimensions.html#aa399ae6edba94e1a9c1ebe91d9b2d11e',1,'mpl::local_grid::dimensions::operator[](size_type dimension) const'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a9be7d0688024430750b7375e48f0ddb5',1,'mpl::distributed_grid::dimensions::operator[](size_type dimension)'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a894d21035df664610e1400581025ca7d',1,'mpl::distributed_grid::dimensions::operator[](size_type dimension) const'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a80fafe9770e980d59b9628564d4c74cd',1,'mpl::cartesian_communicator::dimensions::operator[](int dimension)'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a786ec6e005db9b3beeadcc3ad8527d70',1,'mpl::cartesian_communicator::dimensions::operator[](int dimension) const'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a82a715985b94853367abcfb164082ac4',1,'mpl::cartesian_communicator::included_tags::operator[](int index) const'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a373c7869e0aa251e05fb578a2aea95e9',1,'mpl::cartesian_communicator::included_tags::operator[](int index)'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a20fb79f818b48bbc40b88adefae3734a',1,'mpl::cartesian_communicator::vector::operator[]()']]], + ['order_8',['order',['../classmpl_1_1subarray__layout_1_1parameter.html#a155ab0d9cb1eb40d8f8d7ae9fbc2bdca',1,'mpl::subarray_layout::parameter::order(array_orders new_order)'],['../classmpl_1_1subarray__layout_1_1parameter.html#a60f802b57d449678d80496b82c3751de',1,'mpl::subarray_layout::parameter::order() const']]], + ['out_5fdegree_9',['out_degree',['../classmpl_1_1distributed__graph__communicator.html#a5a8f9ed0c2035ded24a38989d75a5494',1,'mpl::distributed_graph_communicator']]], + ['out_5fneighbors_10',['out_neighbors',['../classmpl_1_1distributed__graph__communicator.html#a27a19494efdc8558802169947a8adeed',1,'mpl::distributed_graph_communicator']]], + ['overlap_11',['overlap',['../classmpl_1_1distributed__grid_1_1dimensions.html#a67917c6df24d025069ae3d703edd69aa',1,'mpl::distributed_grid::dimensions']]] ]; diff --git a/docs/html/search/functions_c.js b/docs/html/search/functions_c.js index 8ccd0399..46f4668d 100644 --- a/docs/html/search/functions_c.js +++ b/docs/html/search/functions_c.js @@ -1,10 +1,6 @@ var searchData= [ - ['parameter_0',['parameter',['../classmpl_1_1indexed__layout_1_1parameter.html#a6062daa18018ab29118a60a86bf54937',1,'mpl::indexed_layout::parameter::parameter()'],['../classmpl_1_1heterogeneous__layout_1_1parameter.html#a3e6002677c2e8ffdeba903453ff6120f',1,'mpl::heterogeneous_layout::parameter::parameter(const Ts &...xs)'],['../classmpl_1_1heterogeneous__layout_1_1parameter.html#a513ff59ef3a4f879b4505410e428147d',1,'mpl::heterogeneous_layout::parameter::parameter()=default'],['../classmpl_1_1subarray__layout_1_1parameter.html#a77ad6bab244fed5453132ca9a5ac3c6c',1,'mpl::subarray_layout::parameter::parameter(std::initializer_list< std::array< int, 3 > > list)'],['../classmpl_1_1subarray__layout_1_1parameter.html#a0db1e2fb063f6a67012b961fcd199170',1,'mpl::subarray_layout::parameter::parameter(const List_T &V)'],['../classmpl_1_1subarray__layout_1_1parameter.html#aac6ad3727ba7277233e52e96cb28ffbf',1,'mpl::subarray_layout::parameter::parameter()=default'],['../classmpl_1_1iterator__layout_1_1parameter.html#a379a502823866a2428a10702c4e30d20',1,'mpl::iterator_layout::parameter::parameter(iter_T first, iter_T last)'],['../classmpl_1_1iterator__layout_1_1parameter.html#a8b9b1dcef19978283dcebf2d03cd727d',1,'mpl::iterator_layout::parameter::parameter()=default'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html#ada60546fd361cd67a04fe083a5c09f35',1,'mpl::hindexed_block_layout::parameter::parameter(std::initializer_list< ssize_t > list)'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html#ac31e4f491add1a9bad604b9c8303d3a3',1,'mpl::hindexed_block_layout::parameter::parameter(const List_T &list)'],['../classmpl_1_1indexed__block__layout_1_1parameter.html#a5bb1c084eb68e977508c6982b270af5b',1,'mpl::indexed_block_layout::parameter::parameter(std::initializer_list< int > list)'],['../classmpl_1_1indexed__block__layout_1_1parameter.html#a4b2073a35551d6b746134e15f19dbbc5',1,'mpl::indexed_block_layout::parameter::parameter(const List_T &list)'],['../classmpl_1_1indexed__block__layout_1_1parameter.html#a702595e25a34275d3057c27dae064688',1,'mpl::indexed_block_layout::parameter::parameter()=default'],['../classmpl_1_1hindexed__layout_1_1parameter.html#a137203f563366d04c169371675dba0ea',1,'mpl::hindexed_layout::parameter::parameter(std::initializer_list< std::tuple< int, ssize_t > > list)'],['../classmpl_1_1hindexed__layout_1_1parameter.html#ab8f9a7e2e4c17f1cd55ad7f268fc7ac0',1,'mpl::hindexed_layout::parameter::parameter(const List_T &list)'],['../classmpl_1_1hindexed__layout_1_1parameter.html#ac1f84b65ffbb428a02e099c7e7b1b16a',1,'mpl::hindexed_layout::parameter::parameter()=default'],['../classmpl_1_1indexed__layout_1_1parameter.html#a663702e0127ea25518e32acbbf95c7c9',1,'mpl::indexed_layout::parameter::parameter(std::initializer_list< std::tuple< int, int > > list)'],['../classmpl_1_1indexed__layout_1_1parameter.html#a200ede70b91a8a0ef5cf50cfa52e8635',1,'mpl::indexed_layout::parameter::parameter()=default'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html#a5577f0cc7963c4a58195922e1da85403',1,'mpl::hindexed_block_layout::parameter::parameter()']]], + ['parameter_0',['parameter',['../classmpl_1_1indexed__layout_1_1parameter.html#a6062daa18018ab29118a60a86bf54937',1,'mpl::indexed_layout::parameter::parameter()'],['../classmpl_1_1heterogeneous__layout_1_1parameter.html#a3e6002677c2e8ffdeba903453ff6120f',1,'mpl::heterogeneous_layout::parameter::parameter(const Ts &...xs)'],['../classmpl_1_1heterogeneous__layout_1_1parameter.html#a513ff59ef3a4f879b4505410e428147d',1,'mpl::heterogeneous_layout::parameter::parameter()=default'],['../classmpl_1_1subarray__layout_1_1parameter.html#a77ad6bab244fed5453132ca9a5ac3c6c',1,'mpl::subarray_layout::parameter::parameter(std::initializer_list< std::array< int, 3 > > list)'],['../classmpl_1_1subarray__layout_1_1parameter.html#a0db1e2fb063f6a67012b961fcd199170',1,'mpl::subarray_layout::parameter::parameter(const List_T &V)'],['../classmpl_1_1subarray__layout_1_1parameter.html#aac6ad3727ba7277233e52e96cb28ffbf',1,'mpl::subarray_layout::parameter::parameter()=default'],['../classmpl_1_1iterator__layout_1_1parameter.html#a379a502823866a2428a10702c4e30d20',1,'mpl::iterator_layout::parameter::parameter(iter_T first, iter_T last)'],['../classmpl_1_1iterator__layout_1_1parameter.html#a8b9b1dcef19978283dcebf2d03cd727d',1,'mpl::iterator_layout::parameter::parameter()=default'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html#ada60546fd361cd67a04fe083a5c09f35',1,'mpl::hindexed_block_layout::parameter::parameter(std::initializer_list< ssize_t > list)'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html#ac31e4f491add1a9bad604b9c8303d3a3',1,'mpl::hindexed_block_layout::parameter::parameter(const List_T &list)'],['../classmpl_1_1hindexed__block__layout_1_1parameter.html#a5577f0cc7963c4a58195922e1da85403',1,'mpl::hindexed_block_layout::parameter::parameter()=default'],['../classmpl_1_1indexed__block__layout_1_1parameter.html#a5bb1c084eb68e977508c6982b270af5b',1,'mpl::indexed_block_layout::parameter::parameter(std::initializer_list< int > list)'],['../classmpl_1_1indexed__block__layout_1_1parameter.html#a4b2073a35551d6b746134e15f19dbbc5',1,'mpl::indexed_block_layout::parameter::parameter(const List_T &list)'],['../classmpl_1_1indexed__block__layout_1_1parameter.html#a702595e25a34275d3057c27dae064688',1,'mpl::indexed_block_layout::parameter::parameter()=default'],['../classmpl_1_1hindexed__layout_1_1parameter.html#a137203f563366d04c169371675dba0ea',1,'mpl::hindexed_layout::parameter::parameter(std::initializer_list< std::tuple< int, ssize_t > > list)'],['../classmpl_1_1hindexed__layout_1_1parameter.html#ab8f9a7e2e4c17f1cd55ad7f268fc7ac0',1,'mpl::hindexed_layout::parameter::parameter(const List_T &list)'],['../classmpl_1_1hindexed__layout_1_1parameter.html#ac1f84b65ffbb428a02e099c7e7b1b16a',1,'mpl::hindexed_layout::parameter::parameter()=default'],['../classmpl_1_1indexed__layout_1_1parameter.html#a663702e0127ea25518e32acbbf95c7c9',1,'mpl::indexed_layout::parameter::parameter(std::initializer_list< std::tuple< int, int > > list)'],['../classmpl_1_1indexed__layout_1_1parameter.html#a200ede70b91a8a0ef5cf50cfa52e8635',1,'mpl::indexed_layout::parameter::parameter()=default']]], ['periodicity_1',['periodicity',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#ae4711dea9668fee29fd5e6fc2cc72a6f',1,'mpl::cartesian_communicator::dimensions']]], - ['prequest_2',['prequest',['../classmpl_1_1impl_1_1prequest.html#af3844c4d36b3642909a2d6ce76794fd5',1,'mpl::impl::prequest::prequest()'],['../classmpl_1_1prequest.html#a458628a7d368a6ac066e1c0d72a1ae1a',1,'mpl::prequest::prequest(const impl::prequest &r)'],['../classmpl_1_1prequest.html#a8b93ba9394c9577c518b467a77c6c1bb',1,'mpl::prequest::prequest(const prequest &)=delete'],['../classmpl_1_1prequest.html#a3fb481bf82af15bc42066ee8691eb6a4',1,'mpl::prequest::prequest(prequest &&r) noexcept']]], - ['prequest_5fpool_3',['prequest_pool',['../classmpl_1_1prequest__pool.html#a3a5407de7b96fd18fac2bfed66ce2340',1,'mpl::prequest_pool::prequest_pool()=default'],['../classmpl_1_1prequest__pool.html#a5488a23548717d84d691fd0e35df7eed',1,'mpl::prequest_pool::prequest_pool(prequest_pool &&r) noexcept']]], - ['probe_4',['probe',['../classmpl_1_1communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f',1,'mpl::communicator']]], - ['processor_5fname_5',['processor_name',['../namespacempl_1_1environment.html#a89bda4aaa36251049ffdecdbe79a4322',1,'mpl::environment']]], - ['push_6',['push',['../classmpl_1_1impl_1_1request__pool.html#a9b2ce42dc5ec15f8875673e07f6d77bf',1,'mpl::impl::request_pool']]] + ['probe_2',['probe',['../classmpl_1_1communicator.html#af40beb3dfe89be5117e80cd5c0d53c4f',1,'mpl::communicator']]] ]; diff --git a/docs/html/search/functions_d.js b/docs/html/search/functions_d.js index 498f9b73..a3f530ad 100644 --- a/docs/html/search/functions_d.js +++ b/docs/html/search/functions_d.js @@ -4,17 +4,15 @@ var searchData= ['rank_5fweight_5fpair_1',['rank_weight_pair',['../classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#a26f5274dd9650e3feb1c245e4560bb19',1,'mpl::distributed_graph_communicator::rank_weight_pair']]], ['ranks_2',['ranks',['../classmpl_1_1ranks.html#a26a4953810763dec408121b213b8d9ee',1,'mpl::ranks::ranks(size_type n=0)'],['../classmpl_1_1ranks.html#a78f75166b8370635c0e845452599db80',1,'mpl::ranks::ranks(std::initializer_list< int > init)'],['../classmpl_1_1ranks.html#a5a849ed7e37368988037974e10bdfd81',1,'mpl::ranks::ranks(const ranks &other)=default'],['../classmpl_1_1ranks.html#a1fbed6a868f8b6c5e64cbbf09143e26f',1,'mpl::ranks::ranks(ranks &&other) noexcept']]], ['recv_3',['recv',['../classmpl_1_1communicator.html#abbc79395f9583143b1427c2e3f1c6637',1,'mpl::communicator::recv(T &data, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a693590693b8621565e94abdd6763d5b6',1,'mpl::communicator::recv(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a39c2f12ebc86e0930266a60ffecea926',1,'mpl::communicator::recv(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const']]], - ['recv_5finit_4',['recv_init',['../classmpl_1_1communicator.html#add45a9df6b60973abe8d13b9161c0ed8',1,'mpl::communicator::recv_init(T &data, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a03d88ad3aa943dc51578259c03b0b695',1,'mpl::communicator::recv_init(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a0ca545be8c199264a127b16180450162',1,'mpl::communicator::recv_init(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const']]], - ['reduce_5',['reduce',['../classmpl_1_1communicator.html#a20c2142532726d3a3f25e4eb3293fd4c',1,'mpl::communicator::reduce(F f, int root_rank, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d',1,'mpl::communicator::reduce(F f, int root_rank, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#adb886db659e8bc352ca70800704b8956',1,'mpl::communicator::reduce(F f, int root_rank, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a494c7c1849713e45d99d901b31250b35',1,'mpl::communicator::reduce(F f, int root_rank, const T &senddata) const'],['../classmpl_1_1communicator.html#aae3643fa3e833c9dfb4eaf871235aed3',1,'mpl::communicator::reduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#aed2415ddb3e27cce97fd5317f781a86c',1,'mpl::communicator::reduce(F f, int root_rank, const T *senddata, const contiguous_layout< T > &l) const']]], + ['recv_5finit_4',['recv_init',['../classmpl_1_1communicator.html#add45a9df6b60973abe8d13b9161c0ed8',1,'mpl::communicator::recv_init(T &data, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a0ca545be8c199264a127b16180450162',1,'mpl::communicator::recv_init(T *data, const layout< T > &l, int source, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a03d88ad3aa943dc51578259c03b0b695',1,'mpl::communicator::recv_init(iterT begin, iterT end, int source, tag_t t=tag_t(0)) const']]], + ['reduce_5',['reduce',['../classmpl_1_1communicator.html#aed2415ddb3e27cce97fd5317f781a86c',1,'mpl::communicator::reduce(F f, int root_rank, const T *senddata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#aae3643fa3e833c9dfb4eaf871235aed3',1,'mpl::communicator::reduce(F f, int root_rank, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#adb886db659e8bc352ca70800704b8956',1,'mpl::communicator::reduce(F f, int root_rank, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#a9ee8b61c26ca6b841c781693e1b3d24d',1,'mpl::communicator::reduce(F f, int root_rank, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#a20c2142532726d3a3f25e4eb3293fd4c',1,'mpl::communicator::reduce(F f, int root_rank, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a494c7c1849713e45d99d901b31250b35',1,'mpl::communicator::reduce(F f, int root_rank, const T &senddata) const']]], ['reduce_5fscatter_6',['reduce_scatter',['../classmpl_1_1communicator.html#a636784ef8a1e076a303e3e6279de1e7d',1,'mpl::communicator']]], - ['reduce_5fscatter_5fblock_7',['reduce_scatter_block',['../classmpl_1_1communicator.html#aa4407a90c2f598867b36e8e557b72ec0',1,'mpl::communicator::reduce_scatter_block(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &recvcount) const'],['../classmpl_1_1communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca',1,'mpl::communicator::reduce_scatter_block(F f, const T *senddata, T &recvdata) const']]], + ['reduce_5fscatter_5fblock_7',['reduce_scatter_block',['../classmpl_1_1communicator.html#aa54ca14af8a1defc3d3a290d8cf121ca',1,'mpl::communicator::reduce_scatter_block(F f, const T *senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#aa4407a90c2f598867b36e8e557b72ec0',1,'mpl::communicator::reduce_scatter_block(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &recvcount) const']]], ['register_5felement_8',['register_element',['../classmpl_1_1struct__layout.html#ada968c08d05ee6c94464bba46c7b2566',1,'mpl::struct_layout']]], ['register_5fstruct_9',['register_struct',['../classmpl_1_1struct__layout.html#ac8edfd2e43039745840de4d7f14e13b7',1,'mpl::struct_layout']]], - ['request_10',['request',['../classmpl_1_1impl_1_1request.html#a50d6175fd7b272b5c4a5b0ac26b8724c',1,'mpl::impl::request::request()=delete'],['../classmpl_1_1impl_1_1request.html#a5593bb18f48fc5f74da74ff604936fd2',1,'mpl::impl::request::request(const request &)=delete'],['../classmpl_1_1impl_1_1request.html#ae54279c8f5ad406e91b5fc0eb0acab33',1,'mpl::impl::request::request(const irequest &req)'],['../classmpl_1_1impl_1_1request.html#aec0305ea4db43ce204b10419ea47ab88',1,'mpl::impl::request::request(const prequest &req)'],['../classmpl_1_1impl_1_1request.html#a1182379a389ccf58d502142d550eed1a',1,'mpl::impl::request::request(request &&other) noexcept']]], - ['request_5fpool_11',['request_pool',['../classmpl_1_1impl_1_1request__pool.html#a541dc0dc092a1cf68f983ef23318e3e7',1,'mpl::impl::request_pool::request_pool(const request_pool &)=delete'],['../classmpl_1_1impl_1_1request__pool.html#a55de4601b01500daff1468db92ab2ac9',1,'mpl::impl::request_pool::request_pool(request_pool &&other) noexcept'],['../classmpl_1_1impl_1_1request__pool.html#ab431bc48d9e0a81eeac03ae8a53592ba',1,'mpl::impl::request_pool::request_pool()=default']]], - ['resize_12',['resize',['../classmpl_1_1layout.html#ab0a15251c4fd7bc10630bb9f00a392c4',1,'mpl::layout']]], - ['right_5fborder_5flayout_13',['right_border_layout',['../classmpl_1_1distributed__grid.html#aa302039c192e73504a8bc85cb2379599',1,'mpl::distributed_grid']]], - ['right_5fmirror_5flayout_14',['right_mirror_layout',['../classmpl_1_1distributed__grid.html#a56a402c5f7b9e3b47469db51b1b76411',1,'mpl::distributed_grid']]], - ['rsend_15',['rsend',['../classmpl_1_1communicator.html#a55fef351e8bb5d3062d25683cb404c9d',1,'mpl::communicator::rsend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a197f9833a6c4685a2368b7bea2a60cd8',1,'mpl::communicator::rsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627',1,'mpl::communicator::rsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['rsend_5finit_16',['rsend_init',['../classmpl_1_1communicator.html#aaa714c0902d770205ee9cfb636f20fed',1,'mpl::communicator::rsend_init(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ade499e3631297c5268da93604ec68a94',1,'mpl::communicator::rsend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a480ef5ac8533cd47ef55b04454baddca',1,'mpl::communicator::rsend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]] + ['resize_10',['resize',['../classmpl_1_1layout.html#ab0a15251c4fd7bc10630bb9f00a392c4',1,'mpl::layout']]], + ['right_5fborder_5flayout_11',['right_border_layout',['../classmpl_1_1distributed__grid.html#aa302039c192e73504a8bc85cb2379599',1,'mpl::distributed_grid']]], + ['right_5fmirror_5flayout_12',['right_mirror_layout',['../classmpl_1_1distributed__grid.html#a56a402c5f7b9e3b47469db51b1b76411',1,'mpl::distributed_grid']]], + ['rsend_13',['rsend',['../classmpl_1_1communicator.html#a55fef351e8bb5d3062d25683cb404c9d',1,'mpl::communicator::rsend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a197f9833a6c4685a2368b7bea2a60cd8',1,'mpl::communicator::rsend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a298c5f2895a40bb82ab5ecf2f9f66627',1,'mpl::communicator::rsend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], + ['rsend_5finit_14',['rsend_init',['../classmpl_1_1communicator.html#aaa714c0902d770205ee9cfb636f20fed',1,'mpl::communicator::rsend_init(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ade499e3631297c5268da93604ec68a94',1,'mpl::communicator::rsend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a480ef5ac8533cd47ef55b04454baddca',1,'mpl::communicator::rsend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]] ]; diff --git a/docs/html/search/functions_e.js b/docs/html/search/functions_e.js index 6e23ae29..853c0c28 100644 --- a/docs/html/search/functions_e.js +++ b/docs/html/search/functions_e.js @@ -1,24 +1,21 @@ var searchData= [ - ['scan_0',['scan',['../classmpl_1_1communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b',1,'mpl::communicator::scan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597',1,'mpl::communicator::scan(F f, const T &senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#afe6c73aa613bf07ed4790210f10a0f1c',1,'mpl::communicator::scan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6',1,'mpl::communicator::scan(F f, T &sendrecvdata) const']]], - ['scatter_1',['scatter',['../classmpl_1_1communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42',1,'mpl::communicator::scatter(int root_rank, const T *senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af',1,'mpl::communicator::scatter(int root_rank, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#adb4b189592ceb6f3a16c53d48e3071b8',1,'mpl::communicator::scatter(int root_rank, T &recvdata) const'],['../classmpl_1_1communicator.html#a5a80517f1de86265d2a863a7c1fd5032',1,'mpl::communicator::scatter(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const']]], + ['scan_0',['scan',['../classmpl_1_1communicator.html#a911d3b6b95a54cd8429c5e50d115cc5b',1,'mpl::communicator::scan(F f, const T *senddata, T *recvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#aa06dee1bcc8345dc0c83f215dea4aba6',1,'mpl::communicator::scan(F f, T &sendrecvdata) const'],['../classmpl_1_1communicator.html#afe6c73aa613bf07ed4790210f10a0f1c',1,'mpl::communicator::scan(F f, T *sendrecvdata, const contiguous_layout< T > &l) const'],['../classmpl_1_1communicator.html#adfdce2d6ddb8ad17d0fc979cfc029597',1,'mpl::communicator::scan(F f, const T &senddata, T &recvdata) const']]], + ['scatter_1',['scatter',['../classmpl_1_1communicator.html#aa8bb1dfb05ba28f4a17ee08e6c832e42',1,'mpl::communicator::scatter(int root_rank, const T *senddata, T &recvdata) const'],['../classmpl_1_1communicator.html#a5a80517f1de86265d2a863a7c1fd5032',1,'mpl::communicator::scatter(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#adb4b189592ceb6f3a16c53d48e3071b8',1,'mpl::communicator::scatter(int root_rank, T &recvdata) const'],['../classmpl_1_1communicator.html#a7bdce3d2b97c8bcfcd7a812231a8c0af',1,'mpl::communicator::scatter(int root_rank, T *recvdata, const layout< T > &recvl) const']]], ['scatterv_2',['scatterv',['../classmpl_1_1communicator.html#aba80b0971e6f8d2f04d1454f389833be',1,'mpl::communicator::scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, const displacements &senddispls, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a3b4d541cab8706ae5a4a699aef0662d3',1,'mpl::communicator::scatterv(int root_rank, const T *senddata, const layouts< T > &sendls, T *recvdata, const layout< T > &recvl) const'],['../classmpl_1_1communicator.html#a36031fd4a0c2ed7bab527e0a4663971f',1,'mpl::communicator::scatterv(int root_rank, T *recvdata, const layout< T > &recvl) const']]], ['send_3',['send',['../classmpl_1_1communicator.html#a477820ee73599e311a6e73ef06fbdf33',1,'mpl::communicator::send(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a1f45f3b4b5afa504963d30203bebcd67',1,'mpl::communicator::send(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a268c8c4ed6c3771f6b39d3907a341a7a',1,'mpl::communicator::send(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], - ['send_5finit_4',['send_init',['../classmpl_1_1communicator.html#a2a901501dfe4dad53249a142a6c61f8a',1,'mpl::communicator::send_init(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0',1,'mpl::communicator::send_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f',1,'mpl::communicator::send_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], + ['send_5finit_4',['send_init',['../classmpl_1_1communicator.html#a2a901501dfe4dad53249a142a6c61f8a',1,'mpl::communicator::send_init(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#aacc73536b7c2c1b06c3eca4a7aa2293f',1,'mpl::communicator::send_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a76dd0b0a41b24831515483d8ad4ca4c0',1,'mpl::communicator::send_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const']]], ['sendrecv_5',['sendrecv',['../classmpl_1_1communicator.html#aa2a0df2e403ac933de9bdd1cb4ecb7b5',1,'mpl::communicator::sendrecv(const T &senddata, int destination, tag_t sendtag, T &recvdata, int source, tag_t recvtag) const'],['../classmpl_1_1communicator.html#a1cadfd444f8c8369b2c9d99e0a74c644',1,'mpl::communicator::sendrecv(const T *senddata, const layout< T > &sendl, int destination, tag_t sendtag, T *recvdata, const layout< T > &recvl, int source, tag_t recvtag) const'],['../classmpl_1_1communicator.html#a6149ac444daf9efa0818c1ad86df03f4',1,'mpl::communicator::sendrecv(iterT1 begin1, iterT1 end1, int destination, tag_t sendtag, iterT2 begin2, iterT2 end2, int source, tag_t recvtag) const']]], - ['sendrecv_5freplace_6',['sendrecv_replace',['../classmpl_1_1communicator.html#ac402242f2ad68dbce183e60cfcc82382',1,'mpl::communicator::sendrecv_replace(iterT begin, iterT end, int destination, tag_t sendtag, int source, tag_t recvtag) const'],['../classmpl_1_1communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f',1,'mpl::communicator::sendrecv_replace(T *data, const layout< T > &l, int destination, tag_t sendtag, int source, tag_t recvtag) const'],['../classmpl_1_1communicator.html#a100f19741ccecda229eb1bb6659c1dd8',1,'mpl::communicator::sendrecv_replace(T &data, int destination, tag_t sendtag, int source, tag_t recvtag) const']]], + ['sendrecv_5freplace_6',['sendrecv_replace',['../classmpl_1_1communicator.html#a100f19741ccecda229eb1bb6659c1dd8',1,'mpl::communicator::sendrecv_replace(T &data, int destination, tag_t sendtag, int source, tag_t recvtag) const'],['../classmpl_1_1communicator.html#a172f9bbbc4e2734ec101a4a025ccae5f',1,'mpl::communicator::sendrecv_replace(T *data, const layout< T > &l, int destination, tag_t sendtag, int source, tag_t recvtag) const'],['../classmpl_1_1communicator.html#ac402242f2ad68dbce183e60cfcc82382',1,'mpl::communicator::sendrecv_replace(iterT begin, iterT end, int destination, tag_t sendtag, int source, tag_t recvtag) const']]], ['shift_7',['shift',['../classmpl_1_1cartesian__communicator.html#a1b8b3f2f9c7f6c6c5f009d47c52f7919',1,'mpl::cartesian_communicator']]], - ['size_8',['size',['../classmpl_1_1distributed__grid.html#a2f644cd6560ba3d618e97da5bc735097',1,'mpl::distributed_grid::size()'],['../classmpl_1_1impl_1_1request__pool.html#a40b2e7f51521f6cbf1ba99c26547dade',1,'mpl::impl::request_pool::size()'],['../classmpl_1_1graph__communicator_1_1node__list.html#aceebd8bb0abded270a3246abb4996efe',1,'mpl::graph_communicator::node_list::size()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#ab1f12c9c8eaa5d350d019abe32817b86',1,'mpl::graph_communicator::edge_set::size()'],['../classmpl_1_1local__grid.html#ac2d6883c856c1edf80dccf0586f0c0b4',1,'mpl::local_grid::size()'],['../classmpl_1_1local__grid_1_1dimensions.html#a0134108e71b799e3c39e966f149937d5',1,'mpl::local_grid::dimensions::size()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a7ef66eeee954466bec93ae54ce2f1de9',1,'mpl::distributed_grid::dimensions::size()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a88a535128a6ba0edea60dab411c425ec',1,'mpl::distributed_graph_communicator::neighbours_set::size()'],['../classmpl_1_1communicator.html#abe1bd8f32c690ee7a31456da2c437bdf',1,'mpl::communicator::size()'],['../classmpl_1_1group.html#a58537237d16d0ac6ecb5680e33997f26',1,'mpl::group::size()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a1b76409115713a0bda67f72748f773da',1,'mpl::cartesian_communicator::dimensions::size()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a39edb9ac5555118a37675167b577b11d',1,'mpl::cartesian_communicator::included_tags::size()']]], + ['size_8',['size',['../classmpl_1_1graph__communicator_1_1node__list.html#aceebd8bb0abded270a3246abb4996efe',1,'mpl::graph_communicator::node_list::size()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#ab1f12c9c8eaa5d350d019abe32817b86',1,'mpl::graph_communicator::edge_set::size()'],['../classmpl_1_1local__grid.html#ac2d6883c856c1edf80dccf0586f0c0b4',1,'mpl::local_grid::size()'],['../classmpl_1_1local__grid_1_1dimensions.html#a0134108e71b799e3c39e966f149937d5',1,'mpl::local_grid::dimensions::size()'],['../classmpl_1_1distributed__grid.html#a2f644cd6560ba3d618e97da5bc735097',1,'mpl::distributed_grid::size()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a88a535128a6ba0edea60dab411c425ec',1,'mpl::distributed_graph_communicator::neighbours_set::size()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a7ef66eeee954466bec93ae54ce2f1de9',1,'mpl::distributed_grid::dimensions::size()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a39edb9ac5555118a37675167b577b11d',1,'mpl::cartesian_communicator::included_tags::size()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a1b76409115713a0bda67f72748f773da',1,'mpl::cartesian_communicator::dimensions::size()'],['../classmpl_1_1communicator.html#abe1bd8f32c690ee7a31456da2c437bdf',1,'mpl::communicator::size()'],['../classmpl_1_1group.html#a58537237d16d0ac6ecb5680e33997f26',1,'mpl::group::size()']]], ['size_5foverlap_5fpair_9',['size_overlap_pair',['../classmpl_1_1distributed__grid_1_1size__overlap__pair.html#a027ebf7f9d8ee613042d8c2fa562a636',1,'mpl::distributed_grid::size_overlap_pair']]], ['source_10',['source',['../classmpl_1_1status__t.html#a9d17d0e813a4ff51a178c96ffb3455f0',1,'mpl::status_t']]], - ['ssend_11',['ssend',['../classmpl_1_1communicator.html#abeb99f29459a82f9027dfc8b4bd60add',1,'mpl::communicator::ssend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a07591e9922db9239a75ab1b6c7b70f11',1,'mpl::communicator::ssend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ae2bdc9265ab60a53dced1a251b3e5898',1,'mpl::communicator::ssend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const']]], + ['ssend_11',['ssend',['../classmpl_1_1communicator.html#a07591e9922db9239a75ab1b6c7b70f11',1,'mpl::communicator::ssend(const T &data, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#ae2bdc9265ab60a53dced1a251b3e5898',1,'mpl::communicator::ssend(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#abeb99f29459a82f9027dfc8b4bd60add',1,'mpl::communicator::ssend(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const']]], ['ssend_5finit_12',['ssend_init',['../classmpl_1_1communicator.html#a17526ad519286bf2fa81a3701c0afe03',1,'mpl::communicator::ssend_init(const T *data, const layout< T > &l, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a3f433b69dace132e01bea64624fff4b3',1,'mpl::communicator::ssend_init(iterT begin, iterT end, int destination, tag_t t=tag_t(0)) const'],['../classmpl_1_1communicator.html#a871cba17f8d1891fb0613f9a23c38866',1,'mpl::communicator::ssend_init(const T &data, int destination, tag_t t=tag_t(0)) const']]], - ['start_13',['start',['../classmpl_1_1prequest.html#a98397dc9bd862965e040491483082d65',1,'mpl::prequest']]], - ['startall_14',['startall',['../classmpl_1_1prequest__pool.html#a819ee42db512114958c31b95864e5cdd',1,'mpl::prequest_pool']]], - ['status_5ft_15',['status_t',['../classmpl_1_1status__t.html#a02861de720edc848695719d097a0cc65',1,'mpl::status_t']]], - ['strided_5fvector_5flayout_16',['strided_vector_layout',['../classmpl_1_1strided__vector__layout.html#af5f48479be2f758f7ee107166ff8b6ab',1,'mpl::strided_vector_layout::strided_vector_layout(const strided_vector_layout< T > &l)'],['../classmpl_1_1strided__vector__layout.html#a9ea9a57f672e317522e4e8929bdc9ea2',1,'mpl::strided_vector_layout::strided_vector_layout(strided_vector_layout< T > &&l) noexcept'],['../classmpl_1_1strided__vector__layout.html#acbd61feed56dc16a8121b9e05490ca4f',1,'mpl::strided_vector_layout::strided_vector_layout(int count, int blocklength, int stride, const layout< T > &l)'],['../classmpl_1_1strided__vector__layout.html#a5996f952887a7ad754de6b862f71bd60',1,'mpl::strided_vector_layout::strided_vector_layout(int count, int blocklength, int stride)'],['../classmpl_1_1strided__vector__layout.html#a26fbff388559dd91cbe8d4f5c0bf54be',1,'mpl::strided_vector_layout::strided_vector_layout()']]], - ['struct_5fbuilder_17',['struct_builder',['../classmpl_1_1struct__builder_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html#ad358a07c14d549703b11a0c26c8ed49f',1,'mpl::struct_builder< std::pair< T1, T2 > >::struct_builder()'],['../classmpl_1_1struct__builder_3_01std_1_1tuple_3_01_ts_8_8_8_01_4_01_4.html#aca6ed8f6236fc432dcca0d7a656c6ca5',1,'mpl::struct_builder< std::tuple< Ts... > >::struct_builder()'],['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_4.html#a12b92cf1cac112f326ef9c1ff3fff9e9',1,'mpl::struct_builder< T[N0]>::struct_builder()'],['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_4.html#aaf371600324b88c0b0e1fcd85f47c89a',1,'mpl::struct_builder< T[N0][N1]>::struct_builder()'],['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_4.html#af2c1e87c7b483609493dc6ab333f1d02',1,'mpl::struct_builder< T[N0][N1][N2]>::struct_builder()'],['../classmpl_1_1struct__builder_3_01_t_0f_n0_0e_0f_n1_0e_0f_n2_0e_0f_n3_0e_4.html#a994090fb8f342df0546baa10fe298ee3',1,'mpl::struct_builder< T[N0][N1][N2][N3]>::struct_builder()'],['../classmpl_1_1struct__builder_3_01std_1_1array_3_01_t_00_01_n_01_4_01_4.html#aa3ddf9c1a4b20c0da0c32c2ca98d7be3',1,'mpl::struct_builder< std::array< T, N > >::struct_builder()']]], - ['sub_5flayouts_18',['sub_layouts',['../classmpl_1_1local__grid.html#a713ce59b43926706509b9a3a6a127a41',1,'mpl::local_grid']]], - ['subarray_5flayout_19',['subarray_layout',['../classmpl_1_1subarray__layout.html#aa96074e957a0d2271f5ff45a248cdbd0',1,'mpl::subarray_layout::subarray_layout(const parameter &par)'],['../classmpl_1_1subarray__layout.html#a6c9462225f9727417f1063a7300c1580',1,'mpl::subarray_layout::subarray_layout(const parameter &par, const layout< T > &l)'],['../classmpl_1_1subarray__layout.html#a8b4ea22298e053cea9267edbeaf057ed',1,'mpl::subarray_layout::subarray_layout(const subarray_layout< T > &l)'],['../classmpl_1_1subarray__layout.html#a4c8c9abf713ae31b48f8504bb5929455',1,'mpl::subarray_layout::subarray_layout(subarray_layout< T > &&l) noexcept'],['../classmpl_1_1subarray__layout.html#a2243a1c2887f4c6bbf11403528912906',1,'mpl::subarray_layout::subarray_layout()']]], - ['swap_20',['swap',['../classmpl_1_1heterogeneous__layout.html#a72a2fe2e326f5bfc1dd9b188acd07072',1,'mpl::heterogeneous_layout::swap()'],['../classmpl_1_1subarray__layout.html#a50f1141d79adc3100b3c4ab7d963b76f',1,'mpl::subarray_layout::swap()'],['../classmpl_1_1iterator__layout.html#aa065b1d83d11439b548ca9c67ce2b55a',1,'mpl::iterator_layout::swap()'],['../classmpl_1_1hindexed__block__layout.html#a31e0a5a0b069597199140c0fc6df1d13',1,'mpl::hindexed_block_layout::swap()'],['../classmpl_1_1indexed__block__layout.html#a2e7623e83f661a3948ca83f797149070',1,'mpl::indexed_block_layout::swap()'],['../classmpl_1_1hindexed__layout.html#a96cdefc4ba1b2513df1eb4377cffb58e',1,'mpl::hindexed_layout::swap()'],['../classmpl_1_1indexed__layout.html#aaca95a4fc535798296b2287e87934820',1,'mpl::indexed_layout::swap()'],['../classmpl_1_1strided__vector__layout.html#a497249e5a8b40b25329923b9062512f2',1,'mpl::strided_vector_layout::swap()'],['../classmpl_1_1vector__layout.html#aa88614eb8266c7ca511275674335c986',1,'mpl::vector_layout::swap()'],['../classmpl_1_1contiguous__layout.html#a3d0d28fdc0b29e06d3780a00b2d9cf7f',1,'mpl::contiguous_layout::swap()'],['../classmpl_1_1empty__layout.html#a069da901219beb3e1c3da57289bdfb1a',1,'mpl::empty_layout::swap()'],['../classmpl_1_1null__layout.html#aa902f79f8f54981548bfd7d74c11ec44',1,'mpl::null_layout::swap()'],['../classmpl_1_1layout.html#ab57eff0aeed0dee1e02bcfbec750d79f',1,'mpl::layout::swap()'],['../classmpl_1_1local__grid.html#afd4c45c7fb2a713f5e0434acce617320',1,'mpl::local_grid::swap()'],['../classmpl_1_1distributed__grid.html#a4af35d52ae69a0b0dea4921ed2a2595e',1,'mpl::distributed_grid::swap()']]] + ['status_5ft_13',['status_t',['../classmpl_1_1status__t.html#a02861de720edc848695719d097a0cc65',1,'mpl::status_t']]], + ['strided_5fvector_5flayout_14',['strided_vector_layout',['../classmpl_1_1strided__vector__layout.html#a26fbff388559dd91cbe8d4f5c0bf54be',1,'mpl::strided_vector_layout::strided_vector_layout()'],['../classmpl_1_1strided__vector__layout.html#a5996f952887a7ad754de6b862f71bd60',1,'mpl::strided_vector_layout::strided_vector_layout(int count, int blocklength, int stride)'],['../classmpl_1_1strided__vector__layout.html#acbd61feed56dc16a8121b9e05490ca4f',1,'mpl::strided_vector_layout::strided_vector_layout(int count, int blocklength, int stride, const layout< T > &l)'],['../classmpl_1_1strided__vector__layout.html#af5f48479be2f758f7ee107166ff8b6ab',1,'mpl::strided_vector_layout::strided_vector_layout(const strided_vector_layout< T > &l)'],['../classmpl_1_1strided__vector__layout.html#a9ea9a57f672e317522e4e8929bdc9ea2',1,'mpl::strided_vector_layout::strided_vector_layout(strided_vector_layout< T > &&l) noexcept']]], + ['sub_5flayouts_15',['sub_layouts',['../classmpl_1_1local__grid.html#a713ce59b43926706509b9a3a6a127a41',1,'mpl::local_grid']]], + ['subarray_5flayout_16',['subarray_layout',['../classmpl_1_1subarray__layout.html#aa96074e957a0d2271f5ff45a248cdbd0',1,'mpl::subarray_layout::subarray_layout(const parameter &par)'],['../classmpl_1_1subarray__layout.html#a6c9462225f9727417f1063a7300c1580',1,'mpl::subarray_layout::subarray_layout(const parameter &par, const layout< T > &l)'],['../classmpl_1_1subarray__layout.html#a8b4ea22298e053cea9267edbeaf057ed',1,'mpl::subarray_layout::subarray_layout(const subarray_layout< T > &l)'],['../classmpl_1_1subarray__layout.html#a4c8c9abf713ae31b48f8504bb5929455',1,'mpl::subarray_layout::subarray_layout(subarray_layout< T > &&l) noexcept'],['../classmpl_1_1subarray__layout.html#a2243a1c2887f4c6bbf11403528912906',1,'mpl::subarray_layout::subarray_layout()']]], + ['swap_17',['swap',['../classmpl_1_1heterogeneous__layout.html#a72a2fe2e326f5bfc1dd9b188acd07072',1,'mpl::heterogeneous_layout::swap()'],['../classmpl_1_1subarray__layout.html#a50f1141d79adc3100b3c4ab7d963b76f',1,'mpl::subarray_layout::swap()'],['../classmpl_1_1iterator__layout.html#aa065b1d83d11439b548ca9c67ce2b55a',1,'mpl::iterator_layout::swap()'],['../classmpl_1_1hindexed__block__layout.html#a31e0a5a0b069597199140c0fc6df1d13',1,'mpl::hindexed_block_layout::swap()'],['../classmpl_1_1indexed__block__layout.html#a2e7623e83f661a3948ca83f797149070',1,'mpl::indexed_block_layout::swap()'],['../classmpl_1_1hindexed__layout.html#a96cdefc4ba1b2513df1eb4377cffb58e',1,'mpl::hindexed_layout::swap()'],['../classmpl_1_1indexed__layout.html#aaca95a4fc535798296b2287e87934820',1,'mpl::indexed_layout::swap()'],['../classmpl_1_1strided__vector__layout.html#a497249e5a8b40b25329923b9062512f2',1,'mpl::strided_vector_layout::swap()'],['../classmpl_1_1vector__layout.html#aa88614eb8266c7ca511275674335c986',1,'mpl::vector_layout::swap()'],['../classmpl_1_1contiguous__layout.html#a3d0d28fdc0b29e06d3780a00b2d9cf7f',1,'mpl::contiguous_layout::swap()'],['../classmpl_1_1empty__layout.html#a069da901219beb3e1c3da57289bdfb1a',1,'mpl::empty_layout::swap()'],['../classmpl_1_1null__layout.html#aa902f79f8f54981548bfd7d74c11ec44',1,'mpl::null_layout::swap()'],['../classmpl_1_1layout.html#ab57eff0aeed0dee1e02bcfbec750d79f',1,'mpl::layout::swap()'],['../classmpl_1_1distributed__grid.html#a4af35d52ae69a0b0dea4921ed2a2595e',1,'mpl::distributed_grid::swap()']]] ]; diff --git a/docs/html/search/functions_f.js b/docs/html/search/functions_f.js index 26039c62..f401553a 100644 --- a/docs/html/search/functions_f.js +++ b/docs/html/search/functions_f.js @@ -1,17 +1,12 @@ var searchData= [ ['tag_0',['tag',['../classmpl_1_1status__t.html#a76b56d148b261f474f473d936c1fd878',1,'mpl::status_t']]], - ['tag_5ft_1',['tag_t',['../classmpl_1_1tag__t.html#af2132893124b73da5792982e961f8e21',1,'mpl::tag_t::tag_t()=default'],['../classmpl_1_1tag__t.html#a290110d503cd4d6bf1bbd0553f78c0a6',1,'mpl::tag_t::tag_t(T t)'],['../classmpl_1_1tag__t.html#aee28b8c00b151ccee302f75016b63f7b',1,'mpl::tag_t::tag_t(int t)']]], - ['test_2',['test',['../classmpl_1_1impl_1_1request.html#a9731fa2fb0157e792af4d9e5ade4103b',1,'mpl::impl::request']]], - ['testall_3',['testall',['../classmpl_1_1impl_1_1request__pool.html#a5ebba7b0471ba84cf591abace463072f',1,'mpl::impl::request_pool']]], - ['testany_4',['testany',['../classmpl_1_1impl_1_1request__pool.html#a0119c4bd3e340044868b9c26bae2a6f9',1,'mpl::impl::request_pool']]], - ['testsome_5',['testsome',['../classmpl_1_1impl_1_1request__pool.html#a0adfe04dd4bf29535b6687562fb88989',1,'mpl::impl::request_pool']]], - ['threading_5fmode_6',['threading_mode',['../namespacempl_1_1environment.html#ac623e48336fe65e098fb56ebd16dba33',1,'mpl::environment']]], - ['translate_7',['translate',['../classmpl_1_1group.html#a1c11d89daec6af7b0ed1b5668d355656',1,'mpl::group::translate(const ranks &rank, const group &other) const'],['../classmpl_1_1group.html#a38cdae96823a5ce04c1e4a637ca82d5a',1,'mpl::group::translate(int rank, const group &other) const']]], - ['true_5fbyte_5fextent_8',['true_byte_extent',['../classmpl_1_1layout.html#a45840e6936914baef876a0b67a8bb499',1,'mpl::layout']]], - ['true_5fbyte_5flower_5fbound_9',['true_byte_lower_bound',['../classmpl_1_1layout.html#a245932be5b4d58bb00a05b29208ab7c4',1,'mpl::layout']]], - ['true_5fbyte_5fupper_5fbound_10',['true_byte_upper_bound',['../classmpl_1_1layout.html#adf592d9e08a92314cc086bd51d643953',1,'mpl::layout']]], - ['true_5fextent_11',['true_extent',['../classmpl_1_1layout.html#a0890ec4684e6a465170f88932e116d30',1,'mpl::layout']]], - ['true_5flower_5fbound_12',['true_lower_bound',['../classmpl_1_1layout.html#a4b0e56adef2f212d061f971b2ecafd0a',1,'mpl::layout']]], - ['true_5fupper_5fbound_13',['true_upper_bound',['../classmpl_1_1layout.html#a80713f15de3244b019294ee277c8c650',1,'mpl::layout']]] + ['tag_5ft_1',['tag_t',['../classmpl_1_1tag__t.html#a290110d503cd4d6bf1bbd0553f78c0a6',1,'mpl::tag_t::tag_t(T t)'],['../classmpl_1_1tag__t.html#aee28b8c00b151ccee302f75016b63f7b',1,'mpl::tag_t::tag_t(int t)']]], + ['translate_2',['translate',['../classmpl_1_1group.html#a38cdae96823a5ce04c1e4a637ca82d5a',1,'mpl::group::translate(int rank, const group &other) const'],['../classmpl_1_1group.html#a1c11d89daec6af7b0ed1b5668d355656',1,'mpl::group::translate(const ranks &rank, const group &other) const']]], + ['true_5fbyte_5fextent_3',['true_byte_extent',['../classmpl_1_1layout.html#a45840e6936914baef876a0b67a8bb499',1,'mpl::layout']]], + ['true_5fbyte_5flower_5fbound_4',['true_byte_lower_bound',['../classmpl_1_1layout.html#a245932be5b4d58bb00a05b29208ab7c4',1,'mpl::layout']]], + ['true_5fbyte_5fupper_5fbound_5',['true_byte_upper_bound',['../classmpl_1_1layout.html#adf592d9e08a92314cc086bd51d643953',1,'mpl::layout']]], + ['true_5fextent_6',['true_extent',['../classmpl_1_1layout.html#a0890ec4684e6a465170f88932e116d30',1,'mpl::layout']]], + ['true_5flower_5fbound_7',['true_lower_bound',['../classmpl_1_1layout.html#a4b0e56adef2f212d061f971b2ecafd0a',1,'mpl::layout']]], + ['true_5fupper_5fbound_8',['true_upper_bound',['../classmpl_1_1layout.html#a80713f15de3244b019294ee277c8c650',1,'mpl::layout']]] ]; diff --git a/docs/html/search/namespaces_0.html b/docs/html/search/namespaces_0.html deleted file mode 100644 index 4bedca0b..00000000 --- a/docs/html/search/namespaces_0.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/namespaces_0.js b/docs/html/search/namespaces_0.js deleted file mode 100644 index 8a18834e..00000000 --- a/docs/html/search/namespaces_0.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['environment_0',['environment',['../namespacempl_1_1environment.html',1,'mpl']]], - ['impl_1',['impl',['../namespacempl_1_1impl.html',1,'mpl']]], - ['mpl_2',['mpl',['../namespacempl.html',1,'']]] -]; diff --git a/docs/html/search/namespaces_1.html b/docs/html/search/namespaces_1.html deleted file mode 100644 index 86a1aa4d..00000000 --- a/docs/html/search/namespaces_1.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/namespaces_1.js b/docs/html/search/namespaces_1.js deleted file mode 100644 index 06d08d8b..00000000 --- a/docs/html/search/namespaces_1.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['std_0',['std',['../namespacestd.html',1,'']]] -]; diff --git a/docs/html/search/related_0.js b/docs/html/search/related_0.js index f427078b..f0aa3496 100644 --- a/docs/html/search/related_0.js +++ b/docs/html/search/related_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['base_5fstruct_5fbuilder_3c_20s_20_3e_0',['base_struct_builder< S >',['../classmpl_1_1struct__layout.html#a1b10f2e35ead013aab50cab5e5aee21a',1,'mpl::struct_layout']]] + ['dims_5fcreate_0',['dims_create',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#afac55447acc7a9624d5f2cc75c78af85',1,'mpl::cartesian_communicator::dimensions']]] ]; diff --git a/docs/html/search/related_1.js b/docs/html/search/related_1.js index 43740a51..4d1975d7 100644 --- a/docs/html/search/related_1.js +++ b/docs/html/search/related_1.js @@ -1,7 +1,4 @@ var searchData= [ - ['cartesian_5fcommunicator_0',['cartesian_communicator',['../classmpl_1_1cartesian__communicator_1_1vector.html#a6087bfa57412c9e8b80b6f380ebaaf7a',1,'mpl::cartesian_communicator::vector::cartesian_communicator()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a6087bfa57412c9e8b80b6f380ebaaf7a',1,'mpl::cartesian_communicator::included_tags::cartesian_communicator()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a6087bfa57412c9e8b80b6f380ebaaf7a',1,'mpl::cartesian_communicator::dimensions::cartesian_communicator()'],['../classmpl_1_1communicator.html#a6087bfa57412c9e8b80b6f380ebaaf7a',1,'mpl::communicator::cartesian_communicator()']]], - ['communicator_1',['communicator',['../classmpl_1_1group.html#a28e4940a8d711c15cada064a12ba0788',1,'mpl::group::communicator()'],['../classmpl_1_1contiguous__layout.html#a28e4940a8d711c15cada064a12ba0788',1,'mpl::contiguous_layout::communicator()'],['../classmpl_1_1layouts.html#a28e4940a8d711c15cada064a12ba0788',1,'mpl::layouts::communicator()'],['../classmpl_1_1contiguous__layouts.html#a28e4940a8d711c15cada064a12ba0788',1,'mpl::contiguous_layouts::communicator()'],['../classmpl_1_1status__t.html#a28e4940a8d711c15cada064a12ba0788',1,'mpl::status_t::communicator()']]], - ['contiguous_5flayout_3c_20t_20_3e_2',['contiguous_layout< T >',['../classmpl_1_1layout.html#a24fd43f71dcacaaa7f11f25121d457d6',1,'mpl::layout']]], - ['contiguous_5flayouts_3c_20t_20_3e_3',['contiguous_layouts< T >',['../classmpl_1_1contiguous__layout.html#adda8d9c92a93fd7e1c7dddf5cd113403',1,'mpl::contiguous_layout']]] + ['make_5fabsolute_0',['make_absolute',['../classmpl_1_1layout.html#ac0dc61784adeaeaf328f741871add748',1,'mpl::layout::make_absolute()'],['../classmpl_1_1layout.html#a8f6bbd313a30534934c9a4004d1d3f0f',1,'mpl::layout::make_absolute()'],['../classmpl_1_1absolute__data_3_01_t_01_5_01_4.html#ac0dc61784adeaeaf328f741871add748',1,'mpl::absolute_data< T * >::make_absolute()'],['../classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html#a8f6bbd313a30534934c9a4004d1d3f0f',1,'mpl::absolute_data< const T * >::make_absolute()']]] ]; diff --git a/docs/html/search/related_2.html b/docs/html/search/related_2.html deleted file mode 100644 index ad25459c..00000000 --- a/docs/html/search/related_2.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/related_2.js b/docs/html/search/related_2.js deleted file mode 100644 index 0cd2079d..00000000 --- a/docs/html/search/related_2.js +++ /dev/null @@ -1,8 +0,0 @@ -var searchData= -[ - ['datatype_5ftraits_3c_20layout_3c_20t_20_3e_20_3e_0',['datatype_traits< layout< T > >',['../classmpl_1_1layout.html#ab05bcf7aebbf27c0d719ce8348a73a20',1,'mpl::layout']]], - ['datatype_5ftraits_5fimpl_3c_20t_2c_20void_20_3e_1',['datatype_traits_impl< T, void >',['../classmpl_1_1base__struct__builder.html#adff83dea1d51c8281fbf5ca3717206fa',1,'mpl::base_struct_builder']]], - ['dims_5fcreate_2',['dims_create',['../classmpl_1_1cartesian__communicator_1_1dimensions.html#afac55447acc7a9624d5f2cc75c78af85',1,'mpl::cartesian_communicator::dimensions']]], - ['distributed_5fgraph_5fcommunicator_3',['distributed_graph_communicator',['../classmpl_1_1communicator.html#a38537ffedd59ba7ac4018e44dd2c06c6',1,'mpl::communicator']]], - ['distributed_5fgrid_4',['distributed_grid',['../classmpl_1_1distributed__grid_1_1dimensions.html#aed92b0c67390eff049ba51342c40fa6f',1,'mpl::distributed_grid::dimensions']]] -]; diff --git a/docs/html/search/related_3.html b/docs/html/search/related_3.html deleted file mode 100644 index 8578feef..00000000 --- a/docs/html/search/related_3.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/related_3.js b/docs/html/search/related_3.js deleted file mode 100644 index 015d0d89..00000000 --- a/docs/html/search/related_3.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['empty_5flayout_3c_20t_20_3e_0',['empty_layout< T >',['../classmpl_1_1layout.html#a7841d5d18df3df9d49003cdddb7e0b88',1,'mpl::layout']]], - ['env_1',['env',['../classmpl_1_1communicator.html#a7c53dda9ff4a482df724cab0edf000b3',1,'mpl::communicator']]] -]; diff --git a/docs/html/search/related_4.html b/docs/html/search/related_4.html deleted file mode 100644 index 734c5ed4..00000000 --- a/docs/html/search/related_4.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/related_4.js b/docs/html/search/related_4.js deleted file mode 100644 index 8a73387c..00000000 --- a/docs/html/search/related_4.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['graph_5fcommunicator_0',['graph_communicator',['../classmpl_1_1communicator.html#a864a79402650e1b3c453bf86a588dd1d',1,'mpl::communicator::graph_communicator()'],['../classmpl_1_1graph__communicator_1_1node__list.html#a864a79402650e1b3c453bf86a588dd1d',1,'mpl::graph_communicator::node_list::graph_communicator()']]], - ['group_1',['group',['../classmpl_1_1communicator.html#a670720b16047bf7556aea242ff96a7fb',1,'mpl::communicator']]] -]; diff --git a/docs/html/search/related_5.html b/docs/html/search/related_5.html deleted file mode 100644 index 8145a610..00000000 --- a/docs/html/search/related_5.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/related_5.js b/docs/html/search/related_5.js deleted file mode 100644 index 7961c72b..00000000 --- a/docs/html/search/related_5.js +++ /dev/null @@ -1,8 +0,0 @@ -var searchData= -[ - ['heterogeneous_5flayout_0',['heterogeneous_layout',['../classmpl_1_1layout.html#a345f190da284e84ef033bec2677fdd5f',1,'mpl::layout::heterogeneous_layout()'],['../classmpl_1_1absolute__data_3_01_t_01_5_01_4.html#a345f190da284e84ef033bec2677fdd5f',1,'mpl::absolute_data< T * >::heterogeneous_layout()'],['../classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html#a345f190da284e84ef033bec2677fdd5f',1,'mpl::absolute_data< const T * >::heterogeneous_layout()'],['../classmpl_1_1heterogeneous__layout_1_1parameter.html#a345f190da284e84ef033bec2677fdd5f',1,'mpl::heterogeneous_layout::parameter::heterogeneous_layout()']]], - ['hindexed_5fblock_5flayout_1',['hindexed_block_layout',['../classmpl_1_1hindexed__block__layout_1_1parameter.html#a69ff431775bd1969641bcb73a6ee8668',1,'mpl::hindexed_block_layout::parameter']]], - ['hindexed_5fblock_5flayout_3c_20t_20_3e_2',['hindexed_block_layout< T >',['../classmpl_1_1layout.html#ab5519bf73c4607f6ec61588e7d7f0aad',1,'mpl::layout']]], - ['hindexed_5flayout_3',['hindexed_layout',['../classmpl_1_1hindexed__layout_1_1parameter.html#adc58655b3738b34c8feb41b014aa8227',1,'mpl::hindexed_layout::parameter']]], - ['hindexed_5flayout_3c_20t_20_3e_4',['hindexed_layout< T >',['../classmpl_1_1layout.html#a2d817091be01028eba2db9128d792b76',1,'mpl::layout']]] -]; diff --git a/docs/html/search/related_6.html b/docs/html/search/related_6.html deleted file mode 100644 index 9d79b97a..00000000 --- a/docs/html/search/related_6.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/related_6.js b/docs/html/search/related_6.js deleted file mode 100644 index b41e7f3e..00000000 --- a/docs/html/search/related_6.js +++ /dev/null @@ -1,14 +0,0 @@ -var searchData= -[ - ['indexed_5fblock_5flayout_0',['indexed_block_layout',['../classmpl_1_1indexed__block__layout_1_1parameter.html#a17af34d4276ce99356fc0b943e6bce54',1,'mpl::indexed_block_layout::parameter']]], - ['indexed_5fblock_5flayout_3c_20t_20_3e_1',['indexed_block_layout< T >',['../classmpl_1_1layout.html#aa503cf6532650fac11937626cb1a9a68',1,'mpl::layout']]], - ['indexed_5flayout_2',['indexed_layout',['../classmpl_1_1indexed__layout_1_1parameter.html#a97dc21015db1900818c4f2cbedf2823c',1,'mpl::indexed_layout::parameter']]], - ['indexed_5flayout_3c_20t_20_3e_3',['indexed_layout< T >',['../classmpl_1_1layout.html#aab715201eed750d6cc9831d5a98b9858',1,'mpl::layout']]], - ['iterator_5flayout_4',['iterator_layout',['../classmpl_1_1iterator__layout_1_1parameter.html#a58c52e5547d2956c368d96c3585da540',1,'mpl::iterator_layout::parameter']]], - ['iterator_5flayout_3c_20t_20_3e_5',['iterator_layout< T >',['../classmpl_1_1layout.html#aef5d3d4d7c5d1ed3908c19feac4c6be1',1,'mpl::layout']]], - ['request_6',['request',['../classmpl_1_1status__t.html#a435a6a142566db821f6585961da52ed3',1,'mpl::status_t']]], - ['request_5fpool_7',['request_pool',['../classmpl_1_1status__t.html#ab9c9880cf76979a056acfe2cb6bf6772',1,'mpl::status_t']]], - ['request_5fpool_3c_20irequest_20_3e_8',['request_pool< irequest >',['../classmpl_1_1irequest.html#ac0fb8b83ea79062c37d219742c871bcc',1,'mpl::irequest']]], - ['request_5fpool_3c_20prequest_20_3e_9',['request_pool< prequest >',['../classmpl_1_1prequest.html#a8c58374ad21d57465ce6914abe69fdf8',1,'mpl::prequest']]], - ['topology_5fcommunicator_10',['topology_communicator',['../classmpl_1_1layouts.html#a1eb8b54fe4aac54b7d7dd0ef16a2a82e',1,'mpl::layouts::topology_communicator()'],['../classmpl_1_1contiguous__layouts.html#a1eb8b54fe4aac54b7d7dd0ef16a2a82e',1,'mpl::contiguous_layouts::topology_communicator()']]] -]; diff --git a/docs/html/search/related_7.html b/docs/html/search/related_7.html deleted file mode 100644 index 831faee5..00000000 --- a/docs/html/search/related_7.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/related_7.js b/docs/html/search/related_7.js deleted file mode 100644 index f3c9f502..00000000 --- a/docs/html/search/related_7.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['local_5fgrid_0',['local_grid',['../classmpl_1_1local__grid_1_1dimensions.html#ad7e845ddcd260c1f9386866d30c09788',1,'mpl::local_grid::dimensions']]] -]; diff --git a/docs/html/search/related_8.html b/docs/html/search/related_8.html deleted file mode 100644 index 5e1a579b..00000000 --- a/docs/html/search/related_8.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/related_8.js b/docs/html/search/related_8.js deleted file mode 100644 index 4d1975d7..00000000 --- a/docs/html/search/related_8.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['make_5fabsolute_0',['make_absolute',['../classmpl_1_1layout.html#ac0dc61784adeaeaf328f741871add748',1,'mpl::layout::make_absolute()'],['../classmpl_1_1layout.html#a8f6bbd313a30534934c9a4004d1d3f0f',1,'mpl::layout::make_absolute()'],['../classmpl_1_1absolute__data_3_01_t_01_5_01_4.html#ac0dc61784adeaeaf328f741871add748',1,'mpl::absolute_data< T * >::make_absolute()'],['../classmpl_1_1absolute__data_3_01const_01_t_01_5_01_4.html#a8f6bbd313a30534934c9a4004d1d3f0f',1,'mpl::absolute_data< const T * >::make_absolute()']]] -]; diff --git a/docs/html/search/related_9.html b/docs/html/search/related_9.html deleted file mode 100644 index 42be5b95..00000000 --- a/docs/html/search/related_9.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/related_9.js b/docs/html/search/related_9.js deleted file mode 100644 index fd6136d4..00000000 --- a/docs/html/search/related_9.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['null_5flayout_3c_20t_20_3e_0',['null_layout< T >',['../classmpl_1_1layout.html#a297cff9dc710fa1e886d36a3db3fe53b',1,'mpl::layout']]] -]; diff --git a/docs/html/search/related_a.html b/docs/html/search/related_a.html deleted file mode 100644 index ec8d2966..00000000 --- a/docs/html/search/related_a.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/related_a.js b/docs/html/search/related_a.js deleted file mode 100644 index 54f8d007..00000000 --- a/docs/html/search/related_a.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['operator_21_3d_0',['operator!=',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a55a8ee0e80dad1a7da9d751c25bc0386',1,'mpl::cartesian_communicator::dimensions::iterator::operator!=()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a5fbca5b71055f2b793ae1607239b13a0',1,'mpl::cartesian_communicator::dimensions::const_iterator::operator!=()']]], - ['operator_3d_3d_1',['operator==',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a81d10d7799462c7ca5e7cf19119ca356',1,'mpl::cartesian_communicator::dimensions::iterator::operator==()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#ab0ac7de651351823aece097eb3be1cfb',1,'mpl::cartesian_communicator::dimensions::const_iterator::operator==()']]] -]; diff --git a/docs/html/search/related_b.html b/docs/html/search/related_b.html deleted file mode 100644 index 11a307b3..00000000 --- a/docs/html/search/related_b.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/related_b.js b/docs/html/search/related_b.js deleted file mode 100644 index 8d62b306..00000000 --- a/docs/html/search/related_b.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['request_3c_20irequest_20_3e_0',['request< irequest >',['../classmpl_1_1impl_1_1irequest.html#afc6c0627314f63682b958c13cf936247',1,'mpl::impl::irequest']]], - ['request_3c_20prequest_20_3e_1',['request< prequest >',['../classmpl_1_1impl_1_1prequest.html#a8c7c30bf6b0c6ffc75d78caeac645230',1,'mpl::impl::prequest']]], - ['request_5fpool_3c_20mpl_3a_3airequest_20_3e_2',['request_pool< mpl::irequest >',['../classmpl_1_1impl_1_1irequest.html#aa9403354e473e9978d6e49bc4389c9fe',1,'mpl::impl::irequest']]], - ['request_5fpool_3c_20mpl_3a_3aprequest_20_3e_3',['request_pool< mpl::prequest >',['../classmpl_1_1impl_1_1prequest.html#a99278de2244bd4d9129a7a07c40dd721',1,'mpl::impl::prequest']]] -]; diff --git a/docs/html/search/related_c.html b/docs/html/search/related_c.html deleted file mode 100644 index 7796640c..00000000 --- a/docs/html/search/related_c.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/related_c.js b/docs/html/search/related_c.js deleted file mode 100644 index 3e7c0179..00000000 --- a/docs/html/search/related_c.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['strided_5fvector_5flayout_3c_20t_20_3e_0',['strided_vector_layout< T >',['../classmpl_1_1layout.html#a12753d9d9517a88356cc3d1fc6e1c571',1,'mpl::layout']]], - ['subarray_5flayout_1',['subarray_layout',['../classmpl_1_1subarray__layout_1_1parameter.html#a44e33f146bbe2cb7692c6fd9eeefdfc4',1,'mpl::subarray_layout::parameter']]], - ['subarray_5flayout_3c_20t_20_3e_2',['subarray_layout< T >',['../classmpl_1_1layout.html#ad86a2fab89091a3c1e2cf8d0775c9d7b',1,'mpl::layout']]] -]; diff --git a/docs/html/search/related_d.html b/docs/html/search/related_d.html deleted file mode 100644 index 9b8b4e66..00000000 --- a/docs/html/search/related_d.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/related_d.js b/docs/html/search/related_d.js deleted file mode 100644 index 97de3b35..00000000 --- a/docs/html/search/related_d.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['vector_5flayout_3c_20t_20_3e_0',['vector_layout< T >',['../classmpl_1_1layout.html#a477b919fe55146acf76bbe082bb4a214',1,'mpl::layout']]] -]; diff --git a/docs/html/search/searchdata.js b/docs/html/search/searchdata.js index 18520c68..16dd9f24 100644 --- a/docs/html/search/searchdata.js +++ b/docs/html/search/searchdata.js @@ -1,42 +1,39 @@ var indexSectionsWithContent = { - 0: "abcdefghilmnoprstuvw~", + 0: "abcdeghilmnoprstuvw~", 1: "abcdeghilmnoprstuv", - 2: "ms", - 3: "abcdeghilmnoprstuvw~", - 4: "abcdegimnoprsuw", - 5: "acdimprstv", - 6: "aeipt", - 7: "cefimnpsu", - 8: "bcdeghilmnorsv", - 9: "dm" + 2: "abcdeghilmnoprstuvw~", + 3: "cdegimnopsu", + 4: "acdprsv", + 5: "eip", + 6: "ceinpsu", + 7: "dm", + 8: "dm" }; var indexSectionNames = { 0: "all", 1: "classes", - 2: "namespaces", - 3: "functions", - 4: "variables", - 5: "typedefs", - 6: "enums", - 7: "enumvalues", - 8: "related", - 9: "pages" + 2: "functions", + 3: "variables", + 4: "typedefs", + 5: "enums", + 6: "enumvalues", + 7: "related", + 8: "pages" }; var indexSectionLabels = { 0: "All", 1: "Classes", - 2: "Namespaces", - 3: "Functions", - 4: "Variables", - 5: "Typedefs", - 6: "Enumerations", - 7: "Enumerator", - 8: "Friends", - 9: "Pages" + 2: "Functions", + 3: "Variables", + 4: "Typedefs", + 5: "Enumerations", + 6: "Enumerator", + 7: "Friends", + 8: "Pages" }; diff --git a/docs/html/search/typedefs_1.js b/docs/html/search/typedefs_1.js index 8f305659..edecc873 100644 --- a/docs/html/search/typedefs_1.js +++ b/docs/html/search/typedefs_1.js @@ -1,6 +1,5 @@ var searchData= [ - ['const_5fiterator_0',['const_iterator',['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a1aa72f4e0fcca8b7a149adeb640ead4e',1,'mpl::cartesian_communicator::included_tags::const_iterator()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a5425d74e6c4cea81f2d26501e09d256b',1,'mpl::distributed_graph_communicator::neighbours_set::const_iterator()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a633df14d612a5a06aecb6a7a4f2775f0',1,'mpl::distributed_grid::dimensions::const_iterator()'],['../classmpl_1_1local__grid_1_1dimensions.html#a79b159ea66770b5581b00330a95a2227',1,'mpl::local_grid::dimensions::const_iterator()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#a015685ec461e590fa7272cbf91220d18',1,'mpl::graph_communicator::edge_set::const_iterator()'],['../classmpl_1_1graph__communicator_1_1node__list.html#a5586635b21b9dbc9cb1d50c1cf9471a1',1,'mpl::graph_communicator::node_list::const_iterator()'],['../classmpl_1_1cartesian__communicator_1_1vector.html#ad9f677e798824f15bd7ae99bac9ec985',1,'mpl::cartesian_communicator::vector::const_iterator()']]], - ['const_5fpointer_1',['const_pointer',['../classmpl_1_1distributed__grid.html#adbab66d465f005bb94e838740deb6ec4',1,'mpl::distributed_grid::const_pointer()'],['../classmpl_1_1local__grid.html#a016e0dbc1d748bea7bf40f5ad6917a67',1,'mpl::local_grid::const_pointer()']]], - ['const_5freference_2',['const_reference',['../classmpl_1_1graph__communicator_1_1node__list.html#aa84022c75e433a413319022844309f84',1,'mpl::graph_communicator::node_list::const_reference()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#ab383a23d687c47ad7b85309f81ffdb1b',1,'mpl::graph_communicator::edge_set::const_reference()'],['../classmpl_1_1local__grid_1_1dimensions.html#a65540a03ba7eba65ad33b461f2737d95',1,'mpl::local_grid::dimensions::const_reference()'],['../classmpl_1_1local__grid.html#aab729f6d024a0550cd75781ac7e7f7a7',1,'mpl::local_grid::const_reference()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#ac16a09ce9008a9260e3d750562a45ced',1,'mpl::distributed_grid::dimensions::const_reference()'],['../classmpl_1_1distributed__grid.html#a32d7b6507e9184ed2e89324b40c7f6c9',1,'mpl::distributed_grid::const_reference()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#ac78cd1aea35357b5a113b50abec60a75',1,'mpl::distributed_graph_communicator::neighbours_set::const_reference()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a52bc3894703534c57d950bf23228ff6f',1,'mpl::cartesian_communicator::dimensions::const_reference()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#ab46ef7e9748d1f33a0f8ff71d104e7e1',1,'mpl::cartesian_communicator::included_tags::const_reference()'],['../classmpl_1_1cartesian__communicator_1_1vector.html#a6d37006e6cad284e3761d2dc9642ee88',1,'mpl::cartesian_communicator::vector::const_reference()']]] + ['const_5fpointer_0',['const_pointer',['../classmpl_1_1distributed__grid.html#adbab66d465f005bb94e838740deb6ec4',1,'mpl::distributed_grid::const_pointer()'],['../classmpl_1_1local__grid.html#a016e0dbc1d748bea7bf40f5ad6917a67',1,'mpl::local_grid::const_pointer()']]], + ['const_5freference_1',['const_reference',['../classmpl_1_1distributed__grid.html#a32d7b6507e9184ed2e89324b40c7f6c9',1,'mpl::distributed_grid::const_reference()'],['../classmpl_1_1local__grid.html#aab729f6d024a0550cd75781ac7e7f7a7',1,'mpl::local_grid::const_reference()']]] ]; diff --git a/docs/html/search/typedefs_2.js b/docs/html/search/typedefs_2.js index b6ac331c..02801f44 100644 --- a/docs/html/search/typedefs_2.js +++ b/docs/html/search/typedefs_2.js @@ -1,5 +1,4 @@ var searchData= [ - ['data_5ftype_5fcategory_0',['data_type_category',['../classmpl_1_1struct__builder.html#a7a251c50cab3d224a1a8268530db4d6d',1,'mpl::struct_builder']]], - ['difference_5ftype_1',['difference_type',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a9e59695e3620081c6b31448102398296',1,'mpl::cartesian_communicator::dimensions::iterator::difference_type()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a9124b5277e84386543372a744c1f3263',1,'mpl::cartesian_communicator::dimensions::const_iterator::difference_type()'],['../classmpl_1_1distributed__grid.html#aef0dc237dc10dbb89f77b95dafa860e0',1,'mpl::distributed_grid::difference_type()'],['../classmpl_1_1local__grid.html#ae475f7494bbd3986b2850906ea360b6d',1,'mpl::local_grid::difference_type()']]] + ['difference_5ftype_0',['difference_type',['../classmpl_1_1distributed__grid.html#aef0dc237dc10dbb89f77b95dafa860e0',1,'mpl::distributed_grid::difference_type()'],['../classmpl_1_1local__grid.html#ae475f7494bbd3986b2850906ea360b6d',1,'mpl::local_grid::difference_type()']]] ]; diff --git a/docs/html/search/typedefs_3.js b/docs/html/search/typedefs_3.js index f654843c..baa5e43c 100644 --- a/docs/html/search/typedefs_3.js +++ b/docs/html/search/typedefs_3.js @@ -1,5 +1,4 @@ var searchData= [ - ['iterator_0',['iterator',['../classmpl_1_1cartesian__communicator_1_1vector.html#a95eab3eb70b4574c8850af64b20b41f3',1,'mpl::cartesian_communicator::vector::iterator()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a6d15151da59d0483bb7da33aba71dc60',1,'mpl::cartesian_communicator::included_tags::iterator()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a855d65e72816eaa7d08fc4db9feb5df0',1,'mpl::distributed_graph_communicator::neighbours_set::iterator()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#ab6a1c5e822586134f597b059eb00000d',1,'mpl::distributed_grid::dimensions::iterator()'],['../classmpl_1_1local__grid_1_1dimensions.html#a43e2c08d9b3a82586cf93b17fd851331',1,'mpl::local_grid::dimensions::iterator()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#a108a464ce7190e45fe9aa162ffcd779c',1,'mpl::graph_communicator::edge_set::iterator()'],['../classmpl_1_1graph__communicator_1_1node__list.html#a8678648832d56e5b555d19e491e6268a',1,'mpl::graph_communicator::node_list::iterator()']]], - ['iterator_5fcategory_1',['iterator_category',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#acaa75ca51d75d81868f0ea74d9a3fa05',1,'mpl::cartesian_communicator::dimensions::iterator::iterator_category()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#acda97b96d05cf49d244e973870831ffc',1,'mpl::cartesian_communicator::dimensions::const_iterator::iterator_category()']]] + ['pointer_0',['pointer',['../classmpl_1_1distributed__grid.html#a67abfe92a3bb5d4cf1708297a2e7343d',1,'mpl::distributed_grid::pointer()'],['../classmpl_1_1local__grid.html#afbdae75370bc044bbb0f0f8ce22c4544',1,'mpl::local_grid::pointer()']]] ]; diff --git a/docs/html/search/typedefs_4.js b/docs/html/search/typedefs_4.js index 493848ea..a6f60494 100644 --- a/docs/html/search/typedefs_4.js +++ b/docs/html/search/typedefs_4.js @@ -1,4 +1,4 @@ var searchData= [ - ['message_5ft_0',['message_t',['../namespacempl.html#a3685893e866d7db6c3b3765d26ef386b',1,'mpl']]] + ['reference_0',['reference',['../classmpl_1_1distributed__grid.html#a51579bec8d2ed2da636f1bc6db474ca6',1,'mpl::distributed_grid::reference()'],['../classmpl_1_1local__grid.html#aa34ade9741224f1539935e220ba95105',1,'mpl::local_grid::reference()']]] ]; diff --git a/docs/html/search/typedefs_5.js b/docs/html/search/typedefs_5.js index a788118e..1e361899 100644 --- a/docs/html/search/typedefs_5.js +++ b/docs/html/search/typedefs_5.js @@ -1,4 +1,4 @@ var searchData= [ - ['pointer_0',['pointer',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#a3cf701146a093e49ac1906d9969f7a79',1,'mpl::cartesian_communicator::dimensions::iterator::pointer()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a32dd93ebdc5b3f3c1379c8555dc266a1',1,'mpl::cartesian_communicator::dimensions::const_iterator::pointer()'],['../classmpl_1_1distributed__grid.html#a67abfe92a3bb5d4cf1708297a2e7343d',1,'mpl::distributed_grid::pointer()'],['../classmpl_1_1local__grid.html#afbdae75370bc044bbb0f0f8ce22c4544',1,'mpl::local_grid::pointer()']]] + ['size_5ftype_0',['size_type',['../classmpl_1_1distributed__grid.html#a34a86347db9b7601f7e3d5e4dc4f9418',1,'mpl::distributed_grid::size_type()'],['../classmpl_1_1local__grid.html#ae0ebb9b3054ff110c5bbb2594729a84f',1,'mpl::local_grid::size_type()']]] ]; diff --git a/docs/html/search/typedefs_6.js b/docs/html/search/typedefs_6.js index cbdfd7ed..cb0e3cce 100644 --- a/docs/html/search/typedefs_6.js +++ b/docs/html/search/typedefs_6.js @@ -1,4 +1,5 @@ var searchData= [ - ['reference_0',['reference',['../classmpl_1_1cartesian__communicator_1_1vector.html#a0dab1fa97a7c8b5862f4c808e1475c6c',1,'mpl::cartesian_communicator::vector::reference()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a841f9c67444cbd1589f1ea3066edfe38',1,'mpl::cartesian_communicator::included_tags::reference()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a2f0de8706bb7698b56f2e46b859ecd25',1,'mpl::cartesian_communicator::dimensions::reference()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#acc37d5d5bfa96b9560bb466407f8bf5c',1,'mpl::cartesian_communicator::dimensions::iterator::reference()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a3df2e96495b39551a49133cf423e31f5',1,'mpl::cartesian_communicator::dimensions::const_iterator::reference()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#a8bfae66c480cea453e5efc29a48caa86',1,'mpl::distributed_graph_communicator::neighbours_set::reference()'],['../classmpl_1_1distributed__grid.html#a51579bec8d2ed2da636f1bc6db474ca6',1,'mpl::distributed_grid::reference()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a777b0b3479a3be7b092eebfe42a2e923',1,'mpl::distributed_grid::dimensions::reference()'],['../classmpl_1_1local__grid.html#aa34ade9741224f1539935e220ba95105',1,'mpl::local_grid::reference()'],['../classmpl_1_1local__grid_1_1dimensions.html#aada2962f222ad01378a706bf18931e55',1,'mpl::local_grid::dimensions::reference()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#acc11f382d1c7534095f6392fec035fe6',1,'mpl::graph_communicator::edge_set::reference()'],['../classmpl_1_1graph__communicator_1_1node__list.html#a199f783f69146375fd4890c1b318189f',1,'mpl::graph_communicator::node_list::reference()']]] + ['value_5ftype_0',['value_type',['../classmpl_1_1distributed__grid.html#ab991c114a3494a36c2bf3a0b98edae75',1,'mpl::distributed_grid::value_type()'],['../classmpl_1_1local__grid.html#ab2318fdfc94ef7e9d626202597dfd6f4',1,'mpl::local_grid::value_type()']]], + ['vector_5ftype_1',['vector_type',['../classmpl_1_1distributed__grid.html#ab234ea807e04466672d1cb64fe6b0e9a',1,'mpl::distributed_grid::vector_type()'],['../classmpl_1_1local__grid.html#ace4a57097109ad8e4236426f2b81570f',1,'mpl::local_grid::vector_type()']]] ]; diff --git a/docs/html/search/typedefs_7.html b/docs/html/search/typedefs_7.html deleted file mode 100644 index f62a4ec2..00000000 --- a/docs/html/search/typedefs_7.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/typedefs_7.js b/docs/html/search/typedefs_7.js deleted file mode 100644 index 19019914..00000000 --- a/docs/html/search/typedefs_7.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['size_5ft_0',['size_t',['../namespacempl.html#a3cd70ef6c91cacaf9265de4c9dd93ddf',1,'mpl']]], - ['size_5ftype_1',['size_type',['../classmpl_1_1displacements.html#a0a9d79ddab90f97db23951542f9529ec',1,'mpl::displacements::size_type()'],['../classmpl_1_1distributed__grid.html#a34a86347db9b7601f7e3d5e4dc4f9418',1,'mpl::distributed_grid::size_type()'],['../classmpl_1_1local__grid.html#ae0ebb9b3054ff110c5bbb2594729a84f',1,'mpl::local_grid::size_type()'],['../classmpl_1_1impl_1_1request__pool.html#a5b3f8f3986dc6bc5852939446531c767',1,'mpl::impl::request_pool::size_type()']]], - ['ssize_5ft_2',['ssize_t',['../namespacempl.html#acf6b82700b0f144cbcd49b1233e1083d',1,'mpl']]] -]; diff --git a/docs/html/search/typedefs_8.html b/docs/html/search/typedefs_8.html deleted file mode 100644 index e7e01184..00000000 --- a/docs/html/search/typedefs_8.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/typedefs_8.js b/docs/html/search/typedefs_8.js deleted file mode 100644 index be463c34..00000000 --- a/docs/html/search/typedefs_8.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['type_0',['type',['../structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html#ade76dbf30ac4a03ad006fc2db5b9b8a2',1,'std::tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >']]] -]; diff --git a/docs/html/search/typedefs_9.html b/docs/html/search/typedefs_9.html deleted file mode 100644 index 07d816e5..00000000 --- a/docs/html/search/typedefs_9.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/typedefs_9.js b/docs/html/search/typedefs_9.js deleted file mode 100644 index aabc440d..00000000 --- a/docs/html/search/typedefs_9.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['value_5ftype_0',['value_type',['../classmpl_1_1cartesian__communicator_1_1vector.html#af62280a6766d3cfe8db967ab0ee5ac50',1,'mpl::cartesian_communicator::vector::value_type()'],['../classmpl_1_1cartesian__communicator_1_1included__tags.html#a4d4e69a2220d0670cabbbf3dd566000a',1,'mpl::cartesian_communicator::included_tags::value_type()'],['../classmpl_1_1cartesian__communicator_1_1dimensions.html#a0e2e337b0ef4cbfe65e84719f6f18b56',1,'mpl::cartesian_communicator::dimensions::value_type()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1iterator.html#ad4a9eef4a8a7cb42a4a4d303c9c1a613',1,'mpl::cartesian_communicator::dimensions::iterator::value_type()'],['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1const__iterator.html#a240a9c896e65954b25b9444db1e7f745',1,'mpl::cartesian_communicator::dimensions::const_iterator::value_type()'],['../classmpl_1_1displacements.html#a6507f2260c13ced0a18e3d32af0c04a6',1,'mpl::displacements::value_type()'],['../classmpl_1_1distributed__graph__communicator_1_1neighbours__set.html#abde052dc7aa30e7322ae4f110e099a28',1,'mpl::distributed_graph_communicator::neighbours_set::value_type()'],['../classmpl_1_1distributed__grid.html#ab991c114a3494a36c2bf3a0b98edae75',1,'mpl::distributed_grid::value_type()'],['../classmpl_1_1distributed__grid_1_1dimensions.html#a1104ae5dc102133af3801569848e3052',1,'mpl::distributed_grid::dimensions::value_type()'],['../classmpl_1_1local__grid.html#ab2318fdfc94ef7e9d626202597dfd6f4',1,'mpl::local_grid::value_type()'],['../classmpl_1_1local__grid_1_1dimensions.html#a8dde7cc3e0f11533dcf221daed6368fe',1,'mpl::local_grid::dimensions::value_type()'],['../classmpl_1_1graph__communicator_1_1edge__set.html#abcf980f8207f9165319e4ea0b1785112',1,'mpl::graph_communicator::edge_set::value_type()'],['../classmpl_1_1graph__communicator_1_1node__list.html#a51b3fcd822115593a2af29b5745aa224',1,'mpl::graph_communicator::node_list::value_type()']]], - ['vector_5ftype_1',['vector_type',['../classmpl_1_1distributed__grid.html#ab234ea807e04466672d1cb64fe6b0e9a',1,'mpl::distributed_grid::vector_type()'],['../classmpl_1_1local__grid.html#ace4a57097109ad8e4236426f2b81570f',1,'mpl::local_grid::vector_type()']]] -]; diff --git a/docs/html/search/variables_0.js b/docs/html/search/variables_0.js index 8ae88560..78de7bf4 100644 --- a/docs/html/search/variables_0.js +++ b/docs/html/search/variables_0.js @@ -1,5 +1,5 @@ var searchData= [ - ['absolute_0',['absolute',['../namespacempl.html#af7799eb8fd405a1f2f1f226fe24626f5',1,'mpl']]], - ['any_5fsource_1',['any_source',['../namespacempl.html#a410d15ee027fbbc82e25bce740d4c69b',1,'mpl']]] + ['comm_5fcollective_0',['comm_collective',['../classmpl_1_1communicator.html#a589d83fa5ec31c153e23242c32ed0c9e',1,'mpl::communicator']]], + ['congruent_1',['congruent',['../classmpl_1_1communicator.html#aec5ab4324f1a084a93edbbab08bc3d91',1,'mpl::communicator']]] ]; diff --git a/docs/html/search/variables_1.js b/docs/html/search/variables_1.js index 2f4a7230..6da2f2c9 100644 --- a/docs/html/search/variables_1.js +++ b/docs/html/search/variables_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['bsend_5foverhead_0',['bsend_overhead',['../namespacempl.html#a4bc7e110094061c98ce0bf2b136ff19a',1,'mpl']]] + ['difference_0',['difference',['../classmpl_1_1group.html#a4990d6c5ee84cc8640d88a26e2bdc480',1,'mpl::group']]] ]; diff --git a/docs/html/search/variables_2.js b/docs/html/search/variables_2.js index 78de7bf4..5bf7b55a 100644 --- a/docs/html/search/variables_2.js +++ b/docs/html/search/variables_2.js @@ -1,5 +1,5 @@ var searchData= [ - ['comm_5fcollective_0',['comm_collective',['../classmpl_1_1communicator.html#a589d83fa5ec31c153e23242c32ed0c9e',1,'mpl::communicator']]], - ['congruent_1',['congruent',['../classmpl_1_1communicator.html#aec5ab4324f1a084a93edbbab08bc3d91',1,'mpl::communicator']]] + ['exclude_0',['exclude',['../classmpl_1_1group.html#aa3aeb3976917ad6d46113f57d8bb386b',1,'mpl::group']]], + ['excluded_1',['excluded',['../classmpl_1_1cartesian__communicator.html#a75f2017892fa8f340a0fa429e8042ede',1,'mpl::cartesian_communicator']]] ]; diff --git a/docs/html/search/variables_3.js b/docs/html/search/variables_3.js index 9f5b00f0..6b68a24d 100644 --- a/docs/html/search/variables_3.js +++ b/docs/html/search/variables_3.js @@ -1,6 +1,4 @@ var searchData= [ - ['destination_0',['destination',['../structmpl_1_1shift__ranks.html#ad9c6fc779c9f0ee61497af1a4f82fe27',1,'mpl::shift_ranks']]], - ['difference_1',['difference',['../classmpl_1_1group.html#a4990d6c5ee84cc8640d88a26e2bdc480',1,'mpl::group']]], - ['dimensions_2',['dimensions',['../classmpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy.html#a86e6c75a53843e5dcda1c2e48763e463',1,'mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy']]] + ['group_5fcollective_0',['group_collective',['../classmpl_1_1communicator.html#a10aacc97fad097c50a84e886a49f5743',1,'mpl::communicator']]] ]; diff --git a/docs/html/search/variables_4.js b/docs/html/search/variables_4.js index 5bf7b55a..59596f50 100644 --- a/docs/html/search/variables_4.js +++ b/docs/html/search/variables_4.js @@ -1,5 +1,8 @@ var searchData= [ - ['exclude_0',['exclude',['../classmpl_1_1group.html#aa3aeb3976917ad6d46113f57d8bb386b',1,'mpl::group']]], - ['excluded_1',['excluded',['../classmpl_1_1cartesian__communicator.html#a75f2017892fa8f340a0fa429e8042ede',1,'mpl::cartesian_communicator']]] + ['identical_0',['identical',['../classmpl_1_1group.html#a6515b87988032cf940014c3e553f254a',1,'mpl::group::identical()'],['../classmpl_1_1communicator.html#ac66083dad051e6b7042d47962d1e2c60',1,'mpl::communicator::identical()']]], + ['include_1',['include',['../classmpl_1_1group.html#ae5ef3b81a9b35085fe4ffd54cd280912',1,'mpl::group']]], + ['included_2',['included',['../classmpl_1_1cartesian__communicator.html#a58cf7f390ec1fa47f44756eeddab44ce',1,'mpl::cartesian_communicator']]], + ['intersection_3',['intersection',['../classmpl_1_1group.html#a8e438a13834a708af8d3c0985082837c',1,'mpl::group']]], + ['is_5fcommutative_4',['is_commutative',['../structmpl_1_1op__traits.html#a24504be97499aae191b2850a712d40c0',1,'mpl::op_traits::is_commutative()'],['../structmpl_1_1op__traits_3_01max_3_01_t_01_4_01_4.html#aa4a61a3d6653f36c1220705c1777afb2',1,'mpl::op_traits< max< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01min_3_01_t_01_4_01_4.html#aa616d40968c33cbf5aa8add4f96aab61',1,'mpl::op_traits< min< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01plus_3_01_t_01_4_01_4.html#aef6e6a2daac6d0dac4daad3623f8a878',1,'mpl::op_traits< plus< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01multiplies_3_01_t_01_4_01_4.html#aaaa9046b4301afce0fa7f4a248d5b4c8',1,'mpl::op_traits< multiplies< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01logical__and_3_01_t_01_4_01_4.html#add32e7542a78d6602cf676264941e2cf',1,'mpl::op_traits< logical_and< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01logical__or_3_01_t_01_4_01_4.html#a87880e2fda9d3cd285caa70d8a80ea98',1,'mpl::op_traits< logical_or< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01logical__xor_3_01_t_01_4_01_4.html#a658891deaa9ba8eabf193fa63affb093',1,'mpl::op_traits< logical_xor< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01bit__and_3_01_t_01_4_01_4.html#a56e74f675670625b54e05d5617a8fcb7',1,'mpl::op_traits< bit_and< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01bit__or_3_01_t_01_4_01_4.html#a0490fa18b50038565ddd8c8295fe4b64',1,'mpl::op_traits< bit_or< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01bit__xor_3_01_t_01_4_01_4.html#aa86eb1173a3ec2eb6b11f76ddd559c78',1,'mpl::op_traits< bit_xor< T > >::is_commutative()']]] ]; diff --git a/docs/html/search/variables_5.js b/docs/html/search/variables_5.js index 6b68a24d..d990e9ff 100644 --- a/docs/html/search/variables_5.js +++ b/docs/html/search/variables_5.js @@ -1,4 +1,4 @@ var searchData= [ - ['group_5fcollective_0',['group_collective',['../classmpl_1_1communicator.html#a10aacc97fad097c50a84e886a49f5743',1,'mpl::communicator']]] + ['message_0',['message',['../structmpl_1_1mprobe__status.html#a1bd4ee6dd27523dd27cbeb2f2e7974e7',1,'mpl::mprobe_status']]] ]; diff --git a/docs/html/search/variables_6.js b/docs/html/search/variables_6.js index 59596f50..2210d671 100644 --- a/docs/html/search/variables_6.js +++ b/docs/html/search/variables_6.js @@ -1,8 +1,4 @@ var searchData= [ - ['identical_0',['identical',['../classmpl_1_1group.html#a6515b87988032cf940014c3e553f254a',1,'mpl::group::identical()'],['../classmpl_1_1communicator.html#ac66083dad051e6b7042d47962d1e2c60',1,'mpl::communicator::identical()']]], - ['include_1',['include',['../classmpl_1_1group.html#ae5ef3b81a9b35085fe4ffd54cd280912',1,'mpl::group']]], - ['included_2',['included',['../classmpl_1_1cartesian__communicator.html#a58cf7f390ec1fa47f44756eeddab44ce',1,'mpl::cartesian_communicator']]], - ['intersection_3',['intersection',['../classmpl_1_1group.html#a8e438a13834a708af8d3c0985082837c',1,'mpl::group']]], - ['is_5fcommutative_4',['is_commutative',['../structmpl_1_1op__traits.html#a24504be97499aae191b2850a712d40c0',1,'mpl::op_traits::is_commutative()'],['../structmpl_1_1op__traits_3_01max_3_01_t_01_4_01_4.html#aa4a61a3d6653f36c1220705c1777afb2',1,'mpl::op_traits< max< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01min_3_01_t_01_4_01_4.html#aa616d40968c33cbf5aa8add4f96aab61',1,'mpl::op_traits< min< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01plus_3_01_t_01_4_01_4.html#aef6e6a2daac6d0dac4daad3623f8a878',1,'mpl::op_traits< plus< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01multiplies_3_01_t_01_4_01_4.html#aaaa9046b4301afce0fa7f4a248d5b4c8',1,'mpl::op_traits< multiplies< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01logical__and_3_01_t_01_4_01_4.html#add32e7542a78d6602cf676264941e2cf',1,'mpl::op_traits< logical_and< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01logical__or_3_01_t_01_4_01_4.html#a87880e2fda9d3cd285caa70d8a80ea98',1,'mpl::op_traits< logical_or< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01logical__xor_3_01_t_01_4_01_4.html#a658891deaa9ba8eabf193fa63affb093',1,'mpl::op_traits< logical_xor< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01bit__and_3_01_t_01_4_01_4.html#a56e74f675670625b54e05d5617a8fcb7',1,'mpl::op_traits< bit_and< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01bit__or_3_01_t_01_4_01_4.html#a0490fa18b50038565ddd8c8295fe4b64',1,'mpl::op_traits< bit_or< T > >::is_commutative()'],['../structmpl_1_1op__traits_3_01bit__xor_3_01_t_01_4_01_4.html#aa86eb1173a3ec2eb6b11f76ddd559c78',1,'mpl::op_traits< bit_xor< T > >::is_commutative()']]] + ['non_5fperiodic_0',['non_periodic',['../classmpl_1_1cartesian__communicator.html#a147f10d80cecd3078f3688c56a169a70',1,'mpl::cartesian_communicator']]] ]; diff --git a/docs/html/search/variables_7.js b/docs/html/search/variables_7.js index d990e9ff..e9422433 100644 --- a/docs/html/search/variables_7.js +++ b/docs/html/search/variables_7.js @@ -1,4 +1,4 @@ var searchData= [ - ['message_0',['message',['../structmpl_1_1mprobe__status.html#a1bd4ee6dd27523dd27cbeb2f2e7974e7',1,'mpl::mprobe_status']]] + ['overlap_0',['overlap',['../classmpl_1_1distributed__grid_1_1size__overlap__pair.html#ab24f528c5aef47d91274c9080da41a61',1,'mpl::distributed_grid::size_overlap_pair']]] ]; diff --git a/docs/html/search/variables_8.js b/docs/html/search/variables_8.js index 2210d671..065b1808 100644 --- a/docs/html/search/variables_8.js +++ b/docs/html/search/variables_8.js @@ -1,4 +1,4 @@ var searchData= [ - ['non_5fperiodic_0',['non_periodic',['../classmpl_1_1cartesian__communicator.html#a147f10d80cecd3078f3688c56a169a70',1,'mpl::cartesian_communicator']]] + ['periodic_0',['periodic',['../classmpl_1_1cartesian__communicator.html#acec10c2952506fd723880a5f81ab8100',1,'mpl::cartesian_communicator']]] ]; diff --git a/docs/html/search/variables_9.js b/docs/html/search/variables_9.js index e9422433..454003b8 100644 --- a/docs/html/search/variables_9.js +++ b/docs/html/search/variables_9.js @@ -1,4 +1,8 @@ var searchData= [ - ['overlap_0',['overlap',['../classmpl_1_1distributed__grid_1_1size__overlap__pair.html#ab24f528c5aef47d91274c9080da41a61',1,'mpl::distributed_grid::size_overlap_pair']]] + ['similar_0',['similar',['../classmpl_1_1group.html#a0611c7cf397e6b98529ed9596b2c62f6',1,'mpl::group::similar()'],['../classmpl_1_1communicator.html#abe7076a9aaa13cb078e700c0cb616f3f',1,'mpl::communicator::similar()']]], + ['size_1',['size',['../classmpl_1_1distributed__grid_1_1size__overlap__pair.html#a7896ea2151387a2738a23654aa2dab74',1,'mpl::distributed_grid::size_overlap_pair']]], + ['split_2',['split',['../classmpl_1_1communicator.html#a8b95f2880fc6fb1b32fe5896f9af15a9',1,'mpl::communicator']]], + ['split_5fshared_5fmemory_3',['split_shared_memory',['../classmpl_1_1communicator.html#ad2c339d4e6a55d6f5d1c9c030a5175a3',1,'mpl::communicator']]], + ['status_4',['status',['../structmpl_1_1mprobe__status.html#ad5f29b026bbd4e57d9ed3e74fbb0e415',1,'mpl::mprobe_status']]] ]; diff --git a/docs/html/search/variables_a.js b/docs/html/search/variables_a.js index 9d2117fe..35dab85e 100644 --- a/docs/html/search/variables_a.js +++ b/docs/html/search/variables_a.js @@ -1,5 +1,5 @@ var searchData= [ - ['periodic_0',['periodic',['../classmpl_1_1cartesian__communicator.html#acec10c2952506fd723880a5f81ab8100',1,'mpl::cartesian_communicator']]], - ['proc_5fnull_1',['proc_null',['../namespacempl.html#a50a0f0b35e2150b88de70497e424ab4c',1,'mpl']]] + ['unequal_0',['unequal',['../classmpl_1_1group.html#a1d1766424b26d5f157ff02a0044aaafd',1,'mpl::group::unequal()'],['../classmpl_1_1communicator.html#a10097f544da37d6c9c73606409ed151a',1,'mpl::communicator::unequal()']]], + ['union_1',['Union',['../classmpl_1_1group.html#a048489f7dcb5dfd61ed0d874dabeb4c7',1,'mpl::group']]] ]; diff --git a/docs/html/search/variables_b.html b/docs/html/search/variables_b.html deleted file mode 100644 index 812f68d0..00000000 --- a/docs/html/search/variables_b.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/variables_b.js b/docs/html/search/variables_b.js deleted file mode 100644 index 411cbbae..00000000 --- a/docs/html/search/variables_b.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['rank_0',['rank',['../classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#a8e6c3be2673ad743f58a418650176ba6',1,'mpl::distributed_graph_communicator::rank_weight_pair']]], - ['root_1',['root',['../namespacempl.html#a580d63de8f272555e40bb7ea90f23ccc',1,'mpl']]] -]; diff --git a/docs/html/search/variables_c.html b/docs/html/search/variables_c.html deleted file mode 100644 index 8ac40ff9..00000000 --- a/docs/html/search/variables_c.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/variables_c.js b/docs/html/search/variables_c.js deleted file mode 100644 index 724edd20..00000000 --- a/docs/html/search/variables_c.js +++ /dev/null @@ -1,9 +0,0 @@ -var searchData= -[ - ['similar_0',['similar',['../classmpl_1_1group.html#a0611c7cf397e6b98529ed9596b2c62f6',1,'mpl::group::similar()'],['../classmpl_1_1communicator.html#abe7076a9aaa13cb078e700c0cb616f3f',1,'mpl::communicator::similar()']]], - ['size_1',['size',['../classmpl_1_1distributed__grid_1_1size__overlap__pair.html#a7896ea2151387a2738a23654aa2dab74',1,'mpl::distributed_grid::size_overlap_pair']]], - ['source_2',['source',['../structmpl_1_1shift__ranks.html#afb38d83c7519b1f4202e826c9ae9568b',1,'mpl::shift_ranks']]], - ['split_3',['split',['../classmpl_1_1communicator.html#a8b95f2880fc6fb1b32fe5896f9af15a9',1,'mpl::communicator']]], - ['split_5fshared_5fmemory_4',['split_shared_memory',['../classmpl_1_1communicator.html#ad2c339d4e6a55d6f5d1c9c030a5175a3',1,'mpl::communicator']]], - ['status_5',['status',['../structmpl_1_1mprobe__status.html#ad5f29b026bbd4e57d9ed3e74fbb0e415',1,'mpl::mprobe_status']]] -]; diff --git a/docs/html/search/variables_d.html b/docs/html/search/variables_d.html deleted file mode 100644 index 9f3a67ce..00000000 --- a/docs/html/search/variables_d.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/variables_d.js b/docs/html/search/variables_d.js deleted file mode 100644 index 2a546a8b..00000000 --- a/docs/html/search/variables_d.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['undefined_0',['undefined',['../namespacempl.html#a551ed45948e628d93f6669b4cb01e750',1,'mpl']]], - ['unequal_1',['unequal',['../classmpl_1_1group.html#a1d1766424b26d5f157ff02a0044aaafd',1,'mpl::group::unequal()'],['../classmpl_1_1communicator.html#a10097f544da37d6c9c73606409ed151a',1,'mpl::communicator::unequal()']]], - ['union_2',['Union',['../classmpl_1_1group.html#a048489f7dcb5dfd61ed0d874dabeb4c7',1,'mpl::group']]] -]; diff --git a/docs/html/search/variables_e.html b/docs/html/search/variables_e.html deleted file mode 100644 index b011dc27..00000000 --- a/docs/html/search/variables_e.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
              -
              Loading...
              -
              - -
              Searching...
              -
              No Matches
              - -
              - - diff --git a/docs/html/search/variables_e.js b/docs/html/search/variables_e.js deleted file mode 100644 index 2ccffb3d..00000000 --- a/docs/html/search/variables_e.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['weight_0',['weight',['../classmpl_1_1distributed__graph__communicator_1_1rank__weight__pair.html#afae44c103e3457db3608ccbe5a0a0b03',1,'mpl::distributed_graph_communicator::rank_weight_pair']]] -]; diff --git a/docs/html/standard_types_8cc-example.html b/docs/html/standard_types_8cc-example.html index 5e0d1ce9..ffa4d745 100644 --- a/docs/html/standard_types_8cc-example.html +++ b/docs/html/standard_types_8cc-example.html @@ -97,7 +97,7 @@
              // print elements of a pair
              template<typename ch, typename tr, typename T1, typename T2>
              -
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              +
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              const std::pair<T1, T2> &p) {
              return out << '(' << p.first << ',' << p.second << ')';
              }
              @@ -114,7 +114,7 @@
              // print all elements of a tuple
              template<typename ch, typename tr, typename... args>
              -
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              +
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              const std::tuple<args...> &t) {
              out << '(';
              print_tuple_impl(out, t, std::index_sequence_for<args...>{});
              @@ -123,7 +123,7 @@
              // print all elements of an array
              template<typename ch, typename tr, typename ty, std::size_t s>
              -
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              +
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              const std::array<ty, s> &t) {
              out << '(';
              print_tuple_impl(out, t, std::make_integer_sequence<std::size_t, s>{});
              @@ -132,7 +132,7 @@
              // print a byte
              template<typename ch, typename tr>
              -
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out, const std::byte &t) {
              +
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out, const std::byte &t) {
              return out << std::to_integer<int>(t);
              }
              @@ -151,12 +151,12 @@
              }
              int main() {
              - +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              // run the program with two or more processes
              -
              if (comm_world.size() < 2)
              -
              comm_world.abort(EXIT_FAILURE);
              +
              if (comm_world.size() < 2)
              +
              comm_world.abort(EXIT_FAILURE);
              // process 0 sends
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              char t_1{'A'};
              send(comm_world, t_1);
              signed char t_2{'B'};
              @@ -203,7 +203,7 @@
              send(comm_world, t_22);
              }
              // process 1 receives
              -
              if (comm_world.rank() == 1) {
              +
              if (comm_world.rank() == 1) {
              recv<char>(comm_world);
              recv<signed char>(comm_world);
              recv<unsigned char>(comm_world);
              @@ -219,22 +219,20 @@
              recv<float>(comm_world);
              recv<double>(comm_world);
              recv<long double>(comm_world);
              -
              recv<std::complex<float>>(comm_world);
              -
              recv<std::complex<double>>(comm_world);
              -
              recv<std::complex<long double>>(comm_world);
              -
              recv<std::pair<int, double>>(comm_world);
              -
              recv<std::tuple<int, std::complex<double>>>(comm_world);
              -
              recv<std::array<int, 4>>(comm_world);
              +
              recv<std::complex<float>>(comm_world);
              +
              recv<std::complex<double>>(comm_world);
              +
              recv<std::complex<long double>>(comm_world);
              +
              recv<std::pair<int, double>>(comm_world);
              +
              recv<std::tuple<int, std::complex<double>>>(comm_world);
              +
              recv<std::array<int, 4>>(comm_world);
              recv<std::byte>(comm_world);
              }
              return EXIT_SUCCESS;
              }
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              void abort(int err) const
              Aborts all processes associated to the communicator.
              Definition: comm_group.hpp:606
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              -
              std::basic_ostream< CharT, Traits > & operator<<(std::basic_ostream< CharT, Traits > &os, tag_t t)
              Definition: tag.hpp:63
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              void abort(int err) const
              Aborts all processes associated to the communicator.
              Definition: comm_group.hpp:614
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              diff --git a/docs/html/status_8hpp_source.html b/docs/html/status_8hpp_source.html index b36c0081..431f9f11 100644 --- a/docs/html/status_8hpp_source.html +++ b/docs/html/status_8hpp_source.html @@ -92,7 +92,7 @@
              4
              5#include <mpi.h>
              6
              -
              7namespace mpl {
              +
              7namespace mpl {
              8
              9 namespace impl {
              10 template<typename T>
              @@ -142,17 +142,17 @@
              65 MPI_Status::MPI_ERROR = MPI_SUCCESS;
              66 }
              67
              -
              68 friend class communicator;
              +
              68 friend class communicator;
              69 template<typename T>
              -
              70 friend class impl::request;
              +
              70 friend class impl::request;
              71 template<typename T>
              -
              72 friend class impl::request_pool;
              +
              72 friend class impl::request_pool;
              73 };
              74
              75} // namespace mpl
              76
              77#endif
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              Base class for a family of classes that describe where objects are located in memory when several obj...
              Definition: layout.hpp:79
              @@ -166,7 +166,6 @@
              bool is_cancelled() const
              Definition: status.hpp:32
              int source() const
              Definition: status.hpp:23
              Class for representing tag parameters in communication operations.
              Definition: tag.hpp:12
              - diff --git a/docs/html/stl_container_8cc-example.html b/docs/html/stl_container_8cc-example.html index ce5a40a7..fee48b23 100644 --- a/docs/html/stl_container_8cc-example.html +++ b/docs/html/stl_container_8cc-example.html @@ -100,7 +100,7 @@
              // print elements of a pair
              template<typename ch, typename tr, typename T1, typename T2>
              -
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              +
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              const std::pair<T1, T2> &p) {
              return out << '(' << p.first << ',' << p.second << ')';
              }
              @@ -119,28 +119,28 @@
              // print all elements of a vector
              template<typename ch, typename tr, typename T, typename A>
              -
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              +
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              const std::vector<T, A> &v) {
              return print_container(out, v);
              }
              // print all elements of a list
              template<typename ch, typename tr, typename T, typename A>
              -
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              +
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              const std::list<T, A> &l) {
              return print_container(out, l);
              }
              // print all elements of a map
              template<typename ch, typename tr, typename K, typename C, typename A>
              -
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              +
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              const std::map<K, C, A> &m) {
              return print_container(out, m);
              }
              // print all elements of a map
              template<typename ch, typename tr, typename T>
              -
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              +
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out,
              const std::valarray<T> &v) {
              return print_container(out, v);
              }
              @@ -178,12 +178,12 @@
              }
              int main() {
              - +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              // run the program with two or more processes
              -
              if (comm_world.size() < 2)
              -
              comm_world.abort(EXIT_FAILURE);
              +
              if (comm_world.size() < 2)
              +
              comm_world.abort(EXIT_FAILURE);
              // process 0 sends
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              std::string t_1{"Hello World!"};
              send(comm_world, t_1);
              isend(comm_world, t_1);
              @@ -201,28 +201,26 @@
              isend(comm_world, t_5);
              }
              // process 1 receives
              -
              if (comm_world.rank() == 1) {
              +
              if (comm_world.rank() == 1) {
              recv<std::string>(comm_world);
              irecv<std::string>(comm_world);
              -
              recv<std::list<int>>(comm_world);
              -
              irecv<std::list<int>>(comm_world);
              -
              recv<std::map<int, double>>(comm_world);
              -
              irecv<std::map<int, double>>(comm_world);
              -
              recv<std::vector<bool>>(comm_world);
              -
              irecv<std::vector<bool>>(comm_world);
              -
              recv<std::valarray<double>>(comm_world);
              -
              irecv<std::valarray<double>>(comm_world);
              +
              recv<std::list<int>>(comm_world);
              +
              irecv<std::list<int>>(comm_world);
              +
              recv<std::map<int, double>>(comm_world);
              +
              irecv<std::map<int, double>>(comm_world);
              +
              recv<std::vector<bool>>(comm_world);
              +
              irecv<std::vector<bool>>(comm_world);
              +
              recv<std::valarray<double>>(comm_world);
              +
              irecv<std::valarray<double>>(comm_world);
              }
              return EXIT_SUCCESS;
              }
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              void abort(int err) const
              Aborts all processes associated to the communicator.
              Definition: comm_group.hpp:606
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              void abort(int err) const
              Aborts all processes associated to the communicator.
              Definition: comm_group.hpp:614
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              Represents a non-blocking communication request.
              Definition: request.hpp:224
              Class that represents the status of a received message.
              Definition: status.hpp:20
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              -
              std::basic_ostream< CharT, Traits > & operator<<(std::basic_ostream< CharT, Traits > &os, tag_t t)
              Definition: tag.hpp:63
              diff --git a/docs/html/struct_8cc-example.html b/docs/html/struct_8cc-example.html index 2c7fb9d1..9788d52c 100644 --- a/docs/html/struct_8cc-example.html +++ b/docs/html/struct_8cc-example.html @@ -101,7 +101,7 @@
              // print elements of structure
              template<typename ch, typename tr>
              -
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out, const structure &s) {
              +
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out, const structure &s) {
              out << '(' << s.d << ",[" << s.i[0];
              for (int i{1}; i < std::size(s.i); ++i)
              out << ',' << s.i[i];
              @@ -115,14 +115,14 @@
              // print elements of structure2
              template<typename ch, typename tr>
              -
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out, const structure_2 &s) {
              +
              std::basic_ostream<ch, tr> &operator<<(std::basic_ostream<ch, tr> &out, const structure_2 &s) {
              return out << '(' << s.d << "," << s.str << ")";
              }
              // specialize trait template class struct_builder
              // for the structures defined above
              -
              namespace mpl {
              +
              namespace mpl {
              template<>
              class struct_builder<structure> : public base_struct_builder<structure> {
              @@ -149,63 +149,60 @@
              MPL_REFLECTION(structure_2, d, str)
              int main() {
              - +
              const mpl::communicator &comm_world{mpl::environment::comm_world()};
              // run the program with two or more processes
              -
              if (comm_world.size() < 2)
              -
              comm_world.abort(EXIT_FAILURE);
              +
              if (comm_world.size() < 2)
              +
              comm_world.abort(EXIT_FAILURE);
              // send / receive a single structure
              structure str;
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              str.d = 1;
              std::iota(str.i, str.i + 9, 1);
              -
              comm_world.send(str, 1);
              +
              comm_world.send(str, 1);
              }
              -
              if (comm_world.rank() == 1) {
              -
              comm_world.recv(str, 0);
              +
              if (comm_world.rank() == 1) {
              +
              comm_world.recv(str, 0);
              std::cout << str << '\n';
              }
              // send / receive a single structure containing another structure
              structure_2 str2;
              -
              if (comm_world.rank() == 0) {
              +
              if (comm_world.rank() == 0) {
              str2.d = 1;
              str2.str.d = 1;
              std::iota(str2.str.i, str2.str.i + 9, 1);
              -
              comm_world.send(str2, 1);
              +
              comm_world.send(str2, 1);
              }
              -
              if (comm_world.rank() == 1) {
              -
              comm_world.recv(str2, 0);
              +
              if (comm_world.rank() == 1) {
              +
              comm_world.recv(str2, 0);
              std::cout << str2 << '\n';
              }
              // send / receive a vector of structures
              const int field_size{8};
              std::vector<structure> str_field(field_size);
              -
              mpl::contiguous_layout<structure> str_field_layout(field_size);
              -
              if (comm_world.rank() == 0) {
              +
              mpl::contiguous_layout<structure> str_field_layout(field_size);
              +
              if (comm_world.rank() == 0) {
              // populate vector of structures
              for (int k{0}; k < field_size; ++k) {
              str_field[k].d = k + 1;
              std::iota(str_field[k].i, str_field[k].i + 9, 1 + k);
              }
              // send vector of structures
              -
              comm_world.send(str_field.data(), str_field_layout, 1);
              +
              comm_world.send(str_field.data(), str_field_layout, 1);
              }
              -
              if (comm_world.rank() == 1) {
              +
              if (comm_world.rank() == 1) {
              // receive vector of structures
              -
              comm_world.recv(str_field.data(), str_field_layout, 0);
              +
              comm_world.recv(str_field.data(), str_field_layout, 0);
              for (int k{0}; k < field_size; ++k)
              std::cout << str_field[k] << '\n';
              }
              return EXIT_SUCCESS;
              }
              -
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:250
              -
              void abort(int err) const
              Aborts all processes associated to the communicator.
              Definition: comm_group.hpp:606
              -
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:559
              -
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:567
              +
              Specifies the communication context for a communication operation.
              Definition: comm_group.hpp:253
              +
              void abort(int err) const
              Aborts all processes associated to the communicator.
              Definition: comm_group.hpp:614
              +
              int size() const
              Determines the total number of processes in a communicator.
              Definition: comm_group.hpp:564
              +
              int rank() const
              Determines the rank within a communicator.
              Definition: comm_group.hpp:572
              Layout representing contiguous storage several objects.
              Definition: layout.hpp:458
              -
              const communicator & comm_world()
              Provides access to a predefined communicator that allows communication with all processes.
              - -
              std::basic_ostream< CharT, Traits > & operator<<(std::basic_ostream< CharT, Traits > &os, tag_t t)
              Definition: tag.hpp:63
              diff --git a/docs/html/structmpl_1_1bit__and.html b/docs/html/structmpl_1_1bit__and.html index ca538a8a..559226b5 100644 --- a/docs/html/structmpl_1_1bit__and.html +++ b/docs/html/structmpl_1_1bit__and.html @@ -176,7 +176,7 @@

              diff --git a/docs/html/structmpl_1_1bit__or.html b/docs/html/structmpl_1_1bit__or.html index bfc4a6b8..097592a6 100644 --- a/docs/html/structmpl_1_1bit__or.html +++ b/docs/html/structmpl_1_1bit__or.html @@ -176,7 +176,7 @@

              diff --git a/docs/html/structmpl_1_1bit__xor.html b/docs/html/structmpl_1_1bit__xor.html index 49aebd57..56f596f0 100644 --- a/docs/html/structmpl_1_1bit__xor.html +++ b/docs/html/structmpl_1_1bit__xor.html @@ -176,7 +176,7 @@

              diff --git a/docs/html/structmpl_1_1logical__and.html b/docs/html/structmpl_1_1logical__and.html index 197e8ee0..ef7393f0 100644 --- a/docs/html/structmpl_1_1logical__and.html +++ b/docs/html/structmpl_1_1logical__and.html @@ -176,7 +176,7 @@

              diff --git a/docs/html/structmpl_1_1logical__or.html b/docs/html/structmpl_1_1logical__or.html index 15b489e4..da2f2f92 100644 --- a/docs/html/structmpl_1_1logical__or.html +++ b/docs/html/structmpl_1_1logical__or.html @@ -176,7 +176,7 @@

              diff --git a/docs/html/structmpl_1_1logical__xor.html b/docs/html/structmpl_1_1logical__xor.html index fb451e91..d3c70d94 100644 --- a/docs/html/structmpl_1_1logical__xor.html +++ b/docs/html/structmpl_1_1logical__xor.html @@ -176,7 +176,7 @@

              diff --git a/docs/html/structmpl_1_1max.html b/docs/html/structmpl_1_1max.html index 84d38f24..cd9f8019 100644 --- a/docs/html/structmpl_1_1max.html +++ b/docs/html/structmpl_1_1max.html @@ -176,7 +176,7 @@

              diff --git a/docs/html/structmpl_1_1min.html b/docs/html/structmpl_1_1min.html index 1f5a5d70..fba81ec8 100644 --- a/docs/html/structmpl_1_1min.html +++ b/docs/html/structmpl_1_1min.html @@ -117,7 +117,7 @@

-
Examples
reduce_min_loc.cc.
+
Examples
reduce_min_loc.cc.

Definition at line 28 of file operator.hpp.

@@ -178,7 +178,7 @@

diff --git a/docs/html/structmpl_1_1mprobe__status.html b/docs/html/structmpl_1_1mprobe__status.html index b278ae8c..64eb0abe 100644 --- a/docs/html/structmpl_1_1mprobe__status.html +++ b/docs/html/structmpl_1_1mprobe__status.html @@ -90,7 +90,7 @@
-

return value of matching probe operations +

Return value of matching probe operations. More...

#include <comm_group.hpp>

@@ -99,7 +99,7 @@
Collaboration graph
- + @@ -107,7 +107,7 @@ - + @@ -115,7 +115,7 @@

Public Attributes

message_t message
message_t message
 message handle to be used in a matching receive operation More...
 
status_t status
 

Detailed Description

-

return value of matching probe operations

+

Return value of matching probe operations.

Definition at line 35 of file comm_group.hpp.

Member Data Documentation

@@ -126,7 +126,7 @@

- +
message_t mpl::mprobe_status::messagemessage_t mpl::mprobe_status::message

diff --git a/docs/html/structmpl_1_1mprobe__status__coll__graph.map b/docs/html/structmpl_1_1mprobe__status__coll__graph.map index aa0de0be..e0c67663 100644 --- a/docs/html/structmpl_1_1mprobe__status__coll__graph.map +++ b/docs/html/structmpl_1_1mprobe__status__coll__graph.map @@ -1,5 +1,5 @@ - + diff --git a/docs/html/structmpl_1_1mprobe__status__coll__graph.md5 b/docs/html/structmpl_1_1mprobe__status__coll__graph.md5 index 930502ec..3a885c32 100644 --- a/docs/html/structmpl_1_1mprobe__status__coll__graph.md5 +++ b/docs/html/structmpl_1_1mprobe__status__coll__graph.md5 @@ -1 +1 @@ -6414bc0780841d746df299d725ee9665 \ No newline at end of file +65829d08805f62312b5313a374431870 \ No newline at end of file diff --git a/docs/html/structmpl_1_1multiplies.html b/docs/html/structmpl_1_1multiplies.html index 666fbf40..321ed919 100644 --- a/docs/html/structmpl_1_1multiplies.html +++ b/docs/html/structmpl_1_1multiplies.html @@ -117,7 +117,7 @@

-
Examples
collective.cc.
+
Examples
collective.cc.

Definition at line 50 of file operator.hpp.

@@ -178,7 +178,7 @@

diff --git a/docs/html/structmpl_1_1op__traits.html b/docs/html/structmpl_1_1op__traits.html index e498cc61..c7663a83 100644 --- a/docs/html/structmpl_1_1op__traits.html +++ b/docs/html/structmpl_1_1op__traits.html @@ -157,7 +157,7 @@

diff --git a/docs/html/structmpl_1_1op__traits_3_01bit__and_3_01_t_01_4_01_4.html b/docs/html/structmpl_1_1op__traits_3_01bit__and_3_01_t_01_4_01_4.html index 31a5964b..b33841a6 100644 --- a/docs/html/structmpl_1_1op__traits_3_01bit__and_3_01_t_01_4_01_4.html +++ b/docs/html/structmpl_1_1op__traits_3_01bit__and_3_01_t_01_4_01_4.html @@ -151,7 +151,7 @@

diff --git a/docs/html/structmpl_1_1op__traits_3_01bit__or_3_01_t_01_4_01_4.html b/docs/html/structmpl_1_1op__traits_3_01bit__or_3_01_t_01_4_01_4.html index 90e39ba9..6560ec74 100644 --- a/docs/html/structmpl_1_1op__traits_3_01bit__or_3_01_t_01_4_01_4.html +++ b/docs/html/structmpl_1_1op__traits_3_01bit__or_3_01_t_01_4_01_4.html @@ -151,7 +151,7 @@

diff --git a/docs/html/structmpl_1_1op__traits_3_01bit__xor_3_01_t_01_4_01_4.html b/docs/html/structmpl_1_1op__traits_3_01bit__xor_3_01_t_01_4_01_4.html index 42fe0803..ef02c8a9 100644 --- a/docs/html/structmpl_1_1op__traits_3_01bit__xor_3_01_t_01_4_01_4.html +++ b/docs/html/structmpl_1_1op__traits_3_01bit__xor_3_01_t_01_4_01_4.html @@ -151,7 +151,7 @@

diff --git a/docs/html/structmpl_1_1op__traits_3_01logical__and_3_01_t_01_4_01_4.html b/docs/html/structmpl_1_1op__traits_3_01logical__and_3_01_t_01_4_01_4.html index e75a85a8..96f12fb7 100644 --- a/docs/html/structmpl_1_1op__traits_3_01logical__and_3_01_t_01_4_01_4.html +++ b/docs/html/structmpl_1_1op__traits_3_01logical__and_3_01_t_01_4_01_4.html @@ -151,7 +151,7 @@

diff --git a/docs/html/structmpl_1_1op__traits_3_01logical__or_3_01_t_01_4_01_4.html b/docs/html/structmpl_1_1op__traits_3_01logical__or_3_01_t_01_4_01_4.html index 62e0c42e..ca5bf886 100644 --- a/docs/html/structmpl_1_1op__traits_3_01logical__or_3_01_t_01_4_01_4.html +++ b/docs/html/structmpl_1_1op__traits_3_01logical__or_3_01_t_01_4_01_4.html @@ -151,7 +151,7 @@

diff --git a/docs/html/structmpl_1_1op__traits_3_01logical__xor_3_01_t_01_4_01_4.html b/docs/html/structmpl_1_1op__traits_3_01logical__xor_3_01_t_01_4_01_4.html index aa2b0d22..a12da4fa 100644 --- a/docs/html/structmpl_1_1op__traits_3_01logical__xor_3_01_t_01_4_01_4.html +++ b/docs/html/structmpl_1_1op__traits_3_01logical__xor_3_01_t_01_4_01_4.html @@ -151,7 +151,7 @@

diff --git a/docs/html/structmpl_1_1op__traits_3_01max_3_01_t_01_4_01_4.html b/docs/html/structmpl_1_1op__traits_3_01max_3_01_t_01_4_01_4.html index bdaa99d2..8a5f93d4 100644 --- a/docs/html/structmpl_1_1op__traits_3_01max_3_01_t_01_4_01_4.html +++ b/docs/html/structmpl_1_1op__traits_3_01max_3_01_t_01_4_01_4.html @@ -151,7 +151,7 @@

diff --git a/docs/html/structmpl_1_1op__traits_3_01min_3_01_t_01_4_01_4.html b/docs/html/structmpl_1_1op__traits_3_01min_3_01_t_01_4_01_4.html index 11cd6598..45dacf19 100644 --- a/docs/html/structmpl_1_1op__traits_3_01min_3_01_t_01_4_01_4.html +++ b/docs/html/structmpl_1_1op__traits_3_01min_3_01_t_01_4_01_4.html @@ -151,7 +151,7 @@

diff --git a/docs/html/structmpl_1_1op__traits_3_01multiplies_3_01_t_01_4_01_4.html b/docs/html/structmpl_1_1op__traits_3_01multiplies_3_01_t_01_4_01_4.html index 4cc14c16..e7de483f 100644 --- a/docs/html/structmpl_1_1op__traits_3_01multiplies_3_01_t_01_4_01_4.html +++ b/docs/html/structmpl_1_1op__traits_3_01multiplies_3_01_t_01_4_01_4.html @@ -151,7 +151,7 @@

diff --git a/docs/html/structmpl_1_1op__traits_3_01plus_3_01_t_01_4_01_4.html b/docs/html/structmpl_1_1op__traits_3_01plus_3_01_t_01_4_01_4.html index d42806ce..c522716e 100644 --- a/docs/html/structmpl_1_1op__traits_3_01plus_3_01_t_01_4_01_4.html +++ b/docs/html/structmpl_1_1op__traits_3_01plus_3_01_t_01_4_01_4.html @@ -151,7 +151,7 @@

diff --git a/docs/html/structmpl_1_1plus.html b/docs/html/structmpl_1_1plus.html index 7e3cf724..34459a15 100644 --- a/docs/html/structmpl_1_1plus.html +++ b/docs/html/structmpl_1_1plus.html @@ -117,7 +117,7 @@

-
Examples
collective.cc, and communicator.cc.
+
Examples
collective.cc, and communicator.cc.

Definition at line 39 of file operator.hpp.

@@ -178,7 +178,7 @@

diff --git a/docs/html/structmpl_1_1shift__ranks-members.html b/docs/html/structmpl_1_1shift__ranks-members.html index df56edd2..a99bb6c5 100644 --- a/docs/html/structmpl_1_1shift__ranks-members.html +++ b/docs/html/structmpl_1_1shift__ranks-members.html @@ -89,8 +89,8 @@

This is the complete list of members for mpl::shift_ranks, including all inherited members.

- - + +
destinationmpl::shift_ranks
sourcempl::shift_ranks
destination (defined in mpl::shift_ranks)mpl::shift_ranks
source (defined in mpl::shift_ranks)mpl::shift_ranks
diff --git a/docs/html/structmpl_1_1shift__ranks.html b/docs/html/structmpl_1_1shift__ranks.html index ca9e9c0f..3ca5ee74 100644 --- a/docs/html/structmpl_1_1shift__ranks.html +++ b/docs/html/structmpl_1_1shift__ranks.html @@ -162,7 +162,7 @@

diff --git a/docs/html/structmpl_1_1shift__ranks.js b/docs/html/structmpl_1_1shift__ranks.js deleted file mode 100644 index 703087d7..00000000 --- a/docs/html/structmpl_1_1shift__ranks.js +++ /dev/null @@ -1,5 +0,0 @@ -var structmpl_1_1shift__ranks = -[ - [ "destination", "structmpl_1_1shift__ranks.html#ad9c6fc779c9f0ee61497af1a4f82fe27", null ], - [ "source", "structmpl_1_1shift__ranks.html#afb38d83c7519b1f4202e826c9ae9568b", null ] -]; \ No newline at end of file diff --git a/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimensio842d3ea64b49cf268c43d3df804dc1ad.html b/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimensio842d3ea64b49cf268c43d3df804dc1ad.html deleted file mode 100644 index 80e0d844..00000000 --- a/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimensio842d3ea64b49cf268c43d3df804dc1ad.html +++ /dev/null @@ -1,102 +0,0 @@ - - - - - - - -Message Passing Library: Member List - - - - - - - - - - - - - - -
-
- - - - - - -
-
Message Passing Library -
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
std::tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy > Member List
-
- -
- - - - diff --git a/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimensio9fdecb5f6b4c60f5585d6b4f294b1f4d.map b/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimensio9fdecb5f6b4c60f5585d6b4f294b1f4d.map deleted file mode 100644 index 1b4686c9..00000000 --- a/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimensio9fdecb5f6b4c60f5585d6b4f294b1f4d.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimensio9fdecb5f6b4c60f5585d6b4f294b1f4d.md5 b/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimensio9fdecb5f6b4c60f5585d6b4f294b1f4d.md5 deleted file mode 100644 index af23f8de..00000000 --- a/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimensio9fdecb5f6b4c60f5585d6b4f294b1f4d.md5 +++ /dev/null @@ -1 +0,0 @@ -5dc9afe84f0a22e46a5e20ab82f23613 \ No newline at end of file diff --git a/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimensio9fdecb5f6b4c60f5585d6b4f294b1f4d.png b/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimensio9fdecb5f6b4c60f5585d6b4f294b1f4d.png deleted file mode 100644 index acf5bd95..00000000 Binary files a/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimensio9fdecb5f6b4c60f5585d6b4f294b1f4d.png and /dev/null differ diff --git a/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html b/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html deleted file mode 100644 index 99f607a3..00000000 --- a/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html +++ /dev/null @@ -1,144 +0,0 @@ - - - - - - - -Message Passing Library: std::tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy > Struct Template Reference - - - - - - - - - - - - - - -
-
- - - - - - -
-
Message Passing Library -
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
- -
std::tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy > Struct Template Reference
-
-
- -

#include <cartesian_communicator.hpp>

-
-Collaboration diagram for std::tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >:
-
-
Collaboration graph
- - - -
- - - - -

-Public Types

using type = decltype(std::declval< mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >() .get< N >())
 
-

Detailed Description

-
template<std::size_t N>
-struct std::tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >
-

Definition at line 551 of file cartesian_communicator.hpp.

-

Member Typedef Documentation

- -

◆ type

- -
-
-
-template<std::size_t N>
- - - - -
using std::tuple_element< N, mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >::type = decltype(std::declval< mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy>() .get<N>())
-
- -

Definition at line 553 of file cartesian_communicator.hpp.

- -
-
-
The documentation for this struct was generated from the following file: -
-
- - - - diff --git a/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.js b/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.js deleted file mode 100644 index 820540fd..00000000 --- a/docs/html/structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4 = -[ - [ "type", "structstd_1_1tuple__element_3_01_n_00_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html#ade76dbf30ac4a03ad006fc2db5b9b8a2", null ] -]; \ No newline at end of file diff --git a/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html b/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html deleted file mode 100644 index cd4f869d..00000000 --- a/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4.html +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - - -Message Passing Library: std::tuple_size< mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy > Struct Reference - - - - - - - - - - - - - - -
-
- - - - - - -
-
Message Passing Library -
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
std::tuple_size< mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy > Struct Reference
-
-
- -

#include <cartesian_communicator.hpp>

-
-Inheritance diagram for std::tuple_size< mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >:
-
-
Inheritance graph
- - - - -
-
-Collaboration diagram for std::tuple_size< mpl::cartesian_communicator::dimensions::dimension_periodicity_proxy >:
-
-
Collaboration graph
- - - - -
-

Detailed Description

-
-

Definition at line 547 of file cartesian_communicator.hpp.

-

The documentation for this struct was generated from the following file: -
-
- - - - diff --git a/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__coll__graph.map b/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__coll__graph.map deleted file mode 100644 index 36e3dee2..00000000 --- a/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__coll__graph.md5 b/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__coll__graph.md5 deleted file mode 100644 index 9410957b..00000000 --- a/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -0dffea413173210bb9b1abea4759a6da \ No newline at end of file diff --git a/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__coll__graph.png b/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__coll__graph.png deleted file mode 100644 index 8b742502..00000000 Binary files a/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__coll__graph.png and /dev/null differ diff --git a/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__inherit__graph.map b/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__inherit__graph.map deleted file mode 100644 index 36e3dee2..00000000 --- a/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__inherit__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__inherit__graph.md5 b/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__inherit__graph.md5 deleted file mode 100644 index 9410957b..00000000 --- a/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -0dffea413173210bb9b1abea4759a6da \ No newline at end of file diff --git a/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__inherit__graph.png b/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__inherit__graph.png deleted file mode 100644 index 8b742502..00000000 Binary files a/docs/html/structstd_1_1tuple__size_3_01mpl_1_1cartesian__communicator_1_1dimensions_1_1dimension__periodicity__proxy_01_4__inherit__graph.png and /dev/null differ diff --git a/docs/html/subarray_8cc-example.html b/docs/html/subarray_8cc-example.html index 1beb7eed..d9a93e16 100644 --- a/docs/html/subarray_8cc-example.html +++ b/docs/html/subarray_8cc-example.html @@ -93,32 +93,32 @@
#include <mpl/mpl.hpp>
int main() {
- +
const mpl::communicator &comm_world{mpl::environment::comm_world()};
// run the program with two or more processes
-
if (comm_world.size() < 2)
+
if (comm_world.size() < 2)
return EXIT_FAILURE;
// test layout for a subarray
// layouts on sending and receiving side may differ but must be compatible
const int n_0{20}, n_1{8}; // size of two-dimensional array
const int s_0{11}, s_1{3}; // size of two-dimensional subarray
// process 0 sends
-
if (comm_world.rank() == 0) {
+
if (comm_world.rank() == 0) {
// C order matrix with two-dimensional C arrays
double a[n_1][n_0];
for (int i_1{0}; i_1 < n_1; ++i_1)
for (int i_0{0}; i_0 < n_0; ++i_0)
a[i_1][i_0] = i_0 + 0.01 * i_1;
- +
{n_1, s_1, 2}, // 2nd dimension: size of array, size of subarray, start of subarray
{n_0, s_0, 4} // 1st dimension: size of array, size of subarray, start of subarray
}};
-
comm_world.send(&a[0][0], subarray, 1);
+
comm_world.send(&a[0][0], subarray, 1);
}
// process 1 receives
-
if (comm_world.rank() == 1) {
+
if (comm_world.rank() == 1) {
double a[s_1][s_0];
- -
comm_world.recv(&a[0][0], array, 0);
+ +
comm_world.recv(&a[0][0], array, 0);
for (int i_1{0}; i_1 < s_1; ++i_1) {
for (int i_0{0}; i_0 < s_0; ++i_0)
std::cout << std::fixed << std::setprecision(2) << a[i_1][i_0] << " ";
@@ -127,12 +127,11 @@
}
return EXIT_SUCCESS;
}
-
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:250
-
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:559
-
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:567
+
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:253
+
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:564
+
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:572
Layout representing contiguous storage several objects.
Definition: layout.hpp:458
Layout representing data of a subset multi dimensional array.
Definition: layout.hpp:1335
-
const communicator & comm_world()
Provides access to a predefined communicator that allows communication with all processes.
diff --git a/docs/html/tag_8hpp_source.html b/docs/html/tag_8hpp_source.html index 01576025..6a77738a 100644 --- a/docs/html/tag_8hpp_source.html +++ b/docs/html/tag_8hpp_source.html @@ -94,14 +94,14 @@
6#include <ostream>
7#include <istream>
8
-
9namespace mpl {
+
9namespace mpl {
10
12 class tag_t {
13 private:
14 int t = 0;
15
16 public:
-
17 tag_t() = default;
+
17 tag_t() = default;
18
22 template<typename T>
23 tag_t(T t) : t(static_cast<int>(t)) {
@@ -118,27 +118,27 @@
41 static inline tag_t any();
42 };
43
-
47 inline bool operator==(tag_t t1, tag_t t2) {
+
47 inline bool operator==(tag_t t1, tag_t t2) {
48 return static_cast<int>(t1) == static_cast<int>(t2);
49 }
50
-
54 inline bool operator!=(tag_t t1, tag_t t2) {
+
54 inline bool operator!=(tag_t t1, tag_t t2) {
55 return static_cast<int>(t1) != static_cast<int>(t2);
56 }
57
62 template<typename CharT, typename Traits>
-
63 std::basic_ostream<CharT, Traits> &operator<<(std::basic_ostream<CharT, Traits> &os,
+
63 std::basic_ostream<CharT, Traits> &operator<<(std::basic_ostream<CharT, Traits> &os,
64 tag_t t) {
65 return os << static_cast<int>(t);
66 }
67
72 template<typename CharT, typename Traits>
-
73 std::basic_istream<CharT, Traits> &operator>>(std::basic_istream<CharT, Traits> &is,
-
74 tag_t &t) {
+
73 std::basic_istream<CharT, Traits> &operator>>(std::basic_istream<CharT, Traits> &is,
+
74 tag_t &t) {
75 int t_;
76 is >> t_;
77 if (is)
-
78 t = tag_t(t_);
+
78 t = tag_t(t_);
79 return is;
80 }
81
@@ -150,12 +150,6 @@
static tag_t any()
static tag_t up()
tag_t(int t)
Definition: tag.hpp:30
-
tag_t()=default
- -
std::basic_ostream< CharT, Traits > & operator<<(std::basic_ostream< CharT, Traits > &os, tag_t t)
Definition: tag.hpp:63
-
std::basic_istream< CharT, Traits > & operator>>(std::basic_istream< CharT, Traits > &is, tag_t &t)
Definition: tag.hpp:73
-
bool operator==(const distributed_graph_communicator::rank_weight_pair &pair_1, const distributed_graph_communicator::rank_weight_pair &pair_2)
Checks if rank-weight pair is equal.
-
bool operator!=(const distributed_graph_communicator::rank_weight_pair &pair_1, const distributed_graph_communicator::rank_weight_pair &pair_2)
Checks if rank-weight pair is not equal.
diff --git a/docs/html/topology__communicator_8hpp_source.html b/docs/html/topology__communicator_8hpp_source.html index 2b2b1763..cf3650d4 100644 --- a/docs/html/topology__communicator_8hpp_source.html +++ b/docs/html/topology__communicator_8hpp_source.html @@ -93,7 +93,7 @@
5#include <mpi.h>
6#include <vector>
7
-
8namespace mpl::impl {
+
8namespace mpl::impl {
9
12 protected:
@@ -269,8 +269,8 @@
420 } // namespace mpl
421
422#endif
-
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:250
-
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:559
+
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:253
+
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:564
Indicates the beginning of data buffers in various collective communication operations.
Base class for communicators with a topology.
@@ -292,8 +292,7 @@
void neighbor_allgather(const T *senddata, const layout< T > &sendl, T *recvdata, const layout< T > &recvl) const
Gather messages from all neighboring processes.
void neighbor_allgatherv(const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls) const
Gather messages with a variable amount of data from all neighbouring processes.
Base class for a family of classes that describe where objects are located in memory when several obj...
Definition: layout.hpp:79
-
container for storing layouts
Definition: layout.hpp:1661
- +
container for storing layouts
Definition: layout.hpp:1664
diff --git a/docs/html/utility_8hpp_source.html b/docs/html/utility_8hpp_source.html index 670d25f6..a1873f34 100644 --- a/docs/html/utility_8hpp_source.html +++ b/docs/html/utility_8hpp_source.html @@ -96,7 +96,7 @@
8#include <vector>
9#include <valarray>
10
-
11namespace mpl {
+
11namespace mpl {
12
13 namespace detail {
14
@@ -106,7 +106,7 @@
18 };
19
20 template<typename T>
-
21 struct iterator_traits<std::back_insert_iterator<T>>
+
21 struct iterator_traits<std::back_insert_iterator<T>>
22 : public std::iterator_traits<std::back_insert_iterator<T>> {
23 using insert_type = typename T::value_type;
24 };
@@ -234,8 +234,6 @@
146} // namespace mpl
147
148#endif
- - diff --git a/docs/html/vector_8hpp_source.html b/docs/html/vector_8hpp_source.html index ef3c8fed..94c6dafb 100644 --- a/docs/html/vector_8hpp_source.html +++ b/docs/html/vector_8hpp_source.html @@ -93,7 +93,7 @@
5#include <cstdlib>
6#include <iterator>
7
-
8namespace mpl {
+
8namespace mpl {
9
10 namespace detail {
11
@@ -166,7 +166,6 @@
78} // namespace mpl
79
80#endif // MPL_VECTOR_HPP
- diff --git a/docs/html/vibrating_string_mpl_8cc-example.html b/docs/html/vibrating_string_mpl_8cc-example.html index 3dc3b7f9..16f6cb24 100644 --- a/docs/html/vibrating_string_mpl_8cc-example.html +++ b/docs/html/vibrating_string_mpl_8cc-example.html @@ -130,9 +130,9 @@
int main() {
const double dx{l / (n - 1)}; // grid spacing
const double eps{dt * dt * c * c / (dx * dx)};
- -
const int c_size{comm_world.size()};
-
const int c_rank{comm_world.rank()};
+
const mpl::communicator &comm_world{mpl::environment::comm_world()};
+
const int c_size{comm_world.size()};
+
const int c_rank{comm_world.rank()};
std::vector<int> n_l, n_0_l;
for (int i{0}; i < c_size; ++i) {
// number of local grid points of process i
@@ -157,46 +157,42 @@
// make one time step to get elongation
string(u_l, u_old_l, u_new_l, eps);
// update border data
- -
r.push(comm_world.isend(u_new_l[n_l[c_rank] - 2],
-
c_rank + 1 < c_size ? c_rank + 1 : mpl::proc_null, copy::right));
-
r.push(comm_world.isend(u_new_l[1], c_rank - 1 >= 0 ? c_rank - 1 : mpl::proc_null,
+ +
r.push(comm_world.isend(u_new_l[n_l[c_rank] - 2],
+
c_rank + 1 < c_size ? c_rank + 1 : mpl::proc_null, copy::right));
+
r.push(comm_world.isend(u_new_l[1], c_rank - 1 >= 0 ? c_rank - 1 : mpl::proc_null,
copy::left));
-
r.push(comm_world.irecv(u_new_l[0], c_rank - 1 >= 0 ? c_rank - 1 : mpl::proc_null,
+
r.push(comm_world.irecv(u_new_l[0], c_rank - 1 >= 0 ? c_rank - 1 : mpl::proc_null,
copy::right));
-
r.push(comm_world.irecv(u_new_l[n_l[c_rank] - 1],
-
c_rank + 1 < c_size ? c_rank + 1 : mpl::proc_null, copy::left));
-
r.waitall();
+
r.push(comm_world.irecv(u_new_l[n_l[c_rank] - 1],
+
c_rank + 1 < c_size ? c_rank + 1 : mpl::proc_null, copy::left));
+
r.waitall();
std::swap(u_l, u_old_l);
std::swap(u_new_l, u_l);
t += dt;
}
// finally, gather all the data at rank 0 and print result
- +
for (int i{0}; i < c_size; ++i)
-
layouts.push_back(mpl::indexed_layout<double>({{n_l[i] - 2, n_0_l[i] + 1}}));
-
mpl::contiguous_layout<double> layout(n_l[c_rank] - 2);
+
layouts.push_back(mpl::indexed_layout<double>({{n_l[i] - 2, n_0_l[i] + 1}}));
+
mpl::contiguous_layout<double> layout(n_l[c_rank] - 2);
if (c_rank == 0) {
std::vector<double> u(n, 0);
-
comm_world.gatherv(0, u_l.data() + 1, layout, u.data(), layouts);
+
comm_world.gatherv(0, u_l.data() + 1, layout, u.data(), layouts);
for (int i{0}; i < n; ++i)
std::cout << dx * i << '\t' << u[i] << '\n';
} else
-
comm_world.gatherv(0, u_l.data() + 1, layout);
+
comm_world.gatherv(0, u_l.data() + 1, layout);
return EXIT_SUCCESS;
}
-
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:250
-
void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Gather messages with a variable amount of data from all processes at a single root process.
-
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:559
-
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:567
+
Specifies the communication context for a communication operation.
Definition: comm_group.hpp:253
+
void gatherv(int root_rank, const T *senddata, const layout< T > &sendl, T *recvdata, const layouts< T > &recvls, const displacements &recvdispls) const
Gather messages with a variable amount of data from all processes at a single root process.
+
int size() const
Determines the total number of processes in a communicator.
Definition: comm_group.hpp:564
+
int rank() const
Determines the rank within a communicator.
Definition: comm_group.hpp:572
Layout representing contiguous storage several objects.
Definition: layout.hpp:458
- -
void push(T &&other)
Definition: request.hpp:158
Layout representing data in a sequence of consecutive homogenous blocks of varying lengths.
Definition: layout.hpp:723
Container for managing a list of non-blocking communication requests.
Definition: request.hpp:249
-
container for storing layouts
Definition: layout.hpp:1661
-
const communicator & comm_world()
Provides access to a predefined communicator that allows communication with all processes.
-
constexpr int proc_null
Special value that can be used instead of a rank wherever a source or a destination argument is requi...
Definition: mpl.hpp:18
+
container for storing layouts
Definition: layout.hpp:1664
diff --git a/mpl/cartesian_communicator.hpp b/mpl/cartesian_communicator.hpp index ccb9a12b..1185f86d 100644 --- a/mpl/cartesian_communicator.hpp +++ b/mpl/cartesian_communicator.hpp @@ -541,6 +541,7 @@ namespace mpl { } // namespace mpl +#if !(defined MPL_DOXYGEN_SHOULD_SKIP_THIS) namespace std { template<> @@ -558,3 +559,5 @@ namespace std { } // namespace std #endif + +#endif diff --git a/mpl/comm_group.hpp b/mpl/comm_group.hpp index fb6b4a10..a01fd30f 100644 --- a/mpl/comm_group.hpp +++ b/mpl/comm_group.hpp @@ -31,7 +31,7 @@ namespace mpl { //-------------------------------------------------------------------- - /// \brief return value of matching probe operations + /// \brief Return value of matching probe operations. struct mprobe_status { /// \brief message handle to be used in a matching receive operation message_t message; @@ -218,6 +218,7 @@ namespace mpl { } /// \brief Tests for identity of process groups. + /// \param other process group to compare with /// \return true if identical bool operator==(const group &other) const { int result; @@ -226,6 +227,7 @@ namespace mpl { } /// \brief Tests for identity of process groups. + /// \param other process group to compare with /// \return true if not identical bool operator!=(const group &other) const { int result; @@ -234,6 +236,7 @@ namespace mpl { } /// \brief Compares to another process group. + /// \param other process group to compare with /// \return equality type [[nodiscard]] equality_type compare(const group &other) const { int result; @@ -515,6 +518,7 @@ namespace mpl { /// \brief Copy-assigns and creates a new communicator which is equivalent to an existing /// one. /// \param other the other communicator to copy from + /// \return this communicator /// \note This is a collective operation that needs to be carried out by all processes of /// the communicator other. Communicators should not be copied unless a new independent /// communicator is wanted. Communicators should be passed via references to functions to @@ -536,6 +540,7 @@ namespace mpl { /// \brief Move-assigns a communicator. /// \param other the other communicator to move from + /// \return this communicator /// \note This is a collective operation that needs to be carried out by all processes of /// the communicator other. communicator &operator=(communicator &&other) noexcept { @@ -571,6 +576,7 @@ namespace mpl { } /// \brief Tests for identity of communicators. + /// \param other communicator to compare with /// \return true if identical bool operator==(const communicator &other) const { int result; @@ -579,6 +585,7 @@ namespace mpl { } /// \brief Tests for identity of communicators. + /// \param other communicator to compare with /// \return true if not identical bool operator!=(const communicator &other) const { int result; @@ -587,6 +594,7 @@ namespace mpl { } /// \brief Compares to another communicator. + /// \param other communicator to compare with /// \return equality type [[nodiscard]] equality_type compare(const communicator &other) const { int result; @@ -892,11 +900,12 @@ namespace mpl { // === buffered send === // --- determine buffer size --- - /// \brief determines the message buffer size + /// \brief Determines the message buffer size. /// \tparam T type of the data to send in a later buffered send operation, must meet the /// requirements as described in the \ref data_types "data types" section /// \param number quantity of elements of type T to send in a single buffered message or /// in a series of buffered send operations + /// \return message buffer size /// \anchor communicator_bsend_size template [[nodiscard]] int bsend_size(int number = 1) const { @@ -905,11 +914,12 @@ namespace mpl { return pack_size + MPI_BSEND_OVERHEAD; } - /// \brief determines the message buffer size + /// \brief Determines the message buffer size. /// \tparam T type of the data to send in a later buffered send operation, must meet the /// requirements as described in the \ref data_types "data types" section /// \param l layout of the data /// \param number quantity of buffered send operations with the given data type and layout + /// \return message buffer size template [[nodiscard]] int bsend_size(const layout &l, int number = 1) const { int pack_size{0}; @@ -2054,6 +2064,10 @@ namespace mpl { // === matching probe === // --- blocking matching probe --- + /// \brief Blocking matched test for an incoming message. + /// \param source rank of the sending process + /// \param t tag associated to this message + /// \return message handle and status of the pending message [[nodiscard]] mprobe_status mprobe(int source, tag_t t = tag_t(0)) const { check_source(source); check_recv_tag(t); @@ -2064,6 +2078,11 @@ namespace mpl { } // --- non-blocking matching probe --- + /// \brief Blocking matched test for an incoming message. + /// \param source rank of the sending process + /// \param t tag associated to this message + /// \return message handle and status of the pending message if there is a pending message + /// by the given source and with the given tag [[nodiscard]] std::optional improbe(int source, tag_t t = tag_t(0)) const { check_source(source); check_recv_tag(t); @@ -3670,6 +3689,7 @@ namespace mpl { /// \param sendrecvdata pointer to continuous storage for outgoing and incoming messages /// \param sendrecvls memory layouts of the data to send and to receive /// \param sendrecvdispls displacements of the data to send and to receive + /// \return request representing the ongoing message transfer /// \details Each process in the communicator sends elements of type T to each process /// (including itself) and receives elements of type T from each process. Send- and /// receive-data are stored in consecutive blocks of variable size in the buffer @@ -3705,6 +3725,7 @@ namespace mpl { /// data_types "data types" section /// \param sendrecvdata pointer to continuous storage for incoming and outgoing messages /// \param sendrecvls memory layouts of the data to send and to receive + /// \return request representing the ongoing message transfer /// \details Each process in the communicator sends elements of type T to each process /// (including itself) and receives elements of type T from each process. Send- and /// receive-data are stored in consecutive blocks of variable size in the buffer diff --git a/mpl/layout.hpp b/mpl/layout.hpp index ec293614..a0f6564b 100644 --- a/mpl/layout.hpp +++ b/mpl/layout.hpp @@ -1462,12 +1462,14 @@ namespace mpl { //-------------------------------------------------------------------- - /// \brief Helper class for \ref heterogeneous_layout and \ref make_absolute. + /// \brief Helper class for \ref heterogeneous_layout, + /// make_absolute(T *x, const layout &l) and make_absolute(const T *x, const layout &l). /// \tparam T data type template class absolute_data; - /// \brief Helper class for \ref heterogeneous_layout and \ref make_absolute. + /// \brief Helper class for \ref heterogeneous_layout, + /// make_absolute(T *x, const layout &l) and make_absolute(const T *x, const layout &l). /// \tparam T data type template class absolute_data { @@ -1483,7 +1485,8 @@ namespace mpl { }; - /// \brief Helper class for \ref heterogeneous_layout and \ref make_absolute. + /// \brief Helper class for \ref heterogeneous_layout, + /// make_absolute(T *x, const layout &l) and make_absolute(const T *x, const layout &l). /// \tparam T data type template class absolute_data { @@ -1500,7 +1503,7 @@ namespace mpl { /// \brief Layout representing heterogeneous data at specific memory locations. - /// \see inherits all member methods of \ref layout + /// \see inherits all member methods of the class layout /// \note \ref absolute must be used as send/receive buffer argument when sending or receiving /// data of heterogeneous layout. class heterogeneous_layout : public layout { @@ -1622,7 +1625,7 @@ namespace mpl { }; - /// \brief helper function for \ref heterogeneous_layout + /// \brief Helper function for the class heterogeneous_layout. /// \tparam T data type /// \param x address of data /// \param l layout of data at address x @@ -1632,7 +1635,7 @@ namespace mpl { return absolute_data{x, l.type_}; } - /// \brief helper function for \ref heterogeneous_layout + /// \brief Helper function for the class heterogeneous_layout. /// \tparam T data type /// \param x address of data /// \param l layout of data at address x diff --git a/mpl/mpl.hpp b/mpl/mpl.hpp index b33ab0a5..58d01c39 100644 --- a/mpl/mpl.hpp +++ b/mpl/mpl.hpp @@ -26,11 +26,13 @@ namespace mpl { constexpr int root = MPI_ROOT; /// \brief Special constant to indicate the start of the address range of message buffers. + /// \anchor absolute constexpr void *absolute = MPI_BOTTOM; /// \brief Special constant representing an upper bound on the additional space consumed when /// buffering messages. /// \see \ref communicator_bsend "communicator::bsend" + /// \anchor bsend_overhead constexpr int bsend_overhead = MPI_BSEND_OVERHEAD; using size_t = std::size_t;