INMOST
Mathematical Modelling Toolkit
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Namespaces | Typedefs | Functions
inmost_variable.h File Reference
#include "inmost_common.h"
#include "inmost_expression.h"
#include "inmost_mesh.h"
#include "inmost_autodiff.h"
#include "inmost_solver.h"
#include <sstream>
#include <new>
Include dependency graph for inmost_variable.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  INMOST::enhanced_multivar_expression
 
class  INMOST::enhance< T >
 
class  INMOST::enhance< INMOST_DATA_REAL_TYPE >
 
class  INMOST::enhance< var_expression >
 
class  INMOST::enhance< multivar_expression >
 
class  INMOST::enhance< enhanced_multivar_expression >
 
class  INMOST::unary_pool< Op, A >
 
class  INMOST::unary_const_pool< Op, A >
 
class  INMOST::binary_pool< Op, A, B >
 
class  INMOST::ternary_pool< Op, A, B, C >
 
class  INMOST::unary_pool_expression< A, ArgA >
 
class  INMOST::unary_const_pool_expression< A, ArgA >
 
class  INMOST::binary_pool_expression< A, ArgA, ArgB >
 
class  INMOST::ternary_pool_expression< A, ArgA, ArgB, ArgC >
 
class  INMOST::abstract_dynamic_variable
 
class  INMOST::get_variable< RetType >
 
class  INMOST::get_variable< multivar_expression >
 
class  INMOST::get_variable< INMOST_DATA_REAL_TYPE >
 
class  INMOST::get_variable< enhanced_multivar_expression >
 
class  INMOST::basic_dynamic_variable< VariableType >
 
class  INMOST::shell_dynamic_variable< VariableType, Derived >
 
class  INMOST::dynamic_variable
 
class  INMOST::stencil_variable< A >
 
class  INMOST::unary_custom_variable< Expr, A >
 
class  INMOST::binary_custom_variable< Expr, A, B >
 
class  INMOST::unary_const_custom_variable< Expr, A >
 
class  INMOST::ternary_custom_variable< Expr, A, B, C >
 

Namespaces

 INMOST
 

Typedefs

typedef abstract_dynamic_variable INMOST::abstract_variable
 
typedef
enhanced_multivar_expression 
INMOST::enhanced_variable
 

Functions

__INLINE bool INMOST::check_nans (enhanced_multivar_expression const &e)
 
template<class A , class B , class C >
__INLINE
INMOST::ternary_custom_variable
< INMOST::condition_expression
< typename A::Var, typename
B::Var, typename C::Var >, A,
B, C > 
condition (INMOST::shell_dynamic_variable< typename A::Var, A > const &control, INMOST::shell_dynamic_variable< typename B::Var, B > const &if_ge_zero, INMOST::shell_dynamic_variable< typename C::Var, C > const &if_lt_zero)
 
template<class A >
__INLINE
INMOST::unary_custom_variable
< INMOST::unary_minus_expression
< typename A::Var >, A > 
operator- (INMOST::shell_dynamic_variable< typename A::Var, A > const &Arg)
 
template<class A >
__INLINE
INMOST::unary_custom_variable
< INMOST::abs_expression
< typename A::Var >, A > 
fabs (INMOST::shell_dynamic_variable< typename A::Var, A > const &Arg)
 
template<class A >
__INLINE
INMOST::unary_custom_variable
< INMOST::exp_expression
< typename A::Var >, A > 
exp (INMOST::shell_dynamic_variable< typename A::Var, A > const &Arg)
 
template<class A >
__INLINE
INMOST::unary_custom_variable
< INMOST::log_expression
< typename A::Var >, A > 
log (INMOST::shell_dynamic_variable< typename A::Var, A > const &Arg)
 
template<class A >
__INLINE
INMOST::unary_custom_variable
< INMOST::sin_expression
< typename A::Var >, A > 
sin (INMOST::shell_dynamic_variable< typename A::Var, A > const &Arg)
 
template<class A >
__INLINE
INMOST::unary_custom_variable
< INMOST::cos_expression
< typename A::Var >, A > 
cos (INMOST::shell_dynamic_variable< typename A::Var, A > const &Arg)
 
