function PTC
%% 1 пункт
figure
x=[];
y=[];
for t=-10:0.01:10
x=[x,t];
t=t/1000;
y=[y,sig(t)];
end
plot(x,y), grid
xlabel('t, мс');
ylabel('s(t), В');
title('Сигнал');
%% Спектры
figure
x=[];
y=[];
subplot(2,1,1)
for w=-15:0.01:15
x=[x,w];
w=w*1000;
y=[y,1000*S(w)];
end
plot(x,y), grid
xlabel('\omega, рад/мс');
ylabel('|S(\omega)|, В/кГц');
title('Амплитудный спектр');
%%
y=[];
subplot(2,1,2)
for w=-15:0.01:15
w=w*1000;
y=[y,fi(w)];
end
plot(x,y), grid
xlabel('\omega, рад/мс');
ylabel('\phi(\omega), \circ');
title('Фазовый спектр');
%% 2 пункт
% Sп(t)
figure
x=[];
y=[];
T=30*10^-3;
for t=-80:0.1:80
s=0;
x=[x,t];
t=t/1000;
for n=-10:10
s=s+sig(t-n*T);
end
y=[y,s];
end
plot(x,y,'LineWidth' ,2),grid
xlabel('t, мс');
ylabel('s_п(t), В');
title('Временная диаграмма периодического сигнала');
%% Спектры
figure
x=[];
y=[];
subplot(2,1,1,'xlim',[0,10])
for n=0:50
w=2*pi*n/T; %ось х мс
x=[x,w/1000];
s=2/T*S(w);
if n==0
s=s/2;
end
y=[y,s];
line([w/1000 w/1000],[0 s]);
line(w/1000, s,'marker','.','markersize' ,10)
end
hold on
plot(x,y,'--','Color',[1 0 0]);
grid,
xlabel('\omega, рад/мс');
ylabel('\{A_n\}, В');
title('Амплитудный спектр');
%%
subplot(2,1,2,'xlim',[0,10])
for n=0:50
w=2*pi*n/T;
line([w/1000 w/1000],[0 fi(w)]);
line(w/1000, fi(w),'marker','.','markersize' ,10);
end
x=[];
y=[];
for w=0:0.01:10
x=[x,w];
w=w*1000;
y=[y,fi(w)];
end
hold on
plot(x,y,'--','Color',[1 0 0]);
grid
xlabel('\omega, рад/мс');
ylabel('\{\phi_n\}, \circ');
title('Фазовый спектр');
%% Апроксимация n=10
figure
x=[];
y=[];
subplot(3,1,1)
for t=-15:0.01:15
x=[x,t];
t=t/1000;
s=2/15;
for n=1:10
w=2*pi*n/T; %ось х мс
s=s+2/T*S(w)*cos(w*t+pi/180*fi(w));
end
y=[y,s];
end
plot(x,y)
grid
xlabel('t, мс');
ylabel('s_п(t), В');
title('n=10');
%% n=25
x=[];
y=[];
subplot(3,1,2)
for t=-15:0.01:15
x=[x,t];
t=t/1000;
s=2/15;
for n=1:25
w=2*pi*n/T; %ось х мс
s=s+2/T*S(w)*cos(w*t+pi/180*fi(w));
end
y=[y,s];
end
plot(x,y)
grid
xlabel('t, мс');
ylabel('s_п(t), В');
title('n=25');
%% n=50
x=[];
y=[];
subplot(3,1,3)
for t=-15:0.01:15
x=[x,t];
t=t/1000;
s=2/15;
for n=1:50
w=2*pi*n/T; %ось х мс
s=s+2/T*S(w)*cos(w*t+pi/180*fi(w));
end
y=[y,s];
end
plot(x,y)
grid
xlabel('t, мс');
ylabel('s_п(t), В');
title('n=50');
%% 3 пункт
figure
x=[];
y=[];
v=[];
w=20000;
for t=-5:0.001:5
x=[x,t];
t=t/1000;
y=[y,sig(t)*cos(w*t)];
v=[v,sig(t)];
end
hold on;
plot(x,y),grid
plot(x,v,'--','Color',[1 0 0])
plot(x,-v,'--','Color',[1 0 0])
xlabel('t, мс');
ylabel('u(t), В');
title('Временная диаграмма непериодического радиосигнала');
%% положительные частоты
figure
x=[];
y=[];
subplot(2,1,1)
for w=490:0.001:510
x=[x,w];
w=w*1000;
y=[y,500*S(w-500000)];
end
plot(x,y), grid
xlabel('\omega, рад/мс');
ylabel('|U(\omega)|, В/кГц');
title('Амплитудный спектр');
%%
y=[];
subplot(2,1,2)
for w=490:0.001:510
w=w*1000;
y=[y,fi(w-500000)];
end
plot(x,y), grid
xlabel('\omega, рад/мс');
ylabel('\phi_U(\omega), \circ');
title('Фазовый спектр');
%% отрицательные частоты
figure
x=[];
y=[];
subplot(2,1,1)
for w=-510:0.001:-490
x=[x,w];
w=w*1000;
y=[y,500*S(w+500000)];
end
plot(x,y), grid
xlabel('\omega, рад/мс');
ylabel('|U(\omega)|, В/кГц');
title('Амплитудный спектр');
%%
y=[];
subplot(2,1,2)
for w=-510:0.001:-490
w=w*1000;
y=[y,fi(w+500000)];
end
plot(x,y), grid
xlabel('\omega, рад/мс');
ylabel('\phi_U(\omega), \circ');
title('Фазовый спектр');
%% 4 пункт
% Sп(t)
figure
x=[];
y=[];
v=[];
s1=0;
s2=0;
w0=15000;
for t=-40:0.001:40
x=[x,t];
t=t/1000;
for n=-1:1
s1=s1+sig(t-n*T)*cos(w0*t);
s2=s2+sig(t-n*T);
end
y=[y,s1];
v=[v,s2];
s1=0;
s2=0;
end
hold on
plot(x,y),grid
plot(x,v,'--','Color',[1 0 0])
plot(x,-v,'--','Color',[1 0 0])
xlabel('t, мс');
ylabel('u_п(t), В');
title('Временная диаграмма периодического радиосигнала');
%% Спектры пачки радиоимпульсов
figure
x=[];
y=[];
subplot(2,1,1,'xlim',[490 510])
for n=-50:50
w=2*pi*n/T; %ось х мс
x=[x,w/1000+500];
y=[y,1/T*S(w)];
line([w/1000+500 w/1000+500],[0 1/T*S(w)]);
line(w/1000+500, 1/T*S(w),'marker','.','markersize' ,10)
end
hold on
plot(x,y,'--','Color',[1 0 0]);
grid,
xlabel('\omega, рад/мс');
ylabel('\{V_n\}, В');
title('Амплитудный спектр');
%%
x=[];
y=[];
subplot(2,1,2,'xlim',[490 510])
for n=-50:50
w=2*pi*n/T; %ось х мс
x=[x,w/1000+500];
y=[y,fi(w)];
line([w/1000+500 w/1000+500],[0 fi(w)]);
line(w/1000+500, fi(w),'marker','.','markersize' ,10);
end
x=[];
y=[];
for w=-10:0.01:10
x=[x,w+500];
w=w*1000;
y=[y,fi(w)];
end
hold on
plot(x,y,'--','Color',[1 0 0]);
grid
xlabel('\omega, рад/мс');
ylabel('\{\psi_n\}, \circ');
title('Фазовый спектр');
%% 5 пункт
%АКФ
figure
x=[];
y=[];
for t=-10:0.01:10
x=[x,t];
t=t/1000;
y=[y,1000*R(t)];
end
plot(x,y), grid
xlabel('\tau, мс');
ylabel('R_s(\tau), В^2мc');
title('Автокорелляционная функция сигнала');
%% АКФ радиоимпульса
figure
x=[];
y=[];
for t=-10:0.01:10
x=[x,t];
t=t/1000;
y=[y,1/2*1000*R(t)*cos(w0*t)];
end
hold on;
plot(x,y), grid
x=[];
y=[];
for t=-10:0.01:10
x=[x,t];
t=t/1000;
y=[y,1/2*1000*R(t)];
end
plot(x,y,'--','Color',[1 0 0]);
plot(x,-y,'--','Color',[1 0 0]);
xlabel('\tau, мс');
ylabel('R_u(\tau), В^2мc');
title('Автокорелляционная функция радиосигнала');
%% 6 пункт
% ачх фчх
figure
x=[];
y=[];
subplot(2,1,1)
for wt=-5:0.01:5
x=[x,wt];
y=[y,(1/36*wt^2/(1+wt^2))^0.5];
end
plot(x,y), grid
xlabel('\omega\tau, рад');
ylabel('|H(\omega)|');
title('АЧХ');
%%
y=[];
subplot(2,1,2)
for wt=-5:0.01:5
y=[y,(180/pi)*(pi/2*sign(wt)-atan(wt))];
end
plot(x,y), grid
xlabel('\omega\tau, рад');
ylabel('\phi_H(\omega), \circ');
title('ФЧХ');
%% ИХ ПХ g1
figure
x=[];
y=[];
subplot(3,1,1)
for t=0:0.001:1
x=[x,t];
t=t/1000;
y=[y,(-1/(6*0.0002)*sigma(t)*exp(-t/0.0002))/1000];
end
plot(x,y,'LineWidth' ,2)
grid
xlabel('t, мс');
ylabel('h(t), мс^-1');
title('Импульсная характеристика');
%% ПХ
x=[];
y=[];
subplot(3,1,2)
for t=0:0.001:1
x=[x,t];
t=t/1000;
y=[y,g(t)];
end
plot(x,y,'LineWidth' ,2)
grid
xlabel('t, мс');
ylabel('g(t)');
title('Переходная характеристика');
%% Реакция на лин нар возд
x=[];
y=[];
subplot(3,1,3)
for t=0:0.001:1
x=[x,t];
t=t/1000;
y=[y,(1/6*0.0002*(1-exp(-t/0.0002)))];
end
plot(x,y,'LineWidth' ,2)
grid
xlabel('t, мс');
ylabel('g_1(t)');
title('g_1(t)');
%% Запаздывание
figure
x=[];
y=[];
for t=-2:0.001:8
x=[x,t];
t=t/1000;
y=[y,sig(t-0.002)];
end
plot(x,y,'LineWidth' ,2)
grid
xlabel('t, мс');
ylabel('s_з(t), В');
title('Запаздывающий сигнал');
%% uвх
figure
x=[];
y=[];
for t=-2:0.001:8
x=[x,t];
t=t/1000;
s=sigma(t)-sigma(t-0.002)+sigma(t-0.004)-sigma(t-0.006);
y=[y,s];
end
plot(x,y,'LineWidth' ,1)
grid
xlabel('t, мс');
ylabel('u_{вых}(t), В');
title('Cигнал на входе цепи');
%% uвых
figure
x=[];
y=[];
for t=0:0.001:8
x=[x,t];
t=t/1000;
s=g(t)-g(t-0.002)+g(t-0.004)-g(t-0.006);
y=[y,s];
end
plot(x,y,'LineWidth' ,1)
grid
xlabel('t, мс');
ylabel('u_{вых}(t), В');
title('Cигнал на выходе цепи');
end
%%
function f=S(w)
t1=0.002;
f=2*t1*abs(sinc(w*t1/2)*cos(w*t1));
end
%%
function f=fi(w)
t1=0.002;
f=(180/pi)*(pi/2*(1-sign(sinc(w*t1/2)*cos(w*t1)))*sign(w)-w*t1/2);
end
%%
function f=sig(t)
t1=0.002;
f=(rect((t+t1/2)/t1)+rect((t-3*t1/2)/t1));
end
%%
function f=R(t)
t1=0.002;
f=(2*t1*(1-abs(t)/t1)*rect(t/(2*t1))+t1*(1-abs(abs(t)-2*t1)/t1)*rect((abs(t)-2*t1)/(2*t1)));
end
%%
function f=g(t)
f=1/6*sigma(t)-1/6*sigma(t)*(1-exp(-t/0.0002));
end
%%
function S=sigma(x)
if x<0
S=0;
else
S=1;
end
end
%%
function S=rect(x)
if abs(x)>0.5
S=0;
end
if abs(x)<0.5
S=1;
end
if abs(x)==0.5
S=0.5;
end
end
%%
function S=sinc(x)
if x==0
S=1;
else
S=sin(x)/x;
end
end
%%
function S=sign(x)
if x<0
S=-1;
end
if x>0
S=1;
end
if x==0
S=0;
end
end