STK++ 0.9.13
STK::CArraySquare< Type_, Size_, Orient_ > Class Template Reference

specialization for the square case. More...

#include <STK_CArraySquare.h>

Inheritance diagram for STK::CArraySquare< Type_, Size_, Orient_ >:
Inheritance graph

Public Types

enum  {
  structure_ = hidden::Traits< CArraySquare <Type_, Size_, Orient_> >::structure_ , orient_ = hidden::Traits< CArraySquare <Type_, Size_, Orient_> >::orient_ , sizeRows_ = hidden::Traits< CArraySquare <Type_, Size_, Orient_> >::sizeRows_ , sizeCols_ = hidden::Traits< CArraySquare <Type_, Size_, Orient_> >::sizeCols_ ,
  size_ = hidden::Traits< CArraySquare <Type_, Size_, Orient_> >::size_ , storage_ = hidden::Traits< CArraySquare <Type_, Size_, Orient_> >::storage_
}
 
typedef ICArray< CArraySquare< Type_, Size_, Orient_ > > Base
 
typedef ArrayBase< CArraySquare< Type_, Size_, Orient_ > > LowBase
 
typedef hidden::Traits< CArraySquare< Type_, Size_ > >::Row Row
 
typedef hidden::Traits< CArraySquare< Type_, Size_ > >::Col Col
 
typedef hidden::Traits< CArraySquare< Type_, Size_ > >::Type Type
 
typedef hidden::Traits< CArraySquare< Type_, Size_ > >::TypeConst TypeConst
 
- Public Types inherited from STK::ICArray< CArraySquare< Type_, Size_, Orient_ > >
enum  
 
typedef ArrayBase< CArraySquare< Type_, Size_, Orient_ > > Base
 
typedef hidden::Traits< CArraySquare< Type_, Size_, Orient_ > >::Allocator Allocator
 
typedef hidden::Traits< CArraySquare< Type_, Size_, Orient_ > >::Row Row
 
typedef hidden::Traits< CArraySquare< Type_, Size_, Orient_ > >::Col Col
 
typedef hidden::Traits< CArraySquare< Type_, Size_, Orient_ > >::Type Type
 
typedef hidden::Traits< CArraySquare< Type_, Size_, Orient_ > >::TypeConst TypeConst
 
typedef TRange< sizeRows_ > RowRange
 Type of the Range for the rows.
 
typedef TRange< sizeCols_ > ColRange
 Type of the Range for the columns.
 
- 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

 CArraySquare ()
 Default constructor.
 
 CArraySquare (int const &size)
 constructor with specified dimension.
 
 CArraySquare (Range range)
 constructor with specified ranges.
 
 CArraySquare (int size, Type const &v)
 constructor with specified dimension, initialization with a constant.
 
 CArraySquare (Range range, Type const &v)
 constructor with specified ranges, initialization with a constant.
 
 CArraySquare (CArraySquare const &T, bool ref=false)
 Copy constructor.
 
 CArraySquare (Type *const &q, int size)
 wrapper constructor for 0 based C-Array.
 
template<class OtherAllocator >
 CArraySquare (ITContainer2D< OtherAllocator > const &allocator)
 constructor by reference.
 
template<class OtherDerived >
 CArraySquare (ExprBase< OtherDerived > const &T)
 Copy constructor using an expression.
 
 ~CArraySquare ()
 destructor.
 
CArraySquareoperator= (Type const &v)
 operator= : set the container to a constant value.
 
template<class Rhs >
CArraySquareoperator= (ExprBase< Rhs > const &T)
 operator = : overwrite the CArray with the Right hand side T.
 
CArraySquareoperator= (CArraySquare const &rhs)
 operator = : overwrite the CArray with the Right hand side rhs.
 
- Public Member Functions inherited from STK::ICArray< CArraySquare< Type_, Size_, Orient_ > >
ColRange constcolsImpl () const
 
RowRange constrowsImpl () const
 
void clear ()
 clear all allocated memory .
 
bool empty () const
 
bool isRef () const
 
Allocator constallocator () const
 Get a constant reference on the main allocator.
 
Type *constp_data () const
 
Typeelt2Impl (int i, int j)
 implement the const element accessor
 
TypeConst elt2Impl (int i, int j) const
 implement the writable element accessor
 
Typeelt1Impl (int j)
 implement the const element accessor for vector/point/diagonal arrays
 
TypeConst elt1Impl (int j) const
 implement the writable element accessor for vector/point/diagonal arrays
 
Typeelt0Impl ()
 implement the const element accessor for number arrays
 
TypeConst elt0Impl () const
 implement the writable element accessor for number arrays
 
void setValueImpl (int j, TypeConst value)
 implement setValue for vector/point/diagonal arrays
 
void setValueImpl (int i, int j, TypeConst value)
 implement setValue for vector/point/diagonal arrays
 
