ГЛАВА 4
В этой главе рассматриваются типы данных, применяемых в документах MathCAD, и принципы их ввода-вывода в наиболее простой числовой форме. Обычные типы данных (действительные и комплексные числа, константы и строковые данные) перечисляются в начале главы (см. разд. 4.1), параллельно с объяснением принципов их ввода в документы. Возможности форматирования результатов численных расчетов приводятся в завершающем разделе главы (см. разд. 4.4). Наряду с обычными числами, в MathCAD имеется мощный аппарат работы с массивами. Массивы реализованы в виде векторов и матриц, что максимально приближает стиль вычислений к общепринятой математической форме (см. разд. 4.3).
Отличительной чертой среды MathCAD является возможность обращения с размерными переменными, снабженными физическими единицами измерений (см. разд. 4.2). Эти средства существенно облегчают инженерные и научные расчеты.
Другие формы ввода-вывода (графики, анимация, ввод-вывод в файлы) разобраны в последней части книги (см. гл. 15).
4.1. Типы данных
Наиболее простой и распространенный ввод-вывод данных в MathCAD реализован присваиванием и выводом (либо численным, либо символьным) непосредственно в документе. Переменные и функции, посредством которых осуществляется ввод-вывод, могут иметь значения различных типов (числовые, строковые и т. д.). Перечислим основные типы данных, которые обрабатываются процессорами системы MathCAD:
- числа (в том числе, действительные, комплексные, а также встроенные константы) - MathCAD хранит все числа в формате двойной точности с плавающей точкой (не разделяя их на целые, булевы и т. д.);
- строки - любой текст, заключенный в кавычки;
- массивы (в том числе, ранжированные переменные, векторы и матрицы) - упорядоченные последовательности чисел или строк. Рассмотрим более подробно типы данных и то, как осуществляется их непосредственный ввод в документ с помощью присваивания значения переменным.
4.1.1. Действительные числа
Любое выражение, начинающееся с цифры, MathCAD интерпретирует как число. Поэтому для ввода числа просто начните его набирать на клавиатуре. Несмотря на то, что MathCAD хранит все числа в одинаковом формате, вводить их можно в наиболее подходящем представлении (notation), исходя из контекста документа:
- как целое число;
- как десятичное число (decimal notation) с любым количеством десятичных цифр после точки;
- в представлении с порядком (exponential notation) - в так называемом научном формате или представлении (scientific notation), для чего после ввода числа напечатайте символ умножения и введите 10 в нужной степени;
- как число в другой системе счисления.
Три первых представления иллюстрируются содержанием соответствующей строки листинга 4.1.
При вводе целых чисел, больших или равных 1000, все цифры пишутся слитно (как показано в первой строке листинга 4.1), и ни в коем случае не разделяются на порядки запятыми. Например, ввод числа 1000 как 1,000 или 1.000 недопустим.
Листинг 4.1. Ввод действительных чисел
Листинг 4.1

Примечание
Если вы продолжите листинг 4.1 последовательным выводом всех переменных, то с удивлением обнаружите, что некоторые из чисел выглядят по-иному (например, число d=0). Объяснение этому будет дано в разд. 4.2.

Для ввода числа в других системах счисления: двоичной (binary), восьмеричной(octal) или шестнадцатеричной (hexadecimal), сделайте следующее:
1. Введите его представление в соответствующей системе, применяя лишь корректные символы (для двоичной системы допустимы только цифры О и 1; для восьмеричной - цифры от 0 до 7, для шестнадцатеричной - цифры от 0 до 9 и буквы от а до f) Например, число 34 в двоичной системе представлено такой последовательностью: 100010.
2. После ввода последнего символа числа введите ь (для двоичного числа), о (для восьмеричного числа), или h (для шестнадцатеричного).
Использование чисел в других системах счисления иллюстрируется листингом 4.2. Обратите внимание, что вывод осуществляется все равно в десятичной системе.
Листинг 4.2. Ввод чисел в других системах исчисления
Листинг 4.2

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