template<class A >
__INLINE
INMOST::unary_custom_variable
< INMOST::sqrt_expression
< typename A::Var >, A > 
sqrt (INMOST::shell_dynamic_variable< typename A::Var, A > const &Arg)
 
template<class A >
__INLINE
INMOST::unary_const_custom_variable
< INMOST::variation_multiplication_expression
< typename A::Var >, A > 
variation (INMOST::shell_dynamic_variable< typename A::Var, A > const &Arg, INMOST_DATA_REAL_TYPE Mult)
 
template<class A , class B >
__INLINE
INMOST::binary_custom_variable
< INMOST::addition_expression
< typename A::Var, typename
B::Var >, A, B > 
operator+ (INMOST::shell_dynamic_variable< typename A::Var, A > const &Left, INMOST::shell_dynamic_variable< typename B::Var, B > const &Right)
 
template<class A , class B >
__INLINE
INMOST::binary_custom_variable
< INMOST::subtraction_expression
< typename A::Var, typename
B::Var >, A, B > 
operator- (INMOST::shell_dynamic_variable< typename A::Var, A > const &Left, INMOST::shell_dynamic_variable< typename B::Var, B > const &Right)
 
template<class A , class B >
__INLINE
INMOST::binary_custom_variable
< INMOST::multiplication_expression
< typename A::Var, typename
B::Var >, A, B > 
operator* (INMOST::shell_dynamic_variable< typename A::Var, A > const &Left, INMOST::shell_dynamic_variable< typename B::Var, B > const &Right)
 
template<class A , class B >
__INLINE
INMOST::binary_custom_variable
< INMOST::division_expression
< typename A::Var, typename
B::Var >, A, B > 
operator/ (INMOST::shell_dynamic_variable< typename A::Var, A > const &Left, INMOST::shell_dynamic_variable< typename B::Var, B > const &Right)
 
template<class A , class B >
__INLINE
INMOST::binary_custom_variable
< INMOST::pow_expression
< typename A::Var, typename
B::Var >, A, B > 
pow (INMOST::shell_dynamic_variable< typename A::Var, A > const &Left, INMOST::shell_dynamic_variable< typename B::Var, B > const &Right)
 
template<class B >
__INLINE
INMOST::unary_const_custom_variable
< INMOST::const_pow_expression
< typename B::Var >, B > 
pow (INMOST_DATA_REAL_TYPE Left, INMOST::shell_dynamic_variable< typename B::Var, B > const &Right)
 
template<class A >
__INLINE
INMOST::unary_const_custom_variable
< INMOST::pow_const_expression
< typename A::Var >, A > 
pow (INMOST::shell_dynamic_variable< typename A::Var, A > const &Left, INMOST_DATA_REAL_TYPE Right)
 
template<class B >
__INLINE
INMOST::unary_const_custom_variable
< INMOST::const_multiplication_expression
< typename B::Var >, B > 
operator* (INMOST_DATA_REAL_TYPE Left, INMOST::shell_dynamic_variable< typename B::Var, B > const &Right)
 
template<class A >
__INLINE
INMOST::unary_const_custom_variable
< INMOST::const_multiplication_expression
< typename A::Var >, A > 
operator* (INMOST::shell_dynamic_variable< typename A::Var, A > const &Left, INMOST_DATA_REAL_TYPE Right)
 
template<class B >
__INLINE
INMOST::unary_const_custom_variable
< INMOST::reciprocal_expression
< typename B::Var >, B > 
operator/ (INMOST_DATA_REAL_TYPE Left, INMOST::shell_dynamic_variable< typename B::Var, B > const &Right)
 
template<class A >
__INLINE
INMOST::unary_const_custom_variable
< INMOST::const_division_expression
< typename A::Var >, A > 
operator/ (INMOST::shell_dynamic_variable< typename A::Var, A > const &Left, INMOST_DATA_REAL_TYPE Right)
 
template<class B >
__INLINE
INMOST::unary_const_custom_variable
< INMOST::const_addition_expression
< typename B::Var >, B > 
operator+ (INMOST_DATA_REAL_TYPE Left, INMOST::shell_dynamic_variable< typename B::Var, B > const &Right)
 
