Выше были рассмотрены операции с простыми переменными. Однако с их помощью сложно описывать сложные данные, такие как случайный сигнал, поступающий на вход фильтра или хранить кадр изображения и т.п. Поэтому в языках высокого уровня предусмотрена возможность хранить значения в виде массивов. В MatLab эту роль выполняют векторы и матрицы.
Ниже показан пример задания вектора с именем a, и содержащий значения 1, 2, 3, 4:
a = [1 2 3 4]; % вектор-строка
Для доступа к тому или иному элементу вектора используется следующая конструкция языка:
disp( a(1) ); % отображение значения 1-го элемента вектора
disp( a(2) ); % отображение значения 2-го элемента вектора
disp( a(3) ); % отображение значения 3-го элемента вектора
disp( a(4) ); % отображение значения 4-го элемента вектора
т.е. нужно указать имя вектора и в круглых скобках написать номер индекса элемента, с которым предполагается работать. Например, для изменения значения 2-го элемента массива на 10 достаточно записать
a(2) = 10; % изменение значения 2-го элемента на 10
Часто возникает необходимость определения общего числа элементов в векторе, т.е. определения его размера. Это можно сделать, воспользовавшись функцией length() следующим образом:
N = length(a); % (N=4) число элементов массива а
Если требуется задать вектор-столбец, то это можно сделать так
a = [1; 2; 3; 4]; % вектор-столбец
b = [1 2 3 4]’; % вектор-столбец
при этом доступ к элементам векторов осуществляется также как и для векторов-строк.
Следует отметить, что векторы можно составлять не только из отдельных чисел или переменных, но и из векторов. Например, следующий фрагмент программы показывает, как можно создавать один вектор на основе другого:
a = [1 2 3 4]; % начальный вектор a = [1 2 3 4]
b = [a 5 6]; % второй вектор b = [1 2 3 4 5 6]
Здесь вектор b состоит из шести элементов и создан на основе вектора а. Используя этот прием, можно осуществлять увеличение размера векторов в процессе работы программы:
a = [a 5]; % увеличение вектора а на один элемент
Недостатком описанного способа задания (инициализации) векторов является сложность определения векторов больших размеров, состоящих, например, из 100 или 1000 элементов. Чтобы решить данную задачу, в MatLab существуют функции инициализации векторов нулями, единицами или случайными значениями:
a1 = zeros(1, 100); % вектор-строка, 100 элементов с
% нулевыми значениями
a2 = zeros(100, 1); % вектор-столбец, 100 элементов с
% нулевыми значениями
a3 = ones(1, 1000); % вектор-строка, 1000 элементов с
% единичными значениями
a4 = ones(1000, 1); % вектор-столбец, 1000 элементов с
% единичными значениями
a5 = rand(1000, 1); % вектор-столбец, 1000 элементов со
% случайными значениями
Матрицы в MatLab задаются аналогично векторам с той лишь разницей, что указываются обе размерности. Приведем пример инициализации единичной матрицы размером 3х3:
E = [1 0 0; 0 1 0; 0 01]; % единичная матрица 3х3
E = [1 0 0
0 1 0
0 0 1]; % единичная матрица 3х3
Аналогичным образом можно задавать любые другие матрицы, а также использовать приведенные выше функции zeros(), ones() и rand(), например:
A1 = zeros(10,10); % нулевая матрица 10х10 элементов
A2 = zeros(10); % нулевая матрица 10х10 элементов
A3 = ones(5); % матрица 5х5, состоящая из единиц
A4 = rand(100); % матрица 100х100, из случайных чисел
Для доступа к элементам матрицы применяется такой же синтаксис как и для векторов, но с указанием строки и столбца где находится требуемый элемент:
A = [1 2 3;4 5 6;7 8 9]; % матрица 3х3
disp( A(2,1) ); % вывод на экран элемента, стоящего во
% второй строке первого столбца, т.е. 4
disp( A(1,2) ); % вывод на экран элемента, стоящего в
% первой строке второго столбца, т.е. 2
Также возможны операции выделения указанной части матрицы, например:
B1 = A(:,1); % B1 = [1; 4; 7] – выделение первого столбца
B2 = A(2,:); % B2 = [1 2 3] – выделение первой строки
B3 = A(1:2,2:3); % B3 = [2 3; 5 6] – выделение первых двух
% строк и 2-го и 3-го столбцов матрицы А.
Размерность любой матрицы или вектора в MatLab можно определить с помощью функции size(), которая возвращает число строк и столбцов переменной, указанной в качестве аргумента:
a = 5; % переменная а
A = [1 2 3]; % вектор-строка
B = [1 2 3; 4 5 6]; % матрица 2х3
size(a) % 1х1
size(A) % 1х3
size(B) % 2х3
© 2022 Научная библиотека
Копирование информации со страницы разрешается только с указанием ссылки на данный сайт
- length
- Syntax
- Description
- Examples
- Number of Vector Elements
- Length of Rectangular Matrix
- String Array
- Length of Structure Fields
- Input Arguments
- X — Input array scalar | vector | matrix | multidimensional array
- Extended Capabilities
- Tall Arrays Calculate with arrays that have more rows than fit in memory.
- C/C++ Code Generation Generate C and C++ code using MATLAB® Coder™.
- GPU Code Generation Generate CUDA® code for NVIDIA® GPUs using GPU Coder™.
- HDL Code Generation Generate Verilog and VHDL code for FPGA and ASIC designs using HDL Coder™.
- Thread-Based Environment Run code in the background using MATLAB® backgroundPool or accelerate code with Parallel Computing Toolbox™ ThreadPool .
- GPU Arrays Accelerate code by running on a graphics processing unit (GPU) using Parallel Computing Toolbox™.
- Distributed Arrays Partition large arrays across the combined memory of your cluster using Parallel Computing Toolbox™.
- Как найти длину вектора matlab
- 💡 Видео
Видео:Длина вектора через координаты. 9 класс.Скачать
length
Length of largest array dimension
Видео:Нахождение длины вектора через координаты. Практическая часть. 9 класс.Скачать
Syntax
Видео:Нахождение длины вектора. Практическая часть. 9 класс.Скачать
Description
L = length( X ) returns the length of the largest array dimension in X . For vectors, the length is simply the number of elements. For arrays with more dimensions, the length is max(size(X)) . The length of an empty array is zero.
Видео:Модуль вектора. Длина вектора.Скачать
Examples
Number of Vector Elements
Find the length of a uniformly spaced vector in the interval [5,10] .
Length of Rectangular Matrix
Find the length of a 3-by-7 matrix of zeros.
String Array
Create a string array and compute its length, which is the number of elements in each row.
Length of Structure Fields
Create a structure with fields for Day and Month . Use the structfun function to apply length to each field.
Видео:МОДУЛЬ ВЕКТОРА длина вектора 10 и 11 классСкачать
Input Arguments
X — Input array
scalar | vector | matrix | multidimensional array
Input array, specified as a scalar, vector, matrix, or multidimensional array.
Complex Number Support: Yes
To find the number of characters in a string or character vector, use the strlength function.
length does not operate on tables. To examine the dimensions of a table, use the height , width , or size functions.
Видео:MATLAB 04 Массивы и матрицыСкачать
Extended Capabilities
Tall Arrays
Calculate with arrays that have more rows than fit in memory.
This function fully supports tall arrays. For more information, see Tall Arrays.
C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.
GPU Code Generation
Generate CUDA® code for NVIDIA® GPUs using GPU Coder™.
HDL Code Generation
Generate Verilog and VHDL code for FPGA and ASIC designs using HDL Coder™.
Thread-Based Environment
Run code in the background using MATLAB® backgroundPool or accelerate code with Parallel Computing Toolbox™ ThreadPool .
This function fully supports thread-based environments. For more information, see Run MATLAB Functions in Thread-Based Environment.
GPU Arrays
Accelerate code by running on a graphics processing unit (GPU) using Parallel Computing Toolbox™.
This function fully supports GPU arrays. For more information, see Run MATLAB Functions on a GPU (Parallel Computing Toolbox) .
Distributed Arrays
Partition large arrays across the combined memory of your cluster using Parallel Computing Toolbox™.
This function fully supports distributed arrays. For more information, see Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox) .
Видео:Работа с массивами. Вектор столбцы и вектор строки 1. Урок 7Скачать
Как найти длину вектора matlab
· Length ( V ) – определяет длину вектора V ;
· Prod ( V ) или prod ( A , K ) – вычисляет произведение элементов массива V или произведения столбцов или строк матрицы в зависимости от значения k ;
· Sum ( V ) или sum ( A , k ) – вычисляет сумму элементов массива V или сумму столбцов или строк матрицы в зависимости от значения k ;
· Dot ( v 1, v 2) – вычисляет скалярное произведение векторов v 1 и v 2, то же значение выдаст функция sum ( v 1.* v 2);
· Cross ( v 1, v 2) – определяет векторное произведение векторов v 1 и v 2;
· Min ( V ) – находит минимальный элемент массива V , вызов в формате [ k , n ]= min ( V ) дает возможность определить минимальный элемент k и его номер в массиве n ;
· Max ( V ) – находит максимальный элемент массива V или при [ k , n ]= max ( V ) определяет максимум и его номер;
· Sort ( V ) – выполняет упорядочивание массива V ;
· Det (М) — вычисляет опеределитель квадратной матрицы М;
· Rank ( M ) – определяет ранг матрицы М;
· Norm ( M , p ) – возвращает различные виды норм матрицы M в зависимости от p ( p =1, 2 inf , fro );
· Cond ( M , p ) – возвращает число обусловленности матрицы M , основанное на норме p ;
· Eye ( n , m ) или eye ( n ) – возвращает прямоугольную матрицу с единицами по главной диагонали или квадратную единичную матрицу;
· Ones ( n , m ) или ones ( n ) – формирует прямоугольную или квадратную матрицу, состоящую из единиц;
· Zeros ( n , m ) или zeros ( n ) – возвращает прямоугольную или квадратную нулевую матрицу;
· Diag ( V , n ) или diag ( V ) – возвращает квадратную матрицу с элементами V на k -й диагонали или элементами V на главной диагонали;
· Inv ( M ) – возвращает матрицу, обратную к М;
· Eig ( M ) – возвращает вектор собственных значений матрицы М, вызов функции в формате [ V , D ]= eig ( M ) даст матрицу V , столбцы которой – собственные векторы матрицы M , и диагональную матрицу D , содержащую собственные значения матрицы M ;
· Linsolve ( A , b ) – возвращает решение системы линейных уравнений A * x = b , вызов в формате linsolve ( A , b , options ) позволяет задать метод решения уравнения. Если задать функцию в виде [ x , r ]= linsolve ( A , b ), то она вернет x – решение системы и r – ранг матрицы A .
· Rref ( M ) – осуществляет приведение матрицы М к треугольной форме, используя метод исключений Гаусса;
· Chol ( M ) – возвращает разложение по Халецкому для положительно определенной симметрической матрицы М;
· Lu ( M ) – выполняет LU -разложение, возвращает две матрицы: нижнюю треугольную L и верхнюю треугольную U ;
· Gr ( M ) – выполняет QR – разложение, возвращает ортогональную матрицу Q и верхнюю треугольную R ;
💡 Видео
2-4 MATLAB - Матрицы и индексацияСкачать
Математика это не ИсламСкачать
Основы линейной алгебры. 2. Векторы. Часть 1Скачать
Векторы. Метод координат. Вебинар | МатематикаСкачать
Координаты вектора. 9 класс.Скачать
MatLab. 3. 2b. Сложение, вычитание и умножение векторовСкачать
Индексация массивов в языке MATLAB (GNU Octave). ВекторыСкачать
MatLab. 3.2. Двумерные массивы чисел: матрицы и векторыСкачать
Математика без Ху!ни. Смешанное произведение векторовСкачать