Создание массивов MathCAD

Существует несколько способов создания массива:

  • ввод всех элементов вручную с помощью команды Insert Matrix;
  • определение отдельных элементов массива;
  • создание таблицы данных и ввод в нее чисел;
  • применение встроенных функций создания массива (см. гл. 9);
  • создание связи с другим приложением, например Excel или MATLAB;
  • чтение из внешнего файла данных;
  • импорт из внешнего файла данных.

Рассмотрим основные способы создания массива, учитывая, что две последних возможности будут разобраны в последней части книги Применяйте способ, который оптимален в смысле простоты и читаемости конкретного документа, либо ставший наиболее для Вас привычным.

Создание матрицы командой Insert Matrix

Самый простой и наглядный способ создания вектора или матрицы заключается в следующем:

  • Нажмите кнопку Matrix or Vector (Матрица или вектор) на панели Matrix (Матрица) (рис. 4.12) либо клавиши <Ctrl>+<M>, либо выберите пункт меню Insert / Matrix (Вставка / Матрица).
  • В диалоговом окне Insert Matrix (Вставка матрицы) задайте целое число столбцов и строк матрицы, которую хотите создать. Например, для создания вектора 3x1 введите показанные на рис. 4.12 значения.
  • Нажмите кнопку ОК или Insert (Вставить) — в результате в документ будет вставлена заготовка матрицы с определенным числом строк и столбцов (рис. 4.13).
  • Введите значения в местозаполнители элементов матрицы. Переходить от одного элемента матрицы к другому можно с помощью указателя мыши либо клавиш со стрелками.

Добавление в уже созданную матрицу строк или столбцов производится точно так же:

  • Выделите линиями ввода элемент матрицы, правее и ниже которого будет осуществлена всгавка столбцов и (или) строк.
  • Вставьте в него матрицу, как было описано выше. При этом допускается задание числа столбцов или строк равным нулю (рис. 4.14).
  • Заполните местозаполнители недостающих элементов матрицы.

Рис. 4.12. Вставка матрицы

Рис. 4.13. Заполнение матрицы элементами

На рис. 4.14 и 4.15 показаны результаты последовательной вставки в матрицу столбца и строки после определения соответствующего числа столбцов и строк в диалоге Insert Matrix и нажатия в нем кнопки Insert (Вставить).

Рис. 4.14. Добавление одного столбца к матрице

Рис. 4.15. Добавление одной строки к матрице

В местозаполнители элементов матрицы можно вставлять не только числа (действительные или комплексные), но и любые математические выражения, состоящие из переменных, операторов, встроенных и пользовательских функций (листинг 4.16, вторая строка).

Листинг 4.16. Использование переменных и функций при определении матрицы

Создание массива определением его отдельных элементов

Массив можно определить следующим образом:

  • присваивая значения непосредственно отдельным элементам массива;
  • применяя ранжированные переменные (см. листинг 4.15).

Любой из этих способов позволяет присвоить нужное значение как всем элементам массива (см. листинг 4.15), так и части из них, либо даже одно-му-единственному элементу. В последнем случае создается массив, размерность которого задается индексами введенного элемента (листинг 4.17), а неопределенным элементам по умолчанию присваиваются нулевые значения.

Листинг 4.17. Создание матрицы определением одного ее элемента.

В любом месте документа допускается как переопределение любого из элементов массива (листинг 4.18, первая строка), так и изменение его размерности. Чтобы поменять размерность всего массива, просто присвойте любое значение новому элементу, индексы которого выходят за границы прежней размерности (вторая строка листинга 4.18).

В местозаполнители элементов матрицы допускается вставка любых функций, подобно применению обычного оператора присваивания,

Листинг 4.18. Изменение матрицы (продолжение листинге 4.17)

Создание тензора

Определение отдельных элементов — удобный способ создания тензоров (многоиндексных массивов). В Mathcad имеется непосредственная возможность работы только с векторами и матрицами. Тем не менее, можно создать тензор путем определения вложенного массива (nested array). Для этого необходимо присвоить каждому элементу матрицы значение в виде другого вектора или матрицы (листинг 4.19). Пользователь должен лишь позаботиться о корректности задания индексов тензора и не запутаться в индексировании вложенных матриц (последняя строка листинга).

Листинг 4.19. Создание тензора и доступ к его элементам

Процесс создания тензора автоматизирует применение ранжированных переменных.

Обратите внимание, что Mathcad по умолчанию не отображает трехмерную структуру тензора (предпоследняя строка листинга 4.19), а вместо этого показывает информацию о размерах каждого элемента матрицы s. Развернуть вложенные массивы можно с помощью команды Format / Result / Display Options (Формат / Результат / Опции отображения), устанавливая флажок Expand Nested Arrays (Разворачивать вложенные массивы) на вкладке Display Options (Опции отображения).

  

Знаете ли Вы, что релятивистское объяснение феномену CMB (космическому микроволновому излучению) придумал человек выдающейся фантазии Иосиф Шкловский (помните книжку миллионного тиража "Вселенная, жизнь, разум"?). Он выдвинул совершенно абсурдную идею, заключавшуюся в том, что это есть "реликтовое" излучение, оставшееся после "Большого Взрыва", то есть от момента "рождения" Вселенной. Хотя из простой логики следует, что Вселенная есть всё, а значит, у нее нет ни начала, ни конца... Подробнее читайте в FAQ по эфирной физике.

{DATA}
Bourabai Research Institution home page

Bourabai Research - Технологии XXI века Bourabai Research Institution