💀
Второй курс РПО
Численные методы
Численные методы
  • Погрешности вычислений
  • Вычисление абсолютной и относительной погрешностей
    • Вариант 2
    • Вариант 3
    • Вариант 4
  • Локализация корня уравнения
  • Метод хорд
  • Метод Ньютона
  • Метод деления отрезка пополам
  • Практическая № X
  • Приближённые методы
    • Задача: Вариант 3 #1
    • Задача: Вариант 3 #2
    • Задача: Вариант 3 #3
  • Метод гауса: С чем его едят?
  • Интерполяционный многочлен Лагранжа
    • Вариант 1
  • Интерполяция: Формулы Ньютона
  • Полигональное моделирование
    • Интерполяция кубическими сплайнами
  • Самостоятельная В3
  • Распределение Пуассона
  • Суть интерполяции Ньютона
    • Объяснение
  • Суть интерполяции сплайнами
  • Численное интегрирование
  • Метод Гауса
  • Метод Эйлера
Powered by GitBook
On this page
  • Локализация корня уравнения
  • Уточнение корня методом деления отрезка пополам
  • Шаг 2: Проверка знака функции
  • Шаг 3: Повторяем процесс
  • Шаг 4: Продолжаем уточнение
  • Результат

Метод деления отрезка пополам

PreviousМетод НьютонаNextПрактическая № X

Last updated 6 months ago

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

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

Цель — локализовать наименьший положительный корень уравнения с точностью до одной десятитысячной.

Пример задачи:

Найдем корень уравнения:

x2−1.2sin⁡2(x)=0 x^2 - 1.2 \sin^2(x) = 0x2−1.2sin2(x)=0

Шаг 1: Локализация корня

На предыдущем этапе было установлено, что корень уравнения лежит в интервале от 1 до 1.5.


Уточнение корня методом деления отрезка пополам

Метод деления отрезка пополам основан на следующем принципе:

  1. Разделим интервал [a,b][a, b][a,b]) пополам, находим середину отрезка ccc.

  2. Проверяем знак функции в точках aaa и ccc:

    • Если f(a)⋅f(c)<0f(a) \cdot f(c) < 0f(a)⋅f(c)<0, то корень лежит на отрезке [a,c][a, c][a,c].

    • Если f(a)⋅f(c)>0f(a) \cdot f(c) > 0f(a)⋅f(c)>0, то корень лежит на отрезке [c,b][c, b][c,b].

  3. Уточняем интервал и повторяем шаги до достижения заданной точности.


Формулы для вычислений:

  • Для нахождения значения функции в точке ccc, используя середину отрезка: c=a+b2 c = \frac{a + b}{2} c=2a+b​


Шаг 2: Проверка знака функции

Необходимо вычислить значения функции в точках aaa, bbb и ccc.

Предположим, что мы начинаем с интервала [a,b]=[1,1.5][a, b] = [1, 1.5][a,b]=[1,1.5].

  1. Вычисляем значения функции в точках a=1a = 1a=1 и b=1.5b = 1.5b=1.5: f(1)=12−1.2sin⁡2(1)≈1−1.2⋅0.84152≈1−1.2⋅0.707≈1−0.848≈0.152 f(1) = 1^2 - 1.2 \sin^2(1) \approx 1 - 1.2 \cdot 0.8415^2 \approx 1 - 1.2 \cdot 0.707 \approx 1 - 0.848 \approx 0.152 f(1)=12−1.2sin2(1)≈1−1.2⋅0.84152≈1−1.2⋅0.707≈1−0.848≈0.152 f(1.5)=(1.5)2−1.2sin⁡2(1.5)≈2.25−1.2⋅0.99752≈2.25−1.2⋅0.995≈2.25−1.194≈1.056 f(1.5) = (1.5)^2 - 1.2 \sin^2(1.5) \approx 2.25 - 1.2 \cdot 0.9975^2 \approx 2.25 - 1.2 \cdot 0.995 \approx 2.25 - 1.194 \approx 1.056 f(1.5)=(1.5)2−1.2sin2(1.5)≈2.25−1.2⋅0.99752≈2.25−1.2⋅0.995≈2.25−1.194≈1.056

  2. Вычисляем значение функции в середине отрезка c=1+1.52=1.25c = \frac{1 + 1.5}{2} = 1.25c=21+1.5​=1.25: f(1.25)=(1.25)2−1.2sin⁡2(1.25)≈1.5625−1.2⋅0.94852≈1.5625−1.2⋅0.8996≈1.5625−1.0795≈0.483 f(1.25) = (1.25)^2 - 1.2 \sin^2(1.25) \approx 1.5625 - 1.2 \cdot 0.9485^2 \approx 1.5625 - 1.2 \cdot 0.8996 \approx 1.5625 - 1.0795 \approx 0.483 f(1.25)=(1.25)2−1.2sin2(1.25)≈1.5625−1.2⋅0.94852≈1.5625−1.2⋅0.8996≈1.5625−1.0795≈0.483

  3. Проверка знака произведений:

    • f(1)⋅f(1.25)=0.152⋅0.483≈0.0734f(1) \cdot f(1.25) = 0.152 \cdot 0.483 \approx 0.0734f(1)⋅f(1.25)=0.152⋅0.483≈0.0734, положительное, значит корень лежит на отрезке [1.25,1.5][1.25, 1.5][1.25,1.5].


Шаг 3: Повторяем процесс

Теперь продолжаем с интервалом [1.25,1.5][1.25, 1.5][1.25,1.5].

  1. Вычисляем значение функции в точке c=1.25+1.52=1.375c = \frac{1.25 + 1.5}{2} = 1.375c=21.25+1.5​=1.375: f(1.375)=(1.375)2−1.2sin⁡2(1.375)≈1.890625−1.2⋅0.97812≈1.890625−1.2⋅0.957≈1.890625−1.1484≈0.7422 f(1.375) = (1.375)^2 - 1.2 \sin^2(1.375) \approx 1.890625 - 1.2 \cdot 0.9781^2 \approx 1.890625 - 1.2 \cdot 0.957 \approx 1.890625 - 1.1484 \approx 0.7422 f(1.375)=(1.375)2−1.2sin2(1.375)≈1.890625−1.2⋅0.97812≈1.890625−1.2⋅0.957≈1.890625−1.1484≈0.7422

  2. Проверка знака:

    • f(1.25)⋅f(1.375)=0.483⋅0.7422≈0.3588f(1.25) \cdot f(1.375) = 0.483 \cdot 0.7422 \approx 0.3588f(1.25)⋅f(1.375)=0.483⋅0.7422≈0.3588, положительное, значит корень лежит на отрезке [1.375,1.5][1.375, 1.5][1.375,1.5].


Шаг 4: Продолжаем уточнение

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


Результат

После нескольких шагов уточнения, мы получим следующий результат:

  • Корень уравнения равен x=1.1700±0.0001x = 1.1700 \pm 0.0001x=1.1700±0.0001.

Таким образом, корень уравнения с точностью до одной десятитысячной — это x=1.1700x = 1.1700x=1.1700.