]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
add documentation on local integrators to be continued later
authorkanschat <kanschat@0785d39b-7218-0410-832d-ea1e28bc413d>
Sun, 17 Oct 2010 19:40:44 +0000 (19:40 +0000)
committerkanschat <kanschat@0785d39b-7218-0410-832d-ea1e28bc413d>
Sun, 17 Oct 2010 19:40:44 +0000 (19:40 +0000)
git-svn-id: https://svn.dealii.org/trunk@22354 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/deal.II/include/integrators/laplace.h [new file with mode: 0644]
deal.II/deal.II/include/integrators/local_integrators.h [new file with mode: 0644]
deal.II/doc/doxygen/headers/glossary.h
deal.II/doc/doxygen/headers/integrators.h [new file with mode: 0644]
deal.II/doc/doxygen/headers/mesh_worker.h

diff --git a/deal.II/deal.II/include/integrators/laplace.h b/deal.II/deal.II/include/integrators/laplace.h
new file mode 100644 (file)
index 0000000..1863ab5
--- /dev/null
@@ -0,0 +1,42 @@
+//---------------------------------------------------------------------------
+//    $Id$
+//    Version: $Name$
+//
+//    Copyright (C) 2010 by the deal.II authors
+//
+//    This file is subject to QPL and may not be  distributed
+//    without copyright and license information. Please refer
+//    to the file deal.II/doc/license.html for the  text  and
+//    further information on this license.
+//
+//---------------------------------------------------------------------------
+#ifndef __deal2__integrators_laplace_h
+#define __deal2__integrators_laplace_h
+
+
+#include <base/config.h>
+#include <base/exceptions.h>
+#include <base/quadrature.h>
+#include <lac/full_matrix.h>
+#include <fe/mapping.h>
+#include <fe/fe_values.h>
+
+DEAL_II_NAMESPACE_OPEN
+
+namespace LocalIntegrators
+{
+/**
+ * @brief Local integrators related to the Laplacian and its DG formulations
+ *
+ * @author Guido Kanschat
+ * @date 2010
+ */
+  namespace Laplace
+  {
+  }
+}
+
+
+DEAL_II_NAMESPACE_CLOSE
+
+#endif
diff --git a/deal.II/deal.II/include/integrators/local_integrators.h b/deal.II/deal.II/include/integrators/local_integrators.h
new file mode 100644 (file)
index 0000000..da70499
--- /dev/null
@@ -0,0 +1,58 @@
+//---------------------------------------------------------------------------
+//    $Id$
+//    Version: $Name$
+//
+//    Copyright (C) 2010 by the deal.II authors
+//
+//    This file is subject to QPL and may not be  distributed
+//    without copyright and license information. Please refer
+//    to the file deal.II/doc/license.html for the  text  and
+//    further information on this license.
+//
+//---------------------------------------------------------------------------
+#ifndef __deal2__integrators_local_integrators_h
+#define __deal2__integrators_local_integrators_h
+
+// This file only provides definition and documentation of the
+// namespace LocalIntegrators. There is no necessity to include it
+// anywhere in a C++ code. Only doxygen will make use of it.
+
+#include <base/config.h>
+
+DEAL_II_NAMESPACE_OPEN
+
+
+/**
+ * @brief Library of integrals over cells and faces
+ *
+ * This namespace contains application specific local integrals for
+ * bilinear forms, forms and error estimates. It is a collection of
+ * functions organized into namespaces devoted to certain
+ * applications. For instance, the namespace Laplace contains
+ * functions for computing cell matrices and cell residuals for the
+ * Laplacian operator, as well as functions for the weak boundary
+ * conditions by Nitsche or the interior penalty discontinuous
+ * Galerkin method. The namespace Maxwell would do the same for
+ * curl-curl type problems.
+ *
+ * There is a namespace Differential containing general
+ * first order differential operators like divergence, gradient and
+ * curl, and their traces on faces.
+ *
+ * The namespace L2 contains functions for mass matrices and
+ * <i>L<sup>2</sup></i>-inner products.
+ *
+ * <h3>Signature of functions</h3>
+ *
+ * Functions in this namespace follow a generic signature. In the
+ * simplest case, you have two related functions
+ * \begin{code}
+ * \end{code} 
+ */
+namespace LocalIntegrators
+{
+}
+
+DEAL_II_NAMESPACE_CLOSE
+
+#endif
index 20b4557775bda7529bfdee0ba346766b9d28bd36..d1a395fae557b6e96d379c82b8e7b2bbbdc7ffe9 100644 (file)
  *
  * For the purpose of a discretization, blocks are the better concept to use
  * since it is not always possible to address individual components of a
