Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа №2.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
55.64 Кб
Скачать

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«САМАРСКИЙ ГОСУДАРСТВЕННЫЙ АЭРОКОСМИЧЕСКИЙ

УНИВЕРСИТЕТ имени академика С.П. КОРОЛЕВА

(национальный исследовательский университет)»

ОПЕРАЦИИ С МАССИВАМИ И ПОЛИНОМАМИ В СРЕДЕ КОМПЬЮТЕРНЫХ ВЫЧИСЛЕНИЙ MATLAB

САМАРА 2012

Министерство образования и науки

Российской Федерации

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«САМАРСКИЙ ГОСУДАРСТВЕННЫЙ АЭРОКОСМИЧЕСКИЙ

УНИВЕРСИТЕТ имени академика С.П. КОРОЛЕВА

(национальный исследовательский университет)»

ОПЕРАЦИИ С МАССИВАМИ И ПОЛИНОМАМИ В СРЕДЕ КОМПЬЮТЕРНЫХ ВЫЧИСЛЕНИЙ MATLAB

Методические указания к лабораторной работе

САМАРА 2012

УДК 519.6

Составитель: А.А. Федотов

Операции с массивами и полиномами в среде компьютерных вычислений MATLAB: Метод. указания / Самар. гос. аэрокосм. ун-т.; сост. А.А. Федотов; Самара, 2012. 12 с.

В методических указаниях изложены основные сведения об особенностях работы с числовыми массивами и полиномами в среде программирования MATLAB. Рассматривается решение различных практических задач обработки одномерных и двумерных числовых массивов средствами среды MATLAB. Приведены порядок выполнения работы и требования к отчету.

Методические указания предназначены для студентов очно-заочной формы обучения, обучающихся по специальности 201000 «Биотехнические системы и технологии» и выполняющих лабораторные работы по дисциплине “Информационные технологии”. Подготовлены на кафедре радиотехники и медицинских диагностических систем.

Ил. 3. Библиогр. 3 назв.

Печатаются по решению редакционно-издательского совета Самарского государственного аэрокосмического университета имени академика С.П. Королева

Рецензент: И.А. Кудрявцев

Цель работы: ознакомление с особенностями выполнения различных операций над числовыми массивами и полиномами в среде компьютерных вычислений MATLAB.

Задачи:

1. Изучить синтаксис языка программирования MATLAB для работы с одномерными и двумерными числовыми массивами, а также полиномами.

2. Используя полученные теоретические сведения, выполнить задания лабораторной работы и подготовить отчет.

1 Теоретические основы работы

1.1 Формирование массивов данных в системе matlab

MATLAB является системой компьютерных вычислений, специально предназначенной для осуществления сложных операций с векторами, матрицами и полиномами. Все данные в системе MATLAB представлены в виде различных массивов – векторов и матриц. Под вектором в MATLAB понимается одномерный массив чисел, а под матрицей – двумерный массив.

Массив – множественный тип данных, состоящий из фиксированного числа упорядоченных и однородных элементов. Для доступа к данным, хранящимся в определенном элементе массива, необходимо указать имя массива и порядковый номер этого элемента, называемый индексом.

Исходные значения вектора-строки можно задавать путем поэлементного ввода. Для этого вначале указывают имя вектора, затем ставят знак присваивания “=”, далее открывающую квадратную скобку “[“, за ней значения вектора, отделяя их между собой пробелами или запятыми. Запись завершается закрывающей квадратной скобкой “]”. На рисунке 1 приведено командное окно создания вектора-строки.

Вектор-столбец задается аналогично вектору строке, но элементы отделяются друг от друга знаком “;”. Для создания вектора-столбца можно также использовать форму записи с указанием значений через пробел, при этом в конце добавляется апостроф '. На рисунке 2 приведено командное окно создания вектора-столбца.

Рисунок 1 – Окно результата создания вектора-строки

Рисунок 2 – Окно результата создания вектора-столбца

Язык программирования MATLAB дает пользователям возможность сокращенного ввода вектора, элементы которого являются арифметической прогрессией.

>> A=nz:h:kz

где: nz – начальное значение прогрессии (первый элемент вектора), kz – конечное значение прогрессии (последний элемент вектора), h – разность прогрессии (шаг).

Ввод элементов матрицы осуществляется по строкам. При этом элементы строки матрицы отделяются друг от друга пробелами или запятыми, а строки отделяются друг от друга знаком «;». На рисунке 3 приведено командное окно создания матрицы.

Рисунок 3 – Окно результата создания матрицы

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

Для того чтобы MATLAB не выводил каждый раз значение переменной после ее ввода, необходимо завершать ввод каждой команды знаком “;”.

Матрицу можно преобразовать в вектор-строку с помощью команды следующего вида:

>> X=A(:);

Обращение к элементу матрицы А производится с помощью следующих команд:

A(i, j) – обращение к элементу i-й строки j-го столбца;

A(i, :) – обращение к i-й строки;

A(:, j) – обращение к j-му столбцу.

Для удаления определенного элемента массива достаточно выполнить следующую команду:

>> A(2, 3)=[];

Данная операция удаляет элемент, находящийся во второй строке и третьем столбце. Операцию удаления можно применять не только к отдельному элементу, но и ко всей строке или ко всему столбцу матрицы.

Система MATLAB в отличие от многих других компьютерных систем вычислений устанавливает начальное значение индекса массива как единицу, а не ноль.

Для выполнения операции конкатенации массивов – объединения нескольких массивов в один, в системе MATLAB необходимо выполнить следующие действия:

>> C=[A B] – горизонтальная конкатенация массивов;

>> C=[A; B] – вертикальная конкатенация массивов.

Для определения числа строк и столбцов матрицы A в системе MATLAB существует Функция size (А), возвращающая вектор [n, p], содержащий данные о количестве строк и столбцов матрицы А, соответственно.

В системе MATLAB существует несколько функций, которые позволяют формировать векторы и матрицы определенного вида:

zeros (M, N) – создает матрицу размером M на N с нулевыми элементами;

ones (M, N) – создает матрицу размером M на N с единичными элементами;

eye (M, N) – создает матрицу размером M на N с единицами по главной диагонали и всеми остальными нулями;

rand (M, N) – создает матрицу размером M на N из случайных чисел, распределенных по равномерному закону в диапазоне от 0 до 1;

randn (M, N) – создает матрицу размером M на N из случайных чисел, распределенных по нормальному закону в диапазоне от 0 до 1.