version 3.11-dev
Loading...
Searching...
No Matches
pq1nonconforming/fegriddiscretization.hh
Go to the documentation of this file.
1// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
2// vi: set et ts=4 sw=4 sts=4:
3//
4// SPDX-FileCopyrightText: Copyright © DuMux Project contributors, see AUTHORS.md in root folder
5// SPDX-License-Identifier: GPL-3.0-or-later
6//
12#ifndef DUMUX_DISCRETIZATION_FACECENTERED_PQ1NONCONFORMING_FE_GRID_DISCRETIZATION_HH
13#define DUMUX_DISCRETIZATION_FACECENTERED_PQ1NONCONFORMING_FE_GRID_DISCRETIZATION_HH
14
21
22#include "dofhelper.hh"
23
24namespace Dumux::Experimental {
25
30template<class GridView,
31 class ElementRule = Dumux::QuadratureRules::DuneQuadrature<2>,
32 class IntersectionRule = Dumux::QuadratureRules::DuneQuadrature<2>,
33 class BoundaryFaceRule = Dumux::QuadratureRules::DuneQuadrature<2>>
35{
36 using ElementQuadratureRule = ElementRule;
37 using IntersectionQuadratureRule = IntersectionRule;
38 using BoundaryFaceQuadratureRule = BoundaryFaceRule;
39};
40
45template<class GridView>
47{
48 using DofMapper = Dune::MultipleCodimMultipleGeomTypeMapper<GridView>;
49
51 static Dune::MCMGLayout layout()
52 {
53 return Dune::mcmgLayout(Dune::Codim<1>{});
54 }
55};
56
63template<class GridView,
64 class Scalar,
65 class MapperTraits = PQ1NonconformingFEMapperTraits<GridView>,
66 class QuadratureTraits = PQ1NonconformingFEQuadratureTraits<GridView>>
68: public MapperTraits, public QuadratureTraits
69{
73
74 template<class GridDiscretization, bool enableCache>
76
77 // maximum number of dofs per element: 2*dim faces for hypercubes
78 static constexpr std::size_t maxNumElementDofs = 2 * GridView::dimension;
79};
80
86template<class Scalar,
87 class GV,
88 bool enableCaching = true,
91
92} // end namespace Dumux::Experimental
93
94#endif
Default class for the local finite element discretization. All schemes share the same structure....
Definition feelementdiscretization.hh:41
Default class for finite element grid discretizations.
Definition fem/fegriddiscretization.hh:42
Definition nonconformingfecache.hh:29
Helper class providing degree of freedom information for the PQ1 nonconforming scheme....
Definition pq1nonconforming/dofhelper.hh:30
Defines the default element and vertex mapper types.
Default class for the local finite element discretization. All schemes share the same structure....
Default class for finite element grid discretizations.
The available discretization methods in Dumux.
CVFE< CVFEMethods::CR_RT > PQ1Nonconforming
Definition method.hh:114
Definition assembly/assembler.hh:44
FEGridDiscretization< GV, Traits > PQ1NonconformingFEGridDiscretization
Finite element grid discretization for the PQ1 non-conforming (face-centered) method....
Definition pq1nonconforming/fegriddiscretization.hh:90
A finite element cache for the non-conforming FE spaces RT and CR.
Helper class providing degree of freedom information for the PQ1 nonconforming scheme.
Quadrature rules over sub-control volumes and sub-control volume faces.
Definition defaultmappertraits.hh:23
The default traits for the PQ1 non-conforming (face-centered) finite element grid discretization.
Definition pq1nonconforming/fegriddiscretization.hh:69
DiscretizationMethods::PQ1Nonconforming DiscretizationMethod
Definition pq1nonconforming/fegriddiscretization.hh:70
static constexpr std::size_t maxNumElementDofs
Definition pq1nonconforming/fegriddiscretization.hh:78
Dumux::NonconformingFECache< typename GridView::ctype, Scalar, GridView::dimension > FeCache
Definition pq1nonconforming/fegriddiscretization.hh:71
Dumux::PQ1NonconformingDofHelper< GridView > DofHelper
Definition pq1nonconforming/fegriddiscretization.hh:72
FEElementDiscretization< GridDiscretization, enableCache > LocalView
Definition pq1nonconforming/fegriddiscretization.hh:75
Mapper traits for the PQ1 non-conforming (face-centered) FE discretization (face/codim-1 dofs only).
Definition pq1nonconforming/fegriddiscretization.hh:47
static Dune::MCMGLayout layout()
layout: only faces (codim == 1), matching the PQ1 non-conforming FE spaces
Definition pq1nonconforming/fegriddiscretization.hh:51
Dune::MultipleCodimMultipleGeomTypeMapper< GridView > DofMapper
Definition pq1nonconforming/fegriddiscretization.hh:48
Quadrature rule traits for the PQ1 non-conforming (face-centered) FE discretization.
Definition pq1nonconforming/fegriddiscretization.hh:35
BoundaryFaceRule BoundaryFaceQuadratureRule
Definition pq1nonconforming/fegriddiscretization.hh:38
ElementRule ElementQuadratureRule
Definition pq1nonconforming/fegriddiscretization.hh:36
IntersectionRule IntersectionQuadratureRule
Definition pq1nonconforming/fegriddiscretization.hh:37