Typeoperator() (int i, int j)
 
TypeConst operator() (int i, int j) const
 
Typeoperator() ()
 
TypeConst operator() () const
 
hidden::CSlice< CArraySquare< Type_, Size_, Orient_ >, 1, Size_ >::Result operator() (int i, TRange< Size_ > const &J) const
 
hidden::CSlice< CArraySquare< Type_, Size_, Orient_ >, Size_, 1 >::Result operator() (TRange< Size_ > const &I, int j) const
 
hidden::CSlice< CArraySquare< Type_, Size_, Orient_ >, OtherRows_, OtherCols_ >::Result operator() (TRange< OtherRows_ > const &I, TRange< OtherCols_ > const &J) const
 
Typeoperator[] (int i)
 
TypeConst operator[] (int i) const
 
hidden::CSliceDispatcher< CArraySquare< Type_, Size_, Orient_ >, Size >::Result operator[] (TRange< Size > const &I) const
 
hidden::CSlice< CArraySquare< Type_, Size_, Orient_ >, 1, sizeCols_ >::Result row (int i) const
 implement the row operator using a reference on the row of the allocator
 
hidden::CSlice< CArraySquare< Type_, Size_, Orient_ >, 1, Size_ >::Result row (int i, TRange< Size_ > const &J) const
 implement the row operator using a reference on the row of the allocator
 
hidden::CSlice< CArraySquare< Type_, Size_, Orient_ >, Size_, sizeCols_ >::Result row (TRange< Size_ > const &I) const
 implement the row operator using a reference on a range of rows of the allocator
 
hidden::CSlice< CArraySquare< Type_, Size_, Orient_ >, sizeRows_, 1 >::Result col (int j) const
 implement the col operator using a reference on the column of the allocator
 
hidden::CSlice< CArraySquare< Type_, Size_, Orient_ >, Size_, 1 >::Result col (TRange< Size_ > const &I, int j) const
 implement the col operator using a reference on the column of the allocator
 
hidden::CSlice< CArraySquare< Type_, Size_, Orient_ >, sizeRows_, Size_ >::Result col (TRange< Size_ > const &J) const
 implement the col operator using a reference on a range of columns of the allocator
 
hidden::CSliceDispatcher< CArraySquare< Type_, Size_, Orient_ >, Size >::Result sub (TRange< Size > const &J) const
 implement the sub operator for 1D arrays using a reference on the row/column of the allocator
 
hidden::CSlice< CArraySquare< Type_, Size_, Orient_ >, OtherRows_, OtherCols_ >::Result sub (TRange< OtherRows_ > const &I, TRange< OtherCols_ > const &J) const
 implement the sub operator for 2D arrays using references on a range of rows and columns of the allocator
 
void swap (int i, int j)
 swap two elements: only for vectors an points.
 
void swapCols (int pos1, int pos2)
 
void swapRows (int pos1, int pos2)
 
void exchange (CArraySquare< Type_, Size_, Orient_ > &T)
 exchange this with T.
 
void move (CArraySquare< Type_, Size_, Orient_ > const &T)
 move T to this.
 
CArraySquare< Type_, Size_, Orient_ > & shift (int beginRows, int beginCols)
 shift the Array.
 
CArraySquare< Type_, Size_, Orient_ > & shift (int firstIdx)
 shift the Array.
 
CArraySquare< Type_, Size_, Orient_ > & resize (Range const &I, Range const &J)
 resize the Array.
 
CArraySquare< Type_, Size_, Orient_ > & resize (TRange< Size_ > const &I)
 Resize the vector/point/diagonal/square array.
 
CArraySquare< Type_, Size_, Orient_ > & resize (int size)
 Resize the vector/point/diagonal/square array.
 
- 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 Member Functions inherited from STK::ICArray< CArraySquare< Type_, Size_, Orient_ > >
 ICArray ()
 default constructor.
 
 ICArray (int sizeRows, int sizeCols)
 constructor with specified sizes.
 
 ICArray (int sizeRows, int sizeCols, Type const &value)
 constructor with specified sizes and value.
 
 ICArray (CArraySquare< Type_, Size_, Orient_ > const &T, bool ref=false)
 copy or wrapper constructor.
 
 ICArray (Type *const &q, int sizeRows, int sizeCols)
 wrapper constructor for 0 based C-Array.
 
 ICArray (ITContainer2D< OtherAllocator > const &allocator, Range const &I, Range const &J)
 constructor by reference, ref_=1.
 
 ICArray (ITContainer2D< OtherAllocator > const &allocator)
 constructor by reference, ref_=1.
 
 ~ICArray ()
 destructor
 
- Protected Member Functions inherited from STK::ArrayBase< Derived >
 ArrayBase ()
 Default constructor.
 
 ~ArrayBase ()
 destructor
 
