#include <ATan.hpp>
Public Types | |
typedef REAL_T | BASE_TYPE |
typedef REAL_T | BASE_TYPE |
Public Member Functions | |
ATan (const ExpressionBase< REAL_T, EXPR > &a) | |
const REAL_T | GetValue () const |
const REAL_T | GetValue (size_t i, size_t j=0) const |
bool | IsNonlinear () const |
void | PushIds (typename atl::StackEntry< REAL_T >::vi_storage &ids) const |
void | PushIds (typename atl::StackEntry< REAL_T >::vi_storage &ids, size_t i, size_t j=0) const |
const REAL_T | EvaluateDerivative (uint32_t x) const |
REAL_T | EvaluateDerivative (uint32_t x, uint32_t y) const |
REAL_T | EvaluateDerivative (uint32_t x, uint32_t y, uint32_t z) const |
const REAL_T | EvaluateDerivative (uint32_t x, size_t i, size_t j=0) const |
REAL_T | EvaluateDerivative (uint32_t x, uint32_t y, size_t i, size_t j=0) const |
REAL_T | 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 |
const std::string | ToExpressionTemplateString () const |
ATan (const ExpressionBase< REAL_T, EXPR > &a) | |
const REAL_T | GetValue () const |
const REAL_T | GetValue (size_t i, size_t j=0) const |
void | PushIds (typename atl::StackEntry< REAL_T >::vi_storage &ids) const |
void | PushIds (typename atl::StackEntry< REAL_T >::vi_storage &ids, size_t i, size_t j=0) const |
const REAL_T | EvaluateDerivative (uint32_t id) const |
REAL_T | EvaluateDerivative (uint32_t a, uint32_t b) const |
REAL_T | EvaluateDerivative (uint32_t x, uint32_t y, uint32_t z) const |
const REAL_T | EvaluateDerivative (uint32_t id, size_t i, size_t j=0) const |
REAL_T | EvaluateDerivative (uint32_t a, uint32_t b, size_t i, size_t j=0) const |
REAL_T | 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< REAL_T, ATan< REAL_T, EXPR > > | |
const ATan< REAL_T, EXPR > & | Cast () const |
const ATan< REAL_T, EXPR > & | Cast () const |
const REAL_T | GetValue () const |
const REAL_T | GetValue (size_t i, size_t j=0) const |
const REAL_T | GetValue () const |
const REAL_T | GetValue (size_t i, size_t j=0) const |
bool | IsNonlinear () const |
bool | IsNonlinear () const |
void | PushIds (typename atl::StackEntry< REAL_T >::vi_storage &ids) const |
void | PushIds (typename atl::StackEntry< REAL_T >::vi_storage &ids, size_t i, size_t j=0) const |
void | PushIds (typename atl::StackEntry< REAL_T >::vi_storage &ids) const |
void | PushIds (typename atl::StackEntry< REAL_T >::vi_storage &ids, size_t i, size_t j=0) const |
REAL_T | EvaluateDerivative (uint32_t a) const |
REAL_T | EvaluateDerivative (uint32_t a, uint32_t b) const |
REAL_T | EvaluateDerivative (uint32_t x, uint32_t y, uint32_t z) const |
REAL_T | EvaluateDerivative (uint32_t a, size_t i, size_t j=0) const |
REAL_T | EvaluateDerivative (uint32_t a, uint32_t b, size_t i, size_t j=0) const |
REAL_T | EvaluateDerivative (uint32_t x, uint32_t y, uint32_t z, size_t i, size_t j=0) const |
REAL_T | EvaluateDerivative (uint32_t x) const |
REAL_T | EvaluateDerivative (uint32_t x, uint32_t y) const |
REAL_T | EvaluateDerivative (uint32_t x, uint32_t y, uint32_t z) const |
REAL_T | EvaluateDerivative (uint32_t x, size_t i, size_t j=0) const |
REAL_T | EvaluateDerivative (uint32_t x, uint32_t y, size_t i, size_t j=0) const |
REAL_T | EvaluateDerivative (uint32_t x, uint32_t y, uint32_t z, size_t i, size_t j=0) const |
const ExpressionBase & | operator= (const ExpressionBase &exp) const |
const ExpressionBase & | operator= (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 | |
const EXPR & | expr_m |
Expression template to handle arctangent for variable or container expressions.
\( \arctan f(x,y) \)
or
\( \arctan f_{i,j}(x,y) \)
|
inline |
Constructor
a |
|
inline |
Evaluates the first-order derivative of this expression with respect to x.
\( {{{{d}\over{d\,x}}\,f(x)}\over{f(x)^2+1}} \)
x |
|
inline |
Evaluates the second-order mixed partial with respect to x and y.
\( {{{{d^2}\over{d\,x\,d\,y}}\,f(x,y)}\over{f(x,y)^2+1}}- {{2\,f(x,y)\,\left({{d}\over{d\,x}}\,f(x,y)\right)\, \left({{d}\over{d\,y}}\,f(x,y)\right)}\over{\left(f(x,y) ^2+1\right)^2}} \)
x | |
y | |
i | |
j |
|
inline |
Evaluates the third-order mixed partial with respect to x,y, and z.
\( -{{2\,\left({{d}\over{d\,x}}\,f\left(x , y , z\right)\right)\, \left({{d}\over{d\,y}}\,f\left(x , y , z\right)\right)\,\left({{d }\over{d\,z}}\,f\left(x , y , z\right)\right)}\over{\left(f^2\left(x , y , z\right)+1\right)^2}}+{{8\,f^2\left(x , y , z\right)\,\left( {{d}\over{d\,x}}\,f\left(x , y , z\right)\right)\,\left({{d}\over{d \,y}}\,f\left(x , y , z\right)\right)\,\left({{d}\over{d\,z}}\,f \left(x , y , z\right)\right)}\over{\left(f^2\left(x , y , z\right)+ 1\right)^3}}-{{2\,f\left(x , y , z\right)\,\left({{d^2}\over{d\,x\,d \,y}}\,f\left(x , y , z\right)\right)\,\left({{d}\over{d\,z}}\,f \left(x , y , z\right)\right)}\over{\left(f^2\left(x , y , z\right)+ 1\right)^2}}- \\ {{2\,f\left(x , y , z\right)\,\left({{d}\over{d\,x}}\,f \left(x , y , z\right)\right)\,\left({{d^2}\over{d\,y\,d\,z}}\,f \left(x , y , z\right)\right)}\over{\left(f^2\left(x , y , z\right)+ 1\right)^2}}-{{2\,f\left(x , y , z\right)\,\left({{d^2}\over{d\,x\,d \,z}}\,f\left(x , y , z\right)\right)\,\left({{d}\over{d\,y}}\,f \left(x , y , z\right)\right)}\over{\left(f^2\left(x , y , z\right)+ 1\right)^2}}+{{{{d^3}\over{d\,x\,d\,y\,d\,z}}\,f\left(x , y , z \right)}\over{f^2\left(x , y , z\right)+1}} \)
x | |
y | |
z |
|
inline |
Evaluates the first-order derivative of this expression with respect to x at index {i,j}.
\( {{{{d}\over{d\,x}}\,f_{i,j}(x)}\over{f_{i,j}(x)^2+1}} \)
x | |
i | |
j |
|
inline |
Evaluates the second-order mixed partial with respect to x and y at index {i,j}.
\( {{{{d^2}\over{d\,x\,d\,y}}\,f_{i,j}(x,y)}\over{f_{i,j}(x,y)^2+1}}- {{2\,f_{i,j}(x,y)\,\left({{d}\over{d\,x}}\,f_{i,j}(x,y)\right)\, \left({{d}\over{d\,y}}\,f_{i,j}(x,y)\right)}\over{\left(f_{i,j}(x,y) ^2+1\right)^2}} \)
x | |
y | |
i | |
j |
|
inline |
Evaluates the third-order mixed partial with respect to x,y, and z at index {i,j}.
\( -{{2\,\left({{d}\over{d\,x}}\,f_{i,j}(x,y,z)\right)\,\left({{d }\over{d\,y}}\,f_{i,j}(x,y,z)\right)\,\left({{d}\over{d\,z}}\,f_{i,j }(x,y,z)\right)}\over{\left(f_{i,j}(x,y,z)^2+1\right)^2}}+{{8\,f_{i, j}(x,y,z)^2\,\left({{d}\over{d\,x}}\,f_{i,j}(x,y,z)\right)\,\left({{ d}\over{d\,y}}\,f_{i,j}(x,y,z)\right)\,\left({{d}\over{d\,z}}\,f_{i, j}(x,y,z)\right)}\over{\left(f_{i,j}(x,y,z)^2+1\right)^3}}-{{2\,f_{i ,j}(x,y,z)\,\left({{d^2}\over{d\,x\,d\,y}}\,f_{i,j}(x,y,z)\right)\, \left({{d}\over{d\,z}}\,f_{i,j}(x,y,z)\right)}\over{\left(f_{i,j}(x, y,z)^2+1\right)^2}}- \\ {{2\,f_{i,j}(x,y,z)\,\left({{d}\over{d\,x}}\,f_{ i,j}(x,y,z)\right)\,\left({{d^2}\over{d\,y\,d\,z}}\,f_{i,j}(x,y,z) \right)}\over{\left(f_{i,j}(x,y,z)^2+1\right)^2}}-{{2\,f_{i,j}(x,y,z )\,\left({{d^2}\over{d\,x\,d\,z}}\,f_{i,j}(x,y,z)\right)\,\left({{d }\over{d\,y}}\,f_{i,j}(x,y,z)\right)}\over{\left(f_{i,j}(x,y,z)^2+1 \right)^2}}+{{{{d^3}\over{d\,x\,d\,y\,d\,z}}\,f_{i,j}(x,y,z)}\over{f _{i,j}(x,y,z)^2+1}} \)
x | |
y | |
z | |
i | |
j |
|
inline |
Return the number of columns.
|
inline |
Return the number of rows.
|
inline |
Compute the arctangent of the evaluated expression.
|
inline |
Compute the arctangent of the evaluated expression at index {i,j}.
|
inline |
Returns true.
|
inline |
True if this expression is a scalar.
|
inline |
Push variable info into a set.
ids | |
i | |
j |
|
inline |
Push variable info into a set at index {i,j}.
ids | |
i | |
j |
|
inline |
Create a string representation of this expression template.