Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
47
Добавлен:
13.02.2015
Размер:
2.44 Mб
Скачать

МАТЛАБ. МАТЕМАТИЧЕСКИЕ ЗАДАЧИ.

Задачи линейной алгебры. Рассмотрим в том порядке, который представляется последовательным с точки зрения обучения навыкам работы в матпакете. Поэтому будем идти не по учебнику линейной алгебры, а в другой последовательности задач того же содержания. Предполагается что учащиеся знакомы с курсом линейной алгебры.

Горизонтальная конкатенация векторов-строк это объединение нескольких строк, состоящих из чисел, в одну длинную строку.

Вертикальная конкатенация векторов-строк это объединение нескольких строк в матрицу.

Горизонтальная конкатенация матриц дает матрицу, число столбцов в которой равно сумме числа столбцов исходных матриц.

Вертикальная конкатенация матриц дает матрицу, число строк в которой равно сумме числа строк в исходных матрицах.

Важную роль при работе с матрицами играет знак двоеточия.

Можно выделить из матрицы столбец.

Можно выделить из матрицы строку.

Можно выделить часть матрицы, указав, какие строки и столбцы должна в нее войти из состава исходной матрицы.

Можно в матрицу с большим числом строк и столбцов вставить матрицу с меньшим числом строк и столбцов, при этом прежние элементы большой матрицы, стоявшие на этих местах, будут утрачены. На их месту будут стоять элементы меньшей матрицы.

Можно удалить из матрицы целиком строку или столбец.

Прямоугольную матрицу можно преобразовать в столбец, то есть все ее элементы будут не в нескольких строках и столбцах, а в одном столбце.

Аналогично можно из вектора выделить определенные элементы.

Можно удалить определенный элемент из вектора.

Операции над матрицами. Матрицы можно складывать (вычитать) друг с другом или с числом (поэлементно).

Матрицы можно умножать на число (поэлементно) и на матрицу. Также можно поэлементно умножать (делить) одну матрицу на другую.

Матрицы можно транспонировать.

Можно получить обратную матрицу.

Можно получить матрицу как функцию (поэлементно) от другой матрицы. Например, возвести в степень или вычислить синус.

Функции операций над векторами. Для использования вектора бывает необходимо определить функцией length его длину. Также бывает нужно функцией prod вычислить произведение его элементов. Часто бывает нужна сумма sum элементов вектора. Нахождение минимума и максимума осуществляют функции min и max. Среднее арифметическое определяет функция mean.

Для характерных задач курса линейной алгебры есть функция dot вычисляющая скалярное произведение векторов и функция cross находящая векторное произведение.

Для сортировки одномерного массива есть функция sort (по возрастанию). По убыванию используют ее же со знаком минус –sort.

Для получения единичной матрицы заданных размеров есть функция eye.

Для получения матрицы состоящей из единиц есть функция ones.

Для получения матрицы состоящей из нулей есть функция zeros.

Функция diag(Vect, K) возвращает квадратную матритцу с элементами вектора V на K-й диагонали или, если диагональ не указана, то на главной диагонали.

Если же Vect это матрица определенная заранее, то функция вернет вектор, состоящий из элементов K-й диагонали (если диагональ не указана, то главной диагонали).

Для заполнения матрицы случайными числами есть функция rand. Если размеры матрицы не указаны, то будет одно случайное число. Кроме того, для заполнения числами по нормальному закону есть функция randn.

Для создания массива из N значений от Х до У равномерно отстоящих друг от друга есть функция linspace(X,Y,N). Если надо равномерно в логарифмическом масштабе заполнить массив от 10А до 10В то применяется функция logspace(A,B,N).

Можно размножить матрицу А, создав такую матрицу, которая состоит из N копий матрицы A по горизонтали и M по вертикали. Для этого есть функция repmat(A,N,M).

Для создания нижнетреугольной матрицы есть функция tril. Если в ней не указан номер диагонали, то строится по отношению к главной диагонали.

Для верхнетреугольной матрицы есть функция triu, строит матрицу относительно указанной строки.

Функция size определяет число строк и столбцов матрицы.

Функции min, max, mean применяются не только к векторам, но и к матрицам. Они возвращают вектор значений, каждое из которых является результатом применения функции к столбцу матрицы.

Функция sort упорядочивает по возрастанию каждый столбец матрицы.

Определитель матрицы (квадратной) вычисляет функция det.

След матрицы (сумму элементов главной диагонали) вычисляет функция trace.

Норму матрицы возвращает функция norm. При этом ее параметры 1-первая норма, 2-вторая норма, inf-бесконечная норма, ‘fro’-евклидова норма матрицы.

Число обусловленности матрицы (в зависимости от параметра) возвращает функция cond.

Величину, обратную числу обусловленности (относительно первой нормы), возвращает функция rcond. Если число маленькое, плохо обусловлена. Если близко к единице, то хорошо обусловлена.

Собственные значения матрицы находит функция eig. Она же находит матрицу собственных векторов (записывая их в столбцы), если вызвать ее в формате [Matr, Chisla]=eig(A) при этом собственные значения будут в диагональной матрице Chisla. Коэффициенты характеристического полинома возвращает функция poly.

Для решения системы линейных уравнений вида Ax=b предназначена функция linsolve(A,b).

Ранг матрицы системы можно узнать функцией rank. Она же возвращает и ранг расширенной матрицы.