GCC Code Coverage Report


Directory: ../../../builds/dumux-repositories/
File: /builds/dumux-repositories/dumux/dumux/freeflow/navierstokes/boundarytypes.hh
Date: 2024-05-04 19:09:25
Exec Total Coverage
Lines: 18 18 100.0%
Functions: 0 0 -%
Branches: 325 538 60.4%

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-FileCopyrightInfo: 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 NavierStokesModel
10 * \copydoc Dumux::NavierStokesBoundaryTypes
11 */
12 #ifndef FREEFLOW_NAVIERSTOKES_BOUNDARY_TYPES_HH
13 #define FREEFLOW_NAVIERSTOKES_BOUNDARY_TYPES_HH
14
15 #include <dumux/common/boundarytypes.hh>
16 #include <dumux/common/typetraits/typetraits.hh>
17
18 namespace Dumux {
19
20 /*!
21 * \ingroup NavierStokesModel
22 * \brief Class to specify the type of a boundary condition for the Navier-Stokes model.
23 */
24 template <int numEq>
25 class NavierStokesBoundaryTypes : public BoundaryTypes<numEq>
26 {
27 using ParentType = BoundaryTypes<numEq>;
28
29 public:
30 424569631 NavierStokesBoundaryTypes()
31 424569727 {
32
48/48
✓ Branch 0 taken 439404201 times.
✓ Branch 1 taken 2452825140 times.
✓ Branch 2 taken 20 times.
✓ Branch 3 taken 80 times.
✓ Branch 4 taken 20 times.
✓ Branch 5 taken 80 times.
✓ Branch 6 taken 20 times.
✓ Branch 7 taken 100 times.
✓ Branch 8 taken 121 times.
✓ Branch 9 taken 847 times.
✓ Branch 10 taken 121 times.
✓ Branch 11 taken 726 times.
✓ Branch 12 taken 121 times.
✓ Branch 13 taken 726 times.
✓ Branch 14 taken 121 times.
✓ Branch 15 taken 605 times.
✓ Branch 16 taken 121 times.
✓ Branch 17 taken 847 times.
✓ Branch 18 taken 121 times.
✓ Branch 19 taken 726 times.
✓ Branch 20 taken 121 times.
✓ Branch 21 taken 726 times.
✓ Branch 22 taken 121 times.
✓ Branch 23 taken 605 times.
✓ Branch 24 taken 121 times.
✓ Branch 25 taken 847 times.
✓ Branch 26 taken 121 times.
✓ Branch 27 taken 726 times.
✓ Branch 28 taken 121 times.
✓ Branch 29 taken 726 times.
✓ Branch 30 taken 121 times.
✓ Branch 31 taken 605 times.
✓ Branch 32 taken 121 times.
✓ Branch 33 taken 605 times.
✓ Branch 34 taken 121 times.
✓ Branch 35 taken 484 times.
✓ Branch 36 taken 121 times.
✓ Branch 37 taken 484 times.
✓ Branch 38 taken 121 times.
✓ Branch 39 taken 363 times.
✓ Branch 40 taken 141 times.
✓ Branch 41 taken 846 times.
✓ Branch 42 taken 141 times.
✓ Branch 43 taken 705 times.
✓ Branch 44 taken 141 times.
✓ Branch 45 taken 705 times.
✓ Branch 46 taken 141 times.
✓ Branch 47 taken 564 times.
2892245881 for (int eqIdx=0; eqIdx < numEq; ++eqIdx)
33 4935352308 resetEq(eqIdx);
34 }
35
36 /*!
37 * \brief Reset the boundary types for one equation.
38 */
39 void resetEq(const int eqIdx)
40 {
41
3/8
✗ Branch 0 not taken.
✓ Branch 1 taken 60 times.
✓ Branch 2 taken 10 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✓ Branch 7 taken 26 times.
4915808772 ParentType::resetEq(eqIdx);
42
43
3/8
✗ Branch 0 not taken.
✓ Branch 1 taken 60 times.
✓ Branch 2 taken 10 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✓ Branch 7 taken 26 times.
5959575677 boundaryInfo_[eqIdx].isSymmetry = false;
44
3/8
✗ Branch 0 not taken.
✓ Branch 1 taken 60 times.
✓ Branch 2 taken 10 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✓ Branch 7 taken 26 times.
5959575677 boundaryInfo_[eqIdx].isBeaversJoseph = false;
45
6/16
✗ Branch 0 not taken.
✓ Branch 1 taken 60 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 60 times.
✓ Branch 4 taken 10 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 10 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✓ Branch 13 taken 26 times.
✗ Branch 14 not taken.
✓ Branch 15 taken 26 times.
10875384449 boundaryInfo_[eqIdx].isOutflow = false;
46 }
47
48 /*!
49 * \brief Sets a symmetry boundary condition for all equations
50 */
51 void setAllSymmetry()
52 {
53
2/2
✓ Branch 0 taken 947435608 times.
✓ Branch 1 taken 145736077 times.
1093171685 for (int eqIdx=0; eqIdx < numEq; ++eqIdx)
54 {
55 947435608 resetEq(eqIdx);
56 1894871216 boundaryInfo_[eqIdx].isSymmetry = true;
57 }
58 }
59
60 /*!
61 * \brief Returns true if the there is a symmetry boundary condition
62 */
63 bool isSymmetry() const
64
56/88
✓ Branch 0 taken 12677255 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 12677255 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 13630222 times.
✓ Branch 5 taken 978832 times.
✓ Branch 6 taken 13630222 times.
✓ Branch 7 taken 978832 times.
✓ Branch 8 taken 5381976 times.
✓ Branch 9 taken 914914 times.
✓ Branch 10 taken 5381976 times.
✓ Branch 11 taken 914914 times.
✓ Branch 12 taken 5327300 times.
✓ Branch 13 taken 661612 times.
✓ Branch 14 taken 5327300 times.
✓ Branch 15 taken 661612 times.
✓ Branch 16 taken 6886286 times.
✓ Branch 17 taken 931058 times.
✓ Branch 18 taken 6886286 times.
✓ Branch 19 taken 931058 times.
✓ Branch 20 taken 412058 times.
✓ Branch 21 taken 2012100 times.
✓ Branch 22 taken 412058 times.
✓ Branch 23 taken 2012100 times.
✓ Branch 24 taken 24325 times.
✓ Branch 25 taken 84150 times.
✓ Branch 26 taken 24325 times.
✓ Branch 27 taken 84150 times.
✓ Branch 28 taken 35 times.
✗ Branch 29 not taken.
✓ Branch 30 taken 35 times.
✗ Branch 31 not taken.
✓ Branch 32 taken 35 times.
✗ Branch 33 not taken.
✓ Branch 34 taken 35 times.
✗ Branch 35 not taken.
✓ Branch 36 taken 55 times.
✗ Branch 37 not taken.
✓ Branch 38 taken 55 times.
✗ Branch 39 not taken.
✓ Branch 40 taken 30 times.
✗ Branch 41 not taken.
✓ Branch 42 taken 30 times.
✗ Branch 43 not taken.
✓ Branch 44 taken 50 times.
✗ Branch 45 not taken.
✓ Branch 46 taken 50 times.
✗ Branch 47 not taken.
✓ Branch 48 taken 50 times.
✗ Branch 49 not taken.
✓ Branch 50 taken 50 times.
✗ Branch 51 not taken.
✓ Branch 52 taken 70 times.
✗ Branch 53 not taken.
✓ Branch 54 taken 70 times.
✗ Branch 55 not taken.
✓ Branch 56 taken 30 times.
✗ Branch 57 not taken.
✓ Branch 58 taken 30 times.
✗ Branch 59 not taken.
✓ Branch 60 taken 50 times.
✗ Branch 61 not taken.
✓ Branch 62 taken 50 times.
✗ Branch 63 not taken.
✓ Branch 64 taken 50 times.
✗ Branch 65 not taken.
✓ Branch 66 taken 50 times.
✗ Branch 67 not taken.
✓ Branch 68 taken 70 times.
✗ Branch 69 not taken.
✓ Branch 70 taken 70 times.
✗ Branch 71 not taken.
✓ Branch 72 taken 30 times.
✗ Branch 73 not taken.
✓ Branch 74 taken 30 times.
✗ Branch 75 not taken.
✓ Branch 76 taken 50 times.
✗ Branch 77 not taken.
✓ Branch 78 taken 50 times.
✗ Branch 79 not taken.
✓ Branch 80 taken 50 times.
✗ Branch 81 not taken.
✓ Branch 82 taken 50 times.
✗ Branch 83 not taken.
✓ Branch 84 taken 70 times.
✗ Branch 85 not taken.
✓ Branch 86 taken 70 times.
✗ Branch 87 not taken.
99845626 { return boundaryInfo_[0].isSymmetry; }
65
66 /*!
67 * \brief Prevent setting all boundary conditions to Dirichlet.
68 */
69 template<class T = void>
70 void setAllDirichlet()
71 {
72 static_assert(AlwaysFalse<T>::value, "Setting all boundary types to Dirichlet not permitted!");
73 }
74
75 /*!
76 * \brief Prevent setting all boundary conditions to Neumann.
77 */
78 template<class T = void>
79 void setAllNeumann()
80 {
81 static_assert(AlwaysFalse<T>::value, "Setting all boundary types to Neumann not permitted!");
82 }
83
84 /*!
85 * \brief Set a boundary condition for a single equation to
86 * Beavers-Joseph(-Saffmann) (special case of Dirichlet b.c.).
87 */
88 void setBeaversJoseph(const int eqIdx)
89 {
90 1330708 resetEq(eqIdx);
91 2661416 boundaryInfo_[eqIdx].isBeaversJoseph = true;
92 }
93
94 /*!
95 * \brief Returns true if an equation is used to specify a
96 * Beavers-Joseph(-Saffman) boundary condition.
97 *
98 * \param eqIdx The index of the equation
99 */
100 bool isBeaversJoseph(const int eqIdx) const
101
50/80
✓ Branch 0 taken 8287843 times.
✓ Branch 1 taken 111908 times.
✓ Branch 2 taken 8287843 times.
✓ Branch 3 taken 111908 times.
✓ Branch 4 taken 40 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 40 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 255284 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 255284 times.
✗ Branch 11 not taken.
✓ Branch 12 taken 346568 times.
✗ Branch 13 not taken.
✓ Branch 14 taken 346568 times.
✗ Branch 15 not taken.
✓ Branch 16 taken 13528 times.
✗ Branch 17 not taken.
✓ Branch 18 taken 13528 times.
✗ Branch 19 not taken.
✓ Branch 20 taken 346568 times.
✓ Branch 21 taken 5221408 times.
✓ Branch 22 taken 346568 times.
✓ Branch 23 taken 5221408 times.
✓ Branch 24 taken 149648 times.
✓ Branch 25 taken 5079880 times.
✓ Branch 26 taken 149648 times.
✓ Branch 27 taken 5079880 times.
✓ Branch 28 taken 346568 times.
✓ Branch 29 taken 5270756 times.
✓ Branch 30 taken 346568 times.
✓ Branch 31 taken 5270756 times.
✓ Branch 32 taken 255284 times.
✓ Branch 33 taken 13054478 times.
✓ Branch 34 taken 255284 times.
✓ Branch 35 taken 13054478 times.
✓ Branch 36 taken 137420 times.
✗ Branch 37 not taken.
✓ Branch 38 taken 137420 times.
✗ Branch 39 not taken.
✓ Branch 40 taken 40 times.
✗ Branch 41 not taken.
✓ Branch 42 taken 40 times.
✗ Branch 43 not taken.
✓ Branch 44 taken 40 times.
✗ Branch 45 not taken.
✓ Branch 46 taken 40 times.
✗ Branch 47 not taken.
✓ Branch 48 taken 40 times.
✗ Branch 49 not taken.
✓ Branch 50 taken 40 times.
✗ Branch 51 not taken.
✓ Branch 52 taken 40 times.
✗ Branch 53 not taken.
✓ Branch 54 taken 40 times.
✗ Branch 55 not taken.
✓ Branch 56 taken 40 times.
✗ Branch 57 not taken.
✓ Branch 58 taken 40 times.
✗ Branch 59 not taken.
✓ Branch 60 taken 40 times.
✗ Branch 61 not taken.
✓ Branch 62 taken 40 times.
✗ Branch 63 not taken.
✓ Branch 64 taken 40 times.
✗ Branch 65 not taken.
✓ Branch 66 taken 40 times.
✗ Branch 67 not taken.
✓ Branch 68 taken 40 times.
✗ Branch 69 not taken.
✓ Branch 70 taken 40 times.
✗ Branch 71 not taken.
✓ Branch 72 taken 40 times.
✗ Branch 73 not taken.
✓ Branch 74 taken 40 times.
✗ Branch 75 not taken.
✓ Branch 76 taken 40 times.
✗ Branch 77 not taken.
✓ Branch 78 taken 40 times.
✗ Branch 79 not taken.
77755162 { return boundaryInfo_[eqIdx].isBeaversJoseph; }
102
103 /*!
104 * \brief Returns true if some equation is used to specify a
105 * Beavers-Joseph(-Saffman) boundary condition.
106 */
107 bool hasBeaversJoseph() const
108 {
109 for (int i = 0; i < numEq; ++i)
110 if (boundaryInfo_[i].isBeaversJoseph)
111 return true;
112 return false;
113 }
114
115 /*!
116 * \brief Set an outflow boundary condition
117 */
118 void setOutflow(const int eqIdx)
119 {
120 95000589 resetEq(eqIdx);
121 190001178 boundaryInfo_[eqIdx].isOutflow = true;
122 }
123
124 /*!
125 * \brief Returns true if an outflow boundary condition was set
126 * \param eqIdx The index of the equation
127 */
128 bool isOutflow(const int eqIdx) const
129
154/280
✓ Branch 0 taken 4349068 times.
✓ Branch 1 taken 4274050 times.
✓ Branch 2 taken 4349068 times.
✓ Branch 3 taken 4274050 times.
✓ Branch 4 taken 5212352 times.
✓ Branch 5 taken 3971018 times.
✓ Branch 6 taken 5212352 times.
✓ Branch 7 taken 3971018 times.
✓ Branch 8 taken 2611160 times.
✓ Branch 9 taken 2242682 times.
✓ Branch 10 taken 2611160 times.
✓ Branch 11 taken 2242682 times.
✓ Branch 12 taken 758334 times.
✓ Branch 13 taken 1225210 times.
✓ Branch 14 taken 758334 times.
✓ Branch 15 taken 1225210 times.
✓ Branch 16 taken 98080 times.
✓ Branch 17 taken 623088 times.
✓ Branch 18 taken 98080 times.
✓ Branch 19 taken 623088 times.
✓ Branch 20 taken 60320 times.
✓ Branch 21 taken 270982 times.
✓ Branch 22 taken 60320 times.
✓ Branch 23 taken 270982 times.
✓ Branch 24 taken 56100 times.
✓ Branch 25 taken 81980 times.
✓ Branch 26 taken 56100 times.
✓ Branch 27 taken 81980 times.
✓ Branch 28 taken 20 times.
✗ Branch 29 not taken.
✓ Branch 30 taken 20 times.
✗ Branch 31 not taken.
✗ Branch 32 not taken.
✓ Branch 33 taken 40 times.
✗ Branch 34 not taken.
✓ Branch 35 taken 40 times.
✗ Branch 36 not taken.
✓ Branch 37 taken 20 times.
✗ Branch 38 not taken.
✓ Branch 39 taken 20 times.
✓ Branch 40 taken 40 times.
✗ Branch 41 not taken.
✓ Branch 42 taken 40 times.
✗ Branch 43 not taken.
✗ Branch 44 not taken.
✓ Branch 45 taken 40 times.
✗ Branch 46 not taken.
✓ Branch 47 taken 40 times.
✗ Branch 48 not taken.
✓ Branch 49 taken 20 times.
✗ Branch 50 not taken.
✓ Branch 51 taken 20 times.
✗ Branch 52 not taken.
✓ Branch 53 taken 40 times.
✗ Branch 54 not taken.
✓ Branch 55 taken 40 times.
✗ Branch 56 not taken.
✓ Branch 57 taken 20 times.
✗ Branch 58 not taken.
✓ Branch 59 taken 20 times.
✓ Branch 60 taken 20 times.
✗ Branch 61 not taken.
✓ Branch 62 taken 20 times.
✗ Branch 63 not taken.
✗ Branch 64 not taken.
✓ Branch 65 taken 40 times.
✗ Branch 66 not taken.
✓ Branch 67 taken 40 times.
✗ Branch 68 not taken.
✓ Branch 69 taken 20 times.
✗ Branch 70 not taken.
✓ Branch 71 taken 20 times.
✓ Branch 72 taken 20 times.
✗ Branch 73 not taken.
✓ Branch 74 taken 20 times.
✗ Branch 75 not taken.
✗ Branch 76 not taken.
✓ Branch 77 taken 40 times.
✗ Branch 78 not taken.
✓ Branch 79 taken 40 times.
✗ Branch 80 not taken.
✓ Branch 81 taken 20 times.
✗ Branch 82 not taken.
✓ Branch 83 taken 20 times.
✓ Branch 84 taken 40 times.
✗ Branch 85 not taken.
✓ Branch 86 taken 40 times.
✗ Branch 87 not taken.
✗ Branch 88 not taken.
✓ Branch 89 taken 40 times.
✗ Branch 90 not taken.
✓ Branch 91 taken 40 times.
✗ Branch 92 not taken.
✓ Branch 93 taken 20 times.
✗ Branch 94 not taken.
✓ Branch 95 taken 20 times.
✓ Branch 96 taken 15 times.
✗ Branch 97 not taken.
✓ Branch 98 taken 15 times.
✗ Branch 99 not taken.
✗ Branch 100 not taken.
✓ Branch 101 taken 40 times.
✗ Branch 102 not taken.
✓ Branch 103 taken 40 times.
✗ Branch 104 not taken.
✓ Branch 105 taken 20 times.
✗ Branch 106 not taken.
✓ Branch 107 taken 20 times.
✓ Branch 108 taken 35 times.
✗ Branch 109 not taken.
✓ Branch 110 taken 35 times.
✗ Branch 111 not taken.
✗ Branch 112 not taken.
✓ Branch 113 taken 40 times.
✗ Branch 114 not taken.
✓ Branch 115 taken 40 times.
✗ Branch 116 not taken.
✓ Branch 117 taken 20 times.
✗ Branch 118 not taken.
✓ Branch 119 taken 20 times.
✓ Branch 120 taken 35 times.
✗ Branch 121 not taken.
✓ Branch 122 taken 35 times.
✗ Branch 123 not taken.
✗ Branch 124 not taken.
✓ Branch 125 taken 40 times.
✗ Branch 126 not taken.
✓ Branch 127 taken 40 times.
✗ Branch 128 not taken.
✓ Branch 129 taken 20 times.
✗ Branch 130 not taken.
✓ Branch 131 taken 20 times.
✓ Branch 132 taken 55 times.
✗ Branch 133 not taken.
✓ Branch 134 taken 55 times.
✗ Branch 135 not taken.
✗ Branch 136 not taken.
✓ Branch 137 taken 40 times.
✗ Branch 138 not taken.
✓ Branch 139 taken 40 times.
✗ Branch 140 not taken.
✓ Branch 141 taken 20 times.
✗ Branch 142 not taken.
✓ Branch 143 taken 20 times.
✓ Branch 144 taken 30 times.
✗ Branch 145 not taken.
✓ Branch 146 taken 30 times.
✗ Branch 147 not taken.
✗ Branch 148 not taken.
✓ Branch 149 taken 40 times.
✗ Branch 150 not taken.
✓ Branch 151 taken 40 times.
✗ Branch 152 not taken.
✓ Branch 153 taken 20 times.
✗ Branch 154 not taken.
✓ Branch 155 taken 20 times.
✓ Branch 156 taken 50 times.
✗ Branch 157 not taken.
✓ Branch 158 taken 50 times.
✗ Branch 159 not taken.
✗ Branch 160 not taken.
✓ Branch 161 taken 40 times.
✗ Branch 162 not taken.
✓ Branch 163 taken 40 times.
✗ Branch 164 not taken.
✓ Branch 165 taken 20 times.
✗ Branch 166 not taken.
✓ Branch 167 taken 20 times.
✓ Branch 168 taken 50 times.
✗ Branch 169 not taken.
✓ Branch 170 taken 50 times.
✗ Branch 171 not taken.
✗ Branch 172 not taken.
✓ Branch 173 taken 40 times.
✗ Branch 174 not taken.
✓ Branch 175 taken 40 times.
✗ Branch 176 not taken.
✓ Branch 177 taken 20 times.
✗ Branch 178 not taken.
✓ Branch 179 taken 20 times.
✓ Branch 180 taken 70 times.
✗ Branch 181 not taken.
✓ Branch 182 taken 70 times.
✗ Branch 183 not taken.
✗ Branch 184 not taken.
✓ Branch 185 taken 40 times.
✗ Branch 186 not taken.
✓ Branch 187 taken 40 times.
✗ Branch 188 not taken.
✓ Branch 189 taken 20 times.
✗ Branch 190 not taken.
✓ Branch 191 taken 20 times.
✓ Branch 192 taken 30 times.
✗ Branch 193 not taken.
✓ Branch 194 taken 30 times.
✗ Branch 195 not taken.
✗ Branch 196 not taken.
✓ Branch 197 taken 40 times.
✗ Branch 198 not taken.
✓ Branch 199 taken 40 times.
✗ Branch 200 not taken.
✓ Branch 201 taken 20 times.
✗ Branch 202 not taken.
✓ Branch 203 taken 20 times.
✓ Branch 204 taken 50 times.
✗ Branch 205 not taken.
✓ Branch 206 taken 50 times.
✗ Branch 207 not taken.
✗ Branch 208 not taken.
✓ Branch 209 taken 40 times.
✗ Branch 210 not taken.
✓ Branch 211 taken 40 times.
✗ Branch 212 not taken.
✓ Branch 213 taken 20 times.
✗ Branch 214 not taken.
✓ Branch 215 taken 20 times.
✓ Branch 216 taken 50 times.
✗ Branch 217 not taken.
✓ Branch 218 taken 50 times.
✗ Branch 219 not taken.
✗ Branch 220 not taken.
✓ Branch 221 taken 40 times.
✗ Branch 222 not taken.
✓ Branch 223 taken 40 times.
✗ Branch 224 not taken.
✓ Branch 225 taken 20 times.
✗ Branch 226 not taken.
✓ Branch 227 taken 20 times.
✓ Branch 228 taken 70 times.
✗ Branch 229 not taken.
✓ Branch 230 taken 70 times.
✗ Branch 231 not taken.
✗ Branch 232 not taken.
✓ Branch 233 taken 40 times.
✗ Branch 234 not taken.
✓ Branch 235 taken 40 times.
✗ Branch 236 not taken.
✓ Branch 237 taken 20 times.
✗ Branch 238 not taken.
✓ Branch 239 taken 20 times.
✓ Branch 240 taken 30 times.
✗ Branch 241 not taken.
✓ Branch 242 taken 30 times.
✗ Branch 243 not taken.
✗ Branch 244 not taken.
✓ Branch 245 taken 40 times.
✗ Branch 246 not taken.
✓ Branch 247 taken 40 times.
✗ Branch 248 not taken.
✓ Branch 249 taken 20 times.
✗ Branch 250 not taken.
✓ Branch 251 taken 20 times.
✓ Branch 252 taken 50 times.
✗ Branch 253 not taken.
✓ Branch 254 taken 50 times.
✗ Branch 255 not taken.
✗ Branch 256 not taken.
✓ Branch 257 taken 40 times.
✗ Branch 258 not taken.
✓ Branch 259 taken 40 times.
✗ Branch 260 not taken.
✓ Branch 261 taken 20 times.
✗ Branch 262 not taken.
✓ Branch 263 taken 20 times.
✓ Branch 264 taken 50 times.
✗ Branch 265 not taken.
✓ Branch 266 taken 50 times.
✗ Branch 267 not taken.
✗ Branch 268 not taken.
✓ Branch 269 taken 40 times.
✗ Branch 270 not taken.
✓ Branch 271 taken 40 times.
✗ Branch 272 not taken.
✓ Branch 273 taken 20 times.
✗ Branch 274 not taken.
✓ Branch 275 taken 20 times.
✓ Branch 276 taken 70 times.
✗ Branch 277 not taken.
✓ Branch 278 taken 70 times.
✗ Branch 279 not taken.
52255312 { return boundaryInfo_[eqIdx].isOutflow; }
130
131 /*!
132 * \brief Returns true if some equation has an outflow boundary condition
133 */
134 bool hasOutflow() const
135 {
136 for (int i = 0; i < numEq; ++i)
137 if (boundaryInfo_[i].isOutflow)
138 return true;
139 return false;
140 }
141
142 protected:
143 //! use bitfields to minimize the size
144 struct NavierStokesBoundaryInfo
145 {
146 bool isSymmetry : 1;
147 bool isOutflow : 1;
148 bool isBeaversJoseph : 1;
149 };
150
151 std::array<NavierStokesBoundaryInfo, numEq> boundaryInfo_;
152 };
153
154 } // end namespace Dumux
155
156 #endif
157