Minsky
|
#include <tensorOp.h>
Public Member Functions | |
template<class F > | |
Scan (F f, const TensorPtr &arg={}, const std::string &dimName="", double av=0) | |
void | setArgument (const TensorPtr &arg, const ITensor::Args &args) override |
void | computeTensor () const override |
computeTensor updates the above two mutable fields, but is logically const 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... | |
![]() | |
const Index & | index () const override |
the index vector - assumed to be ordered and unique More... | |
std::size_t | size () const override |
return number of elements in tensor - maybe less than hypercube.numElements if sparse More... | |
double | operator[] (std::size_t i) const override |
return or compute data at a location More... | |
const Hypercube & | hypercube () const override |
information describing the axes, types and labels of this tensor More... | |
const Hypercube & | hypercube (const Hypercube &hc) override |
const Hypercube & | hypercube (Hypercube &&hc) override |
![]() | |
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 () |
std::size_t | rank () const |
std::vector< unsigned > | shape () const |
void | imposeDimensions (const Dimensions &dimensions) |
impose dimensions according to dimension map dimensions 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}) |
Public Attributes | |
std::function< void(double &, double, std::size_t)> | f |
![]() | |
std::size_t | dimension =std::numeric_limits<std::size_t>::max() |
dimension to apply operation over. >rank = all dims More... | |
double | argVal =0 |
op arg value, eg binsize or delta in difference op More... | |
TensorPtr | arg |
Additional Inherited Members | |
![]() | |
using | Timestamp = std::chrono::time_point< std::chrono::high_resolution_clock > |
![]() | |
void | notImpl () const |
![]() | |
TensorVal | cachedResult |
Timestamp | m_timestamp |
![]() | |
Hypercube | m_hypercube |
Index | m_index |
Definition at line 208 of file tensorOp.h.
|
inline |
Definition at line 213 of file tensorOp.h.
|
overridevirtual |
computeTensor updates the above two mutable fields, but is logically const
Implements civita::CachedTensorOp.
Definition at line 199 of file tensorOp.cc.
References f.
|
inlineoverridevirtual |
Reimplemented from civita::DimensionedArgCachedOp.
Definition at line 215 of file tensorOp.h.
References civita::DimensionedArgCachedOp::arg, civita::CachedTensorOp::cachedResult, and civita::DimensionedArgCachedOp::setArgument().
std::function<void(double&,double,std::size_t)> civita::Scan::f |
Definition at line 211 of file tensorOp.h.