Beispiel #1
0
def F3i_22_I_eigs_list(E_list, L, F3_22_list, I, flip=False):
    out = []
    for i in range(len(E_list)):
        E = E_list[i]
        F3 = F3_22_list[i]

        if flip == False:  # project before inverting F3
            F3_I = proj.irrep_proj_22(F3, E, L, I)  # works for all shells
            if F3_I.shape == ():
                F3i_I = 1 / F3_I
                F3i_I_eigs = F3i_I
            else:
                F3i_I = defns.chop(LA.inv(F3_I))

        elif flip == True:  # invert F3 before projecting
            F3i = defns.chop(LA.inv(F3))
            F3i_I = proj.irrep_proj_22(F3i, E, L, I)

        F3i_I_eigs = defns.chop(np.array(sorted(LA.eigvals(F3i_I))).real)

        out.append(F3i_I_eigs)
    return out
Beispiel #2
0
def F3i_22_I_eigs(E, L, a0, r0, P0, a2, alpha, I):
    F3 = F3mat22(E, L, a0, r0, P0, a2, alpha)
    F3i = chop(LA.inv(F3))
    F3i_I = proj.irrep_proj_22(F3i, E, L, I)
    return np.array(sorted(LA.eigvals(F3i_I))).real
Beispiel #3
0
a0 = 0.1
a2 = 0
r0 = 0
P0 = 0

E = 4.24216326
L = 5

I = 'E+'

if a2 == 0:
    F3 = F3_mat.F3mat00(E, L, a0, r0, P0, a2, alpha)
    F3_I = proj.irrep_proj_00(F3, E, L, I)
elif a0 == r0 == P0 == 0:
    F3 = F3_mat.F3mat22(E, L, a0, r0, P0, a2, alpha)
    F3_I = proj.irrep_proj_22(F3, E, L, I)
else:
    F3 = F3_mat.F3mat(E, L, a0, r0, P0, a2, alpha)
    F3_I = proj.irrep_proj(F3, E, L, I)

F3i_I = defns.chop(LA.inv(F3_I))
w_list, v_list = LA.eig(F3i_I)

F3i = defns.chop(LA.inv(F3))

w0, v0 = AD.smallest_eig_evec(
    F3i)  # Need to make evec_decomp() for 00 and 22 cases

proj.evec_decomp(v0, E, L, I)

s = 0