Treść książki
Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
Przykładćwiczeniakomputerowego
m=log2(N);c=sqrt(1/N);
fork=0:N-1
kk=k;
fori=0:m-1
ki(i+1)=rem(kk,2);kk=floor(kk/2);
end
forn=0:N-1
nn=n;
fori=0:m-1
ni(i+1)=rem(nn,2);nn=floor(nn/2);
end
bHD(k+1,n+1)=c*(-1)^sum(ki.*ni);
end
%stem(bHD(k+1,1:N));title('k-tafunkcjabazowa');pause
end
%KształtfunkcjibazowychdlatransformacjiHaara
%n-tapróbkak-tejfunkcjibazowej
c=sqrt(1/N);bHR(1,1:N)=c*ones(1,N);
fork=1:N-1
p=0;
while(k+1>2^p)
p=p+1;
end
p=p-1;
q=k-2^p+1;
forn=0:N-1
x=n/N;
if(((q-1)/2^p<=x)&(x<(q-1/2)/2^p))bHR(k+1,n+1)=c*2^(p/2);
elseif(((q-1/2)/2^p<=x)&(x<q/2^p))
bHR(k+1,n+1)=-c*2^(p/2);
elsebHR(k+1,n+1)=0;
end
end
%stem(bHR(k+1,1:N));title('k-tafunkcjabazowa');pause
end
%Sprawdzenieortonormalnościwybranychfunkcjibazowych
fork=1:N
Tf(k,1:N)
Tc(k,1:N)
Ts(k,1:N)
=bf(k,1:N);
=bc(k,1:N);
=bs(k,1:N);
%zbudowaniemacierzytransformacji
%transformacjaFouriera
%transformacjakosinusowa
%transformacjasinusowa
THD(k,1:N)=bHD(k,1:N);
%transformacjaHadamarda
THR(k,1:N)=bHR(k,1:N);
%transformacjaHaara
end
T=THR;
%wybierztransformację
I=T*T'
%sprawdź,czyiloczynjestmacierządiagonalnąjednostkową
pause
%Przykładanalizy(dekompozycji)isyntezysygnału
%Generacjasygnałówtestowych
kk=2;
fi=0;
%testowy„indeks”częstotliwości,np.1.35,2,2.5,3
%przesunięciefazowe0,pi/8,pi/4,pi/2
n=0:N-1;
x1=cos((2*pi/N)*kk*n+fi);
%cz.rzeczywistabazyfourierowskiej
x2=cos(pi*kk*(2*n+1)/NN+fi);
%wektorbazykosinusowej
x3=sin(pi*(kk+1)*(n+1)/(N+1)+fi);
%wektorbazysinusowej
x4=cos((2*pi/N)*2*n+fi)+cos((2*pi/N)*4*n+fi);
x5=[ones(1,N/2)zeros(1,N/2)];
x6=[-ones(1,N/4)ones(1,N/2)-ones(1,N/4)];
x=x6;
%wybórkonkretnegosygnałudodekompozycji
T=THR;
%wybórtransformacji:Tf,Tc,Ts,THD,THR
61