= Threads::split_range<active_cell_iterator> (dof_handler.begin_active (),
dof_handler.end (),
n_threads);
-
- Threads::ThreadMutex mutex;
- Threads::ThreadGroup<> threads;
- for (unsigned int thread=0; thread<n_threads; ++thread)
- {
- threads += Threads::spawn (*this, &Solver<dim>::assemble_matrix)
- (linear_system,
- thread_ranges[thread].first,
- thread_ranges[thread].second,
- mutex);
- }
- threads.join_all();
-
+
+ {
+ Threads::ThreadMutex mutex;
+ for (unsigned int thread=0; thread<n_threads; ++thread)
+ {
+ assemble_matrix
+ (linear_system,
+ thread_ranges[thread].first,
+ thread_ranges[thread].second,
+ mutex);
+ }
+ }
+
assemble_rhs (linear_system.rhs);
linear_system.hanging_node_constraints.condense (linear_system.rhs);
*boundary_values,
boundary_value_map);
- threads.join_all ();
linear_system.hanging_node_constraints.condense (linear_system.matrix);
MatrixTools::apply_boundary_values (boundary_value_map,
void
WeightedResidual<dim>::solve_problem ()
{
- Threads::ThreadGroup<> threads;
- threads += Threads::spawn (*this, &WeightedResidual<dim>::solve_primal_problem)();
- threads.join_all ();
- threads += Threads::spawn (*this, &WeightedResidual<dim>::solve_dual_problem)();
- threads.join_all ();
+ solve_primal_problem();
+ solve_dual_problem();
}
.get_tria().n_active_cells());
const unsigned int n_threads = multithread_info.n_default_threads;
- Threads::ThreadGroup<> threads;
for (unsigned int i=0; i<n_threads; ++i)
{
- threads += Threads::spawn (*this, &WeightedResidual<dim>::estimate_some)
- (primal_solution,
- dual_weights,
- n_threads, i,
- error_indicators,
- face_integrals);
- threads.join_all();
+ estimate_some
+ (primal_solution,
+ dual_weights,
+ n_threads, i,
+ error_indicators,
+ face_integrals);
}
unsigned int present_cell=0;
DEAL::Refinement cycle: 0
-DEAL:cg::Starting value 0.306186
+DEAL:cg::Starting value 0.31
DEAL:cg::Convergence step 8 value 0
-DEAL:cg::Starting value 1.00000
+DEAL:cg::Starting value 1.0
DEAL:cg::Convergence step 21 value 0
# This file was generated by the deal.II library.
showpage
DEAL:: Estimated error=0.00070
DEAL::Refinement cycle: 1
-DEAL:cg::Starting value 0.0975781
+DEAL:cg::Starting value 0.098
DEAL:cg::Convergence step 10 value 0
-DEAL:cg::Starting value 1.00000
+DEAL:cg::Starting value 1.0
DEAL:cg::Convergence step 25 value 0
# This file was generated by the deal.II library.
showpage
DEAL:: Estimated error=0.00089
DEAL::Refinement cycle: 2
-DEAL:cg::Starting value 0.136408
+DEAL:cg::Starting value 0.14
DEAL:cg::Convergence step 14 value 0
-DEAL:cg::Starting value 1.00000
+DEAL:cg::Starting value 1.0
DEAL:cg::Convergence step 38 value 0
# This file was generated by the deal.II library.
showpage
DEAL:: Estimated error=0.00045
DEAL::Refinement cycle: 3
-DEAL:cg::Starting value 0.161862
+DEAL:cg::Starting value 0.16
DEAL:cg::Convergence step 22 value 0
-DEAL:cg::Starting value 1.00000
+DEAL:cg::Starting value 1.0
DEAL:cg::Convergence step 62 value 0
# This file was generated by the deal.II library.
showpage
DEAL:: Estimated error=0.00024
DEAL::Refinement cycle: 4
-DEAL:cg::Starting value 0.180177
+DEAL:cg::Starting value 0.18
DEAL:cg::Convergence step 33 value 0
-DEAL:cg::Starting value 1.00000
+DEAL:cg::Starting value 1.0
DEAL:cg::Convergence step 98 value 0
# This file was generated by the deal.II library.
showpage
DEAL:: Estimated error=7.5e-05
DEAL::Refinement cycle: 5
-DEAL:cg::Starting value 0.147763
+DEAL:cg::Starting value 0.15
DEAL:cg::Convergence step 48 value 0
-DEAL:cg::Starting value 1.00000
+DEAL:cg::Starting value 1.0
DEAL:cg::Convergence step 157 value 0
# This file was generated by the deal.II library.