Beispiel #1
0
def kernel_m_intra(r, mlist, kF, label='3'):
    fname =  "data/rpa-m%s-Rmin=%g-Rmax=%g-N=%g-Mmax=%d-kF=%g.npz" % (label, r.min(), r.max(), len(r), mlist[-1], kF)
    try: 
        data = np.load(fname); 
        print "Loading RPA m-resolved intraband kernel from", fname
        print "Check r"
        assert linalg.norm(r - data['r'])<1e-8, "r vectors match"
        assert linalg.norm(np.array(mlist) - data['mlist'])<1e-8, "m lists match"
        return data['Q']
    except: 
        import traceback
        traceback.print_exc()
        print "cannot load", fname, ": recalculating"
        Q = _rpam.kernel_m_intra(list(r), list(mlist), kF)
        Q = np.array(Q)
        np.savez(fname, Q=Q, r=r, mlist=np.array(mlist))
        return Q
Beispiel #2
0
def kernel_m_intra(r, mlist, kF, label='3'):
    fname = "data/rpa-m%s-Rmin=%g-Rmax=%g-N=%g-Mmax=%d-kF=%g.npz" % (
        label, r.min(), r.max(), len(r), mlist[-1], kF)
    try:
        data = np.load(fname)
        print "Loading RPA m-resolved intraband kernel from", fname
        print "Check r"
        assert linalg.norm(r - data['r']) < 1e-8, "r vectors match"
        assert linalg.norm(np.array(mlist) -
                           data['mlist']) < 1e-8, "m lists match"
        return data['Q']
    except:
        import traceback
        traceback.print_exc()
        print "cannot load", fname, ": recalculating"
        Q = _rpam.kernel_m_intra(list(r), list(mlist), kF)
        Q = np.array(Q)
        np.savez(fname, Q=Q, r=r, mlist=np.array(mlist))
        return Q
Beispiel #3
0
 def do_kernel_m_intra(r, mlist, kF):
     return _rpam.kernel_m_intra(list(r), list(mlist), kF)
Beispiel #4
0
 def do_kernel_m_intra(r, mlist, kF):
     return _rpam.kernel_m_intra(list(r), list(mlist), kF)