GCC Code Coverage Report


Directory: ../../../builds/dumux-repositories/
File: dumux/dumux/discretization/cellcentered/tpfa/subcontrolvolumeface.hh
Date: 2025-04-12 19:19:20
Exec Total Coverage
Lines: 30 30 100.0%
Functions: 22 22 100.0%
Branches: 412 473 87.1%

Line Branch Exec Source
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 //
7 /*!
8 * \file
9 * \ingroup CCTpfaDiscretization
10 * \brief The sub control volume face
11 */
12 #ifndef DUMUX_DISCRETIZATION_CC_TPFA_SUBCONTROLVOLUMEFACE_HH
13 #define DUMUX_DISCRETIZATION_CC_TPFA_SUBCONTROLVOLUMEFACE_HH
14
15 #include <utility>
16 #include <vector>
17
18 #include <dune/common/reservedvector.hh>
19 #include <dune/geometry/type.hh>
20 #include <dune/geometry/multilineargeometry.hh>
21
22 #include <dumux/common/boundaryflag.hh>
23 #include <dumux/common/indextraits.hh>
24 #include <dumux/discretization/subcontrolvolumefacebase.hh>
25
26 namespace Dumux {
27
28 /*!
29 * \ingroup CCTpfaDiscretization
30 * \brief Default traits class to be used for the sub-control volume faces
31 * for the cell-centered finite volume scheme using TPFA
32 * \tparam GV the type of the grid view
33 */
34 template<class GridView>
35 struct CCTpfaDefaultScvfGeometryTraits
36 {
37 using Grid = typename GridView::Grid;
38
39 static constexpr int dim = Grid::dimension;
40 static constexpr int dimWorld = Grid::dimensionworld;
41
42 using Scalar = typename Grid::ctype;
43 using GridIndexType = typename IndexTraits<GridView>::GridIndex;
44 using LocalIndexType = typename IndexTraits<GridView>::LocalIndex;
45 using GridIndexStorage = typename std::conditional_t< (dim<dimWorld),
46 std::vector<GridIndexType>,
47 Dune::ReservedVector<GridIndexType, 2> >;
48
49 // we use geometry traits that use static corner vectors to and a fixed geometry type
50 template <class ct>
51 struct ScvfMLGTraits : public Dune::MultiLinearGeometryTraits<ct>
52 {
53 // we use static vectors to store the corners as we know
54 // the number of corners in advance (2^(dim-1) corners (1<<(dim-1))
55 template< int mydim, int cdim >
56 struct CornerStorage
57 {
58 using Type = Dune::ReservedVector< Dune::FieldVector< ct, cdim >, (1<<(dim-1)) >;
59 };
60 };
61
62 using Geometry = Dune::MultiLinearGeometry<Scalar, dim-1, dimWorld, ScvfMLGTraits<Scalar> >;
63 using CornerStorage = typename ScvfMLGTraits<Scalar>::template CornerStorage<dim-1, dimWorld>::Type;
64 using GlobalPosition = typename CornerStorage::value_type;
65 using BoundaryFlag = Dumux::BoundaryFlag<Grid>;
66 };
67
68 /*!
69 * \ingroup CCTpfaDiscretization
70 * \brief The sub control volume face
71 * \tparam GV the type of the grid view
72 * \tparam T the scvf geometry traits
73 */
74 template<class GV,
75 class T = CCTpfaDefaultScvfGeometryTraits<GV> >
76
2/16
✗ Branch 0 not taken.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✗ Branch 11 not taken.
✓ Branch 12 taken 24 times.
✗ Branch 13 not taken.
✓ Branch 14 taken 576 times.
✗ Branch 15 not taken.
3475252 class CCTpfaSubControlVolumeFace
77 : public SubControlVolumeFaceBase<CCTpfaSubControlVolumeFace<GV, T>, T>
78 {
79 using ThisType = CCTpfaSubControlVolumeFace<GV, T>;
80 using ParentType = SubControlVolumeFaceBase<ThisType, T>;
81 using GridIndexType = typename T::GridIndexType;
82 using Scalar = typename T::Scalar;
83 using CornerStorage = typename T::CornerStorage;
84 using GridIndexStorage = typename T::GridIndexStorage;
85 using BoundaryFlag = typename T::BoundaryFlag;
86
87 public:
88 //! export the type used for global coordinates
89 using GlobalPosition = typename T::GlobalPosition;
90 //! state the traits public and thus export all types
91 using Traits = T;
92
93 // the default constructor
94 CCTpfaSubControlVolumeFace() = default;
95
96 /*!
97 * \brief Constructor with intersection
98 *
99 * \param is The intersection
100 * \param isGeometry The geometry of the intersection
101 * \param scvfIndex The global index of this scv face
102 * \param scvIndices The inside/outside scv indices connected to this face
103 * \param isBoundary Bool to specify whether or not the scvf is on an interior or the domain boundary
104 */
105 template <class Intersection>
106
4/4
✓ Branch 0 taken 8158235 times.
✓ Branch 1 taken 8158235 times.
✓ Branch 2 taken 9127482 times.
✓ Branch 3 taken 9127482 times.
152099234 CCTpfaSubControlVolumeFace(const Intersection& is,
107 const typename Intersection::Geometry& isGeometry,
108 GridIndexType scvfIndex,
109 const GridIndexStorage& scvIndices,
110 bool isBoundary)
111 : ParentType()
112
4/4
✓ Branch 0 taken 8158235 times.
✓ Branch 1 taken 8158235 times.
✓ Branch 2 taken 9127482 times.
✓ Branch 3 taken 9127482 times.
152099234 , area_(isGeometry.volume())
113
6/6
✓ Branch 0 taken 34439378 times.
✓ Branch 1 taken 34439378 times.
✓ Branch 2 taken 9127504 times.
✓ Branch 3 taken 9127504 times.
✓ Branch 4 taken 18 times.
✓ Branch 5 taken 18 times.
152099234 , center_(isGeometry.center())
114 152099234 , unitOuterNormal_(is.centerUnitOuterNormal())
115 152099234 , scvfIndex_(scvfIndex)
116 152099234 , scvIndices_(scvIndices)
117 152099234 , boundary_(isBoundary)
118
2/5
✓ Branch 1 taken 3373358 times.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 0 taken 76426 times.
152099234 , boundaryFlag_{is}
119 117527800 {}
120
121 //! The center of the sub control volume face
122
0/4
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
19859248 const GlobalPosition& center() const
123 {
124
14/19
✓ Branch 0 taken 7873993 times.
✓ Branch 1 taken 12076543 times.
✓ Branch 3 taken 545347 times.
✓ Branch 4 taken 617602 times.
✓ Branch 5 taken 518204 times.
✓ Branch 6 taken 88249 times.
✓ Branch 8 taken 40109 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 76607 times.
✓ Branch 11 taken 40074 times.
✓ Branch 13 taken 36498 times.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
✓ Branch 16 taken 10 times.
✗ Branch 18 not taken.
✗ Branch 19 not taken.
✓ Branch 2 taken 706384 times.
✓ Branch 7 taken 40064 times.
✓ Branch 12 taken 40109 times.
185441664 return center_;
125 }
126
127 //! The integration point for flux evaluations in global coordinates
128 28903310 const GlobalPosition& ipGlobal() const
129 {
130 // Return center for now
131
36/40
✓ Branch 0 taken 6327675 times.
✓ Branch 1 taken 101109281 times.
✓ Branch 2 taken 493772 times.
✓ Branch 3 taken 8396705 times.
✓ Branch 4 taken 19683838 times.
✓ Branch 5 taken 31673782 times.
✓ Branch 6 taken 1122669 times.
✓ Branch 7 taken 20549455 times.
✓ Branch 8 taken 23101234 times.
✓ Branch 9 taken 1645120 times.
✓ Branch 10 taken 7633122 times.
✓ Branch 11 taken 22006080 times.
✓ Branch 12 taken 1425671 times.
✓ Branch 13 taken 355022 times.
✓ Branch 15 taken 426488 times.
✓ Branch 16 taken 6054240 times.
✓ Branch 17 taken 163076 times.
✓ Branch 18 taken 113261 times.
✓ Branch 20 taken 11731 times.
✓ Branch 21 taken 130257 times.
✓ Branch 23 taken 4936 times.
✓ Branch 24 taken 436 times.
✓ Branch 27 taken 96 times.
✓ Branch 28 taken 32 times.
✓ Branch 30 taken 372 times.
✗ Branch 31 not taken.
✓ Branch 32 taken 804 times.
✓ Branch 33 taken 220 times.
✓ Branch 34 taken 20 times.
✓ Branch 35 taken 40 times.
✗ Branch 36 not taken.
✓ Branch 37 taken 8 times.
✓ Branch 38 taken 15 times.
✓ Branch 39 taken 53 times.
✓ Branch 14 taken 601637 times.
✓ Branch 19 taken 27499 times.
✓ Branch 22 taken 225 times.
✗ Branch 25 not taken.
✗ Branch 26 not taken.
✓ Branch 29 taken 1860 times.
1118411191 return center_;
132 }
133
134 //! The area of the sub control volume face
135 1323318390 Scalar area() const
136 {
137
9/14
✓ Branch 0 taken 241461473 times.
✓ Branch 1 taken 20961922 times.
✓ Branch 3 taken 59215 times.
✓ Branch 4 taken 157558 times.
✓ Branch 5 taken 58766 times.
✓ Branch 6 taken 400 times.
✗ Branch 8 not taken.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 10 times.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✓ Branch 2 taken 268159542 times.
✓ Branch 7 taken 14322 times.
1138103949 return area_;
138 }
139
140 //! returns true if the sub control volume face is on the boundary
141 1985470219 bool boundary() const
142 {
143
50/52
✓ Branch 0 taken 126451528 times.
✓ Branch 1 taken 42855928 times.
✓ Branch 2 taken 10251200 times.
✓ Branch 3 taken 30753392 times.
✓ Branch 4 taken 156538969 times.
✓ Branch 5 taken 322448045 times.
✓ Branch 6 taken 301155024 times.
✓ Branch 7 taken 87006727 times.
✓ Branch 8 taken 329223453 times.
✓ Branch 9 taken 88938270 times.
✓ Branch 10 taken 46781732 times.
✓ Branch 11 taken 84247985 times.
✓ Branch 12 taken 60956098 times.
✓ Branch 13 taken 91037488 times.
✓ Branch 14 taken 58784458 times.
✓ Branch 15 taken 9866590 times.
✓ Branch 16 taken 36490707 times.
✓ Branch 17 taken 21724571 times.
✓ Branch 18 taken 10983945 times.
✓ Branch 19 taken 2589333 times.
✓ Branch 20 taken 66443102 times.
✓ Branch 21 taken 6180394 times.
✓ Branch 22 taken 3173175 times.
✓ Branch 23 taken 239022 times.
✓ Branch 24 taken 1014615 times.
✓ Branch 25 taken 250006 times.
✓ Branch 26 taken 27449025 times.
✓ Branch 27 taken 6114681 times.
✓ Branch 28 taken 27441861 times.
✓ Branch 29 taken 6402733 times.
✓ Branch 30 taken 110210 times.
✓ Branch 31 taken 1192996 times.
✓ Branch 32 taken 2378197 times.
✓ Branch 33 taken 597526 times.
✓ Branch 34 taken 1090793 times.
✓ Branch 35 taken 276401 times.
✓ Branch 36 taken 784 times.
✓ Branch 37 taken 3224 times.
✓ Branch 38 taken 158 times.
✓ Branch 39 taken 1448 times.
✓ Branch 40 taken 17792 times.
✓ Branch 41 taken 6435 times.
✓ Branch 42 taken 792 times.
✓ Branch 43 taken 1244 times.
✓ Branch 44 taken 14856 times.
✓ Branch 45 taken 5230 times.
✓ Branch 46 taken 2 times.
✓ Branch 47 taken 26 times.
✓ Branch 48 taken 90 times.
✗ Branch 49 not taken.
✓ Branch 50 taken 304 times.
✗ Branch 51 not taken.
2069492565 return boundary_;
144 }
145
146 //! The unit outer normal of the sub control volume face
147 167417365 const GlobalPosition& unitOuterNormal() const
148 {
149
6/8
✓ Branch 0 taken 11929326 times.
✓ Branch 1 taken 44768493 times.
✓ Branch 2 taken 19468025 times.
✓ Branch 3 taken 60012 times.
✓ Branch 4 taken 788 times.
✓ Branch 5 taken 124504 times.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
2964851840 return unitOuterNormal_;
150 }
151
152 //! index of the inside sub control volume
153 3406834887 GridIndexType insideScvIdx() const
154 {
155
68/70
✓ Branch 0 taken 6407255 times.
✓ Branch 1 taken 27581677 times.
✓ Branch 3 taken 55469109 times.
✓ Branch 4 taken 67852934 times.
✓ Branch 6 taken 36232861 times.
✓ Branch 7 taken 45909201 times.
✓ Branch 9 taken 17414796 times.
✓ Branch 10 taken 15348582 times.
✓ Branch 11 taken 30762087 times.
✓ Branch 12 taken 15972397 times.
✓ Branch 13 taken 30080317 times.
✓ Branch 14 taken 54007786 times.
✓ Branch 15 taken 64332711 times.
✓ Branch 16 taken 12056755 times.
✓ Branch 17 taken 293713 times.
✓ Branch 18 taken 22930296 times.
✓ Branch 19 taken 7395474 times.
✓ Branch 20 taken 4514431 times.
✓ Branch 22 taken 8789694 times.
✓ Branch 23 taken 5418637 times.
✓ Branch 35 taken 1055736 times.
✓ Branch 36 taken 996966 times.
✓ Branch 37 taken 103414 times.
✓ Branch 38 taken 30718 times.
✓ Branch 39 taken 1190198 times.
✓ Branch 40 taken 1139636 times.
✓ Branch 41 taken 120054 times.
✓ Branch 42 taken 191034 times.
✓ Branch 43 taken 2976 times.
✓ Branch 44 taken 142108 times.
✓ Branch 45 taken 1573524 times.
✓ Branch 46 taken 46353 times.
✓ Branch 47 taken 38958 times.
✓ Branch 48 taken 735142 times.
✓ Branch 49 taken 708522 times.
✓ Branch 50 taken 6 times.
✓ Branch 52 taken 1647 times.
✓ Branch 53 taken 432044 times.
✓ Branch 54 taken 544376 times.
✓ Branch 55 taken 1056 times.
✓ Branch 57 taken 1212 times.
✓ Branch 58 taken 18704 times.
✓ Branch 59 taken 17368 times.
✓ Branch 60 taken 2188368 times.
✗ Branch 62 not taken.
✗ Branch 63 not taken.
✓ Branch 64 taken 72 times.
✓ Branch 65 taken 54 times.
✓ Branch 66 taken 6192 times.
✓ Branch 67 taken 6624 times.
✓ Branch 68 taken 79932 times.
✓ Branch 69 taken 73236 times.
✓ Branch 5 taken 63760598 times.
✓ Branch 8 taken 32654829 times.
✓ Branch 21 taken 41622644 times.
✓ Branch 25 taken 3705884 times.
✓ Branch 26 taken 10111928 times.
✓ Branch 24 taken 6433517 times.
✓ Branch 28 taken 16742626 times.
✓ Branch 29 taken 15774794 times.
✓ Branch 30 taken 3058704 times.
✓ Branch 31 taken 264272 times.
✓ Branch 33 taken 5655018 times.
✓ Branch 34 taken 5045022 times.
✓ Branch 2 taken 69688428 times.
✓ Branch 27 taken 8238242 times.
✓ Branch 32 taken 426049 times.
✓ Branch 51 taken 5803 times.
✓ Branch 56 taken 468332 times.
✓ Branch 61 taken 2116224 times.
3844612531 return scvIndices_[0];
156 }
157
158 //! Index of the i-th outside sub control volume or boundary scv index.
159 // Results in undefined behaviour if i >= numOutsideScvs()
160 2992317456 GridIndexType outsideScvIdx(int i = 0) const
161 {
162
55/61
✓ Branch 2 taken 66483110 times.
✓ Branch 3 taken 69508576 times.
✓ Branch 6 taken 33288934 times.
✓ Branch 7 taken 71141897 times.
✓ Branch 8 taken 44007214 times.
✓ Branch 9 taken 263543560 times.
✓ Branch 11 taken 1392195 times.
✓ Branch 12 taken 1702763 times.
✓ Branch 5 taken 37136310 times.
✓ Branch 13 taken 46378515 times.
✓ Branch 14 taken 46496754 times.
✓ Branch 16 taken 36693 times.
✓ Branch 17 taken 175216 times.
✓ Branch 4 taken 77377114 times.
✓ Branch 18 taken 83047 times.
✓ Branch 19 taken 19958 times.
✓ Branch 20 taken 4310 times.
✓ Branch 35 taken 2285 times.
✗ Branch 36 not taken.
✓ Branch 1 taken 70512023 times.
✓ Branch 10 taken 6685409 times.
✓ Branch 22 taken 77091 times.
✓ Branch 23 taken 111904 times.
✓ Branch 0 taken 7197117 times.
✓ Branch 15 taken 3366807 times.
✓ Branch 21 taken 150016 times.
✓ Branch 27 taken 114800 times.
✓ Branch 28 taken 74920 times.
✓ Branch 31 taken 481 times.
✓ Branch 32 taken 250972 times.
✓ Branch 33 taken 158582 times.
✓ Branch 34 taken 2408 times.
✓ Branch 24 taken 7475 times.
✓ Branch 25 taken 340 times.
✓ Branch 30 taken 1456 times.
✗ Branch 26 not taken.
✓ Branch 29 taken 988 times.
✓ Branch 38 taken 105974 times.
✓ Branch 39 taken 133 times.
✓ Branch 40 taken 1052 times.
✓ Branch 41 taken 1394 times.
✓ Branch 42 taken 4342 times.
✓ Branch 43 taken 2171 times.
✓ Branch 45 taken 484378 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1240 times.
✓ Branch 49 taken 14 times.
✗ Branch 51 not taken.
✗ Branch 52 not taken.
✓ Branch 53 taken 16 times.
✓ Branch 54 taken 4 times.
✓ Branch 55 taken 176 times.
✓ Branch 56 taken 128 times.
✗ Branch 37 not taken.
✓ Branch 44 taken 323208 times.
✓ Branch 47 taken 4342 times.
✓ Branch 50 taken 323180 times.
✓ Branch 57 taken 28 times.
✓ Branch 58 taken 42 times.
✓ Branch 60 taken 28 times.
✓ Branch 61 taken 14 times.
3521226287 return scvIndices_[i+1];
163 }
164
165 //! The number of scvs on the outside of this face
166 658999305 std::size_t numOutsideScvs() const
167 {
168
98/110
✓ Branch 0 taken 14714816 times.
✓ Branch 1 taken 135748265 times.
✓ Branch 2 taken 21969615 times.
✓ Branch 3 taken 95239049 times.
✓ Branch 4 taken 19525686 times.
✓ Branch 5 taken 10640894 times.
✓ Branch 6 taken 43269214 times.
✓ Branch 7 taken 5382470 times.
✓ Branch 8 taken 47242622 times.
✓ Branch 9 taken 5251592 times.
✓ Branch 10 taken 49015668 times.
✓ Branch 11 taken 2208952 times.
✓ Branch 12 taken 30804653 times.
✓ Branch 13 taken 3183594 times.
✓ Branch 14 taken 48690863 times.
✓ Branch 15 taken 2577776 times.
✓ Branch 16 taken 32434051 times.
✓ Branch 17 taken 2925598 times.
✓ Branch 18 taken 24658526 times.
✓ Branch 19 taken 1567619 times.
✓ Branch 20 taken 3450872 times.
✓ Branch 21 taken 1188549 times.
✓ Branch 22 taken 23683064 times.
✓ Branch 23 taken 6567480 times.
✓ Branch 24 taken 3187933 times.
✓ Branch 25 taken 1746863 times.
✓ Branch 26 taken 101576 times.
✓ Branch 27 taken 33550 times.
✓ Branch 28 taken 41725 times.
✓ Branch 29 taken 41408 times.
✓ Branch 30 taken 657920 times.
✓ Branch 31 taken 39360 times.
✓ Branch 32 taken 202209 times.
✓ Branch 33 taken 3182718 times.
✓ Branch 34 taken 30311 times.
✓ Branch 35 taken 98863 times.
✓ Branch 36 taken 52629 times.
✓ Branch 37 taken 418475 times.
✓ Branch 38 taken 2650750 times.
✓ Branch 39 taken 54100 times.
✓ Branch 40 taken 145501 times.
✓ Branch 41 taken 101653 times.
✓ Branch 42 taken 359268 times.
✓ Branch 43 taken 334614 times.
✓ Branch 44 taken 109298 times.
✓ Branch 45 taken 161038 times.
✓ Branch 46 taken 113548 times.
✓ Branch 47 taken 14638 times.
✓ Branch 48 taken 151940 times.
✓ Branch 49 taken 222098 times.
✓ Branch 50 taken 2542674 times.
✓ Branch 51 taken 4636 times.
✓ Branch 52 taken 6440 times.
✓ Branch 53 taken 2536763 times.
✓ Branch 54 taken 49060 times.
✓ Branch 55 taken 82906 times.
✓ Branch 56 taken 10932 times.
✓ Branch 57 taken 1324184 times.
✓ Branch 58 taken 79502 times.
✓ Branch 59 taken 1502 times.
✓ Branch 60 taken 101271 times.
✓ Branch 61 taken 1929 times.
✓ Branch 62 taken 339340 times.
✓ Branch 63 taken 233502 times.
✓ Branch 64 taken 18 times.
✓ Branch 65 taken 1094 times.
✓ Branch 66 taken 18 times.
✓ Branch 67 taken 980 times.
✓ Branch 68 taken 962 times.
✓ Branch 69 taken 28800 times.
✓ Branch 70 taken 962 times.
✓ Branch 71 taken 852 times.
✓ Branch 72 taken 25198 times.
✓ Branch 73 taken 3766 times.
✓ Branch 74 taken 852 times.
✓ Branch 75 taken 129324 times.
✓ Branch 76 taken 1212 times.
✓ Branch 77 taken 5176330 times.
✓ Branch 78 taken 105820 times.
✗ Branch 79 not taken.
✓ Branch 80 taken 110227 times.
✓ Branch 81 taken 1469 times.
✓ Branch 82 taken 913318 times.
✓ Branch 83 taken 590138 times.
✓ Branch 85 taken 5742 times.
✗ Branch 86 not taken.
✓ Branch 87 taken 2938 times.
✓ Branch 88 taken 2938 times.
✓ Branch 90 taken 2938 times.
✗ Branch 91 not taken.
✓ Branch 92 taken 2938 times.
✓ Branch 93 taken 2938 times.
✓ Branch 95 taken 323180 times.
✗ Branch 96 not taken.
✓ Branch 97 taken 323180 times.
✓ Branch 98 taken 323180 times.
✓ Branch 100 taken 323180 times.
✗ Branch 101 not taken.
✓ Branch 102 taken 323180 times.
✓ Branch 103 taken 323180 times.
✗ Branch 104 not taken.
✓ Branch 105 taken 2804 times.
✗ Branch 106 not taken.
✗ Branch 107 not taken.
✗ Branch 108 not taken.
✓ Branch 109 taken 26 times.
✗ Branch 110 not taken.
✗ Branch 111 not taken.
✗ Branch 84 not taken.
✓ Branch 89 taken 26 times.
661258981 return scvIndices_.size()-1;
169 }
170
171 //! The global index of this sub control volume face
172 1481377027 GridIndexType index() const
173 {
174
54/54
✓ Branch 4 taken 7455368 times.
✓ Branch 5 taken 5192373 times.
✓ Branch 6 taken 499417 times.
✓ Branch 7 taken 520736 times.
✓ Branch 8 taken 340226 times.
✓ Branch 9 taken 2392562 times.
✓ Branch 12 taken 6092126 times.
✓ Branch 13 taken 5602742 times.
✓ Branch 20 taken 400750 times.
✓ Branch 21 taken 26138080 times.
✓ Branch 22 taken 816040 times.
✓ Branch 23 taken 4689848 times.
✓ Branch 28 taken 1366768 times.
✓ Branch 29 taken 753360 times.
✓ Branch 30 taken 3243718 times.
✓ Branch 31 taken 101592 times.
✓ Branch 32 taken 56846 times.
✓ Branch 33 taken 622488 times.
✓ Branch 34 taken 139224 times.
✓ Branch 35 taken 2422656 times.
✓ Branch 36 taken 1233320 times.
✓ Branch 37 taken 665834 times.
✓ Branch 0 taken 1120 times.
✓ Branch 1 taken 65230292 times.
✓ Branch 11 taken 967962 times.
✓ Branch 10 taken 3081708 times.
✓ Branch 14 taken 2925020 times.
✓ Branch 15 taken 1981660 times.
✓ Branch 16 taken 36046 times.
✓ Branch 17 taken 1659504 times.
✓ Branch 2 taken 30972032 times.
✓ Branch 3 taken 24434546 times.
✓ Branch 19 taken 6287802 times.
✓ Branch 18 taken 594044 times.
✓ Branch 24 taken 454288 times.
✓ Branch 25 taken 4133704 times.
✓ Branch 26 taken 1474430 times.
✓ Branch 42 taken 36348 times.
✓ Branch 43 taken 1374432 times.
✓ Branch 45 taken 60 times.
✓ Branch 46 taken 2534816 times.
✓ Branch 48 taken 60 times.
✓ Branch 49 taken 2534816 times.
✓ Branch 51 taken 60 times.
✓ Branch 52 taken 75936 times.
✓ Branch 41 taken 1120 times.
✓ Branch 44 taken 5070752 times.
✓ Branch 47 taken 77056 times.
✓ Branch 50 taken 77056 times.
✓ Branch 27 taken 2584120 times.
✓ Branch 38 taken 8315 times.
✓ Branch 39 taken 1289477 times.
✓ Branch 40 taken 129608 times.
✓ Branch 53 taken 2558320 times.
1466216985 return scvfIndex_;
175 }
176
177 //! Return the boundary flag
178 1477115 typename BoundaryFlag::value_type boundaryFlag() const
179 {
180
4/6
✗ Branch 0 not taken.
✓ Branch 1 taken 816 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 743148 times.
✓ Branch 4 taken 36672 times.
✓ Branch 5 taken 449232 times.
1477115 return boundaryFlag_.get();
181 }
182
183 private:
184 Scalar area_;
185 GlobalPosition center_;
186 GlobalPosition unitOuterNormal_;
187 GridIndexType scvfIndex_;
188 GridIndexStorage scvIndices_;
189 bool boundary_;
190 BoundaryFlag boundaryFlag_;
191 };
192
193 } // end namespace Dumux
194
195 #endif
196