3
$\begingroup$

Context

Mathematica 10.3 now has the very nice DEigensystem function.

{vals, funs} = 
  DEigensystem[{-Laplacian[u[x, y], {x, y}], 
    DirichletCondition[u[x, y] == 0, True]}, 
   u[x, y], {x, y} ∈ Disk[], 6];

so that

vals // N

return

(* {5.78319,14.682,14.682,26.3746,26.3746,30.4713} *)

and

Table[Plot3D[funs[[i]] // N // Evaluate, {x, y} ∈ Disk[], 
  PlotRange -> All, PlotLabel -> vals[[i]], 
  PlotTheme -> "Minimal"], {i, Length[vals]}]

Mathematica graphics

Question

It seems it does not take into account properly e.g. an elliptic boundary condition.

{vals, funs} = 
 DEigensystem[{-Laplacian[u[x, y], {x, y}], 
 DirichletCondition[u[x, y] == 0, True]}, 
 u[x, y], {x, y} ∈ Disk[{0, 0}, {1, 2}], 6];
 vals//N

returns the same eigenvalues as for the round disc

(* {5.78319,14.682,14.682,26.3746,26.3746,30.4713} *)

whereas the result from the numerical function NDEigensystem does not

 {vals, funs} = 
 NDEigensystem[{-Laplacian[u[x, y], {x, y}], 
 DirichletCondition[u[x, y] == 0, True]}, 
 u[x, y], {x, y} ∈ Disk[{0, 0}, {1, 2}], 6];
vals//N

(* {3.56676,6.27564,10.0292,11.7382,14.88,15.9277} *)

Indeed the eigenfunctions have an elliptic support:

 Table[Plot3D[funs[[i]], {x, y} ∈ Disk[{0, 0}, {1, 2}], 
 PlotRange -> All, PlotLabel -> vals[[i]], PlotTheme -> "Minimal", 
 BoxRatios -> Automatic], {i, Length[vals]}]

Mathematica graphics

It seems to me to be a bug in DEigensystem?

Advertising

Note that the NEigensystem function is pretty cool: it can deal with implicit boundaries:

ω = ImplicitRegion[x^6 + y^4 <= 1, {x, y}];
{vals, funs} = 
 NDEigensystem[{-Laplacian[u[x, y], {x, y}], 
DirichletCondition[u[x, y] == 0, True]}, 
u[x, y], {x, y} ∈ ω, 6]; 

 Table[Plot3D[funs[[i]], {x, y} ∈ ω, PlotRange -> All, 
 PlotLabel -> vals[[i]], PlotTheme -> "Minimal", 
 BoxRatios -> Automatic], {i, Length[vals]}]

Mathematica graphics

$\endgroup$

1 Answer 1

6
$\begingroup$

Yes, this is a bug in DEigensystem. The example with an elliptic boundary condition evaluates due to a missing check in the implementation, and should have returned unevaluated.

Thank you for letting us know about the issue. I apologize for the inconvenience.

$\endgroup$
3
  • $\begingroup$ Thanks; would you mind providing us with a list of supported boundary conditions? $\endgroup$
    – chris
    Oct 21, 2015 at 14:07
  • 2
    $\begingroup$ At present, support for 2-D regions is limited to rectangles, triangles, disks, and sectors of disks, usually with Dirichlet conditions (for which closed forms are available). Support for other regions, transformations, etc. may be added later. $\endgroup$ Oct 21, 2015 at 20:27
  • $\begingroup$ Would you happen to have solutions to 2D Heat equations? Symbolic or numerical? Cheers $\endgroup$
    – chris
    Nov 1, 2015 at 14:55

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.