Example #1
0
def make_SDP_ccc(delta, gap_dict, NSO):
    delta = context(delta)
    pvms = []
    for sector in ("S", "T", "A"):
        if sector is not "A":
            spins = [spin for spin in cbs.keys() if spin % 2 == 0]
        else:
            spins = [spin for spin in cbs.keys() if spin % 2 != 0]
        for spin in spins:
            pvms.append(make_F(delta, sector, spin, gap_dict, NSO))

    norm = make_F(delta, "A", 1, None, NSO, Delta=1 + 2 * context.epsilon)
    obj = make_F(delta, "S", 0, None, NSO, Delta=0)
    return context.sumrule_to_SDP(norm, obj, pvms)
Example #2
0
def make_SDP_for_cc(delta, gap_dict={0: 1}):
    delta = context(delta)
    Fs = [make_F(delta, spin, gap_dict) for spin in cbs.keys()]
    mat_F = context.F_minus_matrix(delta)
    norm = context.dot(mat_F, context.gBlock(2, 3, 0, 0))
    obj = context.dot(mat_F, context.gBlock(0, 0, 0, 0))
    return context.SDP(norm, obj, Fs)
Example #3
0
def make_SDP_epsilon_prime(delta, gap_dict):
    delta = context(delta)
    Fs = [make_F(delta, spin, gap_dict) for spin in cbs.keys()]
    mat_F = context.F_minus_matrix(delta)
    Fs += [context.dot(mat_F, context.gBlock(0, delta, 0, 0))]
    norm = context.dot(mat_F, context.gBlock(0, 0, 0, 0))
    obj = norm * 0
    return context.SDP(norm, obj, Fs)
Example #4
0
File: 3dOn.py Project: selpoG/cboot
def make_SDP(delta, gap_dict, NSO=2):
    delta = context(delta)
    pvms = []
    for sector in ("S", "T", "A"):
        if sector is not "A":
            spins = [spin for spin in cbs.keys() if spin % 2 == 0]
        else:
            spins = [spin for spin in cbs.keys() if spin % 2 != 0]
        for spin in spins:
            pvms.append(make_F(delta, sector, spin, gap_dict, NSO))

    norm_F = context.F_minus_matrix(delta).dot(context.gBlock(0, 0, 0, 0))
    norm_H = context.F_plus_matrix(delta).dot(context.gBlock(0, 0, 0, 0))
    norm = np.concatenate((context.null_ftype, norm_F, norm_H))

    obj = norm * 0
    return context.SDP(norm, obj, pvms)