NLToolbox
 All Classes Namespaces Functions
Public Member Functions | Public Attributes
nltool::PolynomialSystem Class Reference
Inheritance diagram for nltool::PolynomialSystem:
nltool::DynamicalSystem

List of all members.

Public Member Functions

 PolynomialSystem (int dim, int deg, int nbMon, const bool stable, int s)
 PolynomialSystem (int dim, std::vector< Polynom > polys)
 PolynomialSystem (int dim, string polysys)
 PolynomialSystem ()
virtual ~PolynomialSystem ()
Vector eval (const Vector &x)
DynamicalSystemderivate (const unsigned dx)
Number maximize (const unsigned indice, const Template &constraintsA, const Vector &constraintsB, Vector &pt)
Number minimize (const unsigned indice, const Template &constraintsA, const Vector &constraintsB, Vector &pt)
void linearInterpollation (Vector point, Matrix &A, Vector &b)
Number eval (const Vector &x, const int indice)
Vector evalDiscretised (const Vector &x, Number dt)
Number curvature (const Vector &x, const int indice, const Vector &d1, const Vector &d2)
PolynomialSystem getDiscretizedSystem (Number dt)
PolynomialSystem replaceVariable (std::vector< Polynom > expression)
PolynomialSystem derivate (const int dx)
multiIndice getMaxDegree ()

Public Attributes

std::vector< Polynompolynomials
multiIndice maxDegrees

Constructor & Destructor Documentation

nltool::PolynomialSystem::PolynomialSystem ( int  dim,
int  deg,
int  nbMon,
const bool  stable,
int  s 
)

Constructor for a randomly generated polynomial system

Parameters:
dimthe system dimension
degthe maximal degree for the monomials
nbMonthe maximal number of monomials by polynomials
stabletry to create a stable system
srandom generator seed
nltool::PolynomialSystem::PolynomialSystem ( int  dim,
std::vector< Polynom polys 
)

Base constructor

Parameters:
dimthe system dimension
polysa vector of polynomials
nltool::PolynomialSystem::PolynomialSystem ( int  dim,
string  polysys 
)

Base constructor

Parameters:
dimthe system dimension
polysysa string representing the polynomial system

Non consistent constructor

Destructor


Member Function Documentation

Number nltool::PolynomialSystem::curvature ( const Vector &  x,
const int  indice,
const Vector &  d1,
const Vector &  d2 
)

Computes the directional curvature of the system

Parameters:
xa state-space point
indicea variable indice
d1first direction
d2second direction
Returns:
the directional curvature evakuated at x
DynamicalSystem & nltool::PolynomialSystem::derivate ( const unsigned  dx) [virtual]

Derivation function

Parameters:
dxpartial derivative indice
Returns:
a system corresponding to the partial derivative of this polynomial system

Reimplemented from nltool::DynamicalSystem.

Derivation function

Parameters:
dxderivative variable
Returns:
polynomial system derivated
Vector nltool::PolynomialSystem::eval ( const Vector &  x) [virtual]

Evalutation function

Parameters:
xa point in the state space
Returns:
a vector with the value of each polynomials

Reimplemented from nltool::DynamicalSystem.

Number nltool::PolynomialSystem::eval ( const Vector &  x,
const int  indice 
)

Evaluation function

Parameters:
xa state-space point
indice
Returns:
evaluation results for each variable dynamics
Vector nltool::PolynomialSystem::evalDiscretised ( const Vector &  x,
Number  dt 
)

Evaluation function of the euler discretization of the system

Parameters:
xa state-space point
dttime step for the discretization
Returns:
evaluation results for each variable dynamics

returns an Euler discretization of the polynomial system

Parameters:
dttime step
Returns:
a polynomial system corresponding to the Euler discretization of this system
void nltool::PolynomialSystem::linearInterpollation ( Vector  point,
Matrix &  A,
Vector &  b 
)

Compute a linear interpollation of the system

Parameters:
pointa list of n+1 points
AThe affine part of the linear interpollation
bThe constant part of the linear interpollation
Number nltool::PolynomialSystem::maximize ( const unsigned  indice,
const Template &  constraintsA,
const Vector &  constraintsB,
Vector &  pt 
)

Maximize one of the polynomials It uses the Bernstein coefficient to return a quick approximation of the optimization.

Parameters:
indicepolynomial indice
constraintsArepresents the matrix A in the constraints Ax<=b
constraintsBrepresents the vector b in the constraints Ax<=b
ptsolution
Returns:
the optimization result
Number nltool::PolynomialSystem::minimize ( const unsigned  indice,
const Template &  constraintsA,
const Vector &  constraintsB,
Vector &  pt 
)

Minimize one of the polynomials It uses the Bernstein coefficient to return a quick approximation of the optimization.

Parameters:
indicepolynomial indice
constraintsArepresents the matrix A in the constraints Ax<=b
constraintsBrepresents the vector b in the constraints Ax<=b
ptsolution
Returns:
the optimization result

Replace all the variables by a list of n polynomials

Parameters:
expressionthe list of polynomials
Returns:
a new polynomial system with all variables replaced by the polynomials expression

The documentation for this class was generated from the following files:
 All Classes Namespaces Functions