4.1.2. Комплексные числа
Большинство операций в среде MathCAD по умолчанию осуществляются над комплексными числами. Комплексное число является суммой действительного и мнимого числа, получающегося путем умножения любого действительного числа на мнимую единицу (imaginary unit) i. По определению,
i = корень -l ИЛИ i2=-l.
Чтобы ввести мнимое число, например 3i:
1. Введите действительный сомножитель (з).
2. Введите символ "i" или "j" непосредственно после него.
Для ввода мнимой единицы надо нажать клавиши <1>, <i.>. Если просто ввести символ "i", то MathCAD интерпретирует его как переменную i. Кроме того, мнимая единица имеет вид 1i, только когда соответствующая формула выделена. В противном случае мнимая единица отображается просто как i (рис. 4.1).

Рисунок 4.1
Рис. 4.1. Ввод мнимой единицы
Комплексное число можно ввести в виде обычной суммы действительной и мнимой частей, или в виде любого выражения, содержащего мнимое число. Примеры ввода и вывода комплексных чисел иллюстрируются листингом 4.3.
Листинг 4.3. Комплексные числа
Листинг 4.3
Для работы с комплексными числами имеются несколько простых функций и операторов (см. разд. "Функции работы с комплексными числами" гл. 10), действие которых показано в листинге 4.4.
Листинг 4.4. Функции работы с комплексными числами
Листинг 4.4

Примечание
Можно выводить мнимую единицу в результатах вычислений не как i, а как j. Для смены представления выберите нужное в списке Imaginary Value (Мнимое значение) диалогового окна Result Format (Формат результата), доступного по команде Format / Result / Display Options (Формат / Результат / Опции отображения).

