По всем вопросам звоните:

+7 495 274-22-22

УДК: 621.9 DOI:10.33920/pro-2-2207-06

Программирование распределения Реллея

Юдачев С. С., канд. техн. наук, доцент, МГТУ им. Н.Э. Баумана, Москва 105005, Москва, ул. 2-я Бауманская, д. 5
Гордиенко Н. А., МГТУ им. Н.Э. Баумана, Москва 105005, Москва, ул. 2-я Бауманская, д. 5
Монахов П. А., МГТУ им. Н.Э. Баумана, Москва 105005, Москва, ул. 2-я Бауманская, д. 5, е-mail: monakhovp99@mail.ru
Ситников С. С., МГТУ им. Н.Э. Баумана, Москва 105005, Москва, ул. 2-я Бауманская, д. 5
Ключевые слова: Си , Python , Реллей

В статье описан алгоритм программирования распределения шума нахождения и обработки сигнала. Практическая значимость работы — изучение основ программирования на языке С и Python. Знакомство с интегрированной средой программирования Visual studio — популярная среда для написания, отладки и компиляции кода, находящаяся для скачивания в общем доступе. Также содержит в себе большинство используемых библиотек, которые упрощают написание кода. И Anaconda — дистрибутив для языка программирования Python, включающий в себя набор свободных библиотек, что также находится в свободном доступе. Продемонстрировано взаимодействие языков Си и Python на примере построения случайных величин, распределенных по закону Реллея, с использованием теории вероятности. При помощи языка Си выполнялась задача вычисления данных и их заполнения в массив, Python использовался для моделирования, построения гистограмм и сравнения полученных результатов с теоретическими. Данная работа может использоваться для обучения студентов высших учебных заведений в целях ознакомления, а также в дальнейшем использоваться для определения ложной тревоги, используемой в нахождении адаптивного порога для первичной обработки сигнала в радиолокации. Рассмотрен синтаксис каждого языка и их сильные стороны. Ознакомление и изучение данных языков программирования проводятся в стенах одного из ведущих инженерных университетов Российской Федерации — Московского государственного технического университета имени Н.Э. Баумана.

Литература:

1. Программирование на языке С. 3-е изд. Пер. с англ. — М.: ООО «И.Д. Вильямс», 2007. — 496 с.: илл. — Парал. тит. англ.

2. Изучаем Python. 4-е изд. Пер. с англ. — СПб.: Символ-Плюс, 2011. — 1280 с., илл.

3. Теория вероятностей и математическая статистика: учеб. пособие / Е.А. Трофимова, Н.В. Кисляк, Д.В. Гилёв; под общ. ред. Е.А. Трофимовой. М-во образования и науки Рос. Федерации, Урал. федер. ун-т. — Екатеринбург: Изд-во Урал. ун-та, 2018. — 160 с.

4. Теория вероятностей и математическая статистика: учебное пособие / Л.Н. Губарь, А.В. Ермоленко. — Сыктывкар: Изд-во СГУ имени Питирима Сорокина, 2015. — 120 с.

5. С для программистов с введением в С11 / Пер. с англ. А. Киселева. — М.: ДМК Пресс, 2014. — 544 с.: илл.

6. Изучаем программирование на C (2013). Авторы: Дэвид Гриффитс, Дон Гриффитс.

7. Полный справочник по С. 4-е изд. — М.: Издательский дом «Вильямс», 2002. — 704 с.: илл. Парал. тит. англ.

8. Изучаем Python. Программирование игр, визуализация данных, веб-приложения. — СПб.: Питер, 2017. — 496 с.: илл. — (Серия «Библиотека программиста»).

1. Programming in C. 3rd edition.: Trans. from English — M.: I.D. Williams LLC,2007. — 496 p.: ill. — Paral. tit.

2. Learning Python, 4th edition. — Translated from English — St. Petersburg: Symbol-Plus, 2011. — 1280 p., ill.

3. Probab ilit y t he or y and Mathematical Statistics: textbook. manual / E.A. Trofimova, N. V. Kislyak, D.V. Gilev; [under the general editorship of E.A. Trofimova]; Ministry of Education and Science of the Russian Federation. Federation, Ural. feder. un-t. — Yekaterinburg: Ural Publishing House. un-ta, 2018. — 160 p.

4. Probabilit y t he or y and mathematical statistics: textbook / L.N. Gubar, A.V. Ermolenko. Syktyvkar: Publishing House of the Pitirim Sorokin SSU, 2015. — 120 p.

5. C for programmers with an introduction to C11 / translated from ang. A. Kiseleva. — M.: DMK Press, 2014. — 544 p.: ill.

6. Learning C Programming (2013) Author: David Griffiths, Don Griffiths

7. The complete Guide to C, 4th edition. Williams Publishing House, 2002.-704c.:ill.-Par.tit.eng.

8. Learning Python. Game programming, data visualization, web applications. — St. Petersburg: Peter, 2017 — 496 p.: ill. — (Series "Programmer's Library").

Современный мир сложно представить без компьютеров. Любой процессор состоит из логических элементов, понимающий только двоичные числа, и для выполнения той или иной задачи ему нужно передать определенную команду. В самом начале развития программирования команды напрямую вносились в память устройства. Это был довольно долгий процесс, и на смену пришел ассемблер — язык более высокого уровня, который позволяет управлять расположением команд в памяти. Программы, написанные на языке ассемблера, являются машиннозависимыми. Поэтому с развитием технологий появились языки высокого уровня, такие как: С, С++, С#, Python и другие. Стандартизация языков подразумевала использование программ независимо от типа компьютера.

В обработке радиолокационных сигналов широко используется программирование: реализация цифровых фильтров, построение траекторий, принятие сигнала, моделирование различных систем РЛС и т. д.

Возьмем интегральную среду разработки Visual studio для написания кода на языке С и сгенерируем шум, получаемый на вход приемника вместе с сигналом, и рассмотрим его параметры. Шум — случайная величина, распределенная по закону Реллея. Для этого нам понадобится массив данных со случайными величинами. Команда «rand ()» выдает значения Х, распределенные по равномерному закону, для преобразования их воспользуемся формулой

где А величина, распределенная по закону Реллея.

Функция генерации СВ:

Значение А вызывает функцию Memory, которая выделяет динамическую память для нашей матрицы данных, в которой T — это количество экспериментов, а N — размер выборки. Это позволяет делать массивы переменной длины.

Функция выделения памяти для матрицы:

Затем обработаем полученные значения для формирования гистограммы. Создадим функцию Histogram. Она считает количество попадания данных в заданный интервал Еps при разбиении максимально допустимой величины Max на Step шагов. И записывает их в массив В, в котором после происходит вычисление вероятности. Для массива тоже выделим память при помощи функции Mass.

Для Цитирования:
Юдачев, Гордиенко, Монахов, Ситников, Программирование распределения Реллея. Главный механик. 2022;7.
Полная версия статьи доступна подписчикам журнала
Язык статьи:
Действия с выбранными: