|
9.2.1. Функции создания матриц
Самым наглядным способом создания матрицы или вектора является применение первой кнопки панели инструментов Matrix (Матрицы) (см. разд. "Массивы" гл. 4). Однако в большинстве случаев, в частности при программировании сложных проектов, удобнее бывает создавать массивы с помощью встроенных функций.
Определение элементов матрицы через функцию
- matrix(M,N,f) — создание матрицы размера MXN, каждый i,j
элемент которой есть f (i, j) (листинг 9.19);
- м — количество строк;
- N — количество столбцов;
- f (i, j) — фуНКЦИЯ.
Листинг 9.19. Создание матрицы

Для создания матриц имеются еще две специфические функции, применяемые, в
основном, для быстрого и эффектного представления каких-либо зависимостей в
виде трехмерных графиков (типа поверхности или пространственной кривой). Все
их аргументы, кроме первого (функции), необязательны. Рассмотрим первую из функций.
- СгеаtеSрасе(F(или f1, f2, f3) , t0, t1, tgrid, fmap) — создание
вложенного массива, представляющего х-, у- и z-координаты параметрической
пространственной кривой, заданной функцией р;
- F(t) — векторная функция из трех элементов, заданная параметрически
относительно единственного аргумента t;
- f1(t) ,f2(t), f3(t) — скалярные функции;
- t0 — нижний предел t (по умолчанию -5);
- t1 — верхний предел t (по умолчанию 5);
- tgrid — число точек сетки по переменной t (по умолчанию 2о);
- fmap — векторная функция от трех аргументов, задающая преобразование
координат.
О вложенных массивах читайте в разд. "Создание тензора"
гл. 4.

Рис. 9.4. Использование функции CreateSpace с разным набором
параметров
Пример использования функции CreateSpace показан на рис. 9.4. Заметьте, для
построения графика спирали не потребовалось никакого дополнительного кода, кроме
определения параметрической зависимости в вектор-функции F!
Функция создания матрицы для графика трехмерной поверхности устроена
совершенно аналогично, за тем исключением, что для определения поверхности требуется
не одна, а две переменных. Пример ее использования иллюстрирует рис. 9.5.

Рис. 9.5. Использование функции CreateMesh с разным набором
параметров
- CreateMesh(F(или g, или f1, f2, f3) , s0, s1, t0, t1, sgrid, tgrid, fmap)
- создание вложенного массива, представляющего х-, у- и z-координаты параметрической
поверхности, заданной функцией F;
- F(s,t) — векторная функция из трех элементов, заданная параметрически
относительно двух аргументов s и t;
- g (s, t) — скалярная функция;
- f1(s,t),f2(s,t),f3(s,t) — скалярные функции;
- s0, t0 — нижние пределы аргументов s, t (по умолчанию -5);
- s1, t1 — верхние пределы аргументов s, t (по умолчанию 5);
- sgrid, tgrid — число точек сетки по переменным s и t (по
умолчанию 20);
- fmap — векторная функция из трех элементов от трех аргументов,
задающая преобразование координат.
Примеры вложенных массивов, которые создаются функциями createMesh
и createspace, приведены в листинге 9.20. Каждая матрица из числа трех вложенных
матриц, образующих массив, определяет х-, у- и z-координаты точек поверхности
или кривой, соответственно.
Листинг 9.20. Результат действия функций CreateMeeh и CreateSpace (рис. 9.4
- 9.5)

Создание матриц специального вида
В Mathcad легко создать матрицы определенного вида с помощью одной из встроенных функций. Примеры использования этих функций приведены в листинге 9.21.
- identity (N) — единичная матрица размера NXN;
- diag(v) — диагональная матрица, на диагонали которой находятся
элементы вектора v;
- geninv(A) — создание матрицы, обратной (слева) матрице А;
- rref (A) — преобразование матрицы или вектора А в ступенчатый
вид;
- N — целое число;
- v — вектор;
- А —матрица из действительных чисел.
Размер NXM матрицы А для функции geninv должен быть таким, чтобы N>M.
Листинг 9.21. Создание матриц специального вида

|