Minsky
|
#include <tensorOp.h>
Public Member Functions | |
void | setArgument (const TensorPtr &a, const ITensor::Args &args={"", 0}) override |
argument indices corresponding to this indices, when sparse More... | |
void | setPermutation (const std::vector< std::size_t > &p) |
void | setPermutation (std::vector< std::size_t > &&) |
std::size_t | axis () const |
const std::vector< std::size_t > & | permutation () const |
double | operator[] (std::size_t i) const override |
return or compute data at a location More... | |
Timestamp | timestamp () const override |
timestamp indicating how old the dependendent data might be. Used in CachedTensorOp to determine when to invalidate the cache More... | |
![]() | |
CLASSDESC_ACCESS (ITensor) | |
ITensor () | |
ITensor (const Hypercube &hc) | |
ITensor (Hypercube &&hc) | |
ITensor (const std::vector< unsigned > &dims) | |
ITensor (const ITensor &)=default | |
ITensor (ITensor &&)=default | |
ITensor & | operator= (const ITensor &)=default |
ITensor & | operator= (ITensor &&)=default |
virtual | ~ITensor () |
virtual const Hypercube & | hypercube () const |
information describing the axes, types and labels of this tensor More... | |
virtual const Hypercube & | hypercube (const Hypercube &hc) |
virtual const Hypercube & | hypercube (Hypercube &&hc) |
std::size_t | rank () const |
std::vector< unsigned > | shape () const |
void | imposeDimensions (const Dimensions &dimensions) |
impose dimensions according to dimension map dimensions More... | |
virtual const Index & | index () const |
the index vector - assumed to be ordered and unique More... | |
virtual std::size_t | size () const |
return number of elements in tensor - maybe less than hypercube.numElements if sparse More... | |
double | atHCIndex (std::size_t hcIdx) const |
returns the data value at hypercube index hcIdx, or NaN if More... | |
template<class T > | |
std::size_t | hcIndex (const std::initializer_list< T > &indices) const |
template<class T > | |
double | operator() (const std::initializer_list< T > &indices) const |
virtual void | setArguments (const TensorPtr &, const TensorPtr &, const ITensor::Args &args={}) |
virtual void | setArguments (const std::vector< TensorPtr > &a, const ITensor::Args &args={"", 0}) |
virtual void | setArguments (const std::vector< TensorPtr > &a1, const std::vector< TensorPtr > &a2, const ITensor::Args &args={"", 0}) |
Private Attributes | |
TensorPtr | arg |
std::size_t | m_axis |
std::vector< std::size_t > | m_permutation |
std::vector< std::size_t > | permutedIndex |
Additional Inherited Members | |
![]() | |
using | Timestamp = std::chrono::time_point< std::chrono::high_resolution_clock > |
![]() | |
void | notImpl () const |
![]() | |
Hypercube | m_hypercube |
Index | m_index |
Definition at line 253 of file tensorOp.h.
|
inline |
|
overridevirtual |
return or compute data at a location
Implements civita::ITensor.
Definition at line 451 of file tensorOp.cc.
|
inline |
Definition at line 265 of file tensorOp.h.
References m_permutation.
|
overridevirtual |
argument indices corresponding to this indices, when sparse
Reimplemented from civita::ITensor.
Definition at line 413 of file tensorOp.cc.
References civita::ITensor::Args::dimension.
Referenced by minsky::GeneralTensorOp< OperationType::slice >::setArgument().
|
inline |
Definition at line 261 of file tensorOp.h.
void civita::PermuteAxis::setPermutation | ( | std::vector< std::size_t > && | ) |
|
inlineoverridevirtual |
timestamp indicating how old the dependendent data might be. Used in CachedTensorOp to determine when to invalidate the cache
Implements civita::ITensor.
Definition at line 267 of file tensorOp.h.
References arg.
|
private |
Definition at line 255 of file tensorOp.h.
Referenced by timestamp().
|
private |
Definition at line 256 of file tensorOp.h.
Referenced by axis().
|
private |
Definition at line 257 of file tensorOp.h.
Referenced by permutation().
|
private |
Definition at line 258 of file tensorOp.h.