Кто-нибудь знает, как решить следующее уравнение? - PullRequest
0 голосов
/ 23 мая 2019

Когда я читаю эту статью http://articles.adsabs.harvard.edu/cgi-bin/nph-iarticle_query?1976ApJ...209..214B&data_type=PDF_HIGH&whole_paper=YES&type=PRINTER&filetype=.pdf Я пытаюсь решить уравнение (49) численно, кажется, что это уравнение Фоккера-Планка, я считаю, что метод конечных разностей не работает, он нестабилен.Кто-нибудь знает, как это решить?

1 Ответ

0 голосов
/ 29 мая 2019

обмен стеками вычислительной науки - это место, где вы можете спросить и надеяться на ответ. Или вы можете попробовать его физика двоюродный брат. Уравнение, которое вы цитируете, представляет собой интегро-дифференциальное уравнение, довольно нелинейное ... уравнение Фоккера-Планка. Определенно не типичный Фоккер-Планк.

Что вы можете попробовать, так это дискретизировать часть пространства функции g(x,t), используя конечные разности или конечные элементы. Ведь 0 < x < x_max и у вас есть граничные условия. Вы также должны дискретизировать соответствующую интеграцию. Так, может быть, конечные элементы могут быть более подходящими? Конечные элементы означают, что вы можете записать g (x, t) как серию хорошо выбранных базисов достаточно компактно поддерживаемых простых функций Bj (x): j = 1 ... N в интервале [0, x_max]

g(x,t) = sum_j=1:N  gj(t)*Bj(x)

Это превратит вашу функцию в (большой) вектор gj(t) = g(x_j, t), for j = 1, 1, ...., N. В результате вы получите нелинейную систему ОДУ

dgj(t)/dt = Qj(g1(t), g2(t), ..., gN(t))
j = 1 ... N 

После этого используйте что-то вроде Runge-Kutta для численной интеграции системы ODE.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...