From 7721ac59c0690f8934bf2b35f18b8de65c79d8f2 Mon Sep 17 00:00:00 2001 From: kanschat Date: Wed, 27 Feb 2013 14:52:27 +0000 Subject: [PATCH] add missing quadrature weight and some documentation git-svn-id: https://svn.dealii.org/trunk@28610 0785d39b-7218-0410-832d-ea1e28bc413d --- .../include/deal.II/integrators/divergence.h | 45 +++++++++++++++++-- 1 file changed, 42 insertions(+), 3 deletions(-) diff --git a/deal.II/include/deal.II/integrators/divergence.h b/deal.II/include/deal.II/integrators/divergence.h index c7a00ec256..1b08d4bb3c 100644 --- a/deal.II/include/deal.II/integrators/divergence.h +++ b/deal.II/include/deal.II/integrators/divergence.h @@ -1,7 +1,7 @@ //--------------------------------------------------------------------------- // $Id$ // -// Copyright (C) 2010, 2011, 2012 by the deal.II authors +// Copyright (C) 2010, 2011, 2012, 2013 by the deal.II authors // // This file is subject to QPL and may not be distributed // without copyright and license information. Please refer @@ -71,6 +71,9 @@ namespace LocalIntegrators * This is the strong divergence operator and the trial * space should be at least Hdiv. The test functions * may be discontinuous. + * + * @author Guido Kanschat + * @date 2011 */ template void cell_matrix ( @@ -114,6 +117,9 @@ namespace LocalIntegrators * * The function cell_matrix() is the Frechet derivative of this function with respect * to the test functions. + * + * @author Guido Kanschat + * @date 2011 */ template void cell_residual( @@ -145,6 +151,9 @@ namespace LocalIntegrators * This is the strong gradient and the trial space * should be at least in H1. The test functions can * be discontinuous. + * + * @author Guido Kanschat + * @date 2011 */ template void gradient_matrix( @@ -188,6 +197,9 @@ namespace LocalIntegrators * may be discontinuous. * * The function cell_residual() is the Frechet derivative of this function with respect to the test functions. + * + * @author Guido Kanschat + * @date 2011 */ template void gradient_residual( @@ -216,6 +228,9 @@ namespace LocalIntegrators * normal component of the vector valued trial space and the test * space. * @f[ \int_F (\mathbf u\cdot \mathbf n) v \,ds @f] + * + * @author Guido Kanschat + * @date 2011 */ template void @@ -254,6 +269,9 @@ namespace LocalIntegrators * @f[ * \int_F (\mathbf u\cdot \mathbf n) v \,ds * @f] + * + * @author Guido Kanschat + * @date 2011 */ template void @@ -291,6 +309,9 @@ namespace LocalIntegrators * @f[ * \int_F (\mathbf u_1\cdot \mathbf n_1 + \mathbf u_2 \cdot \mathbf n_2) \frac{v_1+v_2}{2} \,ds * @f] + * + * @author Guido Kanschat + * @date 2011 */ template void @@ -346,6 +367,9 @@ namespace LocalIntegrators * @f[ * \int_Z \nabla\!\cdot\!u \nabla\!\cdot\!v \,dx * @f] + * + * @author Guido Kanschat + * @date 2011 */ template void grad_div_matrix ( @@ -386,6 +410,9 @@ namespace LocalIntegrators * (\mathbf v_1\cdot \mathbf n_1 + \mathbf v_2 \cdot \mathbf n_2) * \,ds * @f] + * + * @author Guido Kanschat + * @date 2011 */ template void @@ -430,7 +457,19 @@ namespace LocalIntegrators } } } - + + /** + * The L2-norm of the divergence over the + * quadrature set determined by the FEValuesBase object. + * + * The vector is expected to consist of dim vectors of length + * equal to the number of quadrature points. The number of + * components of the finite element has to be equal to the space + * dimension. + * + * @author Guido Kanschat + * @date 2013 + */ template double norm(const FEValuesBase &fe, const VectorSlice > > > &Du) @@ -446,7 +485,7 @@ namespace LocalIntegrators double div = Du[0][k][0]; for (unsigned int d=1; d