function [xband]=filter_band_7_ideal_func(x,koef)
% === filter_band_7_ideal_func.m === полос. филь-ция 7 идеальн. ф-трами ===
% x - процесс на входе гребнки фильтров
% koef - коэф-ты усиления в канале каждого фильтра
% xband - 7 сигналов на выходе гребенки фильтров
Fs = 22050;                                 % частота дискретиз.
fn = [90 180 355 710 1400 2800 5600];       % нижн. граница полосы
fv = [180 355 710 1400 2800 5600 11000];    % верхн. граница полосы
nfft = length(x);                           % длина сигнала в выборках
if mod(nfft,2) == 1
    nfft = nfft+1;                          % nfft д.б. четным
end
df = Fs/nfft;                               % шаг по частоте
nfn = round(fn/df)+1;                       % нижн. граница полосы выборк.
nfv = round(fv/df)+2;                       % верхн. граница полосы выборк.
xband = zeros(nfft,7);
for k = 1:7
    for n = 1:length(x)
        xband(n,k) = x(n);
    end
end

% === фильтры ===
fltrs = zeros(nfft,7);                      % область для АЧХ фильтров
for k = 1:7
    nfnk = nfn(k);
    nfvk = nfv(k);
    for n = 1:nfft
        if (n>=nfnk)&&(n<=nfvk)||(n>=nfft+2-nfvk)&&(n<=nfft+2-nfnk)
            fltrs(n,k) = koef(k);
        end
    end
end
% === фильтрация ===
    xband = ifft(fft(xband,nfft).*fltrs,nfft);

end