コード例 #1
0
def steiltjes_from_gamma(s_vector, gamma_function, itr=200):
    return (1 / s_vector) * (
        1 + fixed_point(gamma_function, 1 / s_vector, itr, 1e-2))
コード例 #2
0
def half_circle_stieltjes_gamma(s_vector, iterations):
    return -(1 / s_vector) * (
        fixed_point(half_circle_gamma_s_recip, s_vector, iterations) + 1)
コード例 #3
0
def steiltjes_from_r_transform(s_vector, R_Transform, itr=200):
    return fixed_point(R_Transform, s_vector, itr, 1e-3)
コード例 #4
0
def quarter_gamma_s_fixed(z):
    return fixed_point(quarter_gamma_s, z, 1000)
コード例 #5
0
def quarter_gamma_fixed(z, alpha):
    return fixed_point(quarter_gamma4, z, 100, func_param=alpha)
コード例 #6
0
def gamma(z):
    check = fixed_point(gamma_fixed, z, 100)
    return check
コード例 #7
0
def inverse_gamma(z_vector):
    check = fixed_point(inv_gamma_fixed, z_vector, 100, unique_half_plane=True)
    return check
コード例 #8
0
import seaborn

size = 100
rows = 100
cols = 100


def gamma(z, gamma_z):
    return np.power(gamma_z / z, 1 / 4) - 1


y = 1e-6
x, step = np.linspace(0.01, 10, 100, retstep=True)
s_vector = x + 1j * y
steiltjes_values = (1 / s_vector) * (
    1 + fixed_point(gamma, 1 / s_vector, 100, 1e-2))
aed = estimated_pdf(steiltjes_values)
theoretic_capacity = aed_capacity(x, aed, 1 / cols, rows, step=step)

bins = int(size / 2)
main_terms = []
no_irs = []
irs = []
numeric_cacacity = []
average = 10
for i in range(average):
    H = c_rand(rows, cols) @ c_rand(rows, cols) @ c_rand(rows, cols)
    HH = H @ np.conj(H.T)
    total_irs = HH
    e_val_total_irs, e_vec_total_irs = np.linalg.eig(total_irs)
    irs.append(np.real(e_val_total_irs))