|
stator
A math, geometry, and utility library
|
Main header for the stator::symbolic library. More...
#include <stator/config.hpp>#include <stator/constants.hpp>#include <stator/orphan/stack_vector.hpp>#include <Eigen/Dense>#include <complex>#include <ratio>#include <type_traits>#include <stator/symbolic/constants.hpp>#include <stator/orphan/template_config.hpp>#include <stator/symbolic/binary_ops.hpp>#include <stator/symbolic/unary_ops.hpp>#include <stator/symbolic/simplify.hpp>#include <stator/symbolic/polynomial.hpp>#include <stator/symbolic/integrate.hpp>#include <stator/symbolic/taylor.hpp>#include <stator/symbolic/runtime.hpp>#include <stator/symbolic/parser.hpp>#include <stator/symbolic/print.hpp>Go to the source code of this file.
Classes | |
| struct | sym::Dynamic |
| Template argument for dynamic types, as well as their base class. More... | |
| struct | sym::enable_if_var_in< Var1, Var2 > |
| struct | sym::enable_if_var_not_in< Var1, Var2 > |
| struct | sym::detail::IsConstant< T > |
| Type trait to determine if a certain type is a constant. More... | |
| struct | sym::detail::IsConstant< std::complex< T > > |
| struct | sym::IsSymbolic< T > |
| class | sym::Polynomial< Order, Coeff_t, PolyVar > |
| Array representation of Polynomial. More... | |
| struct | sym::Relation< Var, Arg > |
| Symbolic representation of a variable substitution. More... | |
| struct | sym::SymbolicOperator |
| A type trait to denote symbolic terms (i.e., one that is not yet immediately evaluable to a "normal" type) More... | |
| struct | sym::Var< Args > |
| Symbolic representation of a variable. More... | |
| struct | sym::variable_combine< Var1, Var2 > |
| struct | sym::variable_in< Var1, Var2 > |
| struct | sym::vidx< idx > |
Namespaces | |
| sym | |
| The stator symbolic math library. | |
| sym::detail | |
| Namespace containing the details of the implmentation for general stator components. | |
Functions | |
| template<class T , class ... Args, typename = typename std::enable_if<detail::IsConstant<T>::value>::type> | |
| Null | sym::derivative (const T &, Var< Args... >) |
| Determine the derivative of a symbolic expression. More... | |
| template<class ... Args1, class ... Args2, typename = typename std::enable_if<!std::is_base_of<Dynamic, Var<Args1...> >::value && !std::is_base_of<Dynamic, Var<Args2...> >::value>::type> | |
| auto | sym::derivative (Var< Args1... >, Var< Args2... >) -> typename std::enable_if< Var< Args1... >::idx==Var< Args2... >::idx, Unity >::type |
| Determine the derivative of a variable. More... | |
| template<class T , typename = typename std::enable_if<std::is_arithmetic<T>::value>::type> | |
| T | sym::empty_sum (const T &) |
| Returns the empty sum of a type. More... | |
| template<class T , typename = typename std::enable_if<std::is_base_of<Eigen::EigenBase<T>, T>::value>::type> | |
| auto | sym::empty_sum (const T &) -> STATOR_AUTORETURN_BYVALUE(T::Zero()) |
| Returns the empty sum of a type. More... | |
| template<class T > | |
| T | sym::empty_sum (const std::complex< T > &) |
| template<class T > | |
| constexpr std::enable_if< detail::IsConstant< T >::value, bool >::type | sym::is_constant (const T &) |
| template<class T > | |
| constexpr std::enable_if<!detail::IsConstant< T >::value, bool >::type | sym::is_constant (const T &) |
| template<class F , class Real , typename = typename std::enable_if<detail::IsConstant<F>::value>::type> | |
| double | sym::precision (const F &f, const Real) |
| Estimate the error in evaluating a function at a given time. More... | |
| template<class F , class Real , typename = typename std::enable_if<detail::IsConstant<F>::value>::type> | |
| F | sym::shift_function (const F &f, const Real t) |
Shift a function forward. It returns . More... | |
| StackVector< double, 0 > | sym::solve_real_roots (Null f) |
| template<class T , class Var , class Arg , typename = typename std::enable_if<detail::IsConstant<T>::value>::type> | |
| auto | sym::sub (const T &f, const Relation< Var, Arg > &) -> STATOR_AUTORETURN_BYVALUE(f) |
| Default implementation of substitution of a symbolic expression at a given point. More... | |
| template<typename ... Args1, typename ... Args2, class Arg , typename = typename enable_if_var_in<Var<Args1...>, Var<Args2...> >::type> | |
| auto | sym::sub (const Var< Args1... > &f, const Relation< Var< Args2... >, Arg > &x) -> STATOR_AUTORETURN_BYVALUE(x._val) |
| Evaluates a symbolic Var at a given point. More... | |
| template<class ... Args1, class Arg , class Var2 , typename = typename enable_if_var_not_in<Var<Args1...>, Var2>::type> | |
| Var< Args1... > | sym::sub (const Var< Args1... > &f, const Relation< Var2, Arg > &x) |
| Evaluates a symbolic Var at a given point. More... | |
1.8.13