Министерство образования РФ Восточно-Сибирский государственный технологический университет Кафедра Инженерная и компьюте...
38 downloads
951 Views
782KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Министерство образования РФ Восточно-Сибирский государственный технологический университет Кафедра Инженерная и компьютерная графика
MATHCAD ЛАБОРАТОРНЫЙ ПРАКТИКУМ
Под редакцией проф., д.т.н. В.В. Найханова
Улан-Удэ, 2000
2
УДК 681.3.06 Mathcad. Лабораторный практикум Для студентов изучающих информатику. В.В.Найханов, Т.В. Аюшеев, А.А.Габагуев и П.В. Мотошкин, А.А. Дубанов. Рецензент: к.т.н., доц..
© ВСГТУ, 2000
3
Содержание Введение 4 1. Интерфейс пользователя 5 1.1 Панель Стандартная.................................................................................... 6 1.2 Панель Математика..................................................................................... 6 1.3 Обзор команд Mathcad................................................................................ 7 2. Средства ввода и редактирования Mathcad 10 2.1 Редактирование областей рабочего листа Mathcad ............................... 10 2.2 Курсоры Mathcad....................................................................................... 11 3. Ввод, редактирование и форматирование текста 11 3.1 Ввод и редактирование текста ................................................................. 11 3.2 Форматирование текста ............................................................................ 12 4. Ввод, редактирование и форматирование математических выражений 13 4.1 Ввод и редактирование математических выражений............................ 13 4.2 Форматирование математических выражений....................................... 15 5. Создание и форматирование графиков 15 5.1 Создание графиков:................................................................................... 15 5.2 Форматирование графиков....................................................................... 15 6. Ресурс Центр 16 6.1 Навигация по Ресурс Центру (Resource Center)..................................... 16 6.2 Quick Sheets................................................................................................ 17 7. Перечень лабораторных работ 18 7.1 Лабораторная работа № 1………………………………………………...18 7.2 Лабораторная работа № 2………………………………………………...20 7.3 Лабораторная работа № 3………………………………………………...24 7.4 Лабораторная работа № 4………………………………………………...26 7.5 Лабораторная работа № 5………………………………………………...29 7.6 Лабораторная работа № 6………………………………………………...31 7.7 Лабораторная работа № 7………………………………………………...32 7.8 Лабораторная работа № 8………………………………………………...38 7.9 Лабораторная работа № 9………………………………………………...41 7.10 Лабораторная работа № 10……………………………………………...18 ПРИЛОЖЕНИЯ 45 Список литературы
59
4
Введение Mathcad является уникальной системой для научных и инженерных расчетов и позволяет работать с формулами, числами, текстом и графиками. С помощью Mathcad можно решить почти любую математическую задачу символьно либо численно. Mathcad позволяет записывать на экране компьютера формулы в их привычном виде. Mathcad имеет свою собственную справочную систему. Электронные Книги делают доступными для использования в рабочем документе множество полезных формул, справочных данных и диаграмм простым нажатием кнопки. Объединяя в одном рабочем листе текст, графику, и математические выкладки, Mathcad облегчает понимание самых сложных вычислений. Особенности Mathcad ♦ Полная совместимость с Windows: изменение размеров окон и их перемещение, открытие нескольких окон, поддержка мыши. ♦ Возможность комбинирования текста, математических выкладок и графики в любом месте экрана. ♦ Встроенный алгоритм решения систем уравнений и неравенств. ♦ Действия с производными и интегралами. ♦ Вычисление сумм рядов, произведений и итерации. ♦ Тригометрические, гиперболические, экспоненциальные и Бесселевы функции. ♦ Статистические функции, включая линейную регрессию, гамма – функцию Эйлера, интеграл ошибок, функции вероятностных распределений. ♦ Векторы и матрицы, включая операции матричного умножения, обращения, матриц, транспонирования, вычисления определителя матрицы, скалярное и векторное умножение. ♦ Символьное интегрирование и дифференцирование. ♦ Обращение, транспонирование и вычисление определителя матриц. ♦ Многообразие типов графиков: в декартовых координатах, графики в полярных координатах, построение поверхностей в трех измерениях, построение линий уровня, картины векторных полей, трехмерных гистограмм, точечные графики. ♦ Анимация графиков и любых других объектов рабочего документа.
5 ♦ И многое, многое другое. В настоящем лабораторном практикуме рассматривается русифицированная версия Mathcad 8. 1. Интерфейс пользователя Рабочее окно Mathcad является стандартным окном Windows – приложения. Сверху располагается строка заголовка, где приводится название приложения (Mathcad) и имя рабочего листа (документа). Ниже располагается строка меню, где все команды пакета сгруппированы по функциональному назначению. Ниже строки меню располагаются панели инструментов – Стандартная и Форматирование. Панель Математика обычно находится в рабочей зоне документа. Для открытия других панелей необходимо выполнить последовательность – Вид/Панели. С помощью курсора можно менять положение и форму панелей. Самая нижняя строка – строка состояния, где приводится информация о текущих режимах. Для удобства работы с большими листами имеются линейки вертикальной и горизонтальной прокрутки (рис.1).
Рис.1. Рабочее окно Mathcad Основным документом Mathcad является рабочий лист, границы которого показываются сплошной линией, а поля - штриховой. Mathcad допус-
6 кает ввод формул и текста в любом месте рабочего документа. Каждое математическое выражение или фрагмент текста является областью. Рабочий документ Mathcad есть совокупность таких областей. Mathcad создает три типа областей – текстовое, математическое и графическое. Чтобы сделать области видимыми необходимо выполнить команду Границы/Вид. Mathcad отобразит пустое пространство серым цветом, занятые области фоновым цветом. Для отмены видимости вновь повторить комбинацию - Границы/Вид. Для большей наглядности объекты Mathcad – выражения, текст, графики и т.п. выполняются различным стилем шрифта и цвета, настройку которых можно изменить. Для вызова контекстного меню, необходимо нажать правую клавишу мыши, появится меню соответствующее текущему положению курсора или выбранному объекту Mathcad. 1.1
Панель Стандартная
1 2
3
4
5
6
7
8
9
10 11
12 13
14 15 16
17 18
19 20
1. - создать новый рабочий лист; 2. - открыть существующий рабочий лист; 3. - сохранить текущий рабочий лист на диске; 4. - печать рабочего листа; 5. - предварительный просмотр рабочего листа перед печатью; 6. - проверить текст на наличие орфографических ошибок; 7. - переместить выделенное в Буфер Обмена; 8. - скопировать выделенное в Буфер Обмена; 9. - вставить выделенное из Буфера Обмена в документ; 10. - отменить последнее редактирование; 11. - восстановить последнее редактирование; 12. - разделить области в случае их наложения; 13. - выравнить области по левой границе; 14. - вставить функцию; 15. - выбрать единицу измерения для выделенного выражения; 16. - вычислить рабочий лист; 17. - связать рабочий лист с файлом или адресом в Internet; 18. – вставить компонент (использование баз данных, например Excel); 19. - доступ к Ресурс Центру; 20. - Помощь. 1.2
Панель Математика
- арифметические инструменты;
7
- инструменты знаков; - построение графиков; - векторные и матричные операции; - операторы математического анализа; - символьные операторы; - символы греческого алфавита. 1.3
Обзор команд Mathcad
В Mathcad команду можно исполнить тремя способами: ♦ через меню команд; ♦ соответствующими кнопками на панелях; ♦ посредством комбинации клавиатурных клавиш. Файл: Новый… - создать новый рабочий лист. Открыть… - открыть существующий рабочий лист. Закрыть – закрыть текущий рабочий лист. Сохранить – сохранить текущий рабочий лист на диске. Сохранить как - сохранить текущий рабочий лист под другим именем или в другом формате. Передать – отправить копию рабочего листа в виде электронного документа Параметры страницы… - задания размера страницы, полей и ориентации страницы. Предварительный просмотр – просмотр рабочего листа перед печатью. Печать… - печать рабочего листа. Выход – завершение работы Mathcad. Правка Отмена – отменить последнее редактирование. Возврат - восстановить последнее редактирование. Вырезать – переместить выделенное в Буфер Обмена. Копировать - скопировать выделенное в Буфер Обмена. Вставка - вставить выделенное из Буфера Обмена в документ. Вставка Специальная … - вставить выделенное из Буфера Обмена в документ в другом формате. Удалить – удаление выделенных областей. Выделить Все – выделить все области в рабочем листе. Для отмены выделения щелкнуть в любом пустом месте. Поиск… - найти слово или символы.
8 Замена… - заменить частично или полностью слово или символы в рабочем листе. Перейти к Странице… - перейти на указанную страницу. Проверка Орфографии… - проверить текст на наличие орфографических ошибок. Связи… - установить связь с другим документом для внедрения данных. Объект – создание объектов других Windows – приложений в текущем рабочем листе Mathcad, с возможностью их редактирования. Вид Панели инструментов – установка панелей (палитр) различного назначения на экране. Строка Состояния – включение/отключение строки состояния. Границы – визуализация занятых областей рабочего листа. Изменение Масштаба… - задание размеров изображения рабочего листа на экране. Обновить – регенерация изображения рабочего листа. Анимация… - создание анимации графиков и других объектов рабочего документа. Воспроизведение… - воспроизведение анимации графиков и других объектов рабочего документа. Настройки… - задание опций запуска Mathcad и стиля “горячих” клавиш. Вставка График – создание графиков различных типов. Матрица… - задание размеров матрицы. Функция… - вставка функций. Единицы Измерения…- вставка системы и единицы измерения. Рисунок – вставка рисунка из Буфера Обмена. Математическая область – создание области для ввода математических выражений. Текстовая Область - создание области для текста. Разрыв Страницы – создание новой страницы. Гиперсвязь… - связать рабочий лист с файлом или адресом в Internet. Ссылка… - ссылка на документ на жестком диске. Необходимо указать путь. Компонент - вставить компонент (использование баз данных, например Excel). Объект… - создание документов других Windows – приложений в рабочем листе. Формат
9 Уравнения… - создание и редактирование стиля оформления математических выражений. Результат… - редактирование стиля оформления результатов вычислений (точность, система измерений и т.п.). Текст… - редактирование стиля оформления текста (шрифт, размер и т.п.). Параграф… - редактирование стиля оформления параграфов (отступ, выравнивание и т.п.). Стиль… создание базовых стилей текста. Свойства… - выделение области текста цветом, размещение текста. График - редактирование стиля оформления графиков. Цвет – задание стиля оформления фона рабочего листа, выделений и комментариев. Отделить Области – разделение областей, в случае их наложения. Выровнять Области - выравнивание областей по верхней или левой границе. Заголовки/Колонтитулы… - редактирование стиля оформления заголовков и колонтитулов. Перенумерация Страниц – разбить рабочий лист на страницы. Математика Вычислить – вычисление выражений, в случае если отключен режим автоматических вычислений. Просчитать Документ – пересчитать рабочий лист. Обычно используется, когда отключен режим автоматических вычислений. Автоматическое вычисление – установка режима автоматических вычислений. Оптимизация – оптимизация выражений перед вычислениями. Параметры… - задание свойств переменных, вычислений, системы измерений и размерности системы измерений Символы Расчеты – отображение результата символьных вычислений (символьный, с плавающей запятой, с комплексным числом). Упростить – упростить выбранное выражение, выполняя арифметические действия, сокращая подобные слагаемые и используя основные тригонометрические тождества. Расширить – разложение всех степеней и произведений сумм в выражение. Фактор – разлагает на множители выбранное выражения, если все выражение может быть записано в виде произведения сомножителей. Подобные – объединяет члены, содержащие одинаковые степени выделенного подвыражения. Результатом является полином от подвыражения.
10 Коэффициенты Полинома - нахождение коэффициентов выражения, когда оно записано как полином относительно выделенной переменной или функции. Переменные – действия относительно переменной (дифференцировать, интегрировать по переменной, решить относительно переменной или заменить переменную). Матрицы – символьные преобразования матричных выражений (транспонировать, обратить, найти определитель). Преобразование – выбор вида преобразований (Фурье, Лапласа и Z – преобразования). Стиль Вычислений… - отображение положения результатов символьного вычисления (вертикально, горизонтально и т.п.), относительно первоначального выражения. Окно - команды расположения окон и список открытых документов. Справка – информация о Mathcad и его командах, доступ к Ресурс Центру. 2. Средства ввода и редактирования Mathcad 2.1
Редактирование областей рабочего листа Mathcad
Выделение областей: 1. Щёлкните мышью рядом с областями, которые нужно выделить. Это закрепит один угол выделяющего прямоугольника. 2. Нажав и удерживая левую кнопку мыши, переместите мышь. Пунктирный выделяющий прямоугольник возникнет из закреплённой точки. 3. Когда выделяющий прямоугольник достигнет всех требуемых областей, отпустите кнопку мыши. Каждая выделенная область окажется охваченной пунктирным выделяющим прямоугольником. Перемещение областей: 1. Поместите указатель мыши над одной из областей, выделенной пунктирным прямоугольником. Указатель мыши изменит форму со стрелки на крестик. 2. Нажав и удерживая левую кнопку мыши, переместите мышь. Контуры областей последуют за движением мыши. 3. Когда контуры достигнут желаемого расположения, отпустите кнопку мыши. Копирование областей: 1. Выделите области. 2. Выберите команду Копировать из меню Правка, чтобы скопировать выделенные области в Буфер Обмена.
11 3. Щелкните мышью там, куда нужно поместить копию областей. Убедитесь, что выбрано свободное место – курсор должен иметь форму визира. 4. Выберите команду Вставить из меню Правка. Удаление областей: 1. Выделите области. 2. Выберите команду Удалить из меню Правка. Выравнивание областей: 1. Выделите области. 2. Выберите команду Выровнять Области из меню Формат. 3. Задать направление выравнивания – По верхней или По левой границе. 2.2
Курсоры Mathcad
Визир (крестообразный курсор) – используется для размещения новых выражений, графиков и текстовых областей. Визир может появляться только в свободном месте документа. При начале печати курсор принимает другую форму. Маркер ввода – используется в выражениях для вставки и удаления отдельных символов, скобок и операторов. Может использоваться в области любого типа. Выделяющая рамка - используется в выражениях для вставки и удаления операторов, чисел, а также имен функций и переменных. Может использоваться только в математической и графической областях. Срезанный угол указывает направление вставки или удаления. Для изменения направления необходимо нажать клавишу [Ins]. 3. Ввод, редактирование и форматирование текста 3.1
Ввод и редактирование текста
Создание текстовых областей: 1. Щёлкните в месте создания области. 2. Выберите команду Текстовая Область из меню Вставка. Появится текстовая рамка. 3. Начните печатать. По мере ввода текста текстовая рамка будет увеличиваться. Она исчезнет, как только Вы щёлкните вне текстовой области. 4. Чтобы покинуть текстовую область, щёлкните вне её. Не нажимайте Enter, это просто приведёт к переходу на новую строку внутри текста.
12 Замена символа: 1. Щёлкните на имени или числе. Используйте клавиши [←] и [→] для перемещения маркера. 2. Напечатайте буквы или цифры. Чтобы удалить символ слева от маркера, нажмите [BkSp]. Скопировать или вырезать текст: 1. Выделите область пунктирным выделяющим прямоугольником. 2. Выполните команду Копировать из меню Правка, чтобы скопировать текст в Буфер Обмена. 3. Выполните команду Вырезать из меню Правка, чтобы вырезать. Вставить текст: 1. Поместите курсор в то место, куда нужно вставить текст. 2. Выполните команду Вставить из меню Правка. Импорт текста: 1. Скопируйте текст в Буфер Обмена. 2. Щёлкните в свободном месте документа Mathcad. 3. Выполните команду Вставить из меню Правка. Перемещение текста: 1. Выделите область пунктирным выделяющим прямоугольником. 2. Поместите указатель мыши внутрь прямоугольника. 3. Нажав и удерживая левую кнопку мыши, переместите мышь. Прямоугольник переместится вслед за ней. 3.2
Форматирование текста
Изменение стиля Чтобы изменить гарнитуру, размер, начертание, расположение или цвет шрифта, которым записывается текст: 1. Выделите текст 2. Выберите Текст из меню Формат. 3. Выберите необходимые свойства шрифта в диалоговом окне и нажмите "OK" . Необходимые параметры можно также задать через панель Форматирование. Форматирование абзацев: 1. Щёлкните в текстовой области. 2. Выберите Параграф из меню Формат. 3. В диалоговом окне определите отступ, маркеры и способ выравнивания.
13 Определение ширины текстовой области: 1. Выделите область. 2. Переместите курсор к правому краю выделяющего пунктирного прямоугольника. Указатель мыши изменится на двойную стрелку. 3. Нажав и удерживая левую кнопку мыши, переместите мышь, пунктирный прямоугольник будет изменяться в размерах. 4. По достижении областью желаемой ширины отпустите кнопку мыши. 4. Ввод, редактирование и форматирование математических выражений 4.1
Ввод и редактирование математических выражений
Определение значений переменных Для того, чтобы можно было вычислить выражение, зависящее от каких-либо переменных, значения этих переменных должны быть определены. Для этого нужно: 1. Ввести имя переменной. 2. Ввести двоеточие [ : ], что приведёт к появлению знака присваивания [ := ] и следующего за ним поля ввода. 3. Напечатать в поле ввода число или выражение. Mathcad вычислит соответствующее значение и присвоит его имени переменной. Для создания: ♦ дискретных аргументов - ввести начальное значение, затем точку с запятой [ ; ] для создания знака диапазона и после конечное значение аргумента. При этом шаг приращений по умолчанию будет равен 1. Если задать три значения аргумента, то шаг будет равен разнице между вторым и первым значением аргумента; ♦ степени - нажать клавишу [ ^ ]; ♦ индексов переменной - ввести точку [ . ]; ♦ индексов массивов - нажать клавишу левой скобки [ [ ]; ♦ матриц, интегралов и т.п. - вызвать необходимую палитру, задать размерности и ввести в поля ввода соответствующую число или выражение. Определение функции Функция есть правило, согласно которому проводятся некоторые вычисления с её аргументами и вырабатывается её числовое значение. Для того, чтобы определить функцию, нужно: 1. Ввести в рабочий документ имя функции и левую скобку. 2. Ввести список аргументов, отделяемых друг от друга запятыми и закончить его правой скобкой.
14 3. Ввести двоеточие [ : ], что приведет к появлению знака присваивания [ := ] и следующего за ним поля ввода. 4. Напечатать в поле ввода выражение. Вычисление выражения Для того, чтобы получить числовой результат, нужно: 1. Ввести в рабочий документ выражение, значение которого нужно вычислить. 2. Ввести знак равенства [ = ], после чего Mathcad вычисляет введенное ранее выражение и выводит в рабочий документ результат вычислений. Для вычисления выражения в ручном режиме необходимо нажать клавишу [F9]. Вставка оператора Прежде чем вставлять оператор, вспомните, что всё заключенное выделяющей рамкой становится первым операндом следующего оператора: 1. Щёлкните на операнде, чтобы заключить его в выделяющую рамку. Используйте клавишу - [↑], если нужно увеличить выделяющую рамку. 2. Наберите комбинацию клавиш, задающую оператор. 3. Чтобы вставить оператор перед выделенным выражением, нажмите клавишу [Ins] прежде, чем начнёте печатать. Замена оператора: 1. Щёлкните на операторе, чтобы заключить выражение в выделяющую рамку. Убедитесь, что в рамку заключён оператор вместе с его операндами. 2. Нажмите [BkSp], чтобы удалить оператор. 3. Напечатайте новый оператор. Вставка и удаление скобок: 1. Заключите выражение в выделяющую рамку. 2. Нажмите апостроф [ ' ] чтобы вставить скобки. 3. Нажмите [Del], чтобы удалить пару скобок Вставка и удаление знака: 1. Щёлкните на выражении, чтобы заключить его в выделяющую рамку. Используйте - [↑], если нужно увеличить выделяющую рамку. 2. Для вставки знака нажмите [Ins]. Нажмите знак минус. 3. Для удаления знака заключите выражение целиком, включая знак минус, в выделяющую рамку. Нажмите [BkSp]. Перемещение частей формулы: 1. Заключите выражение, которое собираетесь переместить, в выделяющую рамку.
15 2. Выполните команду Вырезать или Копировать из меню Правка, чтобы вырезать или скопировать выражение в Буфер Обмена. 3. Щёлкните в свободном пространстве или в поле ввода, куда намерены вставить выражение. 4. Выполните команду Вставить из меню Правка, чтобы вставить выражение. 4.2
Форматирование математических выражений
Изменение стиля переменных и констант Чтобы изменить гарнитуру, размер, начертание, расположение или цвет шрифта, которым записываются переменные или константы: 1. Выберите Уравнение из меню Формат. 2. В диалоговом окне выберите Variables для переменных или Constants для констант и нажмите кнопку Изменить. 3. Выберите необходимые свойства шрифта в диалоговом окне и нажмите "OK" . Необходимые параметры можно также задать через панель Форматирование. Управление отображением чисел во всём документе: 1. Выберите Результат из меню Формат. 2. В диалоговом окне задайте значения отображением чисел. 5. Создание и форматирование графиков 5.1
Создание графиков:
1. Выберите команду График из меню Вставка 2. Поместите в Поле Ввода выражение, имена матриц или матрицу, в зависимости от вида графика. 3. Нажмите клавишу F9, чтобы построить график. 5.2
Форматирование графиков
Изменение размеров графика: 1. Заключите график в пунктирный выделяющий прямоугольник. 2. Переместите указатель мыши к правой или нижней стороне прямоугольника, указатель превратится в двойную стрелку. 3. Нажмите левую кнопку мыши и растяните график до желаемых размеров. Перемещение графика: 1. Заключите график в пунктирный выделяющий прямоугольник. 2. Перетащите его мышью или вырежьте и вставьте в новом месте.
16 Удаление графика: 1. Щёлкните на графике, чтобы выделить его. 2. Выполните команду Удалить из меню Правка. Mathcad оставляет пустое поле. Форматирование графика Чтобы изменить представление осей, тип, цвет и толщину линий графика и т.п., необходимо: 1. Дважды щёлкните на графике. 2. Выберите соответствующую вкладку. 3. Установите флажок или выберите из списка нужный стиль оформления графика. 6. Ресурс Центр Ресурс Центр является мощным инструментом по изучению и использованию Mathcad. Он организован в форме библиотеки Электронных Книг, которые являются документами Mathcad с гипертекстовыми ссылками. Ссылки выполняются для слов, выделенных жирным подчёркнутым текстом. Чтобы перейти в нужный раздел, достаточно дважды щёлкнуть мышью. Для перемещения по Ресурс Центру используются кнопки навигации. ♦ ♦ ♦ ♦ ♦
Overview – аннотация Mathcad, назначении и возможностях пакета. Getting Started – обучающая программа по работе с программой. Advanced Topic – электронный учебник по Mathcad. Quick Sheets - примеры решения типовых задач. Reference Tables – электронные справочники по физическим, химическим константам, формулам и уравнениям т.п. ♦ Mathcad in Action – решения задач из разных отраслей науки, техники и производства, созданные пользователями Mathcad. ♦ Web Library – подключение через Internet к другим Электронным Книгам Mathcad. ♦ Collaboratory – Internet - клуб пользователей Mathcad.
Для использования Ресурс Центра, после его вызова, необходимо открыть файл qsheet.hbk. 6.1
Навигация по Ресурс Центру (Resource Center)
- возврат на первую страницу Ресурс Центра. - открывает Панель инструментов Internet. - переход на предыдущую или последующую страницу Ресурс Центра. - осуществляют переход к предыдущей или последующей теме.
17 - выводит список просмотренных разделов Ресурс Центра. - осуществить поиск заданного ключевого слова по документам Ресурс Центра. Напечатайте ключевое слово в диалоговом окне. Появится список всех разделов Ресурс Центра, содержащих это слово. Затем можно перейти в любой из этих разделов. - копирует содержимое страницы Ресурс Центра в Буфер Обмена. - сохраняет содержимое страницы Ресурс Центра в виде отдельного документа. - выводит на печать содержимое страницы Ресурс Центра. 6.2
Quick Sheets
Quick Sheets или Шпаргалка - даёт набор готовых шаблонов для решения широкого круга математических задач, позволяет перенести эти шаблоны в документ Mathcad и видоизменить их сообразно Вашей задаче, иллюстрирует особенности применения некоторых особенностей Mathcad, подобных программированию и анимации и т.п. Как использовать Шпаргалку Каждая Шпаргалка даёт решение некоторой частной задачи и приводит к определенному виду ответа, например, в виде графика. Результат зависит от ряда параметров, и те части Шпаргалки, которые можно легко заменить для получения нужного ответа, выделены. Исходные данные для многих Шпаргалок содержатся в файлах данных, которые Mathcad читает с помощью функции READPRN. Можно использовать эти Шпаргалки, просто подставив свой файл данных для функции READPRN. Редактирование в окне Шпаргалки В любую из Шпаргалок можно внести произвольные временные изменения, используя клавиатуру, панель инструментов и все палитры. Из остального содержимого Шпаргалок изменения будут выделены другим цветом. Внимание: хотя палитры и панель инструментов работают внутри Шпаргалок, основное меню работает только внутри окна обычного документа Mathcad. При перемещениях внутри Шпаргалок изменения в отредактированном разделе сохраняются. При закрытии Шпаргалок изменения уничтожаются, если только они не были сделаны в одной из Личных Шпаргалок, когда предоставляется возможность сохранения сделанных изменений. Перемещение информации в Ваш документ Понравившийся Вам кусок Шпаргалки можно выделить мышью и пе-
18 ретащить в Ваш рабочий документ. Эта операция скопирует выделенный фрагмент Шпаргалки в рабочий документ. Сохранение материала в Личной Шпаргалке Личные Шпаргалки дают возможность удобного сохранения часто используемой информации. Просто скопируйте нужную информацию в одну из следующих Шпаргалок: My Formulas (Мои Формулы) или My Hotlinks (Мои Ссылки). 7. Перечень лабораторных работ. 7.1 Лабораторная работа № 1 «Работа с текстовым и формульным редактором» Цель работы: Получение навыков работы с формулами и текстом. бота с символьными преобразованиями.
Ра-
В основном, работа с системой MathCAD сводится к определению задания на вычисления, т.е. текстовая постановка задачи и определение формул для проведения вычислений. Текстовые и формульные данные определяются в виде блоков. Текстовый редактор позволяет задавать текстовые комментарии. Они делают документ с формулами и графиками более понятным. Подробная информация о редактировании и форматировании текста представлена в п. 3. Для запуска формульного редактора необходимо установить курсор мыши в любом свободном месте окна редактирования и щелкнуть левой клавишей. Появится визир в виде маленького красного крестика. Визир указывает место, с которого начинается набор формул – вычислительных блоков. В области формул визир превращается в синий уголок, указывающий направление и место ввода. Подробная информация о редактировании и форматировании математических выражений представлена в п. 4. Для облегчения и удобства создания вычислительных блоков в MathCAD представлена математическая панель инструментов с шаблонами различных математических символов. Пример : Рассмотрим применение текстового и формульного редакторов на примере упрощения выражения. Необходимо упростить выражение : 2 ⎞ ⎛ 9x − 9x2 ⎞ ⎛ ⎟ +1 ⎜1 + ⎟ * ⎜⎜1 − 3 x + 1 ⎟⎠ ⎝ 3x − 1 ⎠ ⎝
Порядок выполнения работы:
19 1. Определить постановку задачи в текстовом редакторе: а) в меню Insert выбрать команду Text Region или щелкнуть по клавише “. б) в открывшейся текстовой области набрать соответствующий текст. в) для выхода в формульный редактор щелкнуть мышкой вне текстовой области. 2. Ввести выражение - где при вводе дробей или скобок необходимо соблюдать размещение синего уголка, т.к. при неправильном вводе результат будет ошибочным или вообще не будет вычисления. Допустим, при закрытии скобок уголок должен быть размещении так, как показано на примере. 3. Выделить выражение или разместить синий уголок так, чтобы он охватывал все выражение.
4. В меню Simbolics выбрать команду Simplify. 5. Полученный результат должен появиться слева от выражения или снизу – в зависимости от выбранного режима (меню Simbolics команда Evaluation Style). Задание к работе В текстовом редакторе вывести комментарии к решению задачи. Набрать соответствующее выражение и выполнить символьные преобразования алгебраических выражений. Варианты индивидуальных заданий
1. Упростите выражение
1
2 3.x 3.x 9.x 1
1
3
2.x 3.x
2. Раскройте скобки и приведите подобные выражения x. ( z
2)
2
4 . z. ( x 2 . z )
3. Разложите на множители выражение 2 a .b
a .b
2
2.a .b .c
2 b .c
3 3 4. Упростите выражение: a − b a −b
2 a .c
a .c
2
b .c
2
20
5. Раскройте скобки и приведите подобные выражения x. ( z
1)
2 . z. ( x z)
2
6. Разложите на простейшие дроби рациональную дробь 2
x
3.x 7
2 2 ( x 1) . x
x 1
7. Упростите выражение 8. Раскройте скобки и приведите подобные выражения
x. ( z
2)
2
4 . z. ( x 2 . z)
2 4 . x. ( x 4 )
9. Разложите на простейшие дроби рациональную дробь 2
x
6.x 2
2 2 ( x 1) . x
(2
x)
x 1
10. Разложите на множители выражение 2 a .b
a .b
2
2.a .b .c
2 b .c
2 a .c
a .c
2
b .c
2
c
2 c .a
7.2 Лабораторная работа № 2 «Решение систем линейных алгебраических уравнений» Цель работы: Получение навыков решения систем линейных алгебраических уравнений с использованием различных подходов и команды приложения. Известно, что система линейных уравнений в матричной форме A*X=B. Вектор решения получается из X=A-1*B. Для решения систем линейных уравнений в MathCAD существует встроенная функция lsolve(A,B), которая возвращает вектор X для системы линейных уравнений при заданной матрице коэффициентов и векторе свободных членов. Также используются системы линейных уравнений для вычисления определителя по формулам Крамера – точный метод решения. Решение линейной системы методом Гаусса – приближенный метод.
21 Функции, предназначенные для решения задач линейной алгебры, можно разделить на три группы: Функции определения матриц и операции с блоками матриц, функции вычисления различных числовых характеристик матриц, и функций, реализующие численные алгоритмы решения задач линейной алгебры. Пример: Решить систему линейных уравнений:
Решение системы линейных уравнений по формулам Крамера Порядок выполнения 1. Переменной ORIGIN присваивается значение равное единице.
22 2. Ввод матрицы системы и столбца правых частей. 3. Вычисление определителя матрицы системы. Система имеет единственное решение, если определитель отличен от нуля. 4. Вычисление определителей матрицы, полученных заменой соответствующего столбца столбцом правых частей. 5. Определение решения системы по формулам Крамера.
ORIGIN 1 1 2 3 A
7
1 3 2
b
1 1 1
x1
Δ1 Δ
A
Δ = 3
1 7 3 Δ2
5 3 2 3 1 1
Δ
3
7 2 3 Δ1
5
Δ3
1 5 2 1 3 1
Δ1= 3
x1 = 1
1 2 7
x2
Δ2 Δ
1 1 3
Δ2= 0
x2 = 0
1 3 5
x3
Δ3 Δ
Δ3= 6
x3 = 2
Решение линейной системы методом Гаусса (метод гауссовых исключений) Порядок выполнения: 1. Переменной ORIGIN присваивается значение равное единице. 2. Ввод матрицы системы и матрицы-столбца правых частей. 3. Формирование расширенной матрицы системы – функция augment(A,b). 4. Приведение расширенной матрицы системы к ступенчатому виду – функция rref(Ar). 5. Формирование столбца решения системы – функция submatrix(Ag,1,3,4,4). 6. Проверка правильности решения умножением матрицы системы на вектор-столбец решения.
23
ORIGIN 1 1 2 3 A
7
1 3 2
b
1 1 1
5 3 1 2 3 7
Ar
augment ( A , b )
Ar =
1 3 2 5 1 1 1 3
Ag
1 0 0 1
rref( Ar )
Ag =
0 1 0 0 0 0 1 2
x
0
1
submatrix( Ag , 1 , 3 , 4 , 4 ) x=
A .x b =
0
0 0
2
Задание к работе 1. Исследуйте и, если решение существует, найдите по формулам Крамера решение системы. 2. Найдите методом Гаусса решение системы линейных алгебраических уравнений. Варианты индивидуальных заданий предназначены для двух задач. Варианты индивидуальных заданий
0.005 0.004 0.150
1. A
2. A
0
0.090 0.033 0.0067 0.098 0.0150 0.033 0.050
0
0.057 B
0.098 0.041
0.015 0.012 0.250 0.100
0.388
0.070 0.033 0.020 0.075 0.350 0.100 0.075 0.110 0.0086 0.200 0.233 0.075
B
A
0.183
2.857 0.100 0.300 0.025
0.084 1.357 0.149
0.010 0.008 0.200 0.050
6.
7. A
0.080 0
0.013 0.050
0.250 0.067 0.067 0.069
0.186 B
0.126 0.646
0.0057 0.150 0.267 0.050
0.0086
0.020 0.016 0.300 0.150
0.662
0.060 0.067 0.027 0.100 0.450 0.133 0.080 0.139 0.011 0.250 0.200 0.100
B
0.029 2.312 0.379
24 3.
0.025 0.020 0.350 0.200 A
4. A
5. A
0.050 0.100 0.033 0.125 0.550 0.167 0.083 0.161
1.008 B
0.212 0.700
0.035 0.028 0.450 0.300
1.918
0.750 0.233 0.088 0.195
B
0.788 6.611
0.020 0.400 0.100 0.175
1.613
0.045 0.036 0.550 0.400
3.117
0.010 0.233 0.060 0.225 0.950 0.300 0.090 0.220 0.026 0.500 0.033 0.225
B
1.646 10.664
0.030 0.024 0.400 0.250 A
3.507
0.014 0.300 0.167 0.125
0.030 0.167 0.047 0.175
8.
9. A
10. A
2.888
0.040 0.133 0.040 0.150 0.650 0.200 0.086 0.179
1.427 B
0.465 4.940
0.017 0.350 0.133 0.150
1.111
0.040 0.032 0.500 0.350
2.481
0.020 0.200 0.053 0.200 0.850 0.267 0.089 0.208
B
1.182 8.520
0.023 0.450 0.067 0.200
2.205
0.050 0.040 0.600 0.450
3.825
0
0.267 0.067 0.250
1.050 0.333 0.091 0.230 0.029 0.550 0
0.250
B
2.181 13.045 3.661
7.3 Лабораторная работа № 3 «Численное решение нелинейных уравнений» Цель работы: Получение навыков работы с функциями для решения нелинейных уравнений. Решения нелинейных уравнений. Многие уравнения, например трансцендентные, не имеют аналитических решений. Однако они могут решаться численными методами с заданной погрешностью. Для простейших уравнений вида F(x)=0 решение находится с помощью функции root(Выражение, Имя переменной). Эта функция возвращает значение переменной с указанным уровнем, при котором выражение дает 0.Функция реализует вычисления итерационным методом, причем можно задать начальное значение переменной. Это особенно полезно, если возможно несколько решений. Пример: Вычисление корней кубического полинома. Кубическое уравнение обязательно имеет хотя бы один кубический корень x1. Он определяется с помощью функции root.
25 Порядок выполнения:
1. 2. 3. 4.
Ввод коэффициентов полинома. Ввод полинома. Вычисление действительного корня с помощью функции root. Вычисление двух других корней. a3
1 a3 . x
3
F( x) x
a2
0
6 a2 . x
2
x1
i
1
x3
root
x
a1
21
a0
52
a1 . x a0
root ( F( x) , x) 1
1.i
F( x) ,x ( x x1) . ( x x2)
x1 = 4 x2
root
F( x) x x1
x3 = 1
,x
x2 = 1 + 3.464i
3.464i
Задание к работе: Вычислить корни кубического полинома и построить график. F(x)=a3*x3+a2*x2+a1*x+a0 Варианты индивидуальных заданий
№ вари анта 1 2 3 4 5 6 7 8 9
7.1.1.1.1
Коэффициенты полинома
a3 2 34 5 -34 4 6 -8 -10 5
a2 -8 -3 -4 67 4 12 -24 -1 32
a1 15 23 27 -3 45 12 26 84 -34
a0 -30 48 23 11 22 35 -47 -2 8
26 10
7
17
25
48
7.4 Лабораторная работа №4 «Численное решение систем нелинейных уравнений» Цель работы: Получение навыков работы с системами нелинейных уравнений. Функции для решения систем нелинейных уравнений. При решении систем нелинейных уравнений используется специальный вычислительный блок, открываемый служебным словом – директивой Given – и имеющий следующую структуру: Given Уравнения Ограничительные условия Выражения с функциями find и minerr Между функциями find и minerr существуют принципиальные различия. Первая функция используется, когда решение реально существует. Вторая функция пытается найти максимальное приближение даже к несуществующему решению путем минимизации среднеквадратичной погрешности решения. find(v1,v2,…,vn) – возвращает значение одной или ряда переменных для точного решения; minerr(v1,v2,…,vn) – возвращает значение одной или ряда переменных для приближенного решения. Пример: Решение некорректной задачи Порядок выполнения
1. Точное задание x=10 делает некорректным решение уравнения x2=3. 2. Система отвечает на попытку решения сообщением об ошибке – функция выделена красным цветом. 3. Однако задание уравнения в виде приближенного равенства позволяет найти решение. 4. Решение с применением функции minerr также позволяет найти решение.
x
10 Given 2
x
3
x0
Find( x)
27
x
10 Given 2
x 3 Find( x) x0 = 1.732
x0 x
10 Given 2
x 3 x1
Minerr( x)
x1 = 1.732
Вычисление координат точек пересечения прямой с параболой. Порядок выполнения
1. Строится график по заданным уравнениям. 2. На графике видно, что прямая 8+3х и парабола х^2 пересекаются в двух точках при х около -1,7 и +4,8 1. Первое решение определяется при x=0, y=0. 2. Находится первое решение. 3. Проводится проверка вычислением у. 4. Находится второе решение.
Точки пересечения прямой с параболой решение нелинейного уравнения x 6 , 5.75 .. 6
x 8
2 3 .x 10
5
40 34 28 22 16 10 4 2 8 14 20
0
x
5
10
28
Ищем первое решение при
x
0 y
0
x
Given 2 y x x0
y 8
3.x
Решаемая система управнений при ограничении x0
Find( x, y )
y0 2
x0 = 2.895
y0 8
1.702
=
3 . x0 = 2.895
Найдем второе решение при x
3 x0 y0
y
0
Find( x, y )
Найдено первое решение
2.895
Given
Проверка решения вычислением y x> 0
2
y x
x0 y0
=
y 8
4.702 22.105
3.x Найдено второе решение
Задание к работе Вычисление координат точек пересечения прямой с кривой второго порядка. Решить систему уравнений. Найти приближенное решение. Построить график. Варианты индивидуальных заданий 1. Пересечение прямой с параболой. 2. Пересечение прямой с гиперболой. 3. Пересечение прямой с эллипсом. 4. Пересечение прямой с параболой. 5. Пересечение прямой с параболой. 6. Пересечение прямой с параболой. 7. Пересечение прямой с параболой. 8. Пересечение прямой с параболой. 9. Пересечение прямой с параболой. 10. Пересечение прямой с параболой.
x< 0
29 7.5 Лабораторная работа № 5 «Определение наибольшего и наименьшего значения функции» Цель работы: Получение навыков работы при решении задач линейного программирования. Решение задачи линейного программирования. В общем случае задача линейного программирования формулируется следующим образом. Найти величины x1, x2,…, xn, доставляющие минимум линейной функции f(x1,x2,…,xn)=c1x1+c2x2+…+cnxn и удовлетворяющие условиям, которые могут быть только равенствами и неравенствами вида ai1x1+ai2x2+…+ainxn<=bi, ak1x1+ak2x2+…+aknxn=bk, ap1x1+ap2x2+…+apnxn>=bp, i≠k≠p Среди ограничений часто встречаются условия неотрицательности всех или части переменных. xj>=0 Функция f(x1,x2,…,xn) называется целевой функцией. Пример: Найти минимум целевой функции f(x,y)=2x+3y при ограничениях x+y<=5, x+2y>=4, 2x+y>=5,
x>=0, y>=0.
Порядок выполнения
1. Задаются на графике соответствующие прямые и определяется область допустимых значений переменных. 2. Если задача имеет единственное решение, определяется вершина в которой достигается искомое экстремальное значение (максимум или минимум) целевой функции и указываются ее координаты. 3. Вычисляется значение целевой функции в найденной точке.
30 x
y 5
x
2 .y 4
x
5 1.
x
2
2 .x
5
2
2 .x
y 5
2 .x
3 .y c
y1 ( x )
2. 3
2
c
c
x
2
2 .x
y3 ( x )
3
5 1.
y2 ( x )
1.
x
x
7
5
y4 ( x )
2. 3
x
1. 3
c
5 y1 ( x ) y2 ( x ) y3 ( x )
4 3 2
y4 ( x ) 1
0
1
2
3
4
5
x
Задача имеет единственное решение. Минимум целевой функции достигается в точке пересечения прямых x+2=4, 2x+y=5 Given
x 2.y 4 2.x y 5 f( x, y )
2.x 3.y
Find( x, y )
fmin
2 1 f( 2 , 1 )
fmin = 7
Минимальное значение целевой функции равно 7, оно достигается в точке x=2, y=1. fmin=f(2,1)=7.
Задание к работе: Найдите минимум целевой функции f(x,y)=ax+by при указанных ограничениях. Построить график. Варианты индивидуальных заданий:
31
7.1.1
1 2 3 4 5 6 7 8 9 10
f(x,y)
7.1.1.1.3
3x+2y 3x+2y 3x+2y 3x+2y 3x+2y 2x+5y 2x+5y 2x+5y 2x+5y 2x+5y
Ограничения
x+y<=4 x+y<=6 x+y<=8 x+y<=9 x+y<=6 x+y>=4 x+y>=5 x+y>=5 x+y>=6 x+y>=7
x+2y>=5 x+2y>=7 x+2y>=8 x+2y>=7 x+2y>=5 x+2y<=13 x+2y<=14 x+2y<=15 x+2y<=11 x+2y<=13
2x+y>=6 2x+y>=8 2x+y>=8 2x+y>=6 2x+y>=3 2x+y<=13 2x+y<=14 2x+y<=15 2x+y<=8 2x+y<=9
x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0
y>=0 y>=0 y>=0 y>=0 y>=0 y>=0 y>=0 y>=0 y>=0 y>=0
7.6 Лабораторная работа № 6 ”Построение графиков функций” Цель работы: Получение навыков построения графиков функций, заданных в различной форме, средствами MathCAD. Задание 1: Постройте графики функций, заданных в явной, неявной и параметрической форме. Запишите уравнения касательной и нормали к каждой кривой в указанных точках и изобразите их на графике. Варианты индивидуальных заданий
№ 1 2 3 4 5 6 7 8 9
f(x) lnx 1+1/x Exp(x) Sin(x) Cos(x) Exp(x)cos(x) X+cos(x) tgx
10
Sec(x)
e−x
2
F(x,y) x + y2 = 4 2
x2 − y2 = 4 ( x − 3) 2 + y 2 = 4 cos( x) 2 + sin( y ) 2 = 1
(x+y)y=2 Xy+x+y=4 X+cos(xy)=1 x + y2 = 4
( x 3) 2 + y 2 = 4
x2 y2 + =1 3 4
32 7.7 ЛАБОРАТОРНАЯ РАБОТА №7 ”Обработка экспериментальных данных” Цель работы: Изучение средств MathCAD для решения задач обработки экспериментальных данных.
Функции для обработки экспериментальных данных. При проведении научно-технических расчетов часто используются эмпирические зависимости, причем число точек этих зависимостей ограничено. Неизбежно возникает задача восполнения данных: имеется некоторое количество точек, через которые следует провести кривую. Это не что иное, как классическая задача интерполяции. Интерполяция – частный случай более общей задачи аппроксимации (приближенного представления), возникающей при замене кривой, описываемой функцией сложной природы, другой кривой, в некотором смысле близкой заданной, имеющей более простые уравнения. Задача сглаживания кривой возникает, когда данные, используемые для ее восстановления, определены в результате измерений или эмпирически с некоторой погрешностью либо представляет кривую, описываемую функцией, недостаточно гладкой (например, недифференцируемой или дифференцируемой всего несколько раз). Функции линейной и сплайновой интерполяций. Система MathCAD предоставляет возможность интерполяции двух типов: кусочно-линейной и сплайновой. linterp(VX,VY,x) – для заданных векторов VX и VY узловых точек и заданного аргумента х эта функция возвращает значение функции при ее линейной интерполяции. При небольшом числе узловых точек (менее 10) линейная интерполяция оказывается довольно грубой. При ней даже первая производная функции интерполяции испытывает резкие скачки в узловых точках. Гораздо лучшие результаты дает сплайн-интерполяция. При ней исходная функция заменяется отрезками кубических полиномов, проходящих через три смежные узловые точки. Коэффициенты полиномов рассчитываются так, чтобы непрерывными были первая и вторая производные. Линия, которую описывает сплайн-функция, напоминает по форме гибкую линейку, закрепленную в узловых точках (отсюда и название интерполяции: spline — гибкая линейка). Для осуществления сплайновой аппроксимации система MathCAD предлагает четыре встроенные функции. Три из них служат для получения векторов вторых производных сплайн-функций при различном виде интерполяции:
33 cspline(VХ,VY) — возвращает вектор VS вторых производных при приближении в опорных точках к кубическому полиному; pspline(VХ,VY) — возвращает вектор VS вторых производных при приближении к опорным точкам параболической кривой; lspline(VХ,VY) — возвращает вектор VS вторых производных при приближении к опорным точкам прямой. Наконец, четвертая функция interp(VS, VX, VY, х) - возвращает значение y(x) для заданных векторов VS, VX, VY и заданного значения х. Таким образом, сплайн-аппроксимация проводится в два этапа. На первом с помощью функций cspline, рspline или lspline отыскивается вектор вторых производных функции y(x), заданной векторами VX и VY ее значений (абсцисс и ординат). Затем, на втором этапе для каждой искомой точки вычисляется значение y(x) c помощью функции interp.
Функции для линейной регрессии Другой широко распространенной задачей обработки данных является представление их совокупности некоторой функцией y(x). Задача регрессии заключается в получении параметров этой функции такими, чтобы функция приближала облако исходных точек (заданных векторами VХ и VY) с наименьшей среднеквадратичной погрешностью. Чаще всего используется линейная регрессия, при которой функция y(x) имеет вид y(x) = a + b⋅x и описывает отрезок прямой. К линейной регрессии можно свести многие виды нелинейной регрессии при двупараметрических зависимостях y(x). Для проведения линейной регрессии в систему встроен ряд приведенных ниже функций: согг(VХ,VY) — возвращает скаляр — коэффициент корреляции Пирсона; interp(VХ,VY) — возвращает значение параметра a (смещение линии регрессии по вертикали); s1оре(VX, VY) — возвращает значение параметра b (наклона линии регрессии). Функции для линейной регрессии общего вида. В MathCAD реализована возможность выполнения линейной регрессии общего вида. При ней заданная совокупность точек приближается функцией вида: F(х, К1, К2,…,Kn) = К1⋅F1(х) + К2⋅F2(х) + ... + Кn⋅Fn(х). Таким образом, функция регрессии является линейной комбинацией функций К1⋅F1(х), К2⋅F2(х),…, Кn⋅Fn(х), причем сами эти функции могут быть нелинейными, что резко расширяет возможности такой аппроксимации и распространяет ее на нелинейные функции.
34 Для реализации линейной регрессии общего вида используется функция 1infit(VХ,VY,F). Эта функция возвращает вектор коэффициентов линейной регрессии общего вида К, при котором среднеквадратичная погрешность приближения облака исходных точек, если их координаты хранятся в векторах VX и VY, оказывается минимальной. Вектор F должен содержать функции F1(х), F2(х),…, Fn(х), записанные в символьном виде. Функции для одномерной и многомерной полиномиальной регрессии. Введена в новую версию MathCAD и функция для обеспечения полиномиальной регрессии при произвольной степени полинома регрессии: Regress(VX,VY,n) Она возвращает вектор VS, запрашиваемый функцией interp(VS,VX,VY,x), содержащий коэффициенты многочлена n-й степени, который наилучшим образом приближает «облако» точек с координатами, хранящимися в векторах VХ и VY. На практике не рекомендуется делать степень аппроксимирующего полинома выше четвертой — шестой, поскольку погрешности реализации регрессии сильно возрастают. Функция regress создаст единственный приближающий полином, коэффициенты которого вычисляются по всей совокупности заданных точек, т. е. глобально. Иногда полезна другая функция полиномиальной регрессии, дающая локальные приближения отрезками полиномов второй степени, — 1оеss(VХ,VY,span). Эта функция возвращает используемый функцией interp(VS,VX,VY,x) вектор VS, дающий наилучшее приближение данных (с координатами точек в векторах VХ и VY) отрезками полиномов второй степени. Аргумент span>0 указывает размер локальной области приближаемых данных (рекомендуемое начальное значение - 0,75). Чем больше span, тем сильнее сказывается сглаживание данных. При больших span эта функция приближается к regress(VХ,VY,2). Выполнение многомерной регрессии. MathCAD позволяет выполнять также многомерную регрессию, самый типичный случай которой — приближение трехмерных поверхностей. Их можно характеризовать массивом значений высот z, соответствующих двумерному массиву Мху координат точек (х,у) на горизонтальной плоскости. Новых функций для этого не задано. Используются уже описанные функции в несколько иной форме: геgress(Мху,Vz,n) — возвращает вектор, запрашиваемый функцией interp(VS,Mxy,Vz,V) для вычисления многочлена n-й степени, который наилучшим образом приближает точки множества Мху и Vz. Мху — матрица m⋅2, содержащая координаты x и y. Vz — m-мерный вектор, содержащий z-координат, соответствующих m точкам, указанным в Мху;
35 1оеs(Мху,Vz,span) — аналогична loes(VX,VY,span), но в многомерном случае; 1nterp(VS, Мху,Vz,V) — возвращает значение z по заданным векторам VS (создается функциями regress или 1оеss) и Мху, Vz и V (вектор координат x и y заданной точки, для которой находится z).
Функция для нелинейной регрессии общего вида. Под нелинейной регрессией общего вида подразумевается нахождение вектора К параметров произвольной фучнкции F(х,К1,К2,...,Кn), при котором обеспечивается минимальная среднеквадратичная погрешность приближения облака исходных точек. Для проведения'нелинейной регрессии общего вида используется функция genfit(VX,VY,VS,F). Эта функция возвращает вектор К параметров функции F, дающий минимальную среднеквадратичную погрешность приближения функцией F(х,К1,К2,...,Кn) исходных данных. F должен быть вектором с символьными элементами, содержащими уравнение исходной функции и ее производных по всем параметрам. Вектор VS должен содержать начальные значения элементов вектора К, необходимые для решения системы нелинейных уравнений регрессии итерационным методом. Функции сглаживания данных. Данные большинства экспериментов имеют случайные составляющие погрешности. Поэтому часто возникает необходимость статистического сглаживания данных. Ряд функций MathCAD предназначен для выполнения операций сглаживания данных различными методами (в их названии имеется слово smooth - гладкий). Вот перечень этих функций: Medsmooth(VY,n) - для вектора с m действительными числами возвращает m-мерный вектор сглаженных данных по методу скользящей медианы, параметр n задает ширину окна сглаживания (n должно быть нечетным числом, меньшим m); ksmooth(VX,VY,b) - возвращает n-мерный вектор сглаженных VY, вычисленных на основе распределения Гаусса. VX и VY - n-мерные векторы действительных чисел. Параметр b (полоса пропускания) задает ширину окна сглаживания (b должно в несколько раз превышать интервал между точками по оси x); supsmooth(VX,VY) - возвращает n-мерный вектор сглаженных VY, вычисленных на основе использования процедуры линейного сглаживания методом наименьших квадратов по правилу k-ближайших соседей с адаптивным выбором k. VХ и VY - n-мерные векторы действительных чисел. Элементы вектора VХ должны идти в порядке возрастания. Функция предсказания. Весьма интересной является функция предсказания ргеdikt(data,k,N), где data - вектор данных, k - степень полинома регрессии и N - число точек. Она
36 по ряду заданных равномерно расположенных точек позволяет рассчитать некоторое число N последующих точек, т. е. по существу выполняет экстраполяцию произвольной (но достаточно гладкой и предсказуемой) зависимости. Пример решения задачи линейной интерполяции табличных данных: X := ( 10 12 13.5 15 17 19 20 22 25 30 )
T
Y := ( 10 11.5 12 13 14.7 12 12.4 15 15.8 20 ) N := 9
T
x := X0 , X0 + 0.1 .. XN
i := 0 .. N
y ( x) := linterp( X , Y , x)
y ( 12) = 11.5
20 Yi y( x)
15
10 10
20
30
Xi , x
Задание к работе. Построить интерполяционный кубический сплайн для функции y=f(x), заданной таблицей. Используя найденную зависимость, найти значение у в точке x = N + 0.55 , где N – номер варианта. Варианты индивидуальных заданий.
Таблица 1. Х Y 2. Х Y 3. Х Y 4. Х Y
1 0.686
1.1 0.742
1.2 0.767
1.3 0.646
1.5 0.774
2 2.312
2.1 2.251
2.2 2.418
2.3 2.752
2.5 2.7
3 4.615
3.1 4.591
3.2 5.13
4 8.472
4.1 8.805
4.2 9.096
3.3 5.481 4.3 8.993
3.5 5.553 4.5 9.312
1.4 0.807 2.4 2.459 3.4 5.492 4.4 9.465
1.6 0.97 2.6 3.022 3.6 5.471 4.6 9.771
1.7 0.932 2.7 3.079
1.8 0.936 2.8 2.42
1.9 0.978 2.9 2.669
3.7 5.727
3.8 5.798
3.9 6.11
4.7 9.61
4.8 9.722
4.9 11.41
2 1.048 3 3.241 4 6.605 5 10.28
37 5. Х Y 6. Х Y 7. Х Y 8. Х Y 9. Х Y 10. Х Y
5 12.36
5.1 13.63
5.2 13.3
5.3 13.15
5.5 13.48
5.4 14.24
5.6 14.52
5.7 14.88
5.8 15.25
5.9 15.34
6 17.63
6.1 19.75
6.2 19.79
6.3 18.81
6.5 19.87
6.4 21.12
6.6 20.21
6.7 19.49
6.8 20.15
6.9 20.51
7 21.29
7 25.24
7.1 25.13
7.2 25.67
7.3 26.63
7.5 26.75
7.4 27.23
7.6 26.49
7.7 26.88
7.8 27.23
7.9 28.07
8 27.79
8 30.53
8.1 34.22
8.2 34.23
8.3 34.11
8.5 33.6
8.4 34.06
8.6 34.5
8.7 35.83
8.8 35.68
8.9 35.44
9 35.67
9 41.74
9.1 42.24
9.2 43.88
9.3 42.17
9.5 43.7
9.4 45.04
9.6 42.46
9.7 45.72
9.8 44.06
9.9 45.87
10 44.95
10 49.76
10.1 51.92
10.2 50.08
10.3 52.38
10.5 53.41
10.4 54.96
10.6 52.77
10.7 54.12
10.8 55.48
10.9 55.69
11 56.2
6 15.16
Найти методом наименьших квадратов значения коэффициентов зависимости y = f (x) по заданным экспериментальным данным (табл. 1). Используя найденную зависимость, найдите значение у в точке x = N + 0.55 , где N – номер варианта, абсолютную погрешность в них и среднеквадратическую погрешность, построить графики. Варианты индивидуальных заданий: 1. y = a ⋅ x + b; 2. y = a + b ⋅ x + c ⋅ x 2 ; 3. y = a0 + a1 ⋅ x + a2 ⋅ x 2 + a3 ⋅ x3 ; b c ; x x2 b c d 5. y = a + + 2 + 3 ; x x x 6. y = a + b ⋅ ln(x);
4. y = a + +
7. y = a + b ⋅ cos( x) + c ⋅ x 2 ; 1 ; a + b ⋅ tg ( x) 2 1 9. y = a + + c ⋅ x2 ; b ⋅ log( x)
8. y =
10. y = a + b ⋅ sin( x) 2 + c ⋅ x 3 . Постройте график z = f ( x, y ) двумерной сплайн-интерполяции по заданным эмпирическим данным (массивы X, Y даны в табл.). Используя найденную зависимость, найдите значение z в точке x = X N + 0.55 , y = YN + 0.3 5, где N – номер варианта. Варианты индивидуальных заданий.
38
1. 2. 3. 4. 5. 6. 7. 8.
z = sin( x + y ); z = cos( x + y ); sin( x + y 2 ) − z = 0; z = tg ( x + y ); z = sin( x + 0.5 ⋅ y ) 2 ; ln( x + y ) − z = 0; 1.5 ⋅ x ⋅ y − ( x 2 + y 2 ) − z = 0;
z = x 2 ⋅ y + sin( x + y ); 3⋅ x ⋅ y 9. 2 2 − z = 0; x +y
10. z = x ⋅ y + cos( x + y ). 7.8 ЛАБОРАТОРНАЯ РАБОТА №8 ”Приближенное решение дифференциальных уравнений” Цель работы: Получение навыков решения дифференциальных уравнений с использованием встроенных функций MathCAD.
Функции для решения дифференциальных уравнений. В систему MathCAD введена возможность решения дифференциальных уравнений и систем с такими уравнениями в численном виде. Эту возможность трудно переоценить, так как многие серьезные научно-технические задачи (особенно относящиеся к анализу динамических систем и к их математическому моделированию) базируются на численных методах решения систем дифференциальных уравнений. Нелинейные дифференциальные уравнения и системы с такими уравнениями, как правило, не имеют аналитических методов решения, и здесь особенно важна возможность их решения численными методами. В большинстве случаев желательно представление решений в графическом виде, что и позволяет MathCAD. Для решения дифференциальных уравнений (систем) различного порядка и различными методами в MathCAD введены 13 встроенных функций: rkadapt, Rkadapt, rkfixed, Bulstoer, bulstoer, bvalfit, multigird, relax, sbval, Stiffb, stiffb, Stiffr и stiffr. Назначение и описание аргументов этих функций даны в приложении. В функцию rkfixed заложен широко распространенный метод решения дифференциальных уравнений – метод Рунге-Кутта. Несмотря на то, что это не самый быстрый метод, функция rkfixed почти всегда справляется с поставленной задачей. Однако есть случаи, когда лучше использовать более сложные методы. Эти случаи попадают под три широкие категории: система мо-
39 жет быть жесткой (Stiffb, Stiffr), функции системы могут гладкими (Bulstoer) или плавными (Rkadap). Нередко приходится пробовать несколько методов на одном дифференциальном уравнении (на одной системе), чтобы определить, какой метод лучше. Как известно, что решение гладкое, используется функция Bulstoer, куда заложен метод Бурлиш-Штера, а не Рунге-Кутта, используемый функцией rkfixed. В этом случае решение будет точнее. Можно решить задачу более точно (более быстро), если уменьшить шаг там, где производная меняется быстро, и увеличить шаг там, где она ведет более спокойно. Для этого предусмотрена функция Rkadap. Но, несмотря на то что она при решении дифференциального уравнения использует непостоянный шаг, функция Rkadap представит ответ для точек, находящихся на одинаковом расстоянии, заданном пользователем. Система дифференциальных уравнений, записанная в матричной форме y=A⋅x, где A – почти вырожденная матрица, называется жесткой. При решении жестких систем следует использовать одну из двух встроенных функций, разработанных специально для таких случаев: Stiffb и Stiffr. Они используют метод Булирш-Штера (b) или Розенброка (r). Функции, начинающиеся со строчной буквы, дают решения только для конечной точки. Для решения двухточечных краевых задач предназначены функции: sbval и bvalfit. Для решения дифференциальных уравнений Пуассона (в частных производных второго порядка) и уравнений Лапласа в систему введены следующие функции: bvalfit, multigird, relax, sbval. Большое число примеров на решение дифференциальных уравнений с описанными функциями дается в подсказках QuickSheets, размещенных в центре ресурсов. 3. Пример решения обыкновенного дифференциального уравнения. Решение системы из двух дифференциальных уравнений методом Рунге-Кутта с фиксированным шагом μ := −0.1
Параметр системы
⎛ 0⎞ ⎟ ⎝ 1⎠
⎡ μ ⋅ X0 − X1 − ⎡⎣ ( X0) 2 + ( X1) 2 ⎤⎦ ⋅ X0 D( t , X) := ⎢ ⎢ μ ⋅ X + X − ⎡ ( X )2 + ( X )2 ⎤ ⋅ X 1 0 1 ⎦ 1 ⎣ ⎣ 0 Z := rkfixed( X , 0 , 20, 100, D)
Вектор начальных условий
X := ⎜
n := 0 .. 99
⎤ ⎥ ⎥ ⎦
Система нелинейных дифференциальных уравнений Задание решения
1
Zn ,1 Zn ,2
0
1
0
20
40
60 n
80
100
40
Задание к работе: Решите на отрезке [ x0 , xN ] задачу Коши y′ = f ( x, y ) , y ( x0 ) = y0 методом Рунге-Кутты с постоянным шагом. Изобразите графики решений, вычисленных с шагами h, 2h и h/2. Значение xN > x0 выберите самостоятельно. Варианты индивидуальных заданий F ( x, y, y′) = 0
№ 1 2 3 4 5 6
Начальное условие y (0) = 0.5
(e x + 1)dy + e x dx = 0 y ln y + xy ′ = 0
y (1) = e y (0) = −tg 2
4 − x 2 y ′ + xy 2 + x = 0
y (1) = arctg (2 − e)
2 − ex dx = 0 cos 2 x (1 + e x ) yy ′ = e x y ′ sin x = y ln y
3e x tgydx +
7
xdx ydy − =0 1+ y 1+ x
8
(1 + y 2 )dx = xdy
9
y ′ sin x = sin y
10
3( x 2 y + y )dy + 2 + y 2 dx = 0
y (0) = 1 ⎛π ⎞ y⎜ ⎟ = e ⎝2⎠ y (1) = 1 ⎛π ⎞ y⎜ ⎟ = 1 ⎝4⎠ ⎛π ⎞ π y⎜ ⎟ = ⎝2⎠ 2 y (0) = 1
Решить задачу Коши y1′ = f1 ( x, y1 , y 2 ) , y 2′ = f 2 ( x, y1 , y 2 ) , y1 (a) = y1,0 , y2 (a) = y2,0 на отрезке [a, b] методом Рунге-Кутта с постоянным шагом h=0.1. Изобразите графики решений, вычисленных с шагами h, 2h и h/2. Варианты индивидуальных заданий
№ 1 2 3 4 5 6 7 8
f1(x,y1,y2) x+y1 siny2 xcos(y1+y2) siny1cos2y2 cos(y1y2) y2lnx 2y1/y2 y1+y2
f2(x,y1,y2) (y1-y2)2 cosy1 sin(y1-y2) cosy1cosy2 sin(y1+y2) y1+y2 2y1-y2 1/(1+ y1+y2)
y1(a) 0 0.5 -0.6 0 0 -2 1 0
y2(a) 1 -0.5 2 0 0 -1 1 0
a -1 -1 2 -1 0 1 1 0
b 1 3 5 3 2 4 3 4
41 9 10
arctg(xy2) sin(x2+2y2)
siny1 cos(xy1)
0 0
0 0
-2 0
1 4
7.9 Лабораторная работа № 9 “Построение поверхностей, заданных в явном виде в декартовой системе координат”
Построение поверхностей в декартовой системе координат рассмотрим на примере поверхности параболоида вращения. Построение параболоида вращения производится в декартовой системе координат. F ( X, Y) := X2 + Y2 Функция двух переменных, определяющая параболоид вращения. Необходимо определить интервалы, в пределах которых изменяются значения X и Y: a := −5 b := 5 Ввод количества дискретных точек по осям X и Y: M := 25 N := 25 i := 0 .. M j := 0 .. N Xi , j := a + ( b − a) ⋅
i M
Yi , j := a + ( b − a) ⋅
j N
(
Zi , j := F Xi , j , Yi , j
)
( X , Y , Z)
Варианты заданий на построение графиков функций от двух переменных в декартовой системе координат. 1. 2. 3. 4. 5.
Z Z Z Z Z
2
2
= e −(X + Y ) = X 2 −Y 2 = X 2 + Y 2 − XY = ( X + Y )2 = ( X − Y )2
6. Z =
X 2 +Y2 X 2 +Y 2
7. Z = e 2 2 15. Z = tg ( X π−Y )
8. Z 9. Z 10. Z 11. Z 12. Z 13. Z
= 3 X 2 +Y 2 = XY = e XY = e − XY = e − ( X +Y ) = cos( XY 2π )
14. Z = sin( X
2
+Y 2
π
)
42
7.10 Лабораторная работа № 10 «Построение поверхностей в сферической и цилиндрической системах координат» Связь между декартовой системой координат и сферической определяется формулами: Y = R cos(α ) sin(φ ) X = R cos(α ) cos(φ ) Z = R sin(α ) . Z R Y X
Если существует функция F ( X , Y , Z ) = 0 , связывающая координаты X,Y,Z, то возможно определить взаимосвязь между переменными α , φ , R , что и сделано в следующем примере. Угол α изменяется в пределах от 0 до π , угол φ от 0 до 2π . M := 25 N := 50 i := 0 .. M j := 0 .. N α i :=
π⋅ i M
φj :=
Xi , j := tan ( α i) ⋅ cos ( φj)
2⋅ π⋅ j N Yi , j := tan ( α i) ⋅ sin ( φj)
Zi , j := tan ( α i)
2
( X , Y , Z)
Связь между декартовой и цилиндрической системами координат выражается формулами:
43 Y = r sin(φ ) X = rсos(φ ) Z =Z. Z h R
r
Y
M := 25 N := 50 i := 0 .. M
j := 0 .. N
X
Xi , j := Ri , j ⋅ cos ( φi , j)
r := 5 φi , j :=
Yi , j := Ri , j ⋅ sin ( φi , j)
2⋅ π⋅ j N
Zi , j := r ⋅
i M
Ri , j := Zi , j
( X , Y , Z)
Варианты заданий на построение поверхностей в сферической и цилиндрической системах координат: 1. Построить сферу радиуса R=4. 2. Построить в сферической системе координат поверхность, модуль радиусвектора точек которых изменяется по закону R = cos(α ) . 3. Построить в сферической системе координат конус с углом раствора 45 градусов. 4. Построить в цилиндрической системе координат поверхность цилиндра радиуса R=4 и высотой h=10. 5. Построить в цилиндрической системе координат поверхность конуса с углом раствора 45 градусов и высотой h=10. 6. Построить поверхность, которая получается в результате вращения отрезка вокруг оси OZ. Координаты концов отрезка: A(0,0,0) и B(1,0,2). 7. Построить поверхность, которая получается в результате вращения отрезка вокруг оси OX. Координаты концов отрезка: A(0,0,0) и B(1,0,2).
44 8. Построить поверхность, которая получается в результате вращения отрезка вокруг оси OZ. Координаты концов отрезка: A(0,0,0) и B(1,0,2). 2 2 9. Построить в цилиндрической системе координат поверхность Z ( X , Y ) = e − ( X +Y ) . 10. Построить в сферической системе координат эллипсоид с полуосями a=1, b= 2, c=3.
45 ПРИЛОЖЕНИЯ Приложение 1 Горячие клавиши Mathcad Операторы
Приведённые нижи комбинации клавиш, используются для вставления операторов. За единственным исключением (клавишей кавычки [ " ]) результат нажатия этих клавиш одинаков в математической области и в пустом месте. Клавиша (и) ! " " # $ & ' , , ; ? [ \ ^ | Ctrl+1 Ctrl+3 Ctrl+4 Ctrl+9 Ctrl+0 Ctrl+8 Ctrl+Ctrl+= Ctrl+6 Ctrl+Shift+4 Ctrl+Shift+3 Ctrl+Shift+?
Назначение
Факториал. В математической области создаёт оператор комплексного сопряжения. В пустом месте создаёт текстовую область. Произведение по дискретному аргументу. Суммирование по дискретному аргументу. Интеграл. Пара скобок. Разделяет выражения, откладываемые по одной оси графика. Предшествует второму числу при задании диапазона. Предшествует последнему числу при задании диапазона. Производная первого порядка. Нижний индекс. Квадратный корень Показатель степени. Абсолютное значение. Транспонирование. Не равно. Сумма элементов вектора. Меньше либо равно. Больше либо равно. Векторное произведение. Оператор векторизации. Равно. Верхний индекс. Суммирование по индексу. Произведение по индексу. Производная n-ного порядка.
46 Клавиша (и) Ctrl+\ Ctrl+Enter
Назначение Корень n-ной степени. Сложение с переносом.
Окна и рабочие документы
Следующие комбинации клавиш используются для манипуляции окнами и рабочими документами как целым. Клавиша (и) Alt+Esc Alt+Tab Ctrl+F4 Ctrl+F6 Alt+F4 Ctrl+R F1 F5 F6 F7 F9 Shift+F1
Назначение Переключиться на другую задачу Windows. Переключиться на перечень задач Windows Закрыть рабочий документ. Активизировать следующее окно. Выйти из Mathcad. Обновить экран. Открыть окно Справки. Открыть рабочий документ. Сохранить рабочий документ. Создать рабочий документ. Пересчитать результаты на экране. Включить контекстною Справку.
Редактирование
Следующие комбинации клавиш используются для редактирования документов Mathcad. Клавиша (и) Ctrl+F9 Ctrl+F10 Ctrl+F5 Shift+F5 Alt+BkSp Ctrl+C Ctrl+V Ctrl+X Ctrl+U Ins
Назначение Вставляет чистую строку. Удаляет чистую строку. Вызывает диалоговое окно для поиска фрагмента строки. Вызывает диалоговое окно для поиска и замены фрагмента строки Отменяет последнее действие по редактированию документа. Копирует выделение в буфер обмена. Вставляет в документ содержимое буфера обмена. Вырезает выделение и помещает его в буфер обмена. Вызывает диалоговое окно для вставки встроенных единиц измерения. Переключает между режимами редактирования
47 вставка и забивка. Приложение 2
Встроенные функции
В настоящие время Mathcad использует более 400 функций. В приложении приводятся наиболее часто используемые функции для научных и инженерных расчетов. Назначение таких элементарных функций, как sin(z), ln(x) и т.п. понятно без пояснений. Принятые обозначения:
♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦
х и у – вещественные числа; z – вещественное либо комплексное число; m, n, I, j и k – целые числа; v, u и все имена, начинающиеся с v, – векторы; А и В – матрицы либо векторы; М и N – квадратные матрицы; F – вектор-функция; file – либо имя файла, либо файловая переменная присоединенная к имени файла.
Все углы измеряются в радианах. Имена приведенных функций нечувствительны к шрифту, но чувствительны к регистру – их следует печатать в точности, как они приведены. angle(x, у) – угол (в радианах) между положительным направлением оси х и радиусом-вектором точки (х, у). APPEND(file) – добавление значения одиночной переменной к существующему файлу file.dat на диске. APPENDPRN(file) – добавление матрицы к существующему файлу file.prn на диске. augment(A, В) – соединение двух матриц, обе матрицы должны иметь одинаковый размер. bulstoer(v, х1, х2, асе, n, F, k, s) – матрица решения системы обыкновенных дифференциальных уравнений, правая часть которых записана в символьном векторе F с заданными начальными условиями в векторе v на интервале от х1 до х2, используется метод Булирш-Штера с переменным шагом; параметры k и s задают шаг. Bulstoer(v, х1, х2, n, F) – матрица решения системы обыкновенных дифференциальных уравнений, правая часть которых записана в символьном векторе F с заданными начальными условиями в векторе v на интервале от х1 до х2, используется метод Булирш-Штера. bvalfit(vl, v2, х1, х2, xi, F, LI, L2, S) – устанавливает начальные условия для краевой задачи, заданной в векторах F, vl и v2 на интервале от х1 до х2, где решение известно в некоторой промежуточной точке xi. сеil(х) – наименьшее целое, не превышающее х.
48 cfft(A) – быстрое преобразование Фурье массива комплексных чисел А. Возвращает массив такого же размера, как и его аргумент. CFFT(A) – то же, что и выше, но использует другие норму и знак. cholesky(M) – треугольное разложение матрицы М методом ХолецкоT го. М = L ( L , где М – симметричная матрица, L – треугольная матрица. Возвращает L. cnorm(x) – интеграл от минус бесконечности до х от функции стандартного нормального распределения. cols(A) – число столбцов в матрице А. complex – ключевое слово режима автоматических символьных преобразований. condl(M) – число обусловленности матрицы, вычисленное в норме L1. cond2(M) – число обусловленности матрицы, вычисленное в норме L2. conde(M) – число обусловленности матрицы, вычисленное в норме евклидового пространства. condi(M) – число обусловленности матрицы, основанное на равномерной норме. corr(vx, vy) – коэффициент корреляции двух векторов – vx и vy csort(A, n) – сортировка матрицы А по столбцу п (перестановка строк по возрастанию значений элементов в столбце n). cspline(vx, vy) – коэффициенты кубического сплайна, построенного по векторам va и vy. cvar(X, Y) – ковариация Х и Y. diag(v) – диагональная матрица, элементы главной диагонали которой вектор v. dbeta(x, si, s2) – плотность вероятности для β-распределения. dbinom(k, n, p) – биномиальное распределение. Возвращает значение вероятности P(x=k), где k – случайная величина. dcauchy(x, I, s) – плотность вероятности для распределения Коши. dchisq(x, d) – плотность вероятности для Хи-квадрат- распределения. dexp(x, r) – плотность вероятности для экспоненциального распределения dF(x, dl, d2) – плотность вероятности для распределения Фишера. dgamma(x, s) – плотность вероятности для гамма-распределения. dgeom(k, p) – то же, что и выше, но для геометрического распределения. dlnorm(x, μ, δ) – плотность вероятности для лог-нормального распределения. dlogis(x, I, s) – плотность вероятности для логистического распределения. dnbinom(k, n, p) – то же, что и выше, но для отрицательного биномиального распределения.
49 dnorm(x, μ, δ) – плотность вероятности для нормального распределе-
ние. dpois(k, X) – то же, что и выше, но для распределения Пуассона. dt(x, d) – плотность вероятности для распределения Стьюдента. dunif(x, a, b) – плотность вероятности для равномерного распределе-
ния dweibull(x, s) – плотность вероятности для распределения Вейбулла. eigenvals(M) – собственные значения матрицы. eigenvec(M, z) – нормированный собственный вектор матрицы М, соответствующий ее собственному значению z. eigenvecs(M) – матрица, столбцами которой являются собственные векторы матрицы М. Порядок расположения собственных векторов соответствует порядку собственных значений, возвращаемых функцией eigen-vals. erf(x) – функция ошибок. Find(varl, var2, ...) – значения varl, var2 ,... , доставляющие решение системе уравнений. Число возвращаемых значений равно числу аргументов. fft(v) – быстрое преобразование Фурье вещественных чисел, v – вещеn ственный вектор с 2 элементами, где n – целое число. Возвращает вектор n-l размера 2 +l. FFT(v) – то же, что и fft(v), но использует другие норму и знак. floог(х) – наибольшее целое число, меньшее или равное х. х должно быть действительным. genfit(vx, vy, vg, F) – вектор, содержащий параметры, которые делают функцию F от х и п параметров U0, U1;, ... , un-i, наилучшим образом аппроксимированную к данным в vx и vy. F является функцией, которая возвращает вектор из n+1 элемента, содержащий f и его частные производные по его n параметрам, vx и vy должны быть того же самого размера, vg – вектор n элементов для приблизительных значений для n параметров. geninv(A) – левая обратная к матрице A, L*A=E, где Е – единичная матрица размером n (n, L – прямоугольная матрица размером n*m, A – прямоугольная матрица размером m* n). genvals(M, N) – вектор обобщенных собственных значений vi матрицы M: M(x=vi* N*х). М и N – матрицы с действительными элементами. genvecs(M, N) – матрица, содержащая нормированные собственные векторы, отвечающие собственным значениям в v, который в векторе возвращен в genvals. n-й столбец этой матрицы является собственным вектором х, удовлетворяющим собственному значению уравнения М*x=v*N * х. Матрицы М и N содержат действительные значения. Given – ключевое слово, работающее в паре с функциями Find и Minerr. hist(intervals, data) – гистограмма. Вектор intervals задает границы интервалов в порядке возрастания, data – массив данных. Возвращает вектор
50 той же размерности, что и вектор intervals, и содержит число точек из data, попавших в соответствующий интервал. I0(x) – модифицированная функция Бесселя первого рода нулевого порядка. I1(х) – модифицированная функция Бесселя первого рода первого порядка. icfft(A) – обратное преобразование Фурье, соответствующее cfft Возвращение массива такого же размера, как и его аргумент. ICFFT(A) – обратное преобразование, соответствующее CFFT. Возвращение массива такого же размера, как и его аргумент. linterp(vx, vy, x) – значение в точке х линейною интерполяционного многочлена векторов vx и vy Ioess(vx, vy, span) – вектор, используемый функцией interp для определения набора многочленов второй степени, которые наилучшим образом аппроксимируют часть данных из векторов vx и vy. Аргумент span указывает размер части аппроксимируемых данных. loess(Mxy, vz, span) – вектор, используемый функцией interp для определения набора многочленов второй степени, которые наилучшим образом аппроксимируют зависимость Z(x, у) по множеству Мху. Значение Z в массиве vz. span указывает размер области, на которой выполняется локальная аппроксимация. lsolve(M, v) – решение системы линейных алгебраических уравнений вида М*x=v. lspline(vx, vy) – коэффициенты линейного сплайна, построенного по векторам vx и vy. lu(M) – треугольное разложение матрицы М: Р*M=L*U. L и U – нижняя и верхняя треугольные матрицы соответственно. Все четыре матрицы квадратные, одного порядка. matrix(m, n, f) – матрица, в которой (i, j)-n элемент содержит f(i, j), где i=0, I, ... m и j=0, 1, ... n. max(A) – наибольший элемент в матрице А. mean(v) – среднее значение вектора v. median(X) – медиана. medsmooth(vy, n) – m-мерный вектор, сглаживающий vy методом скользящей медианы, vy – т-мерныи вектор вещественных чисел, n – ширина окна, по которому происходит сглаживание. min(A) – наименьший элемент в матрице А. Muierr(xl, x2, ...) – вектор значений для х1, х2, .... которые приводят к минимальной ошибке в системе уравнений. predict(v, m, n) – прогноз. Вектор, содержащий равноотстоящие предсказанные значения n переменных, вычисленных по m заданным в массиве v данным. pspline(vx, vy) – коэффициенты параболического сплайна, построенного по векторам vx и vy.
51 pspline(Mxy, Mz) – вектор вторых производных для данных Мху и Mz. Этот вектор становится первым аргументом в функции interp. Результирующая поверхность является параболической в границах области, ограниченной хордой Мху. pt(x, d) – значение в точке х функции распределения Стьюдента. d – степень свободы. х>0 и d>0. punif(x, a, b) – значение в точке х функции равномерного распределения, b и а – границы интервала. а0. qbinom(p, n, q) – количество успешных определений при n-ном количестве испытаний при решении уравнения Бернулли при условии, что вероятность этого количества успешных определений есть р. q – вероятность успеха при однократном испытании. 0[q[l и 0[р[1. qcauchy(p, I, q) – квантили обратного распределения Коши со шкалой параметров 1 и s. s>0 и 0<р<1. qchisq(p, d) – квантили обратного Хи-квадрат-распределения, при котором d>0, является характеристикой степеней свободы. 0<р<1. qexp(p, r) – квантили обратного экспоненциального распределения, при котором г>0, определяет частоту. 0<р<1. qF(p, dl, d2) – квантили обратного распределения Фишера, в котором dl и d2 – степени свободы. 0[р<1. qgamma(p, s) – квантили обратного гамма-распределения, при котором S>0 – параметры формы. 0[р<1. Re(z) – действительная часть комплексного числа. READ(file) – присваивание простой переменной значения из файла с именем file.prn. READPRN(file) – присваивание матрице значений из файла с именем file.prn. READRGB(file) – массив, состоящий из трех под-массивов, которые представляют красную, зеленую и синюю компоненты цветного изображения, находящегося в файле file. regress(Mxy, vz, n) – вектор, запрашиваемый функцией interp для вычисления многочлена n-й степени, который наилучшим образом приближает множества Мху и vz. Мху – матрица m*2, содержащая координаты х-у. vz – т-мерный вектор, содержащий z координат, соответствующих m точкам, указанным в Мху. ге1ах(М1, М2, МЗ, М4, М5, A, U, х) - квадратная матрица решения уравнения Пуассона. reverse(v) – перевернутый вектор v. rexp(m, r) – вектор m случайных чисел, имеющих экспоненциальное распределение. r>0 является частотой.
52 rF(m, dl, d2) – вектор m случайных чисел, имеющих распределение Фишера. dl, d2>0 определяет степени свободы. rgamnia(m, s) – вектор m случайных чисел имеющих гаммараспределение. s>0 – параметр формы. rgeom(m, p) – вектор m случайных чисел. имеющих геометрическое распределение. 0<р[1. rkadapt(v, xl, х2, acc, n, F, k, s) – матрица, содержащая таблицу значений решения задачи Коши на интервале от xl до х2 для системы обыкновенных дифференциальных уравнений, вычисленных методом Рунге-Кутта с переменным шагом. Правые части системы записаны в F, n – число шагов, k и s – размеры шага. Rkadapt(v, xl, х2, n, F) – матрица решений методом Рунге-Кутта (с переменным шагом) системы обыкновенных дифференциальных уравнений, правые части которых записаны в символьном векторе F, на интервале от xl до х2; n – число шагов. sbval(v, xl, x2, F, L, S) – установка начальных условий для краевой задачи, определенной в символьном векторе F, вектор v – начальные условия на интервале xl, x2. simplify – ключевое слово режима автоматических символьных преобразований. slope(vx, vy) – коэффициент b линейной регрессии у = а + b*х векторов vx и vy. sort(v) – сортировка элементов вектора v по убыванию. stack(A, В) – множество, сформированное путем расположения А над В. Множества А и В должны иметь одинаковое число столбцов. sfdev(v) – стандартное отклонение элементов вектора v. stiffb(v, xl, x2, асе, n, F, J, k, s) – матрица решений stiffдифференциального уравнения, записанного в F и функции Якобиана J. v – вектор начальных значений на интервале [xl, x2]; используется метод Bulirsch-Stoer с переменным шагом. Stiflb(v, xl, x2, n, F, J) – матрица решений stiff-дифференциального уравнения, записанного в F и функции Якобиана J. v – вектор начальных значений на интервале [xl, x2]; используется метод Bulirsch-Stoer. stiffr(v, xl, x2, асе, n, F, J, k, s) – матрица решений stiffдифференциального уравнения, записанного в F и функции Якобиана J. v – вектор начальных значений на интервале [xl, x2]; используется метод Розен брока с переменным шагом. Stiflr(v, xl, x2, n, F, J) – матрица решений stiff-дифференциального уравнения, записанного в F и функции Якобиана J. v – вектор начальных значений на интервале [xl, x2]; используется метод Розенброка. Yn(m, x) – m-й порядок функции Бесселя второго рода; х – действительное и положительное число; m – от 0 до 100 δ(х, у) – символ Кронекера (1, если х=у, и 0, ес-ли х ?ь у; х и у – целочисленные величины).
53 Г(г) – гамма-функция. Ф(х) – 1, если х>0, и 0 в противном случае (функция Хевисайда). Приложение 3 Сообщения об ошибках
Это приложение является алфавитным списком диагностических сообщений об ошибках в математических выражениях. Они появляются при попытке ввода, обработки или вычисления выражения, в котором Mathcad обнаруживает ошибку. Если Mathcad находит ошибку при попытке вычисления функции, определенной пользователем, он помечает сообщением об ошибке имя функции, а не ее определение. В этом случае проверьте определение функции, чтобы понять, что вызвало ошибку. Сообщение Англ. яз. Рус. яз.
Array size mismatch
Cannot be denned Cannot take subscript Cannot take subscript Definition stack overHow Did not find solution Domain error
Несовпадение размеров массивов Не может быть определено Не содержит верхних индексов Не содержит нижних индексов Переполнение стека определении
Причина
Попытка произвести операцию с векторами или матрицами, размеры которых не подходят для этой операции. Многие операции требуют, чтобы их векторные аргументы были одного размера, например произведение или функции linterp и согг. Слева от символа определения (:=) помещено неопределяемое выражение. Верхний индекс использован не для матрицы, а для чего-то другого. Нижний индекс использован не для вектора или матрицы, а для чего-то другого. Использовано слишком много вложенных функций.
Mathcad не нашел решения системы уравнении. Чтобы блок решения уравнений выдал в Решение не качестве решения приближающий результат, найден • используйте функцию Minerr- вместо функции Find. Ошибка обПопытка вычислить значение функции, ласти опре- имеющей аргумент, выходящий за область оп-
54 Сообщение Англ. яз. Рус. яз. деления
Duplicate
Дублирование
Слишком Equation too большое large выражение Error in con- Ошибка в stant константе
Error in list
Ошибка в списке
Error in solve block
Ошибка в блоке
File error
Ошибка файла
File not found
Файл не найден
Illegal array operation
Неверная операция с массивом
Illegal context
Неверный контекст
Illegal factor
Неверный множитель
Illegal func-
Неверное
Причина
ределения. Попытка определить одну переменную дважды в одном определении. Это сообщение появляется, когда создается вектор по левую сторону определения и используете одно имя в этом векторе дважды. Для вычисления в Mathcad введено слишком большое выражение. Разделите выражение на два или более подвыражений. Mathcad интерпретирует указанное выражение как некорректную константу. Mathcad воспринимает все начинающееся с цифры как константу. Указанная функция содержит некорректный список аргументов. Правильное определение функции начинается таким образом: f(х, у, z ...). Список аргументов в скобках может состоять из одного или нескольких имен, разделенных запятой. Сообщение при вычислении пользовательской функции, выражаемой через блок решения уравнений, содержащий ошибку. Система столкнулась с ошибкой при чтении файла с помощью функции READ или READPRN. Система не нашла файла данных, указанного в качестве параметра для функции READ или READPRN, либо для импорта в графическую область. Попытка применить к вектору или матрице функцию или оператор, которые требуют скалярные аргументы. Например, это сообщение можно видеть при попытке применения функции синус к квадратному корню из матрицы. Оператор или функция использованы в контексте, запрещаемом Mathcad. В поле ввода единиц в конце выражения, возвращающего численный результат, введено неверное выражение. Допустимы вещественные ненулевые скалярные значения. Использовано выражение, которое Mathcad
55 Сообщение Англ. яз. Рус. яз. tion name имя функции
Illegal ORIGIN
Неверное употребление ORIGIN
НеправильIllegal range ный диапазон Illegal tolerance
Некорректная точность аппроксимации
Incompatible units
Несовместимые единицы
Index out of bounds
Индекс вне границ
Invalid order
Неверный порядок
Длинный List too long входной список
Причина
интерпретирует как функцию, но имя функции неверно. Это сообщение появится, например, в случае использования числа как имени функции: 6(х). Чаще всего оно возникает, если пропущен оператор типа *, что заставляет Mathcad интерпретировать скобки в выражении как признак функции, а не как группирование операций. ORIGIN определен через нецелое значение или значение с величиной, большей 16 000 000. Это сообщение отмечает первое использование индекса после неверного употребления ORIGIN. Дискретный аргумент определен неправильно. Сообщение отмечает выражение, использующее TOL интеграл, или вхождения Root, Find или Minerr, для которых TOL ™ 1 или TOL ™ 0. Для устранения этой ошибки нужно где-либо выше отмеченного выражения установить значение TOL между нулем и единицей. Отмечает выражение, в котором складываются, вычитаются или выполняются иные операции с выражениями, имеющими различную размерность. Сообщение помечает индекс, ссылающийся на несуществующее значение массива. Такое сообщение можно видеть при использовании отрицательного верхнего или нижнего индекса (или индекса, меньшего, чем ORIGIN, если ORIGIN > 0) либо при использовании верхнего или нижнего индекса для ссылки на элемент массива с номером, большим, чем возможно согласно определению в документе. Отмечает попытку вычислить производную с указанным порядком, который не является целым числом от 0 до 5 включительно. Введено слишком много элементов в списке, разделенном запятыми. Это может произойти при попытке вывести на график больше выражений, чем допускается Mathcad, или при по-
56 Сообщение Англ. яз. Рус. яз.
Misplaced comma Missing operand
Missing operator Must be 3vector Must be array Must be dimensionless
Must be increasing
Must be integer Must be nonzero Must be positive
Причина
пытке создать таблицу с более чем пятьюдесятью элементами. Неуместная Запятая использована там, где ее не должно запятая быть. В выражении пропущен один из операндов. Например, это сообщение можно видеть при Пропущенвводе знака плюс без ввода слагаемых и посленый опедующем нажатии знака равенства. Mathcad поранд казывает поле ввода (маленький прямоугольник) на месте пропущенного операнда, ПропущенВ выражении или уравнении пропущен один ный знак из знаков операции. операции Должно Попытка найти векторное произведение от быть трех- операндов, не являющихся трехмерными вектомерным рами. Векторное произведение определено вектором только для векторов с тремя элементами. Должно Попытка выполнить операцию, которую быть масможно выполнять только на массиве, со скалясивом ром. Указанное выражение имеет размерность, Должно хотя ситуация требует, чтобы оно было безразбыть безмерным. Единицы измерения нельзя использоразмерным вать для аргументов некоторых функций (например, cos и In) или в показателе степени. Вектор, элементы которого не расположены в порядке строгого возрастания, использован в Должно качестве аргумента одной из функций (spline, быть возpspline, cspline, interp, linterp и hist). Первый аррастающим гумент этих функций должен быть вектором со строго возрастающими элементами. Использовано нецелое выражение там, где Должно требуется целое, например как аргумент функбыть целым ции identity или как индекс, нижний или верхний. Должно Попытка вычислить встроенную функцию от быть ненунуля, хотя для нуля она не определена. левым Должно Сообщение отмечает чертеж, в котором одна быть поло- из границ по оси, использующей логарифмичежительным ский масштаб, равна нулю или отрицательна.
57 Сообщение Англ. яз. Рус. яз.
Причина Mathcad может выводить на график вдоль логарифмической оси только положительные значения.
Должен быть диапазон Должно Must be real быть вещественным Должно Must be scaбыть скаляlar ром Должно Must be vecбыть вектоtor ром Нет соотNo matching ветствуюGiven щего Given НескалярNo scalar ная величиvalue на Must be range
Использовано, что-либо, не являющееся дискретным аргументом. Мнимое или комплекснозначное выражение использовано там, где Mathcad требует вещественнозначное выражение. Векторное или матричное выражение использовано там, где требуется скаляр, например в качестве аргумента функции identity. Сообщение отмечает скаляр или матрицу в операции, требующей векторный аргумент. Сообщение указывает на функции Find или Minerr без соответствующего им слова Given.
Вектор или выражение, содержащее дискретный аргумент, используются там, где требуется скалярная величина. Число или другая комбинация символов исНе является Not a name пользованы там, где Mathcad требует имя, наименем пример как второй аргумент функции root. Попытка ввести более чем один массив в поле ввода для карты линий уровня. Mathcad в Допустим Only one arэтом случае допускает не более чем один мастолько один сив, поскольку карта линий уровня может предray allowed массив ставлять не более чем одну функцию одновременно. Попытка вычислить выражение, которое ПереполнеOverflow превосходит наибольшее число, которое может ние быть представлено Mathcad (примерно 10307). Сообщение отмечает попытку вывести Потеряны Significance функцию от величины, которая лежит за предезначащие lost лами диапазона, где значение функции может цифры быть вычислено точно. Вычисление выражения привело к переполStack over- Переполне- нению внутреннего стека Mathcad. Это может flov ние стека быть результатом слишком сложного выражения или рекурсивного определения функции.
58 Сообщение Англ. яз. Рус. яз. Слишком Subscript большой too large нижний индекс
Too few arguments
Слишком мало аргументов
Too few constraints
Слишком мало ограничений
Too few elements
Слишком мало элементов
Too few subscripts
Мало нижних индексов
Причина
Попытка использовать нижний индекс, превышающий пределы, допускаемые Mathcad. Выражение содержит функцию со слишком малым количеством аргументов. Для встроенных функций число аргументов фиксировано. Для функций пользователя число параметров зависит от определения, сделанного в рабочем документе. Сообщение указывает на Find или Given с количеством ограничений, меньшим числа переменных. Добавьте несущественные ограничения или уменьшите число переменных, относительно которых ищется решение. Сообщение указывает на преобразование Фурье, кубический сплайн или функцию линейной интерполяции, применяемую для вектора со слишком малым количеством компонентов. Преобразование Фурье и обратное к нему требуют как минимум четыре элемента вектора. Для матрицы использован один нижний индекс. Указание на элементы матрицы возможно при помощи двух нижних индексов, разделяемых запятой.
Слишком Too large to велико, Попытка вывести вектор или матрицу размеdisplay чтобы ото- ра больше, чем допускается Mathcad. бразить Выражение содержит функцию со слишком малым количеством аргументов. Для встроенСлишком Too many ных функций число аргументов фиксировано. много арarguments Для функций пользователя число параметров гументов зависит от определения, сделанного в рабочем документе. Слишком Too many В блоке решения уравнений используются много ограconstraints более пятидесяти ограничений. ничений Попытка вывести на график точек больше, Too many Слишком чем Mathcad может обработать для одного граpoints много точек фика.
59 Сообщение Англ. яз. Рус. яз. Слишком Too many много инsubscripts дексов
Undefindet
Не определено
Unmatched parenthesis
Дисбаланс скобок
Wrong size vector
Неверный размер вектора
Причина
Использовано два или более нижних индекса для вектора либо три или более индекса для матрицы. Показанное в негативном изображении имя функции или переменной не определено. Чтобы его определить, введите имя переменной с последующим двоеточием (:) и выражение или число, ее определяющее. Это сообщение часто означает, что для определения переменной использован знак равенства (=) вместо двоеточия. Попытка вычислить выражение, содержащее левую скобку без соответствующей ей правой. Исправьте выражение, удалив левую скобку или поставив в нужном месте правую. Сообщение указывает на функцию преобразования Фурье, аргумент которой имеет число элементов, отличное от допустимого, fft требует в качестве аргумента вектор с количеством элеn ментов 2 , где п - целое число, большее 1. ifft n требует вектор с 1+2 элементами, где n - целое число, большее 0. Если ORIGIN равен нулю, Mathcad автоматически включает элемент с нулевым индексом как компоненту векторааргумента.
Список литературы 1. Руководство пользователя Mathcad. 2. Справочная система Mathcad. 3. Дьяконов В.П. Справочник по Mathcad 7 Pro. М.: «СК Прогресс», 1998 4. Очков В.Ф. Mathcad PLUS 6.0 для студентов и инженеров. М.: КомпьютерПресс, 1996 5. Mathcad PLUS 6.0. Финансовые, инженерные и научные расчеты в среде Windows 95. Перевод с англ. — М. Информационно-издательский дом «Филинъ», 1996.