- •ВВЕДЕНИЕ
- •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. Программные операторы
- •ЗАДАНИЯ
- •БИБЛИОГРАФИЧЕСКИЙ СПИСОК
- •ОГЛАВЛЕНИЕ
Для задания векторизации над именем или выражением записывается стрелка. Например, если А и В – векторы, то А В дает скалярное произведение этих векторов. Но то же произведение под знаком векторизации создает новый вектор, каждый j -й элемент которого есть произведение j -х элементов векторов А и В. Итак, векторизация позволяет использовать скалярные операции и функция с массивами. Нередко это заметно упрощает запись математических алгоритмов.
Векторизация может изменить смысл математических выражений и даже превратить недопустимое в прежних версиях MathCad выражение во вполне допустимое. Например, если V – вектор, то выражение cos(V) будет недопустимым, поскольку аргументом функции cos может быть только скалярная переменная. Однако с оператором векторизации функция cos(V) возвращает вектор, каждый элемент которого есть косинус соответствующего элемента исходного вектора V.
ВMathCad 8/2000 введено очередное усовершенствование –
вкачестве аргумента функции можно задавать векторы и матрицы. Таким образом, выражение cos(V), где V – вектор, становится допустимым и без применения операции векторизации. Система MathCad 8/2000 стала более «интеллектуальной» – в подобных случаях векторизация выполняется автоматически. В примере cos(V) будет возвращен вектор, каждый элемент которого равен косинусу соответствующего элемента вектора V.
6.4. Векторные и матричные функции
6.4.1. Формирование матриц
Функции augment(A,B) и stack(A,B) позволяют объединить две матрицы в одну. Для объединения матриц, имеющих одинаковое число строк, бок о бок используется augment. Чтобы объединить два массива с одинаковым числом столбцов, располагая их друг над другом, применяется функция stack.
Функция submatrix(M, ir, jr, ic, jc) предназначена для выделения подматрицы, в которую включены элементы матрицы М, расположенные в строках с ir по jr и столбцах с ic по jc .
Функция identity(n) создаёт единичную квадратную матрицу порядка n.
21
Функция diag(V) формирует диагональную матрицу, у которой на главной диагонали расположены элементы вектора V.
Если определена функция f, возвращающая значение элемента в зависимости от индексов, то для создания матрицы используется matrix(m,n,f).
Функции Re(M) и Im(M) создают матрицы (векторы) действительных и мнимых частей матрицы (вектора) с комплексными коэффициентами.
6.4.2. Определение размеров массивов и значений элементов
cols(A) – количество столбцов матрицы; rows(A) – количество строк матрицы;
length(V) – длина вектора (число элементов в одномерном массиве);
last(V) – номер последнего элемента вектора. max(A) – максимальный элемент;
min(A) – минимальный элемент;
mean(A) – среднее значение элементов массива; median(A) – медиана элементов массива.
1 |
|
v1 := 2 |
|
|
|
3 |
|
v3 := v1 v2
v3 = 26
s := ∑v1
s = 6
max(v1) = 3
cols(v1) = 1
3 |
|
|
i := −1 |
|
|
|
|
v2 := 4 |
|
|
1 + 2i |
0 |
|
||
|
|
|
|
||||
|
A |
:= |
|
|
|
||
5 |
|
|
0 |
4 − |
|||
v4 := v1 × v2 |
|
|
|
5i |
|||
|
|
|
|
|
|
||
−2 |
|
B := A |
|
|
|
||
v4 = 4 |
|
B |
1 − 2i |
0 |
|
||
|
|
|
= |
0 |
4 + |
|
|
−2 |
|
|
|
5i |
|||
min(v1) = 1 |
|
|
|
1 |
|||
|
|
|
|
|
|||
last(v1) = 2 |
|
|
|
|
|
||
|
|
|
2 |
||||
|
|
|
|
|
|||
|
1 |
0 |
0 |
|
v := 3 |
||
diag(v1) |
= 0 |
2 |
0 |
|
|
4 |
|
|
|
|
|
|
|
|
|
|
0 |
|
5 |
||||
|
0 |
3 |
|
||||
|
22 |
|
|
|
|
|
|
length(v1) = 3
→
u := ln(v1)
|
0 |
|
u = |
0.693 |
|
|
1.099 |
|
|
|
rows(v1) = 3
u2 := ln(v1)
0
u2 = 0.693
1.099
m := identity(5)
|
1 |
0 |
0 |
0 |
0 |
|
|
0 |
1 |
0 |
0 |
0 |
|
|
|
|||||
m = 0 |
0 |
1 |
0 |
0 |
|
|
|
0 |
0 |
0 |
1 |
0 |
|
|
|
|||||
|
0 |
0 |
0 |
0 |
1 |
|
|
1 |
0 |
0 |
0 |
0 |
1 |
|
|
|
0 |
1 |
0 |
0 |
0 |
2 |
|
|
|
|
|
||||||
augment(m,v) = 0 |
0 |
1 |
0 |
0 |
3 |
|
tr(m) = 5 |
|
|
0 |
0 |
0 |
1 |
0 |
4 |
|
|
|
|
|
0 0 0 0 1 5
6.4.3.Сортировка векторов и матриц
sort(V) – сортировка элементов вектора по возрастанию; reverse(V) – перестановка элементов вектора после
применения sort в обратном порядке (сортировка по убыванию); csort(M,n) – перестановка строк матрицы так, чтобы
отсортированным оказался n-й столбец;
rsort(M,n) – перестановка столбцов матрицы так, чтобы отсортированной оказалась n-я строка.
6.4.4.Специальные характеристики матрицы
rank(M) – ранг матрицы;
tr(M) – след квадратной матрицы;
norm1(M), norm2(M), norme(M), normi(M) – первая, вторая,
Евклидова и неопределённая нормы матрицы М;
lu(M) – треугольное разложение матрицы M, такое, что P M=L U. Матрицы M, P, L, Q квадратные, одного порядка; L и Q соответственно нижняя и верхняя треугольные матрицы;
qr(A) – разложение матрицы А на Q и R: A=Q R, где Q - ортогональная матрица и R - верхняя треугольная матрица;
23