Analytics Template Library
 All Classes Namespaces Functions Variables Pages
Public Member Functions | Public Attributes | List of all members
atl::VariableMatrix< T > Struct Template Reference

#include <Matrix.hpp>

Inheritance diagram for atl::VariableMatrix< T >:
atl::ExpressionBase< T, VariableMatrix< T > > atl::ExpressionBase< T, VariableMatrix< T > > atl::VariableVector< T > atl::VariableVector< T >

Public Member Functions

 VariableMatrix (size_t rows=0, size_t columns=1, T initial_value=static_cast< T >(0.0))
 
VariableMatrixoperator= (const T &value)
 
template<class A >
VariableMatrixoperator= (const ExpressionBase< T, A > &exp)
 
template<class A >
VariableMatrixAssignConcurrent (const ExpressionBase< T, A > &exp)
 
void PushIds (typename atl::StackEntry< T >::vi_storage &ids) const
 
void PushIds (typename atl::StackEntry< T >::vi_storage &ids, size_t i, size_t j=0) const
 
atl::Variable< T > & operator() (size_t i, size_t j=0)
 
const atl::Variable< T > & operator() (size_t i, size_t j=0) const
 
const T GetValue () const
 
const T GetValue (size_t i, size_t j=0) const
 
EvaluateDerivative (uint32_t a) const
 
EvaluateDerivative (uint32_t a, uint32_t b) const
 
EvaluateDerivative (uint32_t x, uint32_t y, uint32_t z) const
 
EvaluateDerivative (uint32_t a, size_t i, size_t j=0) const
 
EvaluateDerivative (uint32_t a, uint32_t b, size_t i, size_t j=0) const
 
EvaluateDerivative (uint32_t x, uint32_t y, uint32_t z, size_t i, size_t j=0) const
 
size_t GetColumns () const
 
size_t GetRows () const
 
bool IsScalar () const
 
 VariableMatrix (size_t rows=0, size_t columns=1, T initial_value=static_cast< T >(0.0))
 
VariableMatrixoperator= (const T &value)
 
template<class A >
VariableMatrixoperator= (const ExpressionBase< T, A > &exp)
 
template<class A >
VariableMatrixAssignConcurrent (const ExpressionBase< T, A > &exp)
 
void PushIds (typename atl::StackEntry< T >::vi_storage &ids) const
 
void PushIds (typename atl::StackEntry< T >::vi_storage &ids, size_t i, size_t j=0) const
 
atl::Variable< T > & operator() (size_t i, size_t j=0)
 
const atl::Variable< T > & operator() (size_t i, size_t j=0) const
 
const T GetValue () const
 
const T GetValue (size_t i, size_t j=0) const
 
bool IsNonlinear () const
 
EvaluateDerivative (uint32_t x) const
 
EvaluateDerivative (uint32_t x, uint32_t y) const
 
EvaluateDerivative (uint32_t x, uint32_t y, uint32_t z) const
 
EvaluateDerivative (uint32_t x, size_t i, size_t j=0) const
 
EvaluateDerivative (uint32_t x, uint32_t y, size_t i, size_t j=0) const
 
EvaluateDerivative (uint32_t x, uint32_t y, uint32_t z, size_t i, size_t j=0) const
 
size_t GetColumns () const
 
size_t GetRows () const
 
bool IsScalar () const
 
- Public Member Functions inherited from atl::ExpressionBase< T, VariableMatrix< T > >
const VariableMatrix< T > & Cast () const
 
const VariableMatrix< T > & Cast () const
 
const T GetValue () const
 
const T GetValue (size_t i, size_t j=0) const
 
const T GetValue () const
 
const T GetValue (size_t i, size_t j=0) const
 
bool IsNonlinear () const
 
bool IsNonlinear () const
 
void PushIds (typename atl::StackEntry< T >::vi_storage &ids) const
 
void PushIds (typename atl::StackEntry< T >::vi_storage &ids, size_t i, size_t j=0) const
 
void PushIds (typename atl::StackEntry< T >::vi_storage &ids) const
 
void PushIds (typename atl::StackEntry< T >::vi_storage &ids, size_t i, size_t j=0) const
 
EvaluateDerivative (uint32_t a) const
 
EvaluateDerivative (uint32_t a, uint32_t b) const
 
EvaluateDerivative (uint32_t x, uint32_t y, uint32_t z) const
 
EvaluateDerivative (uint32_t a, size_t i, size_t j=0) const
 
EvaluateDerivative (uint32_t a, uint32_t b, size_t i, size_t j=0) const
 
EvaluateDerivative (uint32_t x, uint32_t y, uint32_t z, size_t i, size_t j=0) const
 
EvaluateDerivative (uint32_t x) const
 
EvaluateDerivative (uint32_t x, uint32_t y) const
 
EvaluateDerivative (uint32_t x, uint32_t y, uint32_t z) const
 
EvaluateDerivative (uint32_t x, size_t i, size_t j=0) const
 
