logo
mathcad

Ограничение размеров массива

Ограничение размера массива зависит от памяти, доступной Вашей системе. Для большинства систем это будет по крайней мере 1 миллион элементов. Размер никогда не может превышать 8 миллионов элементов. Если попытаться определить массив больший, чем допускает Ваша система, появится сообщение об ошибке “недостаточно  памяти”. Элементы могут быть распределены среди любой комбинации строк и столбцов. Когда объём доступной памяти ограничен, и определяются несколько очень больших массивов, допустимый размер массива может уменьшаться.

Рисунок 8: Использование функции augment для объединения двух матриц.

Некоторые из операторов Mathcad имеют особые значения в применении к векторам и матрицам. Например, символ умножения означает просто умножение, когда применяется к двум числам, но он же означает скалярное произведение, когда применяется к векторам, и умножение матриц — когда применяется к матрицам.

Таблица  описывает векторные и матричные операторы Mathcad. Многие из этих операторов доступны из палитры символов. Обратите внимание, что операторы, которые ожидают в качестве аргумента вектор, всегда ожидают вектор-столбец, а не вектор-строку.

Чтобы заменить вектор-строку на вектор-столбец, используйте оператор  транспонирования [Ctrl]1.

Операторы, не перечисленные в этой таблице, не будут работать для векторов и матриц. При попытке использовать такой оператор с вектором или матрицей Mathcad будет отмечать это сообщением об ошибке “неверная операция с массивом”, или “нескалярная  величина”. Можно, однако, использовать оператор векторизации, чтобы выполнить любую скалярную операцию или функцию поэлементно на векторе или матрице. См. раздел “Выполнение параллельных вычислений” ниже в этой главе. Рисунок 9 показывает использование некоторых векторных и матричных операций.

Рисунок 9: Векторные и матричные операции.

В следующей таблице

Операция

Обозначение

Клавиши

Описание

Умножение  матрицы на скаляр

*

Умножает каждый элемент A на скаляр z.

Скалярное  произведение

*

Возвращает скаляр: . Векторы должны иметь одинаковое число элементов.

Матричное  умножение

*

Возвращает произведение матриц A и B, число столбцов в A должно соответствовать числу строк в B.

Умножение  матрицы на   вектор

*

Возвращает произведение матриц A и v, число столбцов в A должно соответствовать числу строк в v.

Деление

/

Делит каждый элемент массива на скаляр z.

Сложение векторов и матриц

A + B

+

Складывает соответствующие элементы A и B, массивы A и B должны иметь одинаковое число строк и столбцов.

Скалярная  сумма

A + z

+

Добавляет  z к каждому элементу A.

Векторное и матричное вычитание

A - B

-

Вычитает соответствующие элементы массива A из элементов массива B, массивы A и B должны иметь одинаковые размеры.

Скалярное  вычитание

A - z

-

Вычитает z из каждого элемента A.

Изменение знака

- A

-

Умножает все элементы A на -1.

Степени матрицы, обращение матриц

Mn

^

n-ная степень квадратной матрицы M (использует умножение матриц). n должен быть целым числом. M-1 представляет матрицу, обратную к M, другие отрицательные степени — степени обратной матрицы. Возвращает матрицу.

Длина вектора

|v|

|

Возвращает , где — вектор, комплексно сопряженный к v.

Детерминант

|M|

|

Возвращает детерминант квадратной матрицы M, результат — скаляр.

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

AT

[Ctrl]1

Возвращает матрицу, чьи строки — столбцы А, и чьи столбцы — строки A. А может быть вектором или матрицей.

Векторное  произведение

u x v

[Ctrl]8

Возвращает векторное произведение для векторов с тремя элементами u и v.

Комплексное  сопряжение

"

Меняет знак мнимой части каждого элемента A.

Суммирование элементов

[Ctrl]4

Суммирует элементы вектора v; возвращает скаляр.

Векторизация

[Ctrl] -

Предписывает в выражении с A производить операции поэлементно. Полное описание дано в разделе “Выполнение параллельных вычислений”

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

A<n>

[Ctrl]6

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

Нижний индекс (вектора)

vn

[

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

Нижние индексы матрицы

Am,n

[

Элемент матрицы, находящийся в m-ном  ряду и n-ной строке.

Mathcad содержит функции для обычных в линейной алгебре действий с массивами. Эти функции предназначены для использования с векторами и матрицами. Если явно не указано, что функция определена для векторного или матричного аргумента, не следует в ней использовать массивы как аргумент. Обратите внимание, что операторы, которые ожидают в качестве аргумента вектор, всегда ожидают вектор-столбец, а не вектор-строку. Чтобы заменить вектор-строку на вектор-столбец, используйте оператор транспонирования [Ctrl]1.

Если Вы используете Mathcad PLUS, Вы будете также иметь несколько дополнительных функций, определенных для векторов. Эти функции скорее предназначены для анализа данных, чем для действий с матрицами. Они обсуждены в Главе “Встроенные функции”.

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