constraints.close();
// ------ verify -----
+ std::vector<IndexSet> locally_owned_dofs_per_processor =
+ Utilities::MPI::all_gather(dh.get_communicator(), dh.locally_owned_dofs());
+
IndexSet locally_active_dofs;
DoFTools::extract_locally_active_dofs(dh, locally_active_dofs);
deallog << "constraints:" << std::endl;
constraints.print(deallog.get_file_stream());
}
- deallog << "consistent? "
- << constraints.is_consistent_in_parallel(
- dh.locally_owned_dofs_per_processor(),
- locally_active_dofs,
- MPI_COMM_WORLD,
- true)
- << std::endl;
+ deallog
+ << "consistent? "
+ << constraints.is_consistent_in_parallel(locally_owned_dofs_per_processor,
+ locally_active_dofs,
+ MPI_COMM_WORLD,
+ true)
+ << std::endl;
deallog << "OK" << std::endl;
}
constraints.close();
// ------ verify -----
+ std::vector<IndexSet> locally_owned_dofs_per_processor =
+ Utilities::MPI::all_gather(dh.get_communicator(), dh.locally_owned_dofs());
+
IndexSet locally_active_dofs;
DoFTools::extract_locally_active_dofs(dh, locally_active_dofs);
deallog << "constraints:" << std::endl;
constraints.print(deallog.get_file_stream());
}
- deallog << "consistent? "
- << constraints.is_consistent_in_parallel(
- dh.locally_owned_dofs_per_processor(),
- locally_active_dofs,
- MPI_COMM_WORLD,
- true)
- << std::endl;
+ deallog
+ << "consistent? "
+ << constraints.is_consistent_in_parallel(locally_owned_dofs_per_processor,
+ locally_active_dofs,
+ MPI_COMM_WORLD,
+ true)
+ << std::endl;
deallog << "OK" << std::endl;
}
constraints.close();
// ------ verify -----
+ std::vector<IndexSet> locally_owned_dofs_per_processor =
+ Utilities::MPI::all_gather(dh.get_communicator(), dh.locally_owned_dofs());
+
IndexSet locally_active_dofs;
DoFTools::extract_locally_active_dofs(dh, locally_active_dofs);
deallog << "constraints:" << std::endl;
constraints.print(deallog.get_file_stream());
}
- deallog << "consistent? "
- << constraints.is_consistent_in_parallel(
- dh.locally_owned_dofs_per_processor(),
- locally_active_dofs,
- MPI_COMM_WORLD,
- true)
- << std::endl;
+ deallog
+ << "consistent? "
+ << constraints.is_consistent_in_parallel(locally_owned_dofs_per_processor,
+ locally_active_dofs,
+ MPI_COMM_WORLD,
+ true)
+ << std::endl;
deallog << "OK" << std::endl;
}
#ifdef DEBUG
// We have not dealt with chains of constraints on ghost cells yet.
// Thus, we are content with verifying their consistency for now.
+ std::vector<IndexSet> locally_owned_dofs_per_processor =
+ Utilities::MPI::all_gather(dof_handler.get_communicator(),
+ dof_handler.locally_owned_dofs());
+
IndexSet locally_active_dofs;
DoFTools::extract_locally_active_dofs(dof_handler, locally_active_dofs);
- AssertThrow(constraints.is_consistent_in_parallel(
- dof_handler.locally_owned_dofs_per_processor(),
- locally_active_dofs,
- mpi_communicator,
- /*verbose=*/true),
- ExcMessage(
- "AffineConstraints object contains inconsistencies!"));
+
+ AssertThrow(
+ constraints.is_consistent_in_parallel(locally_owned_dofs_per_processor,
+ locally_active_dofs,
+ mpi_communicator,
+ /*verbose=*/true),
+ ExcMessage("AffineConstraints object contains inconsistencies!"));
#endif
constraints.close();
#ifdef DEBUG
// We did not think about hp-constraints on ghost cells yet.
// Thus, we are content with verifying their consistency for now.
+ std::vector<IndexSet> locally_owned_dofs_per_processor =
+ Utilities::MPI::all_gather(dof_handler.get_communicator(),
+ dof_handler.locally_owned_dofs());
+
IndexSet locally_active_dofs;
DoFTools::extract_locally_active_dofs(dof_handler, locally_active_dofs);
- AssertThrow(constraints.is_consistent_in_parallel(
- dof_handler.locally_owned_dofs_per_processor(),
- locally_active_dofs,
- mpi_communicator,
- /*verbose=*/true),
- ExcMessage(
- "AffineConstraints object contains inconsistencies!"));
+
+ AssertThrow(
+ constraints.is_consistent_in_parallel(locally_owned_dofs_per_processor,
+ locally_active_dofs,
+ mpi_communicator,
+ /*verbose=*/true),
+ ExcMessage("AffineConstraints object contains inconsistencies!"));
#endif
constraints.close();