Векторизация массива
Векторная алгебра Mathcad включает несколько необычный оператор, который называется оператором векторизации (vectorize operator). Этот оператор предназначен, как правило, для работы с массивами. Он позволяет провести однотипную операцию над всеми элементами массива (т. е. матрицы или вектора), упрощая тем самым программирование циклов. Например, иногда требуется умножить каждый элемент одного вектора на соответствующий элемент другого вектора, чтобы в результате также получился вектор. Непосредственно такой операции в Mathcad нет, но ее легко осуществить с помощью векторизации (листинг 7.12). Для этого:
- Введите векторное выражение, как показано во второй строчке листинга 7.12 (обратите внимание, что в таком виде символ умножения обозначает оператор скалярного произведения векторов).
- Переместите курсор таким образом, чтобы линии ввода выделяли все выражение, которое требуется подвергнуть векторизации.
- Введите оператор векторизации, нажав кнопку Vectorize (Векторизация) на панели Matrix (Матрица) (листинг 7.12), или сочетанием клавиш CTRL + -.
- Введите =, чтобы получить результат.
Листинг 7.12. Использование оператора векторизации для перемножения элементов вектора:
Большинство неспецифических функций Mathcad не требуют векторизации для проведения одной и той же операции над всеми элементами вектора. Например, аргументом тригонометрических функций по определению является скаляр. Если попытаться вычислить экспоненту от векторной величины, Mathcad осуществит векторизацию по умолчанию, возведя в степень е каждый элемент и выдав в качестве результата соответствующий вектор (листинг 7.13).
Листинг 7.13. Векторизация аргумента необязательна для большинства встроенных функций Mathcad: