《DSP using MATLAB》示例Example5.16

代码:

x1 = [1,2,2,1]; x2 = [1,-1,-1,1];
x3 = conv(x1,x2);             % N = 5

n1 = 0:1:length(x1)-1;
n2 = 0:1:length(x2)-1;

n3 = 0:1:length(x3)-1;

%% -----------------------------------------------------------------
%%                  START   a
%% -----------------------------------------------------------------
figure(‘NumberTitle‘, ‘off‘, ‘Name‘, ‘Exameple5.16a ‘)
set(gcf,‘Color‘,‘white‘);
subplot(3,1,1); stem(n1,x1); title(‘sequence x1(n)‘); axis([0,5,0,5]);
xlabel(‘n‘); ylabel(‘x1(n)‘); grid on;
subplot(3,1,2); stem(n2,x2); title(‘sequence x2(n)‘); axis([0,5,0,5]);
xlabel(‘n‘); ylabel(‘x2(n)‘); grid on;
subplot(3,1,3); stem(n3,x3); title(‘Linear Convolution sequence x3(n)‘); axis([0,10,-3,5]);
xlabel(‘n‘); ylabel(‘x3(n)‘); grid on;

%% -----------------------------------------------------------------
%%                  END   a
%% -----------------------------------------------------------------

x4 = circonvt(x1,x2,7);            % N = 7

n4 = 0:1:length(x4)-1;

%% -----------------------------------------------------------------
%%                  START   b
%% -----------------------------------------------------------------
figure(‘NumberTitle‘, ‘off‘, ‘Name‘, ‘Exameple5.16b ‘)
set(gcf,‘Color‘,‘white‘);
subplot(3,1,1); stem(n1,x1); title(‘sequence x1(n)‘); axis([0,5,0,5]);
xlabel(‘n‘); ylabel(‘x1(n)‘); grid on;
subplot(3,1,2); stem(n2,x2); title(‘sequence x2(n)‘); axis([0,5,0,5]);
xlabel(‘n‘); ylabel(‘x2(n)‘); grid on;
subplot(3,1,3); stem(n4,x4); title(‘Circularly convolution sequence x4(n)‘); axis([0,10,-3,5]);
xlabel(‘n‘); ylabel(‘x4(n)‘); grid on;

%% -----------------------------------------------------------------
%%                  END   b
%% -----------------------------------------------------------------

  运行结果:

时间: 2024-10-13 17:39:46

《DSP using MATLAB》示例Example5.16的相关文章

DSP using MATLAB示例Example3.16

代码: b = [0.0181, 0.0543, 0.0543, 0.0181]; % filter coefficient array b a = [1.0000, -1.7600, 1.1829, -0.2781]; % filter coefficient array a m = 0:length(b)-1; l = 0:length(a)-1; % index arrays m and l K = 500; k = 0:1:K; % index array k for frequenci

DSP using MATLAB 示例Example3.21

代码: % Discrete-time Signal x1(n) % Ts = 0.0002; n = -25:1:25; nTs = n*Ts; Fs = 1/Ts; x = exp(-1000*abs(nTs)); Ts = 0.001; n = -5:1:5; nTs = n*Ts; Fs = 1/Ts; x = exp(-1000*abs(nTs)); % Analog Signal Dt = 0.00005; t = -0.005:Dt:0.005; xa = x * sinc(Fs*

DSP using MATLAB示例Example3.18

代码: % Analog Signal Dt = 0.00005; t = -0.005:Dt:0.005; xa = exp(-1000*abs(t)); % Continuous-time Fourier Transform Wmax = 2*pi*2000; K = 500; k = 0:1:K; % index array k for frequencies W = k*Wmax/K; % freqency between 0 and +pi, [0,pi] axis divided i

DSP using MATLAB 示例 Example3.19

代码: % Analog Signal Dt = 0.00005; t = -0.005:Dt:0.005; xa = exp(-1000*abs(t)); % Discrete-time Signal Ts = 0.0002; n = -25:1:25; x = exp(-1000*abs(n*Ts)); % Discrete-time Fourier Transform %Wmax = 2*pi*2000; K = 500; k = 0:1:K; w = pi*k/K; % index ar

DSP using MATLAB 示例 Example3.15

上代码: subplot(1,1,1); b = 1; a = [1, -0.8]; n = [0:100]; x = cos(0.05*pi*n); y = filter(b,a,x); figure('NumberTitle', 'off', 'Name', 'Input and Output sequence'); set(gcf,'Color','white'); subplot(2,1,1); stem(n,x); title('Input sequence'); xlabel('n'

DSP using MATlAB 示例Example2.10

上代码 % noise sequence 1 x = [3, 11, 7, 0, -1, 4, 2]; nx = [-3:3]; % given signal x(n) [y,ny] = sigshift(x,nx,2); % obtain x(n-2) set(gcf,'Color','white') subplot(2,1,1);stem(nx,x); title('sequence x(n)'); xlabel('n');ylabel('x(n)'); grid on subplot(2,

DSP using MATLAB 示例Example3.17

DSP using MATLAB示例Example3.6

代码: n = [-5:5]; x = (-0.9).^n; % x(n) = k = -200:200; w = (pi/100)*k; % [0,pi] axis divided into 101 points. X = x * (exp(-j*pi/100)) .^ (n'*k); magX = abs(X); angX = angle(X); realX = real(X); imagX = imag(X); set(gcf,'Color','white'); subplot(2,2,1

DSP using MATLAB 示例Example2.12

代码: b = [1]; a = [1, -0.9]; n = [-5:50]; h = impz(b,a,n); set(gcf,'Color','white'); %subplot(2,1,1); stem(n,h); title('Impulse Response'); xlabel('n'); ylabel('h(n)'); grid on; x = stepseq(0, -5, 50) - stepseq(10, -5, 50) y = filter(b, a, x); figure;