public double[] findIntervalEigenEnergies(int index) {
        ArrayList<Double> energyList = new ArrayList<Double>();
        double[] eRange = getEnergyRange();
        for (int i = 1; i < eRange.length - 1; i++) {
            // if (VERBOSE) {
            // System.out.println("Index of interval: " + index + "    energy: " + eRange[i] + " erg, " +
            // Utils.erg2ev(eRange[i]) + " eV");
            // System.out.println("PropagationValueDerivative(" +
            // (index - 1) + ", " + eRange[i] + ") = " + getPropagationValueDerivative(index - 1,
            // eRange[i]));
            // System.out.println("PropagationValueDerivative(" +
            // (index) + ", " + eRange[i] + ") = " + getPropagationValueDerivative(index, eRange[i]));
            // System.out.println("PropagationValueDerivative(" + (index + 1) + ", " + eRange[i] + ") = "
            // + getPropagationValueDerivative(index + 1, eRange[i]));
            // }

            if (Double.isNaN(getPropagationValueDerivative(index, eRange[i - 1]))
                    || Double.isNaN(getPropagationValueDerivative(index, eRange[i]))
                    || Double.isNaN(getPropagationValueDerivative(index, eRange[i + 1]))) {
                System.out.println("NaNs detected!");
                continue;
            } else if (getPropagationValue(index, eRange[i]) > getPropagationValue(index, eRange[i - 1])
                    && getPropagationValue(index, eRange[i]) > getPropagationValue(index, eRange[i + 1])
                    && getPropagationValueDerivative(index, eRange[i - 1]) * getPropagationValueDerivative(index, eRange[i + 1]) < 0) {
                // energyList.add(eRange[i]);
                energyList.add(getPropagationEnergy(index, eRange[i - 1], eRange[i + 1]));
                // System.out.println("FOUND " + eRange[i] + "\tCALCULATED " + getPropagationEnergy(index,
                // eRange[i - 1], eRange[i + 1]));
            }
        }
        double[] energyArray = new double[energyList.size()];
        for (int i = 0; i < energyList.size(); i++) {
            energyArray[i] = Double.valueOf(energyList.get(i));
        }
        return energyArray;
    }