
- •Содержание
- •1 Общая характеристика системы MathCad.
- •1.1. Общая характеристика и основные функции системы
- •2 Интерфейс системы MathCad
- •2.3 Основные приемы работы с файлами в системе MathCad
- •2.3.1 Создание нового документа
- •2.3.2 Сохранение документа в файле на диске
- •2.3.3 Открытие ранее созданного документа
- •2.4.4 Печать текущего документа
- •3 Базовые вычисления в MathCad
- •3.1 Входной язык Mathcad
- •3.2 Вычисление арифметических выражений
- •Реализация в MathCad:
- •3.2.1 Вычисление арифметических выражений с использованием оператора присваивания (линейный алгоритм)
- •Реализация в MathCad:
- •3.2.2 Создание пользовательских функций
- •Реализация в MathCad:
- •3.2.3 Обработка структурированных данных в MathCad
- •3.2.3.1 Краткие теоретические сведения
- •3.2.3.2 Дискретные переменные, функции дискретных переменных Определение и правила записи дискретных переменных описаны в кратких теоретических сведениях темы 2.
- •Реализация в MathCad:
- •3.2.2.3 Обработка матриц и векторов
- •3.3.2 Примеры вычисления суммы, произведения и определенного интеграла
- •3.3.3 Вычисление производных в точках
- •3.3.3. Вычисление производной в диапазоне изменения аргумента
- •3.3.4 Вычисление определенного интеграла
- •4 Создание программных фрагментов в MathCad
- •4.1 Краткие теоретические сведения
- •4.2. Программирование разветвляющихся алгоритмов
- •4.3 Программирование циклических алгоритмов
- •4.4 Программирование алгоритмов работы с массивами
- •5 Построение графиков
- •5.1.Краткие теоретические сведения
- •5.2 Построение двумерных графиков
- •Р еализация в MathCad:
- •5.3 Построение графиков кусочно-непрерывных функций
- •Реализация в MathCad:
- •6 Решение уравнений и систем
- •6.1 Краткие теоретические сведения
- •6.2 Поиск корней уравнения, графическая интерпретация
- •Реализация в MathCad:
- •6.3 Поиск корней полиномиального уравнения, графическая интерпретация
- •Р еализация в MathCad:
- •6.4 Решение системы линейных уравнений
- •7.2 Решение дифференциальных уравнений первого порядка
- •7.3 Решение систем дифференциальных уравнений
- •Список использованных источников
- •Лабораторная работа
3.3.2 Примеры вычисления суммы, произведения и определенного интеграла
Последовательность действий для вычисления суммы и произведения такова:
установить курсор в свободное место рабочего окна документа;
открыть палитру математического анализа;
выбрать нужную операцию: суммирование или произведение;
заполнить выделенные поля для ввода (см. краткие теоретические сведения темы 3);
получить искомое значение в числовом виде с помощью оператора «=».
Пример
3.6.
Вычислить значения суммы
и произведения
.
Реализация в MathCad:
3.3.3 Вычисление производных в точках
Последовательность действий для вычисления производной в точке такова:
установить курсор в свободное место рабочего окна документа;
выделить в задаче исходные данные, например, x1 и x2, и поместить в них заданные числовые значения с помощью оператора «:=»;
описать пользовательскую функцию с параметром, например Y(x);
открыть палитру математического анализа;
создать новые пользовательские функции F(x) и F1(x), в которые поместить значения первой и второй производных соответственно (для задания знаков производных использовать кнопки палитры математического анализа);
заполнить выделенные поля для ввода (см. краткие теоретические сведения темы 3);
получить искомые значения созданных функций производных при заданных значениях аргументов в числовом виде с помощью оператора «=».
Пример
3.7 Вычислить
значения первой и второй производных
функции
в двух исходных точках x1=-12.5
и x2=6.2.
Реализация в MathCad:
3.3.3. Вычисление производной в диапазоне изменения аргумента
Последовательность действий для вычисления производной в диапазоне изменения аргумента такова:
создать дискретную переменную (см. краткие теоретические сведения темы 2);
получить значение дискретной переменной в виде таблицы с помощью оператора «=»;
с помощью оператора присваивания описать пользовательскую функцию с параметром, например, f(x);
в палитре математического анализа выбрать операцию вычисления первой производной и заполнить шаблон, используя в качестве аргумента функции имя заданной дискретной переменной;
получить значения производной в числовом виде с помощью оператора «=».
Пример 3.8 Вычислить значение производной функции
в дискретном интервале изменения аргумента [-10,10]. Шаг изменения аргумента выбрать так, что бы функция имела не менее 10-15 значений.
Реализация в MathCad:
3.3.4 Вычисление определенного интеграла
Последовательность действий для вычисления определенного интеграла такова:
используя кнопки палитры математического анализа выбрать операцию «определенный интеграл»;
заполнить выделенные поля для ввода (см. краткие теоретические сведения темы 3);
получить искомое значение в числовом виде с помощью оператора «=».
Пример
3.9.
Вычислить значение определенного
интеграла
.
Реализация в MathCad:
4 Создание программных фрагментов в MathCad
4.1 Краткие теоретические сведения
Система MathCad позволяет создавать программные фрагменты для вычисления алгоритмов, которые нельзя реализовать базовым набором средств и методов Mathcad.
Программный фрагмент можно использовать в операторе «=» или в правой части оператора «:=». Слева в операторе «:=» может находиться либо переменная, либо пользовательская функция.
Программный фрагмент состоит из строк программы, каждая из которых может содержать операторы программы.
Для создания программного фрагмента используется панель программирования, кнопки которой имеют следующее назначение:
|
Add Line - создание и расширение программного фрагмента; ¬ - оператор внутреннего локального присваивания. if - оператор условия; for - оператор цикла с заданным числом повторений. while – оператор цикла с предусловием.; оtherwise - оператор "иначе", обычно используется совместно с if для выполнения действий в случаи невыполнения условия; break - оператор прерывания работы программного фрагмента; сontinue - оператор продолжения работы цикла после прерывания; return – оператор возврата; on error - оператор обработки ошибок
|
Ниже приведен общий вид операторов программного фрагмента, рассмотрены правила их выполнения.
Оператор добавления линии Add Line выполняет функции расширения программного блока. Расширение фиксируется удлинением вертикальной черты программных блоков или их древовидным расширением. Благодаря этому, в принципе, можно создавать сколь угодно большие программы.
Оператор
внутреннего присваивания
выполняет функции внутреннего, локального
присваивания. Например, выражение
присваивает
переменной x значение 123. Локальный
характер присваивания означает, что
такое значение х сохраняет только в
теле программы. За пределами тела
программы значение переменной х может
быть неопределенным, либо равно значению,
которое задается вне программного блока
операторами локального := или глобального
присваивания.
Условный оператор if является оператором для создания условных выражений. Он задается в виде:
Если условие выполняется, то возвращается значение выражения. Совместно с этим оператором часто используются операторы прерывания break и иного выбора otherwise.
Оператор цикла for служит для организации циклов с заданным числом повторений. Он записывается в виде:
Эта запись означает, что операторы, помешенные в расположенный ниже в окнах ввода (черные квадратики), будут выполняться для значений параметра цикла x, меняющихся от Xmin до Xmax с шагом Δx. Если Δx=1, то его можно не писать, т.е. оператор будет иметь вид
В свою очередь оператор в окне ввода может быть оператором цикла (цикл в цикле). При этом обозначения параметров цикла не должны совпадать.
Значения параметров цикла можно использовать в исполняемом выражении.
Оператор цикла while служит для организации циклов, действующих до тех пор ,пока выполняется некоторое условие. Этот оператор записывается в виде:
Выполняемое выражение записывается на место расположенного ниже заполнителя.
Оператор иного выбора otherwise обычно используется совместно с оператором if. Это поясняет следующая программная конструкция:
Здесь f(x) получает значение 1, если х>0, и –1 во всех остальных случаях.
Оператор прерывания break вызывает прерывание работы программы всякий раз, как он встречается. Чаще всего он используется совместно с оператором условного выражения if и операторами циклов while и for, обеспечивая переход в конец тела цикла.
Оператор продолжения continue используется для продолжения работы после прерывания программы. Он также чаще всего используется совместно с операторами задания циклов while и for, обеспечивая возвращение в точку прерывания и продолжение вычислений.
Оператор возвращения return прерывает выполнение программы и возвращает значение операнда, стоящего следом за ним. Например, конструкция
будет возвращать значение 0 при любом х < 0.
ёОператор и функция обработки ошибок позволяет создавать конструкции обработчиков ошибок. Этот оператор задается в виде:
Здесь если при выполнении Выражения_1 возникает ошибка, то выполняется Выражение_2. Для обработки ошибок полезна также функция error(S), которая, будучи помешенной в программный модуль, при возникновении ошибки выводит всплывающую подсказку с надписью, хранящейся в символьной переменной S.
Результаты работы программного фрагмента передаются следующим образом: во внешнюю вычислительную область из программного фрагмента передается значение последнего выражения, вычисленного в программном фрагменте или значение переменной, имя которой записано в последней строке программы.
На рисунке 4.1 приведены примеры программных фрагментов. Из примера 1 видно, что программный фрагмент, реализующий линейный алгоритм, может заканчиваться оператором «=», а может быть присвоен переменной, например, k. Программный фрагмент может участвовать при создании пользовательской функции, например, y(x), которая затем вычисляется при конкретном значении ее аргумента, например, 3. Внутренние переменные программного фрагмента являются неопределенными вне его, например, переменная z, которая использовалась в программном фрагменте, не имеет конкретного числового значения вне его.
Пример1 |
Пример2 |
|
|
Рисунок 4.1 – Примеры программных фрагментов |
Пример 2 демонстрирует программирование разветвляющихся и циклических алгоритмов. Для реализации разветвляющихся алгоритмов формируется пользовательская функция a(b), которая вычисляется по разным аналитическим зависимостям при различных значениях аргумента. Показана возможность вычисления этой функции в разных точках: при b равном -4, 9 и 15. Программирование циклических алгоритмов продемонстрировано на двух задачах. При решении задачи поиска суммы целых чисел от 1 до 5 применяется программный фрагмент с циклом for , результат получается с помощью оператора «=». Во второй части примера решается задача поиска суммы целых четных чисел от 0 до 10 с помощью оператора цикла while. Результат вычисления присваивается переменной h, хотя внутри цикла для накопления суммы используется переменная s.