STK++ 0.9.13
STK::SArray2DSquare< Type_ > Class Template Reference

Derivation of the SArray2DSquare class for square arrays of Real. More...

#include <STK_SArray2DSquare.h>

Inheritance diagram for STK::SArray2DSquare< Type_ >:
Inheritance graph

Public Types

enum  {
  structure_ = hidden::Traits< SArray2DSquare<Type_> >::structure_ , orient_ = hidden::Traits< SArray2DSquare<Type_> >::orient_ , sizeCols_ = hidden::Traits< SArray2DSquare<Type_> >::sizeCols_ , sizeRows_ = hidden::Traits< SArray2DSquare<Type_> >::sizeRows_ ,
  size_ = hidden::Traits< SArray2DSquare<Type_> >::size_ , storage_ = hidden::Traits< SArray2DSquare<Type_> >::storage_
}
 
typedef IArray2D< SArray2DSquare< Type_ > > Base
 Type for the Interface Class.
 
typedef ArrayBase< SArray2DSquare< Type_ > > LowBase
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::Row Row
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::Col Col
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::SubRow SubRow
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::SubCol SubCol
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::SubVector SubVector
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::SubArray SubArray
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::Type Type
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::TypeConst TypeConst
 
- Public Types inherited from STK::IArray2D< SArray2DSquare< Type_ > >
enum  
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::Type Type
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::TypeConst TypeConst
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::Row Row
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::Col Col
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::SubRow SubRow
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::SubCol SubCol
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::SubArray SubArray
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::SubVector SubVector
 
typedef hidden::Traits< SArray2DSquare< Type_ > >::ColVector ColVector
 
typedef ColVectorPtrCol
 
typedef ColVector constPtrColConst
 
typedef TRange< sizeRows_ > RowRange
 Type of the Range for the rows.
 
typedef TRange< sizeCols_ > ColRange
 Type of the Range for the columns.
 
typedef IContainer2D< sizeRows_, sizeCols_ > Base2D
 Type for the IContainer2D base Class.
 
typedef MemAllocator< PtrCol, sizeCols_ > Allocator
 Type for the Base Class.
 
typedef ArrayBase< SArray2DSquare< Type_ > > Base
 type of the Base Container Class.
 
- Public Types inherited from STK::ArrayBase< Derived >
enum  {
  structure_ = hidden::Traits<Derived>::structure_ , orient_ = hidden::Traits<Derived>::orient_ , sizeRows_ = hidden::Traits<Derived>::sizeRows_ , sizeCols_ = hidden::Traits<Derived>::sizeCols_ ,
  storage_ = hidden::Traits<Derived>::storage_
}
 
typedef ExprBase< Derived > Base
 
typedef hidden::Traits< Derived >::Type Type
 
typedef hidden::Traits< Derived >::TypeConst TypeConst
 
- Public Types inherited from STK::ExprBase< Derived >
enum  {
  structure_ = hidden::Traits<Derived>::structure_ , orient_ = hidden::Traits<Derived>::orient_ , sizeRows_ = hidden::Traits<Derived>::sizeRows_ , sizeCols_ = hidden::Traits<Derived>::sizeCols_ ,
  storage_ = hidden::Traits<Derived>::storage_
}
 
typedef ITContainer< Derived, structure_Base
 
typedef hidden::Traits< Derived >::Type Type
 
typedef hidden::Traits< Derived >::TypeConst TypeConst
 

Public Member Functions

 SArray2DSquare ()
 Default constructor with cols_=(1:0) and rows_=(1:0).
 
 SArray2DSquare (Range const &I)
 Default constructor with specified Range.
 
 SArray2DSquare (Range const &I, Type const &v)
 constructor with cols_and rows_ givens, initialization with a constant.
 
 SArray2DSquare (SArray2DSquare const &T, bool ref=false)
 Copy constructor.
 
 SArray2DSquare (SArray2DSquare const &T, Range const &I)
 constructor by reference, ref_=1 in the range given by I.
 
template<class OtherDerived >
 SArray2DSquare (ExprBase< OtherDerived > const &T)
 Copy constructor using an expression.
 
 ~SArray2DSquare ()
 destructor.
 
void shift1D (int beg)
 New beginning index for the object.
 
SArray2DSquareresize1D (Range const &I)
 New size for the container.
 
void insert (int pos, int n=1)
 Insert n rows and column at the given position to the container.
 
void erase (int pos, int n=1)
 Delete n rows and columns at the specified position to the container.
 
void pushBack (int n=1)
 Add n rows and columns to the container.
 
void popBack (int n=1)
 Delete n rows and columns at the end of the container.
 
template<class Rhs >
SArray2DSquareoperator= (ExprBase< Rhs > const &T)
 operator = : overwrite the CArray with the Right hand side T.
 
SArray2DSquareoperator= (SArray2DSquare const &T)
 overwrite the SArray2D with T.
 
SArray2DSquareoperator= (Type const &v)
 set the container to a constant value.
 
- Public Member Functions inherited from STK::IArray2D< SArray2DSquare< Type_ > >
void clear ()
 clear the object.
 
SArray2DSquare< Type_ > & move (SArray2DSquare< Type_ > const &T)
 move T to this.
 
void exchange (IArray2D &T)
 exchange this container with T.
 
bool isRef () const
 
RowRange constrowsImpl () const
 
ColRange constcolsImpl () const
 
RowRange constrows () const
 
int beginRows () const
 
int endRows () const
 
int sizeRows () const
 
ColRange constcols () const
 
int beginCols () const
 
int endCols () const
 
int sizeCols () const
 
int lastIdxCols () const
 
int lastIdxRows () const
 
bool empty () const
 
Allocator constallocator () const
 
PtrColConst ptr (int j) const
 
int availableCols () const
 
int capacityCol (int col) const
 
Array1D< Range, sizeCols_ > constrangeCols () const
 
Range constrangeCol (int col) const
 
void setValueImpl (int j, TypeConst v)
 implement setValue for vector/point/diagonal arrays
 
void setValueImpl (int i, int j, TypeConst v)
 implement setValue for vector/point/diagonal arrays
 
Typeelt2Impl (int i, int j)
 access to an element.
 
TypeConst elt2Impl (int i, int j) const
 constant access to an element.
 
TypeConst operator() (int i, int j) const
 
Typeoperator() (int i, int j)
 
TypeConst operator() () const
 
Typeoperator() ()
 
SubCol operator() (Range const &I, int j) const
 
SubRow operator() (int i, Range const &J) const
 
SubArray operator() (Range const &I, Range const &J) const
 
TypeConst operator[] (int i) const
 
Typeoperator[] (int i)
 
SubVector operator[] (Range const &I) const
 
Col col (int j) const
 access to a part of a column.
 
SubCol col (Range const &I, int j) const
 access to a part of a column.
 
SubArray col (Range const &J) const
 access to many columns.
 
Row row (int i) const
 access to a part of a row.
 
SubRow row (int i, Range const &J) const
 access to a part of a row.
 