- Protected Member Functions inherited from STK::ExprBase< Derived >
 ExprBase ()
 Default constructor.
 
 ~ExprBase ()
 destructor
 
- Protected Attributes inherited from STK::ICArray< CArraySquare< Type_, Size_, Orient_ > >
Allocator allocator_
 allocator of the memory

 

Detailed Description

template<typename Type_, int Size_, bool Orient_>
class STK::CArraySquare< Type_, Size_, Orient_ >

specialization for the square case.

Definition at line 105 of file STK_CArraySquare.h.

Member Typedef Documentation

◆ Base

template<typename Type_ , int Size_, bool Orient_>
typedef ICArray< CArraySquare<Type_, Size_, Orient_> > STK::CArraySquare< Type_, Size_, Orient_ >::Base

Definition at line 108 of file STK_CArraySquare.h.

◆ Col

template<typename Type_ , int Size_, bool Orient_>
typedef hidden::Traits<CArraySquare<Type_,Size_>>::Col STK::CArraySquare< Type_, Size_, Orient_ >::Col

Definition at line 112 of file STK_CArraySquare.h.

◆ LowBase

template<typename Type_ , int Size_, bool Orient_>
typedef ArrayBase< CArraySquare<Type_, Size_, Orient_> > STK::CArraySquare< Type_, Size_, Orient_ >::LowBase

Definition at line 109 of file STK_CArraySquare.h.

◆ Row

template<typename Type_ , int Size_, bool Orient_>
typedef hidden::Traits<CArraySquare<Type_,Size_>>::Row STK::CArraySquare< Type_, Size_, Orient_ >::Row

Definition at line 111 of file STK_CArraySquare.h.

◆ Type

template<typename Type_ , int Size_, bool Orient_>
typedef hidden::Traits<CArraySquare<Type_,Size_>>::Type STK::CArraySquare< Type_, Size_, Orient_ >::Type

Definition at line 114 of file STK_CArraySquare.h.

◆ TypeConst

template<typename Type_ , int Size_, bool Orient_>
typedef hidden::Traits<CArraySquare<Type_,Size_>>::TypeConst STK::CArraySquare< Type_, Size_, Orient_ >::TypeConst

Definition at line 115 of file STK_CArraySquare.h.

Member Enumeration Documentation

◆ anonymous enum

template<typename Type_ , int Size_, bool Orient_>
anonymous enum
Enumerator
structure_ 
orient_ 
sizeRows_ 
sizeCols_ 
size_ 
storage_ 

Definition at line 117 of file STK_CArraySquare.h.

118 {
119 structure_ = hidden::Traits< CArraySquare <Type_, Size_, Orient_> >::structure_,
120 orient_ = hidden::Traits< CArraySquare <Type_, Size_, Orient_> >::orient_,
121 sizeRows_ = hidden::Traits< CArraySquare <Type_, Size_, Orient_> >::sizeRows_,
122 sizeCols_ = hidden::Traits< CArraySquare <Type_, Size_, Orient_> >::sizeCols_,
123 size_ = hidden::Traits< CArraySquare <Type_, Size_, Orient_> >::size_,
124 storage_ = hidden::Traits< CArraySquare <Type_, Size_, Orient_> >::storage_
125 };

Constructor & Destructor Documentation

◆ CArraySquare() [1/9]

template<typename Type_ , int Size_, bool Orient_>
STK::CArraySquare< Type_, Size_, Orient_ >::CArraySquare ( )
inline

Default constructor.

Definition at line 127 of file STK_CArraySquare.h.

127: Base() {}
ICArray< CArraySquare< Type_, Size_, Orient_ > > Base

◆ CArraySquare() [2/9]

template<typename Type_ , int Size_, bool Orient_>
STK::CArraySquare< Type_, Size_, Orient_ >::CArraySquare ( int const size)
inline

constructor with specified dimension.

Parameters
sizerange of the columns

Definition at line 131 of file STK_CArraySquare.h.

131: Base(size, size) {}

◆ CArraySquare() [3/9]

template<typename Type_ , int Size_, bool Orient_>
STK::CArraySquare< Type_, Size_, Orient_ >::CArraySquare ( Range  range)
inline

constructor with specified ranges.

Parameters
rangerange of the rows and columns

Definition at line 135 of file STK_CArraySquare.h.

135 : Base(range.size(), range.size())
136 { this->shift(range.begin());}
CArraySquare< Type_, Size_, Orient_ > & shift(int beginRows, int beginCols)
shift the Array.

References STK::RangeBase< Derived >::begin(), and STK::ICArray< CArraySquare< Type_, Size_, Orient_ > >::shift().

◆ CArraySquare() [4/9]

template<typename Type_ , int Size_, bool Orient_>
STK::CArraySquare< Type_, Size_, Orient_ >::CArraySquare ( int  size,
Type const v 
)
inline

