From 0e03535fbf031f45a05359ed9db1bf0780dfd3d3 Mon Sep 17 00:00:00 2001 From: Wolfgang Bangerth Date: Thu, 6 Sep 2001 15:31:38 +0000 Subject: [PATCH] Do Guido's work and update documentation for this enum. Hmph. git-svn-id: https://svn.dealii.org/trunk@4948 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/deal.II/include/fe/fe_update_flags.h | 208 +++++-------------- 1 file changed, 49 insertions(+), 159 deletions(-) diff --git a/deal.II/deal.II/include/fe/fe_update_flags.h b/deal.II/deal.II/include/fe/fe_update_flags.h index 5be06a2f93..3d2adcb31f 100644 --- a/deal.II/deal.II/include/fe/fe_update_flags.h +++ b/deal.II/deal.II/include/fe/fe_update_flags.h @@ -14,7 +14,7 @@ #define __deal2__fe_update_flags_h -//TODO:[GK] Bring docs and declarations into synch + /** * Provide a set of flags which tells the @p{FEValues<>::reinit} * function, which fields are to be updated for each cell. E.g. if you @@ -31,178 +31,68 @@ * * The following flags are declared: * @begin{itemize} - * @item @p{update_default}: Default: update nothing. - * @item @p{update_values}: Compute the values of the shape + * @item @p{update_default}: Default: update nothing. + * @item @p{update_values}: Compute the values of the shape * functions at the quadrature points on the real space cell. For the * usual Lagrange elements, these values are equal to the values of * the shape functions at the quadrature points on the unit cell, but * they are different for more complicated elements, such as BDM or * Raviart-Thomas elements. - * @item @p{update_q_points}: Compute quadrature points in real - * space (not on unit cell). - * @item @p{update_gradients}: Transform gradients on unit cell to + * @item @p{update_gradients}: Transform gradients on unit cell to * gradients on real cell. - * @item @p{update_jacobians}: Compute jacobian matrices of the - * transform between unit and real cell - * in the evaluation points. - * @item @p{update_JxW_values}: Compute the JxW values (Jacobian + * @item @p{update_second_derivatives}: Update the second derivatives of the + * shape functions on the real cell. + * @item @p{update_boundary_forms}: Update boundary forms on the face. + * This flag is only evaluated by the @ref{FEFaceValues} class. + * Giving this flag to the @ref{FEValues} class will result in an + * error, since boundary forms only exist on the boundary. + * @item @p{update_q_points}: Compute quadrature points in real + * space (not on unit cell). + * @item @p{update_JxW_values}: Compute the JxW values (Jacobian * determinant at the quadrature point * times the weight of this point). - * @item @p{update_normal_vectors}: Update the outward normal vectors - * to the face relative to this cell. - * This flag is only evaluated by - * the @p{FEFaceValues} class. - * Giving this flag to the - * @p{FEValues} class will result in - * an error, since normal vectors are - * not useful in that case. - * @item @p{update_second_derivatives}: Update the second derivatives of the - * shape functions on the real cell. + * @item @p{update_normal_vectors}: Update the outward normal vectors + * to the face relative to this cell. This flag is only evaluated + * by the @p{FEFaceValues} class. Giving this flag to the + * @p{FEValues} class will result in an error, since normal + * vectors are not useful in that case. + * @item @p{update_jacobians}: Compute jacobian matrices of the + * transform between unit and real cell + * in the evaluation points. + * @item @p{update_jacobian_grads}: Update gradients of the jacobian. These + * are used to compute second derivatives. + * @item @p{update_covariant_transformation}: Update co-variant + * transformation. This flag is used internally to tell Mapping + * objects to compute the transformation matrices for co-variant + * vectors. + * @item @p{update_contravariant_transformation}: Update contra-variant + * transformation. This flag is used internally to tell Mapping + * objects to compute the transformation matrices for contra-variant + * vectors. + * @item @p{update_transformation_values}: Update the shape function values + * of the transformation. + * @item @p{update_transformation_gradients}: Update the gradients of the shape + * functions of the transformation. * @end{itemize} * * @author Wolfgang Bangerth, Guido Kanschat, 1998, 1999, 2000, 2001 */ enum UpdateFlags { - /** - * Default: update nothing. - */ - update_default = 0, - /** - * Compute quadrature points in - * real space (not on unit - * cell). - */ - update_q_points = 0x0001, - - /** - * Compute the JxW values - * (Jacobian determinant at the - * quadrature point times the - * weight of this point). - */ - update_JxW_values = 0x0002, - - /** - * Update boundary forms on the - * face. This flag is only - * evaluated by the - * @ref{FEFaceValues} class. - * - * Giving this flag to the - * @ref{FEValues} class will - * result in an error, since - * boundary forms only exist on - * the boundary. - */ - update_boundary_forms = 0x0004, - - /** - * Compute the values of the - * shape functions at the - * quadrature points on the - * real space cell. For the - * usual Lagrange elements, - * these values are equal to - * the values of the shape - * functions at the quadrature - * points on the unit cell, but - * they are different for more - * complicated elements, such - * as BDM or Raviart-Thomas - * elements. - */ - update_values = 0x0010, - /** - * Transform gradients on unit - * cell to gradients on real - * cell. - */ - update_gradients = 0x0020, - - /** - * Update the second - * derivatives of the shape - * functions on the real cell. - */ - update_second_derivatives = 0x0040, - - /** - * Compute jacobian matrices of - * the transform between unit - * and real cell in the - * evaluation points. - */ - update_jacobians = 0x0080, - - /** - * Update co-variant - * transformation. This flag - * is used internally to tell - * Mapping objects to compute - * the transformation matrices - * for co-variant vectors. - */ - update_covariant_transformation = 0x0100, - - /** - * Update contra-variant - * transformation. This flag - * is used internally to tell - * Mapping objects to compute - * the transformation matrices - * for contra-variant vectors. - */ - update_contravariant_transformation = 0x0200, - - /** - * Update gradients of the - * jacobian. These are used to - * compute second derivatives. - */ - update_jacobian_grads = 0x0400, - - /** - * Update shape function values - * of the transformation. - */ - - update_transformation_values = 0x0800, - - /** - * Update gradients of - * transformation shape - * functions. - */ - update_transformation_gradients = 0x1000, - - /** - * Compute the points on the - * real cell on which the trial - * functions are located. - * - * Giving this flag to the - * @ref{FESubfaceValues} class - * will result in an error, - * since support points are not - * useful in that case. - */ - update_support_points = 0x2000, - - /** - * Update the outward normal - * vectors to the face relative - * to this cell. This flag is - * only evaluated by the - * @ref{FEFaceValues} class. - * - * Giving this flag to the - * @ref{FEValues} class will - * result in an error, since - * normal vectors are not - * useful in that case. - */ - update_normal_vectors = 0x4000 + update_default = 0, + update_values = 0x0001, + update_gradients = 0x0002, + update_second_derivatives = 0x0004, + update_boundary_forms = 0x0008, + update_q_points = 0x0010, + update_JxW_values = 0x0020, + update_normal_vectors = 0x0040, + update_jacobians = 0x0080, + update_jacobian_grads = 0x0100, + update_covariant_transformation = 0x0200, + update_contravariant_transformation = 0x0400, + update_transformation_values = 0x0800, + update_transformation_gradients = 0x1000 }; -- 2.39.5