coscon.util module

coscon.util.C_n_resonance_exact(R_TES_n: Union[float, np.ndarray[np.float64]], r_s_n: Union[float, np.ndarray[np.float64]], L_n: Union[float, np.ndarray[np.float64]], L_com: float, omega_n: np.ndarray[np.float64]) → np.ndarray[np.float64][source]
coscon.util.C_n_resonance_naive(L_n: Union[float, np.ndarray[np.float64]], omega_n: np.ndarray[np.float64]) → np.ndarray[np.float64][source]
coscon.util.Z_com_omega_i(L_com: float, omega_i: np.ndarray[np.float64]) → np.ndarray[np.complex128][source]
coscon.util.Z_n_omega_i(R_TES_n: Union[float, np.ndarray[np.float64]], r_s_n: Union[float, np.ndarray[np.float64]], L_n: Union[float, np.ndarray[np.float64]], C_n: np.ndarray[np.float64], omega_i: np.ndarray[np.float64]) → np.ndarray[np.complex128][source]

Impedance of a single cryogenic filter leg n at angular freq. omega_i

Eq. 1

Return 2d-array, where the 1st dim as i & 2nd dim as n

coscon.util.Z_net_omega_i(Z_n_omega_i: np.ndarray[np.complex128]) → np.ndarray[np.complex128][source]

Impedance of full network at angular freq. omega_i

Eq. 2

coscon.util.Z_tot_i(R_TES_n: Union[float, np.ndarray[np.float64]], r_s_n: Union[float, np.ndarray[np.float64]], L_n: Union[float, np.ndarray[np.float64]], C_n: np.ndarray[np.float64], L_com: float, omega_i: np.ndarray[np.float64]) → np.ndarray[np.complex128][source]
coscon.util.Z_tot_norm_sq_i(R_TES_n: Union[float, np.ndarray[np.float64]], r_s_n: Union[float, np.ndarray[np.float64]], L_n: Union[float, np.ndarray[np.float64]], C_n: np.ndarray[np.float64], L_com: float, omega_i: np.ndarray[np.float64]) → np.ndarray[np.float64][source]
coscon.util.d_Z_tot_norm_sq_d_omega_i_over_2(R_TES_n: Union[float, np.ndarray[np.float64]], r_s_n: Union[float, np.ndarray[np.float64]], L_n: Union[float, np.ndarray[np.float64]], C_n: np.ndarray[np.float64], L_com: float, omega_i: np.ndarray[np.float64]) → np.ndarray[np.float64][source]
coscon.util.d_Z_tot_norm_sq_d_omega_over_2_for_optimize(omega_i: np.ndarray[np.float64], R_TES_n: Union[float, np.ndarray[np.float64]], r_s_n: Union[float, np.ndarray[np.float64]], L_n: Union[float, np.ndarray[np.float64]], C_n: np.ndarray[np.float64], L_com: float) → np.ndarray[np.float64][source]
coscon.util.d_Z_tot_norm_sq_d_omega_over_2_for_optimize_C(C_n: np.ndarray[np.float64], R_TES_n: Union[float, np.ndarray[np.float64]], r_s_n: Union[float, np.ndarray[np.float64]], L_n: Union[float, np.ndarray[np.float64]], L_com: float, omega_i: np.ndarray[np.float64]) → np.ndarray[np.float64][source]
coscon.util.from_Cl_to_Dl(spectra, l)[source]

Convert from Cl scale to Dl scale.

D_l = [l(l+1)/2pi] C_l

coscon.util.from_Dl_to_Cl(spectra, l)[source]

Convert from Dl scale to Cl scale.

D_l = [l(l+1)/2pi] C_l

coscon.util.geometric_matrix(n, r)[source]

Generate a matrix with coefficients in geometric series.

coscon.util.joshian_matrix(n, nearest, next_nearest, floor)[source]

generate a matrix based on Josh’s simple assumption

coscon.util.leakage_power_crosstalk(R_TES_i: Union[float, np.ndarray[np.float64]], Z_n_omega_i: np.ndarray[np.complex128], Z_com_omega_n: np.ndarray[np.complex128]) → np.ndarray[np.complex128][source]
coscon.util.leakage_power_crosstalk_exact(R_TES_i: Union[float, np.ndarray[np.float64]], Z_n_omega_i: np.ndarray[np.complex128], Z_com_omega_n: np.ndarray[np.complex128]) → np.ndarray[np.complex128][source]
coscon.util.omega_i_resonance_exact(R_TES_n: Union[float, np.ndarray[np.float64]], r_s_n: Union[float, np.ndarray[np.float64]], L_n: Union[float, np.ndarray[np.float64]], C_n: np.ndarray[np.float64], L_com: float) → np.ndarray[np.float64][source]
coscon.util.omega_i_resonance_naive(L_n: Union[float, np.ndarray[np.float64]], C_n: np.ndarray[np.float64]) → np.ndarray[np.float64][source]
coscon.util.primary_signal_and_leakage_current_crosstalk_n_omega_i(Z_n_omega_i: np.ndarray[np.complex128], Z_com_omega_i: np.ndarray[np.complex128]) → np.ndarray[np.complex128][source]

Primary signal & leakage current crosstalk at leg n & angular freq. omega_i

Eq. 7

Return 2d-array, where the 1st dim as i & 2nd dim as n

coscon.util.total_crosstalk_matrix(R_TES_n: Union[float, np.ndarray[np.float64]], r_s_n: Union[float, np.ndarray[np.float64]], L_n: Union[float, np.ndarray[np.float64]], C_n: np.ndarray[np.float64], L_com: float, omega_i: np.ndarray[np.float64]) → np.ndarray[np.float64][source]

Total crosstalk with 2 approximations in Montgomery’s paper

See total_crosstalk_matrix_exact for an exact result.

coscon.util.total_crosstalk_matrix_exact(R_TES_n: Union[float, np.ndarray[np.float64]], r_s_n: Union[float, np.ndarray[np.float64]], L_n: Union[float, np.ndarray[np.float64]], C_n: np.ndarray[np.float64], L_com: float, omega_i: np.ndarray[np.float64]) → np.ndarray[np.float64][source]

Total crosstalk without approximations.

coscon.util.unique_matrix(n)[source]

generate a matrix with each entry to be unique.