NONACODE (NONlinear (Adaptive) COntrol DEsign) is a Mathematica Package for Analysis and Design of Nonlinear (Adaptive) Control Systems with the Differential-Geometric Approach.
The package allows the user to solve several control design problems, such as exact linearization via state feedback, output tracking and nonlinear observer design for the class of Nonlinear Affine Systems of the form:
x' = f(x) + g1(x) u1 + g2(x) u2 + ... + gm(x) um
y1 = h1(x)
y2 = h2(x)
...
ym = hm(x)
In addition, the Adaptive Output Tracking Problem for SISO systems that have parametric uncertainties and relative degree one can be solved with the aid of NONACODE. Both Lyapunov-based and Hyperstability-based techniques for the parameter adaptation are implemented in NONACODE.