EvaluateDerivative (uint32_t x, uint32_t y, size_t i, size_t j=0) const
 
EvaluateDerivative (uint32_t x, uint32_t y, uint32_t z, size_t i, size_t j=0) const
 
const ExpressionBaseoperator= (const ExpressionBase &exp) const
 
const ExpressionBaseoperator= (const ExpressionBase &exp) const
 
size_t GetColumns () const
 
size_t GetColumns () const
 
size_t GetRows () const
 
size_t GetRows () const
 
bool IsScalar () const
 
bool IsScalar () const
 
std::string ToExpressionTemplateString () const
 

Public Attributes

size_t rows
 
size_t columns
 
std::vector< atl::Variable< T >
, atl::clfallocator
< atl::Variable< T > > > 
data_m
 

Detailed Description

template<typename T>
struct atl::VariableMatrix< T >

Matrix of Variable types.

Constructor & Destructor Documentation

template<typename T>
atl::VariableMatrix< T >::VariableMatrix ( size_t  rows = 0,
size_t  columns = 1,
initial_value = static_cast<T> (0.0) 
)
inline

Constructor.

Parameters
rows
columns
initial_value

Member Function Documentation

template<typename T>
template<class A >
VariableMatrix& atl::VariableMatrix< T >::AssignConcurrent ( const ExpressionBase< T, A > &  exp)
inline

Assignment function for concurrent assignment. This function guarantees proper tape recording by reserving a block of entries from the Tape and allocating among threads accordingly. Each thread receives a reference to exp and its range of Tape entries.

Parameters
exp
Returns
template<typename T>
T atl::VariableMatrix< T >::EvaluateDerivative ( uint32_t  x) const
inline

throws std::invalid_argument

Returns
template<typename T>
T atl::VariableMatrix< T >::EvaluateDerivative ( uint32_t  x,
uint32_t  y 
) const
inline

throws std::invalid_argument

Returns
template<typename T>
T atl::VariableMatrix< T >::EvaluateDerivative ( uint32_t  x,
uint32_t  y,
uint32_t  z 
) const
inline

throws std::invalid_argument

Returns
template<typename T>
T atl::VariableMatrix< T >::EvaluateDerivative ( uint32_t  x,
size_t  i,
size_t  j = 0 
) const
inline

Evaluates the first-order derivative at index {i,j}.

Returns 1 if index {i,j} is equal to x, else it returns 0.

Parameters
x
i
j
Returns
template<typename T>
T atl::VariableMatrix< T >::EvaluateDerivative ( uint32_t  x,
uint32_t  y,
size_t  i,
size_t  j = 0 
) const
inline

Returns 0.

Parameters
x
x
i
j
Returns
template<typename T>
T atl::VariableMatrix< T >::EvaluateDerivative ( uint32_t  x,
uint32_t  y,
uint32_t  z,
size_t  i,
size_t  j = 0 
) const
inline

Returns 0.

Parameters
x
y
z
i
j
Returns
template<typename T>
size_t atl::VariableMatrix< T >::GetColumns ( ) const
inline

Returns the number of columns.

Returns
template<typename T>
size_t atl::VariableMatrix< T >::GetRows ( ) const
inline

Returns the number of rows.

Returns
template<typename T>
const T atl::VariableMatrix< T >::GetValue ( ) const
inline

throws std::invalid_argument

Returns
template<typename T>
const T atl::VariableMatrix< T >::GetValue ( size_t  i,
size_t  j = 0 
) const
inline

Returns the real value at index {i,j}.

Parameters
i
j
Returns
template<typename T>
bool atl::VariableMatrix< T >::IsNonlinear ( ) const
inline

Returns false.

Returns
template<typename T>
bool atl::VariableMatrix< T >::IsScalar ( ) const
inline

Returns false.

template<typename T>
atl::Variable<T>& atl::VariableMatrix< T >::operator() ( size_t  i,
size_t  j = 0 
)
inline
Parameters
i
j
Returns
template<typename T>
const atl::Variable<T>& atl::VariableMatrix< T >::operator() ( size_t  i,
size_t  j = 0 
) const
inline
Parameters
i
j
Returns
template<typename T>
VariableMatrix& atl::VariableMatrix< T >::operator= ( const T &  value)
inline

Assignment operator. Sets all entries to value.

Parameters
value
Returns
template<typename T>
template<class A >
VariableMatrix& atl::VariableMatrix< T >::operator= ( const ExpressionBase< T, A > &  exp)
inline

Assignment operator for expression template types.

Parameters
exp
Returns
template<typename T>
void atl::VariableMatrix< T >::PushIds ( typename atl::StackEntry< T >::vi_storage &  ids) const
inline

Push variable info into a set for index {0,0}..

Parameters
ids
template<typename T>
void atl::VariableMatrix< T >::PushIds ( typename atl::StackEntry< T >::vi_storage &  ids,
size_t  i,
size_t  j = 0 
) const
inline

Push variable info into a set at index {i,j}.

Parameters
ids

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