def test_LISA_prop1(source_space_based): T_obs = 4 * u.yr # Observing time in years L = 2.5e9 * u.m # armlength in meters A_acc = 3e-15 * u.m / u.s / u.s f_acc_break_low = 0.4 * u.mHz.to("Hz") * u.Hz f_acc_break_high = 8.0 * u.mHz.to("Hz") * u.Hz f_IMS_break = 2.0 * u.mHz.to("Hz") * u.Hz A_IMS = 10e-12 * u.m Background = False T_type = "N" LISA_prop1 = detector.SpaceBased( "LISA_ESA", T_obs, L, A_acc, f_acc_break_low, f_acc_break_high, A_IMS, f_IMS_break, Background=Background, T_type=T_type, ) [lisa_sample_x, lisa_sample_y, lisa_SNR] = snr.Get_SNR_Matrix( source_space_based, LISA_prop1, var_x, sampleRate_x, var_y, sampleRate_y )
def test_LISA_params_Aaccvz(source_space_based, LISA_ESA): # Variable on x-axis var_x = "A_acc" # Variable on y-axis var_y = "z" [sample_x, sample_y, SNRMatrix] = snr.Get_SNR_Matrix(source_space_based, LISA_ESA, var_x, sampleRate_x, var_y, sampleRate_y) fig, ax = snrplot.Plot_SNR( var_x, sample_x, var_y, sample_y, SNRMatrix, display=False, return_plt=True, dl_axis=True, ) plt.close(fig) fig, ax = snrplot.Plot_SNR( var_x, sample_x, var_y, sample_y, SNRMatrix, display=False, return_plt=True, lb_axis=True, smooth_contours=False, ) plt.close(fig)
def test_aLIGO_params_MvIL(source_ground_based, aLIGO_gwinc): # Variable on x-axis var_x = "M" # Variable on y-axis var_y = "Infrastructure Temp" [sample_x, sample_y, SNRMatrix] = snr.Get_SNR_Matrix(source_ground_based, aLIGO_gwinc, var_x, sampleRate_x, var_y, sampleRate_y) fig, ax = fig, ax = snrplot.Plot_SNR( var_x, sample_x, var_y, sample_y, SNRMatrix, display_cbar=True, y_axis_label=False, smooth_contours=False, logLevels_min=-1.0, logLevels_max=5.0, y_axis_line=295, yticklabels_kwargs={ "rotation": 70, "y": 0.02 }, xlabels_kwargs={"labelpad": 0.45}, display=False, return_plt=True, ) plt.close(fig)
def test_aLIGO_params_SGvMST(source_ground_based, aLIGO_gwinc): # Variable on x-axis var_x = "Seismic Gamma" # Variable on y-axis var_y = "Materials Substrate Temp" [sample_x, sample_y, SNRMatrix] = snr.Get_SNR_Matrix(source_ground_based, aLIGO_gwinc, var_x, sampleRate_x, var_y, sampleRate_y) fig, ax = snrplot.Plot_SNR( var_x, sample_x, var_y, sample_y, SNRMatrix, cfill=False, display=False, return_plt=True, ) plt.close(fig) fig, ax = snrplot.Plot_SNR( var_x, sample_x, var_y, sample_y, SNRMatrix, smooth_contours=False, cfill=True, display=False, return_plt=True, x_axis_label=False, y_axis_label=False, ) plt.close(fig)
def test_NANOGrav_WN_params_Mvcadence(source_pta, NANOGrav_WN): source_pta.q = 1.0 source_pta.chi1 = 0.0 source_pta.chi2 = 0.0 source_pta.z = 0.1 source_pta.f_min = 1e-9 T_obs = 15.0 * u.yr # Observing time in years T_obs_min = 5.0 * u.yr T_obs_max = 30.0 * u.yr NANOGrav_WN.T_obs = [T_obs, T_obs_min, T_obs_max] NANOGrav_WN.sigma = [sigma, sigma_min, sigma_max] NANOGrav_WN.n_p = [N_p, N_p_min, N_p_max] NANOGrav_WN.cadence = [cadence, cadence_min, cadence_max] # Variable on x-axis var_x = "M" # Variable on y-axis var_y = "cadence" [sample_x, sample_y, SNRMatrix] = snr.Get_SNR_Matrix(source_pta, NANOGrav_WN, var_x, sampleRate_x, var_y, sampleRate_y) fig, ax = snrplot.Plot_SNR(var_x, sample_x, var_y, sample_y, SNRMatrix, display=False, return_plt=True) plt.close(fig)
def test_NANOGrav_WN_params_Mvchi1(source_pta, NANOGrav_WN): # Variable on x-axis var_x = "M" # Variable on y-axis var_y = "chi1" [sample_x, sample_y, SNRMatrix] = snr.Get_SNR_Matrix(source_pta, NANOGrav_WN, var_x, sampleRate_x, var_y, sampleRate_y) fig, ax = snrplot.Plot_SNR( var_x, sample_x, var_y, sample_y, SNRMatrix, cfill=False, display=False, return_plt=True, ) plt.close(fig) fig, ax = snrplot.Plot_SNR( var_x, sample_x, var_y, sample_y, SNRMatrix, smooth_contours=False, cfill=True, display=False, return_plt=True, ) plt.close(fig)
def test_aLIGO_params_LPvz(source_ground_based, aLIGO_gwinc): # Variable on x-axis var_x = "Laser Power" # Variable on y-axis var_y = "z" [sample_x, sample_y, SNRMatrix] = snr.Get_SNR_Matrix(source_ground_based, aLIGO_gwinc, var_x, sampleRate_x, var_y, sampleRate_y) fig, ax = snrplot.Plot_SNR( var_x, sample_x, var_y, sample_y, SNRMatrix, cfill=False, display=False, return_plt=True, x_axis_line=125, ) plt.close(fig) fig, ax = snrplot.Plot_SNR( var_x, sample_x, var_y, sample_y, SNRMatrix, smooth_contours=False, cfill=True, display=False, return_plt=True, x_axis_label=False, y_axis_label=False, ) plt.close(fig)
def test_aLIGO_params_ILvIT(source_ground_based, aLIGO_gwinc): # Variable on x-axis var_x = "Infrastructure Length" # Variable on y-axis var_y = "Infrastructure Temp" [sample_x, sample_y, SNRMatrix] = snr.Get_SNR_Matrix(source_ground_based, aLIGO_gwinc, var_x, sampleRate_x, var_y, sampleRate_y) fig, ax = snrplot.Plot_SNR( var_x, sample_x, var_y, sample_y, SNRMatrix, cfill=False, display=False, return_plt=True, x_axis_line=3995, ) plt.close(fig) fig, ax = snrplot.Plot_SNR( var_x, sample_x, var_y, sample_y, SNRMatrix, smooth_contours=False, cfill=True, display=False, return_plt=True, x_axis_label=False, y_axis_label=False, ) plt.close(fig)
def test_ET(source_ground_based): ET_filedirectory = load_directory + "/EinsteinTelescope/" ET_filename = "ET_D_data.txt" ET_filelocation = ET_filedirectory + ET_filename T_obs = 4 * u.yr # Observing time in years ET = detector.GroundBased("ET", T_obs, load_location=ET_filelocation, I_type="A") [et_sample_x, et_sample_y, et_SNR] = snr.Get_SNR_Matrix( source_ground_based, ET, var_x, sampleRate_x, var_y, sampleRate_y )
def test_NANOGrav_11yr(source_pta): load_name = "NANOGrav_11yr_S_eff.txt" load_location = load_directory + "/NANOGrav/StrainFiles/" + load_name T_obs = 11.42 * u.yr # Observing time in years nanograv = detector.PTA( "NANOGrav 11yr", T_obs=T_obs, load_location=load_location, I_type="E" ) [nanograv_sample_x, nanograv_sample_y, nanograv_SNR] = snr.Get_SNR_Matrix( source_pta, nanograv, var_x, sampleRate_x, var_y, sampleRate_y )
def test_pta_NANOGrav_WN(source_pta): NANOGrav_WN = detector.PTA( "NANOGrav, WN Only", N_p_nano, T_obs=T_nano, sigma=sigma_nano, cadence=cadence_nano, ) [NANOGrav_WN_sample_x, NANOGrav_WN_sample_y, NANOGrav_WN_SNR] = snr.Get_SNR_Matrix( source_pta, NANOGrav_WN, var_x, sampleRate_x, var_y, sampleRate_y )
def test_aLIGO(source_ground_based): aLIGO_filedirectory = load_directory + "/aLIGO/" aLIGO_filename = "aLIGODesign.txt" aLIGO_filelocation = aLIGO_filedirectory + aLIGO_filename T_obs = 4 * u.yr # Observing time in years aLIGO = detector.GroundBased( "aLIGO", T_obs, load_location=aLIGO_filelocation, I_type="A" ) [aLIGO_sample_x, aLIGO_sample_y, aLIGO_SNR] = snr.Get_SNR_Matrix( source_ground_based, aLIGO, var_x, sampleRate_x, var_y, sampleRate_y )
def test_SKA(source_pta): T_obs = 15 * u.yr # Observing time (years) sigma = 10 * u.ns.to("s") * u.s # rms timing residuals in nanoseconds N_p = 20 # Number of pulsars cadence = 1 / ( u.wk.to("yr") * u.yr ) # Avg observation cadence of 1 every week in num/year SKA = detector.PTA("SKA", N_p, T_obs=T_obs, sigma=sigma, cadence=cadence) [SKA_sample_x, SKA_sample_y, SKA_SNR] = snr.Get_SNR_Matrix( source_pta, SKA, var_x, sampleRate_x, var_y, sampleRate_y )
def test_NANOGrav_WN_params_Mvq(source_pta, NANOGrav_WN): # Variable on x-axis var_x = "M" # Variable on y-axis var_y = "q" [sample_x, sample_y, SNRMatrix] = snr.Get_SNR_Matrix(source_pta, NANOGrav_WN, var_x, sampleRate_x, var_y, sampleRate_y) [_, _, _] = snr.Get_SNR_Matrix(source_pta, NANOGrav_WN, var_x, sampleRate_x, var_y, sampleRate_y, method="PN") fig, ax = snrplot.Plot_SNR(var_x, sample_x, var_y, sample_y, SNRMatrix, display=False, return_plt=True) plt.close(fig)
def test_LISA_params_MvAIFO(source_space_based, LISA_ESA): # Variable on x-axis var_x = "chi1" # Variable on y-axis var_y = "A_IFO" [sample_x, sample_y, SNRMatrix] = snr.Get_SNR_Matrix(source_space_based, LISA_ESA, var_x, sampleRate_x, var_y, sampleRate_y) fig, ax = snrplot.Plot_SNR(var_x, sample_x, var_y, sample_y, SNRMatrix, display=False, return_plt=True) plt.close(fig)
def test_LISA_params_Tobsvfaccbreakhigh(source_space_based, LISA_ESA): # Variable on x-axis var_x = "T_obs" # Variable on y-axis var_y = "f_acc_break_high" [sample_x, sample_y, SNRMatrix] = snr.Get_SNR_Matrix(source_space_based, LISA_ESA, var_x, sampleRate_x, var_y, sampleRate_y) fig, ax = snrplot.Plot_SNR(var_x, sample_x, var_y, sample_y, SNRMatrix, display=False, return_plt=True) plt.close(fig)
def test_pta_NANOGrav_WN_GWB(source_pta): NANOGrav_WN_GWB = detector.PTA( "NANOGrav, WN and GWB", N_p_nano, T_obs=T_nano, sigma=sigma_nano, cadence=cadence_nano, sb_amp=4e-16, ) [ NANOGrav_WN_GWB_sample_x, NANOGrav_WN_GWB_sample_y, NANOGrav_WN_GWB_SNR, ] = snr.Get_SNR_Matrix( source_pta, NANOGrav_WN_GWB, var_x, sampleRate_x, var_y, sampleRate_y )
def test_NANOGrav_WN_params_MvTobs(source_pta, NANOGrav_WN): # Variable on x-axis var_x = "M" # Variable on y-axis var_y = "T_obs" [sample_x, sample_y, SNRMatrix] = snr.Get_SNR_Matrix(source_pta, NANOGrav_WN, var_x, sampleRate_x, var_y, sampleRate_y) fig, ax = snrplot.Plot_SNR( var_x, sample_x, var_y, sample_y, SNRMatrix, display=False, return_plt=True, xticklabels_kwargs={ "rotation": 70, "y": 0.02 }, ylabels_kwargs={"labelpad": -5}, ) plt.close(fig)
def test_LISA_params_MvAacc(source_space_based, LISA_ESA): # Variable on x-axis var_x = "z" # Variable on y-axis var_y = "A_acc" [sample_x, sample_y, SNRMatrix] = snr.Get_SNR_Matrix( source_space_based, LISA_ESA, var_x, sampleRate_x, var_y, sampleRate_y, inc=0.0, integral_consts=4.0, ) fig, ax = snrplot.Plot_SNR(var_x, sample_x, var_y, sample_y, SNRMatrix, display=False, return_plt=True) plt.close(fig)
f_IMS_break = 2. * u.mHz.to('Hz') * u.Hz A_acc = 3e-15 * u.m / u.s / u.s A_IMS = 10e-12 * u.m Background = False instrument = detector.SpaceBased('LISA_ESA', T_obs, L, A_acc, f_acc_break_low, f_acc_break_high, A_IMS, f_IMS_break, Background=Background, T_type='N') instrument.T_obs = [T_obs, T_obs_min, T_obs_max] instrument.L = [L, L_min, L_max] return instrument #Whole Hog Creation of SNR Matrices and Samples models = [0, 1, 2, 3, 4, 5] for model in models: instrument = Get_Instrument(model) source = Get_Source(model) [sample_x, sample_y, SNRMatrix] = snr.Get_SNR_Matrix(source, instrument, var_x, sampleRate_x, var_y, sampleRate_y)