I want to postporcess some data across an interface with feInterface. 
I have a fully::distributed::triangulation. 
I am doing is something that "roughly" looks like this: 

template <int dim>
void TSL_prllel<dim>::interface_gradients(Tensor<1, dim> &
interface_gradients)
{
interface_gradients = 0;
QGauss<dim - 1> face_quadrature_formula(degree + 1);

FEInterfaceValues<dim> fe_iv(fe,
face_quadrature_formula,
+many_flags);

Tensor<1, dim> local_interface_gradients;

for (; cell != endc; ++cell)
if (cell->is_locally_owned())
for (unsigned int face = 0; face < GeometryInfo<dim>::faces_per_cell; ++face
)
if (cell->face(face)->user_flag_set()) //If I am at the interface
{ 
// I want to visit the face only once so I clear the flag
cell->face(face)->clear_user_flag();

fe_iv.get_jump_in_function_values(ghosted_solution, gradu);
for (unsigned int point = 0; point < n_face_q_points; ++point)
{

local_interface_gradients += gradu[point]xJXW ;

}
}
interface_stress = Utilities::MPI::sum(local_interface_gradients, 
mpi_communicator);
}

I basically set a flag at the faces I want to postprocess at then when I 
visit the face the first time, I clear the flag so the face gets visited 
only once. This works with a single MPI but not for more. Is it because the 
cell->face(face)->clear_user_flag()
doesn't clear the user flag in the other distributed meshes? 
I can't directly loop over faces because there is no 
"face->is_locally_owned()" 
I know that meshworker is an option. Is it the only option? 

-- 
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
https://groups.google.com/d/forum/dealii?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/b6e47744-49ad-46e7-9e72-14474f35f9f1n%40googlegroups.com.

Reply via email to