- * solution. This is, in particular, the case for non-@ref GlossPrimitive
- * "primitive" elements. Take for instance the solution of the mixed Laplacian
+ * solution. This is, in particular, the case for non-@ref
+ * GlossPrimitive "primitive"
+ * elements. Take for instance the solution of the mixed Laplacian
  * system with the FE_RaviartThomas element (see step-20). There, the first
  * <tt>dim</tt> components are the directional velocities. Since the shape
  * functions are linear combinations of those, these <tt>dim</tt> components
diff --git a/deal.II/doc/doxygen/headers/integrators.h b/deal.II/doc/doxygen/headers/integrators.h
new file mode 100644 (file)
index 0000000..11f44a9
--- /dev/null
@@ -0,0 +1,49 @@
+//-------------------------------------------------------------------------
+//    $Id$
+//    Version: $Name$
+//
+//    Copyright (C) 2010 by the deal.II authors
+//
+//    This file is subject to QPL and may not be  distributed
+//    without copyright and license information. Please refer
+//    to the file deal.II/doc/license.html for the  text  and
+//    further information on this license.
+//
+//-------------------------------------------------------------------------
+
+/**
+ * @defgroup Integrators
+ *
+ * A collection of namespaces and functions which simplify the coding
+ * of forms and bilinear forms on finite element spaces.
+ *
+ * <h3>Integration on finite element meshes</h3>
+ *
+ * When we integrate a function or a functional on a finite element
+ * space, the structure of the integration loop is always the same. We
+ * have between 3 and 5 nested loops, from outside to inside:
+ * <ol>
+ * <li> Loop over all cells
+ * <li> Optionally, loop over all faces to compute fluxes
+ * <li> Loop over all quadrature points of the cell/face
+ * <li> Optionally, loop over all test functions to compute forms
+ * <li> Optionally, loop over all trial functions to compute bilinear
+ * forms
+ * </ol>
+ *
+ * These loops naturally fall into two classes, namely the computation
+ * of cell and face contributions (loops 3 to 5), and the outer loops
+ * over the mesh objects, often referred to as <em>assembling</em>.
+ *
+ * Support for the outer loop in deal.II can be found in the namespace
+ * MeshWorker (see the documentation there). In order to support the
+ * cell and face contributions (referred to as local contributions
+ * from now on), deal.II offers FEValuesBase and its derived
+ * classes. While the outer loop is generic (with exception of the
+ * data types), the computation of local contributions is problem
+ * dependent. Therefore, no generic algorithm is possible
+ * here. Nevertheless, we can define a generic interface for functions
+ * for this purpose and provide a library of local integrators for use
+ * in applications. These are collected in the namespace
+ * LocalIntegrators
+ */
index 76cd8bbf93007780f47d9438e91b5861fa945a73..c23e4d46fdcefaffc8508d37d005cc7fff451ff9 100644 (file)
@@ -19,4 +19,6 @@
  * loops over all cells and faces.
  * All classes and functions of this module are in the MeshWorker
  * namespace, which also contains documentation on the usage.
+ *
+ * @ingroup Integrators
  */

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.