21 #ifndef OPM_BC_PROP_HPP 22 #define OPM_BC_PROP_HPP 28 #include <opm/input/eclipse/EclipseState/Grid/FaceDir.hpp> 29 #include <opm/input/eclipse/EclipseState/Grid/GridDims.hpp> 45 enum class BCMECHType {
51 enum class BCComponent {
64 std::array<double,3> disp{};
65 std::array<double,6> stress{};
66 std::array<bool,3> fixeddir{};
71 {3.0, 4.0, 5.0, 6.0, 7.0, 8.0},
75 template<
class Serializer>
85 return disp == other.disp &&
86 stress == other.stress &&
87 fixeddir == other.fixeddir;
97 BCType bctype{BCType::NONE};
98 BCMECHType bcmechtype{BCMECHType::NONE};
99 BCComponent component{BCComponent::NONE};
101 std::optional<double> pressure{};
102 std::optional<double> temperature{};
104 std::optional<MechBCValue> mechbcvalue{};
109 static BCFace serializationTestObject();
111 bool operator==(
const BCFace& other)
const;
113 template<
class Serializer>
118 serializer(bcmechtype);
119 serializer(component);
121 serializer(pressure);
122 serializer(temperature);
123 serializer(mechbcvalue);
129 static BCProp serializationTestObject();
131 std::size_t size()
const;
132 std::vector<BCFace>::const_iterator begin()
const;
133 std::vector<BCFace>::const_iterator end()
const;
134 bool operator==(
const BCProp& other)
const;
135 const BCFace& operator[](
int index)
const;
139 template<
class Serializer>
146 std::vector<BCFace> m_faces;
Definition: BCProp.hpp:94
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition: Exceptions.hpp:30
Definition: BCProp.hpp:63
Definition: BCProp.hpp:91
Definition: DeckRecord.hpp:32
Class for (de-)serializing.
Definition: Serializer.hpp:94