Hello all,
I am using the following function to move a p:d:triangulation.
template <int dim>
void
FEM<dim>::
move_mesh (const TrilinosWrappers::MPI::Vector &displacement) const
{
std::vector<bool> vertex_touched(triangulation.n_vertices(), false);
for (typename DoFHandler<dim>::active_cell_iterator cell =
dof_handler.begin_active();
cell != dof_handler.end
<http://dealii.org/8.4.0/doxygen/deal.II/classDoFHandler.html#a05c70e1862a2ad145f91f9da1f44cc28>
(); ++cell)
if (!cell->is_artificial())
for (unsigned int v = 0; v < GeometryInfo<dim>::vertices_per_cell; ++v)
if (vertex_touched[cell->vertex_index(v)] == false)
{
vertex_touched[cell->vertex_index(v)] = true;
Point<dim> vertex_displacement;
for (unsigned int d = 0; d < dim; ++d)
vertex_displacement[d] = displacement(cell->vertex_dof_index(v, d));
cell->vertex(v) += vertex_displacement;
}
}
My question is:
Is the mesh movement independent of the order of the polynomial used to
interpolate the solution?
What is confusing me is that I learned that there are nodes (other than
vertices) in the element when using higher order elements. So, when moving
mesh, these nodes must also be moved. In other words, these nodes are part
of the mesh. But if the move mesh function is correct for higher order
shape functions as well, than this means, my mesh just knows about the
vertices of the elements.
Can someone please clarify as to how to understand this?
--
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.