|
Graph Framework
|
Class representing a generic buffer. More...
#include <backend.hpp>
Public Types | |
| typedef T | base |
| Type def to retrieve the backend T type. | |
Public Member Functions | |
| buffer () | |
| Construct an empty buffer backend. | |
| buffer (const size_t s) | |
| Construct a buffer backend with a size. | |
| buffer (const size_t s, const T d) | |
| Construct a buffer backend with a size. | |
| buffer (const std::vector< T > &d) | |
| Construct a buffer backend from a vector. | |
| buffer (const buffer &d) | |
| Construct a buffer backend from a buffer backend. | |
| buffer (const T min, const T dx, const size_t num) | |
| Construct a buffer backend linearly. | |
| void | set (const T d) |
| Assign a constant value. | |
| void | set (const std::vector< T > &d) |
| Assign a vector value. | |
| bool | is_same () const |
| Is every element the same. | |
| bool | is_zero () const |
| Is every element zero. | |
| bool | has_zero () const |
| Is any element zero. | |
| bool | is_negative () const |
| Is every element negative. | |
| bool | is_even () const |
| Is every element even. | |
| bool | is_none () const |
| Is every element negative one. | |
| void | sqrt () |
| Take sqrt. | |
| void | exp () |
| Take exp. | |
| void | log () |
| Take log. | |
| void | sin () |
| Take sin. | |
| void | cos () |
| Take cos. | |
| void | real () |
| Take cos. | |
| void | erf () |
| Take erf. | |
| void | erfi () |
| Take erfi. | |
| bool | is_normal () const |
| Check for normal values. | |
| buffer< T > | index_row (const size_t index, const size_t num_columns) |
| Index row. | |
| buffer< T > | index_column (const size_t index, const size_t num_columns) |
| Index column. | |
| void | add_row (const buffer< T > &x) |
| Add row operation. | |
| void | add_col (const buffer< T > &x) |
| Add col operation. | |
| void | subtract_row (const buffer< T > &x) |
| Subtract row operation. | |
| void | subtract_col (const buffer< T > &x) |
| Subtract col operation. | |
| void | multiply_row (const buffer< T > &x) |
| Multiply row operation. | |
| void | multiply_col (const buffer< T > &x) |
| Multiply col operation. | |
| void | divide_row (const buffer< T > &x) |
| Divide row operation. | |
| void | divide_col (const buffer< T > &x) |
| Divide col operation. | |
| void | min_row (const buffer< T > &x) |
| Min row operation. | |
| void | min_col (const buffer< T > &x) |
| Min col operation. | |
| void | atan_row (const buffer< T > &x) |
| Atan row operation. | |
| void | atan_col (const buffer< T > &x) |
| Atan col operation. | |
| void | pow_row (const buffer< T > &x) |
| Pow row operation. | |
| void | pow_col (const buffer< T > &x) |
| Pow col operation. | |
| void | hypot_row (const buffer< T > &x) |
| Hypot row operation. | |
| void | hypot_col (const buffer< T > &x) |
| Hypot col operation. | |
| void | copysign_row (const buffer< T > &x) |
| copysign row operation. | |
| void | copysign_col (const buffer< T > &x) |
| copysign col operation. | |
| buffer< T > | operator! () |
| Not operation. | |
| buffer< T > | if_ (const buffer< T > &t, const buffer< T > &f) |
| Apply condition. | |
| void | isinf () |
| isinf query. | |
| void | isnan () |
| isnan query. | |
Class representing a generic buffer.
| T | Base type of the calculation. |
|
inline |
Construct a buffer backend with a size.
| [in] | s | Size of he data buffer. |
|
inline |
Construct a buffer backend with a size.
| [in] | s | Size of he data buffer. |
| [in] | d | Scalar data to initialize. |
|
inline |
Construct a buffer backend from a vector.
| [in] | d | Array buffer. |
|
inline |
Construct a buffer backend from a buffer backend.
| [in] | d | Backend buffer. |
|
inline |
Construct a buffer backend linearly.
| [in] | min | Minimum value.. |
| [in] | dx | Step size. |
| [in] | num | Number of mesh points. |
|
inline |
Add col operation.
Adds m_ij + v_j or v_j + m_ij. This will resize the buffer if it needs to be.
| [in] | x | The other operand. |
|
inline |
Add row operation.
Adds m_ij + v_i or v_i + m_ij. This will resize the buffer if it needs to be.
| [in] | x | The right operand. |
|
inline |
Atan col operation.
Computes atan(m_ij, v_j) or atan(v_j, m_ij). This will resize the buffer if it needs to be.
| [in] | x | The other operand. |
|
inline |
Atan row operation.
Computes atan(m_ij, v_i) or atan(v_i, m_ij). This will resize the buffer if it needs to be.
| [in] | x | The right operand. |
|
inline |
copysign col operation.
Computes atan(m_ij, v_j) or atan(v_j, m_ij). This will resize the buffer if it needs to be.
| [in] | x | The other operand. |
|
inline |
copysign row operation.
Computes copysign(m_ij, v_i) or copysign(v_i, m_ij). This will resize the buffer if it needs to be.
| [in] | x | The right operand. |
|
inline |
Divide col operation.
Divides m_ij / v_j or v_j / m_ij. This will resize the buffer if it needs to be.
| [in] | x | The other operand. |
|
inline |
Divide row operation.
Divides m_ij / v_i or v_i / m_ij. This will resize the buffer if it needs to be.
| [in] | x | The right operand. |
|
inline |
Is any element zero.
|
inline |
Hypot col operation.
Computes Hypot(m_ij, v_j) or Hypot(v_j, m_ij). This will resize the buffer if it needs to be.
| [in] | x | The other operand. |
|
inline |
Hypot row operation.
Computes Hypot(m_ij, v_i) or Hypot(v_i, m_ij). This will resize the buffer if it needs to be.
| [in] | x | The right operand. |
|
inline |
Apply condition.
@params[in] t True condition. @params[in] f False condition.
|
inline |
Index column.
| [in] | index | The row index. |
| [in] | num_columns | The number of coils. |
|
inline |
Index row.
| [in] | index | The row index. |
| [in] | num_columns | The number of coils. |
|
inline |
Is every element even.
|
inline |
Is every element negative.
|
inline |
Is every element negative one.
|
inline |
Check for normal values.
|
inline |
Is every element the same.
|
inline |
Is every element zero.
|
inline |
Min col operation.
Takes Min(m_ij, v_j) or Min(v_j, m_ij). This will resize the buffer if it needs to be.
| [in] | x | The other operand. |
|
inline |
Min row operation.
Takes Min(m_ij, v_i) or Min(v_i, m_ij). This will resize the buffer if it needs to be.
| [in] | x | The other operand. |
|
inline |
Multiply col operation.
Multiplies m_ij * v_j or v_j * m_ij. This will resize the buffer if it needs to be.
| [in] | x | The other operand. |
|
inline |
Multiply row operation.
Multiplies m_ij * v_i or v_i * m_ij. This will resize the buffer if it needs to be.
| [in] | x | The right operand. |
|
inline |
Not operation.
|
inline |
Pow col operation.
Computes pow(m_ij, v_j) or pow(v_j, m_ij). This will resize the buffer if it needs to be.
| [in] | x | The other operand. |
|
inline |
Pow row operation.
Computes pow(m_ij, v_i) or pow(v_i, m_ij). This will resize the buffer if it needs to be.
| [in] | x | The right operand. |
|
inline |
Assign a vector value.
| [in] | d | Vector data to set. |
|
inline |
Assign a constant value.
| [in] | d | Scalar data to set. |
|
inline |
Subtract col operation.
Subtracts m_ij - v_j or v_j - m_ij. This will resize the buffer if it needs to be.
| [in] | x | The other operand. |
|
inline |
Subtract row operation.
Subtracts m_ij - v_i or v_i - m_ij. This will resize the buffer if it needs to be.
| [in] | x | The right operand. |