* FESystem.
*
* Detailed information can be found in the @see @ref
- * GlossPeriodicConstraints "Glossary entry on periodic boundary
- * conditions".
+ * GlossPeriodicConstraints "Glossary entry on periodic boundary conditions".
*
* @todo: Reference to soon be written example step and glossary article.
*
* parallel::distributed::Triangulation::add_periodicity has to be called
* before.
*
- * @see @ref GlossPeriodicConstraints "Glossary entry on periodic
- * boundary conditions" for further information.
+ * @see @ref GlossPeriodicConstraints "Glossary entry on periodic boundary conditions"
+ * for further information.
*
* @author Daniel Arndt, Matthias Maier, 2013, 2014
*/
* conditions into a ConstraintMatrix @p constraint_matrix.
*
* This function serves as a high level interface for the
- * make_periodicity_constraints function.
+ * make_periodicity_constraints() function.
*
* Define a 'first' boundary as all boundary faces having boundary_id
* @p b_id1 and a 'second' boundary consisting of all faces belonging
* kept and nothing happens.
*
* The flags in the last parameter, @p component_mask (see @ref
- * GlossComponentMask) denote which components of the finite element space
- * shall be constrained with periodic boundary conditions. If it is left
- * as specified by the default value all components are constrained. If
- * it is different from the default value, it is assumed that the number
- * of entries equals the number of components in the boundary functions
- * and the finite element, and those components in the given boundary
- * function will be used for which the respective flag was set in the
- * component mask.
+ * GlossComponentMask) denote which components of the finite element
+ * space shall be constrained with periodic boundary conditions. If it is
+ * left as specified by the default value all components are constrained.
+ * If it is different from the default value, it is assumed that the
+ * number of entries equals the number of components in the boundary
+ * functions and the finite element, and those components in the given
+ * boundary function will be used for which the respective flag was set
+ * in the component mask.
*
* @note: This function is a convenience wrapper. It internally calls
- * GridTools::collect_periodic_faces with the supplied paramaters and
- * feeds the output to above make_periodicity_constraints variant. If you
- * need more functionality use GridTools::collect_periodic_faces
+ * GridTools::collect_periodic_faces() with the supplied paramaters and
+ * feeds the output to above make_periodicity_constraints() variant. If
+ * you need more functionality use GridTools::collect_periodic_faces()
* directly.
*
- * @see @ref GlossPeriodicConstraints "Glossary entry on periodic
- * boundary conditions" for further information.
+ * @see @ref GlossPeriodicConstraints "Glossary entry on periodic boundary conditions"
+ * for further information.
*
* @author Matthias Maier, 2012
*/
* "standard orientation".
*
* @note: This function is a convenience wrapper. It internally calls
- * GridTools::collect_periodic_faces with the supplied paramaters and
- * feeds the output to above make_periodicity_constraints variant. If you
- * need more functionality use GridTools::collect_periodic_faces
+ * GridTools::collect_periodic_faces() with the supplied paramaters and
+ * feeds the output to above make_periodicity_constraints() variant. If
+ * you need more functionality use GridTools::collect_periodic_faces()
* directly.
*
- * @see @ref GlossPeriodicConstraints "Glossary entry on periodic
- * boundary conditions" for further information.
+ * @see @ref GlossPeriodicConstraints "Glossary entry on periodic boundary conditions"
+ * for further information.
*/
template<typename DH>
void
/**
* The relative orientation of the first face with respect to the
- * second face as described in orthogonal_equality and
- * make_periodicity_constraints (and stored as a bitset).
+ * second face as described in orthogonal_equality() and
+ * make_periodicity_constraints() (and stored as a bitset).
*/
std::bitset<3> orientation;
* face. If the std::vector first_vector_components is non empty the
* matrix is interpreted as a rotation matrix that is applied to all
* vector valued blocks listed in first_vector_components of the
- * FESystem. For more details see make_periodicity_constraints and the
+ * FESystem. For more details see make_periodicity_constraints() and the
* glossary @ref GlossPeriodicConstraints "glossary entry on periodic
* boundary conditions".
*/
* them to the corresponding vertices of the 'second' boundary. This can
* be used to implement conditions such as $u(0,y)=u(1,y+1)$.
*
- * Optionally a rotation matrix @p matrix along with a vector @p
- * first_vector_components can be specified that describes how vector
+ * Optionally a (dim x dim) rotation matrix @p matrix along with a vector
+ * @p first_vector_components can be specified that describes how vector
* valued DoFs of the first face should be modified prior to constraining
* to the DoFs of the second face. If @p first_vector_components is non
* empty the matrix is interpreted as a rotation matrix that is applied
- * to all vector valued blocks listet in @p first_vector_components of
- * the FESystem. For more details see make_periodicity_constraints and
- * the glossary @ref GlossPeriodicConstraints "glossary entry on periodic
- * boundary conditions".
+ * to all vector valued blocks listed in @p first_vector_components of
+ * the FESystem. For more details see make_periodicity_constraints() and
+ * the glossary
+ * @ref GlossPeriodicConstraints "glossary entry on periodic boundary conditions".
*
- * @tparam Container A type that satisfies the
- * requirements of a mesh container (see @ref GlossMeshAsAContainer).
+ * @tparam Container A type that satisfies the requirements of a mesh
+ * container (see @ref GlossMeshAsAContainer).
*
* @note The created std::vector can be used in
- * DoFTools::make_periodicity_constraints and in
- * parallel::distributed::Triangulation::add_periodicity to enforce
+ * DoFTools::make_periodicity_constraints() and in
+ * parallel::distributed::Triangulation::add_periodicity() to enforce
* periodicity algebraically.
*
* @note Because elements will be added to @p matched_pairs (and existing
template <typename CONTAINER>
void
collect_periodic_faces
- (const CONTAINER &container,
- const types::boundary_id b_id1,
- const types::boundary_id b_id2,
- const int direction,
+ (const CONTAINER &container,
+ const types::boundary_id b_id1,
+ const types::boundary_id b_id2,
+ const int direction,
std::vector<PeriodicFacePair<typename CONTAINER::cell_iterator> > &matched_pairs,
- const Tensor<1,CONTAINER::space_dimension> &offset = dealii::Tensor<1,CONTAINER::space_dimension>(),
- const FullMatrix<double> &matrix = FullMatrix<double>(IdentityMatrix(CONTAINER::space_dimension)),
- const std::vector<unsigned int> &first_vector_components = std::vector<unsigned int>());
+ const Tensor<1,CONTAINER::space_dimension> &offset = dealii::Tensor<1,CONTAINER::space_dimension>(),
+ const FullMatrix<double> &matrix = FullMatrix<double>(IdentityMatrix(CONTAINER::space_dimension)),
+ const std::vector<unsigned int> &first_vector_components = std::vector<unsigned int>());
/**
* This function will collect periodic face pairs on the coarsest mesh level
* and add them to @p matched_pairs leaving the original contents intact.
*
- * Optionally a rotation matrix @p matrix along with a vector @p
- * first_vector_components can be specified that describes how vector
+ * Optionally a rotation matrix @p matrix along with a vector
+ * @p first_vector_components can be specified that describes how vector
* valued DoFs of the first face should be modified prior to constraining
* to the DoFs of the second face. If @p first_vector_components is non
* empty the matrix is interpreted as a rotation matrix that is applied
* to all vector valued blocks listet in @p first_vector_components of
- * the FESystem. For more details see make_periodicity_constraints and
+ * the FESystem. For more details see make_periodicity_constraints() and
* the glossary @ref GlossPeriodicConstraints "glossary entry on periodic
* boundary conditions".
*
template <typename CONTAINER>
void
collect_periodic_faces
- (const CONTAINER &container,
- const types::boundary_id b_id,
- const int direction,
+ (const CONTAINER &container,
+ const types::boundary_id b_id,
+ const int direction,
std::vector<PeriodicFacePair<typename CONTAINER::cell_iterator> > &matched_pairs,
- const dealii::Tensor<1,CONTAINER::space_dimension> &offset = dealii::Tensor<1,CONTAINER::space_dimension>(),
- const FullMatrix<double> &matrix = FullMatrix<double>(),
- const std::vector<unsigned int> &first_vector_components = std::vector<unsigned int>());
+ const dealii::Tensor<1,CONTAINER::space_dimension> &offset = dealii::Tensor<1,CONTAINER::space_dimension>(),
+ const FullMatrix<double> &matrix = FullMatrix<double>(),
+ const std::vector<unsigned int> &first_vector_components = std::vector<unsigned int>());
/*@}*/