예제 #1
0
    """
    ii = 0
    plt.figure()
    while ii <= numev:
        vec = evec[:, ii]
        nvec = slv.normalize(vec)
        nvec = float(scalingfactor) * nvec + ev[ii]
        plt.subplot(1, 2, 1)  #first plot
        plt.plot(xx, pot)
        plt.title('Potential, eigenstates, Erw(x)')
        plt.plot(np.array(erw), ev, 'x', color='blue')
        plt.plot(xx, nvec)
        plt.xlabel('x[Bohr]')
        plt.ylabel('Energy[Hartree]')
        plt.plot(xx, np.zeros(nn + 1) + ev[ii], color='grey')
        plt.xlim(di.getxmin(), di.getxmax())
        plt.ylim(float(llimit), float(ulimit))
        ii += 1
    plt.subplot(1, 2, 2)  #second plot
    plt.plot(unschaerfe, ev, 'x', color='blue')
    plt.title('$\sigma_x$')
    plt.xlabel('x[Bohr]')

    plt.savefig("schroedinger.pdf")


plotwavefunc(NUMEV, EIVE, di.readcalcpotential("potential.dat"), ERW,
             di.readcalceigenval("energies.dat"),
             di.readcalcxvalue("potential.dat"), N, UNSCHAERFE, ARGS.scale,
             ARGS.ulimit, ARGS.llimit)
예제 #2
0
def test_energies1():
    """The function tests the energies
    """
    refenergies1 = di.readcalceigenval('reference_files/energies1.dat')
    energies1 = di.readcalceigenval('testfiles/energietest1.dat')
    assert np.all(refenergies1-energies1 < 0.1)
예제 #3
0
def test_energies():
    """The function tests the energies
    """
    refenergies4 = di.readcalceigenval('reference_files/energies4.dat')
    energies4 = di.readcalceigenval('testfiles/energietest4.dat')
    assert np.all(refenergies4 - energies4 < 0.01)