Tequation Struct Reference

Detailed Description

An equation with linear, quadratic or bilinear terms.

NOTE: An equation can be seen as a polynomial (in)equated to a constant value and, thus, as a polynomial with an offset (equal to the opposite of the righ-hand value of the equation). Therefore in many places in the CuikSuite equations are used as polynomials, ignoring the associated (in)equality. This can be a bit confusing but implementing a separate type for the polynomials will let the equation type almost empty.

We can have different types of equations according to their role in the problem:

  • SYSTEM_EQ An equation obtained from the kinematic constraints.
  • COORD_EQ Equations defined to obtain cartesian variables (i.e., variables for corners of the mechanism links and bodies) from system ones (i.e., variables defining the valid mechanism poses).
  • DUMMY_EQ Parabolas and saddle equations obtained from the linealization of non-linear equations.
  • DERIVED_EQ Equation obtained via the function DeriveEquation
See Also
equation.h equation.c

Definition at line 236 of file equation.h.

Data Fields

unsigned int type
boolean polynomial
unsigned int cmp
unsigned int order
double value
unsigned int maxMonomials
unsigned int nMonomials
Tmonomial ** monomials
Tvariable_set vars

Field Documentation

unsigned int Tequation::type
unsigned int Tequation::order

Order of the equation (1-lineal, 2-bilineal, 2-quadratic).

Definition at line 242 of file equation.h.

Referenced by AddScaledMonomial(), CopyEquation(), DeriveEquation(), GetEquationOrder(), InitEquation(), and ResetEquation().

unsigned int Tequation::maxMonomials

Maximum number of monomials in the equation.

Definition at line 245 of file equation.h.

Referenced by AddScaledMonomial(), CopyEquation(), DeriveEquation(), and InitEquation().

Tvariable_set Tequation::vars

Variables involved in the equation monomials.

Definition at line 249 of file equation.h.

Referenced by AddScaledMonomial(), CopyEquation(), DeleteEquation(), DeriveEquation(), GetEquationVariables(), InitEquation(), IsSimplificable(), ResetEquation(), and VarScaleEquation().