From a9449558cb1785152bf16403014c163b8b2fcd07 Mon Sep 17 00:00:00 2001 From: Daniel Arndt Date: Wed, 25 Mar 2020 17:17:22 -0400 Subject: [PATCH] Replace ConstructionData in documentation --- doc/news/changes/minor/20190902PeterMunch | 2 +- doc/news/changes/minor/20190913PeterMunch-1 | 4 ++-- doc/news/changes/minor/20190913PeterMunch-2 | 4 ++-- .../deal.II/distributed/fully_distributed_tria.h | 11 ++++++----- include/deal.II/grid/tria_description.h | 4 ++-- source/distributed/fully_distributed_tria.cc | 2 +- source/grid/tria_description.cc | 13 ++++++++----- .../copy_serial_tria_grouped_01.cc | 14 ++++++++------ ...arallel_fullydistributed_construction_data_1.cc | 6 +++--- 9 files changed, 33 insertions(+), 27 deletions(-) diff --git a/doc/news/changes/minor/20190902PeterMunch b/doc/news/changes/minor/20190902PeterMunch index 6a222575c2..fd4b094db2 100644 --- a/doc/news/changes/minor/20190902PeterMunch +++ b/doc/news/changes/minor/20190902PeterMunch @@ -1,4 +1,4 @@ -New: Add a function, which creates a parallel::fullydistributed::ConstructionData from a +New: Add a function, which creates a TriangulationDescription::Description from a serial and a distributed triangulation. This data structure can be used to initialize parallel::fullydistributed::Triangulation.
diff --git a/doc/news/changes/minor/20190913PeterMunch-1 b/doc/news/changes/minor/20190913PeterMunch-1 index 486bf7dc79..ec52c689a7 100644 --- a/doc/news/changes/minor/20190913PeterMunch-1 +++ b/doc/news/changes/minor/20190913PeterMunch-1 @@ -1,4 +1,4 @@ -New: Add Boost serialization function to dealii::fullydistributed::CellData and -dealii::fullydistributed::ConstructionData. +New: Add Boost serialization function to dealii::TriangulationDescription::CellData and +dealii::TriangulationDescription::Description.
(Peter Munch, 2019/09/13) diff --git a/doc/news/changes/minor/20190913PeterMunch-2 b/doc/news/changes/minor/20190913PeterMunch-2 index 2f9ab6530e..ffb621a5dc 100644 --- a/doc/news/changes/minor/20190913PeterMunch-2 +++ b/doc/news/changes/minor/20190913PeterMunch-2 @@ -1,5 +1,5 @@ -New: Allow to create parallel::fullydistributed::ConstructionData +New: Allow to create TriangulationDescription::Description by groups, in which only one process actually creates -ConstructionDatas and distributes them within the group. +TriangulationDescription::Descriptions and distributes them within the group.
(Peter Munch, 2019/09/13) diff --git a/include/deal.II/distributed/fully_distributed_tria.h b/include/deal.II/distributed/fully_distributed_tria.h index 6e4b4c73a4..40211bd289 100644 --- a/include/deal.II/distributed/fully_distributed_tria.h +++ b/include/deal.II/distributed/fully_distributed_tria.h @@ -87,13 +87,14 @@ namespace parallel * and boundary_id of each cell. * * The ingredients listed above are bundled in the struct - * parallel::fullydistributed::ConstructionData. The user has to fill this + * TriangulationDescription::Description. The user has to fill this * data structure - in a pre-processing step - before actually creating the - * triangulation. Predefined functions to create ConstructionData - * can be found in the namespace dealii::fullydistributed::Utilities. + * triangulation. Predefined functions to create + * TriangulationDescription::Description can be found in the namespace + * TriangulationDescription::Utilities. * - * Once the ConstructionData `construction_data` has been constructed, the - * triangulation `tria` can be created by calling + * Once the TriangulationDescription::Description `construction_data` has + * been constructed, the triangulation `tria` can be created by calling * `tria.create_triangulation(construction_data);`. * * @note This triangulation supports: 1D/2D/3D, hanging nodes, diff --git a/include/deal.II/grid/tria_description.h b/include/deal.II/grid/tria_description.h index 9d414fad70..3bae42eb08 100644 --- a/include/deal.II/grid/tria_description.h +++ b/include/deal.II/grid/tria_description.h @@ -453,8 +453,8 @@ namespace TriangulationDescription * a serial triangulation and for its partitioning (by calling the * provided `std::functions' objects). Internally only selected processes ( * every n-th/each root of a group of size group_size) create a serial - * triangulation and the ConstructionData for all processes in its group, - * which is communicated. + * triangulation and the TriangulationDescription::Description for all + * processes in its group, which is communicated. * * @note A reasonable group size is the size of a NUMA domain or the * size of a compute node. diff --git a/source/distributed/fully_distributed_tria.cc b/source/distributed/fully_distributed_tria.cc index a5607aeb08..7fec8ccd2f 100644 --- a/source/distributed/fully_distributed_tria.cc +++ b/source/distributed/fully_distributed_tria.cc @@ -61,7 +61,7 @@ namespace parallel &construction_data) { // check if the communicator of this parallel triangulation has been used - // to construct the ConstructionData + // to construct the TriangulationDescription::Description Assert(construction_data.comm == this->mpi_communicator, ExcMessage("MPI communicators do not match!")); diff --git a/source/grid/tria_description.cc b/source/grid/tria_description.cc index 541d684624..686369ab1b 100644 --- a/source/grid/tria_description.cc +++ b/source/grid/tria_description.cc @@ -113,7 +113,7 @@ namespace TriangulationDescription ExcMessage("MPI communicators do not match.")); // First, figure out for what rank we are supposed to build the - // ConstructionData object + // TriangulationDescription::Description object unsigned int my_rank = my_rank_in; Assert(my_rank == numbers::invalid_unsigned_int || my_rank < dealii::Utilities::MPI::n_mpi_processes(comm), @@ -584,7 +584,7 @@ namespace TriangulationDescription std::vector buffer; dealii::Utilities::pack(construction_data, buffer, false); - // 3c) send ConstructionData + // 3c) send TriangulationDescription::Description const auto ierr = MPI_Send(buffer.data(), buffer.size(), MPI_CHAR, @@ -594,13 +594,15 @@ namespace TriangulationDescription AssertThrowMPI(ierr); } - // 4) create ConstructionData for this process (root of group) + // 4) create TriangulationDescription::Description for this process + // (root of group) return create_description_from_triangulation( tria, comm, construct_multilevel_hierarchy, my_rank); } else { - // 3a) recv packed ConstructionData from group-root process + // 3a) recv packed TriangulationDescription::Description from + // group-root process // (counter-part of 3c of root process) MPI_Status status; auto ierr = MPI_Probe(group_root, mpi_tag, comm, &status); @@ -619,7 +621,8 @@ namespace TriangulationDescription &status); AssertThrowMPI(ierr); - // 3b) unpack ConstructionData (counter-part of 3b of root process) + // 3b) unpack TriangulationDescription::Description (counter-part of + // 3b of root process) auto construction_data = dealii::Utilities::template unpack>( buf, false); diff --git a/tests/fullydistributed_grids/copy_serial_tria_grouped_01.cc b/tests/fullydistributed_grids/copy_serial_tria_grouped_01.cc index ecc8d57a2c..e6cd6cdd5f 100644 --- a/tests/fullydistributed_grids/copy_serial_tria_grouped_01.cc +++ b/tests/fullydistributed_grids/copy_serial_tria_grouped_01.cc @@ -14,7 +14,7 @@ // --------------------------------------------------------------------- -// Create the ConstructionData with +// Create the TriangulationDescription::Description with // create_description_from_triangulation_in_groups, i.e. by a set of // master processes. @@ -42,7 +42,8 @@ template void test(int n_refinements, MPI_Comm comm) { - // 1) create ConstructionData with create_description_from_triangulation + // 1) create TriangulationDescription::Description with + // create_description_from_triangulation Triangulation basetria( Triangulation::limit_level_difference_at_vertices); GridGenerator::hyper_L(basetria); @@ -56,7 +57,7 @@ test(int n_refinements, MPI_Comm comm) TriangulationDescription::Utilities::create_description_from_triangulation( basetria, comm, true); - // 2) create ConstructionData with + // 2) create TriangulationDescription::Description with // create_description_from_triangulation_in_groups auto construction_data_2 = TriangulationDescription::Utilities:: create_description_from_triangulation_in_groups( @@ -74,7 +75,7 @@ test(int n_refinements, MPI_Comm comm) 3 /* group size */, true); - // 3a) serialize first ConstructionData and print + // 3a) serialize first TriangulationDescription::Description and print { std::ostringstream oss; boost::archive::text_oarchive oa(oss, boost::archive::no_header); @@ -82,7 +83,7 @@ test(int n_refinements, MPI_Comm comm) deallog << oss.str() << std::endl; } - // 3b) serialize second ConstructionData and print + // 3b) serialize second TriangulationDescription::Description and print { std::ostringstream oss; boost::archive::text_oarchive oa(oss, boost::archive::no_header); @@ -93,7 +94,8 @@ test(int n_refinements, MPI_Comm comm) // 4) the result has to be identical AssertThrow((construction_data_1 == construction_data_2 && construction_data_1.comm == construction_data_2.comm), - ExcMessage("ConstructionDatas are not the same!")); + ExcMessage( + "TriangulationDescription::Descriptions are not the same!")); } int diff --git a/tests/serialization/parallel_fullydistributed_construction_data_1.cc b/tests/serialization/parallel_fullydistributed_construction_data_1.cc index aa6a030dc4..bca9f9b6bd 100644 --- a/tests/serialization/parallel_fullydistributed_construction_data_1.cc +++ b/tests/serialization/parallel_fullydistributed_construction_data_1.cc @@ -14,7 +14,7 @@ // --------------------------------------------------------------------- -// check serialization for ConstructionData +// check serialization for TriangulationDescription::Description #include #include @@ -47,7 +47,7 @@ test(MPI_Comm comm) TriangulationDescription::Utilities::create_description_from_triangulation( basetria, comm); - // compare equal ConstructionDatas + // compare equal TriangulationDescription::Descriptions auto t2 = t1; verify(t1, t2); @@ -60,7 +60,7 @@ test(MPI_Comm comm) TriangulationDescription::Utilities::create_description_from_triangulation( basetria, comm); - // compare different ConstructionDatas + // compare different TriangulationDescription::Descriptions verify(t1, t3); } -- 2.39.5