#!/usr/bin/python """ cosmodist.py -- compute comoving distance in a flat-Lambda universe cosmodist.py z H0 Omega_m [Omega_k] [w] z = redshift H0 = present day Hubble constant in km/s/Mpc Omega_m = matter density / critical density [Omega_k] = curvature parameter, default = 0 [w] = equation-of-state parameter, w=-1 Returns z, d_c(z), D_C(z), D_M(z) d_C(z) = \int_0^z H_0/H(z') dz' D_C(z) = (c/H_0) d_c(z) D_M(z) = D_C(z) for Omega_k=0 (c/H_0)*sin(sqrt(-Omega_k)*d_c)/sqrt(-Omega_k) otherwise [using sin(ix) = i sinh(x)] d_c is dimensionless, D_C and D_M are in physical Mpc for specified H0 Multiplying D_M by (1+z) gives the luminosity distance D_L. """ import cosmodist_subs as cs import sys # needed for command line reads below omega_k=0.0 w=-1.0 redshift=float(sys.argv[1]) h0=float(sys.argv[2]) omega_m=float(sys.argv[3]) if (len(sys.argv)>4): omega_k=float(sys.argv[4]) if (len(sys.argv)>5): w=float(sys.argv[5]) [dc,dcphys,dmphys]=cs.cosmodist(redshift,h0,omega_m,omega_k,w) print '%.3f %8.5f %8.2f %8.2f\n' % (redshift,dc,dcphys,dmphys)