MyraMath
Classes
arithmetic.h File Reference

Arithmetic operators (+,-,*,/) for Expression's. More...

#include <myramath/MYRAMATH_EXPORT.h>
#include <myramath/utility/Number.h>
Include dependency graph for arithmetic.h:

Go to the source code of this file.

Classes

class  myra::Expression< Arity, Number >
 Given an index (i,j,etc), returns a value. More...
 

Functions

Expression< 1, NumberS > myra::operator+ (const Expression< 1, NumberS > &A, const Expression< 1, NumberS > &B)
 Returns the sum of two Expression's, A+B.
 
Expression< 1, NumberD > myra::operator+ (const Expression< 1, NumberD > &A, const Expression< 1, NumberD > &B)
 Returns the sum of two Expression's, A+B.
 
Expression< 1, NumberC > myra::operator+ (const Expression< 1, NumberC > &A, const Expression< 1, NumberC > &B)
 Returns the sum of two Expression's, A+B.
 
Expression< 1, NumberZ > myra::operator+ (const Expression< 1, NumberZ > &A, const Expression< 1, NumberZ > &B)
 Returns the sum of two Expression's, A+B.
 
Expression< 2, NumberS > myra::operator+ (const Expression< 2, NumberS > &A, const Expression< 2, NumberS > &B)
 Returns the sum of two Expression's, A+B.
 
Expression< 2, NumberD > myra::operator+ (const Expression< 2, NumberD > &A, const Expression< 2, NumberD > &B)
 Returns the sum of two Expression's, A+B.
 
Expression< 2, NumberC > myra::operator+ (const Expression< 2, NumberC > &A, const Expression< 2, NumberC > &B)
 Returns the sum of two Expression's, A+B.
 
Expression< 2, NumberZ > myra::operator+ (const Expression< 2, NumberZ > &A, const Expression< 2, NumberZ > &B)
 Returns the sum of two Expression's, A+B.
 
Expression< 1, NumberS > myra::operator+ (const Expression< 1, NumberS > &A, NumberS b)
 Returns the sum of an Expression and a constant, A+b.
 
Expression< 1, NumberD > myra::operator+ (const Expression< 1, NumberD > &A, NumberD b)
 Returns the sum of an Expression and a constant, A+b.
 
Expression< 1, NumberC > myra::operator+ (const Expression< 1, NumberC > &A, NumberC b)
 Returns the sum of an Expression and a constant, A+b.
 
Expression< 1, NumberZ > myra::operator+ (const Expression< 1, NumberZ > &A, NumberZ b)
 Returns the sum of an Expression and a constant, A+b.
 
Expression< 2, NumberS > myra::operator+ (const Expression< 2, NumberS > &A, NumberS b)
 Returns the sum of an Expression and a constant, A+b.
 
Expression< 2, NumberD > myra::operator+ (const Expression< 2, NumberD > &A, NumberD b)
 Returns the sum of an Expression and a constant, A+b.
 
Expression< 2, NumberC > myra::operator+ (const Expression< 2, NumberC > &A, NumberC b)
 Returns the sum of an Expression and a constant, A+b.
 
Expression< 2, NumberZ > myra::operator+ (const Expression< 2, NumberZ > &A, NumberZ b)
 Returns the sum of an Expression and a constant, A+b.
 
Expression< 1, NumberS > myra::operator+ (NumberS a, const Expression< 1, NumberS > &B)
 Returns the sum of a constant and an Expression, a+B.
 
Expression< 1, NumberD > myra::operator+ (NumberD a, const Expression< 1, NumberD > &B)
 Returns the sum of a constant and an Expression, a+B.
 
Expression< 1, NumberC > myra::operator+ (NumberC a, const Expression< 1, NumberC > &B)
 Returns the sum of a constant and an Expression, a+B.
 
Expression< 1, NumberZ > myra::operator+ (NumberZ a, const Expression< 1, NumberZ > &B)
 Returns the sum of a constant and an Expression, a+B.
 
Expression< 2, NumberS > myra::operator+ (NumberS a, const Expression< 2, NumberS > &B)
 Returns the sum of a constant and an Expression, a+B.
 
Expression< 2, NumberD > myra::operator+ (NumberD a, const Expression< 2, NumberD > &B)
 Returns the sum of a constant and an Expression, a+B.
 
Expression< 2, NumberC > myra::operator+ (NumberC a, const Expression< 2, NumberC > &B)
 Returns the sum of a constant and an Expression, a+B.
 
Expression< 2, NumberZ > myra::operator+ (NumberZ a, const Expression< 2, NumberZ > &B)
 Returns the sum of a constant and an Expression, a+B.
 
Expression< 1, NumberS > myra::operator- (const Expression< 1, NumberS > &A, const Expression< 1, NumberS > &B)
 Returns the difference of two Expression's, A-B.
 