template<class A >
__INLINE
INMOST::unary_const_custom_variable
< INMOST::const_addition_expression
< typename A::Var >, A > 
operator+ (INMOST::shell_dynamic_variable< typename A::Var, A > const &Left, INMOST_DATA_REAL_TYPE Right)
 
template<class B >
__INLINE
INMOST::unary_const_custom_variable
< INMOST::const_subtraction_expression
< typename B::Var >, B > 
operator- (INMOST_DATA_REAL_TYPE Left, INMOST::shell_dynamic_variable< typename B::Var, B > const &Right)
 
template<class A >
__INLINE
INMOST::unary_const_custom_variable
< INMOST::const_addition_expression
< typename A::Var >, A > 
operator- (INMOST::shell_dynamic_variable< typename A::Var, A > const &Left, INMOST_DATA_REAL_TYPE Right)
 
template<class A >
__INLINE
INMOST::stencil_variable< A > 
stencil (INMOST::Automatizator &aut, INMOST_DATA_ENUM_TYPE stncl, INMOST::shell_dynamic_variable< typename A::Var, A > const &Arg, void *user_data=NULL)
 

Function Documentation

template<class A , class B , class C >
__INLINE INMOST::ternary_custom_variable<INMOST::condition_expression<typename A::Var, typename B::Var, typename C::Var>,A,B,C> condition ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  control,
INMOST::shell_dynamic_variable< typename B::Var, B > const &  if_ge_zero,
INMOST::shell_dynamic_variable< typename C::Var, C > const &  if_lt_zero 
)

Definition at line 654 of file inmost_variable.h.

template<class A >
__INLINE INMOST::unary_custom_variable<INMOST::cos_expression<typename A::Var>,A> cos ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Arg)

Definition at line 660 of file inmost_variable.h.

template<class A >
__INLINE INMOST::unary_custom_variable<INMOST::exp_expression<typename A::Var>,A> exp ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Arg)

Definition at line 657 of file inmost_variable.h.

template<class A >
__INLINE INMOST::unary_custom_variable<INMOST::abs_expression<typename A::Var>,A> fabs ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Arg)

Definition at line 656 of file inmost_variable.h.

Here is the caller graph for this function:

template<class A >
__INLINE INMOST::unary_custom_variable<INMOST::log_expression<typename A::Var>,A> log ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Arg)

Definition at line 658 of file inmost_variable.h.

template<class A , class B >
__INLINE INMOST::binary_custom_variable<INMOST::multiplication_expression<typename A::Var,typename B::Var>,A, B> operator* ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Left,
INMOST::shell_dynamic_variable< typename B::Var, B > const &  Right 
)

Definition at line 665 of file inmost_variable.h.

template<class B >
__INLINE INMOST::unary_const_custom_variable<INMOST::const_multiplication_expression<typename B::Var>,B> operator* ( INMOST_DATA_REAL_TYPE  Left,
INMOST::shell_dynamic_variable< typename B::Var, B > const &  Right 
)

Definition at line 670 of file inmost_variable.h.

template<class A >
__INLINE INMOST::unary_const_custom_variable<INMOST::const_multiplication_expression<typename A::Var>,A> operator* ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Left,
INMOST_DATA_REAL_TYPE  Right 
)

Definition at line 671 of file inmost_variable.h.

template<class A , class B >
__INLINE INMOST::binary_custom_variable<INMOST::addition_expression<typename A::Var,typename B::Var>,A, B> operator+ ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Left,
INMOST::shell_dynamic_variable< typename B::Var, B > const &  Right 
)

Definition at line 663 of file inmost_variable.h.

template<class B >
__INLINE INMOST::unary_const_custom_variable<INMOST::const_addition_expression<typename B::Var>,B> operator+ ( INMOST_DATA_REAL_TYPE  Left,
INMOST::shell_dynamic_variable< typename B::Var, B > const &  Right 
)

Definition at line 674 of file inmost_variable.h.

