![]() |
IgANet
IgANets - Isogeometric Analysis Networks
|
Compile-time block tensor core. More...
#include </home/runner/work/iganet/iganet/include/utils/blocktensor.hpp>
Public Member Functions | |
BlockTensorCore ()=default | |
Default constructor. | |
template<typename... Ts, std::size_t... dims> | |
BlockTensorCore (BlockTensor< Ts, dims... > &&...other) | |
Constructur from BlockTensor objects. | |
template<typename... Ts, std::size_t... dims> | |
BlockTensorCore (BlockTensorCore< Ts, dims... > &&...other) | |
Constructur from BlockTensorCore objects. | |
template<typename... Ts> | |
BlockTensorCore (Ts &&...data) | |
Constructor from variadic templates. | |
std::array< std::shared_ptr< T >,(Dims *...)> & | data () |
Returns a non-constant reference to the data array. | |
const std::array< std::shared_ptr< T >,(Dims *...)> & | data () const |
Returns a constant reference to the data array. | |
T & | operator() (std::size_t idx) |
Returns a non-constant reference to entry (idx) | |
const T & | operator() (std::size_t idx) const |
Returns a constant reference to entry (idx) | |
std::shared_ptr< T > & | operator[] (std::size_t idx) |
Returns a non-constant shared pointer to entry (idx) | |
const std::shared_ptr< T > & | operator[] (std::size_t idx) const |
Returns a constant shared pointer to entry (idx) | |
virtual void | pretty_print (std::ostream &os=Log(log::info)) const noexcept=0 |
Returns a string representation of the BlockTensorCore object. | |
template<typename Data > | |
T & | set (std::size_t idx, Data &&data) |
Stores the given data object at the given index. | |
Static Public Member Functions | |
template<std::size_t i> | |
static constexpr std::size_t | dim () |
Returns the i-th dimension. | |
static constexpr auto | dims () |
Returns all dimensions as array. | |
static constexpr std::size_t | entries () |
Returns the total number of entries. | |
static constexpr std::size_t | size () |
Returns the number of dimensions. | |
Protected Attributes | |
std::array< std::shared_ptr< T >,(Dims *...)> | data_ |
Array storing the data. | |
![]() | |
at::optional< std::string > | name_ |
String storing the full qualified name of the object. | |
Additional Inherited Members | |
![]() | |
virtual const std::string & | name () const noexcept |
Returns the full qualified name of the object. | |
Compile-time block tensor core.
|
default |
Default constructor.
|
inline |
Constructur from BlockTensorCore objects.
|
inline |
Constructur from BlockTensor objects.
|
inlineexplicit |
Constructor from variadic templates.
|
inline |
Returns a non-constant reference to the data array.
|
inline |
Returns a constant reference to the data array.
|
inlinestaticconstexpr |
Returns the i-th dimension.
|
inlinestaticconstexpr |
Returns all dimensions as array.
|
inlinestaticconstexpr |
Returns the total number of entries.
|
inline |
Returns a non-constant reference to entry (idx)
|
inline |
Returns a constant reference to entry (idx)
|
inline |
Returns a non-constant shared pointer to entry (idx)
|
inline |
Returns a constant shared pointer to entry (idx)
|
inlinepure virtualnoexcept |
Returns a string representation of the BlockTensorCore object.
Implements iganet::utils::FullQualifiedName.
Implemented in iganet::utils::BlockTensor< T, Rows >, iganet::utils::BlockTensor< T, Rows, Cols >, and iganet::utils::BlockTensor< T, Rows, Cols, Slices >.
|
inline |
Stores the given data object at the given index.
|
inlinestaticconstexpr |
Returns the number of dimensions.
|
protected |
Array storing the data.