function [ Arev, Brev ] = spectralrev( A, B )
%[Arev,Brev] = SPECTRALREV( A, B )
%SPECTRALREV vykoná transformáciu filtru metódou spektrálnej reverzie
%Vstupy:    A - vektor koeficientov menovateľa prenosu
%           B - vektor koeficientov čitateľa prenosu
%Výstup:    Arev - vektor koeficientov menovateľa transformovaného prenosu
%           Brev - vektor koeficientov čitateľa transformovaného prenosu
%[1] https://tomroelandts.com/articles/spectral-reversal-to-create-a-high-pass-filter

if nargin <2
   B = []; 
end

assert(isnumeric(B)==1,'Čitateľ prenosu musí pozostávať z číselných hodnôt');
assert(isnumeric(A)==1,'Menovateľ prenosu musí pozostávať z číselných hodnôt');

%% SPEKTRALNA REVERZIA [1]

Arev = zeros(1,length(A));
Brev = zeros(1,length(B));

for i=1:length(A)
    Arev(i) = (-1)^(i+1)*A(i);
end
for i=1:length(B)
    Brev(i) = (-1)^(i+1)*B(i);
end

end