%図13.9
%
clear all; close all;

%伝達関数の分子・分母多項式を与える
num = [ 0 0 1 ]; %分子多項式
den = [ 1 1.1 0.1 ]; %分母多項式

%コントローラの分子・分母多項式を与える.
numc1 = [ 0 1 ]; %K_i=1の場合の分子多項式
numc2 = [ 0 0.08 ]; %K_i=0.08の場合の分子多項式
denc = [ 1 0 ]; %分母多項式

%制御対象とコントローラの伝達関数表現を与える
sys = tf( num, den ); %制御対象の伝達関数表現
c1 = tf( numc1, denc ); %K_i=1の場合のコントローラの伝達関数表現
c2 = tf( numc2, denc ); %K_i=0.08の場合のコントローラの伝達関数表現

%開ループ伝達関数を求める
sysL1 = c1*sys; %K_i=1の場合の開ループ伝達関数
sysL2 = c2*sys; %K_i=0.08の場合の開ループ伝達関数

%図13.9(a)のプロット
subplot(1,3,1) %複数の図を並べるためのコマンド.1行3列の1列目という意味
nyquist(sysL1) %ベクトル軌跡のプロット(ナイキスト線図)
xlim([-15,0]) %横軸(実軸)の範囲の指定
ylim([-1 1]) %縦軸(虚軸)の範囲の指定
title('K = 1') %タイトルの表示

%図13.9(b)のプロット
subplot(1,3,2) %複数の図を並べるためのコマンド.1行3列の2列目という意味
nyquist(sysL2) %ベクトル軌跡のプロット(ナイキスト線図)
xlim([-15,0]) %横軸(実軸)の範囲の指定
ylim([-1 1]) %縦軸(虚軸)の範囲の指定
title('K = 0.08') %タイトルの表示

%図13.9(c)のプロット
subplot(1,3,3) %複数の図を並べるためのコマンド.1行3列の3列目という意味
nyquist(sysL2) %ベクトル軌跡のプロット(ナイキスト線図)
xlim([-1.5,0]) %横軸(実軸)の範囲の指定
ylim([-1 1]) %縦軸(虚軸)の範囲の指定
title('K = 0.08 (enlarged view)') %タイトルの表示