From 0ac61d179a61cfc679bed52d812ea0f409cd2c7c Mon Sep 17 00:00:00 2001 From: kanschat Date: Mon, 13 Sep 2010 04:15:53 +0000 Subject: [PATCH] remove files superceded by general version git-svn-id: https://svn.dealii.org/trunk@21935 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/deal.II/source/fe/fe_nedelec_1d.cc | 51 ----- deal.II/deal.II/source/fe/fe_nedelec_2d.cc | 136 ------------ deal.II/deal.II/source/fe/fe_nedelec_3d.cc | 239 --------------------- 3 files changed, 426 deletions(-) delete mode 100644 deal.II/deal.II/source/fe/fe_nedelec_1d.cc delete mode 100644 deal.II/deal.II/source/fe/fe_nedelec_2d.cc delete mode 100644 deal.II/deal.II/source/fe/fe_nedelec_3d.cc diff --git a/deal.II/deal.II/source/fe/fe_nedelec_1d.cc b/deal.II/deal.II/source/fe/fe_nedelec_1d.cc deleted file mode 100644 index 1c5b27b1c1..0000000000 --- a/deal.II/deal.II/source/fe/fe_nedelec_1d.cc +++ /dev/null @@ -1,51 +0,0 @@ -//--------------------------------------------------------------------------- -// $Id$ -// Version: $Name$ -// -// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2008 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. -// -//--------------------------------------------------------------------------- - - - -// only compile this file if in 1d. note that Nedelec elements do not -// make much sense in 1d anyway, so this file only contains dummy -// implementations to avoid linker errors due to missing symbols -#if deal_II_dimension == 1 - - -#include - -DEAL_II_NAMESPACE_OPEN - -template <> -const double * const -FE_Nedelec<1>::Matrices::embedding[][GeometryInfo<1>::max_children_per_cell] = -{{0}}; - - -template <> -const unsigned int -FE_Nedelec<1>::Matrices::n_embedding_matrices = 0; - - - -// No constraints in 1d -template <> -const unsigned int -FE_Nedelec<1>::Matrices::n_constraint_matrices = 0; - - -template <> -const double * const -FE_Nedelec<1>::Matrices::constraint_matrices[] = {0}; - -DEAL_II_NAMESPACE_CLOSE - -#endif // #if deal_II_dimension == 1 - diff --git a/deal.II/deal.II/source/fe/fe_nedelec_2d.cc b/deal.II/deal.II/source/fe/fe_nedelec_2d.cc deleted file mode 100644 index 5b30aadf17..0000000000 --- a/deal.II/deal.II/source/fe/fe_nedelec_2d.cc +++ /dev/null @@ -1,136 +0,0 @@ -//--------------------------------------------------------------------------- -// $Id$ -// Version: $Name$ -// -// Copyright (C) 2002, 2003, 2005, 2006, 2008 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. -// -//--------------------------------------------------------------------------- - - -// only compile this file if in 2d -#if deal_II_dimension == 2 - - -#include - -DEAL_II_NAMESPACE_OPEN - -// Transfer matrices for finite elements: have one matrix for each of -// the four child cells which tells us how the degrees of freedom on -// the child cell are obtained from the degrees of freedom on the -// mother cell -// -// note the following: since the shape functions themselves and not -// only the gradients are transformed using the mapping object from -// the unit cell to the real cell, the actual values of the function -// on the real cell is degree of freedom times value of the shape -// function on the unit cell times inverse Jacobian. Thus, what has -// the DoF value 1 on the mother cell must have the DoF value 1/2 on -// the child cell since the latter is smaller by a (linear scaling) -// factor of two. -namespace FE_Nedelec_2d -{ - static const double q1_into_q1_refined_0[] = - { - 0.5, 0, 0, 0, - 0.25, 0.25, 0, 0, - 0, 0, 0.5, 0, - 0, 0, 0.25, 0.25 - }; - - static const double q1_into_q1_refined_1[] = - { - 0.25, 0.25, 0, 0, - 0, 0.5, 0, 0, - 0, 0, 0.5, 0, - 0, 0, 0.25, 0.25 - }; - - static const double q1_into_q1_refined_2[] = - { - 0.5, 0, 0, 0, - 0.25, 0.25, 0, 0, - 0, 0, 0.25, 0.25, - 0, 0, 0, 0.5 - }; - - static const double q1_into_q1_refined_3[] = - { - 0.25, 0.25, 0, 0, - 0, 0.5, 0, 0, - 0, 0, 0.25, 0.25, - 0, 0, 0, 0.5 - }; -} // namespace FE_Nedelec_2d - - -// embedding matrices - -template <> -const double * const -FE_Nedelec<2>::Matrices::embedding[][GeometryInfo<2>::max_children_per_cell] = -{ - { FE_Nedelec_2d::q1_into_q1_refined_0, FE_Nedelec_2d::q1_into_q1_refined_1, - FE_Nedelec_2d::q1_into_q1_refined_2, FE_Nedelec_2d::q1_into_q1_refined_3 } -}; - - -template <> -const unsigned int -FE_Nedelec<2>::Matrices::n_embedding_matrices -= sizeof(FE_Nedelec<2>::Matrices::embedding) / -sizeof(FE_Nedelec<2>::Matrices::embedding[0]); - - -// Constraint matrices: how do the new value on child faces depend on -// the values on the mother face if that face has a hanging node -// -// Here, the same applies as for the embedding matrices: since the DoF -// values are not only multiplied by the values of the shape function -// on the unit cell, but also by the transformation, we have to -// multiply the value on the large face by 1/2 to get the same value -// back on the small face. in other words, if a DoF has weight 1 on -// the big cell, then it has to have weight 1/2 on the small ones, in -// order to give the same value of the shape function in real space -namespace FE_Nedelec_2d -{ - static const double constraint_q1[] = - { - // the function is constant - // along each edge, so each - // degree of freedom on the - // refined edge has the same - // value as that on the - // coarse edge, modulo the - // issue with the - // transformation described - // above - 1./2., 1./2. - }; - -} - - -template <> -const double * const -FE_Nedelec<2>::Matrices::constraint_matrices[] = -{ - FE_Nedelec_2d::constraint_q1 -}; - - -template <> -const unsigned int -FE_Nedelec<2>::Matrices::n_constraint_matrices -= sizeof(FE_Nedelec<2>::Matrices::constraint_matrices) / -sizeof(FE_Nedelec<2>::Matrices::constraint_matrices[0]); - - -DEAL_II_NAMESPACE_CLOSE - -#endif // #if deal_II_dimension == 2 diff --git a/deal.II/deal.II/source/fe/fe_nedelec_3d.cc b/deal.II/deal.II/source/fe/fe_nedelec_3d.cc deleted file mode 100644 index 0943d8f9fe..0000000000 --- a/deal.II/deal.II/source/fe/fe_nedelec_3d.cc +++ /dev/null @@ -1,239 +0,0 @@ -//--------------------------------------------------------------------------- -// $Id$ -// Version: $Name$ -// -// Copyright (C) 2002, 2003, 2005, 2006, 2008 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. -// -//--------------------------------------------------------------------------- - -// Transfer matrices for finite elements - - -// only compile this file if in 3d -#if deal_II_dimension == 3 - -#include - -DEAL_II_NAMESPACE_OPEN - - -// Transfer matrices for finite elements: have one matrix for each of -// the four child cells which tells us how the degrees of freedom on -// the child cell are obtained from the degrees of freedom on the -// mother cell -// -// note the following: since the shape functions themselves and not -// only the gradients are transformed using the mapping object from -// the unit cell to the real cell, the actual values of the function -// on the real cell is degree of freedom times value of the shape -// function on the unit cell times Jacobian. Thus, what has the DoF -// value 1 on the mother cell must have the DoF value 2 on the child -// cell since the latter is smaller by a (linear scaling) factor of -// two. -namespace FE_Nedelec_3d -{ - static const double q1_into_q1_refined_0[] = - { - 0.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.25, 0.25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0.25, 0.25, 0, 0, 0, 0, 0, 0, 0, 0, - 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, 0, 0, 0, - 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, 0, 0, - 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, 0, - 0, 0, 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.5, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0.25, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0, 0.25, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.125,0.125,0.125,0.125 - }; - - static const double q1_into_q1_refined_1[] = - { - 0.25, 0.25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0.25, 0.25, 0, 0, 0, 0, 0, 0, 0, 0, - 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, 0, 0, - 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, 0, 0, - 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, 0, - 0, 0, 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0.25, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.5, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.125,0.125,0.125,0.125, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0, 0.25 - }; - - static const double q1_into_q1_refined_2[] = - { - 0.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.25, 0.25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0.25, 0.25, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0.5, 0, 0, 0, 0, 0, 0, 0, 0, - 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, 0, 0, 0, - 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, 0, 0, - 0, 0, 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, - 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0, 0.25, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.125,0.125,0.125,0.125, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.5, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0.25 - }; - - static const double q1_into_q1_refined_3[] = - { - 0.25, 0.25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0.25, 0.25, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0.5, 0, 0, 0, 0, 0, 0, 0, 0, - 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, 0, 0, - 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, 0, 0, - 0, 0, 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, - 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.125,0.125,0.125,0.125, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0, 0.25, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0.25, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.5 - }; - - static const double q1_into_q1_refined_4[] = - { - 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, 0, 0, 0, - 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, 0, 0, - 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, 0, - 0, 0, 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, - 0, 0, 0, 0, 0.5, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0.25, 0.25, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0.5, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0.25, 0.25, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.5, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0.25, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0, 0.25, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.125,0.125,0.125,0.125 - }; - - static const double q1_into_q1_refined_5[] = - { - 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, 0, 0, - 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, 0, 0, - 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, 0, - 0, 0, 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, - 0, 0, 0, 0, 0.25, 0.25, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0.5, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0.5, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0.25, 0.25, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0.25, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.5, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.125,0.125,0.125,0.125, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0, 0.25 - }; - - static const double q1_into_q1_refined_6[] = - { - 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, 0, 0, 0, - 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, 0, 0, - 0, 0, 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, - 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, - 0, 0, 0, 0, 0.5, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0.25, 0.25, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0.25, 0.25, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0.5, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0, 0.25, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.125,0.125,0.125,0.125, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.5, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0.25 - }; - - static const double q1_into_q1_refined_7[] = - { - 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, 0, 0, - 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, 0, 0, - 0, 0, 0.125,0.125,0, 0, 0.125,0.125,0, 0, 0, 0, - 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0, - 0, 0, 0, 0, 0.25, 0.25, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0.5, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0.25, 0.25, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0.5, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0.125,0.125,0.125,0.125, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0, 0.25, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0.25, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.5 - }; - -} // namespace FE_Nedelec_3d - - -// embedding matrices - -template <> -const double * const -FE_Nedelec<3>::Matrices::embedding[][GeometryInfo<3>::max_children_per_cell] = -{ - { FE_Nedelec_3d::q1_into_q1_refined_0, FE_Nedelec_3d::q1_into_q1_refined_1, - FE_Nedelec_3d::q1_into_q1_refined_2, FE_Nedelec_3d::q1_into_q1_refined_3, - FE_Nedelec_3d::q1_into_q1_refined_4, FE_Nedelec_3d::q1_into_q1_refined_5, - FE_Nedelec_3d::q1_into_q1_refined_6, FE_Nedelec_3d::q1_into_q1_refined_7 } -}; - - -template <> -const unsigned int -FE_Nedelec<3>::Matrices::n_embedding_matrices -= sizeof(FE_Nedelec<3>::Matrices::embedding) / -sizeof(FE_Nedelec<3>::Matrices::embedding[0]); - - - -// Constraint matrices: how do the new value on child faces depend on -// the values on the mother face if that face has a hanging node -// -// Here, the same applies as for the embedding matrices: since the DoF -// values are not only multiplied by the values of the shape function -// on the unit cell, but also by the transformation, we have to -// multiply the value on the large face by 1/2 to get the same value -// back on the small face -namespace FE_Nedelec_3d -{ - static const double constraint_q1[] = - { - .25, .25, 0, 0, // first the four interior lines - .25, .25, 0, 0, - 0, 0, .25, .25, - 0, 0, .25, .25, - .5, 0, 0, 0, // then the two child lines of each of the four outer - .5, 0, 0, 0, // ones. since the shape functions are constant on each - 0, .5, 0, 0, // line, the two child lines get the same weights, modulo - 0, .5, 0, 0, // the issue with the division by length scaling - 0, 0, .5, 0, - 0, 0, .5, 0, - 0, 0, 0, .5, - 0, 0, 0, .5 - }; -} - - - -template <> -const double * const -FE_Nedelec<3>::Matrices::constraint_matrices[] = -{ - FE_Nedelec_3d::constraint_q1 -}; - - - -template <> -const unsigned int -FE_Nedelec<3>::Matrices::n_constraint_matrices -= sizeof(FE_Nedelec<3>::Matrices::constraint_matrices) / -sizeof(FE_Nedelec<3>::Matrices::constraint_matrices[0]); - - -DEAL_II_NAMESPACE_CLOSE - -#endif // #if deal_II_dimension == 3 -- 2.39.5