Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

1.3. Основные функции над векторами и матрицами.




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

Следующие функции выполняются поэлементно, если элемент не является скаляром, и результат имеет тот же размер, что и аргумент. Это функции действительного и комплексного аргу­мента: тригонометрические - SIN(X), COS(X), тангенс TAN(X), обратные тригонометрические - ASIN(X), ACOS(X), ATAN(X), квадратный корень SQRT(X), экспонента EXP(X), натуральный логарифм LOG(X).

Это также функции CONJ(X) - определения комплексно-со­пряженного Х, IMAG(X) и REAL(X) - выделения мнимой и дей­ствительной части Х, функции округления действительного аргумента ( FIX, FLOOR, CEIL, ROUND), функции SIGN(X), ABS(X) и ANGLE(X). При этом ROUND(X) - округление до ближайшего целого, FLOOR(X) - округление до ближайшего меньшего целого, CEIL(X) - округление до ближайшего большего целого, FIX(X) - отбрасывание дробной части Х.

ABS(X) - определение модуля Х, в том числе и для комп­лексного элемента X. ANGLE(X) определяет угол - главное значение аргумента комплексного элемента Х ( -pi < ANGLE(X) < = pi).

1, если Х> 0 SIGN(X)= 0, если Х=0

-1, если Х< 0.

Для комплексного аргумента SIGN(X)=X. /ABS(X) (отобража­ет Х на единичную окружность с центром в начале координат на комплексной плоскости).

Для квадратных матриц определены функции:

DET(X)- вычисление определителя матрицы,

INV(X)- вычисление обратной матрицы, если она существует,

EIG(X)- определение собственных значений матрицы Х,

Собственные вектора матрицы Х определяются также с помо­щью функции EIG(X), для этого необходимо в левой части опе­ратора присваивания указать две переменные следующим образом:

[V, D]=EIG(X).

В этом случае V будет матрицей, столбцы которой являются собственными векторами матрицы Х, а D- диагональной матри­цей, содержащей собственные значения Х, так что

X*V=V*D.

Если же обращение имеет вид A=EIG(X), собственные значения будут представлены в виде вектора-столбца A.

Для произвольных квадратных матриц определены также функ­ции EXPM(X) и LOGM(X)- экспоненциал и логарифм в матричном смысле. Для диагональной матрицы Х результатом будет диаго­нальная матрица того же размера, соответствующая функция вы­полняется над диагональными элементами X. Для матрицы X, ко­торая может быть приведена к диагональному виду, результат вычисляется в соответствии со следующими определениями: если [V, D]=EIG(X), то

EXPM(X)=V*EXPM(D)*INV(V), a

LOGM(X)=V*LOGM(D)*INV(V).

Следующие функции определены для матриц произвольной формы: SIZE, MAX, MIN, SUM, PROD, SORT. Функция SIZE(X) вы­числяет вектор из двух значений и вызов ее может иметь вид:

[m, n]=SIZE(X),

m- количество строк матрицы Х, n- количество столбцов.

Для определения длины вектора V предназначена функция LENGTH(V) = MAX(SIZE(V)).

Если Х - вектор из действительных чисел, функция MAX(X) определяет максимальный элемент вектора. Для комплексных векторов результатом будет максимальный модуль элемента Х. Если обратиться к функции

[z, i]=MAX(X),

то i укажет индекс относительно начала вектора Х макси­мального элемента z. Если X- матрица, то операция выполняется для каждого столбца и результатом будет один или два вектора-строки, в зависимости от способа обращения, имеющие столько элементов, сколько столбцов у матрицы Х. Если А и В - матрицы одинаковых размеров, то МАХ(A, B) будет матри­ца того же размера, каждый элемент которой будет максималь­ным из соответствующих элементов матрицы А или В. Аналогич­но определена и функция вычисления минимума MIN.

Отметим полезную функцию FIND(K), определенную для век­торов, которая вычисляет другой вектор, состоящий из индек­сов тех элементов К, которые отличны от нуля. Например, при выполнении

I=FIND(X> 100)

вектор I будет содержать номера тех элементов вектора Х, которые больше, чем 100.

Функции SUM(X) и PROG(X) вычисляют сумму и произведение элементов вектора Х. Если Х - матрица, вычисление ведется по столбцам, и результатом будет вектор-строка. Функция SORT(X) располагает элементы вектора в возрастающем порядке (по модулю для комплексных величин). Если Х - матрица, сор­тировка ведется по столбцам и результат имеет те же размеры, что и Х. При обращении

[Y, I]=SORT(X)

вычисляется матрица индексов I, соответствующих элементам Y.

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

3     2

аргумента, например, полином 4х - 2х + х - 15 представляет­ся вектором [4 -2 1 -15].

Функция ROOTS(P) вычисляет вектор-столбец всех корней, в том числе и комплексных, полинома, заданного вектором Р. Метод основан на вычислении собственных значений соответ­ствущей матрицы. Если А и В описывают полиномы, то CONV(A, B) вычисляет произведение полиномов ( свертку векторов А и В). Функция POLYVAL(P, X) вычисляяет значения полинома Р для всех элементов Х. Функция POLYVALM(P, X), где Х - квадрат­ная матрица, вычисляет матричный полином Р(X).

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

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...