LQG loop transfer-function recovery (LTR) control synthesis
[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)
[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.
LQ full-state-feedback gain matrix
plant noise intensity,
or, if OPT='OUTPUT' state-cost matrix XI=Q,
sensor noise intensity
or, if OPT='OUTPUT' control-cost matrix THETA=R,
vector containing a set of recovery gains
(optional) vector of frequencies (to be used for plots); if input W is not supplied, then a reasonable default is used
K(s) — LTI LTR (loop-transfer-recovery) output-feedback, for the last element of RHO (i.e., RHO(end))
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)]
frequencies for SVL plots, same as W when present
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);
See also ltrdemo
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)
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
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 where Σ satisfies the Kalman filter Riccati equation . See  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.
 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.