Expression< 1, NumberD > myra::operator- (const Expression< 1, NumberD > &A, const Expression< 1, NumberD > &B)
 Returns the difference of two Expression's, A-B.
 
Expression< 1, NumberC > myra::operator- (const Expression< 1, NumberC > &A, const Expression< 1, NumberC > &B)
 Returns the difference of two Expression's, A-B.
 
Expression< 1, NumberZ > myra::operator- (const Expression< 1, NumberZ > &A, const Expression< 1, NumberZ > &B)
 Returns the difference of two Expression's, A-B.
 
Expression< 2, NumberS > myra::operator- (const Expression< 2, NumberS > &A, const Expression< 2, NumberS > &B)
 Returns the difference of two Expression's, A-B.
 
Expression< 2, NumberD > myra::operator- (const Expression< 2, NumberD > &A, const Expression< 2, NumberD > &B)
 Returns the difference of two Expression's, A-B.
 
Expression< 2, NumberC > myra::operator- (const Expression< 2, NumberC > &A, const Expression< 2, NumberC > &B)
 Returns the difference of two Expression's, A-B.
 
Expression< 2, NumberZ > myra::operator- (const Expression< 2, NumberZ > &A, const Expression< 2, NumberZ > &B)
 Returns the difference of two Expression's, A-B.
 
Expression< 1, NumberS > myra::operator- (const Expression< 1, NumberS > &A, NumberS b)
 Returns the difference of an Expression and a constant, A-b.
 
Expression< 1, NumberD > myra::operator- (const Expression< 1, NumberD > &A, NumberD b)
 Returns the difference of an Expression and a constant, A-b.
 
Expression< 1, NumberC > myra::operator- (const Expression< 1, NumberC > &A, NumberC b)
 Returns the difference of an Expression and a constant, A-b.
 
Expression< 1, NumberZ > myra::operator- (const Expression< 1, NumberZ > &A, NumberZ b)
 Returns the difference of an Expression and a constant, A-b.
 
Expression< 2, NumberS > myra::operator- (const Expression< 2, NumberS > &A, NumberS b)
 Returns the difference of an Expression and a constant, A-b.
 
Expression< 2, NumberD > myra::operator- (const Expression< 2, NumberD > &A, NumberD b)
 Returns the difference of an Expression and a constant, A-b.
 
Expression< 2, NumberC > myra::operator- (const Expression< 2, NumberC > &A, NumberC b)
 Returns the difference of an Expression and a constant, A-b.
 
Expression< 2, NumberZ > myra::operator- (const Expression< 2, NumberZ > &A, NumberZ b)
 Returns the difference of an Expression and a constant, A-b.
 
Expression< 1, NumberS > myra::operator- (NumberS a, const Expression< 1, NumberS > &B)
 Returns the difference of a constant and an Expression, a-B.
 
Expression< 1, NumberD > myra::operator- (NumberD a, const Expression< 1, NumberD > &B)
 Returns the difference of a constant and an Expression, a-B.
 
Expression< 1, NumberC > myra::operator- (NumberC a, const Expression< 1, NumberC > &B)
 Returns the difference of a constant and an Expression, a-B.
 
Expression< 1, NumberZ > myra::operator- (NumberZ a, const Expression< 1, NumberZ > &B)
 Returns the difference of a constant and an Expression, a-B.
 
Expression< 2, NumberS > myra::operator- (NumberS a, const Expression< 2, NumberS > &B)
 Returns the difference of a constant and an Expression, a-B.
 
Expression< 2, NumberD > myra::operator- (NumberD a, const Expression< 2, NumberD > &B)
 Returns the difference of a constant and an Expression, a-B.
 
Expression< 2, NumberC > myra::operator- (NumberC a, const Expression< 2, NumberC > &B)
 Returns the difference of a constant and an Expression, a-B.
 
Expression< 2, NumberZ > myra::operator- (NumberZ a, const Expression< 2, NumberZ > &B)
 Returns the difference of a constant and an Expression, a-B.
 
Expression< 1, NumberS > myra::operator* (const Expression< 1, NumberS > &A, const Expression< 1, NumberS > &B)
 Returns the product of two Expression's, A*B.
 
Expression< 1, NumberD > myra::operator* (const Expression< 1, NumberD > &A, const Expression< 1, NumberD > &B)
 Returns the product of two Expression's, A*B.
 
Expression< 1, NumberC > myra::operator* (const Expression< 1, NumberC > &A, const Expression< 1, NumberC > &B)
 Returns the product of two Expression's, A*B.
 
Expression< 1, NumberZ > myra::operator* (const Expression< 1, NumberZ > &A, const Expression< 1, NumberZ > &B)
 Returns the product of two Expression's, A*B.
 
Expression< 2, NumberS > myra::operator* (const Expression< 2, NumberS > &A, const Expression< 2, NumberS > &B)
 Returns the product of two Expression's, A*B.
 
