33 #define CHECK(x) assert( 0 <= x ); assert( x < m ## x ## r.mextent ) 34 #define OFFSET(x) m ## x ## r.mstart + x * m ## x ## r.mstride 162 Index nvitrines()
const;
163 Index nshelves()
const;
164 Index nbooks()
const;
165 Index npages()
const;
382 return get(v, s, b, p, r, c);
879 return get(v, s, b, p, r, c);
892 const Numeric *get_c_array()
const;
990 double (&my_func)(
double),
1009 #endif // matpackVI_h
Range mcr
The column range of mdata that is actually used.
INDEX Index
The type to use for all integer numbers and indices.
bool operator!=(const Iterator6D &other) const
Not equal operator, needed for algorithms like copy.
void swap(Vector &v1, Vector &v2)
Swaps two objects.
The outermost iterator class for rank 6 tensors.
ConstTensor5View msv
Current position.
bool operator!=(const ConstIterator6D &other) const
Not equal operator, needed for algorithms like copy.
A constant view of a Tensor7.
Range mcr
The column range of mdata that is actually used.
Index mstart
The start index.
Numeric get(Index v, Index s, Index b, Index p, Index r, Index c) const
Get element implementation without assertions.
A constant view of a Tensor6.
Tensor5View & operator*()
Dereferencing.
Iterator6D()
Default constructor.
Const version of Iterator6D.
Numeric min(const ConstTensor6View &x)
Min function, tensor version.
Range msr
The shelf range of mdata that is actually used.
ConstIterator6D()
Default constructor.
void transform(Tensor6View y, double(&my_func)(double), ConstTensor6View x)
A generic transform function for tensors, which can be used to implement mathematical functions opera...
A constant view of a Tensor4.
Range mbr
The book range of mdata that is actually used.
Tensor5View * operator->()
The -> operator is needed, so that we can write i->begin() to get the 1D iterators.
Numeric max(const ConstTensor6View &x)
Max function, tensor version.
virtual ~ConstTensor6View()
Range mbr
The book range of mdata that is actually used.
Range mpr
The page range of mdata that is actually used.
Numeric debug_tensor6view_get_elem(Tensor6View &tv, Index v, Index s, Index b, Index p, Index r, Index c)
Helper function to access tensor elements.
Numeric * mdata
Pointer to the plain C array that holds the data.
#define CHECK(x)
Implementation of Tensors of Rank 6.
const ConstTensor5View * operator->() const
The -> operator is needed, so that we can write i->begin() to get the 1D iterators.
Range mrr
The row range of mdata that is actually used.
const ConstTensor5View & operator*() const
Dereferencing.
Iterator6D(const Tensor5View &x, Index stride)
Explicit constructor.
ConstIterator6D(const ConstTensor5View &x, Index stride)
Explicit constructor.
A constant view of a Tensor5.
Tensor5View msv
Current position.
NUMERIC Numeric
The type to use for all floating point numbers.
Implementation of Tensors of Rank 7.
Range msr
The shelf range of mdata that is actually used.
Numeric * mdata
Pointer to the plain C array that holds the data.
Range mvr
The vitrine range of mdata that is actually used.
Iterator6D & operator++()
Prefix increment operator.
Const version of Iterator7D.
A constant view of a Tensor3.
Range mrr
The row range of mdata that is actually used.
A constant view of a Vector.
Range mpr
The page range of mdata that is actually used.
A constant view of a Matrix.
void copy(ConstIterator6D origin, const ConstIterator6D &end, Iterator6D target)
Copy data between begin and end to target.
std::ostream & operator<<(std::ostream &os, const ConstTensor6View &v)
Output operator.
ConstTensor6View operator()(const Range &v, const Range &s, const Range &b, const Range &p, const Range &r, const Range &c) const
ConstIterator6D & operator++()
Prefix increment operator.