2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Численный поиск корней уравнения
Сообщение04.08.2015, 17:55 


07/08/14
4231
Собираюсь писать алгоритм для численного поиска корней уравнений непериодических функций, вида
$y=\sum{\frac{1}{(x_i+C_i)^i}}+C$
идея следующая:
$t$ - шаг, первоначальное значение $1$
$x_{i+1}=x_i+t$
дальше, если не выполняется условие
$|y_{i+1}|<|y_i|$
меняется значение шага:
$t=-\frac{t}{2}$
остановка работы алгоритма при выполнении хотя бы одного из условий:
$|y_{i+1}-y_i|<0,01$; "$0,01$" здесь - точность (количество знаков после запятой)
$y_{i+1}=y_{i-1}$, остановка из-за начала бесконечного цикла.
В численные методы не смотрел, то что видел с производными не годится (некоторые степени могут быть изменены в процессе поиска решений).
Будет ли работать?

 Профиль  
                  
 
 Re: Численный поиск корней уравнения
Сообщение04.08.2015, 20:42 
Заслуженный участник


09/05/12
25179
upgrade в сообщении #1042680 писал(а):
Будет ли работать?
Возьмем функцию $y = e^{-x}$...

 Профиль  
                  
 
 Re: Численный поиск корней уравнения
Сообщение05.08.2015, 10:28 


07/08/14
4231
хоть это немного другой вид, за подсказку спасибо, внезапно выявилось много недостатков.
Например, алгоритм не выйдет из локального минимума.
ограничил доп условием $x_i>0$.

 Профиль  
                  
 
 Re: Численный поиск корней уравнения
Сообщение06.08.2015, 12:15 


07/08/14
4231
изменил
$t$ - шаг;
задаем область определения для $x_i$;
$x_{i+1}=x_i+t$;
дальше, если выполняется условие
$Y_{i+1} \cdot Y_i <0$ (проверка на изменение знака между соседними значениями функции)
то
$t=-\frac{t}{2}$ - разворачиваемся и идем в сторону где знак изменился более мелкими шагами.

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

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [bot]


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

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group