Энергетический расчет канала дальней тропосферной радиосвязи (Программа для ЭВМ)
Владимир Иванович Шлома
Программа предназначена для проведения на ЭВМ энергетического расчета канала связи дальней тропосферной радиосвязи по двум методикам, и является приложением к работе "Методики энергетического расчета канала дальней тропосферной связи". Расчет радиосвязи производится при различных видах модуляций для любого времени года и для любого места, выбранного на карте. Программа работает в среде Matlab.
Владимир Шлома
Энергетический расчет канала дальней тропосферной радиосвязи (Программа для ЭВМ)
Реферат
Программа предназначена для проведения на ЭВМ энергетического расчета канала связи дальней тропосферной радиосвязи по двум методикам. Расчет радиосвязи производится при различных видах модуляций, для любого времени года и для любого места, выбранного на карте. Программа работает в среде Matlab.
Программа обеспечивает выполнение следующих функций:
–
расчет затухания в свободном пространстве при реальных антеннах;
–
расчет быстрых замираний;
–
расчет медленных замираний;
–
расчет медианных затуханий;
–
расчет полного затухания;
–
расчет медианной мощности сигнала на выходе приемника;
–
расчет мощности сигнала на входе приемника;
–
расчет энергетического запаса трассы;
–
расчет предельной дальности связи;
–
расчет отношения сигнал/шум на входе приемника;
–
расчет вероятности ошибки при заданном виде модуляции.
Тип ЭВМ: IBM PC-совместимые ПК.
Язык: Matlab.
IDE: MatlabR2014b.
ОС: Windows XP/Vista/7/8/10.
Объем исполнимого файла: 1,4 Мб.
Исходный код программы
main.m
function varargout = main(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, …
'gui_Singleton', gui_Singleton, …
'gui_OpeningFcn', @main_OpeningFcn, …
'gui_OutputFcn', @main_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 main_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
global Nk
global tipcan
global n
global Tm
global kan
global Sez
global Tp
global Lk
Lk=1;
Tp=1;
Sez=1;
kan=2;
Tm=1;
n=1;
tipcan=1;
Nk=1;
set(handles.uipanel13,'visible','on');
set(handles.uipanel12,'visible','off');
guidata(hObject, handles);
function varargout = main_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;
function pushbutton2_Callback(hObject, eventdata, handles)
global Sez
if Sez ==1;
picture();
end
if Sez ==2;
picture_2();
end
if Sez ==3;
picture_3();
end
function edit14_Callback(hObject, eventdata, handles)
function edit14_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function popupmenu2_Callback(hObject, eventdata, handles)
global Nk
contents = get(hObject,'Value');
switch contents
case 1
Nk=1;
case 2
Nk = 2;
case 3
Nk = 3;
case 4
Nk = 4;
case 5
Nk = 5;
case 6
Nk = 6;
case 7
Nk = 7;
otherwise
end
function popupmenu2_CreateFcn(hObject, ~, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function pushbutton3_Callback(hObject, eventdata, handles)
picture_3();
function listbox1_Callback(hObject, eventdata, handles)
contents = get(hObject,'Value');
global TIPp
switch contents
case 1
TIPp=1;
case 2
TIPp = 2;
end
function listbox1_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit8_Callback(hObject, eventdata, handles)
function edit8_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');