- •ВВЕДЕНИЕ
- •2. СОЗДАНИЕ И РЕДАКТИРОВАНИЕ ФОРМУЛ И ТЕКСТА
- •2.1.Курсор
- •2.2. Шаблоны
- •2.3. Текстовые области
- •2.4. Задание размерности
- •3. ВХОДНОЙ ЯЗЫК СИСТЕМЫ
- •3.1. Общие сведения
- •3.2. Алфавит
- •3.3. Элементарные конструкции
- •3.4. Выражения
- •3.5. Операторы
- •3.6. Константы и переменные
- •3.7. Функции
- •3.7.1. Встроенные функции
- •3.7.2. Функции, принимающие несколько значений
- •3.7.3. Функции, определяемые пользователем
- •4. РАБОТА С ДОКУМЕНТАМИ
- •5. ВЫПОЛНЕНИЕ ВЫЧИСЛЕНИЙ
- •6. ВЕКТОРЫ И МАТРИЦЫ
- •6.1. Создание и отображение массивов
- •6.2. Задание элементов массивов
- •6.3. Векторные и матричные операции
- •6.4. Векторные и матричные функции
- •6.4.1. Формирование матриц
- •6.4.2. Определение размеров массивов и значений элементов
- •6.4.3. Сортировка векторов и матриц
- •6.4.4.Специальные характеристики матрицы
- •7. ПОСТРОЕНИЕ ГРАФИКОВ
- •7.1. Графические возможности
- •7.2. Создание графиков на плоскости
- •7.2.1. График в декартовых координатах (X-Y Plot)
- •7.2.2. График в полярной системе координат (Polar Plot)
- •7.3. Построение трёхмерных графиков
- •7.3.1. Создание трёхмерных графиков
- •7.3.2. Форматирование трехмерных поверхностей
- •7.3.3. Построение контурных графиков (Contour Plot)
- •7.3.4. Построение точечного графика (3D Scatter Plot)
- •7.3.5. Построение трёхмерной гистограммы
- •7.3.6. Векторное поле (Vector Field Plot)
- •7.4. Применение функций CreateMesh и CreateSpace
- •7.5. Импорт изображений
- •8. ДАННЫЕ ФАЙЛОВОГО ТИПА
- •9. СИМВОЛЬНЫЕ ВЫЧИСЛЕНИЯ
- •9.1. Организация символьных вычислений
- •9.2. Меню Symbolics
- •9.2.1. Обзор команд меню Symbolics
- •9.2.2. Операции с выделенными выражениями
- •9.2.3. Операции с выделенными переменными
- •9.2.4. Операции с выделенными матрицами
- •9.2.5. Операции преобразования
- •9.3. Система SmartMath
- •9.3.1 Операции символьного вывода
- •9.3.2.Состав директив
- •9.3.3. Вычисление пределов
- •9.3.4. Специальные функции
- •9.3.5. Большие символьные результаты
- •10. РЕШЕНИЕ УРАВНЕНИЙ И СИСТЕМ
- •10.1. Решение уравнения с одной неизвестной
- •10.2. Поиск всех корней полинома
- •10.3. Решение систем нелинейных уравнений и неравенств
- •10.4. Решение систем линейных уравнений
- •10.5. Символьное решение алгебраического уравнения
- •11. ОБРАБОТКА ДАННЫХ
- •11.1. Интерполяция
- •11.2. Регрессии
- •11.3. Сглаживание данных
- •12. ДИФФЕРЕНЦИАЛЬНЫЕ УРАВНЕНИЯ И СИСТЕМЫ
- •12.1. Методы решения
- •12.2. Пример использования функции rkfixed
- •12.3. Решение системы ОДУ первого порядка
- •13. ПРОГРАММНЫЕ БЛОКИ
- •13.1. Программирование в пакете MathCad
- •13.2. Программные операторы
- •ЗАДАНИЯ
- •БИБЛИОГРАФИЧЕСКИЙ СПИСОК
- •ОГЛАВЛЕНИЕ
необходимые результаты вычислений. При следующем проходе выполняются все остальные действия.
Команда Math|Optimization предназначена для оптимизации вычислений. Если этот режим включён, то MathCad пытается выполнить аналитические преобразования с целью упрощения выражений перед применением численных методов. В ряде случаев вычисления с оптимизацией позволяют получить более точный результат или избежать переполнения.
Результаты вычислений выводятся на экран с количеством десятичных знаков, задаваемых в диалоговом окне, которое открывается командой Format|Result. В этом окне на вкладке Number Format (Формат числа) можно выбрать формат вывода чисел и указать требуемое количество десятичных знаков.
Каждый оператор имеет точку привязки. MathCad использует точки привязки, чтобы определить порядок следования операторов. Чтобы увидеть точки привязки, надо выполнить команду View|Regions.
6.ВЕКТОРЫ И МАТРИЦЫ
ВMathCad предусмотрено использование числовых и символьных массивов. Массивы могут быть одномерные и двумерные. Двумерные массивы (матрицы) рассматриваются как совокупность одномерных массивов одинаковой длины. Одномерные массивы могут быть векторами-строками и векторами-столбцами. Массив задаётся именем, обращение к элементам массива выполняется с помощью индексированных переменных.
6.1.Создание и отображение массивов
Самый простой способ создания массива чисел состоит в задании массива из пустых полей и их последующем заполнении.
Шаблон массива задаётся в диалоговом окне, которое можно открыть командой Insert|Matrix, комбинацией клавиш Ctrl+M или кнопкой с изображением шаблона матрицы в наборной панели. Любое из этих действий вызывает появление диалогового окна, в котором надо указать размер матрицы, то есть количество ее строк и столбцов. Для векторов один из этих параметров должен быть равен единице.
17
Если задана одна строка, то получим вектор-строку, если же в поле Columns задать 1, то получим вектор-столбец. Затем в пустые поля вводятся значения. Нужное поле выбирается щелчком мыши либо для перемещения между полями используется клавиша
Tab.
Если существует формула для вычисления элементов массива, то при его формировании используются дискретные переменные, позволяющие определить все значения. Кроме того, можно сформировать массив, задавая значения отдельным его элементам.
Из данных, записанных в файле, тоже можно сформировать матрицу или вектор. Этот вопрос рассматривается в разделе, посвящённом работе с файлами.
Массивы, в которых меньше десяти строк и столбцов, MathCad отображает в виде матрицы или вектора. Если массив имеет более девяти строк или столбцов, то по умолчанию MathCad отображает его как таблицу вывода с полосами прокрутки. Можно предписать системе выводить в виде матриц и массивы, размеры которых превышают указанные выше. Для этого надо командой Format|Result открыть окно задания формата результатов, перейти на вкладку Display Options и в поле Matrix display style выбрать
Matrix (Отображать как матрицу).
Чтобы выводить матрицы вместо таблиц вывода во всём рабочем документе, следует дополнительно установить флажок Expand nested arrays в том же диалоговом окне.
6.2. Задание элементов массивов
Нумерация элементов в одномерном массиве начинается со значения, определяемого системной переменной ORIGIN (по умолчанию – с нуля).
Чтобы обратиться к элементу массива, необходимо указать один индекс для вектора и два индекса – для матрицы. Индексы определяют расположение элемента в массиве и могут быть только целыми числами.
Для выделения элемента матрицы используется конструкция с двумя нижними индексами, записанными через запятую: a1,3. Для обращения к элементу вектора-столбца надо указать один нижний индекс, например, x3. Для обращения к элементу вектора-строки,
18
необходимо указать верхний индекс или нижний индекс для |
||
транспонированного массива: d 2 или (dT) |
2 |
. |
|
|
Для выделения целого столбца матрицы следует добавить к имени массива верхний индекс: А<1> означает обращение к столбцу матрицы А с номером 1. Чтобы обратиться к целой строке, нужно добавить верхний индекс к транспонированному массиву: (АT)<1>.
Записывать индексы можно с помощью шаблонов наборной панели Matrix или последовательным вводом символов, задающих требуемые действия. Так, для формирования нижнего индекса можно после имени массива ввести символ [ , а затем значение индекса. Например, чтобы записать x3, надо нажать клавиши х [ 3. Для перехода в режим ввода верхнего индекса надо после имени массива нажать Ctrl+6. Набор последовательности z Ctrl+6 0 = выводит на экран первый столбец матрицы z.
i := 0 .. 4 |
|
j := 0 .. 3 |
d := ( |
101 202 303 ) |
|
|
||||||
gi , j := 1 + i j |
|
|
(dT) |
0 |
= 101 |
d 0 |
= ( |
101 ) |
||||
1 |
1 |
1 |
1 |
|
|
|
|
|
|
|
||
(dT)1 = 202 |
d 1 |
= ( |
202 ) |
|||||||||
|
2 |
3 |
4 |
|
||||||||
1 |
|
(dT) |
|
|
d 2 |
|
|
|
||||
g = 1 |
3 |
5 |
7 |
|
2 |
= 303 |
= ( |
303 ) |
||||
|
|
|
|
|
|
|
|
|
|
|
||
4 |
7 |
10 |
|
|
|
|
|
|
|
|||
1 |
|
|
|
|
11 |
|
|
|||||
1 |
5 |
9 |
13 |
|
|
|
|
|||||
b0 := 11 |
|
b1 |
:= 22 |
b2 := 33 |
b = |
22 |
|
|
||||
|
|
|
|
|
|
|
|
|
33 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6.3. Векторные и матричные операции
При рассмотрении матричных операций приняты следующие обозначения: V – вектор, M – матрица, z – скалярная величина. Основные операции приведены в таблице 1.
19
Таблица 1
Векторные и матричные операции
Операция |
Клавиши |
|
|
|
|
Примеры |
|
|
|
|
|
|
|
|
|
|
|
Сложение |
+ |
|
V1+V2 |
M1+M2 |
V+z |
|||
|
M+z |
|
|
|
|
|||
|
|
|
|
|
|
|
||
Вычитание |
- |
|
V1-V2 |
|
M1-M2 |
V-z |
||
|
M-z |
|
|
|
|
|||
|
|
|
|
|
|
|
||
Смена знака |
- |
|
-V |
-M |
|
|||
|
|
|
|
|
|
|
|
|
Умножение |
* |
|
V1 V2 |
|
M1 M2 |
z V |
||
V z |
|
z M |
|
|||||
|
|
|
|
|||||
Деление на скаляр |
/ |
|
V |
|
M |
|
||
|
z |
|
z |
|
||||
|
|
|
|
|
||||
Обращение матрицы |
^-1 |
|
М-1 |
|
|
|
|
|
Транспонирование |
Ctrl ! |
|
VT |
MT |
|
|||
Вычисление |
| |
|
|M| |
|
|
|
|
|
определителя |
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
Возведение в |
^ |
|
M3 |
|
|
|
|
|
степень |
|
|
|
|
|
|
|
|
Вычисление |
| |
|
|V| |
|
|
|
|
|
квадратного корня |
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
Получение |
“ |
|
|
|
|
|
|
|
комплексно- |
|
V |
|
M |
|
|||
сопряжённого |
|
|
|
|
|
|
|
|
Сумма элементов |
Alt $ |
|
∑V |
|
|
|
|
|
вектора |
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
Кросс-умножение |
Ctrl * |
|
V1×V2 |
|
|
|
|
|
Векторизация |
Ctrl - |
|
V |
|
M |
|
||
|
|
|
|
Под векторизацией понимается одновременное выполнение математических операций в их скалярном значении над всеми элементами вектора или матрицы, которые помечены символом векторизации. Другими словами векторизация – это поэлементное выполнение математических операций.
20