Derived expression type for decision variable.
More...
#include </home/runner/work/allwpilib/allwpilib/wpimath/src/main/native/thirdparty/sleipnir/include/sleipnir/autodiff/expression.hpp>
|
constexpr | DecisionVariableExpression ()=default |
| Constructs a decision variable expression with a value of zero.
|
|
constexpr | DecisionVariableExpression (double value) |
| Constructs a nullary expression (an operator with no arguments).
|
|
double | value (double, double) const override |
| Either nullary operator with no arguments, unary operator with one argument, or binary operator with two arguments.
|
|
ExpressionType | type () const override |
| Returns the type of this expression (constant, linear, quadratic, or nonlinear).
|
|
constexpr | Expression ()=default |
| Constructs a constant expression with a value of zero.
|
|
constexpr | Expression (double value) |
| Constructs a nullary expression (an operator with no arguments).
|
|
constexpr | Expression (ExpressionPtr lhs) |
| Constructs an unary expression (an operator with one argument).
|
|
constexpr | Expression (ExpressionPtr lhs, ExpressionPtr rhs) |
| Constructs a binary expression (an operator with two arguments).
|
|
virtual | ~Expression ()=default |
|
constexpr bool | is_constant (double constant) const |
| Returns true if the expression is the given constant.
|
|
virtual double | grad_l (double lhs, double rhs, double parent_adjoint) const |
| Returns double adjoint of the left child expression.
|
|
virtual double | grad_r (double lhs, double rhs, double parent_adjoint) const |
| Returns double adjoint of the right child expression.
|
|
virtual ExpressionPtr | grad_expr_l (const ExpressionPtr &lhs, const ExpressionPtr &rhs, const ExpressionPtr &parent_adjoint) const |
| Returns Expression adjoint of the left child expression.
|
|
virtual ExpressionPtr | grad_expr_r (const ExpressionPtr &lhs, const ExpressionPtr &rhs, const ExpressionPtr &parent_adjoint) const |
| Returns Expression adjoint of the right child expression.
|
|
|
double | val = 0.0 |
| The value of the expression node.
|
|
double | adjoint = 0.0 |
| The adjoint of the expression node used during autodiff.
|
|
uint32_t | incoming_edges = 0 |
| Counts incoming edges for this node.
|
|
int32_t | col = -1 |
| This expression's column in a Jacobian, or -1 otherwise.
|
|
ExpressionPtr | adjoint_expr |
| The adjoint of the expression node used during gradient expression tree generation.
|
|
uint32_t | ref_count = 0 |
| Reference count for intrusive shared pointer.
|
|
std::array< ExpressionPtr, 2 > | args {nullptr, nullptr} |
| Expression arguments.
|
|
Derived expression type for decision variable.
◆ DecisionVariableExpression() [1/2]
slp::detail::DecisionVariableExpression::DecisionVariableExpression |
( |
| ) |
|
|
constexprdefault |
Constructs a decision variable expression with a value of zero.
◆ DecisionVariableExpression() [2/2]
slp::detail::DecisionVariableExpression::DecisionVariableExpression |
( |
double | value | ) |
|
|
inlineexplicitconstexpr |
Constructs a nullary expression (an operator with no arguments).
- Parameters
-
value | The expression value. |
◆ type()
ExpressionType slp::detail::DecisionVariableExpression::type |
( |
| ) |
const |
|
inlineoverridevirtual |
Returns the type of this expression (constant, linear, quadratic, or nonlinear).
- Returns
- The type of this expression.
Implements slp::detail::Expression.
◆ value()
double slp::detail::DecisionVariableExpression::value |
( |
double | lhs, |
|
|
double | rhs ) const |
|
inlineoverridevirtual |
Either nullary operator with no arguments, unary operator with one argument, or binary operator with two arguments.
This operator is used to update the node's value.
- Parameters
-
lhs | Left argument to binary operator. |
rhs | Right argument to binary operator. |
- Returns
- The node's value.
Implements slp::detail::Expression.
The documentation for this struct was generated from the following file:
- /home/runner/work/allwpilib/allwpilib/wpimath/src/main/native/thirdparty/sleipnir/include/sleipnir/autodiff/expression.hpp