Форум программистов, компьютерный форум, киберфорум
Численные методы
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
6 / 6 / 3
Регистрация: 06.03.2011
Сообщений: 269
1

Метод половинного деления (объясните)

15.06.2011, 15:18. Показов 3134. Ответов 2
Метки нет (Все метки)

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

Заранее большое спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.06.2011, 15:18
Ответы с готовыми решениями:

Метод половинного деления (метод деления отрезка пополам)
решите нелинейное уравнение в MS Exel. Метод пропорциональных отрезков (комбинированный метод хорд...

Метод половинного деления
Суть в следующем я нашел на отрезке нашел середину и подставил в исходную функцию, и в результате...

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

Метод половинного деления
Здравствуйте! Не знаю как решить, помогите пожалуйста: решить нелинейное уравнение методом...

2
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
16.06.2011, 11:46 2
Пусть функция меняет знак на интервале своей непрерывности. Тогда где то на этом интервале она имеет ноль, а уравнение вида f(x)=0 - корень, тогда пердположение о том, что корень находится точно в середине этого интервала может иметь погрешность не более половины его длины, то есть ноль функции равен середине интервала с точностью до половины его длины. Если же тебя не устравивает эта точность, то надо соратить длину интервала. Если интервал сжать около центара, то ноль функции может уже не попасть в этот интервал, значит придётся бить исходный интервал на части и перебирать их все. Как быстрее всего вырастет точносмть? Делить на два? точность и выростит в двое. Стразу в тысячу? Точность вырастет в тысячу раз, но и пребрать придётся всю тысячу. А если делить на два, то тчность растёт только в двое. Но поделили интервал попалам, проверили его половинки и получаем снова интервал, которому принадлежит ноль функции, есго снова можно делить. Выбирать интервал знакопеременности, снова делить на два и так далее, пока интервал не сожмётся в 1024 раза, то достаточно перебрать всего 20 интервалов (10 пар интервалов). Делить каждый раз на три? Для уточнения решения не менее, чем в тысячу раз, надо семь раз разделить интервал и каждый раз перебрать три подинтервала, итого 21 интервал вместо двадцати. Делить на четыре? За пять раз достигаем тех же 1024-х, но перебрать надо будет пять четвёрок, то есть 20. На пять? За пять раз точность растёт в 3125 раз, но перебрать придётся 25 интервалов. И это не случайности. Наоборот, с каким бы другим способом деления интервала при условии проверки всех подинтервалов нисравнивалось последовательное деление пополам, в большинстве случаев требуемая точность будет достигнута делением интервала на два равных не медленнее. Причём, если делить попалам, то достаточно проверить лишь один интервал и сделать вывод о втором. То есть, при делении пополам 1024 получаем, проверив только 10 интервалов. А при делении на 3 - 14 (семь троек, в каждой проверяем два интервала, тертий остаётся, о нём делаем вывод). При делении на четыре проверке подлежат 15 интервалов, на 5 - 20 (пять пятёрок, в каждой проверяется четрые). И так далее. Если делить на большее число подинтервалов и каждый раз проверять лишь часть подинтервалов, например, сразу тот, которому в дейтствительности принадлежит ноль функции, то можно съэкономить время за счёт более быстрого сокращеняи длины интервала. Только такая экономия уже случайна.

Добавлено через 13 минут
Пример: https://www.cyberforum.ru/cgi-bin/latex.cgi?x^2-6=0. Функция https://www.cyberforum.ru/cgi-bin/latex.cgi?f(x)=x^2-6.
f(0)=-6, f(10)=94. https://www.cyberforum.ru/cgi-bin/latex.cgi?x=5\pm5.
f(0)=-6, f(5)=19, f(10)=94. https://www.cyberforum.ru/cgi-bin/latex.cgi?x=2,5\pm2,5.
f(0)=-6, f(2,5)=0,25, f(5)=19. https://www.cyberforum.ru/cgi-bin/latex.cgi?x=1,25\pm1,25.
f(0)=-6, f(1,25)=−4,4375, f(2,5)=0,25. https://www.cyberforum.ru/cgi-bin/latex.cgi?x=1,875\pm0,625.
f(1,25)=-4,4375, f(1,85)=−2,5775, f(2,5)=0,25. https://www.cyberforum.ru/cgi-bin/latex.cgi?x=2,175\pm0,3125.
f(1,85)=−2,5775, f(2,175)=−1,269375, f(2,5)=0,25. https://www.cyberforum.ru/cgi-bin/latex.cgi?x=2,3375\pm0,15625.
2
6 / 6 / 3
Регистрация: 06.03.2011
Сообщений: 269
16.06.2011, 12:47  [ТС] 3
Ухххх... спасибо огромное!
0
16.06.2011, 12:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.06.2011, 12:47
Помогаю со студенческими работами здесь

Метод половинного деления
Найти корень функции на промежутке методом половинного деления (дихотомии) с точностью эпсила =0,1...

Метод половинного деления
Помогите реализовать метод половиного деления к даной системе

Метод половинного деления
Помогите пожалуйста решить нелинейное уравнение методом половинного деления и методом простых...

Метод половинного деления
решите нелинейное уравнение в MS Exel. 1 Метод половинного деления (метод деления отрезка пополам)...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru