
- •Кафедра "Информатика и информационная безопасность"
- •Введение
- •1. Среда пакета прикладных программ MathCad
- •1.1. Назначение команд основного меню
- •1.2. Назначение панелей инструментов MathCad
- •1.3. Назначение рабочей области документа
- •2. Создание и редактирование документов
- •2.1. Ввод и редактирование текста
- •2.2. Импорт текста в документ
- •2.3. Ввод в текст математических выражений
- •2.4. Ввод математических выражений в документы MathCad
- •If (условие, выражение1, выражение2)
- •3. Работа с массивами данных
- •3.1. Заполнение массивов
- •3.2. Операции над массивами
- •4. Решение систем линейных уравнений
- •5. Вычисление корней алгебраических и трансцендентных уравнений
- •6. Основы программирования в MathCad
4. Решение систем линейных уравнений
В MathCad систему линейных уравнений можно решить двумя способами:
-
с помощью встроенной функции lsolve;
-
с помощью вычислительного блока Given и функции find.
Примечание. Функции lsolve и find вводятся с помощью кнопки f(x) стандартной панели инструментов (категории функций – Решение), ключевое слово Given с клавиатуры, знак равно (=) – с панели Булево.
Пример.
Пусть задана система линейных уравнений:
x1 + 5x2 + 2x3 = 1
0,7x1 + 12x2 + 5x3 = 2,9
3x1 + 0x2 + 4x3 = 3,1
Обозначим:
А – матрица коэффициентов при неизвестных размерности mn,
B – вектор свободных членов размерности n.
Для решения системы линейных уравнений с помощью встроенной функции lsolve требуется выполнить следующие действия:
-
ввести матрицу коэффициентов;
-
ввести вектор свободных членов;
-
вычислить корни уравнения.
При решении системы линейных уравнений с помощью вычислительного блока Given выполняются следующие действия:
-
присвоить неизвестным начальные значения: x:=0 y:=0 z:=0 (значения могут быть произвольными, так как решение системы линейных алгебраических уравнений с невырожденной матрицей единственное);
-
ввести ключевое слово Given;
-
ввести систему линейных алгебраических уравнений (знак = с панели Условие);
-
для получение результата ввести функцию find.
Примечание. При использовании вычислительного блока переменные с индексами необходимо заменить простыми переменными. В рассматриваемом примере x1 заменено x, x2 – y, x3 – z.
5. Вычисление корней алгебраических и трансцендентных уравнений
В MathCad можно вычислять корни алгебраических и трансцендентных уравнений f(x)=0, если известно начальное приближение к корню x0 или интервал, внутри которого может находиться значение корня. Значение корня вычисляется с точностью TOL, которая устанавливается из меню Математика командой Параметры на вкладке Переменные в поле Допуск сходимости. По умолчанию TOL=0.001.
Значение корня вычисляется с помощью функции root (f(x), x), если задано начальное приближение к корню и root (f(x), x,a,b), если задан интервал, где
f(x) – функция, определяющая уравнение;
x – переменная, относительно которой решается уравнение;
a, b – границы интервала, внутри которого выполняется поиск корня.
Пример вычисления значения корня трансцендентного уравнения
cos(x) –x = 0 при начальном приближении к корню, равном 0.6:
-
присвоить переменной x начальное приближение к корню;
-
ввести уравнение f(x);
-
ввести функцию root() и после нее знак = для получения результата вычисления.
x:=0.6 f(x):=cos(x)-x root(f(x),x)=0.739
или
root(cos(x)-x,x)=0.739
Пример вычисления значения корня трансцендентного уравнения sin(x)=0 на интервале [-1;1].
root(sin(x),x,-1,1)=0
6. Основы программирования в MathCad
Версии MathCad 2000 и выше позволяют вставлять в документы выполняемые программные блоки. Программа представляет собой построчную запись конструкций (операторов) языка программирования MathCad.
Язык программирования содержит четыре основных оператора: присваивания, условный, цикла и возврат значения. Для вставки программных блоков в документы используется панель Программирование. Практически все кнопки этой панели выполнены в виде текстового представления операторов программирования, поэтому их назначение понятно каждому, кто имеет хотя бы представление о какой-либо системе программирования.
Любой программный блок начинается с ввода вертикальной линии с панели Программирование щелчком по символу Add Line. Автоматически линия распространяется на две строки программного блока. Если длину линии требуется увеличить, то необходимо щелкнуть левой клавиши мыши по местозаполнителю последней строки и символу Add Line.
Оператор присваивания
Используется для присваивания значения некоторой переменной. В программе изображается как . Слева от стрелки записывается переменная, а справа – ее значение. Переменная, значение которой определяется с помощью оператора , рассматривается как локальная, она доступна только в пределах программного блока.
Например, чтобы в программе переменной x присвоить значение 0, необходимо записать следующую конструкцию: x0.
Примечание. Знак вводится щелчком левой клавиши мыши по соответствующей кнопке на панели Программирование.
Условный оператор
Условный оператор if служит для вычисления значения переменной в зависимости от заданного условия.
В программу вводится щелчком левой клавиши мыши по символу if панели Программирование. Логические операторы, которые служат для проверки истинности или ложности заданного условия вводятся с панели Булево.
После
ввода в программу оператора if
перед ним и после него отображаются
местозаполнители: . Справа от оператора
if в местозаполнитель
записывается условие, а в местозаполнитель
слева – значение, которое требуется
присвоить некоторой переменной.
Если требуется проверить несколько условий, то используется несколько операторов if, каждый из которых располагается в отдельной строке.
С одним или несколькими операторами if можно использовать оператор otherwise, который будет выполняться, если ни одно из условий не будет истинным. При вводе оператора otherwise справа от него отобразится местозаполнитель, в котором записывается соответствующее значение.
Например, программа заполнения массива С по правилу:
в MathCad записывается следующим образом:
Программа для вычисления функции:
б
удет
иметь вид:
Операторы цикла
Оператор цикла for служит для организации циклических вычислительных процессов и вводится щелчком по символу for на панели Программирование. После его ввода в первой строке отображается ключевое слово for и два местозаполнителя. В первый местозаполнитель вводится имя параметра цикла, а во второй – диапазон его значений. Во второй строке отображается третий местозаполнитель, который используется для записи операторов, составляющих тело цикла.
Пример нахождения элемента с минимальным значением среди отрицательных элементов вектора:
Примечание. Для нахождения минимума среди всех элементов вектора можно применить функцию min, например: min(A) = -13.
П
ример
подсчета количества положительных
элементов в четных строках матрицы.
Запись программного блока может выглядеть и так:
Примечание. Функция mod() используется для получения остатка от деления целых чисел.
Литература:
1. Дьяконов В. MathCad 2001. Учебный курс. Санкт-Петербург, Питер, 2001.
2. Кирьянов Д.В. Самоучитель MathCad 2001. – СПб.: БХВ-Петербург, 2002.
Введение 2
1. Среда пакета прикладных программ MathCad 2
1.1. Назначение команд основного меню 2
1.2. Назначение панелей инструментов MathCad 3
1.3. Назначение рабочей области документа 4
2. Создание и редактирование документов 4
2.1. Ввод и редактирование текста 5
2.2. Импорт текста в документ 5
2.3. Ввод в текст математических выражений 5
2.4. Ввод математических выражений в документы MathCad 6
3. Работа с массивами данных 14
3.1. Заполнение массивов 14
3.2. Операции над массивами 16
4. Решение систем линейных уравнений 18
5. Вычисление корней алгебраических и трансцендентных уравнений 20
6. Основы программирования в MathCad 20