Система математических расчётов Mathcad

Анализ функции одной переменной. Дифференциальное уравнение первого порядка как уравнение, которое не содержит производных выше первого порядка от неизвестной функции. Способы построения декартова графика. Основные особенности программы Mathcad.

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 19.10.2012
Размер файла 4,6 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Система математических расчётов Mathcad

программа mathcad график

Рис.23. Различные начальные приближения приводят к различным решениям. Получено решение, отличное от решения, приведенного на рис. 7

Рис. 24. Добавление ограничений позволяет найти другое решение

Mathcad возвращает в блоке решения уравнений только одно решение. Однако система уравнений может иметь несколько различных решений. Если одно из решений найдено, то для поиска других решений можно использовать различные начальные приближения либо дополнительные ограничения в виде неравенств, которым найденное решение не удовлетворяет. На рисунке 23 показано, как иное начальное приближение может приводить к другому решению задачи, приведенной на рис. 22. На рис. 24 показано, как добавить ограничения в виде неравенства для поиска другого решения.

Что делать, когда Mathcad не может найти решения

Если в результате решения уравнений на каком-либо шаге итераций не может быть найдено более приемлемое приближение к искомому решению но сравнению с предыдущим шагом, то поиск решения прекращается, а функция Find помечается сообщением об ошибке "решение не найдено". Если при поиске решения встречаются трудности, то полезно вывести те или иные графики, связанные с системой. Анализ графика может облепить поиск области, в которой может находиться искомое решение. Это поможет выбрать подходящее начальное приближение.

На рис. 25 приведена задача, для которой Mathcad не смог найти решение.

Рис.25. Пример задачи, решение которой не может быть найдено в блоке решения уравнений

Сообщение об ошибках "решение не найдено" при решении уравнений появляется, когда различие между текущим приближением и приближением, полученным на предыдущем шаге итераций, больше, чем значение встроенной переменной TOL, выполнено одно из следующих условий.

Достигнута точка, из которой не может быть получено более точное приближение к решению.

Достигнута точка, из которой невозможно выбрать подходящее направление спуска -- направление, вдоль которого ищется следующее приближение. В связи с этим продолжать итерации невозможно.

Достигнут предел точности вычислений. Дальнейшие вычисления не увеличивают точность найденного решения вследствие влияния ошибок округления. Это часто случается, еслиг установлено значение встроенной переменной TOL меньшее, чем 10"'5.

Причиной появления этого сообщения об ошибке может быть следующее:

Поставленная задача может не иметь решения

Для уравнения, которое не имеет вещественных решений, в качестве начального приближения взято вещественное число. Если решение задачи комплексное, то оно не будет найдено, если только в качестве начального приближения не взято также комплексное число. На Рисунке 26 приведен соответствующий пример.

В процессе поиска решения последовательность приближений попала в точку локального минимума невязки. Метод поиска решения, который используется в Mathcad, не позволяет в этом случае построить следующее приближение, которое бы уменьшало невязку. Для поиска искомого решения пробуйте использовать различные начальные приближения или добавьте ограничения на переменные в виде неравенств, чтобы обойти точку локального минимума.

В процессе поиска решения получена точка, которая не является точкой локального минимума, но из которой метод минимизации не может определить дальнейшее направление движения. Метод преодоления этой проблемы -- такой же, как для точки локального минимума: измените начальное приближение или добавьте ограничения в виде неравенств, чтобы миновать нежелательную точку остановки.

Возможно, поставленная задача не может быть решена с заданной точностью. Если значение встроенной переменной TOL слишком мало, то Mathcad может достигнуть точки, находящейся достаточно близко к решению задачи, но уравнения и ограничения при этом не будут выполнены с точностью, задаваемой переменной TOL. Попробуйте увеличить значение TOL где-нибудь выше блока решения уравнений.

Решение обыкновенного дифференциального уравнения

При решении дифференциального уравнения искомой величиной является функция. Для ОДУ неизвестная функция -- функция одной переменной. Дифференциальные уравнения в частных производных -- это дифференциальные уравнения, в которых неизвестной является функция двух или большего числа переменных. Mathcad имеет ряд встроенных функций, предназначенных для решения ОДУ. Каждая из этих функций предназначена для численного решения дифференциального уравнения. В результате решения получается матрица, содержащая значения функции, вычисленные на некотором множестве точек (на некоторой сетке значений). Для каждого алгоритма, который используется при решении дифференциальных уравнений, Mathcad имеет различные встроенные функции. Несмотря на различные методы поиска решения, каждая из этих функций требует, чтобы были заданы, по крайней мере, следующие величины, необходимые для поиска решения:

