Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MLab.doc
Скачиваний:
5
Добавлен:
17.11.2018
Размер:
818.69 Кб
Скачать

Анализ данных (для постолбцовой обработке матриц)

Пусть имеем матрицу А

>> A=[1 2 3;4 5 6;7 8 9];

В функциях для вычисления суммы и произведения (sum и prod) элементов матрицы результатом будет вектор- строка, число элементов которой равно числу столбцов матрицы.

  • sum(A) – сумма элементов в столбцах матрицы

>> sum(A)

ans =

12 15 18

или можно записать:

>> sum(A,1)

ans =

12 15 18

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

>> sum(A,2)

ans =

6

15

24

  • Произведение элементов матрицы по столбцам

>> prod(A)

ans =

28 80 162

Произведение элементов матрицы по строкам

>> prod(A')

ans =

6 120 504

Произведение с 1 по 4

>> prod(1:4)

ans =

24

  • Есть функции, которые выдают наибольшее и наименьшее значения в строке или столбце. Результат – вектор-строка.

Максимальное значение в столбце.

>> max(A)

ans =

7 8 9

Максимальное значение в строке.

>> max(A')

ans =

3 6 9

Аналогично вычисляется наименьшее значение:

>> min(A)

ans =

1 2 3

>> min(A')

ans =

1 4 7

  • Среднее арифметическое в столбце. Результат – вектор-строка из средних арифметических в каждом столбце

>> mean(A)

ans =

4 5 6

>> mean(A')

ans =

2 5 8

  • Сортировка

Сортировка элементов каждого столбца по возрастанию

>>sort(A)

Сортировка элементов каждой строки по возрастанию

>>sort(A,2)

Все эти функции можно применить к вектору, независимо от того столбец это или строка.

Действия с полиномами (многочленами)

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

Полином(многочлен) – это выражение вида:

P(x)=a1xn+a2xn-1+…..+anx+an+1

В Matlab полином задаётся и хранится в виде вектора, элементами которого являются коэффициенты полинома.

P=[a1 a2 …an an+1]

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

Например, пусть задан полином 2x3+x2-3x+5. Вектор коэффициентов полинома будет:

p=[2 1 -3 5]

  • Для вычисления значения полинома от некоторого аргумента предназначена функция polyval.

y=polyval(p,x), где

p – вектор коэффициентов полинома;

х – значение аргумента, при котором надо посчитать значение полинома.

>> P=[2 1 -3 5];

>> Y=polyval(P,1)

Y =

5

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

>> P=[2 1 -3 5];

>> X=1:5;

>>Y=polyval(P,X)

Y =

5 19 59 137 265

Вычислить корни полинома можно с помощью функции roots. Число корней определяется степенью полинома.

>> P=[2 1 -3 5];

>> roots(P)

ans =

-1.9388

0.7194 + 0.8786i

0.7194 - 0.8786i

  • Для выполнения умножения и деления полиномов предназначены функции conv и deconv.

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

> P=[2 1 -3 5];

>> polyder(P)

ans =

6 2 -3

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]