Analytics Template Library
 All Classes Namespaces Functions Variables Pages
Public Types | Public Member Functions | Public Attributes | List of all members
atl::ASin< REAL_T, EXPR > Struct Template Reference

#include <ASin.hpp>

Inheritance diagram for atl::ASin< REAL_T, EXPR >:
atl::ExpressionBase< REAL_T, ASin< REAL_T, EXPR > > atl::ExpressionBase< REAL_T, ASin< REAL_T, EXPR > >

Public Types

typedef REAL_T BASE_TYPE
 
typedef REAL_T BASE_TYPE
 

Public Member Functions

 ASin (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
 
 ASin (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, ASin< REAL_T, EXPR > >
const ASin< REAL_T, EXPR > & Cast () const
 
const ASin< 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 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

const EXPR & expr_m
 

Detailed Description

template<class REAL_T, class EXPR>
struct atl::ASin< REAL_T, EXPR >

Expression template to handle arcsine for variable or container expressions.

\( \arcsin f(x,y) \)

or

\( \arcsin f_{i,j}(x,y) \)

Constructor & Destructor Documentation

template<class REAL_T , class EXPR >
atl::ASin< REAL_T, EXPR >::ASin ( const ExpressionBase< REAL_T, EXPR > &  a)
inline

Constructor

Parameters
a

Member Function Documentation

template<class REAL_T , class EXPR >
const REAL_T atl::ASin< REAL_T, EXPR >::EvaluateDerivative ( uint32_t  x) const
inline

Evaluates the first-order derivative of this expression with respect to x.

\( {{{{d}\over{d\,x}}\,f\left(x\right)}\over{\sqrt{1-f^2\left(x\right)}}} \)

Parameters
x
Returns
template<class REAL_T , class EXPR >
REAL_T atl::ASin< REAL_T, EXPR >::EvaluateDerivative ( uint32_t  x,
uint32_t  y 
) const
inline

Evaluates the second-order mixed partial with respect to x and y.

\( {{f(x,y)\,\left({{d}\over{d\,x}}\,f(x,y)\right)\,\left( {{d}\over{d\,y}}\,f(x,y)\right)}\over{\left(1-f(x,y)^2 \right)^{{{3}\over{2}}}}}+{{{{d^2}\over{d\,x\,d\,y}}\,f(x,y) }\over{\sqrt{1-f(x,y)^2}}} \)

Parameters
x
y
i
j
Returns
template<class REAL_T , class EXPR >
REAL_T atl::ASin< REAL_T, EXPR >::EvaluateDerivative ( uint32_t  x,
uint32_t  y,
uint32_t  z 
) const
inline

Evaluates the third-order mixed partial with respect to x,y, and z.

\( {{{{d}\over{d\,x}}\,f\left(x , y , z\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(1-f^2\left(x , y , z\right) \right)^{{{3}\over{2}}}}}+{{3\,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(1-f^2\left(x , y , z\right) \right)^{{{5}\over{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(1-f^2 \left(x , y , z\right)\right)^{{{3}\over{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(1-f^2\left(x , y , z\right)\right)^{{{3}\over{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(1-f^2\left(x , y , z\right)\right)^{{{3}\over{2 }}}}}+{{{{d^3}\over{d\,x\,d\,y\,d\,z}}\,f\left(x , y , z\right) }\over{\sqrt{1-f^2\left(x , y , z\right)}}} \)

Parameters
x
y
z
Returns
template<class REAL_T , class EXPR >
const REAL_T atl::ASin< REAL_T, EXPR >::EvaluateDerivative ( uint32_t  x,
size_t  i,
size_t  j = 0 
) const
inline

Evaluates the first-order derivative of this expression with respect to x.

\( {{{{d}\over{d\,x}}\,f_{i,j}(x)}\over{\sqrt{1-f_{i,j}(x)^2}}} \)

Parameters
x
i
j
Returns
template<class REAL_T , class EXPR >
REAL_T atl::ASin< REAL_T, EXPR >::EvaluateDerivative ( uint32_t  x,
uint32_t  y,
size_t  i,
size_t  j = 0 
) const
inline

Evaluates the second-order mixed partial with respect to x and y at index {i,j}.

\( {{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(1-f_{i,j}(x,y)^2 \right)^{{{3}\over{2}}}}}+{{{{d^2}\over{d\,x\,d\,y}}\,f_{i,j}(x,y) }\over{\sqrt{1-f_{i,j}(x,y)^2}}} \)

Parameters
x
y
i
j
Returns
template<class REAL_T , class EXPR >
REAL_T atl::ASin< REAL_T, EXPR >::EvaluateDerivative ( uint32_t  x,
uint32_t  y,
uint32_t  z,
size_t  i,
size_t  j = 0 
) const
inline

Evaluates the third-order mixed partial with respect to x,y, and z at index {i,j}.

\( {{{{d}\over{d\,x}}\,f_{i,j}(x,y,z)\,\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(1-f_{i,j}(x,y,z)^2\right)^{{{3}\over{2}}}}}+{{3\,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(1-f_{i,j}(x,y,z)^2\right)^{{{5}\over{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(1-f_{i,j }(x,y,z)^2\right)^{{{3}\over{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(1-f_{i,j}(x,y,z)^2\right)^{{{3 }\over{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(1-f_{i,j}(x,y,z)^2\right)^{{{3}\over{2}}}}}+{{{{d^3 }\over{d\,x\,d\,y\,d\,z}}\,f_{i,j}(x,y,z)}\over{\sqrt{1-f_{i,j}(x,y, z)^2}}} \)

Parameters
x
y
z
i
j
Returns
template<class REAL_T , class EXPR >
size_t atl::ASin< REAL_T, EXPR >::GetColumns ( ) const
inline

Return the number of columns.

Returns
template<class REAL_T , class EXPR >
size_t atl::ASin< REAL_T, EXPR >::GetRows ( ) const
inline

Return the number of rows.

Returns
template<class REAL_T , class EXPR >
const REAL_T atl::ASin< REAL_T, EXPR >::GetValue ( ) const
inline

Compute the arcsine of the expression evaluated.

Returns
template<class REAL_T , class EXPR >
const REAL_T atl::ASin< REAL_T, EXPR >::GetValue ( size_t  i,
size_t  j = 0 
) const
inline

Compute the arcsine of the expression evaluated at index {i,j}.

Returns
template<class REAL_T , class EXPR >
bool atl::ASin< REAL_T, EXPR >::IsNonlinear ( ) const
inline

Returns true.

Returns
template<class REAL_T , class EXPR >
bool atl::ASin< REAL_T, EXPR >::IsScalar ( ) const
inline

True if this expression is a scalar.

Returns
template<class REAL_T , class EXPR >
void atl::ASin< REAL_T, EXPR >::PushIds ( typename atl::StackEntry< REAL_T >::vi_storage &  ids) const
inline

Push variable info into a set.

Parameters
ids
i
j
template<class REAL_T , class EXPR >
void atl::ASin< REAL_T, EXPR >::PushIds ( typename atl::StackEntry< REAL_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
i
j
template<class REAL_T , class EXPR >
const std::string atl::ASin< REAL_T, EXPR >::ToExpressionTemplateString ( ) const
inline

Create a string representation of this expression template.

Returns

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