dind2sind

Функция перевода двойного индекса элемента матрицы в одинарный

Синтаксис:

sind = dind2sind(rows, cols, dind1, dind2);

Аргументы:

Имя Тип данных Описание
rows integer Целое число строк матрицы, индексы которой конвертируются
cols integer Целое число столбцов матрицы, индексы которой конвертируются
dind1 integer Целое число, номер строки матрицы
dind2 integer Целое число, номер столбца матрицы

Описание:

В некоторых системах инженерных расчетов, обращение к элементу матрицы происходит с помощью одного индекса i (single index) el = M(i) и нумерации элементов матрицы осуществляется по столбцам сверху вниз начиная с левого. В то время, как в SimInTech используется адресация с помощью двух индексов i,j (double index) el = M[i][j], которые обозначают номер строки и номер столбца, на пересечении которых находится элемент. Функция dind2sind осуществляет вычисление одинарного индекса i матрицы размерностью rows×cols, для обращения к элементу, заданному двойным индексом dind1, dind2.

Результат:

Имя Тип данных Описание
sind integer Целое число, одинарный индекс элемента матрицы

Пример:

i = 4; // Номер строки
j = 1; // Номер столбца
sind2 = dind2sind(5, 6, i, j);  // преобразование индексов SimmInTech в индекс Matlab

В данном примере двумя индексами i=4, j=1 задан элемент в некой матрице, размерностью 5×6. С помощью функции dind2sind осуществляется получение одинарного индекса матрицы, равного 4.

Дополнительные материалы