В системе MathCAD11 используются массивы двух наиболее распространенных типов: одномерные (векторы) и двумерные (матрицы).
Функции, определяемые пользователем, и массивы
Аргументы в определении функции могут быть скалярными переменными, векторами или матрицами. Функции могут также возвращать значения, которые являются скалярами, векторами или матрицами. Рис. 1.2 показывает некоторые примеры функций, имеющих аргументами массивы, и функций, которые возвращают массивы. Следует обратить внимание, что, если функция ожидает вектор или матрицу в качестве аргумента, она не будет работать для скалярного аргумента. В примере на рис. 1.2 попытка вычислить extent (3) приведёт к сообщению об ошибке “ требуется массив ”.
Если функция возвращает в результате вектор или матрицу, следует использовать для извлечения отдельного элемента нижний индекс и операторы верхнего индекса. Например, в примере на рис. 1.2 можно найти:
Рис. 1.2. Функции пользователя, связанные с векторами и матрицами
Индексация элементов массивов
Порядковый номер элемента, который является его адресом, называется индексом. Нижняя граница индексации задается значением системной переменной ORIGIN.
Имя массива увязывается с именами индексированных переменных, значениями которых являются элементы массива. Для этого достаточно в виде подстрочного индекса указать индекс элемента. Например: .
Матрицы
Матрица может рассматриваться как совокупность ряда векторов одинаковой длины, например:
Элементы матриц являются индексированными переменными, но в этом случае для каждой индексированной переменной указываются два индекса: один — для номера строки, другой — для номера столбца. Например, для указанной матрицы средний элемент обозначается как , а последний как (в случае равенства системной переменной ORIGIN=0).
Для задания векторов и матриц можно воспользоваться операцией Матрицы... в меню Математика… основного меню, введя пиктограмму с изображением шаблона матрицы. Это вызывает вначале появление диалогового окна, в котором надо указать размерность матрицы, т. е. количество ее строк т и столбцов п. Для векторов один из этих параметров должен быть равен 1. При m=1 получим вектор-столбец, а при п=1 — вектор-строку. Матрица является двумерным массивом с числом элементов .
Нижние индексы и верхние индексы
Можно обращаться к отдельным элементам массива, используя нижние индексы. Можно также обращаться к отдельному столбцу массива, используя верхний индекс. Чтобы напечатать нижний индекс, следует использовать клавишу левой скобки [ и поместить в поле целое число или пару целых чисел. Чтобы вставить оператор верхнего индекса, следует нажать [Ctrl]6 и поместить в поле целое число.
Вектор и элементы матрицы обычно нумеруются, начиная с нулевой строки и нулевого столбца. Чтобы изменить этот порядок, следует изменить как была сказано выше значение встроенной переменной ORIGIN.
Нижние индексы и элементы вектора
Чтобы увидеть нулевой элемент вектора V, следует напечатать v[0=
Можно также определять отдельные элементы вектора, используя нижний индекс, например, чтобы заменить значение на 6, следует напечатать v[2:6
Нижние индексы и элементы матрицы
Чтобы просмотреть или определить элемент матрицы, необходимо использовать два нижних индекса, отделяемые запятой. Таким образом, чтобы обратиться к элементу в i -той строке и j -том столбце матрицы M, следует напечатать:
M [i,j
Нижние индексы, подобно делению и возведению в степень удерживают ввод. Чтобы ни печаталось после [, всё остается в нижнем индексе, пока не будет нажата клавиша [Space], чтобы выйти оттуда.
Если нужно что-то добавить в выражение, следует нажать клавишу [Space], чтобы заключить все имя элемента матрицы, Mi,j, в выделяющую рамку.
На рис. 1.3 показаны некоторые примеры того, как определяются отдельные элементы матрицы и как они просматриваются. Можно также определять элементы вектора или матрицы формулой типа :=i, где i — дискретный аргумент.
Верхние индексы и столбцы матрицы
Чтобы обратиться ко всему столбцу массива, следует нажать [Ctrl]6 и поместить номер столбца в появившееся поле. На рис. 1.4 показано, как присвоить вектору V значение третьего столбца матрицы M.
Рис. 1.3. Определение и просмотр элементов матрицы
Рис. 1.4. Использование оператора верхнего индекса
для извлечения столбца из матрицы
Изменение значения системной переменной ORIGIN
По умолчанию массивы MathCAD11 нумеруются с нулевого элемента. Чтобы изменить этот порядок, следует заменить значение встроенной переменной ORIGIN.
Предположим, что требуется, чтобы все массивы начинались с первого элемента. Заменить значение ORIGIN во всем документе можно двумя способами (рис. 1.5):
§ Выбрав команду Встроенные переменные… из меню Математика … и заменив значение ORIGIN.
§ Введя глобальное определение для ORIGIN в любом месте рабочего документа. Например, чтобы установить значение ORIGIN равное 1, следует напечатать: ORIGIN ~ 1.
Рис. 1.5. Массивы, нумерующиеся с первого элемента