From 41226cc1729e12660d5df75741d137f2f7e0b261 Mon Sep 17 00:00:00 2001 From: Guido Kanschat Date: Wed, 16 Jun 2010 18:20:09 +0000 Subject: [PATCH] modify doc git-svn-id: https://svn.dealii.org/trunk@21216 0785d39b-7218-0410-832d-ea1e28bc413d --- .../include/numerics/mesh_worker_info.h | 89 ++++++++++++------- 1 file changed, 55 insertions(+), 34 deletions(-) diff --git a/deal.II/deal.II/include/numerics/mesh_worker_info.h b/deal.II/deal.II/include/numerics/mesh_worker_info.h index 6a9c797ae2..dd854287bd 100644 --- a/deal.II/deal.II/include/numerics/mesh_worker_info.h +++ b/deal.II/deal.II/include/numerics/mesh_worker_info.h @@ -709,15 +709,22 @@ namespace MeshWorker }; /** - * A simple container collecting the five info objects required by the - * integration loops. In addition to providing these objects, this - * class offers two functions to initialize them with reasonable - * contents all at once. + * The object holding the scratch data for integrating over cells and + * faces. IntegrationInfoBox serves three main purposes: * - * MeshWorker::loop() requires five info objects collected into a - * single class. These are the data members #cell, #boundary, #face, - * #subface, and #neighbor. The names of those are expected by - * MeshWorker::loop(). + *
    + *
  1. It provides the interface needed by MeshWorker::loop(), namely + * the two functions post_cell() and post_faces(), as well as + * the data members #cell, #boundary, #face, + * #subface, and #neighbor. + * + *
  2. It contains all information needed to initialize the FEValues + * and FEFaceValues objects in the IntegrationInfo data members. + * + *
  3. It stores information on finite element vectors and whether + * their data should be used to compute values or derivatives of + * functions at quadrature points. + *
* * @ingroup MeshWorker * @author Guido Kanschat, 2009 @@ -730,9 +737,45 @@ namespace MeshWorker /// The type of the info object for cells typedef IntegrationInfo CellInfo; -/// @deprecated The type of the info objects for faces. - typedef IntegrationInfo FaceInfo; + /** + * @name FEValues setup + */ + /* @{ */ + template + void initialize(const WORKER&, + const FiniteElement& el, + const Mapping& mapping, + const BlockInfo* block_info = 0); + template + void initialize(const WORKER&, + const FiniteElement& el, + const Mapping& mapping, + const NamedData& data, + const BlockInfo* block_info = 0); + + template + void initialize(const WORKER&, + const FiniteElement& el, + const Mapping& mapping, + const NamedData*>& data, + const BlockInfo* block_info = 0); + /* @} */ + + /** + * @name Data vectors + */ + /* @{ */ + + boost::shared_ptr > cell_data; + boost::shared_ptr > boundary_data; + boost::shared_ptr > face_data; + /* @} */ + + /** + * @name Interface for MeshWorker::loop() + */ + /* @{ */ /** * A callback function which is * called in the loop over all @@ -801,30 +844,6 @@ namespace MeshWorker template void post_faces(const DoFInfoBox&); - template - void initialize(const WORKER&, - const FiniteElement& el, - const Mapping& mapping, - const BlockInfo* block_info = 0); - - template - void initialize(const WORKER&, - const FiniteElement& el, - const Mapping& mapping, - const NamedData& data, - const BlockInfo* block_info = 0); - - template - void initialize(const WORKER&, - const FiniteElement& el, - const Mapping& mapping, - const NamedData*>& data, - const BlockInfo* block_info = 0); - - boost::shared_ptr > cell_data; - boost::shared_ptr > boundary_data; - boost::shared_ptr > face_data; - /// The info object for a cell CellInfo cell; /// The info object for a boundary face @@ -835,6 +854,8 @@ namespace MeshWorker CellInfo subface; /// The info object for an interior face, seen from the other cell CellInfo neighbor; + + /* @} */ }; -- 2.39.5