Сделай Сам Свою Работу на 5

Раздел 1. Основные сведения о среде программирования «MATLAB»

ГРИНЁВ А.Ю., ИЛЬИН Е.В.

ОСНОВЫ ЭЛЕКТРОДИНАМИКИ с «MATLAB»

Учебное пособие

МОСКВА

Оглавление

Предисловие. 4

Раздел 1. Основные сведения о среде программирования «MATLAB». 6

Глава 1. Вычисления в командном режиме. 9

1.1. Простейшие математические операции в MATLAB.. 9

1.2. Переменные. 12

1.3. Создание матриц. 16

1.4. Доступ к элементам матриц. 20

1.5. Операции с матрицами. 24

1.6. Ввод, вывод и работа со строками. 32

Глава 2. Построение графиков в MATLAB.. 39

2.1. Построение графика в виде двумерной линии. 40

2.2. Оформление графиков. 47

2.3. Построение трехмерных графиков. 54

2.4. Построение линий уровня. 62

2.5. Построение векторного поля. 64

2.6. Отображение нескольких графиков в одном окне. 66

Глава 3. Скрипты в MATLAB и управляющие конструкции. 71

3.1. Создание и выполнение скриптов в MATLAB.. 71

3.2. Оператор for 75

3.3. Логические операции. 78

3.4. Оператор if / elseif / else. 81

3.5. Оператор while. 83

3.6. Операторы break / continue. 84

3.7. Оператор switch. 85

3.8. Создание функций. 87

Раздел 2. Краткие теоретические сведения и задания. 91

Тема 1. Векторный анализ. 91

1.1. Элементы векторного анализа. 91

Задания. 93

Тема 2. Уравнения Максвелла (произвольная и гармоническая временная зависимость, статические, стационарные и квазистационарные поля) 106

2.1. Система уравнений электродинамики – уравнения Максвелла. 106

2.2. Граничные условия. Принцип эквивалентности. 109

Задания. 110

Тема 3. Плоские волны.. 118

3.1. Явление дисперсии и групповая скорость. 118

Задания. 120

Тема 4. Граничные задачи, уравнения и методы.. 125

4.1. К классификации электромагнитных явлений. 125

Задания. 127

4.2. Метод конечных разностей. 132

4.2.1. Конечно-разностная аппроксимация. 132

4.2.2. Конечно-разностная аппроксимация уравнений Лапласа и Пуассона. 134

4.2.3. Конечно-разностная аппроксимация для граничных узлов. 135

Задания. 137

Литература. 144

Предисловие

В соответствии с государственным общеобразовательным стандартом курс «Электродинамика и распространение радиоволн» является общеобразовательной дисциплиной для радиотехников (как и для ряда других направлений подготовки). Процедуры расчёта и численные методы решения задач электродинамики затрагиваются на лекциях при изучении ряда тем: направляющие системы и направляемые волны, излучение и дифракция электромагнитных волн; частично на практических занятиях, при выполнении курсовых и компьютерных лабораторных работ. В тоже время бурное развитие цифровых технологий во многом изменило как смысл самого понятия «радиотехника», так и требования, предъявляемые к подготовке специалистов в этой области, сделав необходимыми новые знания и умения



Действительно, в настоящее время, благодаря существенному прогрессу в развитии вычислительной техники и надёжной основе в виде системы уравнений Максвелла, наблюдается качественный прорыв проектирования СВЧ устройств, антенн, решении задач рассеяния и т.п. Сложилась очевидная триада участников этого процесса: разработчики электродинамических методов (подходов, алгоритмов), программисты и пользователи. Последние реализуют конкретные проекты в условиях ограниченных сроков и усложнённых требований к создаваемой продукции и, как правило, не обладают необходимой квалификацией, временными и финансовыми ресурсами для разработки пакетов программ необходимого уровня. Между тем разработаны уникальные коммерческие программные продукты, обладающие необходимой общностью,моделирования и оптимизации электромагнитных полей в сложных СВЧ устройствах и антеннах, и способные не только существенно облегчить жизнь пользователей, но и создавать более совершенные приборы и устройства.

Мы убеждены, что одним из важных качеств современного радиоинженера–разработчика антенн и СВЧ устройств является умение приспосабливать конкретные задачи к разработанным пакетам программ при безусловном понимание основных идей и базовых электродинамических принципов этих программ. Использование системы MATLAB в учебном процессе позволит сблизить дисциплины, связанные с информатикой и численными методами [7]. Кроме того, логика развития радиотехнических приложений приводит к необходимости трансформирования и введению новых разделов в стандартный курс «Электродинамика и распространение радиоволн».

Система MATLAB представляет собой уникальный сплав универсальных программных и алгоритмических средств с широкой гаммой алгоритмических приложений. С его библиотекой численных методов ни по объёму, ни по качеству не может сравниться ни одна из систем программирования. Для современного инженера и научно-технического работника MATLAB является незаменимым инструментом моделирования и исследования различных прикладных задач.

