%   Script NICHTMIN.M
%
%   Trajektorie eines nichtminimalphasigen Systems
%
% J. Lunze
% 29.10.1995
% für 2. Auflage: 1.11.1998
% für 3. Auflage: 3.4.2001
% für 4. Auflage: 18.9.2003
% für 5. Auflage: 18.4.2005
% für 6. Auflage: 4.12.2006
% für 7. Auflage: 23.5.2008
% für 8. Auflage: 5.1.2010
% für 9. Auflage: 15.2.2012
% für 10. Auflage: 27.1.2014
% für 12. Auflage: 3.07.2019
%
%   
clear
close all
z=[2];
n=[1 2 10];
System=tf(z, n);
za=[-2 1];
na=[2 1];
Systema=tf(za, na);
System2=series(System, Systema);

%%  Übergangsfunktion eines minimalphasigen und
%   eines nichtminimalphasigen
%   Systems zweiter Ordnung
% 
figure(1);
subplot(3, 1, [1,2]);
[Yn, T, Xn]=step(System2);
[Y, T, X]=step(System, T);
plot(T, Y, 'b', T, Yn, 'b', [0 10],[0 0],'k:');
%axis([0 8 0 1.5]);
latexxlabel('$$t$$');
latextext(0.8, 0.15, 'minimalphasig');
latextext(1.8, -0.05, 'nichtminimalphasig');
latexylabel('$$h$$');
rotateY;
latextitle('Minimalphasiges und nichtminimalphasiges System');
axis([0 10 -0.2 0.3]);
xticks([0 2 4 6 8 10]);
yticks([-0.2 -0.1 0 0.1 0.2 0.3]);
 

%%   Bodediagramm eines Allpassgliedes
%
figure(2);
T=1;
z=[-T 1];
n=[T 1];
W=logspace(-1, 1, 100);
Allpass=tf(z, n);
bode(Allpass, W);
for k=1:length(W)
    Betrag(k,1)=0;
    Phase(k,1)=atan((2*W(k)*T)/(W(k)*W(k)-1))*360/2/pi;   % Umrechnung in Grad
    if Phase(k,1)>0
       Phase(k,1)=Phase(k,1)-180;            % Umrechnung auf negative Phase
    end
end;
subplot(2, 1, 1);
semilogx(W, Betrag, 'b');
%axis([0.1 10 -50 50]);
latexylabel('$$|G_{\rm A}|$$ in dB');
yticks([-1 0 1]);
rotateY;
xleer;
grid('on');
latextitle('Allpassglied');
hold off
%
subplot(2, 1, 2);
semilogx(W, Phase, 'b');
hold on
grid('on');
latexylabel('$$\phi_{\rm A}$$ in Grad');
rotateY;
yticks([-180 -90 0]);
latexxlabel('$$\omega$$ in rad/s');
axis([0.1 10 -180 0]);
xticks([0.1 1 10]);
yticks([-180 -90 0]);
hold off



%% Herstellung der Bilddateien *.eps
%
Epsbildc15('nichtmi');
