Search code examples
mathwolfram-mathematicadifferential-equationsdsolve

Mathematica DSolve diff. equation over a particular domain


I am looking for a way to solve the following differential equation:

DSolve[(1 - b*Abs[z])*f[z]/a == f''[z], f[z], z]

Therefore I tried to DSolve it distinguishing z>0 from z<0 such as:

DSolve[(1 - b*z)*f[z]/a == f''[z], f[z], z>0]

But I still does not work. Maybe adding a domain explicitly would help but I can't find a way to do so.

Does anyone has any idea how do do such things?

Thank you for your help and time


Solution

  • You can pass your assumptions on to the solver with Refine:

    Refine[DSolve[(1 - b*Abs[z])*f[z]/a == f''[z], f[z], z], z > 0]
    

    gives

    {{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]}}