template<class A >
__INLINE INMOST::unary_const_custom_variable<INMOST::const_addition_expression<typename A::Var>,A> operator+ ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Left,
INMOST_DATA_REAL_TYPE  Right 
)

Definition at line 675 of file inmost_variable.h.

template<class A >
__INLINE INMOST::unary_custom_variable<INMOST::unary_minus_expression<typename A::Var>,A> operator- ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Arg)

Definition at line 655 of file inmost_variable.h.

template<class A , class B >
__INLINE INMOST::binary_custom_variable<INMOST::subtraction_expression<typename A::Var,typename B::Var>,A, B> operator- ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Left,
INMOST::shell_dynamic_variable< typename B::Var, B > const &  Right 
)

Definition at line 664 of file inmost_variable.h.

template<class B >
__INLINE INMOST::unary_const_custom_variable<INMOST::const_subtraction_expression<typename B::Var>,B> operator- ( INMOST_DATA_REAL_TYPE  Left,
INMOST::shell_dynamic_variable< typename B::Var, B > const &  Right 
)

Definition at line 676 of file inmost_variable.h.

template<class A >
__INLINE INMOST::unary_const_custom_variable<INMOST::const_addition_expression<typename A::Var>,A> operator- ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Left,
INMOST_DATA_REAL_TYPE  Right 
)

Definition at line 677 of file inmost_variable.h.

template<class A , class B >
__INLINE INMOST::binary_custom_variable<INMOST::division_expression<typename A::Var,typename B::Var>,A, B> operator/ ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Left,
INMOST::shell_dynamic_variable< typename B::Var, B > const &  Right 
)

Definition at line 666 of file inmost_variable.h.

template<class B >
__INLINE INMOST::unary_const_custom_variable<INMOST::reciprocal_expression<typename B::Var>,B> operator/ ( INMOST_DATA_REAL_TYPE  Left,
INMOST::shell_dynamic_variable< typename B::Var, B > const &  Right 
)

Definition at line 672 of file inmost_variable.h.

template<class A >
__INLINE INMOST::unary_const_custom_variable<INMOST::const_division_expression<typename A::Var>,A> operator/ ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Left,
INMOST_DATA_REAL_TYPE  Right 
)

Definition at line 673 of file inmost_variable.h.

template<class A , class B >
__INLINE INMOST::binary_custom_variable<INMOST::pow_expression<typename A::Var,typename B::Var>,A, B> pow ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Left,
INMOST::shell_dynamic_variable< typename B::Var, B > const &  Right 
)

Definition at line 667 of file inmost_variable.h.

template<class B >
__INLINE INMOST::unary_const_custom_variable<INMOST::const_pow_expression<typename B::Var>,B> pow ( INMOST_DATA_REAL_TYPE  Left,
INMOST::shell_dynamic_variable< typename B::Var, B > const &  Right 
)

Definition at line 668 of file inmost_variable.h.

template<class A >
__INLINE INMOST::unary_const_custom_variable<INMOST::pow_const_expression<typename A::Var>,A> pow ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Left,
INMOST_DATA_REAL_TYPE  Right 
)

Definition at line 669 of file inmost_variable.h.

template<class A >
__INLINE INMOST::unary_custom_variable<INMOST::sin_expression<typename A::Var>,A> sin ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Arg)

Definition at line 659 of file inmost_variable.h.

template<class A >
__INLINE INMOST::unary_custom_variable<INMOST::sqrt_expression<typename A::Var>,A> sqrt ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Arg)

Definition at line 661 of file inmost_variable.h.

template<class A >
__INLINE INMOST::stencil_variable<A> stencil ( INMOST::Automatizator aut,
INMOST_DATA_ENUM_TYPE  stncl,
INMOST::shell_dynamic_variable< typename A::Var, A > const &  Arg,
void *  user_data = NULL 
)

Definition at line 678 of file inmost_variable.h.

template<class A >
__INLINE INMOST::unary_const_custom_variable<INMOST::variation_multiplication_expression<typename A::Var>,A> variation ( INMOST::shell_dynamic_variable< typename A::Var, A > const &  Arg,
INMOST_DATA_REAL_TYPE  Mult 
)

Definition at line 662 of file inmost_variable.h.