public double[] getEigenEnergy() {
        if (eigenEnergy != null) {
            // Already calculated
            return eigenEnergy;
        }
        ArrayList<Double> eigenEnergyList = new ArrayList<>();

//        for (int i = 1; i < intervals.size() - 1; i++) {
//			if (intervals.get(i).getY() <= intervals.get(i - 1).getY() && intervals.get(i).getY() < intervals.get(i + 1).getY()) {
//                for (double e : findIntervalEigenEnergies(i)) {    // FIXME
//                    if (!eigenEnergyList.contains(Double.valueOf(e))) {
//                        eigenEnergyList.add(e);
//                    }
//				}
//			}
//        }

        eigenEnergy = new double[eigenEnergyList.size()];
        for (int i = 0; i < eigenEnergy.length; i++) {
            eigenEnergy[i] = eigenEnergyList.get(i);
        }
        return eigenEnergy;
    }