ExcNotImplemented());
if (ghosts_set)
- ghosts_were_set = true;
+ {
+ ghosts_were_set = true;
+ return;
+ }
vec.update_ghost_values();
}
ExcNotImplemented());
if (ghosts_set)
- ghosts_were_set = true;
+ {
+ ghosts_were_set = true;
+ return;
+ }
vec.update_ghost_values_start(component_in_block_vector + channel_shift);
}
ExcNotImplemented());
if (ghosts_set)
- ghosts_were_set = true;
+ {
+ ghosts_were_set = true;
+ return;
+ }
if (vec.size() != 0)
{
const VectorType &vec)
{
(void)component_in_block_vector;
+
+ if (ghosts_were_set)
+ return;
+
vec.update_ghost_values_finish();
}
"Type mismatch between VectorType and VectorDataExchange");
(void)component_in_block_vector;
+ if (ghosts_were_set)
+ return;
+
if (vec.size() != 0)
{
# ifdef DEAL_II_WITH_MPI
ExcNotImplemented());
if (ghosts_set)
- exchanger.ghosts_were_set = true;
+ {
+ exchanger.ghosts_were_set = true;
+ return;
+ }
vec.update_ghost_values();
}
const VectorStruct &vec,
VectorDataExchange<dim, Number, VectorizedArrayType> &exchanger)
{
+ // return immediately if there is nothing to do.
+ if (exchanger.ghosts_were_set == true)
+ return;
+
exchanger.reset_ghost_values(vec);
}
norm_per_cell,
QGauss<dim>(fe_degree + 1),
VectorTools::L2_norm);
+ solution.zero_out_ghost_values();
const double solution_norm =
std::sqrt(Utilities::MPI::sum(norm_per_cell.norm_sqr(), MPI_COMM_WORLD));
norm_per_cell,
QGauss<dim>(fe_degree + 1),
VectorTools::L2_norm);
+ solution.zero_out_ghost_values();
const double solution_norm =
std::sqrt(Utilities::MPI::sum(norm_per_cell.norm_sqr(), MPI_COMM_WORLD));
stokes_matrix.initialize_dof_vector(solution);
stokes_matrix.initialize_dof_vector(system_rhs);
- solution.update_ghost_values();
solution.collect_sizes();
-
- system_rhs.update_ghost_values();
system_rhs.collect_sizes();
}
stokes_matrix.initialize_dof_vector(solution);
stokes_matrix.initialize_dof_vector(system_rhs);
- solution.update_ghost_values();
solution.collect_sizes();
-
- system_rhs.update_ghost_values();
system_rhs.collect_sizes();
}