Решение уравнение с методом итерации на маткаде

решение уравнений маткад. Нелин_уравнения. Практическая работа 5 Численное решение нелинейных уравнений в Mathcad (метод простых итераций)

НазваниеПрактическая работа 5 Численное решение нелинейных уравнений в Mathcad (метод простых итераций)
Анкоррешение уравнений маткад
Дата24.02.2021
Размер318.5 Kb.
Формат файла
Имя файлаНелин_уравнения.doc
ТипПрактическая работа
#179215
Подборка по базе: Самостоятельная работа по теме 3.doc, домашняя работа.docx, Лабораторная работа №11. Практическое изучение операционной сист, Лабораторная работа.docx, Лабораторная работа №12. Практическое изучение системы Astra Lin, Контрольная работа Кудрявцева.docx, Самостоятельная работа 1-1 История.docx, Практическая работа.docx, Большеорловская ШК. 6 класс. Исследовательская работа..doc, Практическая работа №5.docx

Практическая работа №5

Цель работы:

  • научиться решать нелинейное уравнение в Mathcad, используя вычислительный алгоритм метода простых итераций;

Задание №1.Решить нелинейное уравнение методом итераций.

Метод простых итераций является одним из наиболее важных способов численного решения уравнений. Этот метод состоит в следующем. Пусть дано уравнение

где f(x)  непрерывная функция, требуется определить вещественные корни этого уравнения. Запишем уравнение (1) равносильным уравнением

x= (x) (2)

Выберем каким-либо способом, например графически, приближенное значение корня x0 и подставим его в правую часть уравнения (2). Получим некоторое число

x1= (x0) (3)

Подставим теперь в правую часть уравнения (3) вместо x0 число x1. Получим новое число x2= (x1). Повторяя этот процесс, получим последовательность чисел xn= (xn-1) (n=1,2,…). Если эта последовательность сходится, то найдется число , которое и будет корнем уравнения (2). Итерационный процесс xn= (xn-1) сходится, если . Критерием окончания итерационного процесса является выполнение неравенства

