|
constexpr | static_multidim_array (static_multidim_array const &other)=default |
|
constexpr | static_multidim_array (static_multidim_array &&other) noexcept=default |
|
constexpr auto | operator= (static_multidim_array const &other) -> static_multidim_array &=default |
|
constexpr auto | operator= (static_multidim_array &&other) noexcept -> static_multidim_array &=default |
|
| ~static_multidim_array ()=default |
|
template<typename OtherT , typename OtherIndexing , typename OtherMemLoc > |
constexpr | static_multidim_array (static_multidim_array< OtherT, OtherIndexing, OtherMemLoc, Resolution... > const &other) |
|
template<typename OtherT , typename OtherIndexing , typename OtherMemLoc > |
constexpr auto | operator= (static_multidim_array< OtherT, OtherIndexing, OtherMemLoc, Resolution... > const &other) -> static_multidim_array & |
|
constexpr | static_multidim_array (convertible_to< ValueType > auto &&... ts) |
|
constexpr | static_multidim_array () |
|
template<typename S > |
constexpr | static_multidim_array (tag::fill< S > const &f) |
|
constexpr | static_multidim_array (tag::zeros_t) |
|
constexpr | static_multidim_array (tag::ones_t) |
|
| static_multidim_array (std::vector< ValueType > const &data) |
|
constexpr | static_multidim_array (std::array< ValueType, num_components()> const &data) |
|
constexpr | static_multidim_array (std::array< ValueType, num_components()> &&data) |
|
constexpr | static_multidim_array (std::vector< ValueType > &&data) |
|
template<typename RandomReal , typename Engine >
requires arithmetic<ValueType> |
constexpr | static_multidim_array (random::uniform< RandomReal, Engine > &rand) |
|
template<typename RandomReal , typename Engine >
requires arithmetic<ValueType> |
constexpr | static_multidim_array (random::uniform< RandomReal, Engine > &&rand) |
|
template<typename RandomReal , typename Engine >
requires arithmetic<ValueType> |
constexpr | static_multidim_array (random::normal< RandomReal, Engine > &&rand) |
|
template<typename RandomReal , typename Engine >
requires arithmetic<ValueType> |
constexpr | static_multidim_array (random::normal< RandomReal, Engine > &rand) |
|
constexpr auto | at (integral auto const ... is) const -> const auto &requires(sizeof...(is)==num_dimensions()) |
|
constexpr auto | at (integral auto const ... is) -> auto &requires(sizeof...(is)==num_dimensions()) |
|
constexpr auto | at (integral_range auto const &indices) const -> auto const & |
|
constexpr auto | at (integral_range auto const &indices) -> auto & |
|
constexpr auto | operator() (integral auto const ... is) const -> auto const &requires(sizeof...(is)==num_dimensions()) |
|
constexpr auto | operator() (integral auto const ... is) -> auto & |
|
constexpr auto | operator() (integral_range auto const &indices) const -> const auto & |
|
constexpr auto | operator() (integral_range auto const &indices) -> auto & |
|
constexpr auto | operator[] (std::size_t i) -> auto & |
|
constexpr auto | operator[] (std::size_t i) const -> auto const & |
|
constexpr auto | internal_container () -> auto & |
|
constexpr auto | internal_container () const -> auto const & |
|
constexpr auto | data () -> ValueType * |
|
constexpr auto | data () const -> ValueType const * |
|
template<typename F > |
constexpr void | unary_operation (F &&f) |
|
template<typename F , typename OtherT , typename OtherIndexing , typename OtherMemLoc > |
constexpr void | binary_operation (F &&f, static_multidim_array< OtherT, OtherIndexing, OtherMemLoc, Resolution... > const &other) |
|
|
static std::size_t constexpr | num_components () |
|
static std::size_t constexpr | num_dimensions () |
|
static auto constexpr | size () |
|
static auto constexpr | plain_index (integral auto const ... indices) |
|
static auto | plain_index (integral_range auto const &indices) |
|
static auto constexpr | in_range (integral auto const ... indices) |
|
static constexpr auto | zeros () |
|
static constexpr auto | ones () |
|
template<typename S > |
static constexpr auto | fill (S &&s) |
|
template<typename RandEng = std::mt19937_64>
requires arithmetic<ValueType> |
static auto | randu (ValueType min=0, ValueType max=1, RandEng &&eng=RandEng{std::random_device{}()}) |
|
template<typename RandEng = std::mt19937_64>
requires arithmetic<ValueType> |
static auto | randn (ValueType mean=0, ValueType stddev=1, RandEng &&eng=RandEng{std::random_device{}()}) |
|