Go to the documentation of this file.
281 msv(o.msv), mstride(o.mstride)
288 msv(x), mstride(stride)
339 msv(o.msv), mstride(o.mstride)
346 msv(x), mstride(stride)
414 const Range& c)
const
438 const Range& c)
const
453 const Range& c)
const
468 const Range& c)
const
557 mpr(0,0,1), mrr(0,0,1), mcr(0,0,1), mdata(NULL)
615 for ( ; ip!=end_page; ++ip )
634 const Range& c)
const
656 const Range& c)
const
667 const Range& c)
const
678 const Range& c)
const
984 for ( ; p!=ep ; ++p,++xp )
1000 for ( ; p!=ep ; ++p,++xp )
1016 for ( ; p!=ep ; ++p,++xp )
1032 for ( ; p!=ep ; ++p,++xp )
1090 for ( ; origin!=end ; ++origin,++target )
1105 for ( ; target!=end ; ++target )
1155 Range( 0, m.npages(), m.nrows()*m.ncols() ),
1156 Range( 0, m.nrows(), m.ncols() ),
1157 Range( 0, m.ncols() ) )
1166 Range( 0, m.npages(), m.nrows()*m.ncols() ),
1167 Range( 0, m.nrows(), m.ncols() ),
1168 Range( 0, m.ncols() ) )
1276 double (&my_func)(
double),
1287 for ( ; xi!=xe; ++xi, ++yi )
1305 for ( ; xi!=xe ; ++xi )
1310 if ( maxi > themax )
1327 for ( ; xi!=xe ; ++xi )
1332 if ( mini < themin )
1341 #endif // matpackIII_h
bool operator!=(const Iterator3D &other) const
Not equal operator, needed for algorithms like copy.
void copy(ConstIterator3D origin, const ConstIterator3D &end, Iterator3D target)
Copy data between begin and end to target.
Tensor3View()
Default constructor.
ConstIterator3D end() const
Return const iterator behind last row.
void transform(Tensor3View y, double(&my_func)(double), ConstTensor3View x)
A generic transform function for tensors, which can be used to implement mathematical functions opera...
ConstTensor3View operator()(const Range &p, const Range &r, const Range &c) const
Const index operator for subrange.
const ConstMatrixView & operator*() const
Dereferencing.
Iterator3D()
Default constructor.
Const version of Iterator3D.
Numeric * mdata
Pointer to the plain C array that holds the data.
ConstTensor3View()
Default constructor.
ConstTensor3View operator()(const Range &p, const Range &r, const Range &c) const
Const index operator for subrange.
~Tensor3()
Destructor for Tensor3.
Index mstart
The start index.
Range mcr
The column range of mdata that is actually used.
ConstIterator3D & operator++()
Prefix increment operator.
void resize(Index p, Index r, Index c)
Resize function.
Tensor3View & operator-=(Numeric x)
Subtraction of scalar.
Index npages() const
Returns the number of pages.
Range mrr
The row range of mdata that is actually used.
Numeric min(const ConstTensor3View &x)
Min function, tensor version.
Array< Tensor3 > ArrayOfTensor3
An array of Tensor3.
MatrixView & operator*()
Dereferencing.
This can be used to make arrays out of anything.
Implementation of Tensors of Rank 3.
ConstIterator2D begin() const
Return const iterator to first row.
ConstIterator2D end() const
Return const iterator behind last row.
ConstIterator3D begin() const
Return const iterator to first page.
Range mrr
The row range of mdata that is actually used.
NUMERIC Numeric
The type to use for all floating point numbers.
Range mcr
The column range of mdata that is actually used.
Range mpr
The page range of mdata that is actually used.
Numeric * mdata
Pointer to the plain C array that holds the data.
Tensor3View & operator/=(Numeric x)
Division by scalar.
MatrixView msv
Current position.
const ConstMatrixView * operator->() const
The -> operator is needed, so that we can write i->begin() to get the 1D iterators.
Index nrows() const
Returns the number of rows.
A constant view of a Matrix.
Tensor3View & operator*=(Numeric x)
Multiplication by scalar.
ConstIterator3D end() const
Return const iterator behind last page.
Numeric max(const ConstTensor3View &x)
Max function, tensor version.
Index mextent
The number of elements.
ConstIterator2D end() const
Return const iterator behind last row.
ConstMatrixView msv
Current position.
INDEX Index
The type to use for all integer numbers and indices.
Index ncols() const
Returns the number of columns.
ConstIterator3D begin() const
Return const iterator to first row.
A constant view of a Tensor3.
std::ostream & operator<<(std::ostream &os, const ConstTensor3View &v)
Output operator.
Tensor3 & operator=(const Tensor3 &x)
Assignment operator from another tensor.
ConstIterator3D()
Default constructor.
ConstIterator2D begin() const
Return const iterator to first row.
Tensor3View & operator+=(Numeric x)
Addition of scalar.
MatrixView * operator->()
The -> operator is needed, so that we can write i->begin() to get the 1D iterators.
Numeric add(Numeric x, Numeric y)
bool operator!=(const ConstIterator3D &other) const
Not equal operator, needed for algorithms like copy.
Tensor3View & operator=(const ConstTensor3View &v)
Assignment operator.
Iterator3D & operator++()
Prefix increment operator.
A constant view of a Vector.
Tensor3()
Default constructor.