How to Use QSR.nb QSR.nb is a Mathematica program to obtain a polynomial-in-the-state representation (PSR) and a quadratic-in-the-state representation (QSR) of a given continuous-time dynamical system. QSR.nb consists of the following four parts. 1) Definition of Functions Several functions are defined by executing this part. A user does not need to modify this part. 2) Definition of State Equation and Output Equation A user needs to modify only this part to define a system: dx/dt = f(x) + B(x)u y = h(x) + D(x)u The state vector xv and control input vector uv are defined as xv = Array[x,dimx]; uv = Array[u,dimu]; where dimx and dimu denote the dimensions of the state vector and the control input vector and are given by the user. Then, xv is a list of the form {x[1], x [2], ... , x[dimx]}. The lists fx and hx consist of elements of f(x) and h(x), respectively. TrBx is a list of lists, that is, each element is a list consisting of a column of B(x). Therefore, TrBx represents the transpose of B(x). TrDx is also a list of lists consisting of columns of D(x) and represents the transpose of D(x). 3) Immersion into a Polynomial-in-the-State Representation A PSR of the system defined above is obtained by executing this part. The immersion alpha(x) is obtained as a variable alpha. The new state vector z = alpha(x) is governed by: dz/dt = f(z) + B(z)u y = h(z) + D(z)u New functions f(z), B(z), h(z) and D(z) are obtained as variables fz, TrBz, hz, and TrDz, respectively. 4) Immersion into a Quadratic-in-the-State Representation A QSR of the PSR obtained above is obtained by executing this part. The immersion beta(z) from PSR is obtained as a variable bet, and the immersion gamma(x) from the original system is obtained as a variable gam. The new state vector w = gamma(x) ( = beta(z) ) is governed by: dw/dt = f(w) + B(w)u y = h(w) + D(w)u The new functions f(w), B(w), h(w) and D(w) are obtained as variables fw, TrBw, hw, and TrDw, respectively. The usage is simple. Modify only 2) Definition of State Equation and Output Equation, and execute all. Some warning may occur concerning spelling of symbols, because some symbols have similar names. Such warning may be ignored. ------------------------------------------- Toshiyuki Ohtsuka Department of Computer-Controlled Mechanical Systems Graduate School of Engineering Osaka University 2-1 Yamadaoka Suita, Osaka 565-0871 Japan E-mail ohtsuka@mech.eng.osaka-u.ac.jp http://www-newton.mech.eng.osaka-u.ac.jp/~ohtsuka/