35 ZX = XZ, ZY = YZ, ZZ = 2,
42 static constexpr auto indices = std::array<VoigtIndex, 9>{
54 static constexpr auto unique_indices = std::array<VoigtIndex, 6>{
63 static constexpr auto diag_indices = std::array<VoigtIndex, 3>{
69 VoigtContainer() =
default;
72 explicit VoigtContainer(
const Array& array);
74 VoigtContainer(std::initializer_list<T> value)
76 std::copy_n(value.begin(),
77 std::min(data_.size(), value.size()),
81 const T& operator[](
const VoigtIndex idx)
const
82 {
return data_[
static_cast<std::underlying_type_t<VoigtIndex>
>(idx)]; }
84 T& operator [](
const VoigtIndex idx)
85 {
return data_[
static_cast<std::underlying_type_t<VoigtIndex>
>(idx)]; }
87 constexpr std::size_t size()
const {
return data_.size(); }
90 std::array<T, 6> data_{};
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition Exceptions.hpp:30