Dear deal.II users,

after a lot of work on branch_anisotropic which was originally created
in 2005, we've now performed the svn merge from branch_anisotropic to
the trunk (deal.II main development line).

Now the current svn trunk version of deal.II is capable of anisotropic
refinement which splits only some of the edges of a cell in half to
form new cells. This way the aspect ratio of cells can be optimized to
better fit a problem with anisotropic features. There is now a new
tutorial step-30 which explains the main concepts of anisotropic
refinement as well as the necessary modifications to user codes. Some
modifications we made are not backwards compatible and need
modification of user code. Some of these changes are incompatible on
purpose in order to force the user to have a look at critical parts of
the code. For the most important incompatible changes, see the annex
below.

The current state of anisotropic refinement is the following:
- it works for discontinuous finite elements (FE_DG*) in 2d and 3d
- it works for continuous finite elements in 2d only as the
  implementation of hanging node constraints in 3d are still missing.
It will be one of the next steps to provide the hanging node
constraints in 3d for FE_Q. Any contribution of deal.II developers on
this topic is very much appreciated.

Note that the new anisotropic refinement capabilities will also be
part of the next public release of deal.II.

Best regards,

Tobias and Ralf.


----
For a complete list of (in)compatible changes see
  deal.II/doc/doxygen/deal.II/changes_after_6.1.html
after calling 'make online-doc' in your local copy of the current svn
version of deal.II or see
  http://www.dealii.org/developer/doxygen/deal.II/changes_after_6.1.html
once the deal.II homepage is automatically updated.
In the following we describe the most important incompatible changes
which are likely to affect every deal.II user code based on the current
svn version of deal.II:

Incompatible change: GeometryInfo<dim>::children_per_cell has been
replaced by GeometryInfo<dim>::max_children_per_cell, which represents
the maximum number of children a cell might have, i.e. the number of
children in the case of isotropic refinement. In general, the number
of children of a cell varies from cell to cell and can be obtained by
cell->n_children(), which gives the number of children of a specific
cell which is refined iso- or anisotropically. In contrast to that the
new GeometryInfo<dim>::max_children_per_cell variable will rarely be
used in user codes.

Incompatible change: The analogous change applies to the number of
children of a face. GeometryInfo<dim>::subfaces_per_face has been
replaced by GeometryInfo<dim>::max_children_per_face, which represents
the maximum number of children a face might have, i.e. the number of
children in the case of an isotropically refined face. In general, the
number of children of a face varies from face to face and can be
obtained by face->n_children(), which gives the number of children of
a specific face which is refined iso- or anisotropically. In contrast
to that the new GeometryInfo<dim>::max_children_per_face variable will
rarely be used in user codes.


_______________________________________________

Reply via email to