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 FaceCenteredStaggeredDiscretization | ||
10 | * \copydoc Dumux::FaceCenteredStaggeredSubControlVolumeFace | ||
11 | */ | ||
12 | #ifndef DUMUX_DISCRETIZATION_FACECENTERED_STAGGERED_SUBCONTROLVOLUMEFACE_HH | ||
13 | #define DUMUX_DISCRETIZATION_FACECENTERED_STAGGERED_SUBCONTROLVOLUMEFACE_HH | ||
14 | |||
15 | #include <array> | ||
16 | |||
17 | #include <dune/common/fvector.hh> | ||
18 | #include <dune/geometry/type.hh> | ||
19 | #include <dune/geometry/axisalignedcubegeometry.hh> | ||
20 | |||
21 | #include <dumux/common/indextraits.hh> | ||
22 | #include <dumux/discretization/facecentered/staggered/normalaxis.hh> | ||
23 | |||
24 | namespace Dumux { | ||
25 | |||
26 | /*! | ||
27 | * \ingroup FaceCenteredStaggeredDiscretization | ||
28 | * \brief Default traits class to be used for the sub-control volume face | ||
29 | * for the face-centered staggered finite volume scheme | ||
30 | * \tparam GridView the type of the grid view | ||
31 | */ | ||
32 | template<class GridView> | ||
33 | struct FaceCenteredDefaultScvfGeometryTraits | ||
34 | { | ||
35 | using GridIndexType = typename IndexTraits<GridView>::GridIndex; | ||
36 | using LocalIndexType = typename IndexTraits<GridView>::LocalIndex; | ||
37 | using Scalar = typename GridView::ctype; | ||
38 | using Element = typename GridView::template Codim<0>::Entity; | ||
39 | using GlobalPosition = typename Element::Geometry::GlobalCoordinate; | ||
40 | |||
41 | static constexpr int dim = GridView::Grid::dimension; | ||
42 | static constexpr int dimWorld = GridView::Grid::dimensionworld; | ||
43 | using CornerStorage = std::array<GlobalPosition, (1<<(dim-1))>; | ||
44 | using Geometry = Dune::AxisAlignedCubeGeometry<Scalar, dim-1, dimWorld>; | ||
45 | }; | ||
46 | |||
47 | /*! | ||
48 | * \ingroup FaceCenteredStaggeredDiscretization | ||
49 | * \brief Face centered staggered sub control volume face | ||
50 | */ | ||
51 | template<class GridView, class T = FaceCenteredDefaultScvfGeometryTraits<GridView>> | ||
52 | class FaceCenteredStaggeredSubControlVolumeFace | ||
53 | { | ||
54 | using Geometry = typename T::Geometry; | ||
55 | using GridIndexType = typename T::GridIndexType; | ||
56 | using Scalar = typename T::Scalar; | ||
57 | using Element = typename T::Element; | ||
58 | using CornerStorage = typename T::CornerStorage; | ||
59 | |||
60 | using SmallLocalIndexType = typename IndexTraits<GridView>::SmallLocalIndex; | ||
61 | |||
62 | using ElementGeometry = typename Element::Geometry; | ||
63 | using IntersectionGeometry = typename GridView::Intersection::Geometry; | ||
64 | |||
65 | public: | ||
66 | //! state the traits public and thus export all types | ||
67 | using Traits = T; | ||
68 | |||
69 | using GlobalPosition = typename T::GlobalPosition; | ||
70 | enum class FaceType : SmallLocalIndexType {frontal, lateral}; | ||
71 | enum class BoundaryType : SmallLocalIndexType {interior, physicalBoundary, processorBoundary}; | ||
72 | |||
73 | 23740448 | FaceCenteredStaggeredSubControlVolumeFace() = default; | |
74 | |||
75 | //! The constructor for frontal faces | ||
76 | 10095562 | FaceCenteredStaggeredSubControlVolumeFace(const ElementGeometry& elementGeometry, | |
77 | const IntersectionGeometry& intersectionGeometry, | ||
78 | const std::array<GridIndexType, 2> globalScvIndices, | ||
79 | const SmallLocalIndexType localScvfIdx, | ||
80 | const GridIndexType globalScvfIdx, | ||
81 | const GlobalPosition& unitOuterNormal, | ||
82 | const FaceType faceType, | ||
83 | const BoundaryType boundaryType) | ||
84 | 10095562 | : globalScvIndices_(globalScvIndices) | |
85 | 10095562 | , localScvfIdx_(localScvfIdx) | |
86 | 10095562 | , globalScvfIdx_(globalScvfIdx) | |
87 | 10095562 | , area_(intersectionGeometry.volume()) | |
88 | 10095562 | , normalAxis_(Dumux::normalAxis(unitOuterNormal)) | |
89 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 10095562 times.
|
10095562 | , outerNormalSign_(sign(unitOuterNormal[normalAxis_])) |
90 | 10095562 | , faceType_(faceType) | |
91 | 10095562 | , boundaryType_(boundaryType) | |
92 | { | ||
93 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 10095562 times.
|
10095562 | assert(faceType == FaceType::frontal); |
94 | 10109466 | center_ = boundary() ? intersectionGeometry.center() : elementGeometry.center(); | |
95 | 10095562 | ipGlobal_ = center_; | |
96 | |||
97 | 10095562 | if (!boundary()) | |
98 | 9833642 | outerNormalSign_ *= -1.0; | |
99 | 10095562 | } | |
100 | |||
101 | //! The constructor for lateral faces | ||
102 | template<class LateralFacetGeometry> | ||
103 | 19689656 | FaceCenteredStaggeredSubControlVolumeFace(const ElementGeometry& elementGeometry, | |
104 | const IntersectionGeometry& intersectionGeometry, | ||
105 | const LateralFacetGeometry& lateralFacetGeometry, | ||
106 | const std::array<GridIndexType, 2> globalScvIndices, | ||
107 | const SmallLocalIndexType localScvfIdx, | ||
108 | const GridIndexType globalScvfIdx, | ||
109 | const GlobalPosition& unitOuterNormal, | ||
110 | const FaceType faceType, | ||
111 | const BoundaryType boundaryType) | ||
112 | 19689656 | : globalScvIndices_(globalScvIndices) | |
113 | 19689656 | , localScvfIdx_(localScvfIdx) | |
114 | 19689656 | , globalScvfIdx_(globalScvfIdx) | |
115 | 19689656 | , area_(0.5*lateralFacetGeometry.volume()) | |
116 | 19689656 | , normalAxis_(Dumux::normalAxis(unitOuterNormal)) | |
117 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 19689656 times.
|
19689656 | , outerNormalSign_(sign(unitOuterNormal[normalAxis_])) |
118 | 19689656 | , faceType_(faceType) | |
119 | 19689656 | , boundaryType_(boundaryType) | |
120 | { | ||
121 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 19689656 times.
|
19689656 | assert(faceType == FaceType::lateral); |
122 | 56402616 | const auto shift = intersectionGeometry.center() - elementGeometry.center(); | |
123 | 19689656 | ipGlobal_ = lateralFacetGeometry.center() + shift; | |
124 | 56357136 | center_ = 0.5*(lateralFacetGeometry.center() + ipGlobal_); | |
125 | 19689656 | } | |
126 | |||
127 | //! The center of the sub control volume face | ||
128 |
0/2✗ Branch 1 not taken.
✗ Branch 2 not taken.
|
1563730 | const GlobalPosition& center() const |
129 |
12/13✓ Branch 1 taken 321730 times.
✓ Branch 2 taken 35360 times.
✓ Branch 3 taken 54856 times.
✓ Branch 4 taken 45719 times.
✓ Branch 5 taken 2436 times.
✓ Branch 6 taken 8316 times.
✓ Branch 0 taken 257454 times.
✓ Branch 9 taken 11760 times.
✓ Branch 10 taken 560 times.
✓ Branch 11 taken 24 times.
✗ Branch 12 not taken.
✓ Branch 7 taken 240 times.
✓ Branch 8 taken 1302 times.
|
12143653 | { return center_; } |
130 | |||
131 | //! The integration point of the sub control volume face | ||
132 | 1197306 | const GlobalPosition& ipGlobal() const | |
133 |
20/23✓ Branch 0 taken 61740 times.
✓ Branch 1 taken 185246 times.
✓ Branch 3 taken 125016 times.
✓ Branch 4 taken 48382 times.
✓ Branch 5 taken 9564 times.
✓ Branch 6 taken 111250 times.
✓ Branch 7 taken 59750 times.
✓ Branch 8 taken 254562 times.
✓ Branch 9 taken 65022 times.
✓ Branch 10 taken 264366 times.
✓ Branch 11 taken 75836 times.
✓ Branch 12 taken 27720 times.
✓ Branch 13 taken 66968 times.
✓ Branch 14 taken 920 times.
✓ Branch 15 taken 12230 times.
✓ Branch 16 taken 19482 times.
✓ Branch 17 taken 600 times.
✓ Branch 18 taken 150 times.
✗ Branch 19 not taken.
✗ Branch 20 not taken.
✓ Branch 21 taken 1600 times.
✓ Branch 22 taken 408 times.
✗ Branch 2 not taken.
|
8465910 | { return ipGlobal_; } |
134 | |||
135 | //! The unit outer normal | ||
136 | 412677510 | const GlobalPosition unitOuterNormal() const | |
137 | { | ||
138 | 412677510 | GlobalPosition result(0.0); | |
139 |
0/2✗ Branch 0 not taken.
✗ Branch 1 not taken.
|
206244710 | result[normalAxis_] = 1.0 * directionSign(); |
140 |
2/4✓ Branch 1 taken 26 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 16 times.
✗ Branch 5 not taken.
|
412677510 | return result; |
141 | } | ||
142 | |||
143 | //! Index of the inside sub control volume for spatial param evaluation | ||
144 |
1/8✗ Branch 0 not taken.
✓ Branch 1 taken 2492 times.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
|
4506343654 | GridIndexType insideScvIdx() const |
145 |
88/93✓ Branch 1 taken 171132520 times.
✓ Branch 2 taken 65037514 times.
✓ Branch 3 taken 63774240 times.
✓ Branch 4 taken 16019680 times.
✓ Branch 5 taken 2297649 times.
✓ Branch 6 taken 200802065 times.
✓ Branch 8 taken 10173492 times.
✓ Branch 9 taken 147247262 times.
✓ Branch 10 taken 6388254 times.
✓ Branch 11 taken 43157890 times.
✗ Branch 15 not taken.
✓ Branch 16 taken 21527518 times.
✓ Branch 17 taken 104460208 times.
✓ Branch 18 taken 30369364 times.
✓ Branch 21 taken 17209778 times.
✓ Branch 22 taken 53883444 times.
✓ Branch 23 taken 18275294 times.
✓ Branch 24 taken 92594176 times.
✓ Branch 28 taken 338256 times.
✓ Branch 29 taken 435984 times.
✓ Branch 31 taken 1146708 times.
✓ Branch 32 taken 3876896 times.
✓ Branch 34 taken 3707520 times.
✓ Branch 35 taken 20686496 times.
✓ Branch 37 taken 140096 times.
✓ Branch 38 taken 9679176 times.
✓ Branch 40 taken 94288990 times.
✓ Branch 41 taken 46766286 times.
✓ Branch 43 taken 197915784 times.
✓ Branch 44 taken 95363766 times.
✓ Branch 45 taken 3493932 times.
✓ Branch 46 taken 141540188 times.
✓ Branch 47 taken 43239582 times.
✓ Branch 48 taken 14935730 times.
✓ Branch 49 taken 76434606 times.
✓ Branch 50 taken 72529704 times.
✓ Branch 51 taken 26496552 times.
✓ Branch 52 taken 37308020 times.
✓ Branch 53 taken 91877854 times.
✓ Branch 54 taken 63304808 times.
✓ Branch 55 taken 7677828 times.
✓ Branch 56 taken 42246876 times.
✓ Branch 57 taken 59293470 times.
✓ Branch 58 taken 4714364 times.
✓ Branch 59 taken 1364064 times.
✓ Branch 60 taken 66646534 times.
✓ Branch 62 taken 2320968 times.
✓ Branch 63 taken 178606 times.
✓ Branch 64 taken 69947916 times.
✓ Branch 65 taken 62587374 times.
✓ Branch 0 taken 156 times.
✓ Branch 13 taken 6388229 times.
✓ Branch 14 taken 140622326 times.
✓ Branch 25 taken 150 times.
✓ Branch 26 taken 90285895 times.
✓ Branch 30 taken 2824382 times.
✓ Branch 36 taken 192018 times.
✓ Branch 39 taken 194637652 times.
✓ Branch 42 taken 37485196 times.
✓ Branch 7 taken 5458332 times.
✓ Branch 19 taken 3682496 times.
✓ Branch 20 taken 588178 times.
✓ Branch 12 taken 72 times.
✓ Branch 27 taken 790768 times.
✓ Branch 33 taken 628252 times.
✓ Branch 61 taken 26648884 times.
✓ Branch 66 taken 83470 times.
✓ Branch 67 taken 1401456 times.
✓ Branch 68 taken 16347144 times.
✓ Branch 69 taken 1432736 times.
✗ Branch 70 not taken.
✓ Branch 71 taken 1204226 times.
✓ Branch 72 taken 18304 times.
✓ Branch 74 taken 18328 times.
✓ Branch 75 taken 71159063 times.
✓ Branch 76 taken 58078923 times.
✓ Branch 77 taken 85989292 times.
✓ Branch 78 taken 48185334 times.
✓ Branch 79 taken 6962510 times.
✓ Branch 80 taken 15192 times.
✓ Branch 81 taken 26200 times.
✓ Branch 73 taken 920 times.
✓ Branch 82 taken 1120 times.
✗ Branch 83 not taken.
✓ Branch 84 taken 6 times.
✓ Branch 85 taken 3831058 times.
✓ Branch 86 taken 1913340 times.
✓ Branch 87 taken 4857168 times.
✓ Branch 88 taken 1038284 times.
✗ Branch 89 not taken.
✓ Branch 90 taken 2130 times.
✗ Branch 91 not taken.
✓ Branch 92 taken 60 times.
|
4747733804 | { return globalScvIndices_[0]; } |
146 | |||
147 | //! index of the outside sub control volume for spatial param evaluation | ||
148 | 1852121137 | GridIndexType outsideScvIdx() const | |
149 |
32/41✓ Branch 2 taken 46864814 times.
✓ Branch 3 taken 10601784 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 109792214 times.
✓ Branch 17 taken 757176 times.
✓ Branch 18 taken 1142422 times.
✓ Branch 20 taken 1452160 times.
✓ Branch 21 taken 1140396 times.
✓ Branch 23 taken 1466040 times.
✓ Branch 24 taken 48404 times.
✓ Branch 1 taken 7355766 times.
✓ Branch 15 taken 532768 times.
✓ Branch 16 taken 99970 times.
✓ Branch 19 taken 14588794 times.
✓ Branch 22 taken 23332 times.
✓ Branch 4 taken 383534 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 232 times.
✓ Branch 8 taken 64 times.
✓ Branch 11 taken 1233292 times.
✓ Branch 13 taken 25921 times.
✗ Branch 14 not taken.
✗ Branch 0 not taken.
✓ Branch 12 taken 3449912 times.
✓ Branch 26 taken 101408 times.
✓ Branch 27 taken 30740 times.
✓ Branch 25 taken 22180 times.
✓ Branch 28 taken 65184 times.
✓ Branch 6 taken 3680944 times.
✓ Branch 29 taken 538400 times.
✓ Branch 31 taken 13952 times.
✓ Branch 32 taken 1066240 times.
✓ Branch 34 taken 26432 times.
✓ Branch 35 taken 1066240 times.
✓ Branch 37 taken 26432 times.
✗ Branch 38 not taken.
✗ Branch 39 not taken.
✓ Branch 40 taken 10524 times.
✗ Branch 30 not taken.
✗ Branch 33 not taken.
✗ Branch 36 not taken.
|
1955470441 | { return globalScvIndices_[1]; } |
150 | |||
151 | 6614791 | GridIndexType index() const | |
152 |
12/24✓ Branch 1 taken 60 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 260 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 26 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 16 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 2 times.
✗ Branch 17 not taken.
✓ Branch 19 taken 2 times.
✗ Branch 20 not taken.
✗ Branch 0 not taken.
✓ Branch 3 taken 225250 times.
✗ Branch 6 not taken.
✓ Branch 9 taken 221330 times.
✓ Branch 15 taken 2360 times.
✓ Branch 18 taken 2330 times.
✗ Branch 21 not taken.
✗ Branch 22 not taken.
✓ Branch 24 taken 1180 times.
✗ Branch 25 not taken.
|
11009251 | { return globalScvfIdx_; } |
153 | |||
154 | 362209437 | SmallLocalIndexType localIndex() const | |
155 |
8/9✓ Branch 13 taken 142396 times.
✓ Branch 14 taken 317155 times.
✓ Branch 9 taken 10 times.
✗ Branch 10 not taken.
✓ Branch 0 taken 94928 times.
✓ Branch 1 taken 707472 times.
✓ Branch 15 taken 50989 times.
✓ Branch 16 taken 52012 times.
✓ Branch 12 taken 1292 times.
|
362209437 | { return localScvfIdx_; } |
156 | |||
157 | FaceType faceType() const | ||
158 | { return faceType_; } | ||
159 | |||
160 |
4/4✓ Branch 0 taken 261920 times.
✓ Branch 1 taken 9833642 times.
✓ Branch 2 taken 8987242 times.
✓ Branch 3 taken 235680 times.
|
19318484 | bool boundary() const |
161 |
81/82✓ Branch 0 taken 2566876 times.
✓ Branch 1 taken 198244634 times.
✓ Branch 2 taken 4642964 times.
✓ Branch 3 taken 130947868 times.
✓ Branch 4 taken 716100 times.
✓ Branch 5 taken 132210618 times.
✓ Branch 6 taken 492848 times.
✓ Branch 7 taken 7750954 times.
✓ Branch 8 taken 37404 times.
✓ Branch 9 taken 697406 times.
✗ Branch 10 not taken.
✓ Branch 11 taken 144802950 times.
✓ Branch 12 taken 1250992 times.
✓ Branch 13 taken 108288148 times.
✓ Branch 14 taken 578006 times.
✓ Branch 15 taken 95941250 times.
✓ Branch 16 taken 778278 times.
✓ Branch 17 taken 42924246 times.
✓ Branch 18 taken 90646 times.
✓ Branch 19 taken 95063190 times.
✓ Branch 20 taken 1044876 times.
✓ Branch 21 taken 90445418 times.
✓ Branch 22 taken 1031976 times.
✓ Branch 23 taken 132146906 times.
✓ Branch 24 taken 678230 times.
✓ Branch 25 taken 4303876 times.
✓ Branch 26 taken 372512 times.
✓ Branch 27 taken 9171136 times.
✓ Branch 28 taken 435042 times.
✓ Branch 29 taken 76634668 times.
✓ Branch 30 taken 2784704 times.
✓ Branch 31 taken 2668352 times.
✓ Branch 32 taken 235316 times.
✓ Branch 33 taken 43333468 times.
✓ Branch 34 taken 715756 times.
✓ Branch 35 taken 20581256 times.
✓ Branch 36 taken 393956 times.
✓ Branch 37 taken 47343684 times.
✓ Branch 38 taken 1048808 times.
✓ Branch 39 taken 46246170 times.
✓ Branch 40 taken 2812274 times.
✓ Branch 41 taken 42766148 times.
✓ Branch 42 taken 1191451 times.
✓ Branch 43 taken 24482541 times.
✓ Branch 44 taken 1261614 times.
✓ Branch 45 taken 2626733 times.
✓ Branch 46 taken 1126664 times.
✓ Branch 47 taken 1318040 times.
✓ Branch 48 taken 553356 times.
✓ Branch 49 taken 3483392 times.
✓ Branch 50 taken 1300792 times.
✓ Branch 51 taken 11074492 times.
✓ Branch 52 taken 1391320 times.
✓ Branch 53 taken 2347054 times.
✓ Branch 54 taken 188854 times.
✓ Branch 55 taken 1601190 times.
✓ Branch 56 taken 1570850 times.
✓ Branch 57 taken 576310 times.
✓ Branch 58 taken 1327604 times.
✓ Branch 59 taken 1090952 times.
✓ Branch 60 taken 312964 times.
✓ Branch 61 taken 994494 times.
✓ Branch 62 taken 116056 times.
✓ Branch 63 taken 553730 times.
✓ Branch 64 taken 15648 times.
✓ Branch 65 taken 58800 times.
✓ Branch 66 taken 60782 times.
✓ Branch 67 taken 153970 times.
✓ Branch 68 taken 28112 times.
✓ Branch 69 taken 34832 times.
✓ Branch 70 taken 10820 times.
✓ Branch 71 taken 5418 times.
✓ Branch 72 taken 235 times.
✓ Branch 73 taken 607 times.
✓ Branch 74 taken 161 times.
✓ Branch 75 taken 53 times.
✓ Branch 76 taken 8868 times.
✓ Branch 77 taken 27838 times.
✓ Branch 78 taken 35942 times.
✓ Branch 79 taken 114678 times.
✓ Branch 80 taken 556 times.
✓ Branch 81 taken 11398 times.
|
1556279081 | { return boundaryType_ == BoundaryType::physicalBoundary; } |
162 | |||
163 | 208077926 | bool processorBoundary() const | |
164 |
4/4✓ Branch 0 taken 201670536 times.
✓ Branch 1 taken 40788 times.
✓ Branch 2 taken 630592 times.
✓ Branch 3 taken 5736010 times.
|
208077926 | { return boundaryType_ == BoundaryType::processorBoundary; } |
165 | |||
166 | 1144157667 | bool isFrontal() const | |
167 |
41/44✓ Branch 0 taken 100378664 times.
✓ Branch 1 taken 5834888 times.
✓ Branch 2 taken 1122 times.
✓ Branch 3 taken 190700412 times.
✓ Branch 4 taken 38 times.
✓ Branch 5 taken 12658277 times.
✗ Branch 6 not taken.
✓ Branch 7 taken 95301126 times.
✗ Branch 8 not taken.
✓ Branch 9 taken 8025930 times.
✗ Branch 10 not taken.
✓ Branch 11 taken 95301126 times.
✓ Branch 12 taken 2948548 times.
✓ Branch 13 taken 78044854 times.
✓ Branch 14 taken 78079092 times.
✓ Branch 15 taken 156814682 times.
✓ Branch 16 taken 59906306 times.
✓ Branch 17 taken 120327676 times.
✓ Branch 18 taken 28021004 times.
✓ Branch 19 taken 49410612 times.
✓ Branch 20 taken 19421442 times.
✓ Branch 21 taken 25002214 times.
✓ Branch 22 taken 270878 times.
✓ Branch 23 taken 550482 times.
✓ Branch 24 taken 1978922 times.
✓ Branch 25 taken 1932186 times.
✓ Branch 26 taken 2543766 times.
✓ Branch 27 taken 2769554 times.
✓ Branch 28 taken 1713578 times.
✓ Branch 29 taken 2465940 times.
✓ Branch 30 taken 685936 times.
✓ Branch 31 taken 847592 times.
✓ Branch 32 taken 155460 times.
✓ Branch 33 taken 225040 times.
✓ Branch 34 taken 571176 times.
✓ Branch 35 taken 1114670 times.
✓ Branch 36 taken 27228 times.
✓ Branch 37 taken 53464 times.
✓ Branch 38 taken 22232 times.
✓ Branch 39 taken 40552 times.
✓ Branch 40 taken 3600 times.
✓ Branch 41 taken 7200 times.
✓ Branch 42 taken 132 times.
✓ Branch 43 taken 66 times.
|
1144157667 | { return faceType_ == FaceType::frontal; } |
168 | |||
169 | 1553049117 | bool isLateral() const | |
170 |
27/30✗ Branch 0 not taken.
✓ Branch 1 taken 204629356 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 150570760 times.
✓ Branch 4 taken 16 times.
✓ Branch 5 taken 149245534 times.
✓ Branch 6 taken 27004255 times.
✓ Branch 7 taken 148282492 times.
✓ Branch 8 taken 21990630 times.
✓ Branch 9 taken 190173610 times.
✓ Branch 10 taken 54603320 times.
✓ Branch 11 taken 206935404 times.
✓ Branch 12 taken 352000 times.
✓ Branch 13 taken 402788 times.
✗ Branch 14 not taken.
✓ Branch 15 taken 43972146 times.
✓ Branch 16 taken 417320 times.
✓ Branch 17 taken 10823736 times.
✓ Branch 18 taken 9040 times.
✓ Branch 19 taken 271093184 times.
✓ Branch 20 taken 72880 times.
✓ Branch 21 taken 1132274 times.
✓ Branch 22 taken 11070 times.
✓ Branch 23 taken 12811422 times.
✓ Branch 24 taken 98 times.
✓ Branch 25 taken 8877914 times.
✓ Branch 26 taken 94 times.
✓ Branch 27 taken 49633000 times.
✓ Branch 28 taken 2396 times.
✓ Branch 29 taken 2378 times.
|
1553049117 | { return faceType_ == FaceType::lateral; } |
171 | |||
172 | 616270540 | Scalar area() const | |
173 | 616270540 | { return area_; } | |
174 | |||
175 | 211939816 | SmallLocalIndexType normalAxis() const | |
176 |
11/19✗ Branch 0 not taken.
✗ Branch 1 not taken.
✓ Branch 3 taken 30528 times.
✓ Branch 4 taken 20352 times.
✓ Branch 5 taken 28180 times.
✓ Branch 6 taken 18788 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 10 taken 290832 times.
✗ Branch 11 not taken.
✓ Branch 12 taken 382932 times.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✓ Branch 15 taken 3584 times.
✓ Branch 16 taken 343920 times.
✓ Branch 17 taken 65908 times.
✗ Branch 18 not taken.
✓ Branch 19 taken 284196 times.
✓ Branch 9 taken 48088 times.
|
207935452 | { return normalAxis_; } |
177 | |||
178 | 1333980950 | std::int_least8_t directionSign() const | |
179 |
14/17✓ Branch 0 taken 10246 times.
✓ Branch 1 taken 101506892 times.
✓ Branch 5 taken 1840489 times.
✓ Branch 6 taken 65267015 times.
✓ Branch 8 taken 118980 times.
✓ Branch 9 taken 191832 times.
✓ Branch 10 taken 1870918 times.
✓ Branch 11 taken 280670 times.
✓ Branch 12 taken 3 times.
✓ Branch 13 taken 96421 times.
✗ Branch 14 not taken.
✓ Branch 15 taken 65908 times.
✗ Branch 16 not taken.
✗ Branch 17 not taken.
✓ Branch 2 taken 9392 times.
✓ Branch 4 taken 1569 times.
✓ Branch 3 taken 18789 times.
|
816748884 | { return outerNormalSign_; } |
180 | |||
181 | private: | ||
182 | GlobalPosition center_; | ||
183 | GlobalPosition ipGlobal_; | ||
184 | std::array<GridIndexType, 2> globalScvIndices_; | ||
185 | SmallLocalIndexType localScvfIdx_; | ||
186 | GridIndexType globalScvfIdx_; | ||
187 | Scalar area_; | ||
188 | SmallLocalIndexType normalAxis_; | ||
189 | std::int_least8_t outerNormalSign_; | ||
190 | FaceType faceType_; | ||
191 | BoundaryType boundaryType_; | ||
192 | }; | ||
193 | |||
194 | } // end namespace Dumux | ||
195 | |||
196 | #endif | ||
197 |