SubArray row (Range const &I) const
 access to many rows.
 
SubVector sub (Range const &J) const
 
SubArray sub (Range const &I, Range const &J) const
 access to a sub-array.
 
SubCol atCol (int j) const
 
Row atRow (int i) const
 
void reserve (int sizeRows, int sizeCols)
 function for reserving memory in all the columns
 
void reserveRows (int size)
 Reserve a certain amount of rows in all columns.
 
void reserveCols (int sizeCols)
 Reserve a certain amount of columns.
 
void shift (int rbeg, int cbeg)
 Set new beginning indexes to the array.
 
void shift (int beg)
 New first index for the object (only for vectors/points/square/... arrays)
 
void shiftRows (int beg)
 New first index for the rows of the array.
 
void shiftCols (int cbeg)
 New first index for the columns of the object.
 
SArray2DSquare< Type_ > & resize (Range const &I, Range const &J)
 resize the array.
 
SArray2DSquare< Type_ > & resize (Range const &I)
 
void insertRows (int pos, int n=1)
 Insert n rows at position pos in the array If pos is outside the range of a column, then the method do nothing (useful for triangular/diagonal/... arrays).
 
void eraseRows (int pos, int n=1)
 Delete n rows at the position pos.
 
void pushFrontRows (int n=1)
 Insert n rows in front of the array.
 
SArray2DSquare< Type_ > & pushFrontRows (ExprBase< Other > const &other)
 set other at the beginning of this (concatenate).
 
void pushBackRows (int n=1)
 Add n rows to the array.
 
SArray2DSquare< Type_ > & pushBackRows (ExprBase< Other > const &other)
 set other at the end of this (concatenate).
 
void popFrontRows (int n=1)
 Delete n first rows of the array.
 
void popBackRows (int n=1)
 Delete n latest rows of the array.
 
void insertCols (int pos, int n=1)
 Insert n columns at the index pos to the array.
 
void eraseCols (int pos, int n=1)
 Delete n columns at the specified position of the array.
 
void pushFrontCols (int n=1)
 Insert n columns at the beginning of the array.
 
SArray2DSquare< Type_ > & pushFrontCols (ExprBase< Other > const &other)
 merge (by value) the array other with this.
 
void pushBackCols (int n=1)
 Add n columns at the end of the array.
 
SArray2DSquare< Type_ > & pushBackCols (IArray1D< Other > const &other)
 Specialization for Array1D.
 
void popFrontCols (int n=1)
 Delete first columns of the array.
 
void popBackCols (int n=1)
 Delete last columns of the array.
 
void push_front (Type const &v)
 STL compatibility: push front an element.
 
void push_back (Type const &v)
 STL compatibility: append an element v.
 
void insert (Range const &I, Type const &v)
 STL compatibility: insert element v in the range I of the Array.
 
void erase (int pos, int n=1)
 STL compatibility:Delete n elements at the pos index from the container.
 
void swapCols (int pos1, int pos2)
 Swapping two columns.
 
void swap (int i, int j)
 swap two elements: only for vectors and points
 
void merge (IArray2D< OtherDerived > const &other)
 Append the container other to this without copying the data explicitly.
 
void merge (IArray1D< OtherDerived > const &other)
 Append the vector other to this without copying the data explicitly.
 
void update (Range const &J)
 Update columns of the array at a specified range.
 
void update (int col)
 Update column of the array at specified position.
 
void setCols (ColRange const &J=ColRange())
 Set the columns range.
 
void setRows (RowRange const &I=RowRange())
 Set the range of the number of rows.
 
- Public Member Functions inherited from STK::ArrayBase< Derived >
template<typename Visitor >
void apply (Visitor &visitor)
 Apply the Visitor visitor to the whole coefficients of the array.
 
Derived & randUnif ()
 set random values to this using a uniform law.
 
Derived & randGauss ()
 set random values to this using a standard gaussian law.
 
Derived & rand (Law::IUnivLaw< Type > const &law)
 set random values to this using a distribution law given by the user.
 
Derived & setOnes ()
 set one to this using a Visitor.
 
Derived & setZeros ()
 set zero to this using a Visitor.
 
Derived & ones ()
 set one to this using a Visitor.
 
Derived & zeros ()
 set zero to this using a Visitor.
 
Derived & setValue (TypeConst value)
 set a value to this container.
 
void setValue (int i, TypeConst value)
 set a value to this container at index i.
 
void setValue (int i, int j, TypeConst value)
 set a value to this container at position (i,j).
 
template<class Rhs >
Derived & assign (ExprBase< Rhs > const &rhs)
 
Derived & operator= (Type const &value)
 
Derived & operator= (Derived const &rhs)
 
template<typename Rhs >
Derived & operator= (ExprBase< Rhs > const &rhs)
 
template<typename Rhs >
Derived & operator+= (ExprBase< Rhs > const &other)
 Add Rhs to this.
 
template<typename Rhs >
Derived & operator-= (ExprBase< Rhs > const &other)
 subtract a Rhs to this.
 
template<typename Rhs >
Derived & operator/= (ExprBase< Rhs > const &other)
 divide this by Rhs.
 
template<typename Rhs >
Derived & operator%= (ExprBase< Rhs > const &other)
 Take modulo of this by Rhs.
 
template<typename Rhs >
Derived & operator*= (ExprBase< Rhs > const &other)
 multiply this by Rhs.
 
Derived & operator+= (Type const &other)
 Adding a constant to this.
 
Derived & operator-= (Type const &other)
 Subtract a constant to this.
 
Derived & operator*= (Type const &other)
 product of this by a constant.
 
Derived & operator/= (Type const &other)
 dividing this by a constant.
 
Derived & operator%= (Type const &other)
 take modulo of this by a constant.
 
template<class Rhs >
Derived & copy (ExprBase< Rhs > const &rhs)
 overwrite this with src.
 
TransposeOperator< Derived > const transpose () const
 
TransposeAccessor< Derived > transpose ()
 
DiagonalizeOperator< Derived > const diagonalize () const
 
DiagonalizeAccessor< Derived > diagonalize ()
 
DiagonalGetterOperator< Derived > const getDiagonal () const
 
DiagonalGetterAccessor< Derived > getDiagonal ()
 
UpperTriangularizeOperator< Derived > const upperTriangularize () const
 
UpperTriangularizeAccessor< Derived > upperTriangularize ()
 
LowerTriangularizeOperator< Derived > const lowerTriangularize () const
 
LowerTriangularizeAccessor< Derived > lowerTriangularize ()
 
SymmetrizeOperator< Derived > const symmetrize () const
 
SymmetrizeAccessor< Derived > symmetrize ()
 
UpperSymmetrizeOperator< Derived > const upperSymmetrize () const
 
UpperSymmetrizeAccessor< Derived > upperSymmetrize ()
 
LowerSymmetrizeOperator< Derived > const lowerSymmetrize () const
 
LowerSymmetrizeAccessor< Derived > lowerSymmetrize ()
 
