dune-pdelab  2.5-dev
variablefactories.hh
Go to the documentation of this file.
1 // -*- tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2 // vi: set et ts=8 sw=2 sts=2:
3 
4 #ifndef DUNE_PDELAB_LOCALOPERATOR_VARIABLEFACTORIES_HH
5 #define DUNE_PDELAB_LOCALOPERATOR_VARIABLEFACTORIES_HH
6 
7 #include <vector>
8 
9 namespace Dune {
10  namespace PDELab {
11 
13  template<typename LFS>
14  std::vector<typename LFS::Traits::FiniteElementType::Traits::LocalBasisType::Traits::RangeType>
15  makeValueContainer (const LFS& lfs)
16  {
17  return std::vector<typename LFS::Traits::FiniteElementType::Traits::LocalBasisType::Traits::RangeType>(lfs.size());
18  }
19 
21  template<typename LFS>
22  std::vector<typename LFS::Traits::FiniteElementType::Traits::LocalBasisType::Traits::JacobianType>
23  makeJacobianContainer (const LFS& lfs)
24  {
25  return std::vector<typename LFS::Traits::FiniteElementType::Traits::LocalBasisType::Traits::JacobianType>(lfs.size());
26  }
27 
29  template<typename LFS>
30  typename LFS::Traits::FiniteElementType::Traits::LocalBasisType::Traits::RangeFieldType
31  makeZeroBasisFieldValue (const LFS& lfs)
32  {
33  typename LFS::Traits::FiniteElementType::Traits::LocalBasisType::Traits::RangeFieldType x(0.0);
34  return x;
35  }
36 
38  template<typename LFS>
39  typename LFS::Traits::FiniteElementType::Traits::LocalBasisType::Traits::RangeType
40  makeZeroBasisValue (const LFS& lfs)
41  {
42  typename LFS::Traits::FiniteElementType::Traits::LocalBasisType::Traits::RangeType x(0.0);
43  return x;
44  }
45 
47  template<typename LFS>
48  typename LFS::Traits::FiniteElementType::Traits::LocalBasisType::Traits::JacobianType
49  makeZeroJacobianValue (const LFS& lfs)
50  {
51  typename LFS::Traits::FiniteElementType::Traits::LocalBasisType::Traits::JacobianType x(0.0);
52  return x;
53  }
54  }
55 }
56 
57 #endif // DUNE_PDELAB_LOCALOPERATOR_VARIABLEFACTORIES_HH
LFS::Traits::FiniteElementType::Traits::LocalBasisType::Traits::JacobianType makeZeroJacobianValue(const LFS &lfs)
return a zero value of JacobianType of the basis
Definition: variablefactories.hh:49
For backward compatibility – Do not use this!
Definition: adaptivity.hh:27
std::vector< typename LFS::Traits::FiniteElementType::Traits::LocalBasisType::Traits::RangeType > makeValueContainer(const LFS &lfs)
return a container for basis evaluations
Definition: variablefactories.hh:15
std::vector< typename LFS::Traits::FiniteElementType::Traits::LocalBasisType::Traits::JacobianType > makeJacobianContainer(const LFS &lfs)
return a container for Jacobian evaluations
Definition: variablefactories.hh:23
LFS::Traits::FiniteElementType::Traits::LocalBasisType::Traits::RangeFieldType makeZeroBasisFieldValue(const LFS &lfs)
return a zero value of RangeFieldType of the basis
Definition: variablefactories.hh:31
LFS::Traits::FiniteElementType::Traits::LocalBasisType::Traits::RangeType makeZeroBasisValue(const LFS &lfs)
return a zero value of RangeType of the basis
Definition: variablefactories.hh:40