nekrPower=nekrMean.^2+nekrCov;
fprintf('%25s%11.5f%11.5f\n',names{2},krPower,nekrPower);
%Равнобокая пила
krSig(3,:)=sawtooth(2*pi*F*t_kr,0.5);
nekrSig(3,:)=sawtooth(2*pi*F*t_nekr,0.5);
names{3}='Равнобокая пила';
%Математическое ожидание сигнала
krMean=mean(sawtooth(2*pi*F*t_kr,0.5));
nekrMean=mean(sawtooth(2*pi*F*t_nekr,0.5));
%Дисперсия сигнала
krCov=cov(sawtooth(2*pi*F*t_kr,0.5));
nekrCov=cov(sawtooth(2*pi*F*t_nekr,0.5));
%Мощность сигнала
krPower=krMean.^2+krCov;
nekrPower=nekrMean.^2+nekrCov;
fprintf('%25s%11.5f%11.5f\n',names{3}, krPower,nekrPower);
%Возрастающая пила
krSig(4,:)=sawtooth(2*pi*F*t_kr,1);
nekrSig(4,:)=sawtooth(2*pi*F*t_nekr,1);
names{4}='Возрастающая пила';
%Математическое ожидание сигнала
krMean=mean(sawtooth(2*pi*F*t_kr,1));
nekrMean=mean(sawtooth(2*pi*F*t_nekr,1));
%Дисперсия сигнала
krCov=cov(sawtooth(2*pi*F*t_kr,1));
nekrCov=cov(sawtooth(2*pi*F*t_nekr,1));
%Мощность сигнала
krPower=krMean.^2+krCov;
nekrPower=nekrMean.^2+nekrCov;
fprintf('%25s%11.5f%11.5f\n',names{4}, krPower,nekrPower);
%Убывающая пила
krSig(5,:)=sawtooth(2*pi*F*t_kr,0);
nekrSig(5,:)=sawtooth(2*pi*F*t_nekr,0);
names{5}='Убывающая пила';
%Математическое ожидание сигнала
krMean=mean(sawtooth(2*pi*F*t_kr,0));
nekrMean=mean(sawtooth(2*pi*F*t_nekr,0));
%Дисперсия сигнала
krCov=cov(sawtooth(2*pi*F*t_kr,0));
nekrCov=cov(sawtooth(2*pi*F*t_nekr,0));
%Мощность сигнала
krPower=krMean.^2+krCov;
nekrPower=nekrMean.^2+nekrCov;
fprintf('%25s%11.5f%11.5f\n',names{5}, krPower,nekrPower);
%Квазипериодический сигнал
krSig(6,:)=sin(2*pi*F*t_kr)+sin(2*pi*Fdop*t_kr);
nekrSig(6,:)=sin(2*pi*F*t_nekr)+sin(2*pi*Fdop*t_nekr);
names{6}='Квазипериодический сигнал';
%Математическое ожидание сигнала
krMean=mean(sin(2*pi*F*t_kr)+sin(2*pi*Fdop*t_kr));
nekrMean=mean(sin(2*pi*F*t_nekr)+sin(2*pi*Fdop*t_nekr));
%Дисперсия сигнала
krCov=cov(sin(2*pi*F*t_kr)+cos(2*pi*Fdop*t_kr));
nekrCov=cov(sin(2*pi*F*t_nekr)+cos(2*pi*Fdop*t_nekr));
%Мощность сигнала
krPower=krMean.^2+krCov;
nekrPower=nekrMean.^2+nekrCov;
fprintf('%25s%11.5f%11.5f\n',names{6},krPower,nekrPower);
%Непериодический сигнал
krSig(7,:)=1-exp(1-50*t_kr);
nekrSig(7,:)=1-exp(1-50*t_nekr);
names{7}='Непериодический сигнал';
%математическое ожидание сигнала
krMean=mean(1-exp(1-50*t_kr));
nekrMean=mean(1-exp(1-50*t_nekr));
%Дисперсия сигнала
krCov=cov(1-exp(1-50*t_kr));
nekrCov=cov(1-exp(1-50*t_nekr));
%Мощность сигнала
krPower=krMean.^2+krCov;
nekrPpower=nekrMean.^2+nekrCov;
fprintf('%25s%11.5f%11.5f\n',names{7}, krPower, nekrPower);
%кол-во сигналов
ns=7;
%Выведем наши сигналы (первые 40 мс)
t=4e-2;
n=Fd*t;
figure;
for i=1:ns
subplot(3,3,i);
plot(t_kr(1:n),krSig(i,1:n));
title(names{i});
xlabel('Время,с');
ylabel('Амплитуда');
grid on;
end;
%Расчет корреляционных характеристик
krStep=-Tkr:1/Fd:Tkr;
nekrStep=-Tnekr:1/Fd:Tnekr;
for i=1:ns
krCor(i,:)=xcorr(krSig(i,:));
nekrCor(i,:)=xcorr(nekrSig(i,:));
figure;
subplot(2,1,1);
plot(krStep,krCor(i,:));
title(names{i});
xlabel('Сдвиг по времени,с');
ylabel('Коэффициент корреляции');
subplot(2,1,2);
plot(nekrStep,nekrCor(i,:));
title(names{i});
xlabel('Сдвиг по времени,с');
ylabel('Коэффициент корреляции');
axis tight;
end;
%Мощность сигналов по корреляционной функции
kr0=Tkr*Fd+1;
nekr0=Tnekr*Fd+1;
krCP=krCor(:,kr0)/(kr0-1);
nekrCP=nekrCor(:,nekr0)/(nekr0-1);
fprintf('Мощность сигналов по корреляционной функции:\n');
fprintf('Интервал наблюдения кратный T сигнала|не кратный T\n');
for i=1:ns
fprintf('%25s%11.5f%11.5f\n',names{i}, krCP(i), nekrCP(i));
end;
%Спектральные характеристики
krFt=fft(krSig,[],2)/Nkr;
krFt=krFt(:,1:floor(Nkr/2)+1);
nekrFt=fft(nekrSig,[],2)/Nnekr;
nekrFt=nekrFt(:,1:floor(Nnekr/2)+1);
dFkr=1/Tkr;
dFnekr=1/Tnekr;
krPsd=2*krFt.*conj(krFt)/dFkr;
krPsd(:,1)=krPsd(:,1)/2;
nekrPsd=2*nekrFt.*conj(nekrFt)/dFnekr;
nekrPsd(:,1)=nekrPsd(:,1)/2;
krF=(0:floor(Tkr*Fd)/2)*dFkr;
nekrF=(0:floor(Tnekr*Fd)/2)*dFnekr;
for i=1:ns
figure;
subplot(2,2,1);
plot(krF,-10*log(abs(krFt(i,:))));
title(names{i});
xlabel('Частота,Гц');
ylabel('Амплитуда');
axis tight;
grid on;
subplot(2,2,2);
plot(nekrF,-10*log(abs(nekrFt(i,:))));
title(names{i});
xlabel('Частота,Гц');
ylabel('Амплитуда');
axis tight;
grid on;
subplot(2,2,3);
plot(krF,-10*log(krPsd(i,:)));
xlabel('Частота,Гц');
ylabel('Мощность/частота (дБ/Гц)');
grid on;
axis tight;
title('Спектральная плотность мощности');
subplot(2,2,4);
plot(nekrF,-10*log(nekrPsd(i,:)));
xlabel('Частота,Гц');
ylabel('Мощность/частота (дБ/Гц)');
grid on;
axis tight;
title('Спектральная плотность мощности');
end;
%Мощность сигналов по спектральным характеристикам
krSpectP=sum(krPsd,2)*dFkr;
nekrSpectP=sum(nekrPsd,2)*dFnekr;
fprintf('мощность сигналов по спектральным характеристикам:\n');
fprintf('кр.периоду некр.периоду\n');
for i=1:ns
fprintf('%25s%11.5f%11.5f\n',names{i}, krSpectP(i), nekrSpectP(i));
end;
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.