Hi All,
I am trying to move all parallel triangulation nodes by a constant
displacement, but that breaks the periodic face pairs match when I
call GridTools::collect_periodic_faces(...). I use the following code for
the mesh movement. The dftPtr->triangulation has periodicity constraints
using add_periodicity(...).
std::vector<bool> vertex_moved(dftPtr->triangulation.n_vertices(), false);
const std::vector<bool> locally_owned_vertices =
GridTools::get_locally_owned_vertices(dftPtr->triangulation);
for (typename DoFHandler<C_DIM>::active_cell_iterator
cell=d_dofHandlerForce.begin_active(); cell!=d_dofHandlerForce.end();
++cell){
if (cell->is_locally_owned())
{
for (unsigned int vertex_no=0;
vertex_no<GeometryInfo<C_DIM>::vertices_per_cell;
++vertex_no)
{
const unsigned global_vertex_no = cell->vertex_index(vertex_no);
if (vertex_moved[global_vertex_no]
|| !locally_owned_vertices[global_vertex_no])
continue;
Point<C_DIM> vertexDisplacement; vertexDisplacement[0]=1e-4;
vertexDisplacement[1]=0; vertexDisplacement[2]=0;
cell->vertex(vertex_no) += vertexDisplacement;
vertex_moved[global_vertex_no] = true;
}
}
}
dftPtr->triangulation.communicate_locally_moved_vertices(locally_owned_vertices);
}
Any ideas if I am doing anything wrong? Thanks in advance.
Best,
Sambit
--
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].
For more options, visit https://groups.google.com/d/optout.