Accelerating the pace of engineering and science

# ltrsyn

LQG loop transfer-function recovery (LTR) control synthesis

## Syntax

```[K,SVL,W1] = ltrsyn(G,F,XI,THETA,RHO)
[K,SVL,W1] = ltrsyn(G,F,XI,THETA,RHO,W)
[K,SVL,W1] = ltrsyn(G,F,XI,THETA,RHO,OPT)
[K,SVL,W1] = ltrsyn(G,F,XI,THETA,RHO,W,OPT)
```

## Description

[K,SVL,W1] = ltrsyn(G,F,XI,TH,RHO) computes a reconstructed-state output-feedback controller K for LTI plant G so that K*G asymptotically recovers plant-input full-state feedback loop transfer function L(s) = F(Is–A)–1B+D; that is, at any frequency w>0, max(sigma(K*G-L, w))→0 as ρ→ ∞, where L= ss(A,B,F,D) is the LTI full-state feedback loop transfer function.

[K,SVL,W1] = ltrsyn(G,F1,Q,R,RHO,'OUTPUT') computes the solution to the `dual' problem of filter loop recovery for LTI plant G where F is a Kalman filter gain matrix. In this case, the recovery is at the plant output, and max(sigma(G*K-L, w))→0 as ρ→∞, where L1 denotes the LTI filter loop feedback loop transfer function L1= ss(A,F,C,D).

Only the LTI controller K for the final value RHO(end)is returned.

Inputs

G

LTI plant

F

LQ full-state-feedback gain matrix

XI

plant noise intensity,

or, if OPT='OUTPUT' state-cost matrix XI=Q,

THETA

sensor noise intensity

or, if OPT='OUTPUT' control-cost matrix THETA=R,

RHO

vector containing a set of recovery gains

W

(optional) vector of frequencies (to be used for plots); if input W is not supplied, then a reasonable default is used

Outputs

K

K(s) — LTI LTR (loop-transfer-recovery) output-feedback, for the last element of RHO (i.e., RHO(end))

SVL

sigma plot data for the recovered loop transfer function if G is MIMO or, for SISO G only, Nyquist loci SVL = [re(1:nr) im(1:nr)]

W1

frequencies for SVL plots, same as W when present

## Examples

```s=tf('s');G=ss(1e4/((s+1)*(s+10)*(s+100)));[A,B,C,D]=ssdata(G);
F=lqr(A,B,C'*C,eye(size(B,2)));
L=ss(A,B,F,0*F*B);
XI=100*C'*C; THETA=eye(size(C,1));
RHO=[1e3,1e6,1e9,1e12];W=logspace(-2,2);
nyquist(L,'k-.');hold;
[K,SVL,W1]=ltrsyn(G,F,XI,THETA,RHO,W);
```

## Limitations

The ltrsyn procedure may fail for non-minimum phase plants. For full-state LTR (default OPT='INPUT'), the plant should not have fewer outputs than inputs. Conversely for filter LTR (when OPT='OUTPUT'), the plant should not have fewer inputs than outputs. The plant must be strictly proper, i.e., the D-matrix of the plant should be all zeros. ltrsyn is only for continuous time plants (Ts==0)

expand all

### Algorithms

For each value in the vector RHO, [K,SVL,W1] = ltrsyn(G,F,XI,THETA,RHO) computes the full-state-feedback (default OPT='INPUT') LTR controller

$K\left(s\right)=\left[{K}_{c}{\left(Is-A+B{K}_{c}+{K}_{f}C-{K}_{f}D{K}_{c}\right)}^{-1}{K}_{f}\right]$

where Kc = F and Kf = lqr(A',C',XI+RHO(i)*B*B',THETA). The "fictitious noise" term RHO(i)*B*B' results in loop-transfer recovery as RHO(i) → ∞. The Kalman filter gain is ${K}_{f}=\sum {C}^{T}{\Theta }^{-1}$ where Σ satisfies the Kalman filter Riccati equation $0=\sum {A}^{T}+A\sum -\sum {C}^{T}{\Theta }^{-1}C\sum +\Xi +\rho B{B}^{T}$. See [1] for further details.

Similarly for the 'dual' problem of filter loop recovery case, [K,SVL,W1] = ltrsyn(G,F,Q,R,RHO,'OUTPUT') computes a filter loop recovery controller of the same form, but with Kf = F is being the input filter gain matrix and the control gain matrix Kc computed as Kc = lqr(A,B,Q+RHO(i)*C'*C,R).

Example of LQG/LTR at Plant Output.

## References

[1] Doyle, J., and G. Stein, "Multivariable Feedback Design: Concepts for a Classical/Modern Synthesis," IEEE Trans. on Automat. Contr., AC-26, pp. 4-16, 1981.