4.1.3. Встроенные константы
Некоторые имена в MathCAD зарезервированы под системные перемени которые называются встроенными константами (built-in constants). Встроные константы делятся на два типа: математические, хранящие значение некоторых общеупотребительных специальных математических СИМВОЛОВ системные, определяющие работу большинства численных алгоритмов, реализованных в MathCAD.
Математические константы (math constants)
- символ бесконечности (вводится клавишами <Ctrl>+<Shift>+<z>
- е - основание натурального логарифма (клавиша <е>);
- число "пи" (вводится клавишами <Ctrl>+<Shift>+<p>);
- i, j - мнимая единица (вводится клавишами <1>, <i> или <1>, <j>);
- % - символ процента, <%>, эквивалентный o.o1
Математические константы по-разному интерпретируются при численны символьных вычислениях. Вычислительный процессор просто воспринимает их как некоторые числа (листинг 4.5), а символьный распознает каждое из них, исходя из математического контекста, и способен выдавать матемаческие константы в качестве результата.
Листинг 4.5. Значения математических констант
Листинг 4.5
При желании можно изменить значение любой из перечисленных констант или использовать их в качестве переменных в расчетах (см. листинг 4.1, в котором переопределена константа е). Разумеется, если присвоить константе новое значение, прежнее станет недоступным.
Системные переменные (system variables)
-TOL - точность численных методов (см. часть III);
-CTOL - точность выполнения выражений, используемая в некоторых численных методах (см. часть III);
-ORIGIN - номер начального индекса в массивах (см. разд. 4.3.1);
-PRNPRECISION - установка формата данных при выводе в файл (см. гл.15);
-
PRNCOLWIDTH - установка формата столбца при выводе в файл (см. гл. 15);
-
CWD - строковое представление пути к текущей рабочей папке.
Предустановленные значения системных переменных перечислены в листинге 4.6. Их можно поменять в любой части документа, присвоив соответствующей переменной новое значение. Кроме того, переопределение значения переменной для всего документа производится при помощи команды Math / Options / Built-in Variables (Математика / Опции / Встроенные переменные) в диалоговом окне Math Options (Опции математики), приведенном на рис. 4.2. Чтобы в любой момент вернуть значения по умолчанию, нажмите кнопку Restore Defaults (Восстановить установки по умолчанию).
Листинг 4.6. Предустановленные значения системных переменных
Листинг 4.6

Рисунок 4.2
Рис. 4.2. Вкладка Built-in Variables диалога Math Options
4.1.4. Строковые выражения
Значением переменной или функции может быть не только число, но и строка, состоящая из любой последовательности символов, заключенной в кавычки (листинг 4.7). Для работы со строками в MathCAD имеется несколько встроенных функций (см. разд. "Строковые функции" гл. 10).
Листинг 4.7. Ввод и вывод строк
Листинг 4.7

Примечание
Совершенно аналогичным образом можно определять пользовательские функции строкового типа.

4.2. Размерные переменные
В MathCAD числовые переменные и функции могут обладать размерностью. Сделано это для упрощения инженерных и физических расчетов. В MathCAD встроено большое количество единиц измерения, с помощью которых и создаются размерные переменные.
4.2.1. Создание размерной переменной
Чтобы создать размерную переменную, определяющую, например, силу тока в 10 А:
1. Введите выражение, присваивающее переменной i значение ю: 10:=10
2. Сразу после ввода ю введите символ умножения "*".
3. Находясь в области местозаполнителя, выберите команду Insert / Unit
(Вставка / Единицы), либо нажмите кнопку с изображением мерного стакана на стандартной панели инструментов, либо клавиши <Ctrl>+<U> (рис. 4.3).
4. В списке Unit (Единица измерения) диалогового окна Insert Unit (Вставка единицы измерений) выберите нужную единицу измерения Ampere (A).
5. Нажмите кнопку ОК.
Если вы затрудняетесь с выбором конкретной единицы измерения, но знаете, какова размерность переменной (в нашем случае это электрический ток), то попробуйте выбрать ее в списке Dimension (Размерность) диалогового окна Insert Unit (Вставка единицы измерений). Тогда в списке Unit (Единица измерения) появятся допустимые для этой величины единицы измерений, из которых выбрать нужную будет легче (рис. 4.5).
Просмотреть вставку единиц измерения можно и без выхода из диалогового окна Insert Unit, нажимая вместо кнопки ОК кнопку Insert (Вставить).
В этом случае вы увидите, что единица измерений появилась в нужном месте документа, и можете поменять ее, оставаясь в диалоге Insert Unit.

Примечание
Многие единицы измерения можно представлять в виде различных символов. Например, ампер - как А или amp, Ом - как ohm или Q и т. д.


Рисунок 4.3
Рис. 4.3. Вставка единиц измерения размерной величины

Рисунок 4.4
Рис. 4.4. Диалоговое окно Insert Unit

Рисунок 4.5
Рис. 4.5. Выбор размерности
4.2.2. Работа с размерными переменными
Работая с размерными переменными, приготовьтесь к тому, что MathCAD будет постоянно контролировать корректность расчетов. Например, нельзя
складывать переменные разной размерности, в противном случае (рис. 4.6)
будет получено сообщение об ошибке "The units in this expression do not
match"
(Размерности в этом выражении не совпадают). Тем не менее, позволяется складывать, например, амперы с килоамперами (см. рис. 4.9).

Рисунок 4.6
Рис. 4.6. Нельзя складывать переменные разной размерности

Рисунок 4.7
Рис. 4.7. Изменение единиц измерения в ответе
Над размерными переменными можно производить любые корректные с физической точки зрения расчеты. Пример расчета сопротивления через отношение напряжения к току приведен в листинге 4.8.
Листинг 4.8. Расчеты с размерными переменными
Листинг 4.8
Обратите внимание, что результат в листинге 4.8 выдан не в омах. Тем не менее, легко перевести его в омы, как и в другие единицы. Для этого достаточно дважды щелкнуть на местозаполнителе, присутствующем после вычисленного значения формулы в момент, когда она выделена (рис. 4.7, внизу). В результате появляется то же самое диалоговое окно Insert Unit (Вставка единицы измерений), в котором можно поменять единицу измерений вычисленного ответа. В результате ответ будет пересчитан в соответствии с вновь введенной единицей измерения (как сделано для верхней формулы на рис. 4.7).

Примечание
Можно включить автоматический перевод единиц измерения в более простые единицы. Для этого перейдите в диалоговое окно Result Format (Формат результата) на вкладку, посвященную размерностям, с помощью команды For

mat/ Result/ Unit Display (Формат/ Результат/ Отображение размерности).
Установите в ней флажок Simplify units when possible (Упрощать единицы, когда это возможно).
Процесс смены единиц в момент их выбора в диалоге Insert Unit (Вставка единицы измерений) показан на рис. 4.8. В результате приведенного выбора выведенное в амперах значение силы тока будет изменено на значение в килоамперах: i.oi кд.

Рисунок 4.8
Рис. 4.8. Сложение переменных одной размерности, выраженных в разных единицах
4.2.3. Выбор системы единиц
Как легко заметить, во всех примерах этого раздела вставлялись единицы системы измерения SI. Об этом можно было судить как по перечню самих единиц, так и по недоступному списку System (Система) в диалоге Insert Unit (Вставка единицы измерений) с выбранным пунктом SI. Сменить систему единиц во всем документе можно, выполнив команду Math / Options (Математика / Опции) и переходя в диалоге Math Options (Опции математики) на вкладку Unit System (Система единиц). В ней следует выбрать один из переключателей, соответствующий желаемой системе.
4.2.4. Определение новой размерности
Чтобы определить новую (пользовательскую) единицу измерения некоторой размерности, либо новую размерность, достаточно присвоить ее выражение через используемые размерности переменной с соответствующим именем. Пример создания новой единицы измерения "наноампер" приведен в листинге 4.9.
Листинг 4.9. Определение новой единицы измерения
Листинг 4.9
Созданные пользователем единицы измерения недоступны в диалоговом окне Insert Unit (Вставка единицы измерений), поэтому их приходится вводить вручную с клавиатуры (как это сделано для новой единицы ПА во второй строке листинга 4.9).
4.3. Массивы
Массивами (arrays) называют упорядоченные последовательности чисел, или элементов массива. Доступ к любому элементу массива возможен по его индексу, т. е. номеру в последовательности чисел (в листинге 4.10 а - это массив, a1 - его элемент). Применение массивов чрезвычайно эффективно в математических расчетах.
Листинг 4.10. Одномерный массив (вектор)
Листинг 4.10
В MathCAD условно выделяются два типа массивов:
- векторы (одноиндексные массивы, листинг 4.10), матрицы (двухиндексные, листинг 4.11) и тензоры (многоиндексные);
- ранжированные переменные (range variables) - векторы, элементы которых определенным образом зависят от их индекса.
Листинг 4.11. Двумерный массив (матрица)
Листинг 4.11
4.3.1. Доступ к элементам массива
Доступ ко всему массиву осуществляется обычным поименованием векторной переменной. Например, последовательность символов "а", "=" в листингах 4.10 и 4. И приведет к выводу соответствующего вектора или матрицы. В MathCAD имеются и операторы, и встроенные функции, которые действуют на векторы и матрицы целиком (они рассматриваются в гл. 9), например, транспонирование, матричное умножение и т. д.
Над элементами массива можно совершать действия, как над обычными числами. Нужно только правильно задать соответствующий индекс или сочетание индексов массива. Например, чтобы получить доступ к нулевому элементу вектора а из листинга 4.10:
1. Введите имя переменной массива (а).
2. Нажмите кнопку Subscript (Нижний индекс) со значком х, на панели Matrix (Матрица), либо введите [.
3. В появившийся справа снизу от имени массива местозаполнитель введите желаемый индекс (о).
Если после этого ввести знак численного вывода, то справа от него появится значение нулевого элемента вектора, как показано во второй строке листинга 4.10.
Чтобы получить доступ к элементу многоиндексного массива (например, элементу ai,0 матрицы а из листинга 4.11):
1. Введите имя переменной массива (а).
2. Перейдите к вводу нижнего индекса, введя [.
3. Введите в местозаполнитель индекса первый индекс (i), запятую "," и в появившийся после запятой местозаполнитель введите второй индекс (о).
В результате будет получен доступ к элементу, как показано в предпоследней строке листинга 4.11.
В рассмотренных листингах нумерация индексов массивов начинается с нуля, иными словами, первый элемент массива имеет индекс о. Стартовый индекс массива задается системной переменной ORIGIN, которая по умолчанию равна нулю. Если вы привыкли нумеровать элементы векторов и матриц с единицы, присвойте этой переменной значение 1 (листинг 4.12). Обратите внимание, что в этом случае попытка выяснить значение нулевого элемента вектора приводит к ошибке, поскольку его значение не определено.
Помимо доступа к отдельным элементам массива, имеется возможность совершать действия над его подмассивами (например, векторами-столбцами, образующими матрицу). Делается это с помощью оператора со значком х° на панели Matrix (Матрица) (см. гл. 9).
Листинг 4.12. Изменение нумерации индексов массивов
Листинг 4.12
4.3.2. Ранжированные переменные
Ранжированные переменные в MathCAD являются разновидностью векторов и предназначены, главным образом, для создания циклов или итерационных вычислений. Простейший пример ранжированной переменной - это массив с числами, лежащими в некотором диапазоне с некоторым шагом.
Например, для создания ранжированной переменной s с элементами 0,1,2,3,4,5:
1. Поместите курсор ввода в нужное место документа.
2. Введите имя переменной (з) и оператор присваивания ":".
3. Нажмите кнопку Range Variable (Ранжированная переменная) на панели Matrix (Матрица), показанную на рис. 4.9, либо введите символ точки с запятой с клавиатуры.
4. В появившиеся местозаполнители (рис. 4.9) введите левую и правую границы диапазона изменения ранжированной переменной о и 5.
Результат создания ранжированной переменной показан на рис. 4.10.

Рисунок 4.9
Рис. 4.9. Создание ранжированной переменной
Чтобы создать ранжированную переменную с шагом, не равным 1, например, 0,2, 4, 6, 8:
1. Создайте ранжированную переменную в диапазоне от о до 8 (см. рис. 4.9).
2. Поместите линии ввода на значение начала диапазона (о).
3. Введите запятую.
4. В появившийся местозаполнитель (рис. 4.11) введите значение шага изменения ранжированной переменной (2).
Созданная ранжированная переменная будет иметь значения от о до 8 включительно, с шагом, равным 2.

Рисунок 4.10
Рис. 4.10. Вывод ранжированной переменной

Рисунок 4.11
Рис. 4.11. Создание ранжированной переменной с шагом, не равным 1
Чаще всего ранжированные переменные используются:
- при параллельных вычислениях (листинги 4.13 и 4.14);
- для присвоения значений элементам других массивов (листинги 4.14
и 4.15).
Обратите внимание на типичный пример использования ранжированной пременной из листингов 4.13 и 4.14. Большинство математических действий, реализованных в MathCAD, совершаются над ранжированными переменными точно так же, как над обычными числами. В этом случае одно и то же действие осуществляется параллельно над всеми элементами ранжированной переменной.
Листинг 4.13. Ранжированная переменная
при параллельных вычислениях

Листинг 4.13

Примечание
Параллельные вычисления производятся точно так же и над произвольными векторами, не обязательно являющимися ранжированными переменными. Например, можно определить в листинге 4.14 вектор 1, подобно вектору из листинга 4.10, и провести те же параллельные вычисления над его элементами.

Листинг 4.14. Ранжированная переменная при параллельных вычислениях
Листинг 4.14
Листинг 4.15. Использование ранжированной переменной для определения матрицы
Листинг 4.15
Определяя массив с помощью ранжированных переменных (листинги 4.14 и 4.15), позаботьтесь о том, чтобы их значения пробегали все необходимые индексы массива. Например, если задать шаг изменения ранжированной переменной, равный 2, то половина элементов вектора будет неопределена.
Помните о том, что ранжированные переменные - просто разновидности векторов с упрощенной формой задания элементов. Часто необходимо провести одни и те же вычисления циклически, большое количество раз, на пример, вычисление некоторой функции f (х) в некотором диапазоне х для построения подробного графика. Задание вручную всех значений аргумента (наподобие вектора из листинга 4.10) очень трудоемко, а с помощью задания ранжированной переменной х это делается в одну строку.
4.3.3. Создание массивов
Существует несколько способов создания массива:
- ввод всех элементов вручную с помощью команды Insert Matrix;
- определение отдельных элементов массива;
- создание таблицы данных и ввод в нее чисел;
- применение встроенных функций создания массива (см. гл. 9);
- создание связи с другим приложением, например, Excel или MATLAB;
- чтение из внешнего файла данных;
- импорт из внешнего файла данных.
Рассмотрим основные способы создания массива, учитывая, что две последних возможности будут разобраны в последней части книги (см. гл. 15). Применяйте способ, который оптимален в смысле простоты и читаемости конкретного документа, либо ставший наиболее для вас привычным.
Создание матрицы командой Insert Matrix
Самый простой и наглядный способ создания вектора или матрицы заключается в следующем:
1. Нажмите кнопку Matrix or Vector (Матрица или вектор) на панели Matrix (Матрица) (рис. 4.12) либо клавиши <Ctrl>+<M>, либо выберите пункт меню Insert / Matrix (Вставка / Матрица).
2. В диалоговом окне Insert Matrix (Вставка матрицы) задайте целое число столбцов и строк матрицы, которую хотите создать. Например, для создания вектора 3x1, введите показанные на рис. 4.12 значения.
3. Нажмите кнопку ОК или Insert (Вставить) - в результате в документ будет вставлена заготовка матрицы с определенным числом строк и столбцов (рис. 4.13).
4. Введите значения в местозаполнители элементов матрицы. Переходить от одного элемента матрицы к другому можно с помощью указателя мыши либо клавиш со стрелками.
Добавление в уже созданную матрицу строк или столбцов производится точно так же:
1. Выделите линиями ввода элемент матрицы, правее и ниже которого будет осуществлена вставка столбцов и (или) строк.
2. Вставьте в него матрицу, как было описано выше. При этом допускается задание числа столбцов или строк равным нулю (рис. 4.14).
3. Заполните местозаполнители недостающих элементов матрицы.

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

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

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

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

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

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

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

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

Обратите внимание, что MathCAD по умолчанию не отображает трехмерную структуру тензора (предпоследняя строка листинга 4.19), а вместо этого показывает информацию о размерах каждого элемента матрицы s. Развернуть вложенные массивы можно с помощью команды Format / Result / Display Options (Формат / Результат / Опции отображения), устанавливая флажок Expand Nested Arrays (Разворачивать вложенные массивы) на вкладке Display Options (Опции отображения).
Создание таблицы ввода
В документе MathCAD могут присутствовать разнообразные объекты, созданные в других приложениях. Например, если в буфер обмена скопирован фрагмент таблицы с данными из другого приложения (например, Microsoft Excel), то можно использовать его при создании матрицы с помощью таблицы ввода. Для этого:
1. Поместите щелчком мыши курсор ввода на пустое место документа.
2. Выберите в главном меню на пустом месте Insert / Component / Table (Вставка / Компонент / Таблица).
3. В окне Component Wizard (Мастер компонентов) выберите элемент списка Input Table (Таблица ввода) и нажмите в нем кнопку Finish (Завершить) (рис. 4.16).
4. Вставьте имя матрицы в местозаполнитель и данные в ячейки появившейся в документе таблицы ввода (рис. 4.17). Учтите, что в таблицу можно вставлять фрагменты из буфера обмена, любые действительные или комплексные числа, но нельзя использовать формулы.

Рисунок 4.16
Рис. 4.16. Окно Мастера компонентов
Матрица, определенная с помощью таблицы ввода, выглядит точно так же, как при обычном определении (листинг 4.20).

Рисунок 4.17
Рис. 4.17. Ввод чисел в таблицу данных
Листинг 4.20. Матрица, определенная в таблице данных (рис. 4.17)
Листинг 4.20
Создание массивов путем импорта из других приложений
С помощью Мастера компонентов (Component Wizard), вызываемого командой Insert / Component / Table (Вставка / Компонент / Таблица) легко устанавливать связь с другими компонентами, импортируя оттуда данные. Подробнее об этом можно прочитать в справочной системе MathCAD в статьях:
- Excel Component (Вставка компонента Excel);
- MATLAB Component (Вставка компонента MATLAB).
4.3.4. Отображение вывода векторов и матриц
Вы, вероятно, обратили внимание, что матрицы, векторы и ранжированные переменные отображались в различных примерах по-разному. Это связано с автоматическими установками отображения матриц, принятыми в MathCAD по умолчанию. Существуют два стиля отображения массива: в форме матрицы и в форме таблицы (рис. 4.18).

Рисунок 4.18
Рис. 4.18. Отображение массивов в форме матрицы (слева) и таблицы (справа)
Изменение стиля отображения какого-либо массива выполняется командой Format / Result (Формат / Результат), вызывающей диалог Result Format (Формат результата). В этом диалоге следует перейти на вкладку Display Options (Опции отображения) (рис. 4.19) и в списке Matrix display style (Стиль отображения матриц) выбрать один из стилей:
- Automatic (Авто) - стиль выбирается MathCAD;
- Matrix (Матрица);
- Table - (Таблица).

Рисунок 4.19
Рис. 4.19. Изменение стиля отображения массива
Стиль отображения в виде таблицы допускает различное выравнивание матрицы относительно выражения слева от оператора вывода (рис. 4.20). Для изменения выравнивания вызовите контекстное меню из области таблицы, наведите в нем указатель мыши на пункт Alignment (Выравнивание) и в подменю выберите тип выравнивания.

Рисунок 4.20
Рис. 4.20. Различные стили выравнивания матриц
В диалоговом окне Result Format (Формат результата), помимо стиля отображения матрицы, можно задать стиль отображения тензоров (вложенных массивов). Для того чтобы отображать тензоры в стиле, показанном на рис. 4.21, установите флажок Expand nested arrays (Разворачивать вложенные массивы). Чтобы отображать их в свернутой форме (см. листинг 4.19), снимите этот флажок.

Рисунок 4.21
Рис. 4.21. Разворачивание вложенных массивов
Особенно наглядной формой отображения вектора является построение его в виде графика (см. гл. 15).
4.4. Формат вывода числовых данных
Несмотря на то, что невозможно влиять на результат, который отображается справа от оператора вывода значений переменных, функций и выражений, допускается изменять формат его отображения. Напомним, что как ввод, так и вывод данных может осуществляться в двух основных представлениях (см. разд. 4.1.1):
- десятичное (decimal), например 13478.74559321;
- с порядком (exponential notation), например 1.348x10.
Выбор формата вывода числовых данных осуществляется при помощи диалогового окна Result Format (Формат результата). Оно вызывается командой Format / Result (Формат / Результат).
4.4.1. Формат результата
Управление представлением числа в десятичном представлении или представлении с порядком осуществляется при помощи следующих параметров:
- количество отображаемых десятичных знаков (decimal places) после точки. Например, число 122,5587 с четырьмя десятичными знаками при отображении с двумя знаками будет выглядеть как 122,56;
- отображение или скрытие незначащих нулей (trailing zeros) - опция, позволяющая показывать или скрывать незначащие нули в десятичном представлении числа, т. е. выводить, к примеру, "1,5" вместо "1,500" (даже если установлено количество десятичных знаков, равное 3);
- порядковый порог (exponential threshold), при превышении степени 10
которого число будет показываться с порядком. Например, при пороге 3
число 122,56 будет отображаться как десятичное, а при пороге 2 - уже
как "1,23х102";

Примечание
Количество десятичных знаков левого сомножителя числа с порядком контролируется в некоторых форматах первым из трех перечисленных параметров.

- кроме того, число с порядком может представляться в эквивалентных видах: "1,23х102" или с порядком в инженерном формате (engineering format): "1.23Е+002".
- MathCAD имеется несколько типов форматов, в каждом из которых разрешается изменение различных параметров представления числа. Формат выбирается на вкладке Number Format (Формат числа) диалогового окна Result Format (Формат результата) (рис. 4.22).

Рисунок 4.22
Рис. 4.22. Выбор формата вывода числа
Основной (general) формат
Этот формат принят при выводе чисел по умолчанию. Можно управлять и количеством отображаемых десятичных знаков (поле Number of decimal places), и порядковым порогом (поле Exponential threshold). При превышении порога число отображается с порядком (как показано на рис. 4.22). Несколько примеров вывода одного и того же числа в общем формате показано в листинге 4.21. В левой колонке приведены числа с порядковым порогом, равным 3, и количеством десятичных знаков (сверху вниз) 3, 4, 4, 5 соответственно. Для нижнего числа установлен флажок отображения незначащих нулей. В правой колонке сгруппированы числа с порядковым порогом от 1 до 4 (сверху вниз).
Листинг 4.21. Основной формат результата
Листинг 4.21
Десятичный (decimal) формат
Числа отображаются только в десятичном представлении и никогда - в представлении с порядком.
Научный (scientific) формат
Числа отображаются только с порядком, причем количество десятичных знаков левого сомножителя, как и отображение незначащих нулей, определяется пользователем.
Инженерный (engineering) формат
Числа отображаются только с порядком, причем обязательно кратным 3; как и в научном формате, пользователю разрешается изменять количество десятичных знаков.
Дробный (fraction) формат
Этот формат сильно отличается от предыдущих, представляя число в виде дроби (рис. 4.23). Причем можно управлять как точностью представления числа с помощью поля Level of accuracy (Уровень точности), так и задать модификацию этого формата - отображение числа в виде целой и дробной части (как показано на рис. 4.23 внизу слева) посредством установки флажка Use mixed numbers (Смешанные числа).
Вид одного и того же числа в различных форматах приведен в листинге 4.22. В первой строке показан десятичный формат, во второй строке - научный с тремя десятичными знаками, в третьей - инженерный также с тремя десятичными знаками. В последних двух строках представлен дробный формат: в предпоследней с уровнем точности 5, в последней - 10. К тому же, для выражения последней строки установлен флажок Use mixed numbers (Смешанные числа).

Рисунок 4.23
Рис. 4.23. Дробный формат
Листинг 4.22. Другие форматы результата вычислений
Листинг 4.22
4.4.2. Округление малых чисел до нуля
MathCAD автоматически округляет малые числа до нуля (листинг 4.23). Допускается установка порогового значения округления (в степенях 10), отдельно для действительной и мнимой части числа. При этом числа, по модулю меньшие порога, отображаются в виде нуля.
Помните, что это касается только отображения чисел. В памяти компьютера они хранятся корректно.
Листинг 4.23. Представление близких к нулю чисел
Листинг 4.23
Чтобы изменить пороговые значения:
1. Щелкните на любом пустом месте документа.
2. Войдите в диалоговое окно Result Format (Формат результата): Format / Result (Формат / Результат).
3. Перейдите на вкладку Tolerance (Точность).
4. Установите пороговые значения для действительного нуля в поле Zero threshold (Порог нуля) и мнимого нуля в поле Complex threshold (Комплексный порог нуля).
5. Нажмите кнопку ОК.

Рисунок 4.24
Рис. 4.24. Задание порога мнимого нуля

Рисунок 4.25
Рис. 4.25. Задание вывода результата в других системах счисления
Изменение порога мнимого нуля возможно и в режиме редактирования формулы (рис. 4.24), но изменение действительного порога нуля при этом недоступно.
Просмотреть число в точном представлении можно, нажав клавиши <Ctrl>+<Shift>+<N>. В этом случае на строке состояния (в самой нижней части окна MathCAD, слева) будет на короткое время выведен результат с максимальной точностью (рис. 4.25).
4.4.3. Вывод чисел в других системах счисления
Аналогично вводу чисел в других системах счисления (см. разд. 4.1.1), вывести результат также возможно в виде десятичного, двоичного, восьмеричного или шестнадцатеричного числа (листинг 4.24, сверху вниз).
Листинг 4.24. Вывод чисел в других системах счисления
Листинг 4.24
Чтобы задать систему счисления, выберите команду Format / Result / Display Options (Формат / Результат / Опции отображения), а затем желаемый элемент списка Radix (Система счисления) (рис. 4.26). При отображении чисел в других системах счисления также доступно форматирование их представления на вкладке Number Format (Формат числа) того же диалога Result Format (Формат результата). В листинге 4.25 приведено несколько примеров форматирования чисел в двоичном представлении.

Рисунок 4.26
Рис. 4.26. Задание вывода результата в других системах счисления
Листинг 4.25. Форматирование вывода чисел в других системах счисления
Листинг 4.25

Примечание
Мы рассмотрели в этой главе основные принципы наиболее простого численного ввода и вывода данных. О более впечатляющих формах ввода-вывода (графики, анимация, ввод-вывод в файлы) рассказывается в последней части книги (см. гл. 15).


Глава 3 Содержание Глава 5