constructor with specified dimension, initialization with a constant.

Parameters
sizerange of the columns
vinitial value of the container

Definition at line 141 of file STK_CArraySquare.h.

141: Base(size, size, v) {}

◆ CArraySquare() [5/9]

template<typename Type_ , int Size_, bool Orient_>
STK::CArraySquare< Type_, Size_, Orient_ >::CArraySquare ( Range  range,
Type const v 
)
inline

constructor with specified ranges, initialization with a constant.

Parameters
rangerange of the rows and columns
vinitial value of the container

Definition at line 146 of file STK_CArraySquare.h.

146 : Base(range.size(), range.size(), v)
147 { this->shift(range.begin());}

References STK::RangeBase< Derived >::begin(), and STK::ICArray< CArraySquare< Type_, Size_, Orient_ > >::shift().

◆ CArraySquare() [6/9]

template<typename Type_ , int Size_, bool Orient_>
STK::CArraySquare< Type_, Size_, Orient_ >::CArraySquare ( CArraySquare< Type_, Size_, Orient_ > const T,
bool  ref = false 
)
inline

Copy constructor.

Parameters
Tthe container to copy
reftrue if T is wrapped

Definition at line 152 of file STK_CArraySquare.h.

152: Base(T, ref) {}

◆ CArraySquare() [7/9]

template<typename Type_ , int Size_, bool Orient_>
STK::CArraySquare< Type_, Size_, Orient_ >::CArraySquare ( Type *const q,
int  size 
)
inline

wrapper constructor for 0 based C-Array.

Parameters
qpointer on the array
sizenumber of rows/columns

Definition at line 157 of file STK_CArraySquare.h.

157: Base(q, size, size) {}

◆ CArraySquare() [8/9]

template<typename Type_ , int Size_, bool Orient_>
template<class OtherAllocator >
STK::CArraySquare< Type_, Size_, Orient_ >::CArraySquare ( ITContainer2D< OtherAllocator > const allocator)
inline

constructor by reference.

Parameters
allocatorthe allocator to wrap

Definition at line 162 of file STK_CArraySquare.h.

162: Base(allocator.asDerived()) {}
Allocator const & allocator() const
Get a constant reference on the main allocator.

◆ CArraySquare() [9/9]

template<typename Type_ , int Size_, bool Orient_>
template<class OtherDerived >
STK::CArraySquare< Type_, Size_, Orient_ >::CArraySquare ( ExprBase< OtherDerived > const T)
inline

Copy constructor using an expression.

Parameters
Tthe expression to copy

Definition at line 167 of file STK_CArraySquare.h.

167 : Base(T.sizeRows(), T.sizeCols())
168 { LowBase::operator=(T);}
CArraySquare< Type_, Size_, Orient_ > & operator=(Type const &value)

References STK::ArrayBase< CArraySquare< Type_, Size_, Orient_ > >::operator=().

◆ ~CArraySquare()

template<typename Type_ , int Size_, bool Orient_>
STK::CArraySquare< Type_, Size_, Orient_ >::~CArraySquare ( )
inline

destructor.

Definition at line 170 of file STK_CArraySquare.h.

170{}

Member Function Documentation

◆ operator=() [1/3]

template<typename Type_ , int Size_, bool Orient_>
CArraySquare & STK::CArraySquare< Type_, Size_, Orient_ >::operator= ( CArraySquare< Type_, Size_, Orient_ > const rhs)
inline

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

Parameters
rhsthe container to copy

Definition at line 183 of file STK_CArraySquare.h.

183{ return LowBase::assign(rhs);}
CArraySquare< Type_, Size_, Orient_ > & assign(ExprBase< Rhs > const &rhs)

References STK::ArrayBase< CArraySquare< Type_, Size_, Orient_ > >::assign().

◆ operator=() [2/3]

template<typename Type_ , int Size_, bool Orient_>
template<class Rhs >
CArraySquare & STK::CArraySquare< Type_, Size_, Orient_ >::operator= ( ExprBase< Rhs > const T)
inline

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

Parameters
Tthe container to copy

Definition at line 179 of file STK_CArraySquare.h.

179{ return LowBase::assign(T);}

References STK::ArrayBase< CArraySquare< Type_, Size_, Orient_ > >::assign().

◆ operator=() [3/3]

template<typename Type_ , int Size_, bool Orient_>
CArraySquare & STK::CArraySquare< Type_, Size_, Orient_ >::operator= ( Type const v)
inline

operator= : set the container to a constant value.

Parameters
vthe value to set

Definition at line 174 of file STK_CArraySquare.h.

174{ return LowBase::setValue(v);}
CArraySquare< Type_, Size_, Orient_ > & setValue(TypeConst value)
set a value to this container.

References STK::ArrayBase< CArraySquare< Type_, Size_, Orient_ > >::setValue().


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