2014 dxdy logo

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

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




 
 Решение диффура
Сообщение03.04.2019, 14:12 
Здравствуйте. Возник вопрос по поводу диффура первого порядка. Нашёл решение численным методом через ode45, получил матрицу решений. Решением является функция Бесселя нулевого порядка. Мне же в дальнейшем надо работать с решением как с функцией. Есть ли какая-нибудь возможность получить решение диффура в виде функции, или хотя бы на основании полученных значений решения создать собственную функцию?
Заранее спасибо.

 
 
 
 Re: Решение диффура
Сообщение03.04.2019, 15:28 
Если вопрос по системе Matlab.

ode45 — это функция для нахождения численного решения. Для нахождения символьного решения даже в старых версиях системы можно воспользоваться функцией dsolve. Например такой код будет работать в R2013b.
Используется синтаксис Matlab M
>> syms x y(x)
>> equ = diff(y, x) == x^2 + y^2
equ(x) =
D(y)(x) == x^2 + y(x)^2

>> dsolve(equ)
ans =
-((C2*besselj(1/4, x^2/2) + C3*bessely(1/4, x^2/2))/(2*x^(1/2)) + x^(1/2)*(C2*(x*besselj(-3/4, x^2/2) - besselj(1/4, x^2/2)/(2*x)) + C3*(x*bessely(-3/4, x^2/2) - bessely(1/4, x^2/2)/(2*x))))/(x^(1/2)*(C2*besselj(1/4, x^2/2) + C3*bessely(1/4, x^2/2)))

В ещё более старых версиях, например 6.5, синтаксис отличается. Но в справке пакета есть описание и примеры
>> doc dsolve.

 
 
 
 Re: Решение диффура
Сообщение03.04.2019, 16:11 
Спасибо большое.

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


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