+ Ответить в теме
Страница 1 из 2
1 2 ПоследняяПоследняя
Показано с 1 по 10 из 15

Тема: Метод касат-ных

  1. #1
    coder Дрюль is on a distinguished road
    Регистрация
    15.10.2004
    Сообщений
    18
    Вес репутации
    14

    По умолчанию Метод касат-ных

    Запрограммировал метод Ньютона. Возник вопрос: есть уравнение; как определить сколько у него корней? Как можно вычислять начальные приближения? (у меня все корни уточняются от единицы).

  2. По умолчанию

     
    Хотите избавиться от рекламы? Зарегистрируйтесь
  3. #2
    Moderator Куратор
    system architect
    Absurd is on a distinguished road
    Регистрация
    26.02.2004
    Адрес
    Pietari, Venäjä
    Возраст
    38
    Сообщений
    1,213
    Вес репутации
    17

    По умолчанию

    Количество корней равно степени уравнения.
    Т.е у уравнений первой степени - 1 корень, у уравнений второй степени - два корня итд.
    2B OR NOT(2B) = FF

  4. #3
    coder Дрюль is on a distinguished road
    Регистрация
    15.10.2004
    Сообщений
    18
    Вес репутации
    14

    По умолчанию

    Есть например уравнение ln(sin x)^cos x + sinh x = 0.
    У него cos(x) корней?

  5. #4
    programmer evgeny_d is on a distinguished road
    Регистрация
    23.03.2004
    Сообщений
    62
    Вес репутации
    15

    По умолчанию

    Дрюль,
    речь шла о полиномах a+ax+ax^2+...+ax^n - n корней в комплексных числах (енто называется полнотой поля С, если я все правильно помню)

    А вообще метод Ньютона - это метод локального поиска, как ни крути... и все корни он даже у полинома найти не сможет.
    Указать методу, откуда искать - дело исследователя.

    Сколько корней имеет произвольное уравнение f(x)=0 ИМХО в общем случае сказать невозможно (а для метода Ньютона, по-моему, достаточно только дифференцируемости f(x)).

  6. #5
    Moderator Куратор
    system architect
    Eugie is on a distinguished road
    Регистрация
    17.02.2004
    Адрес
    SPb
    Сообщений
    707
    Вес репутации
    16

    По умолчанию

    Если область определения ограничена - побить на равные интервалы с заданным шагом и пройтись по узлам. Чем мельче разбиение, тем больше шанс отыскать все корни на заданном промежутке.

  7. #6
    Administrator Админ
    system architect
    AiK is on a distinguished road Аватар для AiK
    Регистрация
    13.02.2004
    Адрес
    СПб
    Сообщений
    2,298
    Вес репутации
    80

    По умолчанию

    Eugie, на сколько я помню, классики рекомендуют комбинировать метод Ньютона с другими, более медленно сходящимися методами, например с методом бисекции (деления отрезка пополам). Однако ж даже для этого метода необходимо делать предварительные предположения о корнях.
    Даже самый дурацкий замысел можно воплотить мастерски

  8. #7
    Moderator Куратор
    system architect
    Eugie is on a distinguished road
    Регистрация
    17.02.2004
    Адрес
    SPb
    Сообщений
    707
    Вес репутации
    16

    По умолчанию

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

  9. #8
    Administrator Админ
    system architect
    AiK is on a distinguished road Аватар для AiK
    Регистрация
    13.02.2004
    Адрес
    СПб
    Сообщений
    2,298
    Вес репутации
    80

    По умолчанию

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

  10. #9
    Moderator Куратор
    system architect
    Eugie is on a distinguished road
    Регистрация
    17.02.2004
    Адрес
    SPb
    Сообщений
    707
    Вес репутации
    16

    По умолчанию

    если у тебя задан интервал, то на этом интервале нахождение всех корней гарантировано, скажем, методом хорд. Разумеется, если у тебя шаг меньше расстояния между соседними корнями
    То-то и оно, что 'если'... И найдешь ты один корень на интервале, а их может быть несколько.
    Короче, нет универсальных методов, увы, и особенно это касается численных методов. Поэтому и приходится постоянно делать оговорки о точности.

  11. #10
    programmer evgeny_d is on a distinguished road
    Регистрация
    23.03.2004
    Сообщений
    62
    Вес репутации
    15

    По умолчанию

    Вообще-то за примером далеко ходить не надо.
    cos(n*x) на интервале [0,PI]
    При n=1 - 1 корень
    При n=2 - 2 корня
    и т.п.

    Если берем некоторое покрытые (сетку) с интервалом e, то всегда найдется такое n, что в одной "ячейке" сетки окажется более одного корня... да и вообще сколько угодно корней.

    Мультистарт из равномерно раскиданных узлов имеет смысл делать только в случае, если функция удовлетворяет условию Липшица с некоторой константой K, но это, как говорится, уже совсем другая история %)

+ Ответить в теме
Страница 1 из 2
1 2 ПоследняяПоследняя

Похожие темы

  1. Факторизация: ро-метод или метод квадратичного решета
    Суть задачи: есть большое число N, которое суть произведение простых чисел P и Q. Зная число N, надо найти P и Q, т.е., проще говоря, разложить N на...
    от Хыиуду в разделе Алгоритмы
  2. Метод Ньютона
    Можно ли использовать метод Ньтона для нахождения максимального значения функции??? Функция не сложная - парабола. Но насколько мне известно, метод...
    от Denim в разделе Алгоритмы
  3. Проблемы с heasers, метод GET
    header("GET main.php?".$get_array."HTTP/1.0\r\n"); Пытаюсь так передать заголовок, но в скрипт ничего не переадется. Проблема в том, что этот...
    от Nikoshka в разделе Perl, PHP, ASP ...
  4. Метод Рыбакова на СИ.
    Нужно написать на СИ программу. Решение нелинейных уравнений методом Рыбакова. Написал на паскале, я в нем более-менее рублю. Нужно перелопатить на...
    от vitiv в разделе Решите мне задачку
  5. Симплекс метод
    Пожалуста Симплекс метод на Visual Basic. срочно нужен!!! :wink: Отправте плиз на Devushka_1@list.ru
    от Anonymous в разделе Решите мне задачку

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения