Вертикальная конкатенация – это объединение нескольких матриц-блоков при условии, что все составные блоки-матрицы имеют одинаковое количество столбцов. При этом, для отделения блоков вместо запятой используется ";".
A = [A1; A2;... ; AN]
Пример:
>>B1 = [1 2 3 4 5];
>>B2 = [6 7 8 9 10; 11 12 13 14 15];
>>B3 = [17 18 19 20 21];
>>B = [B1; B2; B3]
B =
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
17 |
18 |
19 |
20 |
21 |
Лекция 2
3.4. Действия над векторамиами
Различают две группы действий над векторами:
а) векторные действия – т. е. такие, которые предусмотрены векторным исчислением в математике;
б) действия по преобразованию элементов – это действия, которые преобразуют элементы вектора, но не являются операциями, разрешенными математикой.
Векторные действия над векторами
Сложение векторов. Как известно, суммироваться могут только векторы одинакового типа (т. е. такие, которые являются или векторами-строками, или векторамистолбцами), имеющие одинаковую длину (т. е. одинаковое количество элементов). Если X и Y - именно такие векторы, то их сумму Z можно получить, введя команду Z = X + Y, например:
»x = [1 2 3]; y = [4 5 6];
»v = x + y
v = 5 7 9
Аналогично осуществляется вычитание векторов.
Лекция 2
Транспонирование вектора осуществляется применением знака апострофа, который записывается сразу за записью имени вектора, который нужно транспонировать. Например:
» x’
Умножение вектора на число осуществляется с помощью знака арифметического умножения ' * ' таким образом: Z = X*r или Z = r*X, где r – некоторое действительное число.
Умножение двух векторов определено в математике только для векторов одинакового размера (длины) и лишь тогда, когда один из векторов-множителей строка, а второй - столбец. Иначе говоря, если векторы X и Y являются строками, то математическое смысл имеют лишь две формы умножения этих векторов: U = X' * Y и V = X * Y'. При этом в первом случае результатом будет квадратная матрица, а во втором - число.
Пример
»x = [1 2 3] ; y = [ 4 5 6];
»v = x' * y
v =
4 5 6
8 10 12
12 15 18
» v = x * y'
v = 32
Лекция 2
Поэлементное преобразование векторов
В языке MatLAB предусмотрен ряд операций, которые преобразуют заданный вектор в другой того же размера и типа, но не являются операциями с вектором как математическим объектом. К таким операциям относятся, например, все элементарные математические функции зависящие от одного аргумента.
Кроме этих операций в МаtLAB предусмотрено несколько операций поэлементного преобразования, осуществляемых с помощью знаков обычных арифметических действий. Эти операции применяются к векторам одинакового типа и размера. Результатом их есть вектор того же типа и размера.
Добавление (отнимание) числа к (из) каждому элемента вектора. Осуществляется с помощью знака ' + ' (' - ').
Поэлементное умножение векторов. Проводится с помощью совокупности знаков ' .* ', которая записывается между именами перемножаемых векторов. В результате получается вектор, каждый элемент которого является произведением соответствующих элементов векторов - "сомножителей".
Поэлементное деление векторов. Осуществляется с помощью совокупности знаков './ ' или '.\ '.
Поэлементное возведение в степень. Осуществляется с помощью совокупности знаков '.^ ‘.
Лекция 2
Пример 1:
»x = [1,2,3,4,5]; y = [-2,1,4,0,5];
»disp(x. /y)
Пример 2: пусть нужно вычислить значения функции: y=a e−hx sinx
при значениях аргумента х от 0 до 10 с шагом 1. Вычисление массива значений этой функции в указанных условиях можно осуществить с помощью лишь двух простых операторов :
»a = 3; h = 0.5; x = 0:10;
»y = a * exp(-h*x) . * sin(x)
y =
Columns 1 through 7
0 1.5311 1.0035 0.0945 -0.3073 -0.2361 -0.0417 Columns 8 through 11
0. 0595 0. 0544 0. 0137 -0. 0110
Аналогично осуществляется поэлементное преобразование матриц , при этом матрицы должны быть одинакового размера.
Лекция 2