Начальные условия

Набор точек, в которых нужно найти решение

Само дифференциальное уравнение, записанное в некотором специальном виде, который будет детально описан в этой главе.

В этом разделе описано, как решить ОДУ, используя функцию rkfixed, Раздел начинается с примера того, как решить простейшее дифференциальное уравнение первого порядка. Затем будет показано, как можно решать дифференциальные уравнения более высокого порядка.

Дифференциальные уравнения первого порядка

Дифференциальное уравнение первого порядка -- это уравнение, которое не содержит производных выше первого порядка от неизвестной функции. На рис. 26 показан пример того, как решить относительно простое дифференциальное уравнение:

с начальными условиями: у(0) = 4

Функция rkfixed на рис. 26 использует для поиска решения метод Рунге-Кутты четвертого порядка. В результате решения получается матрица, имеющая два следующих столбца:

Первый столбец содержит точки, в которых ищется решение дифференциального уравнения. Второй столбец содержит значения найденного решения в соответствующих точках.

Рис. 26. Решение дифференциального уравнения первого порядка

Функция rkfixed имеет следующие аргументы: (у, xl, х2, npoints, D)

у = Вектор начальных условий размерности п, где п -- порядок дифференциального уравнения или число уравнений в системе (если решается система уравнений). Для дифференциального уравнения первого порядка, как, например, для уравнения, приведенного на рис. 1, вектор начальных значений вырождается, в одну точку уо = у(х1).

x1, х2 = Граничные точки интервала, на котором ищется решение дифференциальных уравнений. Начальные условия, заданные в векторе у, -- это значение решения в точке х1.

npoints число точек (не считая начальной точки), в которых ищется = приближенное решение. При помощи этого аргумента определяется число строк (1 + npoints) в матрице, возвращаемой функцией rkfixed.

D (х, у) Функция, возвращающая значение в виде вектора из п элементов, = содержащих первые производные неизвестных функций.

Наиболее трудная часть решения дифференциального уравнения состоит в определении функции D(x, у), которая содержит вектор первых производных от неизвестных функций.

В примере, приведенном на рис. 26, было достаточно просто разрешить уравнение относительно первой производной, и определить функцию D(x, у). Иногда, особенно в случае нелинейных дифференциальных уравнений, это может быть трудно. В таких случаях иногда удаётся разрешить уравнение относительно в символьном виде и подставить это решение в определение для функции D(х, у).

Используйте для этого команду Решить относительно переменной из меню Символика.

Рисунок 27. Более сложный пример, содержащий нелинейное дифференциальное уравнение

Дифференциальные уравнении второго порядка

Как только Вы научились решать дифференциальное уравнение первого порядка, можно приступать к решению дифференциальных уравнений более высокого порядка. Мы начнем с дифференциального уравнения второго порядка. Основные отличия от уравнения первого порядка состоят в следующем:

* Вектор начальных условий у теперь состоит из двух элементов: значений функции и её первой производной в начальной точке интервала xl,

* Функция D(r, у) является теперь вектором с двумя элементами:

* Матрица, полученная в результате решения, содержит теперь три столбца: первый столбец содержит значения t, в которых ищется решение; второй столбец содержит(t); и третий --y'\t). Пример, приведенный на рис. 28, показывает, как решить следующее дифференциальное уравнение второго порядка:

Рис.28.Решение дифференциального уравнения второго порядка

Уравнения более высокого порядка

Методика решения дифференциальных уравнений более высокого порядка является развитием методики, которая применялась для решения дифференциальных уравнений второго порядка. Основное различие состоит в следующем: вектор начальных значений у теперь состоит из п элементов, определяющих начальные условия для искомой функции и ее производных

функция D является теперь вектором, содержащим и элементов:

Матрица, получаемая в результате решения, содержит теперь п столбцов: первый -- для значений /, и оставшиеся столбцы -- для значений у (/), у' ((),у"(1),....у(п-\)

Вывод функций на график

Каждый график на чертеже зависит от дискретной переменной. Эта дискретная переменная должна появиться и в выражении для абсцисс, и в выражении для ординат. Mathcad отображает одну точку для каждого значения дискретной переменной.

