(→Plots) |
|||
Line 132: | Line 132: | ||
Contact information: |
Contact information: |
||
− | '' [[User: |
+ | '' [[User:Ionita]] 14:38, 29 November 2011 (UTC) '' |
Revision as of 15:20, 16 November 2012
Introduction
On this page you will find a synthetic parametric model for which one can easily experiment with different system orders , values of the parameter
, as well as different poles and residues.
Also, the decay of the Hankel singular values can be changed indirectly through the parameter .
Model description
The parameter scales the real part of the system poles, that is,
.
For a system in pole-residue form
we can write down the state-space realization
with system matrices defined as
Notice that the system matrices have complex entries.
For simplicity, assume that is even,
, and that all system poles are complex and ordered in complex conjugate pairs, i.e.
and the residues also form complex conjugate pairs
Then a realization with matrices having real entries is given by
with ,
,
,
.
Numerical values
We construct a system of order . The numerical values for the different variables are
equally spaced in
,
equally spaced in
,
,
,
.
In MATLAB, the system matrices are easily formed as follows:
n = 100;
a = -linspace(1e1,1e3,n/2).'; b = linspace(1e1,1e3,n/2).';
c = ones(n/2,1); d = zeros(n/2,1);
aa(1:2:n-1,1) = a; aa(2:2:n,1) = a;
bb(1:2:n-1,1) = b; bb(2:2:n-2,1) = 0;
Ae = spdiags(aa,0,n,n);
A0 = spdiags([0;bb],1,n,n) + spdiags(-bb,-1,n,n);
B = 2*sparse(mod([1:n],2)).';
C(1:2:n-1) = c.'; C(2:2:n) = d.'; C = sparse(C);
The above system matrices are also available in MatrixMarket format Synth_matrices.tar.gz.
Plots
We plot the frequency response and poles for parameter values
.
In MATLAB, the plots are generated using the following commands:
r(1:2:n-1,1) = c+1j*d; r(2:2:n,1) = c-1j*d;
ep = [1/50; 1/20; 1/10; 1/5; 1/2; 1]; % parameter epsilon
jw = 1j*linspace(0,1.2e3,5000).'; % frequency grid
for j = 1:length(ep)
p(:,j) = [ep(j)*a+1j*b; ep(j)*a-1j*b]; % poles
[jww,pp] = meshgrid(jw,p(:,j));
Hjw(j,:) = (r.')*(1./(jww-pp)); % freq. resp.
end
figure, loglog(imag(jw),abs(Hjw),'LineWidth',2)
axis tight, xlim([6 1200])
xlabel('frequency (rad/sec)')
ylabel('magnitude')
title('Frequency response for different \epsilon')
figure, plot(real(p),imag(p),'.')
title('Poles for different \epsilon')
Other interesting plots result for small values of the parameter. For example, for , the peaks in the frequency response become more pronounced, since the poles move closer to the imaginary axis.
Next, for , we also plot the decay of the Hankel singular values. Notice that for small values of the parameter, the decay of the Hankel singular values is very slow.
Contact information:
Antonio Cosmin Ionita 14:38, 29 November 2011 (UTC)