bannerbanner
Энергетический расчет канала дальней тропосферной радиосвязи (Программа для ЭВМ)
Энергетический расчет канала дальней тропосферной радиосвязи (Программа для ЭВМ)

Полная версия

Энергетический расчет канала дальней тропосферной радиосвязи (Программа для ЭВМ)

Настройки чтения
Размер шрифта
Высота строк
Поля
На страницу:
2 из 2

if error==0;

if tipcan==2;

if Tm==1

LK_data_AM();

elseif Tm==2

LK_data_ChM();

elseif Tm==3

LK_data_FM();

elseif Tm==4

LK_data_OFT();

elseif Tm==5

LK_data_OFDM();

end

elseif tipcan==1;

LK_data_v02();

end

end

function edit19_Callback(hObject, eventdata, handles)

function edit19_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white');

end

function edit20_Callback(hObject, eventdata, handles)

function edit20_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white');

end

function listbox2_Callback(hObject, eventdata, handles)

function listbox2_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white');

end

function edit15_Callback(hObject, eventdata, handles)

function edit15_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white');

end

function edit16_Callback(hObject, eventdata, handles)

function edit16_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white');

end

function listbox3_Callback(hObject, eventdata, handles)

function listbox3_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white');

end

function radiobutton1_Callback(hObject, eventdata, handles)

function radiobutton2_Callback(hObject, eventdata, handles)

function edit23_Callback(hObject, eventdata, handles)

function edit23_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white');

end

function edit24_Callback(hObject, eventdata, handles)

function edit24_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white');

end


LbZam.m

function [ Lbz ] = Lbzam(Tpr,n)

if n==1

Lbz=abs(20*log10(0.8414*sqrt(-2*log(Tpr/100))));

elseif n==2

pp2.form='pp';

pp2.breaks=[50 70 80 90 95 98 99 99.5000 99.9000 99.9900];

pp2.coefs=[3.84210275826828e-05,0,0.0796329235178138,-3.70000622094116;-8.80037940540999e-05,0.00230526165496097,0.125738156617033,-1.79997952992342;0.000378860333770322,-0.000334852166662026,0.145442251500023,-0.400075592311095;0.00209556468655813,0.0110309578464476,0.252403308297879,1.39972203979325;0.00544230028577507,0.0424644281448196,0.519880238254215,3.19945811326360;1.31340755735463,0.0914451307167953,0.921608914839060,5.28822078904555;-0.630095933072249,4.03166780278070,5.04472184833655,7.61468239195604;-1.03894174768381,3.08652390317233,8.60381770131306,11.0661982751855;-6.81405113315541,1.83979380595174,10.5743447849627,14.9350769083666;];

pp2.pieces=9;

pp2.order=4;

pp2.dim=1;

Lbz=ppval(pp2,Tpr);

elseif n==4

pp4.form='pp';

pp4.breaks=[50 70 80 90 95 98 99 99.5000 99.9000 99.9900];

pp4.coefs=[3.66286868444963e-05,0,0.0453526263896390,-6.20001612140725;-0.000113102179577539,0.00219772121066978,0.0893070506030345,-4.99993409885850;0.000326883867208858,-0.00119534417665639,0.0993308209431684,-4.00019365133871;-0.000727365934956800,0.00861117183960936,0.173489097572698,-2.79953599236381;0.0168400327937770,-0.00229931718474264,0.205048370847032,-1.80773195037969;0.604392422407672,0.149260977959251,0.645933353170556,-0.758599807069293;-0.397553159541230,1.96243824518227,2.75763257631207,0.640986946468185;-0.762714404274230,1.36610850587042,4.42190595183842,2.46071865097713;-1.66981933607921,0.450851220741332,5.14868984248313,4.39924467077825;];

pp4.pieces=9;

pp4.order=4;

pp4.dim=1;

Lbz=ppval(pp4,Tpr);

end

end


Lzam.m

function [ Lz ] = Lzam(x, n, sigma)

if n==1

if sigma==3

a1=8.876e15;

b1=142.9;

c1=7.333;

a2=0;

b2=1;

c2=1;

a3=123.4;

b3=164.9;

c3=46.83;

elseif sigma==4

a1=7.495e15;

b1=141.8;

c1=7.16;

a2=0;

b2=1;

c2=1;

a3=115;

b3=166.9;

c3=49.85;

elseif sigma==5