, где ε 3-x-1=0

  • x5-x-0.2=0
  • Практическая работа №6

    Цель работы:

    • научиться решать нелинейное уравнение в Mathcad, используя вычислительный алгоритм метода бисекции (половинного деления).

    Задание №1.Решить нелинейное уравнение методом бисекции.

    Метод бисекции (половинного деления) состоит в следующем.

    Пусть дано уравнение

    Деление продолжать до получения отрезка длиной ε ≤ 10-3.

    • Определите левую часть нелинейного уравнения как функцию f(x).
    • Построим график функции f(x), точка пересечения которого с осью и даст приближенное значение корня исходного уравнения. Определим по графику значения концов отрезка, содержащего корень уравнения: a=0, b=1.
    • Задайте значения концов отрезка [a,b] в векторной форме. Для этого, используя палитру векторов и матриц, получите, оператор вектора на два элемента и заполните его идентификаторами концов отрезка a0 и b0. При помощи клавиши пробела выведите курсор за знак оператора, нажмите клавишу :, введите еще один оператор вектора на два элемента и заполните его значениями концов отрезка: 0 и 1.
    • Задайте дискретную переменную i (от 0 до 10), определяющую количество этапов деления отрезка [a,b], за которое мы рассчитываем получить решение уравнения.
    • Определите формулы вычисления концов отрезка на каждом этапе деления его пополам. На отрезке [ai,bi] серединой будет точка .

    Если (знаки функции на концах разделенного отрезка разные), то начало нового отрезка для вычислений ai+1 совпадет с ai, т.е. ai+1=ai. В противном случае (знаки функции на концах разделенного отрезка одинаковые) ai+1 совпадет с точкой половинного деления отрезка, т.е. .

    Подобная операция необходима для другого конца отрезка [ai, bi], для bi. Если , то конец нового отрезка для вычислений bi+1 совпадет с точкой половинного деления отрезка, т.е. ; в противном случае bi+1 совпадет с концом отрезка [ai, bi], т.е. bi+1=bi. Если же , то точка будет являться корнем нелинейного уравнения. Для реализации описанного процесса в Mathcad запишем формулы для определения начала и конца разделенного отрезка, воспользовавшись условным оператором if в векторной форме. Такая форма записи позволяет в вычислениях Mathcad использовать результаты предыдущих операций. Введем оператор вектора на три элемента и заполним его идентификаторами искомых величин ai+1, bi+1, gi (gi  для вычисления ). Введем знак присвоения и еще один оператор вектора на три элемента. Последний оператор заполните следующими формулами:

    Условный оператор if работает следующим образом. Если логическое выражение, записанное в скобках, истинно, то переменная слева от знака := принимает значение выражения или величины, стоящей первой после логического выражения, в противном случае переменной присваивается значение выражения, или величины, стоящей на втором месте после логического выражения.

    • Чтобы увидеть результат вычислений, введите последовательно a=,b=,g=. Вектор a покажет начала всех разделенных отрезков, b  концы этих отрезков. Вектор g содержит значения функции f(x) в серединах всех отрезков [a,b]. Среди значений вектора a или вектора b будет корень исходного уравнения.
    • Определим корень уравнения следующим образом. Вычислим длину отрезка [ai,bi]i=0,…,10, определив ее как . Проанализируем значения вектора ε. Найдем элемент вектора, значение которого меньше заданной в условии задачи минимальной длины отрезка [ai,bi]. В нашем примере это значение элемента ε10. Корнем уравнения будет значение .

    Результат на экране:

    Л евая часть нелинейного уравнения, определенная как функция f(x).

    Локализация корня уравнения.

    Д
    искретная переменная i.

    Формулы для определения начала и конца отрезка и определения значения f(x) в середине отрезка.

    Значения длины вычисляемых отрезков.
    Р
    езультаты вычислений.
    Длина отрезка [a10, b10] -3 .
    З начение f(x) наиболее близкое к нулю.

    К орень уравнения, который можно принять для десяти этапов деления отрезка.
    Задачи для самостоятельного решения.

    Методом бисекции (половинного деления) уточнить корень уравнения.

    1. x3+x-1000=0 с точностью до 10-4 .
    2. tg(x)=x на отрезке с точностью до 0.0001.

    Практическая работа №7

    Цель работы:

    • научиться решать нелинейное уравнение в Mathcad, используя вычислительный алгоритм метода Ньютона (метод касательных).

    Задание №1.Решить нелинейное уравнение методом Ньютона.

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

    где f(x)  непрерывная функция, требуется определить вещественные корни этого уравнения с точностью ε. Расчетная формула метода Ньютона имеет следующий вид

    (2)

    Выберем каким-либо способом, например, графически, приближенное значение корня x0 и, подставляя его в правую часть уравнения (2), можем начать итерационный процесс вычисления корня уравнения.

    Условием завершения итерационного процесса является выполнение условия

    (3)

    В случае выполнения неравенства (3), корнем уравнения (1) будем считать значение xk+1.
    Рассмотрим реализацию алгоритма метода Ньютона в Mathcad на следующем примере.

    Найти действительные корни уравнения

    с точностью до трех значащих цифр.

    • Установим формат чисел так, чтобы результаты вычислений отображались с нужным количеством знаков после десятичной точки (запятой).
    • Преобразуем заданное уравнение к виду (1) и определим его правую часть как функцию f(x).
    • Определим приближенное значение корня уравнения графически. Для этого построим график функции . Этим значением будет значение x=a в точке пересечения графика функции с осью абсцисс.
    • Определим начальное значение для вычислений следующим образом:

    x0:a.

    • Определим дискретный аргумент k:=0..9, задающий количество итераций (вычисляемых значений xk).
    • Определим первую производную функции f(x) как функцию d(x):

    • Определим вычислительную формулу Ньютона в векторной форме:

    • Для получения вектора результатов в свободном месте рабочего пространства Mathcad напишите: x=. Введите условие оценки погрешности вычислений . Результат вычислений погрешности выведите на экран. Корнем уравнения будет x2=1.171.

    Результат на экране:

    Нелинейное уравнение определено в виде функции.

    Локализация корней уравнения графическим способом.

    Приближенное значения корня уравнения.

    К оличество итераций.

    Н ачальное значение неизвестного для решения уравнения.

    Вычислительная формула Ньютона.

    Результат вычислений. Расчет погрешности вычислений.

    Погрешность вычислений становится допустимой на второй итерации , поэтому допустимое решение получено на второй итерации .
    Задачи для самостоятельного решения.

    Используя метод Ньютона, найти с точностью ε=10-6 положительный корень уравнений

    Метод простых итераций

    Дата добавления: 2015-07-23 ; просмотров: 7342 ; Нарушение авторских прав

    Лабораторная работа №5

    Тема: Решение СЛАУ итерационным методом в MathCAD.

    Цель: изучение приемов численного решения систем линейных уравнений с помощью функций MathCAD.

    Порядок выполнения работы

    1. Ознакомиться с теоретическими положениями.

    2. Рассмотреть пример решения СЛАУ итерационным методом в MathCAD.

    3. Выполнить практическое задание.

    4. Ответить на контрольные вопросы.

    Содержание отчета

    1. Тема, цель работы.

    2. Практическое задание:

    2.1. Постановка задачи.

    2.2. Результаты выполнения.

    3. Ответы на контрольные вопросы.

    ТЕОРЕТИЧЕСКАЯ ЧАСТЬ

    Итерационные методы – это методы, позволяющие получить решение системы с заданной точностью путем сходящихся итерационных процессов (метод итерации, метод Зейделя и др.).

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

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

    Метод простых итераций

    Пусть дана линейная система (1).

    (1)

    Систему (1) коротко можно записать в виде матричного уравнения:

    Ах = b,(2)

    Предполагая, что диагональные коэффициенты

    разрешим первое уравнение системы (1) относительно х1, второе – относительно х2 и т. д. Тогда получим эквивалентную систему

    (3)

    при i ¹ j

    Систему (3) можно записать в матричной форме

    x = b + ax,

    а любое (k + 1) приближение вычисляется по формуле

    x (k+1) = b + ax (k) .(4)

    Напишем формулы приближений в развернутом виде:

    (4¢)

    Приведем достаточное условие сходимости метода итераций.

    Теорема:Процесс итерации для приведенной линейной системы (18) сходится к единственному ее решению, если какая-нибудь каноническая норма матрицы a меньше единицы, т.е. для итерационного процесса (19) достаточное условие есть

    (5)

    Следствие 1. Процесс итерации для системы (3) сходится, если:

    1) (k +1) .

    Пример решения СЛАУ итерационным методом в MathCAD.

    Решить систему методом простых итераций:

    Результат на экране:

    |следующая лекция ==>
    Контрольные задания|

    Не нашли то, что искали? Google вам в помощь!

    Решение нелинейных уравнений и систем уравнений в пакете MathCAD

    Решение нелинейных уравнений

    Вычисление корней численными методами включает два основных этапа:

    · уточнение корней до заданной точности.

    Рассмотрим эти два этапа подробно.

    Отделение корней нелинейного уравнения

    Учитывая легкость построения графиков функций в MathCAD , в дальнейшем будет использоваться графический метод отделения корней.

    Пример. Дано алгебраическое уравнение

    .

    Определить интервалы локализации корней этого уравнения.

    Пример. Дано алгебраическое уравнение

    .

    Определить интервалы локализации корней этого уравнения.

    На рисунке приведен график функции , построенный в MathCAD . Видно, что в качестве интервала изоляции можно принять интервал . Однако уравнение имеет три корня. Следовательно, можно сделать вывод о наличии еще двух комплексных корней. ¨

    Уточнение корней нелинейного уравнения

    Для уточнения корня используются специальные вычислительные методы такие, как метод деления отрезка пополам, метод хорд, метод касательных (метод Ньютона) и многие другие.

    Функция root . В MathCAD для уточнения корней любого нелинейного уравнения (не обязательно только алгебраического) введена функция root , которая может иметь два или четыре аргумента, т.е. или , где – имя функции или арифметическое выражение, соответствующее решаемому нелинейному уравнению, – скалярная переменная, относительно которой решается уравнение, – границы интервала локализации корня.

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

    Заметим, что для вычисления всех трех корней использовался прием понижения порядка алгебраического уравнения, рассмотренный в п. 8.1.1. ¨

    Функция root с двумя аргументами требует задания (до обращения к функции) переменной начального значения корня из интервала локализации.

    Пример 8.1.5. Используя функцию root , вычислить изменения корня нелинейного уравнения при изменении коэффициента а от 1 до 10 с шагом 1.

    Функция polyroots . Для вычисления всех корней алгебраического уравнения порядка (не выше 5) рекомендуется использовать функцию polyroots . Обращение к этой функции имеет вид polyroots (v) , где v – вектор, состоящий из n +1 проекций, равных коэффициентам алгебраического уравнения, т.е. . Эта функция не требует проведения процедуры локализации корней.

    Пример. Используя функцию polyroots , найти все три корня уравнения , включая и два комплексных

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

    Решаемое уравнение задается в виде равенства, в котором используется «жирный» знак равно, вводимый с палитры Логичес­кий .

    Ограничения содержат равенства или неравенства, которым должен удовлетворять искомый корень.

    Функция Find уточняет корень уравнения, вызов этой функции имеет вид Find ( x ), где x – переменная, по которой уточняется корень. Если корня уравнения на заданном интервале не существует, то следует вызвать функцию Minerr ( x ), которая возвращает приближенное значение корня.

    Для выбора алгоритма уточнения корня необходимо щелкнуть правой кнопкой мыши на имени функции Find ( x ) и в появившемся контекстном меню (см. рисунок) выбрать подходящий алгоритм.

    Аналогично можно задать алгоритм решения и для функции Minerr ( x ).

    Использование численных методов в функциях Find ( x ), Minerr ( x ) требует перед блоком Given задать начальные значения переменным, по которым осуществляется поиск корней уравнения.

    Пример. Используя блок Given , вычислите корень уравнения в интервале отделения .

    Решение систем уравнений

    В зависимости от того, какие функции входят в систему уравнений, можно выделить два класса систем:

    · алгебраические системы уравнений;

    · трансцендентные системы уравнений.

    Среди алгебраических систем уравнений особое место занимают системы линейных алгебраических уравнений (СЛАУ).

    Системы линейных алгебраических уравнений

    Системой линейных алгебраических уравнений (СЛАУ) называется система вида:

    В матричном виде систему можно записать как

    ,

    где – матрица размерности , – вектор с проекциями.

    Для вычисления решения СЛАУ следует использовать функцию lsolve , обращение к которой имеет вид: lsolve (А, b ), где А – матрица системы, – вектор правой части.

    Решение систем нелинейных уравнений

    MathCAD дает возможность находить решение системы уравнений численными методами, при этом максимальное число уравнений в MathCAD 2001 i доведено до 200.

    Для решения системы уравнений необходимо выполнить следующие этапы.

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

    Пример. Дана система уравнений:

    Определить начальные приближения для решений этой системы.

    Видно, что система имеет два решения: для первого решения в качестве начального приближения может быть принята точка (-2, 2), а для второго решения – точка (5, 20). ¨

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

    Функция Find вычисляет решение системы уравнений с заданной точностью, и вызов этой функции имеет вид Find ( x ), где x – список переменных, по которым ищется решение. Начальные значения этим переменным задаются в блоке . Число аргументов функции должно быть равно числу неизвестных.

    Следующие выражения недопустимы внутри блока решения:

    · ограничения со знаком ¹ ;

    · дискретная переменная или выражения, содержащие дискретную переменную в любой форме;

    · блоки решения уравнений не могут быть вложены друг в друга, каждый блок может иметь только одно ключевое слово Given и имя функции Find (или Minerr ).

    Пример. Используя блок Given , вычислить все решения системы предыдущего примера. Выполнить проверку найденных решений.

    Пример. Используя функцию , вычислите решение системы уравнений


    источники:

    http://life-prog.ru/2_60054_metod-prostoy-iteratsii.html

    http://pers.narod.ru/study/mathcad/07.html