Expression< 2, NumberD > myra::operator* (const Expression< 2, NumberD > &A, const Expression< 2, NumberD > &B)
 Returns the product of two Expression's, A*B.
 
Expression< 2, NumberC > myra::operator* (const Expression< 2, NumberC > &A, const Expression< 2, NumberC > &B)
 Returns the product of two Expression's, A*B.
 
Expression< 2, NumberZ > myra::operator* (const Expression< 2, NumberZ > &A, const Expression< 2, NumberZ > &B)
 Returns the product of two Expression's, A*B.
 
Expression< 1, NumberS > myra::operator* (const Expression< 1, NumberS > &A, NumberS b)
 Returns the product of an Expression and a constant, A*b.
 
Expression< 1, NumberD > myra::operator* (const Expression< 1, NumberD > &A, NumberD b)
 Returns the product of an Expression and a constant, A*b.
 
Expression< 1, NumberC > myra::operator* (const Expression< 1, NumberC > &A, NumberC b)
 Returns the product of an Expression and a constant, A*b.
 
Expression< 1, NumberZ > myra::operator* (const Expression< 1, NumberZ > &A, NumberZ b)
 Returns the product of an Expression and a constant, A*b.
 
Expression< 2, NumberS > myra::operator* (const Expression< 2, NumberS > &A, NumberS b)
 Returns the product of an Expression and a constant, A*b.
 
Expression< 2, NumberD > myra::operator* (const Expression< 2, NumberD > &A, NumberD b)
 Returns the product of an Expression and a constant, A*b.
 
Expression< 2, NumberC > myra::operator* (const Expression< 2, NumberC > &A, NumberC b)
 Returns the product of an Expression and a constant, A*b.
 
Expression< 2, NumberZ > myra::operator* (const Expression< 2, NumberZ > &A, NumberZ b)
 Returns the product of an Expression and a constant, A*b.
 
Expression< 1, NumberS > myra::operator* (NumberS a, const Expression< 1, NumberS > &B)
 Returns the product of a constant and an Expression, a*B.
 
Expression< 1, NumberD > myra::operator* (NumberD a, const Expression< 1, NumberD > &B)
 Returns the product of a constant and an Expression, a*B.
 
Expression< 1, NumberC > myra::operator* (NumberC a, const Expression< 1, NumberC > &B)
 Returns the product of a constant and an Expression, a*B.
 
Expression< 1, NumberZ > myra::operator* (NumberZ a, const Expression< 1, NumberZ > &B)
 Returns the product of a constant and an Expression, a*B.
 
Expression< 2, NumberS > myra::operator* (NumberS a, const Expression< 2, NumberS > &B)
 Returns the product of a constant and an Expression, a*B.
 
Expression< 2, NumberD > myra::operator* (NumberD a, const Expression< 2, NumberD > &B)
 Returns the product of a constant and an Expression, a*B.
 
Expression< 2, NumberC > myra::operator* (NumberC a, const Expression< 2, NumberC > &B)
 Returns the product of a constant and an Expression, a*B.
 
Expression< 2, NumberZ > myra::operator* (NumberZ a, const Expression< 2, NumberZ > &B)
 Returns the product of a constant and an Expression, a*B.
 
Expression< 1, NumberS > myra::operator/ (const Expression< 1, NumberS > &A, const Expression< 1, NumberS > &B)
 Returns the quotient of two Expression's, A/B.
 
Expression< 1, NumberD > myra::operator/ (const Expression< 1, NumberD > &A, const Expression< 1, NumberD > &B)
 Returns the quotient of two Expression's, A/B.
 
Expression< 1, NumberC > myra::operator/ (const Expression< 1, NumberC > &A, const Expression< 1, NumberC > &B)
 Returns the quotient of two Expression's, A/B.
 
Expression< 1, NumberZ > myra::operator/ (const Expression< 1, NumberZ > &A, const Expression< 1, NumberZ > &B)
 Returns the quotient of two Expression's, A/B.
 
Expression< 2, NumberS > myra::operator/ (const Expression< 2, NumberS > &A, const Expression< 2, NumberS > &B)
 Returns the quotient of two Expression's, A/B.
 
Expression< 2, NumberD > myra::operator/ (const Expression< 2, NumberD > &A, const Expression< 2, NumberD > &B)
 Returns the quotient of two Expression's, A/B.
 
Expression< 2, NumberC > myra::operator/ (const Expression< 2, NumberC > &A, const Expression< 2, NumberC > &B)
 Returns the quotient of two Expression's, A/B.
 
Expression< 2, NumberZ > myra::operator/ (const Expression< 2, NumberZ > &A, const Expression< 2, NumberZ > &B)
 Returns the quotient of two Expression's, A/B.
 