ColOperator< Derived > const col (int j) const
 
RowOperator< Derived > const row (int i) const
 
template<int Size_>
SubVectorOperator< Derived, Size_ > const sub (TRange< Size_ > const &I) const
 
template<int SizeRows_, int SizeCols_>
SubOperator< Derived, SizeRows_, SizeCols_ > const sub (TRange< SizeRows_ > const &I, TRange< SizeCols_ > const &J) const
 
ColAccessor< Derived > col (int j)
 
RowAccessor< Derived > row (int i)
 
template<int Size_>
SubVectorAccessor< Derived, Size_sub (TRange< Size_ > const &I)
 
template<int SizeRows_, int SizeCols_>
SubAccessor< Derived, SizeRows_, SizeCols_sub (TRange< SizeRows_ > const &I, TRange< SizeCols_ > const &J)
 
TypeConst operator() (int i, int j) const
 
Typeoperator() (int i, int j)
 
TypeConst operator[] (int i) const
 
Typeoperator[] (int i)
 
TypeConst operator() () const
 
Typeoperator() ()
 
ArrayInitializer< Derived > operator<< (Type const &s)
 Convenient operator to set the coefficients of a matrix.
 
template<typename Rhs >
ArrayInitializer< Derived > operator<< (ArrayBase< Rhs > const &other)
 
- Public Member Functions inherited from STK::ExprBase< Derived >
template<typename Visitor >
Visitor::TypeConst visit (Visitor &visitor) const
 Visit the container using a constant visitor.
 
int count () const
 compute the value of non-zero element in an expression.
 
bool const any () const
 check if there is any non-zero element in an expression.
 
bool const all () const
 check if all the elements in an expression are not zero.
 
int nbAvailableValues () const
 
Type const minElt (int &row, int &col) const
 
Type const minEltSafe (int &row, int &col) const
 
Type const maxElt (int &row, int &col) const
 
Type const maxEltSafe (int &row, int &col) const
 
Type const minElt (int &pos) const
 
Type const minEltSafe (int &pos) const
 
Type const maxElt (int &pos) const
 
Type const maxEltSafe (int &pos) const
 
Type const minElt () const
 
Type const minEltSafe () const
 
Type const maxElt () const
 
Type const maxEltSafe () const
 
Type const sum () const
 
Type const sumSafe () const
 
Type const norm () const
 
Type const normSafe () const
 
Type const norm2 () const
 
Type const norm2Safe () const
 
Type const normInf () const
 
Type const mean () const
 
Type const meanSafe () const
 
Type const variance () const
 
Type const varianceSafe () const
 
Type const variance (Type const &mean) const
 
Type const varianceSafe (Type const &mean) const
 
