2014 dxdy logo

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

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




На страницу Пред.  1, 2
 
 Re: найти обратную функцию
Сообщение17.07.2009, 20:39 
Может вам разложить синус по Тейлору до нужной степени (смотря какой точности), получите многочлен, но чем выше точность, тем выше степень многочлена, решить который при n>3 (4 в крайнем случае) тоже будет весьма затруднительно (а может и невозможно). Я вижу выход в поиске приблизительно похожей функции и более простого вида.

 
 
 
 Re: найти обратную функцию
Сообщение17.07.2009, 20:41 
arseniiv в сообщении #229784 писал(а):
Жаль. А то хотел её использовать как накопительную функцию вероятности...

Так используйте. Кому какое дело -- выражается она явной формулой или нет. Вполне достаточно того, что она существует и что при желании её значения могут быть найдены со сколь угодно высокой точностью.

 
 
 
 Re: найти обратную функцию
Сообщение17.07.2009, 21:40 
Pripyat в сообщении #229787 писал(а):
Может вам разложить синус по Тейлору до нужной степени (смотря какой точности), получите многочлен, но чем выше точность, тем выше степень многочлена, решить который при n>3 (4 в крайнем случае) тоже будет весьма затруднительно (а может и невозможно).

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

 
 
 
 Re: найти обратную функцию
Сообщение17.07.2009, 21:43 
Ряд Тейлора для нахождения обратной функции -- откровенно неадекватен (в подавляющем большинстве практически интересных случаев).

 
 
 
 Re: найти обратную функцию
Сообщение18.07.2009, 01:31 
А такое (численное) решение Вас устроит ?
Изображение

 
 
 
 Re: найти обратную функцию
Сообщение18.07.2009, 09:38 
Спасибо за помощь, но как раз численное - нет. Программа будет простой, большие вычисления или память под хранение таблицы значений её "раздуют", поэтому я лучше поищу похожую по форме графика, но элементарную функцию. :roll: Буду экспериментировать...

 
 
 
 Re: найти обратную функцию
Сообщение18.07.2009, 10:19 
arseniiv в сообщении #229848 писал(а):
Программа будет простой, большие вычисления или память под хранение таблицы значений её "раздуют",

Зачем большие? Просто используйте для решения уравнения $x-{\sin2\pi x\over2\pi}=y$ метод Ньютона. Программа вычислений -- очень короткая, и в силу выпуклости метод будет всегда сходиться при начальном приближении $x_0=0.5$.

Правда, вблизи нуля или единицы сходимость будет медленной. Ну можно немного усложнить формулы, перейдя к уравнению $\sqrt[3]{x-{\sin2\pi x\over2\pi}}=\sqrt[3] y$. Если брать начальное приближение $x_0=\alpha\sqrt[3]y$ для каждого $y$ (где $\alpha=$\sqrt[3]{3\over2\pi^2}$ или меньше, например, просто $\alpha=0.5$), то сходимость будет практически мгновенной -- для всех $y\in[0;\;0.5]$, а на второй половине отрезка корни определяются по симметрии.

 
 
 [ Сообщений: 22 ]  На страницу Пред.  1, 2


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group