# MATLAB: Index in position 1 is invalid. Array indices must be positive integers or logical values. Error in pid_optimized1 (line 17) solution(K,:) = [K a m ts];

Hi all
I am trying to run this code but I am getting an error 'Index in position 1 is invalid. Array indices must be positive integers or logical values.
Error in pid_optimized1 (line 17)
solution(K,:) = [K a m ts];'
Can someone help me to run this code.
The code is given by
clear all
clc
%Required to optimize a plant with a transfer function 4/s^3+6s^2+8s+4 with
%a PID controller whose transfer function is given by K(s+a)^2/s.
t = 0:0.01:8;
K = 0;
for K =3:0.2:5
for a =0.1:0.1:3
num =[4*K 8*K*a 4*K*a^2];
den = [1 6 8+4*K 4+8*K*a 4*K*a^2];
y = step(num,den,t);
s = 801;while y(s)>0.98&&y(s)<1.02;s = s-1;end
ts = (s-1)*0.01;%ts = settling time;
m = max(y);
if m<1.15 && m>1.10; if ts<3.00
K = K+1;
solution(K,:) = [K a m ts]; %this sorts the solution of K a m ts in a column array
end
end
end
end

t = 0:0.01:8;k = 0;for K =3:0.2:5    for a = 0.1:0.1:3        num = [4*K 8*K*a 4*K*a^2];        den = [1 6 8+4*K 4+8*K*a 4*K*a^2];          y = step(num,den,t);          s = 801;while y(s)>0.98&&y(s)<1.02;s = s-1;end        ts = (s-1)*0.01;%ts = settling time;        m = max(y);        if m < 1.15 && m > 1.10            if ts<3.00               k = k + 1;               solution(k,:) = [K a m ts]; %this sorts the solution of K a m ts in a column array            end        end    endend