Previous: cacsd, Up: Control Theory


30.10 Miscellaneous Functions (Not yet properly filed/documented)

— Function File: axis2dlim (axdata)

Determine axis limits for 2-D data (column vectors); leaves a 10% margin around the plots. Inserts margins of +/- 0.1 if data is one-dimensional (or a single point).

Input

axdata
n by 2 matrix of data [x, y].

Output

axvec
Vector of axis limits appropriate for call to axis function.

— Function File: moddemo (inputs)

Octave Control toolbox demo: Model Manipulations demo.

— Function File: prompt (str)

Prompt user to continue

Input

str
Input string. Its default value is:
               \n ---- Press a key to  continue ---
          

— Function File: rldemo (inputs)

Octave Control toolbox demo: Root Locus demo.

— Function File: [rldata, k_break, rlpol, gvec, real_ax_pts] = rlocus (sys[, increment, min_k, max_k])

Display root locus plot of the specified SISO system.

                 -----   ---     --------
             --->| + |---|k|---->| SISO |----------->
                 -----   ---     --------        |
                 - ^                             |
                   |_____________________________|
     

Inputs

sys
system data structure
min_k
Minimum value of k
max_k
Maximum value of k
increment
The increment used in computing gain values

Outputs

Plots the root locus to the screen.

rldata
Data points plotted: in column 1 real values, in column 2 the imaginary values.
k_break
Gains for real axis break points.
rlpol
Closed-loop roots for each gain value: 1 locus branch per row; 1 pole set per column
gvec
Gains vector
real_ax_pts
Real axis breakpoints

— Function File: [yy, idx] = sortcom (xx[, opt])

Sort a complex vector.

Inputs

xx
Complex vector
opt
sorting option:
"re"
Real part (default);
"mag"
By magnitude;
"im"
By imaginary part.
if opt is not chosen as "im", then complex conjugate pairs are grouped together, a - jb followed by a + jb.

Outputs

yy
Sorted values
idx
Permutation vector: yy = xx(idx)

— Function File: [num, den] = ss2tf (a, b, c, d)

Conversion from tranfer function to state-space. The state space system:

                .
                x = Ax + Bu
                y = Cx + Du
     

is converted to a transfer function:

          
                          num(s)
                    G(s)=-------
                          den(s)
     

used internally in system data structure format manipulations.

— Function File: [pol, zer, k] = ss2zp (a, b, c, d)

Converts a state space representation to a set of poles and zeros; k is a gain associated with the zeros.

Used internally in system data structure format manipulations.

— Function File: starp (P, K, ny, nu)

Redheffer star product or upper/lower LFT, respectively.

          
                         +-------+
               --------->|       |--------->
                         |   P   |
                    +--->|       |---+  ny
                    |    +-------+   |
                    +-------------------+
                                     |  |
                    +----------------+  |
                    |                   |
                    |    +-------+      |
                    +--->|       |------+ nu
                         |   K   |
               --------->|       |--------->
                         +-------+
     

If ny and nu “consume” all inputs and outputs of K then the result is a lower fractional transformation. If ny and nu “consume” all inputs and outputs of P then the result is an upper fractional transformation.

ny and/or nu may be negative (i.e. negative feedback).

— Function File: [a, b, c, d] = tf2ss (num, den)

Conversion from tranfer function to state-space. The state space system:

                .
                x = Ax + Bu
                y = Cx + Du
     

is obtained from a transfer function:

                          num(s)
                    G(s)=-------
                          den(s)
     

The vector den must contain only one row, whereas the vector num may contain as many rows as there are outputs y of the system. The state space system matrices obtained from this function will be in controllable canonical form as described in Modern Control Theory, (Brogan, 1991).

— Function File: [zer, pol, k] = tf2zp (num, den)

Converts transfer functions to poles-and-zero representations.

Returns the zeros and poles of the SISO system defined by num/den. k is a gain associated with the system zeros.

— Function File: [a, b, c, d] = zp2ss (zer, pol, k)

Conversion from zero / pole to state space.

Inputs

zer
pol
Vectors of (possibly) complex poles and zeros of a transfer function. Complex values must come in conjugate pairs (i.e., x+jy in zer means that x-jy is also in zer). The number of zeros must not exceed the number of poles.
k
Real scalar (leading coefficient).

Outputs

a
b
c
d
The state space system, in the form:
                    .
                    x = Ax + Bu
                    y = Cx + Du
          

— Function File: [num, den] = zp2tf (zer, pol, k)

Converts zeros / poles to a transfer function.

Inputs

zer
pol
Vectors of (possibly complex) poles and zeros of a transfer function. Complex values must appear in conjugate pairs.
k
Real scalar (leading coefficient).