LPCAR2PP LPC: Convert ar filter autocorrelation to power spectrum polynomial in cos(w) PP=(RA) pp is a polynomial such that |polyval(ra,e^jw)| = polyval(pp,cos(w))

0001 function pp=lpcra2pp(ra) 0002 %LPCAR2PP LPC: Convert ar filter autocorrelation to power spectrum polynomial in cos(w) PP=(RA) 0003 % pp is a polynomial such that |polyval(ra,e^jw)| = polyval(pp,cos(w)) 0004 0005 % Copyright (C) Mike Brookes 1998 0006 % Version: $Id: lpcra2pp.m 713 2011-10-16 14:45:43Z dmb $ 0007 % 0008 % VOICEBOX is a MATLAB toolbox for speech processing. 0009 % Home page: http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html 0010 % 0011 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0012 % This program is free software; you can redistribute it and/or modify 0013 % it under the terms of the GNU General Public License as published by 0014 % the Free Software Foundation; either version 2 of the License, or 0015 % (at your option) any later version. 0016 % 0017 % This program is distributed in the hope that it will be useful, 0018 % but WITHOUT ANY WARRANTY; without even the implied warranty of 0019 % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0020 % GNU General Public License for more details. 0021 % 0022 % You can obtain a copy of the GNU General Public License from 0023 % http://www.gnu.org/copyleft/gpl.html or by writing to 0024 % Free Software Foundation, Inc.,675 Mass Ave, Cambridge, MA 02139, USA. 0025 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0026 0027 persistent tp; 0028 [nf,p1]=size(ra); 0029 % we check here if p is the same as before and reuse the tp matrix 0030 if size(tp,1)~=p1 0031 p=p1-1; 0032 % chebyshev polynomials up to order p 0033 tp=zeros(p1,p1); 0034 tp(1,p1)=2; 0035 tp(2,p)=2; 0036 for i=3:p1 0037 tp(i,p+2-i:p)=2*tp(i-1,p+3-i:p1)-tp(i-2,p+2-i:p); 0038 tp(i,p1)=-tp(i-2,p1); 0039 end 0040 tp(1,p1)=1; 0041 end 0042 pp=ra*tp;

Generated on Tue 10-Oct-2017 08:30:10 by