# Obtaining more values from NDEigenvalues

When I run this code

diskLevels =
NDEigenvalues[
{-Laplacian[u[x, y], {x, y}],
DirichletCondition[u[x, y] == 0, True]},
u[x, y], {x, y} \[Element] Disk[], 1000
];


Mathematica objects that it can only supply me with 961 eigenvalues:

NDEigenvalues::maxeigen: A maximum number of 961 eigenvalues and functions can be computed for this discretized system.


Is there a way to get more values? I tried messing around with some options but any time I managed to prevent the error message the calculation would not terminate.

Clear["Global*"]

(diskLevels = NDEigenvalues[
{-Laplacian[u[x, y], {x, y}],
DirichletCondition[u[x, y] == 0, True]},
u[x, y], {x, y} \[Element] Disk[], 1000,
Method -> {"SpatialDiscretization" ->
{"FiniteElement",
"MeshOptions" ->
{"MaxCellMeasure" -> 0.0075}}}];) //
AbsoluteTiming

(* {0.657356, Null} *)

Length@diskLevels

(* 1000 *)

• Thanks! I thought I would note: the levels returned by this code may not be reliable. If you plot the differences here then they will not be distributed as $P \sim e^{(-s)}.$ But making MaxCellMeasure` even smaller recovers the true behavior, although at a much longer time. Sep 13 at 17:52