a1=1.303e16;

b1=138.8;

c1=6.584;

a2=234.6;

b2=184.3;

c2=54.24;

a3=0;

b3=1;

c3=1;

elseif sigma==6

a1=8.011e14;

b1=117.5;

c1=3.09;

a2=5.627;

b2=100.5;

c2=2.282;

a3=39.18;

b3=137.5;

c3=45.42;

elseif sigma==7

a1=3.08e15;

b1=130.4;

c1=5.274;

a2=35.63;

b2=59.72;

c2=25.03;

a3=74.15;

b3=123.8;

c3=21.46;

end

elseif n==2

if sigma==3

a1=3.634;

b1=100.1;

c1=0.2605;

a2=1.424e15;

b2=181.3;

c2=14.05;

a3=7302;

b3=231.9;

c3=50.68;

elseif sigma==4

a1=234;

b1=100.8;

c1=0.4421;

a2=6.382e16;

b2=179.1;

c2=12.98;

a3=1615;

b3=219;

c3=52.85;

elseif sigma==5

a1=4.173e15;

b1=130.9;

c1=5.308;

a2=69.67;

b2=140.1;

c2=30.56;

a3=0;

b3=1;

c3=1;

elseif sigma==6

a1=5.952e14;

b1=113.5;

c1=2.384;

a2=4.38;

b2=100.4;

c2=2.216;

a3=15.26;

b3=112.7;

c3=24.18;

elseif sigma==7

a1=2.977;

b1=99.89;

c1=0.0954;

a2=1.88e15;

b2=182.8;

c2=14.36;

a3=12400;

b3=568;

c3=126.3;

end

elseif n==4

if sigma==3

a1=1.386;

b1=99.91;

c1=0.1078;

a2=-24.82;

b2=103.8;

c2=5.008;

a3=67530;

b3=143.8;

c3=15.46;

elseif sigma==4

a1=2271;

b1=102.4;

c1=0.9524;

a2=179.7;

b2=114.6;

c2=13.67;

a3=-86.2;

b3=108.2;

c3=10.75;

elseif sigma==5

a1=9.461e14;

b1=124.6;

c1=4.296;

a2=0.4379;

b2=91.79;

c2=3.112;

a3=1429;

b3=189.1;

c3=40.17;

elseif sigma==6

a1=6.402e15;

b1=133.6;

c1=5.704;

a2=0;

b2=100.5;

c2=2.282;

a3=122.7;

b3=160.2;

c3=39.06;

elseif sigma==7

a1=6.102e15;

b1=129.6;

c1=5.049;

a2=0;

b2=59.72;

c2=25.03;

a3=129.3;

b3=161.5;

c3=40.62;

end

end

Lz=a1*exp(-((x-b1)/c1)^2)+a2*exp(-((x-b2)/c2)^2)+a3*exp(-((x-b3)/c3)^2);

end


kramp.m

function [Kr] = kramp(x)

K=2/sqrt(2*pi)*int(sym('exp(-t^2/2)'),'t',0,x);

Kr=double(vpa(K,5));

end


poly_approx.m

clc

clear

x = [100 150 200 250 300 350 400];

y = [15 14.5 14 13.2 12.2 11 9.6];

p = polyfit(x, y, 6)

f = polyval(p, x);

f = polyval(p, x);

plot(x, y, 'ob', x, f, '-g')

cftool


LK_data_AM.m

function varargout = LK_data_AM(varargin)

gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, …

'gui_Singleton', gui_Singleton, …

'gui_OpeningFcn', @LK_data_AM_OpeningFcn, …

'gui_OutputFcn', @LK_data_AM_OutputFcn, …

'gui_LayoutFcn', [] , …

'gui_Callback', []);

if nargin && ischar(varargin{1})

gui_State.gui_Callback = str2func(varargin{1});

end

if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});

else

gui_mainfcn(gui_State, varargin{:});

end

function LK_data_AM_OpeningFcn(hObject, eventdata, handles, varargin)

handles.output = hObject;

global Pvh1vt

global Lm1z

global Pvh1med

global L2

global h02

global Zap2

global h0t1

global Lz

global h01

global L1

global Zap1

global Rpred

global Lbz

global Lmz

global Pvh2medvt

global Tm

global m

global L0r

global L2med

global Pvh2vt

global h0t2

set(handles.edit1, 'String', L0r);

