#include <Tan.hpp>
Public Types | |
typedef REAL_T | BASE_TYPE |
typedef REAL_T | BASE_TYPE |
Public Member Functions | |
Tan (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 |
Tan (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 | GetRows () const |
bool | IsScalar () const |
const std::string | ToExpressionTemplateString () const |
Public Member Functions inherited from atl::ExpressionBase< REAL_T, Tan< REAL_T, EXPR > > | |
const Tan< REAL_T, EXPR > & | Cast () const |
const Tan< 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 tangent for variable or container expressions.
\( \tan f(x) \)
or
\( \tan f_{i,j}(x) \)
|
inline |
Constructor
a |
|
inline |
Evaluates the first-order derivative with respect to x.
\( \sec ^2f(x)\,\left({{d}\over{d\,x}}\,f(x)\right) \)
x |
|
inline |
Evaluates the second-order derivative with respect to x and y.
\( 2\,\sec ^2f(x,y)\,\tan f(x,y)\,\left({{d}\over{d\,x}}\, f(x,y)\right)\,\left({{d}\over{d\,y}}\,f(x,y)\right)+ \sec ^2f(x,y)\,\left({{d^2}\over{d\,x\,d\,y}}\,f(x,y) \right) \)
x | |
y |
|
inline |
Evaluates the third-order derivative with respect to x, y, and z.
\( 4\,\sec ^2f(x,y,z)\,\tan ^2f(x,y,z)\,\left({{d}\over{d \,x}}\,f(x,y,z)\right)\,\left({{d}\over{d\,y}}\,f(x,y,z) \right)\,\left({{d}\over{d\,z}}\,f(x,y,z)\right)+ \\ 2\,\sec ^4f (x,y,z)\,\left({{d}\over{d\,x}}\,f(x,y,z)\right)\,\left({{ d}\over{d\,y}}\,f(x,y,z)\right)\,\left({{d}\over{d\,z}}\,f (x,y,z)\right)+ \\ 2\,\sec ^2f(x,y,z)\,\tan f(x,y,z)\, \left({{d^2}\over{d\,x\,d\,y}}\,f(x,y,z)\right)\,\left({{d }\over{d\,z}}\,f(x,y,z)\right)+ \\ 2\,\sec ^2f(x,y,z)\,\tan f(x,y,z)\,\left({{d}\over{d\,x}}\,f(x,y,z)\right)\, \left({{d^2}\over{d\,y\,d\,z}}\,f(x,y,z)\right)+ \\ 2\,\sec ^2f (x,y,z)\,\tan f(x,y,z)\,\left({{d^2}\over{d\,x\,d\,z}}\,f (x,y,z)\right)\,\left({{d}\over{d\,y}}\,f(x,y,z)\right)+ \\ \sec ^2f(x,y,z)\,\left({{d^3}\over{d\,x\,d\,y\,d\,z}}\,f (x,y,z)\right) \)
x | |
y | |
z |
|
inline |
Evaluates the first-order derivative with respect to x at index{i,j}.
\( \sec ^2f_{i,j}(x)\,\left({{d}\over{d\,x}}\,f_{i,j}(x)\right) \)
x | |
i | |
j |
|
inline |
Evaluates the second-order derivative with respect to x and y at index {i,j}.
\( 2\,\sec ^2f_{i,j}(x,y)\,\tan 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)+ \sec ^2f_{i,j}(x,y)\,\left({{d^2}\over{d\,x\,d\,y}}\,f_{i,j}(x,y) \right) \)
x | |
y | |
i | |
j |
|
inline |
Evaluates the third-order derivative with respect to x, y, and z at index {i,j}.
\( 4\,\sec ^2f_{i,j}(x,y,z)\,\tan ^2f_{i,j}(x,y,z)\,\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)+ \\ 2\,\sec ^4f_{ i,j}(x,y,z)\,\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)+ \\ 2\,\sec ^2f_{i,j}(x,y,z)\,\tan 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)+ \\ 2\,\sec ^2f_{i,j}(x,y,z)\,\tan 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)+ \\ 2\,\sec ^2f_{i ,j}(x,y,z)\,\tan 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)+ \\ \sec ^2f_{i,j}(x,y,z)\,\left({{d^3}\over{d\,x\,d\,y\,d\,z}}\,f_{i,j} (x,y,z)\right) \)
x | |
y | |
z | |
i | |
j |
|
inline |
Return the number of rows.
|
inline |
Computes the tangent of the evaluated expression.
|
inline |
Computes the tangent 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 |
|
inline |
Push variable info into a set at index {i,j}.
ids | |
i | |
j |
|
inline |
Create a string representation of this expression template.