Mathematica DSolve diff. уравнение в определенной области
Я ищу способ решить следующее дифференциальное уравнение:
DSolve[(1 - b*Abs[z])*f[z]/a == f''[z], f[z], z]
Поэтому я попытался DSolve это отличить z>0 от z<0, таких как:
DSolve[(1 - b*z)*f[z]/a == f''[z], f[z], z>0]
Но у меня все равно не работает. Может быть, добавление домена явно поможет, но я не могу найти способ сделать это.
У кого-нибудь есть идеи, как сделать такие вещи?
Спасибо за вашу помощь и время
1 ответ
Решение
Вы можете передать свои предположения солверу с помощью Refine
:
Refine[DSolve[(1 - b*Abs[z])*f[z]/a == f''[z], f[z], z], z > 0]
дает
{{f[z] -> AiryAi[(1/a - (b z)/a)/(-(b/a))^(2/3)] C[1] + AiryBi[(1/a - (b z)/a)/(-(b/a))^(2/3)] C[2]}}