def get_theta(
    z_max
):  #set the theta min and theta max for each redshift to a physical range of 0.3Mpc - 2.5Mpc
    theta_min = []
    theta_max = []
    for red in range(0, 25):
        d1 = cosmo.comoving_distance([z_max[red]])
        thetamin = 0.3 * 180 / (numpy.pi * d1.value)
        thetamax = 2.5 * 180 / (numpy.pi * d1.value)
        theta_min.append(thetamin)
        theta_max.append(thetamax)
    return (theta_min, theta_max)
Example #2
0
def _initialize_cosmology():
    """Initlized internal __core__ variables storing the trend of redshift vs
    comoving distance. Default cosmology is from WMAP5.
    ----------------------------------------------------------------------------
    Args:
        None
    Returns:
        None
    """
    # TODO:
    #     Talk to someone about this. Are globals the best way to do this.
    redshift_array = np.linspace(0.0, 10.0, 1000)
    comov_array = WMAP5.comoving_distance(redshift_array)
    global _comov_dist_to_redshift_spline
    _comov_dist_to_redshift_spline = iu_spline(comov_array, redshift_array)
    global _initilized_cosmology
    _initilized_cosmology = True
    return None
Example #3
0
#       Planck13.comoving_distance(ar_z))
#
# plt.plot(ar_z, Planck13.comoving_distance(ar_z) / Planck13.comoving_distance(ar_z))
# plt.plot(ar_z, Planck13.comoving_distance(ar_z + ar_delta_z_planck13 - ar_delta_z_wmap7) /
#          Planck13.comoving_distance(ar_z))
# plt.show()

# print(scipy.misc.derivative(func=Planck13.comoving_distance, x0=2, dx=0.1))
# ar_dcmv_dz_planck13 = np.array([scipy.misc.derivative(
#     func=lambda x: Planck13.comoving_distance(x).value, x0=z, dx=0.01) for z in ar_z])
# ar_dcmv_dz_wmap7 = np.array([scipy.misc.derivative(
#     func=lambda x: WMAP7.comoving_distance(x).value, x0=z, dx=0.01) for z in ar_z])
# plt.plot(ar_z, -(ar_dcmv_dz_planck13 - ar_dcmv_dz_wmap7) * ar_delta_z_planck13)
# plt.show()
del scipy.misc

ar_base_cmvd_planck13 = Planck13.comoving_distance(ar_z)
ar_true_planck13_cmvd = Planck13.comoving_distance(ar_z + ar_delta_z_planck13)
ar_base_cmvd_wmap5 = WMAP5.comoving_distance(ar_z)
ar_wmap5_apparent_cmvd = WMAP5.comoving_distance(ar_z + ar_delta_z_planck13)
ar_base_cmvd_wmap7 = WMAP7.comoving_distance(ar_z)
ar_wmap7_apparent_cmvd = WMAP7.comoving_distance(ar_z + ar_delta_z_planck13)
ar_base_cmvd_wmap9 = WMAP9.comoving_distance(ar_z)
ar_wmap9_apparent_cmvd = WMAP9.comoving_distance(ar_z + ar_delta_z_planck13)
plt.plot(ar_z, ar_true_planck13_cmvd - ar_base_cmvd_planck13)
plt.plot(ar_z, ar_wmap5_apparent_cmvd - ar_base_cmvd_wmap5)
plt.plot(ar_z, ar_wmap7_apparent_cmvd - ar_base_cmvd_wmap7)
plt.plot(ar_z, ar_wmap9_apparent_cmvd - ar_base_cmvd_wmap9)
# plt.plot(ar_z, ar_wmap7_apparent_cmvd - ar_true_planck13_cmvd)
plt.show()
Example #4
0
    def M0_to_kg(M0):
        return M0 * 1.98847e30

    if action == 'redshiftcalc':

        H0 = 70
        distance = float(form.getfirst("distance", ""))
        redshift = round((distance * H0) / (const.c * 1e-3),
                         4)  # const.c is in meters, converting to km

        print(json.dumps({'redshift': redshift}))

    elif action == 'distancecalc':

        redshift = float(form.getfirst("redshift", ""))
        distance = WMAP5.comoving_distance(redshift)

        print(json.dumps({'distance': distance}))

    elif action == 'orbitalsepcalc':

        orbital_p = float(form.getfirst("orbital_p", ""))
        total_m = float(form.getfirst("total_m", ""))
        orbital_s = s_to_yrs(
            np.sqrt((4 * (const.pi**2) * (pc_to_m(orbital_s) / 2)**3) /
                    (const.G * M0_to_kg(total_m))))

        print(json.dumps({'orbital_s': orbital_s}))

    elif action == 'orbitalpercalc':