2014 dxdy logo

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

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




 
 вычислить ф. Макдональда
Сообщение25.09.2009, 23:35 
порекомендуйте алгоритм вычисления функции Макдональда $K_0(\mu r)$ на Си (или в другой форме). Под ф. Макдональда понимается функция, представляющая решение уравнения $\Delta K_0(\mu r)-\mu^2 K_0(\mu r)=0$ на плоскости.

Может из программы Си как то можно обратиться к какой-нибуть библиотеке, типа максимы, мэпла и т.д.?

 
 
 
 Re: вычислить ф. Макдональда
Сообщение25.09.2009, 23:44 
Аватара пользователя
см. http://mathworld.wolfram.com/ModifiedBe ... dKind.html

 
 
 
 Re: вычислить ф. Макдональда
Сообщение26.09.2009, 08:01 
d.dragon.n76 в сообщении #246558 писал(а):
порекомендуйте алгоритм вычисления функции Макдональда

Ю.Люк. Специальные математические функции и их аппроксимации.

(Есть в сети, например:
http://www.bookshunt.ru/books/specialnie_matematicheskie_funkcii_i_ih_approksimacii)

На стр. 350-351 приведены чебышёвские разложения для $I_0$ и $K_0$. Качество сканирования приличное, можно таблички файнридерить.

 
 
 
 Re: вычислить ф. Макдональда
Сообщение26.09.2009, 14:23 
В Библиотеке Численного анализа НИВЦ МГУ в разделе "Цилиндрические функции" есть модули на С и Фортране для вычисления модифицированных функций Бесселя.

 
 
 
 Re: вычислить ф. Макдональда
Сообщение04.10.2009, 22:34 
maxal в сообщении #246561 писал(а):


Мне нужно вычислить $K_0$ для действительного $x\inR$. По вашей ссылке возникло желание совсем просто вычислять эту функцию. А именно, просто считать интеграл
$K_0(x)=\int\limits_{0}^{\infty}\frac{\cos(xt)}{\sqrt{1+t^2}}dt$
по формуле прямоугольников
$K_0 \approx \sum\limits_{i=0}^{n}\frac{\cos(xt_i)}{\sqrt{1+t_i^2}}h, \quad t_i=ih$
обрывая его когда очередное слагаемое уменьшиться в 10 раз по сравнению с первым.

В качестве обоснования можно показать что подынтегральное выражение стремится к нулю с ростом $t$. Но как оценить погрешность вычисления интеграла? Есть ли такая оценка в литературе?

 
 
 
 Re: вычислить ф. Макдональда
Сообщение04.10.2009, 22:40 
d.dragon.n76 в сообщении #249088 писал(а):
А именно, просто считать интеграл
$K_0(x)=\int\limits_{0}^{\infty}\frac{\cos(xt)}{\sqrt{1+t^2}}dt$
по формуле прямоугольников

Никуда не годится. Уж не говоря о прямоугольниках (которые сами по себе не особенно хороши): как хвосты-то этого интеграла оценивать?... Они ведь стремятся к нулю весьма медленно.

 
 
 
 Re: вычислить ф. Макдональда
Сообщение05.10.2009, 10:58 
А такой интеграл
Цитата:
[1, с.651]
$K_0(x)=\int\limits_0^\infty \exp(-x \, {\rm ch}\, t)dt, \quad x>0$
можно считать по формуле прямоугольников, или трапеций, или Симпсона, или использовать метод Монте-Карло и т.д.? Как со строгим обоснованием, если можно? Подынтегральное выражение резко убывает.

P.S. мне требуется вычислить как $K_0(x)$ так и производную $K'_0(x)$ при $x>0$. Если для $K_0$ есть ряды, то для $K'_0$ ряды и таблицы найти не могу.

[1] Тихонов А.Н., Самарский А.А. Уравнения математической физики

 
 
 [ Сообщений: 7 ] 


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