Expression< 1, NumberS > myra::operator/ (const Expression< 1, NumberS > &A, NumberS b)
 Returns the quotient of an Expression and a constant, A/b.
 
Expression< 1, NumberD > myra::operator/ (const Expression< 1, NumberD > &A, NumberD b)
 Returns the quotient of an Expression and a constant, A/b.
 
Expression< 1, NumberC > myra::operator/ (const Expression< 1, NumberC > &A, NumberC b)
 Returns the quotient of an Expression and a constant, A/b.
 
Expression< 1, NumberZ > myra::operator/ (const Expression< 1, NumberZ > &A, NumberZ b)
 Returns the quotient of an Expression and a constant, A/b.
 
Expression< 2, NumberS > myra::operator/ (const Expression< 2, NumberS > &A, NumberS b)
 Returns the quotient of an Expression and a constant, A/b.
 
Expression< 2, NumberD > myra::operator/ (const Expression< 2, NumberD > &A, NumberD b)
 Returns the quotient of an Expression and a constant, A/b.
 
Expression< 2, NumberC > myra::operator/ (const Expression< 2, NumberC > &A, NumberC b)
 Returns the quotient of an Expression and a constant, A/b.
 
Expression< 2, NumberZ > myra::operator/ (const Expression< 2, NumberZ > &A, NumberZ b)
 Returns the quotient of an Expression and a constant, A/b.
 
Expression< 1, NumberS > myra::operator/ (NumberS a, const Expression< 1, NumberS > &B)
 Returns the quotient of a constant and an Expression, a/B.
 
Expression< 1, NumberD > myra::operator/ (NumberD a, const Expression< 1, NumberD > &B)
 Returns the quotient of a constant and an Expression, a/B.
 
Expression< 1, NumberC > myra::operator/ (NumberC a, const Expression< 1, NumberC > &B)
 Returns the quotient of a constant and an Expression, a/B.
 
Expression< 1, NumberZ > myra::operator/ (NumberZ a, const Expression< 1, NumberZ > &B)
 Returns the quotient of a constant and an Expression, a/B.
 
Expression< 2, NumberS > myra::operator/ (NumberS a, const Expression< 2, NumberS > &B)
 Returns the quotient of a constant and an Expression, a/B.
 
Expression< 2, NumberD > myra::operator/ (NumberD a, const Expression< 2, NumberD > &B)
 Returns the quotient of a constant and an Expression, a/B.
 
Expression< 2, NumberC > myra::operator/ (NumberC a, const Expression< 2, NumberC > &B)
 Returns the quotient of a constant and an Expression, a/B.
 
Expression< 2, NumberZ > myra::operator/ (NumberZ a, const Expression< 2, NumberZ > &B)
 Returns the quotient of a constant and an Expression, a/B.
 
Expression< 1, NumberS > myra::operator- (const Expression< 1, NumberS > &A)
 Returns the negative of an Expression, -A.
 
Expression< 1, NumberD > myra::operator- (const Expression< 1, NumberD > &A)
 Returns the negative of an Expression, -A.
 
Expression< 1, NumberC > myra::operator- (const Expression< 1, NumberC > &A)
 Returns the negative of an Expression, -A.
 
Expression< 1, NumberZ > myra::operator- (const Expression< 1, NumberZ > &A)
 Returns the negative of an Expression, -A.
 
Expression< 2, NumberS > myra::operator- (const Expression< 2, NumberS > &A)
 Returns the negative of an Expression, -A.
 
Expression< 2, NumberD > myra::operator- (const Expression< 2, NumberD > &A)
 Returns the negative of an Expression, -A.
 
Expression< 2, NumberC > myra::operator- (const Expression< 2, NumberC > &A)
 Returns the negative of an Expression, -A.
 
Expression< 2, NumberZ > myra::operator- (const Expression< 2, NumberZ > &A)
 Returns the negative of an Expression, -A.
 
Expression< 2, NumberS > myra::operator^ (const Expression< 1, NumberS > &A, const Expression< 1, NumberS > &B)
 Returns the tensor product of two Expression's, such that E(ij) = A(i)*B(j)
 
Expression< 2, NumberD > myra::operator^ (const Expression< 1, NumberD > &A, const Expression< 1, NumberD > &B)
 Returns the tensor product of two Expression's, such that E(ij) = A(i)*B(j)
 
Expression< 2, NumberC > myra::operator^ (const Expression< 1, NumberC > &A, const Expression< 1, NumberC > &B)
 Returns the tensor product of two Expression's, such that E(ij) = A(i)*B(j)
 
Expression< 2, NumberZ > myra::operator^ (const Expression< 1, NumberZ > &A, const Expression< 1, NumberZ > &B)
 Returns the tensor product of two Expression's, such that E(ij) = A(i)*B(j)
 

Detailed Description

Arithmetic operators (+,-,*,/) for Expression's.