0
$\begingroup$

I have a second order PDE to solve with some boundary conditions I'm not entirely sure how to implement.

The equation is

$$ \frac{\partial}{\partial x} ((x^2-1) \frac{\partial f}{\partial x})+ \frac{\partial}{\partial y} ((1-y^2) \frac{\partial f}{\partial y})=0 $$

I've tried to use DSolve here but have heard that this might not be the appropriate function to use here (very new to Mathematica).

The boundary condition I'm struggling with is that $f\rightarrow 0$ as $x\rightarrow \infty$.

Any advice would be very welcome. Many thanks

$\endgroup$
2
  • 2
    $\begingroup$ Please add the Mathematica code you're tried. $\endgroup$
    – creidhne
    Commented Apr 3 at 13:00
  • 1
    $\begingroup$ Please also add the boundary conditions you do not struggle with. $\endgroup$
    – user21
    Commented Apr 3 at 14:35

2 Answers 2

0
$\begingroup$

By a (tensor-) product ansatz, dividing the result by the product, you get separated linear ODE's of the second order with two independent terms in $x,y$, that have to be constants adding to zero.

$$\frac{1}{f(x) g(y)}\cdot \left(\frac{\partial \left((1-x) g(y) f'(x)\right)}{\partial x}+\frac{\partial \left((1-y) f(x) g'(y)\right)}{\partial y}\right)) =-\frac{(x-1) f''(x)+f'(x)}{f(x)}-\frac{(y-1) g''(y)+g'(y)}{g(y)} $$

The solutions are Bessel functions of real and imaginary arguments, in Mathematica, coordinate change to trigonometric functions

 DSolve[Derivative[1][f][x] + (-1 + x) (f^\[Prime]\[Prime])[x] == 
 k^2  f[x], f[x], x] /. {x -> Cos[\[Phi]]^2 + 1} // 
     FullSimplify // PowerExpand

$$f(\phi )=a \ I_0(2 k \cos (\phi ))\ + \ b \ K_0(2 k \cos (\phi ))$$

  DSolve[Derivative[1][g][y] + (-1 + y) (g^\[Prime]\[Prime])[y] == 
 -k^2  g[x], g[y],y] /. {y -> Cos[\[Theta]]^2 + 1} // 
     FullSimplify // PowerExpand

$$g(\theta )=c \ J_0(2 k \cos (\theta ))\ + \ d \ K_0(2 i k \cos (\theta ))$$

The eigenvalue spectrum of $k$ is a questin of the boundary values.

$\endgroup$
3
  • $\begingroup$ although I think your general point of trying separable solution is right I think you translated the question incorrectly. Compare your equation with OP. $\endgroup$
    – ubpdqn
    Commented May 4 at 6:54
  • $\begingroup$ That is what happens, if Mathematica code is presented as TeX. The orignal yields $$ DSolve[D[(-1 + x^2) f'[x], x] == k (1 + k) f[x], f[x], x] $$ $$f = c_1 L_k (x) + c_2 Q_k (x)$$ $\endgroup$
    – Roland F
    Commented May 4 at 7:09
  • $\begingroup$ See here. This is not your answer. $\endgroup$
    – ubpdqn
    Commented May 4 at 7:53
0
$\begingroup$

This is an extended comment based on @RolandF answer (see comments there).

The form of the partial differential equations suggests a separation of variables approach can be used. I am not dealing with boundary condition issue(s). Assume $f(x,y)=u(x)v(y)$.

(* The PDE *)
p = D[(x^2 - 1) D[u[x] v[y], x], x] + 
   D[(1 - y^2) D[u[x] v[y], y], y] == 0
(* Separation of variables *)
ds = DivideSides[p, u[x] v[y]] // Simplify;
p2 = ds[[1, 1, 1, 1]] == C[1];
p3 = MultiplySides[p2, v[y]][[1, 1, 1]]
(* Solving the ODEs using DSolve *)
solv = v[y] /. DSolve[p3, v[y], y][[1]];
p4 = MultiplySides[ds[[1, 1, 1, 2]] == C[1], u[x]][[1, 1, 1]]
solu = u[x] /. DSolve[p4, u[x], x][[1]];
(* Candidate solution *)
solf = solu  solv // Expand
TraditionalForm[solf]

(* Checking solution *)
D[(x^2 - 1) D[solf, x], x] + D[(1 - y^2) D[solf, y], y] // FullSimplify

enter image description here

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.