Нумерация формул, рисунков и таблиц в разделах 1 и 2 независима.

Цель учебного пособия – на примерах решения модельных электродинамических задач использовать и изучить возможности системы MATLAB при моделировании и исследовании различных прикладных задач электродинамики.

 

Раздел 1. Основные сведения о среде программирования «MATLAB»

MathWorks MATLAB (сокращение от MATrix LABoratory) представляет собой программный пакет, объединяющий в себе интерпретатор одноименного языка программирования высокого уровня, среду разработки на этом языке, средства визуализации данных, а также множество библиотек для различных областей применения. Язык программирования MATLAB ориентирован в первую очередь на решение технических и научных задач с использованием матричных вычислений [1, 2]. В частности, MATLAB предоставляет средства для построения двумерных и трехмерных графиков различных видов, функции для экстраполяции и интерполяции данных, решения уравнений и их систем, средства для символьных вычислений на основе ядра Waterloo Maple, инструменты для создания графического интерфейса с пользователем (GUI), имеются возможности для взаимодействия с программами, написанными на языках C/C++, Fortran, Java и средой выполнения .NET, а также многое другое.

Первая версия MATLAB появилась в конце 1970-х годов, а в 1984 году была создана фирма MathWorks, которая занимается дальнейшей развитием этого языка и средств разработки на нем. С тех пор MATLAB регулярно обновляется, язык и среда программирования получают новые возможности, такие, как например, объектно-ориентированное программирование, возможности для взаимодействия с внешними устройствами, подключаемых к компьютеру и другое. Достоинством MATLAB также является его кроссплатформенность – имеются версии программы для Microsoft Windows, Linux и Apple Mac OS X. При этом MATLAB поддерживает, как 32-битные, так и 64-битные операционные системы, что особенно важно для расчетов, требующих большого количества оперативной памяти.

После запуска среды разработки MATLAB откроется главное окно программы, показанное на рисунке 1.1.

 

Рис. 1.1. Внешний вид главного окна MATLAB.

 

Главное окно среды MATLAB может включать в себя различные дочерние окна. В частности, на рисунке 1.1 показаны окна:

· "Current Folder", отображающее структуру директорий файловой системы и текущую директорию с файлами;

· "Command Window" для ввода команд языка MATLAB и отображения текстовых результатов расчета;

· "Workspace", отображающее переменные, расположенные в данный момент в памяти компьютера;

· "Command History", отображающее последние введенные в окно "Command Window" команды.

Внешний вид главного окна пользователь может изменять по своему усмотрению, открывая, закрывая (с помощью пунктов меню "Desktop"), перемещая или изменяя размеры дочерних окон. В частности, главное окно может дополнительно включать в себя следующие окна:

· "Help", отображающее справку по языку, среде разработке или другой составной части MATLAB;

· "Figure", отображающее графические результаты расчета;

· "Profiler", предназначенное для измерения скорости работы программ на языке MATLAB;

· "Editor", предназначенное для ввода и редактирования программ на языке MATLAB;

и другие.

Важной составной частью среды MATLAB является встроенная документация, благодаря которой можно быстро узнать синтаксис той или иной функции, а также найти нужную функцию по ее описанию или имени. Для вызова документации используется меню «Help» главного меню. Особенно полезны в нем пункты «Product Help» (вызов полной документации по MATLAB и всем установленным с ним пакетам), а также «Function Browser» (быстрый поиск документации для функции по ее имени).

При выборе пункта меню «Product Help» откроется окно «Help», разделенное на две части (Рис. 1.2).

 

Рис. 1.2. Внешний вид окна «Help».

 

В левой части окна перечислены все разделы справки в виде дерева, в частности, ветвь «MATLAB» содержит справку об общих вопросах, касающихся программирования в среде MATLAB, о стандартных функциях, синтаксисе операторов и т.п. Ветвь «Release Notes» содержит информацию об установленной версии MATLAB, в том числе и список изменений по сравнению с предыдущей версией. Ниже в дереве расположены разделы документации, касающиеся различных пакетов (библиотек), которые установлены вместе с MATLAB.

Как правило, быстрее не искать описания функций в дереве разделов, а находить их с помощью поисковой строки, расположенной над списком разделов. Если в это поле ввода ввести слово и нажать Enter, то в окне справки активируется вкладка «Search results», где будут перечислены все разделы справки, содержащие искомое слово.

Писать программы на языке MATLAB можно двумя способами. Первый способ заключается в том, чтобы последовательно вводить команды в окне "Command Window" и тут же наблюдать за их выполнением. Второй способ заключается в написании программы (скрипта) в отдельном файле с расширением .m (для этого можно использовать встроенный редактор среды MATLAB – окно "Editor", или любой текстовый редактор). В первых разделах будет использоваться первый вариант создания и выполнения программ.

 



©2015- 2017 stydopedia.ru Все материалы защищены законодательством РФ.