16 #ifndef OPENKALMAN_MAKE_CONSTANT_DIAGONAL_HPP 17 #define OPENKALMAN_MAKE_CONSTANT_DIAGONAL_HPP 32 template<
values::value C,
typename IndexType, std::size_t...Extents>
35 template<
typename C,
typename IndexType, std::size_t...Extents, std::enable_if_t<values::value<C>,
int> = 0>
50 template<values::value C, coordinates::pattern_collection P> requires values::fixed<collections::size_of<P>>
53 template<
typename C,
typename P, std::enable_if_t<
55 coordinates::pattern_collection<P> and
56 values::fixed<collections::size_of<P>>,
int> = 0>
73 template<
typename C,
typename...Ps, std::enable_if_t<values::value<C> and (... and coordinates::pattern<Ps>),
int> = 0>
87 template<coordinates::pattern_collection P, values::value C> requires
88 std::default_initializable<P> and
89 values::fixed<collections::size_of<P>>
92 template<
typename C,
typename P, std::enable_if_t<
93 coordinates::pattern_collection<P> and
95 values::fixed<collections::size_of<P>>,
int> = 0>
Definition for constant_diagonal_object.
constexpr bool pattern
An object describing the set of coordinates associated with a tensor index.
Definition: pattern.hpp:31
constexpr bool value
T is a fixed or dynamic value that is reducible to a number.
Definition: value.hpp:45
decltype(auto) constexpr to_diagonal(Arg &&arg)
Convert an indexible object into a diagonal matrix.
Definition: to_diagonal.hpp:33
The root namespace for OpenKalman.
Definition: basics.hpp:34
constexpr bool constant_diagonal_object
Specifies that all diagonal elements of a diagonal object are known at compile time to be the same co...
Definition: constant_diagonal_object.hpp:38
constexpr auto make_constant_diagonal(C c, stdex::extents< IndexType, Extents... > extents)
Make an indexible object in which every diagonal element is a constant value.
Definition: make_constant_diagonal.hpp:38
constexpr auto make_constant(C c, stdex::extents< IndexType, Extents... > extents)
Make an indexible object in which every element is a constant value.
Definition: make_constant.hpp:39
Definition for to_diagonal function.
Definitions for make_constant.
Definition: extents.hpp:372