GCC Code Coverage Report


Directory: ../../../builds/dumux-repositories/
File: dumux/dumux/discretization/cellcentered/tpfa/subcontrolvolumeface.hh
Date: 2025-05-03 19:19:02
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 101105329 times.
✓ Branch 2 taken 493820 times.
✓ Branch 3 taken 8396657 times.
✓ Branch 4 taken 19701138 times.
✓ Branch 5 taken 31709946 times.
✓ Branch 6 taken 1121069 times.
✓ Branch 7 taken 20550303 times.
✓ Branch 8 taken 23085534 times.
✓ Branch 9 taken 1608108 times.
✓ Branch 10 taken 7633074 times.
✓ Branch 11 taken 22010080 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 126357976 times.
✓ Branch 1 taken 42851976 times.
✓ Branch 2 taken 26629244 times.
✓ Branch 3 taken 30785652 times.
✓ Branch 4 taken 164258736 times.
✓ Branch 5 taken 357968761 times.
✓ Branch 6 taken 277627779 times.
✓ Branch 7 taken 81124083 times.
✓ Branch 8 taken 333402035 times.
✓ Branch 9 taken 128353858 times.
✓ Branch 10 taken 42270635 times.
✓ Branch 11 taken 98596649 times.
✓ Branch 12 taken 60811599 times.
✓ Branch 13 taken 7606856 times.
✓ Branch 14 taken 59214842 times.
✓ Branch 15 taken 10030138 times.
✓ Branch 16 taken 36241623 times.
✓ Branch 17 taken 21640655 times.
✓ Branch 18 taken 76827529 times.
✓ Branch 19 taken 3086277 times.
✓ Branch 20 taken 418218 times.
✓ Branch 21 taken 5603818 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 8626007 times.
✓ Branch 1 taken 27068461 times.
✓ Branch 3 taken 55469109 times.
✓ Branch 4 taken 77046206 times.
✓ Branch 6 taken 48298881 times.
✓ Branch 7 taken 41835379 times.
✓ Branch 9 taken 11001652 times.
✓ Branch 10 taken 15260158 times.
✓ Branch 11 taken 65639735 times.
✓ Branch 12 taken 50776757 times.
✓ Branch 13 taken 31635483 times.
✓ Branch 14 taken 14750944 times.
✓ Branch 15 taken 20376229 times.
✓ Branch 16 taken 7099899 times.
✓ Branch 17 taken 261231 times.
✓ Branch 18 taken 22930296 times.
✓ Branch 19 taken 7391522 times.
✓ Branch 20 taken 4514431 times.
✓ Branch 22 taken 5897614 times.
✓ Branch 23 taken 5418589 times.
✓ Branch 28 taken 2314426 times.
✓ Branch 29 taken 1230356 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 80374170 times.
✓ Branch 8 taken 22322843 times.
✓ Branch 21 taken 41626644 times.
✓ Branch 25 taken 3707084 times.
✓ Branch 26 taken 24765754 times.
✓ Branch 36 taken 996918 times.
✓ Branch 24 taken 9325517 times.
✓ Branch 30 taken 2833078 times.
✓ Branch 31 taken 264352 times.
✓ Branch 33 taken 5655018 times.
✓ Branch 34 taken 5045022 times.
✓ Branch 35 taken 1055736 times.
✓ Branch 2 taken 67982892 times.
✓ Branch 27 taken 22781528 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 78675736 times.
✓ Branch 6 taken 88952930 times.
✓ Branch 7 taken 31950537 times.
✓ Branch 8 taken 30788826 times.
✓ Branch 9 taken 262059080 times.
✓ Branch 11 taken 1671695 times.
✓ Branch 12 taken 38904279 times.
✓ Branch 5 taken 30723882 times.
✓ Branch 13 taken 49704399 times.
✓ Branch 14 taken 8094766 times.
✓ Branch 16 taken 36693 times.
✓ Branch 17 taken 175216 times.
✓ Branch 4 taken 77376250 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 3084861 times.
✓ Branch 22 taken 77091 times.
✓ Branch 23 taken 111904 times.
✓ Branch 0 taken 7197117 times.
✓ Branch 15 taken 38807 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 14955992 times.
✓ Branch 1 taken 135947941 times.
✓ Branch 2 taken 21953931 times.
✓ Branch 3 taken 95234769 times.
✓ Branch 4 taken 63081092 times.
✓ Branch 5 taken 11058680 times.
✓ Branch 6 taken 44586328 times.
✓ Branch 7 taken 5842148 times.
✓ Branch 8 taken 26430422 times.
✓ Branch 9 taken 5599178 times.
✓ Branch 10 taken 65288004 times.
✓ Branch 11 taken 2697296 times.
✓ Branch 12 taken 10589189 times.
✓ Branch 13 taken 3068730 times.
✓ Branch 14 taken 54183623 times.
✓ Branch 15 taken 2698640 times.
✓ Branch 16 taken 32739799 times.
✓ Branch 17 taken 3039862 times.
✓ Branch 18 taken 24573506 times.
✓ Branch 19 taken 1564319 times.
✓ Branch 20 taken 3450872 times.
✓ Branch 21 taken 1188549 times.
✓ Branch 22 taken 700962 times.
✓ Branch 23 taken 5562454 times.
✓ Branch 24 taken 113743 times.
✓ Branch 25 taken 726105 times.
✓ Branch 26 taken 101696 times.
✓ Branch 27 taken 33580 times.
✓ Branch 28 taken 41725 times.
✓ Branch 29 taken 41408 times.
✓ Branch 30 taken 657920 times.
✓ Branch 31 taken 39360 times.
✓ Branch 32 taken 202797 times.
✓ Branch 33 taken 3185144 times.
✓ Branch 34 taken 28215 times.
✓ Branch 35 taken 99451 times.
✓ Branch 36 taken 53877 times.
✓ Branch 37 taken 419063 times.
✓ Branch 38 taken 2650162 times.
✓ Branch 39 taken 51674 times.
✓ Branch 40 taken 147597 times.
✓ Branch 41 taken 101065 times.
✓ Branch 42 taken 358020 times.
✓ Branch 43 taken 334026 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 5193573 times.
✓ Branch 6 taken 562699 times.
✓ Branch 7 taken 515736 times.
✓ Branch 8 taken 317226 times.
✓ Branch 9 taken 2395562 times.
✓ Branch 12 taken 6084926 times.
✓ Branch 13 taken 8494460 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 65224792 times.
✓ Branch 11 taken 996962 times.
✓ Branch 10 taken 128708 times.
✓ Branch 14 taken 2925020 times.
✓ Branch 15 taken 1981660 times.
✓ Branch 16 taken 36046 times.
✓ Branch 17 taken 1659504 times.
✓ Branch 2 taken 30975532 times.
✓ Branch 3 taken 24436546 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