//---------------------------------------------------------------------------
// $Id$
-// Version: $Name$
//
// Copyright (C) 2004, 2005, 2006, 2010 by the deal.II authors
//
#include <vector>
DEAL_II_NAMESPACE_OPEN
-/**
- * @addtogroup Polynomials
- * @{
- */
/**
* This class implements the <i>H<sup>div</sup></i>-conforming,
* Q<sub>k,k+2</sub>)</i> and <i>(Q<sub>k+2,k,k</sub>,
* Q<sub>k,k+2,k</sub>, Q<sub>k,k,k+2</sub>)</i> in 2D and 3D, resp.
*
- * @author Oliver Kayser-Herold, 2006 based on code from Guido Kanschat
+ * @ingroup Polynomials
+ * @author Oliver Kayser-Herold, based on code from Guido Kanschat
+ * @date 2006
*/
template <int dim>
class PolynomialsABF
*/
unsigned int degree () const;
+ /**
+ * Return the name of the space ,
+ * which is <tt>ABF</tt>.
+ */
+ std::string name () const;
+
/**
* Return the number of
* polynomials in the space
mutable std::vector<Tensor<2,dim> > p_grad_grads;
};
-/** @} */
template <int dim>
inline unsigned int
return n_pols;
}
+
template <int dim>
inline unsigned int
PolynomialsABF<dim>::degree() const
{
return my_degree;
}
+
+
+template <int dim>
+inline std::string
+PolynomialsABF<dim>::name() const
+{
+ return "ABF";
+}
+
+
DEAL_II_NAMESPACE_CLOSE
#endif
//---------------------------------------------------------------------------
// $Id$
-// Version: $Name$
//
// Copyright (C) 2004, 2005, 2006, 2009, 2010 by the deal.II authors
//
DEAL_II_NAMESPACE_OPEN
-/**
- * @addtogroup Polynomials
- * @{
- */
-
/**
* This class implements the <i>H<sup>div</sup></i>-conforming,
* vector-valued Brezzi-Douglas-Marini polynomials as described in the
*
* @todo Second derivatives in 3D are missing.
*
- * @author Guido Kanschat, 2003, 2005, 2009
+ * @ingroup Polynomials
+ * @author Guido Kanschat
+ * @date 2003, 2005, 2009
*/
template <int dim>
class PolynomialsBDM
*/
unsigned int degree () const;
+ /**
+ * Return the name of the space ,
+ * which is <tt>BDM</tt>.
+ */
+ std::string name () const;
+
/**
* Return the number of
* polynomials in the space
mutable std::vector<Tensor<2,dim> > p_grad_grads;
};
-/** @} */
template <int dim>
inline unsigned int
return n_pols;
}
+
template <int dim>
inline unsigned int
PolynomialsBDM<dim>::degree() const
{
return polynomial_space.degree();
}
+
+
+template <int dim>
+inline std::string
+PolynomialsBDM<dim>::name() const
+{
+ return "BDM";
+}
+
+
DEAL_II_NAMESPACE_CLOSE
#endif
//---------------------------------------------------------------------------
-// $Id: polynomial.cc 21932 2010-09-12 09:03:07Z buerg $
-// Version: $Name$
+// $Id: polynomial.cc 21932 2010-09-12 09:03:07Z buerg $
//
// Copyright (C) 2010 by the deal.II authors
//
#include <vector>
DEAL_II_NAMESPACE_OPEN
-/**
- * @addtogroup Polynomials
- * @{
- */
/**
- * This class implements the <i>H<sup>curl</sup></i>-conforming,
- * vector-valued Nédélec polynomials as proposed in the book of
- * P. Solin, K. Segeth and I. Dolezel.
+ * This class implements the first family <i>H<sup>curl</sup></i>-conforming,
+ * vector-valued polynomials, proposed by J.-C. Nédélec in 1980
+ * (Numer. Math. 35).
*
* The Nédélec polynomials are constructed such that the curl
* is in the tensor product polynomial space <i>Q<sub>k</sub></i>.
* Q<sub>k+1,k</sub>)</i> and <i>(Q<sub>k,k+1,k+1</sub>,
* Q<sub>k+1,k,k+1</sub>, Q<sub>k+1,k+1,k</sub>)</i> in 2D and 3D, resp.
*
- * @author Markus Bürg, 2009
+ * @ingroup Polynomials
+ * @author Markus Bürg
+ * @date 2009, 2010
*/
template <int dim>
class PolynomialsNedelec
*/
unsigned int degree () const;
+ /**
+ * Return the name of the space ,
+ * which is <tt>Nedelec</tt>.
+ */
+ std::string name () const;
+
/**
* Return the number of
* polynomials in the space
static std::vector<std::vector< Polynomials::Polynomial< double > > > create_polynomials (const unsigned int k);
};
-/** @} */
template <int dim>
inline unsigned int PolynomialsNedelec<dim>::n () const
return n_pols;
}
+
template <int dim>
inline unsigned int PolynomialsNedelec<dim>::degree () const
{
return my_degree;
}
+
+
+template <int dim>
+inline std::string
+PolynomialsNedelec<dim>::name() const
+{
+ return "Nedelec";
+}
+
+
DEAL_II_NAMESPACE_CLOSE
#endif
//---------------------------------------------------------------------------
// $Id$
-// Version: $Name$
//
-// Copyright (C) 2004, 2005, 2006, 2007, 2008 by the deal.II authors
+// Copyright (C) 2004, 2005, 2006, 2007, 2008, 2010 by the deal.II authors
//
// This file is subject to QPL and may not be distributed
// without copyright and license information. Please refer
#include <vector>
DEAL_II_NAMESPACE_OPEN
-/**
- * @addtogroup Polynomials
- * @{
- */
/**
* This class implements the <i>H<sup>div</sup></i>-conforming,
* Q<sub>k,k+1</sub>)</i> and <i>(Q<sub>k+1,k,k</sub>,
* Q<sub>k,k+1,k</sub>, Q<sub>k,k,k+1</sub>)</i> in 2D and 3D, resp.
*
- * @author Guido Kanschat, 2005
+ * @ingroup Polynomials
+ * @author Guido Kanschat
+ * @date 2005
*/
template <int dim>
class PolynomialsRaviartThomas
* the highest polynomial degree.
*/
unsigned int degree () const;
+
+ /**
+ * Return the name of the space ,
+ * which is <tt>RaviartThomas</tt>.
+ */
+ std::string name () const;
/**
* Return the number of
create_polynomials (const unsigned int k);
};
-/** @} */
template <int dim>
inline unsigned int
return n_pols;
}
+
template <int dim>
inline unsigned int
PolynomialsRaviartThomas<dim>::degree() const
{
return my_degree;
}
+
+
+template <int dim>
+inline std::string
+PolynomialsRaviartThomas<dim>::name() const
+{
+ return "RaviartThomas";
+}
+
+
DEAL_II_NAMESPACE_CLOSE
#endif