- •Введение
- •Лабораторная работа ип1 Знакомство с Matlab
- •1. Рабочая среда Matlab
- •2. Данные Matlab
- •Типы данных
- •Числовые константы
- •Символьные константы
- •Переменные
- •3. Выражения
- •3.1. Арифметические выражения
- •3.2. Логические выражения
- •3.3. Порядок вычисления выражений
- •4. Сообщения об ошибках и исправление ошибок
- •5. Завершение вычислений
- •6. Завершение работы с системой
- •7. Резюме
- •8. Контрольные вопросы
- •9. Индивидуальные задания
- •Лабораторная работа ип2 работа с матрицами в matlab
- •1. Общие сведения
- •2. Одномерные массивы – векторы
- •3. Двумерные массивы – матрицы
- •4. Использование двоеточия
- •4.1. Автозаполнение
- •4.2. Индексация
- •5. Поэлементные и матричные операции
- •6. Стандартные функции для работы с матрицами
- •7. Логическое индексирование
- •8. Контрольные вопросы
- •9. Индивидуальные задания
- •10. Упражнения
- •2. Диалоговый ввод/вывод
- •3. Управление последовательностью исполнения операторов
- •3.1. Оператор условия if
- •3.2. Оператор переключения
- •3.3. Оператор цикла с определенным числом повторений
- •3.4. Оператор цикла с неопределенным числом повторений
- •4. Контрольные вопросы
- •5. Индивидуальные задания
- •Лабораторная работа ип4 визуализация данных в matlab
- •1. Общие сведения
- •2. Построение таблицы значений функции
- •3. Двумерная графика
- •3.1. Общие правила построения графиков
- •3.2. Оформление графиков
- •3.3. Построение графиков
- •3.4. Управление свойствами графиков
- •4. Трехмерная графика
- •4.1. Общие принципы построения трехмерных графиков
- •4.2. Построение трехмерных графиков
- •4.3. Управление свойствами трехмерных графиков
- •5. Контрольные вопросы
- •6. Индивидуальные задания
- •Лабораторная работа ип5 файл-функции
- •2. Описание m-функции
- •3. Обращение к m-функции
- •4. Параметры-функции
- •5. Разновидности m-функций
- •5.1. Подфункции
- •5.2. Вложенные функции
- •6. Контрольные вопросы
- •7. Индивидуальные задания
- •2. Аппроксимация
- •2.1. Моделирование полиномом по методу
- •2.2. Аппроксимация произвольной функцией
- •3. Интерполяция
- •3.1. Кусочная интерполяция
- •3.2. Кубические сплайны
- •3.3. Интерполяция произвольной нелинейной функцией
- •4. Контрольные вопросы
- •5. Индивидуальные задания
- •Лабораторная работа ип7 Вычисление функций разложением в ряд
- •1. Общие сведения
- •2. Индивидуальное задание
- •Лабораторная работа ип8 Решение нелинейных уравнений в среде Matlab
- •1. Общие сведения
- •2. Поиск корней полиномов
- •3. Решение одного нелинейного уравнения
- •4. Решение систем нелинейных уравнений
- •5. Контрольные вопросы
- •6. Индивидуальные задания
- •Лабораторная работа ип9 обмен данными с текстовым файлом
- •1. Общие сведения
- •2. Открытие файла
- •3. Запись в текстовый файл
- •3.1. Запись строковых значений
- •3.2. Запись числовых значений
- •4. Чтение из текстового файла
- •4.1. Последовательное чтение строк
- •4.2. Последовательное чтение нескольких символов
- •4.3. Чтение чисел из текстового файла
- •4.4. Альтернативный доступ к текстовому файлу
- •5. Закрытие файла
- •6. Контрольные вопросы
- •7. Индивидуальные задания
- •Заключение
- •Список рекомендуемой литературы
- •Программирование в matlab
- •428015 Чебоксары, Московский просп., 15
Лабораторная работа ип4 визуализация данных в matlab
1. Общие сведения
В инженерной практике часто возникает необходимость изображать данные в виде таблиц или графиков. Например, нарисовать временные диаграммы и , характеризующие переходный процесс в электрической цепи. Вывод результатов вычислений в наглядной графической форме (визуализация) является одной из важнейших процедур в инженерной и научной практике. Инженерную графическую информацию следует снабжать описанием, поясняющим, какой объект исследован, и какая математическая модель для этого использована. Задачей инженерной программы часто является сравнение нескольких функций, полученных, например, при разных значениях конструктивных параметров. Такое сравнение удобнее и нагляднее проводить, если результаты представлены в виде графиков. Если нужно сравнивать графики функций одного и того же аргумента, то их удобнее всего строить в общих координатных осях. При этом полезно соблюдать следующие рекомендации:
1) если диапазоны изменения функций и их аргумента различаются незначительно (не более чем на порядок), то графики строятся в общих координатных осях в линейном масштабе;
2) если диапазоны изменения функций и/или аргумента положительные и различаются значительно (более чем на порядок), то графики строятся в общих координатных осях в логарифмическом масштабе по соответствующей оси;
3) если функции представляют величины разной физической природы, но имеют общий аргумент, изменяющийся в одном диапазоне, то графики размещаются друг под другом таким образом, чтобы одинаковые значения аргумента во всех графиках располагались на одной вертикали.
Matlab обладает хорошо развитыми графическими возможностями для визуализации результатов.
2. Построение таблицы значений функции
Отображение результатов в виде таблицы удобно, если имеется сравнительно небольшое количество значений функции. Пусть требуется вывести в командное окно таблицу значений функции , представляющей собой аналитическое описание полигармонического сигнала, состоящего из первой, третьей и пятой гармоник базовой частоты 50 Гц), для моментов времени 0; 0,003; 0,01; 0,015; 0,02; 0,027; 0,03; 0,034; 0,04. Технология табулирования функции в Matlab состоит в реализации следующих шагов:
1. Создадим вектор-строку, содержащую значения независимой переменной (данном примере это время). Соблюдая правила хорошего тона, дадим ей мнемоническое имя t – время;
2. Вычислим значения тока для каждого элемента вектора t и разместим их в векторе-строке с именем current – ток. При вычислениях для упрощения выражений рекомендуется использовать промежуточные переменные. Так, в нашем примере удобно ввести переменную w=100*pi, соответствующую частоте . Следует помнить, что операции в выражении для вычисления значений функции должны выполняться поэлементно;
3. Придадим таблице более удобный для чтения вид. Как правило, данные в таблице располагают в столбцах. Таблица предваряется названием и шапкой. Для оформления шапки таблицы обычно используется функция disp, предназначенная для вывода значений в командное окно Matlab.
Реализуем шаги описанной выше технологической цепочки табулирования функции в программе на языке Matlab, оформленной в виде script-файла tabfun.m (рис. 4.1).
Рис. 4.1. Окно редактора с текстом script-файла
В титульной строке окна редактора видно, что данный файл сценария сохранен на диске D в каталоге MATLAB701 в папке work. В нижней части окна редактор отмечает, что данный m-файл является именно скриптом. По левой стороне окна даны номера строк программы. Matlab будет на них ссылаться при обнаружении ошибок в тексте программы (синтаксические ошибки) или при ее выполнении (ошибки шага выполнения). В целом окно редактора оформлено в привычном стиле Windows. На рис. 4.2 показано как выполнение этой программы отразилось на состоянии рабочего стола.
Рис. 4.2. Результат выполнения программы рис. 4.1
В рабочем пространстве Workspace созданы три переменные, содержащие по девять расчетных значений тока, времени и скаляр частоты. Эти данные могут быть использованы в дальнейшем, как обычные переменные Matlab (каковыми они и являются). В командном окне отображена таблица из двух колонок. Первая – время, вторая – значения тока для заданных моментов времени.