logo
mathcad

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

Большинство операторов и функций не работает с составными массивами, поскольку трудно определить их действие в таком сложном случае. Например, совершенно непонятно, что понимать под обращением составной матрицы. При попытке выполнить обычные арифметические операции над составными массивами скорее всего появится либо сообщение об ошибке типа переполнение, либо бессмысленный результат.

Составные массивы предназначены главным образом для удобного хранения и доступа к данным.

Некоторые операторы и функции всё же применимы и полезны для использования с составными массивами. Например, транспонирование выполняет осмысленное действие, как показано в нижней части Рисунка 23. На следующей странице приведён список операторов, применяемых к составным массивам:

Операция

Обозначение

Клавиши

Описание

Транспонирование

AT

[Ctrl]1

Переводит столбцы A в строки.

Верхний индекс

A<n>

[Ctrl]6

n-ный столбец массива A. Возвращает вектор.

Нижний индекс

vn

[

n-ный элемент вектора.

Двойной индекс

Am,n

[

элемент матрицы из m-ого ряда и n-ого столбца.

Булево равенство

w = z

[Ctrl]=

Булево равенство. Возвращает 1, если два составных массива, вкупе со всеми вложенными массивами, содержащимися внутри них, идентичны; иначе возвращает 0.

Вероятно, весьма полезными для использования с составными массивами окажутся функции, связанные с определением размеров массивов, а также объединением массивов и выделением подмассивов. В частности, можно использовать функции cols и rows, чтобы обнаружить элементы массива, которые являются вложенными массивами. Обе эти функции возвращают нуль, когда элемент — скаляр, и соответствующее число в противном случае. Функции, которые будут полезными при работе с составными массивами:

Имя функции

Возвращается...

rows(A)

Число строк в матрице A.

cols(A)

Число столбцов в матрице A.

length(v)

Число элементов в векторе v.

last(v)

Индекс последнего элемента в векторе v.

augment(A, B)

Массив, сформированный размещением A и B бок о бок. Массивы A и B должны иметь одинаковое число строк.

stack(A, B)

Массив, сформированный размещением A над B. Массивы A и B должны иметь одинаковое число столбцов.

submatrix(A, ir, jr, ic, jc)

Подмассив, состоящий изо всех элементов, содержащихся в строках с ir по jr и столбцах с ic по jc. Чтобы поддерживать порядок строк и-или столбцов, удостоверьтесь, чтоir<=jr и ic <=jc, иначе порядок строк и-или столбцов будет обращён.

Разделы

  • Дискретные аргументы

Как, определяя дискретный аргумент, задавать переменной ряд значений.

  • Таблицы вывода

Как отображать таблицу значений.

  • Ввод числовых значений в таблицу

Как использовать дискретные аргументы, чтобы ввести таблицу значений.

  • Итерационные вычисления

Как выполнять итерационные вычисления с одним или двумя дискретными аргументами.

  • Рекурсивные вычисления

Как выполнять многократные вычисления, в которых значения на одном шаге зависят от значений на предыдущем шаге. Описанные рекурсивные методы дают основу для решения конечно-разностных уравнений с помощью Mathcad.

  • Векторная запись

Когда использование оператора векторизации предпочтительнее использования нижних индексов.

Все итеративные процессы в Mathcad основаны на дискретных аргументах. Если не обращать внимание на способ определения, то дискретный аргумент выглядит как обычная переменная. Различие в том, что обычная переменная принимает только одно значение, в то время как дискретный аргумент принимает ряд значений, отделяемых одинаковыми шагами. Например, можно определить дискретный аргумент, чтобы пройти от -4 до 4 с шагом 2. Если теперь использовать этот дискретный аргумент в выражении, Mathcad вычислит это выражение пять раз, один раз для каждого значения, принимаемого дискретным аргументом.

Без дискретных аргументов было бы невозможным полное использование возможностей Mathcad. Этот раздел показывает, как определять и использовать дискретные аргументы, чтобы выполнять многократные вычисления.