Array Class Reference

#include <ql/math/array.hpp>

List of all members.


Detailed Description

1-D array used in linear algebra.

This class implements the concept of vector as used in linear algebra. As such, it is not meant to be used as a container - std::vector should be used instead.

Tests:
construction of arrays is checked in a number of cases


Public Types

typedef Real value_type
typedef Real * iterator
typedef const Real * const_iterator
typedef boost::reverse_iterator<
iterator > 
reverse_iterator
typedef boost::reverse_iterator<
const_iterator > 
const_reverse_iterator

Public Member Functions

Constructors, destructor, and assignment
 Array (Size size=0)
 creates the array with the given dimension
 Array (Size size, Real value)
 creates the array and fills it with value
 Array (Size size, Real value, Real increment)
 creates the array and fills it according to $ a_{0} = value, a_{i}=a_{i-1}+increment $
 Array (const Array &)
 Array (const Disposable< Array > &)
 Array (const std::vector< Real > &)
 creates the array as a copy of a given stl vector
Arrayoperator= (const Array &)
Arrayoperator= (const Disposable< Array > &)
bool operator== (const Array &) const
bool operator!= (const Array &) const
Vector algebra
v += x and similar operation involving a scalar value are shortcuts for $ \forall i : v_i = v_i + x $

v *= w and similar operation involving two vectors are shortcuts for $ \forall i : v_i = v_i \times w_i $

Precondition:
all arrays involved in an algebraic expression must have the same size.


const Arrayoperator+= (const Array &)
const Arrayoperator+= (Real)
const Arrayoperator-= (const Array &)
const Arrayoperator-= (Real)
const Arrayoperator *= (const Array &)
const Arrayoperator *= (Real)
const Arrayoperator/= (const Array &)
const Arrayoperator/= (Real)
Element access
Real operator[] (Size) const
 read-only
Real at (Size) const
Real front () const
Real back () const
Real & operator[] (Size)
 read-write
Real & at (Size)
Real & front ()
Real & back ()
Inspectors
Size size () const
 dimension of the array
bool empty () const
 whether the array is empty
Iterator access
const_iterator begin () const
iterator begin ()
const_iterator end () const
iterator end ()
const_reverse_iterator rbegin () const
reverse_iterator rbegin ()
const_reverse_iterator rend () const
reverse_iterator rend ()
Utilities
void swap (Array &)

Related Functions

(Note that these are not member functions.)

Real DotProduct (const Array &, const Array &)
const Disposable< Arrayoperator+ (const Array &v)
const Disposable< Arrayoperator- (const Array &v)
const Disposable< Arrayoperator+ (const Array &, const Array &)
const Disposable< Arrayoperator+ (const Array &, Real)
const Disposable< Arrayoperator+ (Real, const Array &)
const Disposable< Arrayoperator- (const Array &, const Array &)
const Disposable< Arrayoperator- (const Array &, Real)
const Disposable< Arrayoperator- (Real, const Array &)
const Disposable< Arrayoperator * (const Array &, const Array &)
const Disposable< Arrayoperator * (const Array &, Real)
const Disposable< Arrayoperator * (Real, const Array &)
const Disposable< Arrayoperator/ (const Array &, const Array &)
const Disposable< Arrayoperator/ (const Array &, Real)
const Disposable< Arrayoperator/ (Real, const Array &)
const Disposable< ArrayAbs (const Array &)
const Disposable< ArraySqrt (const Array &)
const Disposable< ArrayLog (const Array &)
const Disposable< ArrayExp (const Array &)
void swap (Array &, Array &)
std::ostream & operator<< (std::ostream &, const Array &)


Friends And Related Function Documentation

Real DotProduct ( const Array ,
const Array  
) [related]

const Disposable< Array > operator+ ( const Array v  )  [related]

const Disposable< Array > operator- ( const Array v  )  [related]

const Disposable< Array > operator+ ( const Array ,
const Array  
) [related]

const Disposable< Array > operator+ ( const Array ,
Real   
) [related]

const Disposable< Array > operator+ ( Real  ,
const Array  
) [related]

const Disposable< Array > operator- ( const Array ,
const Array  
) [related]

const Disposable< Array > operator- ( const Array ,
Real   
) [related]

const Disposable< Array > operator- ( Real  ,
const Array  
) [related]

const Disposable< Array > operator * ( const Array ,
const Array  
) [related]

const Disposable< Array > operator * ( const Array ,
Real   
) [related]

const Disposable< Array > operator * ( Real  ,
const Array  
) [related]

const Disposable< Array > operator/ ( const Array ,
const Array  
) [related]

const Disposable< Array > operator/ ( const Array ,
Real   
) [related]

const Disposable< Array > operator/ ( Real  ,
const Array  
) [related]

const Disposable< Array > Abs ( const Array  )  [related]

const Disposable< Array > Sqrt ( const Array  )  [related]

const Disposable< Array > Log ( const Array  )  [related]

const Disposable< Array > Exp ( const Array  )  [related]

void swap ( Array ,
Array  
) [related]

std::ostream & operator<< ( std::ostream &  ,
const Array  
) [related]