set(handles.edit2, 'String', Lbz);

set(handles.edit3, 'String', Lmz);

set(handles.edit4, 'String', Lz);

set(handles.edit5, 'String', Lm1z);

set(handles.edit6, 'String', L1);

set(handles.edit7, 'String', Pvh1med);

set(handles.edit8, 'String', Pvh1vt);

set(handles.edit9, 'String', h01);

set(handles.edit11, 'String', Zap1);

set(handles.edit12, 'String', Rpred);

set(handles.edit14, 'String', L0r);

set(handles.edit16, 'String', Lbz);

set(handles.edit17, 'String', Lmz);

set(handles.edit18, 'String', Lz);

set(handles.edit19, 'String', L2med);

set(handles.edit20, 'String', L2);

set(handles.edit21, 'String', Pvh2medvt);

set(handles.edit22, 'String', Pvh2vt);

set(handles.edit23, 'String', h02);

set(handles.edit25, 'String', Zap2);

if Tm~=5

disp('Аналоговая обработка сигнала');

if Tm==1

disp('Амплитудная манипуляция');

x=sqrt(h01/2);

Kr1=kramp(x);

Pk1=(1-Kr1)/2;

x=sqrt(h02/2);

Kr2=kramp(x);

Pk2=(1-Kr2)/2;

set(handles.edit13, 'String', Pk1);

set(handles.edit26, 'String', Pk2);

disp(['Poh1=', num2str(Pk1),' когерентный прием']);

disp(['Poh2=', num2str(Pk2),' когерентный прием']);

Pn1=exp(-h01/4)/2;

Pn2=exp(-h02/4)/2;

set(handles.edit15, 'String', Pn1);

set(handles.edit27, 'String', Pn2);

disp(['Poh1=', num2str(Pn1),' некогерентный прием']);

disp(['Poh2=', num2str(Pn2),' некогерентный прием']);

elseif Tm==2

disp('Частотная манипуляция');

x=sqrt(h01);

Kr1=kramp(x);

Pk1=(1-Kr1)/2;

x=sqrt(h02);

Kr2=kramp(x);

Pk2=(1-Kr2)/2;

disp(['Poh1=', num2str(Pk1),' когерентный прием']);

disp(['Poh2=', num2str(Pk2),' когерентный прием']);

Pn1=exp(-h01/2)/2;

Pn2=exp(-h02/2)/2;

disp(['Poh1=', num2str(Pn1),' некогерентный прием']);

disp(['Poh2=', num2str(Pn2),' некогерентный прием']);

elseif Tm==3

disp('Фазовая манипуляция');

x=sqrt(2*h01);

Kr1=kramp(x);

Pk1=(1-Kr1)/2;

x=sqrt(2*h02);

Kr2=kramp(x);

Pk2=(1-Kr2)/2;

disp(['Poh1=', num2str(Pk1),' когерентный прием']);

disp(['Poh2=', num2str(Pk2),' когерентный прием']);

elseif Tm==4

disp('Относительная фазовая манипуляция');

x=sqrt(2*h01);

Kr1=kramp(x);

Pk1=(1-Kr1)^2/2;

x=sqrt(2*h02);

Kr2=kramp(x);

Pk2=(1-Kr2)^2/2;

disp(['Poh1=', num2str(Pk1),' сравнение полярностей']);

disp(['Poh2=', num2str(Pk2),' сравнение полярностей']);

Pn1=exp(-h01)/2;

Pn2=exp(-h02)/2;

disp(['Poh1=', num2str(Pn1),' сравнение фаз']);

disp(['Poh2=', num2str(Pn2),' сравнение фаз']);

end

end

disp('Цифровая обработка сигнала');

h01c=h01*log2(m);

h02c=h02*log2(m);

if Tm==1

disp('Амплитудная модуляция');

disp('Однополярные прямоугольные импульсы');

x=sqrt(h01c/(m-1)^2);

Kr1=kramp(x);

Pk1=(m-1)/m*(1-Kr1);

x=sqrt(h02c/(m-1)^2);

Kr2=kramp(x);

Конец ознакомительного фрагмента.

Текст предоставлен ООО «ЛитРес».

Прочитайте эту книгу целиком, купив полную легальную версию на ЛитРес.

Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.

Конец ознакомительного фрагмента
Купить и скачать всю книгу
На страницу:
2 из 2