Tensor-level view of a symmetry-preserving collection of dense blocks.
More...
#include <block_tensor_concepts.hpp>
template<class Tensor>
typename block_tensor_type_t<Tensor>::element_type;
typename block_tensor_type_t<Tensor>::value_type;
typename block_tensor_type_t<Tensor>::key_type;
typename block_tensor_type_t<Tensor>::domain_type;
typename block_tensor_type_t<Tensor>::codomain_type;
typename block_tensor_type_t<Tensor>::storage_policy;
typename block_tensor_type_t<Tensor>::backend_selector_type;
{ tensor.symmetry() } -> std::same_as<Symmetry>;
{ tensor.domain() } -> std::same_as<block_tensor_domain_t<Tensor> const&>;
{ tensor.codomain() } -> std::same_as<block_tensor_codomain_t<Tensor> const&>;
{ block_tensor_type_t<Tensor>::order() } -> std::same_as<std::size_t>;
{ block_tensor_type_t<Tensor>::key_coordinate_count() } -> std::same_as<std::size_t>;
{ block_tensor_type_t<Tensor>::dense_block_order() } -> std::same_as<std::size_t>;
{ tensor.stored_block_count() } -> std::same_as<std::size_t>;
{ tensor.stored_keys() } -> std::same_as<std::span<block_tensor_key_t<Tensor> const>>;
{ tensor.block_by_ordinal(ordinal) } -> TensorView;
}
Tensor-level view of a symmetry-preserving collection of dense blocks.
Definition block_tensor_concepts.hpp:52
Tensor-level view of a symmetry-preserving collection of dense blocks.
An owning BlockTensor and a non-owning mapped view may both model this concept. Stored keys are unique and lexicographically ordered; their positions are stable block ordinals for the lifetime of the view. The dense blocks may require execution-domain acquisition.