|
Matlab dasturida Fure tezkor almashtirish dasturi
|
bet | 2/2 | Sana | 20.05.2024 | Hajmi | 160,02 Kb. | | #246635 |
Bog'liq signallar va tizimlar 2Matlab dasturida Fure tezkor almashtirish dasturi:
clear, clc, close all
T = 30; % длительность записи (период сигнала)
tau = 3; % длительность импульса
dt = 0.01; % шаг по времени (период квантования)
w0 = 2*pi*3/tau; % частота заполнения радиоимпульса
t = 0:dt:T; % время (для построения графиков)
N = length(t); % размер массива (количество отсчётов)
% задаём сигналы
u = tu1 = tT-tau/2; % симметричный прямоугольный импульс
u2 = u.*sin(w0*t); % радиоимпульс
u3 = conv(u,u); % пилообразный импульс (свёртка)
u3 = u3(1:length(u))*dt; % стобы сохранить размерность
% определяем частоты
f = -2:0.01:2;
w = 2*pi*f;
% спектр прямоугольного сигнала (определён как функция)
Upuls=inline('tau*sin(w*tau/2)./(w*tau/2).*exp(-i*w*tau/2)',...
'w','tau');
% вычисляем спектры сигналов с помощью свойств
U = Upuls(w, tau);
U1 = exp(i*w*tau/2).*U;
U2 = (Upuls(w-w0, tau)-Upuls(w+w0, tau))/2/i;
U3 = U.^2;
% вывод результатов на графиках
% прямоцгольный импульс
figure
subplot(3,1,1)
plot(t,u,'k')
axis([0, T, -0.1 1.1])
xlabel('t, с', 'FontName', 'Arial Cyr')
ylabel('u(t)', 'FontName', 'Arial Cyr')
subplot(3,1,2)
plot(f,abs(U),'k')
axis([-1, 1, 0 tau])
xlabel('f, Гц', 'FontName', 'Arial Cyr')
ylabel('Амплитуда', 'FontName', 'Arial Cyr')
subplot(3,1,3)
plot(f,angle(U),'k')
axis([-1 1 -pi pi])
xlabel('f, Гц', 'FontName', 'Arial Cyr')
ylabel('Фаза', 'FontName', 'Arial Cyr')
% симметричный прямоугольный импульс
figure
subplot(3,1,1)
plot(t,u1,'k')
axis([0, T, -0.1 1.1])
xlabel('t, с', 'FontName', 'Arial Cyr')
ylabel('u_1(t)', 'FontName', 'Arial Cyr')
subplot(3,1,2)
plot(f,abs(U1),'k')
axis([-1, 1, 0 tau])
xlabel('f, Гц', 'FontName', 'Arial Cyr')
ylabel('Амплитуда', 'FontName', 'Arial Cyr')
subplot(3,1,3)
plot(f,angle(U1),'k')
axis([-1 1 -pi pi])
xlabel('f, Гц', 'FontName', 'Arial Cyr')
ylabel('Фаза', 'FontName', 'Arial Cyr')
% радиоимпульс
figure
subplot(3,1,1)
plot(t,u2,'k')
axis([0, T, -1.1 1.1])
xlabel('t, с', 'FontName', 'Arial Cyr')
ylabel('u_2(t)', 'FontName', 'Arial Cyr')
subplot(3,1,2)
plot(f,abs(U2),'k')
axis([-2, 2, 0 tau/2])
xlabel('f, Гц', 'FontName', 'Arial Cyr')
ylabel('Амплитуда', 'FontName', 'Arial Cyr')
subplot(3,1,3)
plot(f,angle(U2),'k')
axis([-2 2 -pi pi])
xlabel('f, Гц', 'FontName', 'Arial Cyr')
ylabel('Фаза', 'FontName', 'Arial Cyr')
% пилообразный импульс
figure
subplot(3,1,1)
plot(t,u3,'k')
axis([0, T, -0.3 3.3])
xlabel('t, с', 'FontName', 'Arial Cyr')
ylabel('u_3(t)', 'FontName', 'Arial Cyr')
subplot(3,1,2)
plot(f,abs(U3),'k')
axis([-1, 1, 0 3*tau])
xlabel('f, Гц', 'FontName', 'Arial Cyr')
ylabel('Амплитуда', 'FontName', 'Arial Cyr')
subplot(3,1,3)
plot(f,angle(U3),'k')
axis([-1 1 -pi pi])
xlabel('f, Гц', 'FontName', 'Arial Cyr')
ylabel('Фаза', 'FontName', 'Arial Cyr')
|
| |