Z9411_Моделирование_Лаб1_КафкаРС
.pdfМИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное автономное образовательное учреждение высшего образования
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»
ИНСТИТУТ НЕПРЕРЫВНОГО И ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ
Кафедра прикладной информатики
ОЦЕНКА |
|
|
ПРЕПОДАВАТЕЛЬ |
|
|
старший преподаватель |
_________________ |
А.В. Сорокин |
|
подпись, дата |
|
ЛАБОРАТОРНАЯ РАБОТА №1
Основы работы в системе MATLAB
Вариант №9
по дисциплине «Моделирование»
РАБОТУ ВЫПОЛНИЛ |
|
|
|
СТУДЕНТ ГР. |
Z9411 |
__________________ |
Р.С. Кафка |
|
|
подпись, дата |
|
Студенческий билет № 2019/3603 |
|
|
Санкт-Петербург
2022г.
|
Оглавление |
|
1. |
Введение в MATLAB ............................................................................................ |
3 |
2. |
Основы работы с MATLAB .................................................................................. |
6 |
3. |
Решение типовых задач алгебры и анализа...................................................... |
16 |
Заключение................................................................................................................. |
23 |
2
1.Введение в MATLAB
Упражнение №1. Выбрать функцию для вычисления в соответствии с
номером варианта.
По списку группы студенту соответствует вариант задания №9. Функция
y(x) и дополнительные параметры указаны в таблице 1.
Таблица 1 – Индивидуальное задание для варианта №9
функция |
= |
2 − 4 + 4 |
|
|
3 2 − 4 + 4 |
||
x1 |
|
3 |
|
|
|
|
|
xMin |
|
0 |
|
|
|
|
|
dx |
|
0.08 |
|
|
|
|
|
xMax |
|
8 |
|
|
|
|
|
Упражнение №2. Вычислить значение заданной функции в точке x1.
В рабочей области программы зададим параметр x1. Для удобства пользователя все переменные сохраняются в общий список под названием
Workspace. Данная вкладка показана на рисунке 1.
Рисунок 1 – Вкладка Workspace среды MATLAB
На рисунке ниже представлен процесс определения значения функции y(x) в конкретной точке x1=3.
3
Рисунок 2 – Вычисление значения заданной функции в точке x1
Упражнение №3. С использованием оператора двоеточия (:) сформировать вектор x со значениями от xMin до xMax с шагом dx.
В таблице 1 отмечены следующие значения переменных: xMin=0, xMax=8, dx=0,08.
Запишем в программе диапазон значений характеристики x следующим образом:
x = 0:0.08:8;
На рисунке 3 можно видеть первые три строки численных значений вектора х, что составляет 33 элемента. Полная размерность данной переменной
– 101 значение.
Рисунок 3 – Диапазон значений вектора х
Упражнение №4. Для каждого элемента вектора x вычислить значение функции, заданной по варианту, и записать результат в переменную y.
Правило для вычисления вектора y указано на рисунке 4. Стандартные операции умножения «*» и возведения в степень «^» были изменены на специальные инструменты для выполнения действий над каждым элементом массива.
4
На рисунке ниже также представлены первые три строки значений элементов массива y.
Рисунок 4 – Вычисление значения функции для каждого члена вектора x
Упражнение №5. Используя созданные вектора, построить график функции и подписать оси.
Построим график функции y(x), используя найденные значения векторов x и y. Для отображения зависимости применим встроенную команду plot(). Для информативности добавим заголовок и подписи осей путём обращения к операторам title(), xlabel и ylabel.
Окно Figure с построенной зависимостью y(x) приведено на рисунке 5.
Рисунок 5 – График функции y(x)
5
2.Основы работы с MATLAB
Упражнение №1. Задать матрицу А с помощью операции конкатенации:
3.25−1.07 2.34
А= (10.10 0.25 −4.78).
5.04−7.79 3.31
Для формирования отмеченного массива А размером 3x3 воспользуемся вертикальной конкатенацией вектор-строк.
На рисунке 6 представлено отображение новой квадратной матрицы А.
Рисунок 6 – Применение операции конкатенации
Упражнение №2. Сгенерировать массив В размером 3х3 со случайными элементами, равномерно распределенными на интервале от 0 до 1.
Среди функций, генерирующих матрицы с заданными свойствами, выберем команду rand(), создающую массив, заполненный случайными элементами, равномерно распределенными на интервале от 0 до 1.
Пример вызова функции rand() с численным параметром 3 показан на рисунке 7.
Рисунок 7 – Генерация матрицы со случайными элементами
Упражнение №3. Выполнить действия: А + 10 * В; A * B; BТ; почленно умножить А на В; расположить элементы матрицы А по возрастанию (по
6
столбцам); определить максимальный и минимальный элементы матрицы В;
вычислить определитель матрицы В.
Реализуем стандартные вычислительные операции с матрицами A и B.
На рисунке 8 можно видеть выполнение двух действий: умножение массива В на скалярное значение и суммирование полученных элементов с членами А.
Операция перемножения массивов A и B по правилам матричной алгебры представлена на рисунке 9.
Рисунок 8 – Выполнение действия A+10*B |
Рисунок 9 – Выполнение операции A*B |
Впрограмме MATLAB имеются специальные инструменты,
предназначенные для работы с элементами матрицам. Пример
транспонирования массива В с помощью комбинированного оператора «.’»
показан на рисунке 10.
Иллюстрация 11 отображает результат выполнения поэлементного умножения членов «.*» структуры А на значения В.
Рисунок 10 – Транспонирование матрицы В |
Рисунок 11 – Реализация поэлементного |
умножения
Расположим элементы матрицы А в столбцах в порядке возрастания. Это возможно благодаря разработанной функции sort(). Результат применения данной инструкции к массиву A приведен на рисунке 12.
7
Рисунок 12 – Применение функции sort()
Функции max() и min() определяют в столбцах матриц соответственно максимальные и минимальные элементы. Для выделения экстремальных значений необходимо выполнить повторный вызов данных команд, передавая им на вход составленные векторы максимальных/минимальных членов.
Максимальный и минимальный элементы матрицы В показаны на рисунках 13-14.
Рисунок 13 – Применение функции max() |
Рисунок 14 – Применение функции min() |
Одна из самых полезных функций во время взаимодействия с матрицами
– команда вычисления определителя det(). Пример применения данной инструкции приведен на рисунке 15.
Рисунок 15 – Вычисление детерминанта матрицы В
8
Упражнение №4. Задать массив С, используя операцию индексации и одну из функций: ones() или zeros(). Вектор С:
0 С = ( 5.71 ).
−3.61
Для создания массива С воспользуемся функцией zeros(), после вызова которой с помощью операции индексации изменим значения, отличные от 0 по условию.
Элементы нового массива С можно увидеть на рисунке 16.
Рисунок 16 – Задание матрицы С
Упражнение №5. Решить систему алгебраических линейных уравнений вида A * X = C.
Знак левого деления «\» закреплен в системе MATLAB за решением задачи нахождения корней системы линейных уравнений. Поэтому для определения вектора Х воспользуемся следующей формулой: X = A \ C.
Вычисленные таким образом значения представлены на рисунке 17.
9
Рисунок 17 – Решение системы алгебраических линейных уравнений
Упражнение №6. Определить массив D: = |sin( ) + 3/5|.
В рабочем окне программы запишем следующую формулу:
D = sin(A) + B.^(3/5);
Найденные таким образом значения будут определены как элементы матрицы D размером 3*3. Как видно из записанного выражения, для задания членов массива были применены тригонометрическая функция sin() и
специальный оператор почленного возведения в степень «.^».
На рисунке 18 представлены элементы новой матрицы D. Следом было произведено вычисление определителя данного массива.
Рисунок 18 – Задание матрицы D |
|
|
|
|
= {0,6; 3,2; - |
Упражнение №7. Для двух векторов: = {3,2; 2,8; -1,4} и |
||
|
|
|
4,8} определить значения следующих выражений: ; × ; ||. |
|
Для добавления векторов |
и |
|
в перечень переменных программы |
|
|||
запишем следующие инструкции: |
|
|
|
|
|
10 |
|