template<typename Rhs >
Type const wsum (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wsumSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wnorm (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wnormSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wnorm2 (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wnorm2Safe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wmean (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wmeanSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wvariance (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wvarianceSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wvariance (Type const &mean, ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wvarianceSafe (Type const &mean, ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::equalOp_ >::Result const operator== (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::notEqualOp_ >::Result const operator!= (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::greaterThanOp_ >::Result const operator> (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::lessThanOp_ >::Result const operator< (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::greaterThanOrEqualOp_ >::Result const operator>= (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::lessThanOrEqualOp_ >::Result const operator<= (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::sumOp_ >::Result const operator+ (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::differenceOp_ >::Result const operator- (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::productOp_ >::Result const prod (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::divisionOp_ >::Result const operator/ (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::moduloOp_ >::Result const operator% (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::minOp_ >::Result const min (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::maxOp_ >::Result const max (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::logicalAndOp_ >::Result const operator&& (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::logicalOrOp_ >::Result const operator|| (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::bitwiseAndOp_ >::Result const operator& (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::bitwiseOrOp_ >::Result const operator| (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::bitwiseXorOp_ >::Result const operator^ (ExprBase< Rhs > const &other) const
 
UnaryOperator< OppositeOp< Type >, Derived > operator- () const
 
UnaryOperator< IsNaOp< Type >, Derived > isNA () const
 
UnaryOperator< NegOp< Type >, Derived > neg () const
 
UnaryOperator< IsFiniteOp< Type >, Derived > isFinite () const
 
UnaryOperator< IsInfiniteOp< Type >, Derived > isInfinite () const
 
UnaryOperator< AbsOp< Type >, Derived > abs () const
 
UnaryOperator< ExpOp< Type >, Derived > exp () const
 
UnaryOperator< LogOp< Type >, Derived > log () const
 
UnaryOperator< SqrtOp< Type >, Derived > sqrt () const
 
UnaryOperator< CosOp< Type >, Derived > cos () const
 
UnaryOperator< SinOp< Type >, Derived > sin () const
 
UnaryOperator< AcosOp< Type >, Derived > acos () const
 
UnaryOperator< AsinOp< Type >, Derived > asin () const
 
UnaryOperator< TanOp< Type >, Derived > tan () const
 
UnaryOperator< InverseOp< Type >, Derived > inverse () const
 
UnaryOperator< SquareOp< Type >, Derived > square () const
 
UnaryOperator< CubeOp< Type >, Derived > cube () const
 
UnaryOperator< EqualWithOp< Type >, Derived > operator== (Type const &value) const
 
UnaryOperator< NotEqualWithOp< Type >, Derived > operator!= (Type const &value) const
 
UnaryOperator< GreaterThanOp< Type >, Derived > operator> (Type const &value) const
 
UnaryOperator< LessThanOp< Type >, Derived > operator< (Type const &value) const
 
UnaryOperator< LeqThanOp< Type >, Derived > operator<= (Type const &value) const
 
UnaryOperator< GeqThanOp< Type >, Derived > operator>= (Type const &value) const
 
UnaryOperator< MinWithOp< Type >, Derived > min (Type const &value) const
 
UnaryOperator< MaxWithOp< Type >, Derived > max (Type const &value) const
 
UnaryOperator< SumWithOp< Type >, Derived > operator+ (Type const &value) const
 
UnaryOperator< DifferenceWithOp< Type >, Derived > operator- (Type const &value) const
 
UnaryOperator< ProductWithOp< Type >, Derived > operator* (Type const &value) const
 
UnaryOperator< DivisionWithOp< Type >, Derived > operator/ (Type const &value) const
 
UnaryOperator< ModuloWithOp< Type >, Derived > operator% (Type const &value) const
 
UnaryOperator< LogicalAndWithOp< Type >, Derived > operator&& (Type const &value) const
 
UnaryOperator< LogicalOrWithOp< Type >, Derived > operator|| (Type const &value) const
 
UnaryOperator< BitwiseAndWithOp< Type >, Derived > operator& (Type const &value) const
 
UnaryOperator< BitwiseOrWithOp< Type >, Derived > operator| (Type const &value) const
 
UnaryOperator< BitwiseXorWithOp< Type >, Derived > operator^ (Type const &value) const
 
UnaryOperator< PowOp< Type >, Derived > pow (Type const &value) const
 
UnaryOperator< SafeInverseOp< Type >, Derived > safeInverse (Type const &value) const
 
UnaryOperator< SafeOp< Type >, Derived > const safe (Type const value=Type()) const
 
template<typename OtherType >
UnaryOperator< CastOp< Type, OtherType >, Derived > const cast () const
 
UnaryOperator< Law::PdfOp< Type >, Derived > pdf (Law::IUnivLaw< Type > const &law) const
 compute pdf values to this using distribution law given by user
 
UnaryOperator< Law::LogPdfOp< Type >, Derived > lpdf (Law::IUnivLaw< Type > const &law) const
 compute log-pdf values to this using distribution law given by user
 
UnaryOperator< Law::CdfOp< Type >, Derived > cdf (Law::IUnivLaw< Type > const &law) const
 compute cumulative distribution function of this using distribution law given by user
 
UnaryOperator< Law::LogCdfOp< Type >, Derived > lcdf (Law::IUnivLaw< Type > const &law) const
 compute log-cumulative distribution function of this using distribution law given by user
 
UnaryOperator< Law::CdfcOp< Type >, Derived > cdfc (Law::IUnivLaw< Type > const &law) const
 compute complementary cumulative distribution function of this using distribution law given by user
 
UnaryOperator< Law::LogCdfcOp< Type >, Derived > lcdfc (Law::IUnivLaw< Type > const &law) const
 compute complementary cumulative distribution function of this using distribution law given by user
 
UnaryOperator< Law::IcdfOp< Type >, Derived > icdf (Law::IUnivLaw< Type > const &law) const
 compute inverse cumulative distribution function using distribution law given by user
 
template<template< typename > class OtherOperator>
UnaryOperator< OtherOperator< Type >, Derived > const funct0 () const
 
template<template< typename > class OtherOperator>
UnaryOperator< OtherOperator< Type >, Derived > const funct1 (Type const value) const
 
TransposeOperator< Derived > const transpose () const
 
DiagonalizeOperator< Derived > const diagonalize () const
 
DiagonalGetterOperator< Derived > const getDiagonal () const
 
UpperTriangularizeOperator< Derived > const upperTriangularize () const
 
LowerTriangularizeOperator< Derived > const lowerTriangularize () const
 
SymmetrizeOperator< Derived > const symmetrize () const
 
UpperSymmetrizeOperator< Derived > const upperSymmetrize () const
 
LowerSymmetrizeOperator< Derived > const lowerSymmetrize () const
 
template<int Size_>
SubVectorOperator< Derived, Size_ > const sub (TRange< Size_ > const &I) const
 
ColOperator< Derived > const col (int j) const
 
RowOperator< Derived > const row (int i) const
 
template<int Size_>
SubOperator< Derived, sizeRows_, Size_ > const col (TRange< Size_ > const &J) const
 
template<int Size_>
SubOperator< Derived, Size_, sizeCols_ > const row (TRange< Size_ > const &I) const
 
template<int SizeRows_, int SizeCols_>
SubOperator< Derived, SizeRows_, SizeCols_ > const sub (TRange< SizeRows_ > const &I, TRange< SizeCols_ > const &J) const
 
template<class Rhs >
hidden::Promote< Type, typenameRhs::Type >::result_type const dot (ExprBase< Rhs > const &other) const
 
template<class Rhs >
hidden::Promote< Type, typenameRhs::Type >::result_type const dotSafe (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::ProductSelector< Derived, Rhs, hidden::Traits< Derived >::structure_, hidden::Traits< Rhs >::structure_ >::ProductType const operator* (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wsum (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wsumSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wnorm (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wnormSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wnorm2 (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wnorm2Safe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wmean (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wmeanSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wvariance (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wvarianceSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wvariance (Type const &mean, ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wvarianceSafe (Type const &mean, ExprBase< Rhs > const &weights) const
 

Additional Inherited Members

- Protected Types inherited from STK::IContainer2D< SizeRows_, SizeCols_ >
typedef TRange< SizeRows_RowRange
 Type of the Range for the rows.
 
typedef TRange< SizeCols_ColRange
 Type of the Range for the columns.
 
- Protected Types inherited from STK::ArrayBase< Derived >
enum  {
  structure_ = hidden::Traits<Derived>::structure_ , orient_ = hidden::Traits<Derived>::orient_ , sizeRows_ = hidden::Traits<Derived>::sizeRows_ , sizeCols_ = hidden::Traits<Derived>::sizeCols_ ,
  storage_ = hidden::Traits<Derived>::storage_
}
 
typedef ExprBase< Derived > Base
 
typedef hidden::Traits< Derived >::Type Type
 
typedef hidden::Traits< Derived >::TypeConst TypeConst
 
- Protected Types inherited from STK::ExprBase< Derived >
enum  {
  structure_ = hidden::Traits<Derived>::structure_ , orient_ = hidden::Traits<Derived>::orient_ , sizeRows_ = hidden::Traits<Derived>::sizeRows_ , sizeCols_ = hidden::Traits<Derived>::sizeCols_ ,
  storage_ = hidden::Traits<Derived>::storage_
}
 
typedef ITContainer< Derived, structure_Base
 
typedef hidden::Traits< Derived >::Type Type
 
typedef hidden::Traits< Derived >::TypeConst TypeConst
 
- Protected Member Functions inherited from STK::IArray2D< SArray2DSquare< Type_ > >
 IArray2D ()
 Default constructor.
 
 IArray2D (Range const &I, Range const &J)
 constructor with specified ranges
 
 IArray2D (IArray2D const &T, bool ref=false)
 Copy constructor If we want to wrap T, the main ptr will be wrapped in MemAllocator class.
 
 IArray2D (IArray2D< OtherDerived > const &T, Range const &I, Range const &J)
 constructor by reference, ref_=1.
 
 ~IArray2D ()
 destructor.
 
Allocatorallocator ()
 
void transferCol (int pos1, int pos2)
 Transfer the column pos2 to the column pos1 of this.
 
void reallocCols (Range const &J)
 Method for memory reallocation and initialization of the horizontal range of the container.
 
void nullCols (ColRange const &J)
 Internal method for initializing to default values (null pointer and null range) to a range of columns.
 
- Protected Member Functions inherited from STK::IContainer2D< SizeRows_, SizeCols_ >
void shift (int rbeg, int cbeg)
 Set the first index of the rows and columns.
 
void setRanges (RowRange const &I=RowRange(), ColRange const &J=ColRange())
 Set the ranges of the container.
 
void setRows (RowRange const &I=RowRange())
 Set the range of the number of rows.
 
void shiftRows (int beg)
 Set the first index of the rows.
 
void incRangeRows (int inc)
 Increment the range of the number of rows.
 
void incBeginRows (int inc)
 Increment the first index of the number of rows.
 
void decBeginRows (int dec)
 Decrement the first index of the number of rows.
 
void incEndRows (int inc)
 Increment the end of the number of rows.
 
void decEndRows (int dec)
 Decrement the end of the number of rows.
 
void setCols (ColRange const &J=ColRange())
 Set the columns range.
 
void shiftCols (int beg)
 Shift the columns first index to beg.
 
void incRangeCols (int inc)
 Increment the columns range.
 
void incBeginCols (int inc)
 increment the first index of the columns.
 
void decBeginCols (int dec)
 Decrement the columns first index.
 
void incEndCols (int inc)
 Increment the last index of the columns.
 
void decEndCols (int dec)
 Decrement the last index of the columns.
 
void exchange (IContainer2D &T)
 exchange this container with T
 
void incLastIdxRows (int inc)
 Increment the end of the number of rows.
 
void decLastIdxRows (int dec)
 Decrement the end of the number of rows.
 
void incLastIdxCols (int inc)
 Increment the last index of the columns.
 
void decLastIdxCols (int dec)
 Decrement the last index of the columns.
 
 IContainer2D ()
 Default constructor.
 
 IContainer2D (RowRange const &I, ColRange const &J)
 Constructor with specified ranges.
 
 IContainer2D (IContainer2D const &T)
 Copy constructor.
 
 ~IContainer2D ()
 destructor.
 
ColRange constcols () const
 
int beginCols () const
 
int endCols () const
 
int sizeCols () const
 
RowRange constrows () const
 
int beginRows () const
 
int endRows () const
 
int sizeRows () const
 
int lastIdxCols () const
 
int lastIdxRows () const
 
bool empty () const
 
- Protected Member Functions inherited from STK::ArrayBase< Derived >
 ArrayBase ()
 Default constructor.
 
 ~ArrayBase ()
 destructor
 
template<typename Visitor >
void apply (Visitor &visitor)
 Apply the Visitor visitor to the whole coefficients of the array.
 
Derived & randUnif ()
 set random values to this using a uniform law.
 
Derived & randGauss ()
 set random values to this using a standard gaussian law.
 
Derived & rand (Law::IUnivLaw< Type > const &law)
 set random values to this using a distribution law given by the user.
 
Derived & setOnes ()
 set one to this using a Visitor.
 
Derived & setZeros ()
 set zero to this using a Visitor.
 
Derived & ones ()
 set one to this using a Visitor.
 
Derived & zeros ()
 set zero to this using a Visitor.
 
Derived & setValue (TypeConst value)
 set a value to this container.
 
void setValue (int i, TypeConst value)
 set a value to this container at index i.
 
void setValue (int i, int j, TypeConst value)
 set a value to this container at position (i,j).
 
template<class Rhs >
Derived & assign (ExprBase< Rhs > const &rhs)
 
Derived & operator= (Type const &value)
 
Derived & operator= (Derived const &rhs)
 
template<typename Rhs >
Derived & operator= (ExprBase< Rhs > const &rhs)
 
template<typename Rhs >
Derived & operator+= (ExprBase< Rhs > const &other)
 Add Rhs to this.
 
template<typename Rhs >
Derived & operator-= (ExprBase< Rhs > const &other)
 subtract a Rhs to this.
 
template<typename Rhs >
Derived & operator/= (ExprBase< Rhs > const &other)
 divide this by Rhs.
 
template<typename Rhs >
Derived & operator%= (ExprBase< Rhs > const &other)
 Take modulo of this by Rhs.
 
template<typename Rhs >
Derived & operator*= (ExprBase< Rhs > const &other)
 multiply this by Rhs.
 
Derived & operator+= (Type const &other)
 Adding a constant to this.
 
Derived & operator-= (Type const &other)
 Subtract a constant to this.
 
Derived & operator*= (Type const &other)
 product of this by a constant.
 
Derived & operator/= (Type const &other)
 dividing this by a constant.
 
Derived & operator%= (Type const &other)
 take modulo of this by a constant.
 
template<class Rhs >
Derived & copy (ExprBase< Rhs > const &rhs)
 overwrite this with src.
 
TransposeOperator< Derived > const transpose () const
 
TransposeAccessor< Derived > transpose ()
 
DiagonalizeOperator< Derived > const diagonalize () const
 
DiagonalizeAccessor< Derived > diagonalize ()
 
DiagonalGetterOperator< Derived > const getDiagonal () const
 
DiagonalGetterAccessor< Derived > getDiagonal ()
 
UpperTriangularizeOperator< Derived > const upperTriangularize () const
 
UpperTriangularizeAccessor< Derived > upperTriangularize ()
 
LowerTriangularizeOperator< Derived > const lowerTriangularize () const
 
LowerTriangularizeAccessor< Derived > lowerTriangularize ()
 
SymmetrizeOperator< Derived > const symmetrize () const
 
SymmetrizeAccessor< Derived > symmetrize ()
 
UpperSymmetrizeOperator< Derived > const upperSymmetrize () const
 
UpperSymmetrizeAccessor< Derived > upperSymmetrize ()
 
LowerSymmetrizeOperator< Derived > const lowerSymmetrize () const
 
LowerSymmetrizeAccessor< Derived > lowerSymmetrize ()
 
ColOperator< Derived > const col (int j) const
 
RowOperator< Derived > const row (int i) const
 
template<int Size_>
SubVectorOperator< Derived, Size_ > const sub (TRange< Size_ > const &I) const
 
template<int SizeRows_, int SizeCols_>
SubOperator< Derived, SizeRows_, SizeCols_ > const sub (TRange< SizeRows_ > const &I, TRange< SizeCols_ > const &J) const
 
ColAccessor< Derived > col (int j)
 
RowAccessor< Derived > row (int i)
 
template<int Size_>
SubVectorAccessor< Derived, Size_sub (TRange< Size_ > const &I)
 
template<int SizeRows_, int SizeCols_>
SubAccessor< Derived, SizeRows_, SizeCols_sub (TRange< SizeRows_ > const &I, TRange< SizeCols_ > const &J)
 
TypeConst operator() (int i, int j) const
 
Typeoperator() (int i, int j)
 
TypeConst operator[] (int i) const
 
Typeoperator[] (int i)
 
TypeConst operator() () const
 
Typeoperator() ()
 
ArrayInitializer< Derived > operator<< (Type const &s)
 Convenient operator to set the coefficients of a matrix.
 
template<typename Rhs >
ArrayInitializer< Derived > operator<< (ArrayBase< Rhs > const &other)
 
- Protected Member Functions inherited from STK::ExprBase< Derived >
 ExprBase ()
 Default constructor.
 
 ~ExprBase ()
 destructor
 
template<typename Visitor >
Visitor::TypeConst visit (Visitor &visitor) const
 Visit the container using a constant visitor.
 
int count () const
 compute the value of non-zero element in an expression.
 
bool const any () const
 check if there is any non-zero element in an expression.
 
bool const all () const
 check if all the elements in an expression are not zero.
 
int nbAvailableValues () const
 
Type const minElt (int &row, int &col) const
 
Type const minEltSafe (int &row, int &col) const
 
Type const maxElt (int &row, int &col) const
 
Type const maxEltSafe (int &row, int &col) const
 
Type const minElt (int &pos) const
 
Type const minEltSafe (int &pos) const
 
Type const maxElt (int &pos) const
 
Type const maxEltSafe (int &pos) const
 
Type const minElt () const
 
Type const minEltSafe () const
 
Type const maxElt () const
 
Type const maxEltSafe () const
 
Type const sum () const
 
Type const sumSafe () const
 
Type const norm () const
 
Type const normSafe () const
 
Type const norm2 () const
 
Type const norm2Safe () const
 
Type const normInf () const
 
Type const mean () const
 
Type const meanSafe () const
 
Type const variance () const
 
Type const varianceSafe () const
 
Type const variance (Type const &mean) const
 
Type const varianceSafe (Type const &mean) const
 
template<typename Rhs >
Type const wsum (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wsumSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wnorm (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wnormSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wnorm2 (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wnorm2Safe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wmean (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wmeanSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wvariance (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wvarianceSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wvariance (Type const &mean, ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
Type const wvarianceSafe (Type const &mean, ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::equalOp_ >::Result const operator== (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::notEqualOp_ >::Result const operator!= (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::greaterThanOp_ >::Result const operator> (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::lessThanOp_ >::Result const operator< (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::greaterThanOrEqualOp_ >::Result const operator>= (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::lessThanOrEqualOp_ >::Result const operator<= (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::sumOp_ >::Result const operator+ (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::differenceOp_ >::Result const operator- (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::productOp_ >::Result const prod (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::divisionOp_ >::Result const operator/ (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::moduloOp_ >::Result const operator% (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::minOp_ >::Result const min (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::maxOp_ >::Result const max (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::logicalAndOp_ >::Result const operator&& (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::logicalOrOp_ >::Result const operator|| (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::bitwiseAndOp_ >::Result const operator& (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::bitwiseOrOp_ >::Result const operator| (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::OperatorSelector< Derived, Rhs, Arrays::bitwiseXorOp_ >::Result const operator^ (ExprBase< Rhs > const &other) const
 
UnaryOperator< OppositeOp< Type >, Derived > operator- () const
 
UnaryOperator< IsNaOp< Type >, Derived > isNA () const
 
UnaryOperator< NegOp< Type >, Derived > neg () const
 
UnaryOperator< IsFiniteOp< Type >, Derived > isFinite () const
 
UnaryOperator< IsInfiniteOp< Type >, Derived > isInfinite () const
 
UnaryOperator< AbsOp< Type >, Derived > abs () const
 
UnaryOperator< ExpOp< Type >, Derived > exp () const
 
UnaryOperator< LogOp< Type >, Derived > log () const
 
UnaryOperator< SqrtOp< Type >, Derived > sqrt () const
 
UnaryOperator< CosOp< Type >, Derived > cos () const
 
UnaryOperator< SinOp< Type >, Derived > sin () const
 
UnaryOperator< AcosOp< Type >, Derived > acos () const
 
UnaryOperator< AsinOp< Type >, Derived > asin () const
 
UnaryOperator< TanOp< Type >, Derived > tan () const
 
UnaryOperator< InverseOp< Type >, Derived > inverse () const
 
UnaryOperator< SquareOp< Type >, Derived > square () const
 
UnaryOperator< CubeOp< Type >, Derived > cube () const
 
UnaryOperator< EqualWithOp< Type >, Derived > operator== (Type const &value) const
 
UnaryOperator< NotEqualWithOp< Type >, Derived > operator!= (Type const &value) const
 
UnaryOperator< GreaterThanOp< Type >, Derived > operator> (Type const &value) const
 
UnaryOperator< LessThanOp< Type >, Derived > operator< (Type const &value) const
 
UnaryOperator< LeqThanOp< Type >, Derived > operator<= (Type const &value) const
 
UnaryOperator< GeqThanOp< Type >, Derived > operator>= (Type const &value) const
 
UnaryOperator< MinWithOp< Type >, Derived > min (Type const &value) const
 
UnaryOperator< MaxWithOp< Type >, Derived > max (Type const &value) const
 
UnaryOperator< SumWithOp< Type >, Derived > operator+ (Type const &value) const
 
UnaryOperator< DifferenceWithOp< Type >, Derived > operator- (Type const &value) const
 
UnaryOperator< ProductWithOp< Type >, Derived > operator* (Type const &value) const
 
UnaryOperator< DivisionWithOp< Type >, Derived > operator/ (Type const &value) const
 
UnaryOperator< ModuloWithOp< Type >, Derived > operator% (Type const &value) const
 
UnaryOperator< LogicalAndWithOp< Type >, Derived > operator&& (Type const &value) const
 
UnaryOperator< LogicalOrWithOp< Type >, Derived > operator|| (Type const &value) const
 
UnaryOperator< BitwiseAndWithOp< Type >, Derived > operator& (Type const &value) const
 
UnaryOperator< BitwiseOrWithOp< Type >, Derived > operator| (Type const &value) const
 
UnaryOperator< BitwiseXorWithOp< Type >, Derived > operator^ (Type const &value) const
 
UnaryOperator< PowOp< Type >, Derived > pow (Type const &value) const
 
UnaryOperator< SafeInverseOp< Type >, Derived > safeInverse (Type const &value) const
 
UnaryOperator< SafeOp< Type >, Derived > const safe (Type const value=Type()) const
 
template<typename OtherType >
UnaryOperator< CastOp< Type, OtherType >, Derived > const cast () const
 
UnaryOperator< Law::PdfOp< Type >, Derived > pdf (Law::IUnivLaw< Type > const &law) const
 compute pdf values to this using distribution law given by user
 
UnaryOperator< Law::LogPdfOp< Type >, Derived > lpdf (Law::IUnivLaw< Type > const &law) const
 compute log-pdf values to this using distribution law given by user
 
UnaryOperator< Law::CdfOp< Type >, Derived > cdf (Law::IUnivLaw< Type > const &law) const
 compute cumulative distribution function of this using distribution law given by user
 
UnaryOperator< Law::LogCdfOp< Type >, Derived > lcdf (Law::IUnivLaw< Type > const &law) const
 compute log-cumulative distribution function of this using distribution law given by user
 
UnaryOperator< Law::CdfcOp< Type >, Derived > cdfc (Law::IUnivLaw< Type > const &law) const
 compute complementary cumulative distribution function of this using distribution law given by user
 
UnaryOperator< Law::LogCdfcOp< Type >, Derived > lcdfc (Law::IUnivLaw< Type > const &law) const
 compute complementary cumulative distribution function of this using distribution law given by user
 
UnaryOperator< Law::IcdfOp< Type >, Derived > icdf (Law::IUnivLaw< Type > const &law) const
 compute inverse cumulative distribution function using distribution law given by user
 
template<template< typename > class OtherOperator>
UnaryOperator< OtherOperator< Type >, Derived > const funct0 () const
 
template<template< typename > class OtherOperator>
UnaryOperator< OtherOperator< Type >, Derived > const funct1 (Type const value) const
 
TransposeOperator< Derived > const transpose () const
 
DiagonalizeOperator< Derived > const diagonalize () const
 
DiagonalGetterOperator< Derived > const getDiagonal () const
 
UpperTriangularizeOperator< Derived > const upperTriangularize () const
 
LowerTriangularizeOperator< Derived > const lowerTriangularize () const
 
SymmetrizeOperator< Derived > const symmetrize () const
 
UpperSymmetrizeOperator< Derived > const upperSymmetrize () const
 
LowerSymmetrizeOperator< Derived > const lowerSymmetrize () const
 
template<int Size_>
SubVectorOperator< Derived, Size_ > const sub (TRange< Size_ > const &I) const
 
ColOperator< Derived > const col (int j) const
 
RowOperator< Derived > const row (int i) const
 
template<int Size_>
SubOperator< Derived, sizeRows_, Size_ > const col (TRange< Size_ > const &J) const
 
template<int Size_>
SubOperator< Derived, Size_, sizeCols_ > const row (TRange< Size_ > const &I) const
 
template<int SizeRows_, int SizeCols_>
SubOperator< Derived, SizeRows_, SizeCols_ > const sub (TRange< SizeRows_ > const &I, TRange< SizeCols_ > const &J) const
 
template<class Rhs >
hidden::Promote< Type, typenameRhs::Type >::result_type const dot (ExprBase< Rhs > const &other) const
 
template<class Rhs >
hidden::Promote< Type, typenameRhs::Type >::result_type const dotSafe (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::ProductSelector< Derived, Rhs, hidden::Traits< Derived >::structure_, hidden::Traits< Rhs >::structure_ >::ProductType const operator* (ExprBase< Rhs > const &other) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wsum (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wsumSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wnorm (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wnormSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wnorm2 (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wnorm2Safe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wmean (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wmeanSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wvariance (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wvarianceSafe (ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wvariance (Type const &mean, ExprBase< Rhs > const &weights) const
 
template<typename Rhs >
hidden::Traits< Derived >::Type const wvarianceSafe (Type const &mean, ExprBase< Rhs > const &weights) const
 
- Protected Attributes inherited from STK::IArray2D< SArray2DSquare< Type_ > >
Allocator allocator_
 allocator of the column data set
 
Array1D< Range, sizeCols_ > rangeCols_
 range of the index of the columns of the container.
 

Detailed Description

template<class Type_>
class STK::SArray2DSquare< Type_ >

Derivation of the SArray2DSquare class for square arrays of Real.

A SArray2DSquare is a column oriented two dimensional container of Real with the same number of rows and columns.

The range of the rows and the columns is the same.

Definition at line 102 of file STK_SArray2DSquare.h.

Member Typedef Documentation

◆ Base

template<class Type_ >
typedef IArray2D< SArray2DSquare<Type_> > STK::SArray2DSquare< Type_ >::Base

Type for the Interface Class.

Definition at line 106 of file STK_SArray2DSquare.h.

◆ Col

template<class Type_ >
typedef hidden::Traits<SArray2DSquare<Type_>>::Col STK::SArray2DSquare< Type_ >::Col

Definition at line 110 of file STK_SArray2DSquare.h.

◆ LowBase

template<class Type_ >
typedef ArrayBase< SArray2DSquare<Type_> > STK::SArray2DSquare< Type_ >::LowBase

Definition at line 107 of file STK_SArray2DSquare.h.

◆ Row

template<class Type_ >
typedef hidden::Traits<SArray2DSquare<Type_>>::Row STK::SArray2DSquare< Type_ >::Row

Definition at line 109 of file STK_SArray2DSquare.h.

◆ SubArray

template<class Type_ >
typedef hidden::Traits<SArray2DSquare<Type_>>::SubArray STK::SArray2DSquare< Type_ >::SubArray

Definition at line 114 of file STK_SArray2DSquare.h.

◆ SubCol

template<class Type_ >
typedef hidden::Traits<SArray2DSquare<Type_>>::SubCol STK::SArray2DSquare< Type_ >::SubCol

Definition at line 112 of file STK_SArray2DSquare.h.

◆ SubRow

template<class Type_ >
typedef hidden::Traits<SArray2DSquare<Type_>>::SubRow STK::SArray2DSquare< Type_ >::SubRow

Definition at line 111 of file STK_SArray2DSquare.h.

◆ SubVector

template<class Type_ >
typedef hidden::Traits<SArray2DSquare<Type_>>::SubVector STK::SArray2DSquare< Type_ >::SubVector

Definition at line 113 of file STK_SArray2DSquare.h.

◆ Type

template<class Type_ >
typedef hidden::Traits<SArray2DSquare<Type_>>::Type STK::SArray2DSquare< Type_ >::Type

Definition at line 116 of file STK_SArray2DSquare.h.

◆ TypeConst

template<class Type_ >
typedef hidden::Traits<SArray2DSquare<Type_>>::TypeConst STK::SArray2DSquare< Type_ >::TypeConst

Definition at line 117 of file STK_SArray2DSquare.h.

Member Enumeration Documentation

◆ anonymous enum

template<class Type_ >
anonymous enum
Enumerator
structure_ 
orient_ 
sizeCols_ 
sizeRows_ 
size_ 
storage_ 

Definition at line 119 of file STK_SArray2DSquare.h.

120 {
121 structure_ = hidden::Traits< SArray2DSquare<Type_> >::structure_,
122 orient_ = hidden::Traits< SArray2DSquare<Type_> >::orient_,
123 sizeCols_ = hidden::Traits< SArray2DSquare<Type_> >::sizeCols_,
124 sizeRows_ = hidden::Traits< SArray2DSquare<Type_> >::sizeRows_,
125 size_ = hidden::Traits< SArray2DSquare<Type_> >::size_,
126 storage_ = hidden::Traits< SArray2DSquare<Type_> >::storage_
127 };

Constructor & Destructor Documentation

◆ SArray2DSquare() [1/6]

template<class Type_ >
STK::SArray2DSquare< Type_ >::SArray2DSquare ( )
inline

Default constructor with cols_=(1:0) and rows_=(1:0).

Definition at line 130 of file STK_SArray2DSquare.h.

130: Base() {}
IArray2D< SArray2DSquare< Type_ > > Base
Type for the Interface Class.

◆ SArray2DSquare() [2/6]

template<class Type_ >
STK::SArray2DSquare< Type_ >::SArray2DSquare ( Range const I)
inline

Default constructor with specified Range.

Parameters
Irange of the Rows and Cols

Definition at line 134 of file STK_SArray2DSquare.h.

134: Base(I, I) {}

◆ SArray2DSquare() [3/6]

template<class Type_ >
STK::SArray2DSquare< Type_ >::SArray2DSquare ( Range const I,
Type const v 
)
inline

constructor with cols_and rows_ givens, initialization with a constant.

Parameters
Irange of the Rows and Cols
vinitial value of the container

Definition at line 140 of file STK_SArray2DSquare.h.

140 : Base(I, I)
141 { LowBase::setValue(v);}
SArray2DSquare< Type_ > & setValue(TypeConst value)
set a value to this container.

References STK::ArrayBase< SArray2DSquare< Type_ > >::setValue().

◆ SArray2DSquare() [4/6]

template<class Type_ >
STK::SArray2DSquare< Type_ >::SArray2DSquare ( SArray2DSquare< Type_ > const T,
bool  ref = false 
)
inline

Copy constructor.

Parameters
Tthe container to copy
reftrue if T is wrapped

Definition at line 146 of file STK_SArray2DSquare.h.

146: Base(T, ref) {}

◆ SArray2DSquare() [5/6]

template<class Type_ >
STK::SArray2DSquare< Type_ >::SArray2DSquare ( SArray2DSquare< Type_ > const T,
Range const I 
)
inline

constructor by reference, ref_=1 in the range given by I.

Parameters
Tthe Container to wrap
Irange of the container to wrap

Definition at line 151 of file STK_SArray2DSquare.h.

151: Base(T, I, I) {}

◆ SArray2DSquare() [6/6]

template<class Type_ >
template<class OtherDerived >
STK::SArray2DSquare< Type_ >::SArray2DSquare ( ExprBase< OtherDerived > const T)
inline

Copy constructor using an expression.

Parameters
Tthe container to wrap

Definition at line 156 of file STK_SArray2DSquare.h.

156 : Base()
157 { LowBase::operator=(T);}
SArray2DSquare< Type_ > & operator=(Type const &value)

References STK::ArrayBase< SArray2DSquare< Type_ > >::operator=().

◆ ~SArray2DSquare()

template<class Type_ >
STK::SArray2DSquare< Type_ >::~SArray2DSquare ( )
inline

destructor.

Definition at line 159 of file STK_SArray2DSquare.h.

159{}

Member Function Documentation

◆ erase()

template<class Type_ >
void STK::SArray2DSquare< Type_ >::erase ( int  pos,
int  n = 1 
)
inline

Delete n rows and columns at the specified position to the container.

Parameters
pos,nposition and number of rows and columns to erase

Definition at line 182 of file STK_SArray2DSquare.h.

183 {
184 Base::eraseCols(pos, n);
185 Base::eraseRows(pos, n);
186 }
void eraseRows(int pos, int n=1)
Delete n rows at the position pos.
void eraseCols(int pos, int n=1)
Delete n columns at the specified position of the array.

References STK::IArray2D< SArray2DSquare< Type_ > >::eraseCols(), and STK::IArray2D< SArray2DSquare< Type_ > >::eraseRows().

◆ insert()

template<class Type_ >
void STK::SArray2DSquare< Type_ >::insert ( int  pos,
int  n = 1 
)
inline

Insert n rows and column at the given position to the container.

Parameters
pos,nposition and number of rows and columns to insert

Definition at line 173 of file STK_SArray2DSquare.h.

174 {
175 Base::insertRows(pos, n);
176 Base::insertCols(pos, n);
177 }
void insertCols(int pos, int n=1)
Insert n columns at the index pos to the array.
void insertRows(int pos, int n=1)
Insert n rows at position pos in the array If pos is outside the range of a column,...

References STK::IArray2D< SArray2DSquare< Type_ > >::insertCols(), and STK::IArray2D< SArray2DSquare< Type_ > >::insertRows().

◆ operator=() [1/3]

template<class Type_ >
template<class Rhs >
SArray2DSquare & STK::SArray2DSquare< Type_ >::operator= ( ExprBase< Rhs > const T)
inline

operator = : overwrite the CArray with the Right hand side T.

Parameters
Tthe container to copy

Definition at line 207 of file STK_SArray2DSquare.h.

207{ return LowBase::operator=(T);}

References STK::ArrayBase< SArray2DSquare< Type_ > >::operator=().

◆ operator=() [2/3]

template<class Type_ >
SArray2DSquare & STK::SArray2DSquare< Type_ >::operator= ( SArray2DSquare< Type_ > const T)
inline

overwrite the SArray2D with T.

Parameters
Tthe container to copy

Definition at line 211 of file STK_SArray2DSquare.h.

211{ return LowBase::assign(T);}
SArray2DSquare< Type_ > & assign(ExprBase< Rhs > const &rhs)

References STK::ArrayBase< SArray2DSquare< Type_ > >::assign().

◆ operator=() [3/3]

template<class Type_ >
SArray2DSquare & STK::SArray2DSquare< Type_ >::operator= ( Type const v)
inline

set the container to a constant value.

Parameters
vthe value to set

Definition at line 215 of file STK_SArray2DSquare.h.

215{ return LowBase::setValue(v);}

References STK::ArrayBase< SArray2DSquare< Type_ > >::setValue().

◆ popBack()

template<class Type_ >
void STK::SArray2DSquare< Type_ >::popBack ( int  n = 1)
inline

Delete n rows and columns at the end of the container.

Parameters
nnumber of Rows and Cols to delete

Definition at line 198 of file STK_SArray2DSquare.h.

199 {
202 }
void popBackCols(int n=1)
Delete last columns of the array.
void popBackRows(int n=1)
Delete n latest rows of the array.

References STK::IArray2D< SArray2DSquare< Type_ > >::popBackCols(), and STK::IArray2D< SArray2DSquare< Type_ > >::popBackRows().

◆ pushBack()

template<class Type_ >
void STK::SArray2DSquare< Type_ >::pushBack ( int  n = 1)
inline

Add n rows and columns to the container.

Parameters
nnumber of Rows and Cols to add

Definition at line 190 of file STK_SArray2DSquare.h.

191 {
194 }
void pushBackCols(int n=1)
Add n columns at the end of the array.
void pushBackRows(int n=1)
Add n rows to the array.

References STK::IArray2D< SArray2DSquare< Type_ > >::pushBackCols(), and STK::IArray2D< SArray2DSquare< Type_ > >::pushBackRows().

◆ resize1D()

template<class Type_ >
SArray2DSquare & STK::SArray2DSquare< Type_ >::resize1D ( Range const I)
inline

New size for the container.

Parameters
Irange of the columns and rows of the container

Definition at line 168 of file STK_SArray2DSquare.h.

169 { Base::resize(I, I); return *this;}
SArray2DSquare< Type_ > & resize(Range const &I, Range const &J)
resize the array.

References STK::IArray2D< SArray2DSquare< Type_ > >::resize().

◆ shift1D()

template<class Type_ >
void STK::SArray2DSquare< Type_ >::shift1D ( int  beg)
inline

New beginning index for the object.

Parameters
begfirst index of the container

Definition at line 163 of file STK_SArray2DSquare.h.

164 { Base::shift(beg, beg);}
void shift(int rbeg, int cbeg)
Set new beginning indexes to the array.

References STK::IArray2D< SArray2DSquare< Type_ > >::shift().


The documentation for this class was generated from the following file: