пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ

12. Работа с массивами в MathCAD/ SMath. [1]

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

image010.gif – вектор-столбец; image011.gif – вектор-строка.

Порядковый номер элемента называется индексом. Местоположение элемента в массиве задается одним индексом для вектора и двумя – для матрицы. Номер первого элемента массива определяется значением системной переменной ORIGIN. По умолчанию ORIGIN = 0 и может принимать только целые значения. Изменение значения этой системной переменной осуществляется последовательностью команд Math / Options… / Built-In Variables / Array Origin (ORIGIN) (Математика / Параметры / Встроенные переменные / Начальный индекс массивов) или переопределением в документе, например:

ORIGIN:=1

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

1-й способ. Использование панели Matrix (Матрицы).

Сначала набирается имя массива и оператор присваивания, например, image012.jpg. Далее на панели Math (Математика) выбираем кнопку Matrix (Матриц):

image013.jpg

Далее указываем количество ее строк m (Rows) и столбцов n (Columns) матрицы. Для векторов один из этих параметров должен быть равен 1. При m = 1 получим вектор-строку, а при n = 1 – вектор-столбец.

image014.jpg

На месте курсора появится шаблон, в знакоместа которого вводятся значения элементов массива:

image015.jpg

2-й способ. Использование ранжированной переменной.

Целочисленные ранжированные переменные используются для задания индексов и позволяют создавать массивы в следующем порядке:

  1. определяется системная переменная ORIGIN;
  2. задается ранжированная переменная (переменные) для нумерации элементов;
  3. индексированной переменной присваиваются значения элементов массива через запятую или в виде явной формулы.

Обращаться к отдельным элементам вектора или матрицы можно, используя нижний индекс, принимающий только целочисленные значения. Для ввода нижнего индекса после имени вектора или матрицы нажимается клавиша «[» (прямая открывающая скобка) либо используется пиктограмма image016.jpg с палитры математических инструментов Matrix. Для элемента матрицы указываются через запятую два индекса, обозначающих номер строки и номер столбца соответственно.

Для работы с векторами и матрицами система Mathcad имеет ряд специальных операторов и команд (представленных в таблице 1), используя которые не следует забывать об общих правилах матричного исчисления.

Таблица 1– Команды палитры инструментов Matrix (Матрица)

Команда
Описание
Команда
Описание
image017.jpg
 Создание массива
image018.jpg
 Транспонирование массива
image016.jpg
 Нижний индекс
image019.jpg
 Задание диапазона дискретной величины
image020.jpg
 Инверсия (обратная матрица)
image021.jpg
 Скалярное произведение
image022.jpg
 Определитель матрицы, модуль вектора
image023.jpg
 Векторное произведение
image024.jpg
Операция векторизации
image025.jpg
 Суммирование элементов вектора
image026.jpg
 Выделение столбца матрицы
image027.jpg
 Изображение

Суммирование или вычисление произведений элементов матриц лучше выполнять с использованием операторов, расположенных на палитре Calculus (Исчисление):

image028.jpg

Некоторые векторные и матричные функции:

  • length(v) – возвращает длину вектора v.
  • max(A, B, C,…) – возвращает максимальный по значению элемент;
  • min(A, B, C,…) – возвращает минимальный по значению элемент. Аргументами функций min и max могут быть не только массивы, но и переменные, числа и строки;
  • cols(A) – возвращает число столбцов массива A;
  • rows(A) – возвращает число строк массива A;
  • mean(A) – среднее арифметическое значение элементов массива A;
  • sort(v) – сортировка элементов вектора в порядке возрастания;
  • reverse(v) – перестановка элементов вектора в обратном порядке.

Функции для работы с файлами данных:

  • WRITEPRN("имя_файла"):=A - записывает в файл матрицу А.
  • APPENDPRN("имя_файла"):=B - дописывает в существующий файл данных матрицу А (Следите за размерностью массивов!).
  • D:=READPRN("имя_файла") - считывает из файла данные и помещает их в матрицу D.

23.06.2020; 14:39
хиты: 60
рейтинг:0
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2025. All Rights Reserved. помощь