Построение декартова графика

Самый простой график показывает значения функции на интервале. Первый график на рис. 29 ниже иллюстрирует этот тип графика. Для его создания сделайте следующее:

* Определите дискретную переменную х, которая принимает значения в желаемом диапазоне значений аргумента.

* Напечатайте выражение, график которого нужно получить, в среднем поле на оси ординат и напечатайте х в среднем поле на оси абсцисс.

* Нажмите [F9J, чтобы увидеть график.

Рис. 29. Построение графика выражения, зависящего от дискретной переменной

Можно также определить функцию f(х) и поместить её в среднее пустое поле оси ординат. Это особенно полезно для функций, представляемых громоздким выражением. Второй чертёж на рис. 31 показывает тот же самый график, что и первый, за исключением обозначения функции.

Можно перемещать, вырезать, копировать и вставлять график, точно так же, как выражение.

Чтобы удалить график из рабочего документа:

* Нажмите и держите кнопку мыши где-нибудь вне рафика.

* При нажатой кнопке переместите курсор мыши, чтобы включить графическую область в пунктирный выделяющий прямоугольник.

* Нажмите [CtrlJX, чтобы удалить график. Можно также выбрать: Вырезать из меню Правка.

Чтобы переместить график, следуйте приведенным выше инструкциям для его удаления. Затем щёлкните мышью там, где нужно вставить график и выберите Вставить из меню Правка. Другие способы перемещения графиков совпадают со способами перемещения формул.

Рис. 30. Две функции, вычисленные независимо

Использование функций для графиков в полярных координатах

Творчески используя инструментальные средства, представленные в этой главе, можно построить разнообразные замкнутые кривые. Пример на рис. 30 иллюстрирует, как преобразовать полярные координаты в прямоугольные. Эта методика позволит создать графики в полярных координатах или даже пути в комплексной плоскости.

На рис. 30 приводится уравнение кардиоиды в полярных координатах, задаваемое в виде r(q). Уравнения для x(q) и y(q) -- обычное преобразование от полярных координат к прямоугольным.

Создание программ

Программа Mathcad есть частный случай выражения Mathcad. Подобно любому выражению, программа возвращает значение, если за ней следует знак равенства. Точно так же, как переменную или функцию можно определить через выражение, их можно определить и с помощью программы.

Главным различием между программой и выражением является способ задания вычислений. При использовании выражения алгоритм получения ответа должен быть описан одним оператором. В программе может быть использовано столько операторов, сколько нужно. Можно рассматривать программу как "'составное выражение" .

Следующий пример показывает, как написать простую программу для вычисления функции

Хотя этот пример настолько прост, что, может быть, и программа в этом случае не нужна, он позволяет показать, как нужно отделять друг от друга операторы, и как использовать локальный'оператор присваивания " ".

Введите левую часть определения функции и знак равенства ":=" и удостоверьтесь в том, что появилось поле ввода

f(x.w):=g

Теперь нужно открыть панель программирования, щёлкнув по кнопке программирования в панели управления. Затем нужно нажать на панели KiionKy"Add Line" или на клавиатуре клавишу ]. Появится вертикальный столбец с двумя полями ввода дл» занесения операторов, образующих программу. Поля ввода для дополнительных операторов открываются с помощью щелчка по кнопке "Add Line".

Перейдите в верхнее поле ввода, нажав клавишу [Tab]. Напечатайте z и нажмите кнопку " " на панели программирования или клавишу для того, чтобы ввести " ".

В поле ввода справа от " <-- " введите x/w.

Последнее поле ввода предназначено для задания возвращаемого функцией значения log(z).

Теперь эту функцию можно использовать точно так же, как любую другую функцию. На рис. 31 эта функция показана вместе с функцией, ей эквивалентной, но определенной на одной строке вместо двух. Отметим, что переменная z не определена вне программы. Определение z внутри программы является локальным и действительно только внутри этой программы. Программа может состоять из любого числа операторов. Чтобы прибавить оператор, нужно щёлкнуть по кнопке "Add Line" на панели программирования. Mathcad добавляет поле ввода внизу выделенного к этому моменту оператора. Чтобы исключить позицию ввода, ее нужно выделить, заключив в выделяющую рамку, и нажать клавишу [Del].

Рис. 31 .Определение одной и той же функции с помощью программы и через выражение

На рис. 32 приведен несколько более сложный пример с формулой для корня квадратного уравнения. Хотя вычисление этого корня может быть описано одной формулой, как это показано в верхней половине рисунка, однако удобнее вычислять его с помощью последовательности простых операторов, как показано в нижней половине рисунка. Это позволяет избежать редактирования громоздких формул.

Рис. 32. Определение более сложной функции в виде выражения и в виде программы

Таким образом, программа Mathcad есть выражение, состоящее из последовательности операторов, каждый из которых является, в свою очередь, выражением. Как и любое другое выражение, программа Mathcad возвращает значение. Этим значением является значение последнего выражения, выполненного программой.

Литература

1. Ивановский Р.И. Компьютерные технологии в науке и образовании:

Практика применения систем Mathcad Pro: Учебное пособие для вузов.- 431 с.

2. Кирьянов Д.В. Mathcad 12: Наиболее полное руководство.- 576 с.

3. Гурский Л.А. Вычисления в Mathcad.-814 с. М., 2002.

4. Гурский Д.А. Вычисления в Mathcad 12.- 544 с. С-П., 2006.

Размещено на Allbest.ru


Подобные документы

  • Работа с матрицами и векторами в программе MathCAD, Pascal, Excel. Поиск экстремума целевой функции двух переменных. Дифференциальное уравнения первого порядка с начальными условиями. Определение оптимального плана перевозок. Функция одной переменной.

    курсовая работа [21,5 M], добавлен 11.02.2013

  • Суть метода Рунге-Кутта и его свойства. Решение дифференциальных уравнений первого порядка. Вычислительный блок Given/Odesolve. Встроенные функции rkfixed, Rkadapt, Bulstoer. Решения линейных алгебраических уравнений в среде MathCad и Microsoft Excel.

    курсовая работа [1,1 M], добавлен 02.06.2014

  • Определение возможностей математического пакета и изучение методов вычисления выражений в Mathcad. Возможности построения графиков функций одной переменной. Просмотр и способы построения графика функции одного аргумента и участков двухмерных графиков.

    контрольная работа [384,8 K], добавлен 06.03.2011

  • Численный метод для решения однородного дифференциального уравнения первого порядка методом Эйлера. Решение систем дифференциальных уравнений методом Рунге–Кутта. Решение краевой задачи. Уравнения параболического типа, а также Лапласа и Пуассона.

    курсовая работа [163,5 K], добавлен 27.05.2013

  • Численное решение задачи Коши для обыкновенного дифференциального уравнения первого и второго порядка методом Эйлера и Рунге-Кутты и краевой задачи для ОДУ второго порядка с применением пакета MathCad, электронной таблицы Excel и программы Visual Basic.

    курсовая работа [476,2 K], добавлен 14.02.2016

  • Обыкновенное дифференциальное уравнение первого порядка. Задача Коши, суть метода Рунге-Кутта. Выбор среды разработки. Программная реализация метода Рунге-Кутта 4-го порядка. Определение порядка точности метода. Применение языка программирования C++.

    курсовая работа [163,4 K], добавлен 16.05.2016

  • Сравнение эффективности программ Excel и Mathcad при решении задач нахождения корней нелинейного уравнения и поиска экстремумов функции. Проведение табулирования функции на заданном интервале. Построение графика двухмерной поверхности в Excel и Mathcad.

    курсовая работа [1,4 M], добавлен 07.05.2013

  • Решение нелинейного уравнения вида f(x)=0 с помощью программы Excel. Построение графика данной функции и ее табулирование. Расчет матрицы по исходным данным. Проведение кусочно-линейной интерполяции таблично заданной функции с помощью программы Mathcad.

    контрольная работа [1,8 M], добавлен 29.07.2013

  • Использование программной системы Mathcad для выполнения, документирования и использования вычислений и инженерных расчетов. Вычисление пределов, суммы ряда. Работа с матрицами, построение трехмерного графика. Решение систем нелинейных уравнений.

    отчет по практике [1,5 M], добавлен 11.09.2014

  • Изучение структуры рабочего документа MathCad - программы, предназначенной для автоматизации математических расчетов. Работа с переменными, функциями и матрицами. Применение MathCad для построения графиков, решения уравнений и символьных вычислений.

    презентация [639,2 K], добавлен 07.03.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.