National Instruments NI MATRIXx Xmath Specification Sheet
National Instruments NI MATRIXx Xmath Specification Sheet

National Instruments NI MATRIXx Xmath Specification Sheet

National instruments reduction module specification sheet
Hide thumbs Also See for NI MATRIXx Xmath:
Table of Contents

Advertisement

Quick Links

NI MATRIXx
TM
Xmath
Model Reduction Module
TM
Xmath Model Reduction Module
April 2007
370755C-01

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the NI MATRIXx Xmath and is the answer not in the manual?

Questions and answers

Subscribe to Our Youtube Channel

Summary of Contents for National Instruments NI MATRIXx Xmath

  • Page 1 NI MATRIXx Xmath Model Reduction Module Xmath Model Reduction Module April 2007 370755C-01...
  • Page 2 For further support information, refer to the Technical Support and Professional Services appendix. To comment on National Instruments documentation, refer to the National Instruments Web site at ni.com/info and enter the info code feedback. © 2007 National Instruments Corporation. All rights reserved.
  • Page 3: Important Information

    Instruments Corporation. National Instruments respects the intellectual property of others, and we ask our users to do the same. NI software is protected by copyright and other intellectual property laws. Where NI software may be used to reproduce software or other materials belonging to others, you may use NI software only to reproduce materials that you may reproduce in accordance with the terms of any applicable license or other legal restriction.
  • Page 4 Conventions The following conventions are used in this manual: Square brackets enclose optional items—for example, [ brackets also cite bibliographic references. » The » symbol leads you through nested menu items and dialog box options to a final action. The sequence File»Page Setup»Options directs you to pull down the File menu, select the Page Setup item, and select Options from the last dialog box.
  • Page 5: Table Of Contents

    Singular Perturbation of Balanced Realization...2-5 Hankel Norm Approximation ...2-6 balmoore( )...2-8 Related Functions ...2-11 truncate( ) ...2-11 Related Functions ...2-11 redschur( ) ...2-12 Algorithm ...2-12 Related Functions ...2-14 ophank( ) ...2-14 Restriction...2-14 Algorithm ...2-15 Behaviors...2-15 © National Instruments Corporation Xmath Model Reduction Module...
  • Page 6 Contents Onepass Algorithm ... 2-18 Multipass Algorithm ... 2-20 Discrete-Time Systems ... 2-21 Impulse Response Error ... 2-22 Unstable System Approximation ... 2-23 Related Functions... 2-23 Chapter 3 Multiplicative Error Reduction Selecting Multiplicative Error Reduction... 3-1 Multiplicative Robustness Result... 3-2 bst( )...
  • Page 7 Related Functions ...5-4 compare( ) ...5-4 Chapter 6 Tutorial Plant and Full-Order Controller ...6-1 Controller Reduction...6-5 ophank( )...6-9 wtbalance...6-12 fracred...6-20 Appendix A Bibliography Appendix B Technical Support and Professional Services Index © National Instruments Corporation Xmath Model Reduction Module Contents...
  • Page 8: Using This Manual

    • • • • © National Instruments Corporation Chapter 1, Introduction, starts with an outline of the manual and some useful notes. It also provides an overview of the Model Reduction Module, describes the functions in this module, and introduces nomenclature and concepts used throughout this manual.
  • Page 9: Bibliographic References

    Chapter 1 Introduction • • Bibliographic References Throughout this document, bibliographic references are cited with bracketed entries. For example, a reference to [VODM1] corresponds to a paper published by Van Overschee and De Moor. For a table of bibliographic references, refer to Appendix A, Bibliography. Commonly Used Nomenclature This manual uses the following general nomenclature: •...
  • Page 10: Algorithm

    The tools are particularly suitable when, as generally here, quality of approximation is measured by closeness of frequency domain behavior. © National Instruments Corporation MATRIXx Getting Started Guide Xmath User Guide Control Design Module...
  • Page 11: Functions

    Chapter 1 Introduction As shown in Figure 1-1, functions are provided to handle four broad tasks: • • • • Functions Xmath Model Reduction Module Model reduction with additive errors Model reduction with multiplicative errors Model reduction with frequency weighting of an additive error, including controller reduction Utility functions Additive Error...
  • Page 12 There are a number of model reduction methods not covered here. These include: • • © National Instruments Corporation Table 1-1. MRM Restrictions A stable, minimal system A state-space system must be stable and minimal, having at least one input, output, and state...
  • Page 13: Nomenclature

    Chapter 1 Introduction • • • Nomenclature This manual uses standard nomenclature. The user should be familiar with the following: • • • • • • • • • • Xmath Model Reduction Module approximation, in which the L by Parseval’s theorem, the L norm of the transfer-function error along the imaginary axis) serves as the error measure Markov parameter or impulse response matching, moment matching,...
  • Page 14: Commonly Used Concepts

    • • • © National Instruments Corporation An inequality or bound is tight if it can be met in practice, for example is tight because the inequality becomes an equality for x = 1. Again, if F(j ) denotes the Fourier transform of some Heisenberg inequality states, ∫...
  • Page 15: Hankel Singular Values

    Chapter 1 Introduction • • • • • Hankel Singular Values If P, Q are the controllability and observability grammians of a transfer-function matrix (in continuous or discrete time), the Hankel Singular Values are the quantities • • • Xmath Model Reduction Module The controllability grammian is also E[x(t)x (t)] when the system x ·...
  • Page 16 ) redschur( ) bst( ) mulhank( ) wtbalance( ) fracred( ) © National Instruments Corporation Suppose the transfer-function matrix corresponds to a discrete-time system, with state variable dimension n. Then the infinite Hankel matrix, CAB CA CAB CA has for its singular values the n nonzero Hankel singular values, together with an infinite number of zero singular values.
  • Page 17: Internally Balanced Realizations

    Chapter 1 Introduction Internally Balanced Realizations Suppose that a realization of a transfer-function matrix has the controllability and observability grammian property that P = Q = some diagonal . Then the realization is termed internally balanced. Notice that the diagonal entries that is, they are the Hankel singular values.
  • Page 18: Singular Perturbation

    Suppose the system is defined by: © National Instruments Corporation 1 – T QT are the Hankel singular values.
  • Page 19 Chapter 1 Introduction and also: Usually, we expect that, in the sense that the intuitive argument hinges on this, but it is not necessary. Then a singular perturbation is obtained by replacing means that: Accordingly, Equation 1-2 may be an approximation for Equation 1-1. This means that: •...
  • Page 20: Spectral Factorization

    W has a zero there. Spectral factorization, as shown in Example 1-1, seeks a W(j ), given (j ). In the rational case, a W(j ) exists if and only if (j ) is © National Instruments Corporation – –...
  • Page 21 Chapter 1 Introduction nonnegative hermitian for all . If Normally one restricts attention to (·) with lim is that, given a rational, nonnegative hermitian (j ) with • • • In the scalar case, all zeros of W(s) lie in Re[s] 0, or in Re[s]<0 if (j )>0 for all .
  • Page 22: Low Order Controller Design Through Order Reduction

    With the controller unknown however, this is impossible. Nevertheless, it can be argued, on the basis of the high loop gain property within the closed-loop bandwidth that is typical of many systems, that © National Instruments Corporation High Order Plant Plant...
  • Page 23 Chapter 1 Introduction multiplicative reduction, as described in Chapter 4, Error Reduction, and Chapter 4, these arguments more fully. Xmath Model Reduction Module Reduction, is a sound approach. Chapter 3, Frequency-Weighted Error 1-16 Frequency-Weighted Multiplicative Error Reduction, develop ni.com...
  • Page 24: Additive Error Reduction

    Model reduction provides a means to replace an FIR design by a much lower order infinite impulse response (IIR) design, with close matching of the transfer function at all frequencies. © National Instruments Corporation – – Xmath Model Reduction Module...
  • Page 25: Truncation Of Balanced Realizations

    Chapter 2 Additive Error Reduction Truncation of Balanced Realizations A group of functions can be used to achieve a reduction through truncation of a balanced realization. This means that if the original system is and the realization is internally balanced, then a truncation is provided by The functions in question are: •...
  • Page 26 (2n – 1) /2. Much of this change may occur in the passband. Suppose G has degree n–1; it can have no more than (n – 2) zeros, since it is strictly © National Instruments Corporation – the transfer function matrices of Equation 2-1 and Equation 2-2, strictly exceeds the largest diagonal entry , the reduced order system is guaranteed to be stable.
  • Page 27: Reduction Through Balanced Realization Truncation

    Chapter 2 Additive Error Reduction proper. So, even if all zeros are unstable, the maximum phase shift when moves from 0 to magnitude at frequencies when the phase shift has moved past (2n – 3) /2, approximation of G by G approximation may depend somehow on removing roughly cancelling pole-zeros pairs;...
  • Page 28: Singular Perturbation Of Balanced Realization

    Singular perturbation of a balanced realization is an attractive way to produce a reduced order model. Suppose G(s) is defined by, © National Instruments Corporation order model is not one in general obtainable by truncation of an internally-balanced realization of the full order model.
  • Page 29: Hankel Norm Approximation

    Chapter 2 Additive Error Reduction with controllability and observability grammians given by, in which the diagonal entries of the first diagonal entry of defined by: The attractive feature [LiA89] is that the same error bound holds as for balanced truncation. For example, Although the error bounds are the same, the actual frequency pattern of the errors, and the actual maximum modulus, need not be the same for reduction to the same order.
  • Page 30 • There is one further connection between optimum Hankel norm approximation and L error. If one seeks to approximate G by a sum with © National Instruments Corporation into outputs, and focus on the output over ∫ CexpA t –1 B.
  • Page 31: Balmoore( )

    Chapter 2 Additive Error Reduction Further, the optimal for this second type of approximation. In Xmath Hankel norm approximation is achieved with The most comprehensive reference is [Glo84]. balmoore( ) [SysR,HSV,T] = balmoore(Sys,{nsr,bound}) a continuous system and then optionally truncates it to provide a balance reduced order system using B.C.
  • Page 32 It is far from exact when the poles and zeros approximately alternate along the imaginary axis (with the poles stable). © National Instruments Corporation possessing dimension columns, the reduced order system (continuous) x ·...
  • Page 33 Chapter 2 Additive Error Reduction The actual approximation error for discrete systems also depends on frequency, and can be large at that is, the actual error magnitude as a function of the error bound, so that the bound can only be a guide to the selection of the reduced system dimension.
  • Page 34: Related Functions

    DC gains for discrete-time case. For a additional information about the function, refer to the Xmath Help. Related Functions balance() © National Instruments Corporation truncate() redschur() function reduces a system truncate( ) states and throwing away the rest to form a system one has, , and D.
  • Page 35: Redschur( )

    Chapter 2 Additive Error Reduction redschur( ) [SysR,HSV,slbig,srbig,VD,VA] = redschur(Sys,{nsr,bound}) Chiang) to calculate a reduced version of a continuous or discrete system without balancing. Algorithm The objective of the latter is being used to reduce a system; this means that if the same the same transfer function matrix.
  • Page 36 An error bound is available. In the continuous-time case it is as follows. Let G( j ) and G respectively. For the continuous case: © National Instruments Corporation in ascending and descending order. These eigenvalues are the square are orthogonal and S lbig...
  • Page 37: Related Functions

    Chapter 2 Additive Error Reduction For the discrete-time case: When choose the number of states in is as small as possible. If the desired error bound is smaller than 2 no reduction is made. In the continuous-time case, the error depends on frequency, but is always zero at single-input, single-output, with alternating poles and zeros on the real axis, the bound is tight.
  • Page 38: Algorithm

    The order singular values. In fact, the orders shown in Table 2-1 for the strictly stable possible (and there are no other possibilities). © National Instruments Corporation are stable; the system SysR (s) is a stable approximation of G(s).
  • Page 39 Chapter 2 Additive Error Reduction Order of By abuse of notation, when we say that G is reduced to a certain order, this corresponds to the order of G approximation is most frequently thrown away. The number of eliminated states (retaining G This number is always the multiplicity of a Hankel singular value.
  • Page 40 1). In this case, G which can then be lumped in with G © National Instruments Corporation (–s) in terms of those of G(s). With G (s), being unstable, does not have Hankel (–s) (which is stable) does have Hankel...
  • Page 41: Onepass Algorithm

    Chapter 2 Additive Error Reduction being approximated by a stable G just the error bound) satisfying: is optimal, that is, there is no other G Note Onepass Algorithm The first steps of the algorithm are to obtain the Hankel singular values of G(s) (by using G(s) is checked in this process.) If the user has specified not coincide with one of 0,n...
  • Page 42 These four matrices are the constituents of the system matrix of where: Digression: The next step of the algorithm is to call its stable and unstable parts, call them always assign the matrix © National Instruments Corporation 1 – A ˜ 1 – B ˜ C ˜...
  • Page 43: Multipass Algorithm

    Chapter 2 Additive Error Reduction to choose the D matrix of G This is done by using a separate function the unstable output of multipass Hankel reduction algorithm, described further below, K(s) is reduced to the constant K that is, if it is larger than, then one chooses: This ensures satisfaction of the error bound for G –...
  • Page 44: Discrete-Time Systems

    No special algorithm is presented for discrete-time systems. Any stable discrete-time transfer-function matrix G(z) can be used to define a stable continuous-time transfer-function matrix by a bilinear transformation, thus when © National Instruments Corporation Find a stable order ns – 2 approximation G – ns 1 ns 2 –...
  • Page 45: Impulse Response Error

    Chapter 2 Additive Error Reduction We use sysZ to denote G(z) and define: bilinsys=makepoly([-1,a]/makepoly([1,a]) as the mapping from the z-domain to the s-domain. The specification is reversed because this function uses backward polynomial rotation. Hankel norm reduction is then applied to H(s), to generate, a stable reduced order approximation H Here, the s the same:...
  • Page 46: Unstable System Approximation

    For additional information about the Help. Related Functions stable() © National Instruments Corporation 2 2i 2 – – to separate G(s) into a stable and unstable part. The...
  • Page 47: Multiplicative Error Reduction

    Another way one could measure the multiplicative error would be as G G ˆ product gives two more possibilities again. The following multiplicative robustness result can be found in [Vid85]. © National Instruments Corporation G ˆ Figure 3-1. Controller C(s) Designed for Multiplicative Error Reduction G G ˆ...
  • Page 48: Multiplicative Robustness Result

    Chapter 3 Multiplicative Error Reduction Multiplicative Robustness Result Suppose C stabilizes that G has the same number of poles in Re[s] then C stabilizes G. This result indicates that if a controller C is designed to stabilize a nominal or reduced order model controller also will stabilize the true plant G.
  • Page 49: Bst( )

    • • bst( ) [SysR,HSV] = bst(Sys,{nsr,left,right,bound,method}) the multiplicative case. © National Instruments Corporation relate, that is, one focuses on balanced realization ophank( ) When the errors are small, the error bound formula for about one half of that for...
  • Page 50: Restrictions

    Chapter 3 Multiplicative Error Reduction The objective of the algorithm is to approximate a high-order stable transfer function matrix G(s) by a lower-order G (g-gr)inv(g) prescribed order. Restrictions This function has the following restrictions: • • • Algorithm The modifications described in this section allow you to circumvent the previous restrictions.
  • Page 51: Algorithm With The Keywords Right And Left

    G © National Instruments Corporation (s). This means that if G(s) has order nsr with n (s) must have degree at least n zeros in Re[s] >...
  • Page 52 Chapter 3 Multiplicative Error Reduction Xmath Model Reduction Module –1 With G(s) = D + C(sI – A) B and stable, with DD´ nonsingular and G(j ) G'(–j ) nonsingular for all , part of a state variable realization of a minimum phase stable W(s) is determined such that W´(–s)W(s) = G(s)G´(–s) with The state variable matrices in W(s) are obtained as follows.
  • Page 53 © National Instruments Corporation strictly proper stable part of (s), as the square roots of the eigenvalues of PQ. Call these quantities where V are orthogonal and S Define submatrices as follows, assuming the dimension of the reduced...
  • Page 54: Securing Zero Error At Dc

    Chapter 3 Multiplicative Error Reduction state-variable representation of G. In this case, the user is effectively asking for G they must all be included or all excluded from the model, that is, The number of as mentioned already, these zeros remain as zeros of G error conjunction with the For nonsquare G with more columns than rows, the error formula is:...
  • Page 55: Hankel Singular Values Of Phase Matrix Of G

    For square minimum phase but not necessarily stable G, it also is possible to use this algorithm (with minor modification) to try to minimize (for G of a certain order) the error bound © National Instruments Corporation , i = 1,2,...,ns have been termed above the Hankel singular values of 1 –...
  • Page 56: Imaginary Axis Zeros (Including Zeros At )

    Chapter 3 Multiplicative Error Reduction which also can be relevant in finding a reduced order model of a plant. The procedure requires G again to be nonsingular at j -axis poles. It is as follows: Imaginary Axis Zeros (Including Zeros at We shall now explain how to handle the reduction of G(s) which has a rank drop at s = [Saf87].
  • Page 57 Note The systems substituted in the previous calls to subsys invert the function specification because these functions use backward polynomial rotation. © National Instruments Corporation G ˜ s around a circle with diameter defined by –1 + j0] on the positive real axis.
  • Page 58 Chapter 3 Multiplicative Error Reduction Any zero (or rank reduction) on the j -axis of G(s) becomes a zero (or rank reduction) in Re[s] > 0 of at infinity, this is shifted to a zero (or rank reduction) of –1 [–b zero (or rank reduction) on this circle, reduction) on the j -axis, including...
  • Page 59 G plane zeros of available. © National Instruments Corporation G ˜ s Values of G(s) along the j -axis correspond to values of a circle in the left half plane on diameter (–...
  • Page 60: Related Functions

    Chapter 3 Multiplicative Error Reduction There is one potential source of failure of the algorithm. Because G(s) is stable, on diameter (but still in the left half plane of course)—and this appears possible in principle—G be encountered, a smaller value of should be used. Related Functions redschur() mulhank( )
  • Page 61: Right And Left

    [SaC88]. The procedure is almost the same when except the transpose of G(s) is used; the following algorithm finds an approximation, then transposes it to yield the desired G © National Instruments Corporation = |G(j )| –1 (–s) G(s). This all-pass function has a mixture of stable and with –1...
  • Page 62 Chapter 3 Multiplicative Error Reduction Xmath Model Reduction Module eigenvalues of A – B/D * C with the aid of of the is less than eigenvalues Next, a stabilizing solution Q is found for the following Riccati equation: – The function singriccati( ) condition of G(j ) will normally result in an error message.
  • Page 63 © National Instruments Corporation singular values of F(s) larger than 1– (refer to steps 1 through 3 of the Restrictions section). The maximum order permitted is the number of nonzero eigenvalues of W Let r be the multiplicity of F ˆ s by a transfer function matrix approximation.
  • Page 64: Consequences Of Step 5 And Justification Of Step 6

    Chapter 3 Multiplicative Error Reduction Note The expression 1 – F ˆ s is all pass; this property is not always secured in the multivariable case – when ophank( ) Consequences of Step 5 and Justification of Step 6 A number of properties are true: •...
  • Page 65 • • These properties mean that one is immediately positioned to repeat the reduction procedure on hand. © National Instruments Corporation W ˆ s G ˆ s stand in the same relation as W(s) and G(s), that is: W ˆ...
  • Page 66: Error Bounds

    Chapter 3 Multiplicative Error Reduction Error Bounds The error bound formula (Equation 3-3) is a simple consequence of iterating (Equation 3-5). To illustrate, suppose there are three reductions Also, Similarly, Then: The error bound (Equation 3-3) is only exact when there is a single reduction step.
  • Page 67: Imaginary Axis Zeros (Including Zeros At )

    The key is to use a bilinear transformation [Saf87]. Consider the bilinear map defined by where 0 < a < b © National Instruments Corporation , this translates for a scalar system into mulhank( ) ∑...
  • Page 68 Chapter 3 Multiplicative Error Reduction The values of G(s) along the j -axis are the same as the values of around a circle with diameter defined by [a – j0, b real axis (refer to Figure 3-2). Also, the values of are the same as the values of G(s) around a circle with diameter defined by [–b We can implement an arbitrary bilinear transform using the...
  • Page 69 Create a system that corresponds to gtildesys=subs(gsys,(makep([-eps,1])/makep([1,-])) bilinsys=makep([eps,1])/makep([1,0]) sys=subsys(sys,bilinsys) Under this transformation: • • © National Instruments Corporation 1 – – will be overbounded by the error 1 – G ˜ G ˜ , and G will contain the same zeros in Re[s] –...
  • Page 70: Related Functions

    Chapter 3 Multiplicative Error Reduction Multiplicative approximation of multiplicative approximation of G(s) around a circle in the right half plane, touching the j -axis at the origin. For those points on the j -axis near the circle, there will be good multiplicative approximation of G(j ). If a good approximation of G(s) over an interval [–j , j ] it is desired, then –1 Notice that the number of zeros of G(s) in the circle of diameter (0,...
  • Page 71: Frequency-Weighted Error Reduction

    When the system G is processing signals which do not have a flat spectrum, and is to be approximated, there is considerable logic in using a weight. If the signal spectrum is (j ), then taking V(j ) as a stable spectral factor © National Instruments Corporation – –...
  • Page 72: Controller Reduction

    Chapter 4 Frequency-Weighted Error Reduction (so that controller reduction, which is now described. Controller Reduction Frequency weighted error reduction becomes particularly important in reducing controller dimension. The LQG and controllers which have order equal to, or roughly equal to, the order of the plant.
  • Page 73 Equation 4-4 is replaced by © National Instruments Corporation Chapter 4 –1 . Consider the scalar plant case. In the pass band, |PC| is likely –1...
  • Page 74 Chapter 4 Frequency-Weighted Error Reduction Most of these ideas are discussed in [Enn84], [AnL89], and [AnM89]. The function choices of error measure, namely E V(j ). The first four are specifically for controller reduction, whereas the last is not aimed specifically at this situation. Several features of the algorithms are: •...
  • Page 75: Fractional Representations

    Evidently, C(s) can be formed by completing the following steps: © National Instruments Corporation Chapter 4 . Consider first a scalar controller --------- - is the numerator, and .
  • Page 76 Chapter 4 Frequency-Weighted Error Reduction Nothing has been said as to how of the reduction, C been specified. When C(s) has been designed to combine a state estimator with a stabilizing feedback law, it turns out that there is a natural choice for As for the reduction procedure, one possibility is to use a weight based on the spectrum of the input signals to G—and in case C(s) has been determined by an LQG optimal design, this spectrum turns out to be white,...
  • Page 77 For matrix C(s), the left and right matrix fraction descriptions are distinct entities. It is the right MFD which corresponds to Figure 4-1; refer to Figure 4-2. © National Instruments Corporation 1 – , and related values, all stable transfer function matrices.
  • Page 78 Chapter 4 Frequency-Weighted Error Reduction The left MFD corresponds to the setup of Figure 4-3. The setup of Figure 4-2 suggests approximation of: whereas that of Figure 4-3 suggests approximation of: In the LQG optimal case, the signal driving K (the innovations process);...
  • Page 79 The second It is possible to argue heuristically the relevance of these error measures from a second point of view. It turns out that: © National Instruments Corporation Chapter 4 sI A – Figure 4-4. Redrawn; Individual Signal Paths as Vector Paths 1 –...
  • Page 80 Chapter 4 Frequency-Weighted Error Reduction (Here, the W Some manipulation shows that trying to preserve these identities after approximation of D W G G [LAL90]. In all four Hankel singular values, and to use them as a guide to the likely quality of approximation.
  • Page 81 C(s) in a special way, by reducing only the stable part of C(s) (under additive decomposition) and copying the unstable part into C © National Instruments Corporation Chapter 4 Reduce the order of a transfer function matrix C(s) through frequency-weighted balanced truncation, a stable frequency weight V(s) being prescribed.
  • Page 82 Chapter 4 Frequency-Weighted Error Reduction This rather crude approach to the handling of the unstable part of a controller is avoided in wtbalance( ) of controllers. Table 4-2. Error Measure Interpretation for wtbalance Type A stability robustness argument, based on breaking the loop at the controller "input stab"...
  • Page 83 2; or it maybe an independently specified stable V(s). Then The controllability grammian P satisfying is written as © National Instruments Corporation Chapter 4 Compute weighted Hankel Singular Values detail later). If the order of C (s) is not specified a priori, it must be input at this time.
  • Page 84 Chapter 4 Frequency-Weighted Error Reduction and the observability grammian Q, defined in the obvious way, is written as It is trivial to verify that observability gramian of C The weighted Hankel singular values of C eigenvalues of P singular values because P rather a weighted controllability gramian.
  • Page 85: Related Functions

    Related Functions balance() fracred( ) [SysCR,HSV] = fracred(Sys,Kr,Ke,type,{nscr,Qyy}) reduction of a continuous-time compensator comprising a state estimator with state feedback law. Restrictions © National Instruments Corporation (s), the stable part of C (s), are defined lbig rbig lbig rbig type="input spec"...
  • Page 86: Defining And Reducing A Controller

    Chapter 4 Frequency-Weighted Error Reduction Defining and Reducing a Controller Suppose P(s) = C(sI – A) A controller for the plant P(s) can be defined by (with u the plant input and y the plant output). The associated series compensator under unity negative feedback is and this may be written as a left or right MFD as follows: The reduction procedures rationales.
  • Page 87 Figure 4-5) can be constructed by implementing and then applying an interconnection rule (connect the output of the second transfer function matrix back to the input at point X in Figure 4-5). © National Instruments Corporation sI A ˆ –...
  • Page 88: Algorithm

    Chapter 4 Frequency-Weighted Error Reduction Controller reduction proceeds by implementing the same connection rule but on reduced versions of the two transfer function matrices. When K spectrum of the signal driving K It follows that to reflect in the multiple input case the different intensities on the different scalar inputs, it is advisable to introduce at some stage a weight Algorithm...
  • Page 89 P and Q. For stab" and for © National Instruments Corporation Chapter 4 Check the stability of the closed-loop system with C is specified, one works with type="left perf"...
  • Page 90: Additional Background

    Chapter 4 Frequency-Weighted Error Reduction Additional Background A discussion of the stability robustness measure can be found in [AnM89] and [LAL90]. The idea can be understood with reference to the transfer functions E(s) and E possible to argue (through block diagram manipulation) that •...
  • Page 91: Related Functions

    Note The relative values count, not the absolute values. Related Functions redschur() © National Instruments Corporation Problems with instability through reduction to too low a controller order are more likely with "left perf" "left stab" "right stab"...
  • Page 92: Utilities

    G reduction of G hankelsv( ) [HSV,Wc,Wo] = hankelsv(Sys,{noplot}) stable system (continuous or discrete) and displays them in a bar plot. © National Instruments Corporation compare( ) , which calculates Hankel singular hankelsv( ) compare( ) is used to separate (additively) a system into its stable( ) (s), the first with all poles in Re[s] <...
  • Page 93: Related Functions

    Chapter 5 Utilities The gramian matrices are defined by solving the equations (in continuous time) and, in discrete time The computations are effected with which is time-consuming. The Hankel singular values are the square roots of the eigenvalues of the product. Related Functions lyapunov() stable( )
  • Page 94 This will cause problems when gramians and Hankel singular values are calculated.) To avoid this problem, change majority of eigenvalues. A further transformation of A is constructed using X: © National Instruments Corporation for continuous-time, or eigenvalue 1 tol –...
  • Page 95: Related Functions

    Chapter 5 Utilities After this last transformation, and with it follows that By combining the transformation yielding the real ordered Schur form for A with the transformation defined using X, the overall transformation T is readily identified. In case all eigenvalues of A are stable or all are unstable, this is flagged, and T = I.
  • Page 96: Tutorial

    The plant transfer function, which is nonminimum phase and has a double pole at the origin, is as follows: with: © National Instruments Corporation mr_disc.xmd ----------------------------------- - ------- -...
  • Page 97 Chapter 6 Tutorial A minimal realization in modal coordinates is C(sI – A) ⎧ diag ⎨ ⎩ The specifications seek high loop gain at low frequencies (for performance) and low loop gain at high frequencies (to guarantee stability in the presence of unstructured uncertainty).
  • Page 98 © National Instruments Corporation is stable. Next, with an input noise variance matrix Q = W DIAG 0.346 0.346 0.024 0.0240.042 0.0420.042 0.042 C is stable) is determined: circumvents syntax checking in most functions.
  • Page 99 Chapter 6 Tutorial recovery at low frequencies; there is consequently a faster roll-off of the loop gain at high frequencies than for Figure 6-2 displays the (magnitudes of the) plant transfer function, the compensator transfer function and the loop gain, as well as the constraints; evidently the compensated plant meets the constraints.
  • Page 100: Controller Reduction

    A reduction to order 2 is attempted. The ending Hankel singular values, that [syscr,hsv] = redschur(sysc,2); svalsRol = svplot(sys*syscr,w,{radians}); plot(svalsol, {keep}) f3=plot(wc, constr,{keep,!grid, legend=["reduced","original","constrained"], title="Open-Loop Gain Using redschur()"}) © National Instruments Corporation (using balance( ) –2 –2 –2 4.901 10 2.581 10...
  • Page 101 Chapter 6 Tutorial Figures 6-3, 6-4, and 6-5 display the outcome of the reduction. The loop gain is shown in Figure 6-3. The error near the unity gain crossover frequency may not look large, but it is considerably larger than that obtained through frequency weighted reduction methods, as described later.
  • Page 102 Chapter 6 Tutorial Generate Figure 6-4: compare(syscl,sysclr,w,{radians,type=5}) f4=plot({keep,legend=["original","reduced"]}) Figure 6-4. Closed-Loop Gain with redschur © National Instruments Corporation Xmath Model Reduction Module...
  • Page 103 Chapter 6 Tutorial Generate Figure 6-5: tvec=0:(140/99):140; compare(syscl,sysclr,tvec,{type=7}) f5=plot({keep,legend=["original","reduced"]}) Xmath Model Reduction Module Figure 6-5. Step Response with redschur ni.com...
  • Page 104: Ophank( )

    [syscr,sysu,hsv]=ophank(sysc,2); svalsrol = svplot(sys*syscr,w,{radians}); plot(svalsol, {keep}) f6=plot(wc, constr, {keep,!grid, title="Open-loop gain using ophank()"}) © National Instruments Corporation is next used to reduce the controller with the results shown in Figure 6-6. Open-Loop Gain Using ophank Chapter 6 Tutorial Xmath Model Reduction Module...
  • Page 105 Chapter 6 Tutorial Generate Figure 6-7: syscl = feedback(sysol); sysolr=sys*syscr; sysclr=feedback(sysolr); compare(syscl,sysclr,w,{radians,type=5}) f7=plot({keep,legend=["original","reduced"]}) Xmath Model Reduction Module Figure 6-7. Closed-Loop Gain with ophank 6-10 ni.com...
  • Page 106 ) cannot automatically assume that, because the error bound formula for is more attractive than that for , the error itself ophank( ) redschur( ) will be better for ophank( ) © National Instruments Corporation 6-11 Xmath Model Reduction Module...
  • Page 107: Wtbalance

    Chapter 6 Tutorial wtbalance The next command examined is [syscr,ysclr,hsv] = wtbalance(sys,sysc,"match",2) Recall that this command should promote matching of closed-loop transfer functions. The weighted Hankel singular values are: The relative magnitudes suggest that reduction to order 2 will produce less of an approximation error here (in the closed-loop transfer function) than a reduction to this order through implicit criterion is the unweighted error in approximating the controller...
  • Page 108 Chapter 6 Tutorial The following function calls produce Figure 6-9: svalsrol = svplot(sys*syscr,w,{radians}) plot(svalsol, {keep}) f9=plot(wc, constr, {keep,!grid, legend=["reduced","original","constrained"], title="Open-Loop Gain Using wtbalance()"}) Figure 6-9. Open-Loop Gain with wtbalance © National Instruments Corporation 6-13 Xmath Model Reduction Module...
  • Page 109 Chapter 6 Tutorial Generate Figure 6-10: syscl = feedback(sysol); sysolr=sys*syscr; sysclr=feedback(sysolr); compare(syscl,sysclr,w,{radians,type=5}) f10=plot({keep,legend=["original","reduced"]}) Xmath Model Reduction Module Figure 6-10. Closed-Loop Gain with wtbalance 6-14 ni.com...
  • Page 110 (0.1 to 5 rad per second) at the expense of matching at other frequencies. The weighted Hankel singular values again indicate that it is reasonable to seek a second order controller. © National Instruments Corporation 6-15 Xmath Model Reduction Module...
  • Page 111 Chapter 6 Tutorial Generate Figure 6-12: vtf=poly([-0.1,-10])/poly([-1,-1.4]) [,sysv]=check(vtf,{ss,convert}); svalsv = svplot(sysv,w,{radians}); Xmath Model Reduction Module Figure 6-12. Frequency Response of the Weight V(j ) 6-16 ni.com...
  • Page 112 Generate Figure 6-13: [syscr,sysclr,hsv] = wtbalance(sys,sysc, "input spec",2,sysv) svalsrol = svplot(sys*syscr,w,{radians}) plot(svalsol, {keep}) f13=plot(wc,constr,{keep, !grid, legend=["reduced","original","constrained"], title="Open-Loop Gain with wtbal(), \"input spec\""}) Figure 6-13. Open-Loop Gain from wtbalance with "input spec" © National Instruments Corporation 6-17 Xmath Model Reduction Module...
  • Page 113 Chapter 6 Tutorial Generate Figure 6-14: syscl = feedback(sysol); sysolr=sys*syscr; sysclr=feedback(sysolr); compare(syscl,sysclr,w,{radians,type=5}) f14=plot({keep,legend=["original","reduced"]}) Xmath Model Reduction Module Figure 6-14. System Singular Values of wtbalance with "input spec" 6-18 ni.com...
  • Page 114 Chapter 6 Tutorial Generate Figure 6-15: tvec=0:(140/99):140; compare(syscl,sysclr,tvec,{type=7}) f15=plot({keep,legend=["original","reduced"]}) Figure 6-15. Step Response of wtbalance with "input spec" © National Instruments Corporation 6-19 Xmath Model Reduction Module...
  • Page 115: Fracred

    Chapter 6 Tutorial fracred fracred stab" The options produce instability. Given the relative magnitudes of the Hankel singular values, this is perhaps not surprising. Figures 6-16, 6-17, and 6-18 illustrate the results using Generate Figure 6-16: svalsrol = svplot(sys*syscr,w,{radians}) plot(svalsol, {keep}) f16=plot(wc,constr,{keep,!grid, legend=["reduced","original","constrained"], title="Open-Loop Gain Using fracred()"})
  • Page 116 Chapter 6 Tutorial Generate Figure 6-17: syscl = feedback(sysol); sysolr=sys*syscr; sysclr=feedback(sysolr); compare(syscl,sysclr,w,{radians,type=5}) f17=plot({keep,legend=["original","reduced"]}) Figure 6-17. Closed-Loop Response with fracred © National Instruments Corporation 6-21 Xmath Model Reduction Module...
  • Page 117 Chapter 6 Tutorial Generate Figure 6-18: tvec=0:(140/99):140; compare(syscl,sysclr,tvec,{type=7}) f18=plot({keep,legend=["original","reduced"]}) The end result is comparable to that from "match" We can create a table to examine the values of the Hankel singular values based on different decompositions approaches. set precision 3 set format fixed # we set a smaller precision here so we could fit [syscr, hsvrs] = fracred(sys, Kr, Ke, "right stab",2);...
  • Page 118 "left perf:", hsvtable (a rectangular matrix of strings) = right stab:3.308 0.728 0.112 0.078 0.024 0.018 0.011 0.010 left stab:1.403 right perf:0.034 0.016 0.013 0.010 0.004 0.004 0.000 0.000 left perf:4.907 © National Instruments Corporation string(hsvls'); string(hsvlp')]? 1.331 1.133 1.092 0.965...
  • Page 119 M. Green and BDO Anderson, “The approximation of power spectra by phase matching,” Proceedings for 25th CDC, 1986, pp. 1085–1090. M. Green and BDO Anderson, “Model reduction by phase matching,” Mathematics of [GrA89] Control, Signals, and Systems, Vol. 2, 1989, pp. 221–263. © National Instruments Corporation Xmath Model Reduction Module...
  • Page 120 Appendix A Bibliography [GrA90] M. Green and BDO Anderson, “Generalized balanced stochastic truncation,” Proceedings for 29th CDC, 1990. [Gre88] M. Green, “Balanced stochastic realization,” Linear Algebra and Applications, Vol. 98, 1988, pp. 211–247. [Gre88a] M. Green, “A relative error bound for balanced stochastic truncation,” IEEE Transactions on Automatic Control, Vol.
  • Page 121 Control, August 1979. [DoS81] J. C. Doyle and G. Stein. “Multivariable Feedback Design: Concepts for a Classical/Modern Synthesis.” IEEE Transactions on Automatic Control, Vol. AC-26, February 1981, pp 4–16. © National Instruments Corporation Appendix A Xmath Model Reduction Module Bibliography...
  • Page 122 Appendix A Bibliography J. C. Doyle. “Analysis of Feedback Systems with Structured Uncertainties.” IEEE [Doy82] Proceedings, November 1982. [DWS82] J. C. Doyle, J. E. Wall, and G. Stein. “Performance and Robustness Analysis for Structure Uncertainties,” Proceedings IEEE Conference on Decision and Control, pp. 629–636, 1982.
  • Page 123 G. Zames, “Feedback and optimal sensitivity: model reference transformations, multiplicative semi-norms, and approximate inverses,” IEEE Transactions on Automatic Control, Vol. AC-26, pp. 301–320, 1981. H. Kwakernaak and R. Sivan, Linear Optimal Control Systems, Wiley, 1972. [KS72] © National Instruments Corporation Appendix A Xmath Model Reduction Module Bibliography...
  • Page 124: Technical Support And Professional Services

    Technical Support and Professional Services Visit the following sections of the National Instruments Web site at ni.com • • • If you searched your local office or NI corporate headquarters. Phone numbers for our worldwide offices are listed at the front of this manual. You also can visit...
  • Page 125 1-10 bst, 1-5, 1-14, 3-3 compare, 1-5, 5-4 controller reduction, 4-2 with fractional representations, 4-5 © National Instruments Corporation controller robustness, 4-2 conventions used in the manual, iv diagnostic tools (NI resources), B-1 documentation conventions used in the manual, iv...
  • Page 126 2-5 Moore-Penrose pseudo-inverse, 1-6 mreduce, 1-5, 1-13, 2-10 mulhank, 1-5, 1-14, 3-14 multiplicative error, 1-1, 3-1 Xmath Model Reduction Module National Instruments support and services, B-1 NI support and services, B-1 nomenclature, 1-2 nomenclature for MRM, 1-6 numerical conditioning, 2-8...
  • Page 127 1-7 training and certification (NI resources), B-1 transfer function, allpass, 1-6 troubleshooting (NI resources), B-1 truncate, 1-5, 2-4, 2-11 © National Instruments Corporation unstable zeros, 2-3 Web resources, B-1 wtbalance, 1-5, 4-10 Xmath Model Reduction Module Index...

Table of Contents