about approximate linearization

Dec 13, 2009 3 Replies

hello all,



I'm a little bit unexperienced in the area and wanna learn probably a basic key issue about approximate linearization of nonlinear models for control.



For an example if a process model is like "x1dot=square(x2) +..", then I know that approximate linearization of the model is extracted via taylor expansion, but if the nonlinear model is like "x1dot=x2.x3 +..", how should I realize the linearization?



Thank you in advance...


Explaining it by Taylor's expansion is one way.

What you're really trying to do is find the derivative around the operating point for the whole state vector. So your

x1dot = x2 * x3

would linearize as

x1dot = x2(0) * x3 + x3(0) * x2,

where the x2(0) and x3(0) are the values of those two states at the nominal operating point.

More formally (but still from memory, so I may not be quoting textbooks exactly), if x is a vector, and if your system is described as

dx

-- = f(x, u, t) dt

then your linearization would be

dx del |

-- = f(x(0), u, t) + ----- f(x, u, t) | , dt del x | x = x(0)

where the "del / del x" operation takes the Jordanian of the system function.

This still isn't a perfectly linear system because you're adding in the value of the system function at the operating point, but it's affine, and pretty easy to turn into a linear system by replacing that expression with some extra integrators, appropriately initialized.

Small correction: designating the derivative/Jacobian of f(x,u,t) with respect to x as f'(x0,u,t) the linearization would be f(x0,u,t)+f'(x0,u,t)(x-x0) Where the second term yields a linear correction; the Jacobian matrix times a variation vector x0. Ray

        | x =

Thank you, yes.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required