lalsuite 7.26.2.dev20251218__cp314-cp314t-manylinux_2_28_x86_64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- lal/__init__.py +145 -0
- lal/_lal.cpython-314t-x86_64-linux-gnu.so +0 -0
- lal/_lal_swig.py +12 -0
- lal/antenna.py +1200 -0
- lal/git_version.py +64 -0
- lal/gpstime.py +233 -0
- lal/iterutils.py +408 -0
- lal/pipeline.py +3139 -0
- lal/rate.py +2455 -0
- lal/series.py +244 -0
- lal/utils/__init__.py +29 -0
- lal/utils/cache.py +379 -0
- lal/utils/series.py +277 -0
- lalapps/__init__.py +26 -0
- lalapps/bin/lal_cache +0 -0
- lalapps/bin/lal_fftw_wisdom +0 -0
- lalapps/bin/lal_fftwf_wisdom +0 -0
- lalapps/bin/lal_simd_detect +0 -0
- lalapps/bin/lal_tconvert +0 -0
- lalapps/bin/lal_version +0 -0
- lalapps/bin/lalapps_ComputeAntennaPattern +16 -0
- lalapps/bin/lalapps_ComputeFstatBenchmark +16 -0
- lalapps/bin/lalapps_ComputeFstatLatticeCount +16 -0
- lalapps/bin/lalapps_ComputeFstatMCUpperLimit +16 -0
- lalapps/bin/lalapps_ComputeFstatistic_v2 +16 -0
- lalapps/bin/lalapps_ComputePSD +16 -0
- lalapps/bin/lalapps_CopySFTs +16 -0
- lalapps/bin/lalapps_DistanceVsMass +0 -0
- lalapps/bin/lalapps_DriveHoughMulti +16 -0
- lalapps/bin/lalapps_FstatMetric_v2 +16 -0
- lalapps/bin/lalapps_HierarchSearchGCT +16 -0
- lalapps/bin/lalapps_HierarchicalSearch +16 -0
- lalapps/bin/lalapps_MakeSFTDAG +16 -0
- lalapps/bin/lalapps_MakeSFTs +16 -0
- lalapps/bin/lalapps_Makefakedata_v4 +16 -0
- lalapps/bin/lalapps_Makefakedata_v5 +16 -0
- lalapps/bin/lalapps_PredictFstat +16 -0
- lalapps/bin/lalapps_PrintDetectorState +16 -0
- lalapps/bin/lalapps_SFTclean +16 -0
- lalapps/bin/lalapps_SFTvalidate +16 -0
- lalapps/bin/lalapps_StringAddFrame +0 -0
- lalapps/bin/lalapps_StringSearch +0 -0
- lalapps/bin/lalapps_Weave +16 -0
- lalapps/bin/lalapps_WeaveCompare +16 -0
- lalapps/bin/lalapps_WeaveConcat +16 -0
- lalapps/bin/lalapps_WeaveSetup +16 -0
- lalapps/bin/lalapps_WriteSFTsfromSFDBs +16 -0
- lalapps/bin/lalapps_animate +0 -0
- lalapps/bin/lalapps_binj +0 -0
- lalapps/bin/lalapps_blindinj +0 -0
- lalapps/bin/lalapps_cache +16 -0
- lalapps/bin/lalapps_calfacs +0 -0
- lalapps/bin/lalapps_cbc_stochasticbank +0 -0
- lalapps/bin/lalapps_chirplen +0 -0
- lalapps/bin/lalapps_coh_PTF_inspiral +0 -0
- lalapps/bin/lalapps_coinj +0 -0
- lalapps/bin/lalapps_combine_crosscorr_toplists +16 -0
- lalapps/bin/lalapps_compareFstats +16 -0
- lalapps/bin/lalapps_compareSFTs +16 -0
- lalapps/bin/lalapps_create_time_correction_ephemeris +16 -0
- lalapps/bin/lalapps_dumpSFT +16 -0
- lalapps/bin/lalapps_effdist +0 -0
- lalapps/bin/lalapps_exc_resp +0 -0
- lalapps/bin/lalapps_fftw_wisdom +16 -0
- lalapps/bin/lalapps_fftwf_wisdom +16 -0
- lalapps/bin/lalapps_fits_header_getval +16 -0
- lalapps/bin/lalapps_fits_header_list +16 -0
- lalapps/bin/lalapps_fits_overview +16 -0
- lalapps/bin/lalapps_fits_table_list +16 -0
- lalapps/bin/lalapps_fr_ninja +0 -0
- lalapps/bin/lalapps_frextr +0 -0
- lalapps/bin/lalapps_frinfo +0 -0
- lalapps/bin/lalapps_frjoin +0 -0
- lalapps/bin/lalapps_frread +0 -0
- lalapps/bin/lalapps_frview +0 -0
- lalapps/bin/lalapps_gwf2xml +0 -0
- lalapps/bin/lalapps_heterodyne_pulsar +16 -0
- lalapps/bin/lalapps_inspawgfile +0 -0
- lalapps/bin/lalapps_inspfrinj +0 -0
- lalapps/bin/lalapps_inspinj +0 -0
- lalapps/bin/lalapps_inspiralDistance +0 -0
- lalapps/bin/lalapps_knope +16 -0
- lalapps/bin/lalapps_knope_automation_script +16 -0
- lalapps/bin/lalapps_knope_collate_results +16 -0
- lalapps/bin/lalapps_knope_result_page +16 -0
- lalapps/bin/lalapps_makeblindinj +85 -0
- lalapps/bin/lalapps_makeblindinj_himass +67 -0
- lalapps/bin/lalapps_ninja +0 -0
- lalapps/bin/lalapps_path2cache +16 -0
- lalapps/bin/lalapps_power +0 -0
- lalapps/bin/lalapps_pulsar_crosscorr_v2 +16 -0
- lalapps/bin/lalapps_pulsar_frequency_evolution +16 -0
- lalapps/bin/lalapps_pulsar_parameter_estimation_nested +16 -0
- lalapps/bin/lalapps_random_bank +0 -0
- lalapps/bin/lalapps_randombank +0 -0
- lalapps/bin/lalapps_run_pulsar_crosscorr_v2 +16 -0
- lalapps/bin/lalapps_searchsum2cache +16 -0
- lalapps/bin/lalapps_spec_avg +16 -0
- lalapps/bin/lalapps_spec_avg_long +16 -0
- lalapps/bin/lalapps_spec_coherence +16 -0
- lalapps/bin/lalapps_spininj +0 -0
- lalapps/bin/lalapps_splitSFTs +16 -0
- lalapps/bin/lalapps_splitbank +0 -0
- lalapps/bin/lalapps_ssbtodetector +16 -0
- lalapps/bin/lalapps_synthesizeBstatMC +16 -0
- lalapps/bin/lalapps_synthesizeLVStats +16 -0
- lalapps/bin/lalapps_synthesizeTransientStats +16 -0
- lalapps/bin/lalapps_tconvert +16 -0
- lalapps/bin/lalapps_tmpltbank +0 -0
- lalapps/bin/lalapps_version +0 -0
- lalapps/bin/lalapps_xtefitstoframe +0 -0
- lalapps/bin/lalburst_version +0 -0
- lalapps/bin/lalfr-cat +0 -0
- lalapps/bin/lalfr-cksum +0 -0
- lalapps/bin/lalfr-cut +0 -0
- lalapps/bin/lalfr-dump +0 -0
- lalapps/bin/lalfr-fmt +0 -0
- lalapps/bin/lalfr-paste +0 -0
- lalapps/bin/lalfr-print +0 -0
- lalapps/bin/lalfr-split +0 -0
- lalapps/bin/lalfr-stat +0 -0
- lalapps/bin/lalfr-stream +0 -0
- lalapps/bin/lalfr-vis +0 -0
- lalapps/bin/lalframe_version +0 -0
- lalapps/bin/lalinference_bench +0 -0
- lalapps/bin/lalinference_burst +0 -0
- lalapps/bin/lalinference_datadump +0 -0
- lalapps/bin/lalinference_injectedlike +0 -0
- lalapps/bin/lalinference_mpi_wrapper +59 -0
- lalapps/bin/lalinference_nest +0 -0
- lalapps/bin/lalinference_version +0 -0
- lalapps/bin/lalinspiral_version +0 -0
- lalapps/bin/lalmetaio_version +0 -0
- lalapps/bin/lalpulsar_ComputeAntennaPattern +0 -0
- lalapps/bin/lalpulsar_ComputeFstatBenchmark +0 -0
- lalapps/bin/lalpulsar_ComputeFstatLatticeCount +0 -0
- lalapps/bin/lalpulsar_ComputeFstatMCUpperLimit +0 -0
- lalapps/bin/lalpulsar_ComputeFstatistic_v2 +0 -0
- lalapps/bin/lalpulsar_ComputePSD +0 -0
- lalapps/bin/lalpulsar_DriveHoughMulti +0 -0
- lalapps/bin/lalpulsar_FstatMetric_v2 +0 -0
- lalapps/bin/lalpulsar_HierarchSearchGCT +0 -0
- lalapps/bin/lalpulsar_HierarchicalSearch +0 -0
- lalapps/bin/lalpulsar_MakeSFTs +0 -0
- lalapps/bin/lalpulsar_Makefakedata_v4 +0 -0
- lalapps/bin/lalpulsar_Makefakedata_v5 +0 -0
- lalapps/bin/lalpulsar_PredictFstat +0 -0
- lalapps/bin/lalpulsar_PrintDetectorState +0 -0
- lalapps/bin/lalpulsar_SFTclean +0 -0
- lalapps/bin/lalpulsar_SFTvalidate +0 -0
- lalapps/bin/lalpulsar_Weave +0 -0
- lalapps/bin/lalpulsar_WeaveCompare +0 -0
- lalapps/bin/lalpulsar_WeaveConcat +0 -0
- lalapps/bin/lalpulsar_WeaveSetup +0 -0
- lalapps/bin/lalpulsar_WriteSFTsfromSFDBs +0 -0
- lalapps/bin/lalpulsar_compareFstats +0 -0
- lalapps/bin/lalpulsar_compareSFTs +0 -0
- lalapps/bin/lalpulsar_create_time_correction_ephemeris +0 -0
- lalapps/bin/lalpulsar_crosscorr_v2 +0 -0
- lalapps/bin/lalpulsar_dumpSFT +0 -0
- lalapps/bin/lalpulsar_fits_header_getval +0 -0
- lalapps/bin/lalpulsar_fits_header_list +0 -0
- lalapps/bin/lalpulsar_fits_overview +0 -0
- lalapps/bin/lalpulsar_fits_table_list +0 -0
- lalapps/bin/lalpulsar_frequency_evolution +0 -0
- lalapps/bin/lalpulsar_heterodyne +0 -0
- lalapps/bin/lalpulsar_parameter_estimation_nested +0 -0
- lalapps/bin/lalpulsar_spec_avg +0 -0
- lalapps/bin/lalpulsar_spec_avg_long +0 -0
- lalapps/bin/lalpulsar_spec_coherence +0 -0
- lalapps/bin/lalpulsar_splitSFTs +0 -0
- lalapps/bin/lalpulsar_ssbtodetector +0 -0
- lalapps/bin/lalpulsar_synthesizeBstatMC +0 -0
- lalapps/bin/lalpulsar_synthesizeLVStats +0 -0
- lalapps/bin/lalpulsar_synthesizeTransientStats +0 -0
- lalapps/bin/lalpulsar_version +0 -0
- lalapps/bin/lalsim-bh-qnmode +0 -0
- lalapps/bin/lalsim-bh-ringdown +0 -0
- lalapps/bin/lalsim-bh-sphwf +0 -0
- lalapps/bin/lalsim-burst +0 -0
- lalapps/bin/lalsim-detector-noise +0 -0
- lalapps/bin/lalsim-detector-strain +0 -0
- lalapps/bin/lalsim-inject +0 -0
- lalapps/bin/lalsim-inspiral +0 -0
- lalapps/bin/lalsim-ns-eos-table +0 -0
- lalapps/bin/lalsim-ns-mass-radius +0 -0
- lalapps/bin/lalsim-ns-params +0 -0
- lalapps/bin/lalsim-sgwb +0 -0
- lalapps/bin/lalsim-unicorn +0 -0
- lalapps/bin/lalsimulation_version +0 -0
- lalapps/cosmicstring.py +691 -0
- lalapps/data/BNSMasses.dat +65022 -0
- lalapps/data/CorrelationMatrix.csv +15 -0
- lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF1_META.dat +1882 -0
- lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF2_META.dat +1939 -0
- lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF3_META.dat +1784 -0
- lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF4_META.dat +2074 -0
- lalapps/data/LALSimNeutronStarEOS_ALF1.dat +435 -0
- lalapps/data/LALSimNeutronStarEOS_ALF2.dat +453 -0
- lalapps/data/LALSimNeutronStarEOS_ALF3.dat +441 -0
- lalapps/data/LALSimNeutronStarEOS_ALF4.dat +441 -0
- lalapps/data/LALSimNeutronStarEOS_AP1.dat +212 -0
- lalapps/data/LALSimNeutronStarEOS_AP2.dat +212 -0
- lalapps/data/LALSimNeutronStarEOS_AP3.dat +212 -0
- lalapps/data/LALSimNeutronStarEOS_AP4.dat +210 -0
- lalapps/data/LALSimNeutronStarEOS_APR.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_APR4_EPP.dat +1447 -0
- lalapps/data/LALSimNeutronStarEOS_BBB2.dat +84 -0
- lalapps/data/LALSimNeutronStarEOS_BGN1H1.dat +123 -0
- lalapps/data/LALSimNeutronStarEOS_BHF_BBB2.dat +499 -0
- lalapps/data/LALSimNeutronStarEOS_BL_CHIRAL_META.dat +1534 -0
- lalapps/data/LALSimNeutronStarEOS_BPAL12.dat +61 -0
- lalapps/data/LALSimNeutronStarEOS_BSK19.dat +310 -0
- lalapps/data/LALSimNeutronStarEOS_BSK20.dat +310 -0
- lalapps/data/LALSimNeutronStarEOS_BSK21.dat +310 -0
- lalapps/data/LALSimNeutronStarEOS_ENG.dat +108 -0
- lalapps/data/LALSimNeutronStarEOS_FPS.dat +129 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_BSK14_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_DHSL59_BSK24.dat +1009 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_DHSL69_BSK24.dat +1009 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_F0_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_H1_BSK24.dat +1009 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_H2_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_H3_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_H4_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_H5_BSK24.dat +1009 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_LN55_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_SLY5_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GNH3.dat +71 -0
- lalapps/data/LALSimNeutronStarEOS_GPPVA_DD2_BSK24.dat +1009 -0
- lalapps/data/LALSimNeutronStarEOS_GPPVA_DDME2_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GPPVA_FSU2H_BSK24.dat +1009 -0
- lalapps/data/LALSimNeutronStarEOS_GPPVA_FSU2_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GPPVA_NL3WRL55_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GS1.dat +136 -0
- lalapps/data/LALSimNeutronStarEOS_GS2.dat +100 -0
- lalapps/data/LALSimNeutronStarEOS_H1.dat +114 -0
- lalapps/data/LALSimNeutronStarEOS_H2.dat +114 -0
- lalapps/data/LALSimNeutronStarEOS_H3.dat +98 -0
- lalapps/data/LALSimNeutronStarEOS_H4.dat +664 -0
- lalapps/data/LALSimNeutronStarEOS_H5.dat +703 -0
- lalapps/data/LALSimNeutronStarEOS_H6.dat +509 -0
- lalapps/data/LALSimNeutronStarEOS_H7.dat +703 -0
- lalapps/data/LALSimNeutronStarEOS_HQC18.dat +388 -0
- lalapps/data/LALSimNeutronStarEOS_KDE0V.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_KDE0V1.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_KDE0V1_BSK24.dat +1388 -0
- lalapps/data/LALSimNeutronStarEOS_KDE0V_BSK24.dat +1398 -0
- lalapps/data/LALSimNeutronStarEOS_MPA1.dat +102 -0
- lalapps/data/LALSimNeutronStarEOS_MS1.dat +122 -0
- lalapps/data/LALSimNeutronStarEOS_MS1B.dat +126 -0
- lalapps/data/LALSimNeutronStarEOS_MS1B_PP.dat +1447 -0
- lalapps/data/LALSimNeutronStarEOS_MS1_PP.dat +1447 -0
- lalapps/data/LALSimNeutronStarEOS_MS2.dat +48 -0
- lalapps/data/LALSimNeutronStarEOS_PAL6.dat +148 -0
- lalapps/data/LALSimNeutronStarEOS_PCL2.dat +134 -0
- lalapps/data/LALSimNeutronStarEOS_PCP_BSK24_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_PS.dat +165 -0
- lalapps/data/LALSimNeutronStarEOS_QMC700.dat +117 -0
- lalapps/data/LALSimNeutronStarEOS_RG_SLY4_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_RS.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_RS_BSK24.dat +1356 -0
- lalapps/data/LALSimNeutronStarEOS_SK255.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SK255_BSK24.dat +1066 -0
- lalapps/data/LALSimNeutronStarEOS_SK272.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKA.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKA_BSK24.dat +1433 -0
- lalapps/data/LALSimNeutronStarEOS_SKB.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKB_BSK24.dat +1373 -0
- lalapps/data/LALSimNeutronStarEOS_SKI2.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKI2_BSK24.dat +1348 -0
- lalapps/data/LALSimNeutronStarEOS_SKI3.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKI3_BSK24.dat +1355 -0
- lalapps/data/LALSimNeutronStarEOS_SKI4.dat +497 -0
- lalapps/data/LALSimNeutronStarEOS_SKI4_BSK24.dat +1348 -0
- lalapps/data/LALSimNeutronStarEOS_SKI5.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKI6.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKI6_BSK24.dat +1358 -0
- lalapps/data/LALSimNeutronStarEOS_SKMP.dat +498 -0
- lalapps/data/LALSimNeutronStarEOS_SKOP.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKOP_BSK24.dat +1373 -0
- lalapps/data/LALSimNeutronStarEOS_SLY.dat +99 -0
- lalapps/data/LALSimNeutronStarEOS_SLY2.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SLY230A.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SLY230A_BSK24.dat +1116 -0
- lalapps/data/LALSimNeutronStarEOS_SLY2_BSK24.dat +1106 -0
- lalapps/data/LALSimNeutronStarEOS_SLY4.dat +100 -0
- lalapps/data/LALSimNeutronStarEOS_SLY9.dat +498 -0
- lalapps/data/LALSimNeutronStarEOS_SLY9_BSK24.dat +1083 -0
- lalapps/data/LALSimNeutronStarEOS_SQM1.dat +176 -0
- lalapps/data/LALSimNeutronStarEOS_SQM2.dat +180 -0
- lalapps/data/LALSimNeutronStarEOS_SQM3.dat +176 -0
- lalapps/data/LALSimNeutronStarEOS_WFF1.dat +109 -0
- lalapps/data/LALSimNeutronStarEOS_WFF2.dat +109 -0
- lalapps/data/LALSimNeutronStarEOS_WFF3.dat +107 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_DDLZ1_BSK24.dat +1227 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_DDME2_BSK24.dat +1272 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_DDMEX_BSK24.dat +1280 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_GM1_BSK24.dat +1288 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_MTVTC_BSK24.dat +1288 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_NL3_BSK24.dat +1230 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_PKDD_BSK24.dat +1288 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_TM1_BSK24.dat +1288 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_TW99_BSK24.dat +1288 -0
- lalapps/data/LIGO-P1200087-v18-AdV_BNS_OPTIMIZED.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-AdV_DESIGN.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-AdV_EARLY_HIGH.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-AdV_EARLY_LOW.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-AdV_LATE_HIGH.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-AdV_LATE_LOW.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-AdV_MID_HIGH.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-AdV_MID_LOW.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_BNS_OPTIMIZED.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_DESIGN.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_EARLY_HIGH.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_EARLY_LOW.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_LATE_HIGH.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_LATE_LOW.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_MID_HIGH.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_MID_LOW.txt +3000 -0
- lalapps/data/LIGO-P1600143-v18-CE.txt +3000 -0
- lalapps/data/LIGO-P1600143-v18-CE_Pessimistic.txt +3000 -0
- lalapps/data/LIGO-P1600143-v18-CE_Wideband.txt +3000 -0
- lalapps/data/LIGO-P1600143-v18-ET_D.txt +3000 -0
- lalapps/data/LIGO-T0900288-v3-BHBH_20deg.txt +3000 -0
- lalapps/data/LIGO-T0900288-v3-High_Freq.txt +3000 -0
- lalapps/data/LIGO-T0900288-v3-NO_SRM.txt +3000 -0
- lalapps/data/LIGO-T0900288-v3-NSNS_Opt.txt +3000 -0
- lalapps/data/LIGO-T0900288-v3-ZERO_DET_high_P.txt +3000 -0
- lalapps/data/LIGO-T0900288-v3-ZERO_DET_low_P.txt +3000 -0
- lalapps/data/LIGO-T1600593-v1-KAGRA_Design.txt +4000 -0
- lalapps/data/LIGO-T1600593-v1-KAGRA_Early.txt +4000 -0
- lalapps/data/LIGO-T1600593-v1-KAGRA_Late.txt +4000 -0
- lalapps/data/LIGO-T1600593-v1-KAGRA_Mid.txt +4000 -0
- lalapps/data/LIGO-T1600593-v1-KAGRA_Opening.txt +4000 -0
- lalapps/data/LIGO-T1800042-v5-aLIGO_APLUS.txt +3000 -0
- lalapps/data/LIGO-T1800044-v5-aLIGO_DESIGN.txt +3000 -0
- lalapps/data/LIGO-T1800545-v1-AdV_O3low.txt +3000 -0
- lalapps/data/LIGO-T1800545-v1-AdV_O4.txt +3000 -0
- lalapps/data/LIGO-T1800545-v1-AdV_O4intermediate.txt +3000 -0
- lalapps/data/LIGO-T1800545-v1-KAGRA_128Mpc.txt +1000 -0
- lalapps/data/LIGO-T1800545-v1-KAGRA_25Mpc.txt +1000 -0
- lalapps/data/LIGO-T1800545-v1-KAGRA_80Mpc.txt +1000 -0
- lalapps/data/LIGO-T1800545-v1-aLIGO_140Mpc.txt +1000 -0
- lalapps/data/LIGO-T1800545-v1-aLIGO_175Mpc.txt +2792 -0
- lalapps/data/LIGO-T1800545-v1-aLIGO_O3low.txt +2792 -0
- lalapps/data/bimodalMeans.csv +3 -0
- lalapps/data/config_tiger_example.ini +150 -0
- lalapps/data/fiducialBBH.xml +67 -0
- lalapps/data/fiducialBNS.xml +67 -0
- lalapps/data/inspsrcs100Mpc.errors +38735 -0
- lalapps/data/lalinference_pipe_example.ini +573 -0
- lalapps/data/lib_pipe_example.ini +303 -0
- lalapps/data/power_pipe.ini +129 -0
- lalapps/data/unimodalMeans.csv +2 -0
- lalapps/git_version.py +64 -0
- lalburst/SimBurstUtils.py +324 -0
- lalburst/SnglBurstUtils.py +367 -0
- lalburst/__init__.py +7 -0
- lalburst/_lalburst.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalburst/_lalburst_swig.py +16 -0
- lalburst/binjfind.py +824 -0
- lalburst/bucluster.py +409 -0
- lalburst/burca.py +315 -0
- lalburst/burca_tailor.py +349 -0
- lalburst/cafe.py +579 -0
- lalburst/calc_likelihood.py +145 -0
- lalburst/cs_gamma.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalburst/date.py +118 -0
- lalburst/git_version.py +64 -0
- lalburst/offsetvector.py +278 -0
- lalburst/packing.py +170 -0
- lalburst/power.py +1457 -0
- lalburst/snglcluster.py +136 -0
- lalburst/snglcoinc.py +2637 -0
- lalburst/stringutils.py +607 -0
- lalburst/timeslides.py +236 -0
- lalframe/__init__.py +7 -0
- lalframe/_lalframe.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalframe/_lalframe_swig.py +14 -0
- lalframe/frread.py +324 -0
- lalframe/git_version.py +64 -0
- lalframe/utils/__init__.py +25 -0
- lalframe/utils/frtools.py +61 -0
- lalinference/__init__.py +7 -0
- lalinference/_bayespputils.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalinference/_lalinference.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalinference/_lalinference_swig.py +19 -0
- lalinference/bayespputils.py +7479 -0
- lalinference/bayestar/__init__.py +2 -0
- lalinference/bayestar/deprecation.py +72 -0
- lalinference/git_version.py +64 -0
- lalinference/imrtgr/__init__.py +0 -0
- lalinference/imrtgr/imrtgrutils.py +168 -0
- lalinference/imrtgr/nrutils.py +1366 -0
- lalinference/imrtgr/pneqns.py +250 -0
- lalinference/io/__init__.py +31 -0
- lalinference/io/hdf5.py +365 -0
- lalinference/lalinference_pipe_utils.py +3617 -0
- lalinference/nest2pos.py +151 -0
- lalinference/plot/__init__.py +34 -0
- lalinference/plot/spindisk.py +104 -0
- lalinference/tiger/__init__.py +0 -0
- lalinference/tiger/make_injtimes.py +634 -0
- lalinference/tiger/omegascans_dag.py +691 -0
- lalinference/tiger/postproc.py +1338 -0
- lalinference/wrapper.py +231 -0
- lalinspiral/__init__.py +7 -0
- lalinspiral/_lalinspiral.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalinspiral/_lalinspiral_swig.py +18 -0
- lalinspiral/_thinca.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalinspiral/git_version.py +64 -0
- lalinspiral/inspinjfind.py +485 -0
- lalinspiral/thinca.py +509 -0
- lalmetaio/__init__.py +7 -0
- lalmetaio/_lalmetaio.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalmetaio/_lalmetaio_swig.py +14 -0
- lalmetaio/git_version.py +64 -0
- lalpulsar/NstarTools.py +259 -0
- lalpulsar/PulsarParametersWrapper.py +938 -0
- lalpulsar/__init__.py +7 -0
- lalpulsar/_lalpulsar.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalpulsar/_lalpulsar_swig.py +17 -0
- lalpulsar/git_version.py +64 -0
- lalpulsar/knope_utils.py +6497 -0
- lalpulsar/lineFileParser.py +264 -0
- lalpulsar/metric_utils.py +78 -0
- lalpulsar/piecewise_model/__init__.py +7 -0
- lalpulsar/piecewise_model/basis_functions.py +156 -0
- lalpulsar/piecewise_model/class_definitions.py +323 -0
- lalpulsar/piecewise_model/errors.py +37 -0
- lalpulsar/piecewise_model/estimating_knots.py +833 -0
- lalpulsar/piecewise_model/gte_and_other_methods.py +189 -0
- lalpulsar/piecewise_model/mols_for_gte.py +269 -0
- lalpulsar/piecewise_model/pw_fstat.py +813 -0
- lalpulsar/piecewise_model/pw_model_simulations.py +156 -0
- lalpulsar/piecewise_model/sampling_methods.py +186 -0
- lalpulsar/piecewise_model/semicoherent_metric_methods.py +375 -0
- lalpulsar/piecewise_model/tbank_estimates.py +293 -0
- lalpulsar/public_sft_directory.py +82 -0
- lalpulsar/pulsarhtmlutils.py +1395 -0
- lalpulsar/pulsarpputils.py +3638 -0
- lalpulsar/simulateCW.py +602 -0
- lalpulsar/simulateHeterodynedCW.py +591 -0
- lalsimulation/__init__.py +7 -0
- lalsimulation/_lalsimulation.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalsimulation/_lalsimulation_swig.py +14 -0
- lalsimulation/git_version.py +64 -0
- lalsimulation/gwsignal/__init__.py +9 -0
- lalsimulation/gwsignal/core/__init__.py +2 -0
- lalsimulation/gwsignal/core/conditioning_subroutines.py +196 -0
- lalsimulation/gwsignal/core/errors.py +136 -0
- lalsimulation/gwsignal/core/gw.py +206 -0
- lalsimulation/gwsignal/core/parameter_conventions.py +122 -0
- lalsimulation/gwsignal/core/utils.py +329 -0
- lalsimulation/gwsignal/core/waveform.py +725 -0
- lalsimulation/gwsignal/core/waveform_conditioning.py +455 -0
- lalsimulation/gwsignal/models/__init__.py +29 -0
- lalsimulation/gwsignal/models/pyseobnr_model.py +452 -0
- lalsimulation/nrfits/NRSur3dq8Remnant.py +92 -0
- lalsimulation/nrfits/NRSur7dq4Remnant.py +469 -0
- lalsimulation/nrfits/__init__.py +1 -0
- lalsimulation/nrfits/eval_fits.py +364 -0
- lalsimulation/nrfits/nrfits.py +78 -0
- lalsimulation/nrfits/pn_spin_evolution_wrapper.py +92 -0
- lalsimulation/nrfits/quaternion_utils.py +74 -0
- lalsimulation/tilts_at_infinity/__init__.py +2 -0
- lalsimulation/tilts_at_infinity/calc_tilts_prec_avg_regularized.py +1424 -0
- lalsimulation/tilts_at_infinity/hybrid_spin_evolution.py +461 -0
- lalsimulation/tilts_at_infinity/tilts_at_infinity_utils.py +167 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesBurstPPAnalysis +305 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesBurstPostProc +1364 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesCombinePTMCMCh5s +100 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesCombinePosteriors +235 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesCompPos +1121 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesDIEvidence +68 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesGraceDBinfo +182 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesMCMC2pos +314 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesPPAnalysis +322 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesPlotSpinDisk +42 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesPosToSimBurst +227 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesPosToSimInspiral +307 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesPostProc +1345 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesThermoInt +107 -0
- lalsuite-7.26.2.dev20251218.data/scripts/imrtgr_imr_consistency_test +796 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_cache +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_fftw_wisdom +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_fftwf_wisdom +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_path2cache +148 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_searchsum2cache +172 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_simd_detect +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_tconvert +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ComputeAntennaPattern +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ComputeFstatBenchmark +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ComputeFstatLatticeCount +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ComputeFstatMCUpperLimit +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ComputeFstatistic_v2 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ComputePSD +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_CopySFTs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_DistanceVsMass +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_DriveHoughMulti +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_FstatMetric_v2 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_HierarchSearchGCT +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_HierarchicalSearch +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_MakeSFTDAG +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_MakeSFTs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_Makefakedata_v4 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_Makefakedata_v5 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_PredictFstat +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_PrintDetectorState +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_SFTclean +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_SFTvalidate +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_StringAddFrame +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_StringSearch +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_Weave +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_WeaveCompare +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_WeaveConcat +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_WeaveSetup +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_WriteSFTsfromSFDBs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_animate +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_binj +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_blindinj +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_cache +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_cafe +99 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_calfacs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_cbc_stochasticbank +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_chirplen +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_coh_PTF_inspiral +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_coinj +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_combine_crosscorr_toplists +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_compareFstats +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_compareSFTs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_cosmicstring_pipe +525 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_create_time_correction_ephemeris +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_dumpSFT +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_effdist +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_exc_resp +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_fftw_wisdom +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_fftwf_wisdom +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_fits_header_getval +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_fits_header_list +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_fits_overview +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_fits_table_list +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_fr_ninja +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_frextr +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_frinfo +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_frjoin +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_frread +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_frview +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_gwf2xml +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_heterodyne_pulsar +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_inspawgfile +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_inspfrinj +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_inspinj +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_inspiralDistance +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_knope +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_knope_automation_script +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_knope_collate_results +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_knope_result_page +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_makeblindinj +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_makeblindinj_himass +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ninja +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_path2cache +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_power +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_power_likelihood_pipe +219 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_power_pipe +417 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_pulsar_crosscorr_v2 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_pulsar_frequency_evolution +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_pulsar_parameter_estimation_nested +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_random_bank +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_randombank +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_run_pulsar_crosscorr_v2 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_searchsum2cache +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_spec_avg +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_spec_avg_long +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_spec_coherence +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_spininj +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_splitSFTs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_splitbank +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ssbtodetector +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_apply_vetoes +171 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_calc_likelihood +172 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_contour_plotter +141 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_contour_plotter_largeloops +133 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_cs_gamma +110 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_cs_gamma_largeloops +119 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_final +1064 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_meas_likelihood +264 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_plot_binj +543 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_plot_likelihood +380 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_synthesizeBstatMC +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_synthesizeLVStats +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_synthesizeTransientStats +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_tconvert +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_tmpltbank +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_xtefitstoframe +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_cluster +156 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_coinc +224 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_cut +425 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_gen_timeslides +254 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_inj_pic +254 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_injfind +170 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_plot_tisi +165 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_power_calc_likelihood +182 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_power_final +1369 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_power_meas_likelihood +206 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_power_plot_binj +934 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_power_plot_binjtf +302 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-cat +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-cksum +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-cut +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-dump +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-fmt +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-paste +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-print +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-split +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-stat +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-stream +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-vis +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalframe_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_bench +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_burst +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_burst_pp_pipe +220 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_coherence_test +139 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_compute_roq_weights +404 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_cpnest +58 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_datadump +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_evolve_spins_and_append_samples +202 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_injectedlike +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_merge_posteriors +57 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_mpi_wrapper +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_multi_pipe +144 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_nest +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_nest2pos +286 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_pipe +512 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_pp_pipe +229 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_review_test +362 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinspiral_injfind +206 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinspiral_thinca +240 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinspiral_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalmetaio_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_ComputeAntennaPattern +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_ComputeFstatBenchmark +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_ComputeFstatLatticeCount +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_ComputeFstatMCUpperLimit +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_ComputeFstatistic_v2 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_ComputePSD +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_CopyPublicSFTs +216 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_DriveHoughMulti +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_FstatMetric_v2 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_HierarchSearchGCT +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_HierarchicalSearch +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_MakeSFTDAG +1142 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_MakeSFTs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_Makefakedata_v4 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_Makefakedata_v5 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_MoveSFTs +208 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_PiecewiseSearch +963 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_PredictFstat +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_PrintDetectorState +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_SFTclean +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_SFTvalidate +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_Weave +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_WeaveCompare +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_WeaveConcat +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_WeaveSetup +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_WriteSFTsfromSFDBs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_compareFstats +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_compareSFTs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_create_time_correction_ephemeris +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_crosscorr_v2 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_dumpSFT +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_fits_header_getval +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_fits_header_list +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_fits_overview +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_fits_table_list +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_frequency_evolution +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_heterodyne +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_knope +145 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_knope_automation_script +731 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_knope_collate_results +675 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_knope_result_page +2977 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_parameter_estimation_nested +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_spec_avg +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_spec_avg_long +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_spec_coherence +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_splitSFTs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_ssbtodetector +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_synthesizeBstatMC +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_synthesizeLVStats +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_synthesizeTransientStats +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-bh-qnmode +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-bh-ringdown +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-bh-sphwf +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-burst +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-detector-noise +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-detector-strain +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-inject +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-inspiral +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-ns-eos-table +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-ns-mass-radius +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-ns-params +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-sgwb +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-unicorn +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsimulation_version +6 -0
- lalsuite-7.26.2.dev20251218.dist-info/METADATA +90 -0
- lalsuite-7.26.2.dev20251218.dist-info/RECORD +733 -0
- lalsuite-7.26.2.dev20251218.dist-info/WHEEL +5 -0
- lalsuite-7.26.2.dev20251218.dist-info/licenses/COPYING +339 -0
- lalsuite-7.26.2.dev20251218.dist-info/top_level.txt +9 -0
- lalsuite.libs/libcfitsio-729ee1b7.so.10.0.0 +0 -0
- lalsuite.libs/libfftw3-6b983104.so.3.5.5 +0 -0
- lalsuite.libs/libfftw3f-b4465a35.so.3.5.5 +0 -0
- lalsuite.libs/libframel-8cf74372.so.8.48.4 +0 -0
- lalsuite.libs/libgsl-e30be130.so.28.0.0 +0 -0
- lalsuite.libs/libgslcblas-460f042a.so.0.0.0 +0 -0
- lalsuite.libs/libhdf5-d02936e2.so.310.5.1 +0 -0
- lalsuite.libs/libhdf5_hl-0e40b553.so.310.0.6 +0 -0
- lalsuite.libs/liblal-bd4575d4.so.20.5.0 +0 -0
- lalsuite.libs/liblalburst-183caa97.so.8.0.0 +0 -0
- lalsuite.libs/liblalframe-b2539a8a.so.14.0.3 +0 -0
- lalsuite.libs/liblalinference-b273091a.so.23.1.7 +0 -0
- lalsuite.libs/liblalinspiral-37f93c6c.so.18.0.2 +0 -0
- lalsuite.libs/liblalmetaio-f04c856f.so.11.0.1 +0 -0
- lalsuite.libs/liblalpulsar-950e7dfd.so.30.1.1 +0 -0
- lalsuite.libs/liblalsimulation-abda47f7.so.37.2.0 +0 -0
- lalsuite.libs/liblalsupport-ad162801.so.14.4.0 +0 -0
- lalsuite.libs/libmetaio-abda72ec.so.1.1.0 +0 -0
|
@@ -0,0 +1,469 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Class for NRSur7dq4Remnant model for the mass, spin and kick of the final BH of
|
|
3
|
+
generically precessing binary black holes.
|
|
4
|
+
|
|
5
|
+
Vijay Varma, 2019.
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
import numpy as np
|
|
9
|
+
import lalsimulation as lalsim
|
|
10
|
+
import lal
|
|
11
|
+
|
|
12
|
+
from . import pn_spin_evolution_wrapper
|
|
13
|
+
from . import quaternion_utils
|
|
14
|
+
from .nrfits import NRFits
|
|
15
|
+
|
|
16
|
+
class NRSur7dq4Remnant(NRFits):
|
|
17
|
+
r"""
|
|
18
|
+
Class for NRSur7dq4Remnant model for the mass, spin and kick of the final BH
|
|
19
|
+
of generically precessing binary black holes.
|
|
20
|
+
|
|
21
|
+
Paper: arxiv:1905.09300
|
|
22
|
+
|
|
23
|
+
Parameter ranges for usage: \n
|
|
24
|
+
q = [1, 6.01] \n
|
|
25
|
+
\f$\chi_{A}, \chi_{B}\f$ = [-1, 1]
|
|
26
|
+
|
|
27
|
+
Training parameter ranges: \n
|
|
28
|
+
q = [1, 4.01] \n
|
|
29
|
+
\f$\chi_{A}, \chi_{B}\f$ = [-0.81, 0.81]
|
|
30
|
+
|
|
31
|
+
But extrapolates reasonably to the above mass ratios and spins. However,
|
|
32
|
+
if a guarantee of accuracy is required, this model should be used within
|
|
33
|
+
the training parameter range.
|
|
34
|
+
"""
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
#-------------------------------------------------------------------------
|
|
38
|
+
def _get_coorbital_frame_spins_at_idx(self, chiA, chiB, omega, lNhat, phi, \
|
|
39
|
+
idx):
|
|
40
|
+
""" Computes PN spins and dynamics at a given idx.
|
|
41
|
+
|
|
42
|
+
Inputs:
|
|
43
|
+
chiA: Dimless spin evolution of BhA in inertial frame.
|
|
44
|
+
chiB: Dimless spin evolution of BhB in inertial frame.
|
|
45
|
+
omega: Orbital frequency evolution (this is total-mass times
|
|
46
|
+
the angular orbital frequency).
|
|
47
|
+
lNhat: Orbital angular momentum direction evolution.
|
|
48
|
+
phi: Orbital phase evolution.
|
|
49
|
+
idx: Index for output.
|
|
50
|
+
|
|
51
|
+
Outputs (all are time series):
|
|
52
|
+
chiA_at_idx_coorb: Spin of BhA at idx, in coorbital frame.
|
|
53
|
+
chiB_at_idx_coorb: Spin of BhB at idx, in coorbital frame.
|
|
54
|
+
quat_copr_at_idx: Coprecessing frame quaternion at idx.
|
|
55
|
+
phi_at_idx: Orbital phase in the coprecessing frame at idx.
|
|
56
|
+
omega_at_idx Orbital frequency at idx (this is total-mass
|
|
57
|
+
times the angular orbital frequency).
|
|
58
|
+
|
|
59
|
+
The inertial frame is assumed to be aligned to the coorbital frame at
|
|
60
|
+
the first index.
|
|
61
|
+
"""
|
|
62
|
+
|
|
63
|
+
# Get omega, inertial spins, angular momentum direction and orbital
|
|
64
|
+
# phase at idx
|
|
65
|
+
omega_at_idx = omega[idx]
|
|
66
|
+
chiA_at_idx = chiA[idx]
|
|
67
|
+
chiB_at_idx = chiB[idx]
|
|
68
|
+
lNhat_at_idx = lNhat[idx]
|
|
69
|
+
phi_at_idx = phi[idx]
|
|
70
|
+
|
|
71
|
+
# Align the z-direction along orbital angular momentum direction
|
|
72
|
+
# at idx. This moves us into the coprecessing frame.
|
|
73
|
+
quat_copr_at_idx = quaternion_utils.align_vec_quat(lNhat_at_idx)
|
|
74
|
+
# The zeroth element is taken because transform_time_dependent_vector
|
|
75
|
+
# is designed for arrays, but here we only have one element
|
|
76
|
+
chiA_at_idx_copr = quaternion_utils.transform_time_dependent_vector(
|
|
77
|
+
np.array([quat_copr_at_idx]).T,
|
|
78
|
+
np.array([chiA_at_idx]).T, inverse=1).T[0]
|
|
79
|
+
chiB_at_idx_copr = quaternion_utils.transform_time_dependent_vector(
|
|
80
|
+
np.array([quat_copr_at_idx]).T,
|
|
81
|
+
np.array([chiB_at_idx]).T, inverse=1).T[0]
|
|
82
|
+
|
|
83
|
+
# get coorbital frame spins at idx
|
|
84
|
+
chiA_at_idx_coorb = quaternion_utils.rotate_in_plane(
|
|
85
|
+
chiA_at_idx_copr, phi_at_idx)
|
|
86
|
+
chiB_at_idx_coorb = quaternion_utils.rotate_in_plane(
|
|
87
|
+
chiB_at_idx_copr, phi_at_idx)
|
|
88
|
+
|
|
89
|
+
return chiA_at_idx_coorb, chiB_at_idx_coorb, quat_copr_at_idx, \
|
|
90
|
+
phi_at_idx, omega_at_idx
|
|
91
|
+
|
|
92
|
+
#-------------------------------------------------------------------------
|
|
93
|
+
def _get_surrogate_dynamics(self, q, chiA0, chiB0, init_quat, \
|
|
94
|
+
init_orbphase, omega_ref, unlimited_extrapolation):
|
|
95
|
+
""" A wrapper for NRSur7dq4 dynamics.
|
|
96
|
+
|
|
97
|
+
Inputs:
|
|
98
|
+
q: Mass ratio, mA/mB >= 1.
|
|
99
|
+
chiA0: Dimless spin of BhA in the coorbital frame at omega_ref.
|
|
100
|
+
chiB0: Dimless spin of BhB in the coorbital frame at omega_ref.
|
|
101
|
+
init_quat: Coprecessing frame quaternion at omega_ref.
|
|
102
|
+
init_orbphase:
|
|
103
|
+
Orbital phase in the coprecessing frame at omega_ref.
|
|
104
|
+
omega_ref: Orbital frequency in the coprecessing frame at the
|
|
105
|
+
reference epoch where the input spins are given. Note:
|
|
106
|
+
This is total-mass times the angular orbital frequency.
|
|
107
|
+
unlimited_extrapolation:
|
|
108
|
+
If True, allows unlimited extrapolation to regions well
|
|
109
|
+
outside the surrogate's training region. Else, raises
|
|
110
|
+
an error.
|
|
111
|
+
|
|
112
|
+
Outputs:
|
|
113
|
+
t_dyn: Time values at which the dynamics are returned. These
|
|
114
|
+
are nonuniform and sparse.
|
|
115
|
+
copr_quat: Time series of coprecessing frame quaternions.
|
|
116
|
+
orbphase: Orbital phase time series in the coprecessing frame.
|
|
117
|
+
chiA_copr: Time series of spin of BhA in the coprecessing frame.
|
|
118
|
+
chiB_copr: Time series of spin of BhB in the coprecessing frame.
|
|
119
|
+
"""
|
|
120
|
+
|
|
121
|
+
approxTag = lalsim.SimInspiralGetApproximantFromString("NRSur7dq4")
|
|
122
|
+
LALParams = lal.CreateDict()
|
|
123
|
+
if unlimited_extrapolation:
|
|
124
|
+
lal.DictInsertUINT4Value(LALParams, "unlimited_extrapolation", 1)
|
|
125
|
+
|
|
126
|
+
t_dyn, quat0, quat1, quat2, quat3, orbphase, chiAx, chiAy, chiAz, \
|
|
127
|
+
chiBx, chiBy, chiBz = lalsim.PrecessingNRSurDynamics(q, \
|
|
128
|
+
chiA0[0], chiA0[1], chiA0[2], chiB0[0], chiB0[1], chiB0[2], \
|
|
129
|
+
omega_ref, init_quat[0], init_quat[1], init_quat[2], init_quat[3], \
|
|
130
|
+
init_orbphase, LALParams, approxTag)
|
|
131
|
+
|
|
132
|
+
t_dyn = t_dyn.data
|
|
133
|
+
orbphase = orbphase.data
|
|
134
|
+
copr_quat = np.array([quat0.data, quat1.data, quat2.data, quat3.data])
|
|
135
|
+
chiA_copr = np.array([chiAx.data, chiAy.data, chiAz.data]).T
|
|
136
|
+
chiB_copr = np.array([chiBx.data, chiBy.data, chiBz.data]).T
|
|
137
|
+
|
|
138
|
+
return t_dyn, copr_quat, orbphase, chiA_copr, chiB_copr
|
|
139
|
+
|
|
140
|
+
#-------------------------------------------------------------------------
|
|
141
|
+
def _get_pn_spins_at_surrogate_start(self, q, \
|
|
142
|
+
chiA0, chiB0, omega0, omega_switch_IG, t_sur_switch,
|
|
143
|
+
unlimited_extrapolation):
|
|
144
|
+
""" Gets PN spins and frame dynamics at a time close to the start
|
|
145
|
+
of the surrogate waveform model.
|
|
146
|
+
|
|
147
|
+
Inputs:
|
|
148
|
+
q: Mass ratio, mA/mB >= 1.
|
|
149
|
+
chiA0: Initial dimless spin of BhA in the LAL inertial frame.
|
|
150
|
+
chiB0: Initial dimless spin of BhB in the LAL inertial frame.
|
|
151
|
+
omega0: Initial orbital frequency. The spins are specified at
|
|
152
|
+
this frequency. Note: This is total-mass times the
|
|
153
|
+
angular orbital frequency.
|
|
154
|
+
omega_switch_IG:
|
|
155
|
+
Initial guess for the orbital frequency at which to
|
|
156
|
+
switch from PN to surrogate dynamics. We use PN to
|
|
157
|
+
evolve the spins until the surrogate becomes valid. The
|
|
158
|
+
surrogate is in time domain, so it is not
|
|
159
|
+
straightforward to determine the frequency at which it
|
|
160
|
+
is valid. So, we evolve with PN until omega_switch_IG.
|
|
161
|
+
However, this is chosen to be overly conservative such
|
|
162
|
+
that this initial guess works for all q<=6 cases.
|
|
163
|
+
Ideally, we would like to use as much as possible of
|
|
164
|
+
the surrogate spin evolution. So, using the PN spins at
|
|
165
|
+
omega_switch_IG, the surrogate dynamics are evolved
|
|
166
|
+
both backwards and forwards in time. This lets us get
|
|
167
|
+
surrogate orbital frequency at t_sur_switch, as well as
|
|
168
|
+
the corresponding PN spins at this time.
|
|
169
|
+
t_sur_switch:
|
|
170
|
+
The time at which the PN spins are returned so that
|
|
171
|
+
surrogate dynamics can be regenerated starting as early
|
|
172
|
+
as possible.
|
|
173
|
+
unlimited_extrapolation:
|
|
174
|
+
If True, Allow unlimited extrapolation to regions well
|
|
175
|
+
outside the surrogate's training region. Else, raises
|
|
176
|
+
an error.
|
|
177
|
+
|
|
178
|
+
Outputs:
|
|
179
|
+
PN spin and frame dynamics at t_sur_switch, as well as the spins
|
|
180
|
+
and orbital frequency evolution.
|
|
181
|
+
|
|
182
|
+
chiA_PN_at_idx_coorb:
|
|
183
|
+
PN spin of BhA at t_sur_switch, in the coorbital frame.
|
|
184
|
+
chiB_PN_at_idx_coorb:
|
|
185
|
+
PN spin of BhB at t_sur_switch, in the coorbital frame.
|
|
186
|
+
quat_PN_copr_at_idx:
|
|
187
|
+
PN coprecessing frame quaternions at t_sur_switch.
|
|
188
|
+
phi_PN_at_idx:
|
|
189
|
+
PN orbital phase at t_sur_switch.
|
|
190
|
+
omega_PN_at_idx:
|
|
191
|
+
PN orbital frequency at t_sur_switch.
|
|
192
|
+
chiA_PN: PN Spin evolution of BhA in the inertial frame.
|
|
193
|
+
chiB_PN: PN Spin evolution of BhB in the inertial frame.
|
|
194
|
+
omega_PN: PN orbital frequency evolution. Note: This is total-mass
|
|
195
|
+
times the angular orbital frequency.
|
|
196
|
+
"""
|
|
197
|
+
|
|
198
|
+
# Get PN spin evolution starting at omega0
|
|
199
|
+
omega_PN, phi_PN, chiA_PN, chiB_PN, lNhat_PN \
|
|
200
|
+
= pn_spin_evolution_wrapper.spin_evolution(q, chiA0, chiB0, omega0)
|
|
201
|
+
|
|
202
|
+
# Get PN coorbital frame spins and frame dynamics at
|
|
203
|
+
# omega_PN=omega_switch_IG
|
|
204
|
+
idx = np.argmin(np.abs(omega_PN - omega_switch_IG))
|
|
205
|
+
chiA_PN_at_idx_coorb, chiB_PN_at_idx_coorb, quat_PN_copr_at_idx, \
|
|
206
|
+
phi_PN_at_idx, omega_PN_at_idx \
|
|
207
|
+
= self._get_coorbital_frame_spins_at_idx(chiA_PN, chiB_PN, \
|
|
208
|
+
omega_PN, lNhat_PN, phi_PN, idx)
|
|
209
|
+
|
|
210
|
+
# Now evaluate the surrogate dynamics (both forwards and backwards)
|
|
211
|
+
# using PN spins at omega_switch_IG
|
|
212
|
+
dyn_times, quat_sur, orbphase_sur, chiA_copr_sur, chiB_copr_sur \
|
|
213
|
+
= self._get_surrogate_dynamics(q, chiA_PN_at_idx_coorb, \
|
|
214
|
+
chiB_PN_at_idx_coorb, quat_PN_copr_at_idx, phi_PN_at_idx, \
|
|
215
|
+
omega_switch_IG, unlimited_extrapolation)
|
|
216
|
+
omega_sur = np.gradient(orbphase_sur, dyn_times)
|
|
217
|
+
|
|
218
|
+
# Get surrogate orbital frequency at t_sur_switch, which is
|
|
219
|
+
# close to the start of the surrogate data
|
|
220
|
+
omega_init_sur = omega_sur[np.argmin(np.abs(dyn_times - t_sur_switch))]
|
|
221
|
+
|
|
222
|
+
# Get PN coorbital frame spins and frame dynamics at omega_init_sur.
|
|
223
|
+
# These must be in the coorbital frame as the surrogate dynamics
|
|
224
|
+
# expects the inputs in the LAL convention which agrees with the
|
|
225
|
+
# coorbital frame.
|
|
226
|
+
idx = np.argmin(np.abs(omega_PN - omega_init_sur))
|
|
227
|
+
chiA_PN_at_idx_coorb, chiB_PN_at_idx_coorb, quat_PN_copr_at_idx, \
|
|
228
|
+
phi_PN_at_idx, omega_PN_at_idx \
|
|
229
|
+
= self._get_coorbital_frame_spins_at_idx(chiA_PN, chiB_PN, \
|
|
230
|
+
omega_PN, lNhat_PN, phi_PN, idx)
|
|
231
|
+
|
|
232
|
+
return chiA_PN_at_idx_coorb, chiB_PN_at_idx_coorb, \
|
|
233
|
+
quat_PN_copr_at_idx, phi_PN_at_idx, omega_PN_at_idx, \
|
|
234
|
+
chiA_PN, chiB_PN, omega_PN
|
|
235
|
+
|
|
236
|
+
#-------------------------------------------------------------------------
|
|
237
|
+
def _evolve_spins(self, q, chiA0, chiB0, omega0, omega_switch_IG=0.03, \
|
|
238
|
+
t_sur_switch=-4000, return_spin_evolution=False, \
|
|
239
|
+
unlimited_extrapolation=False):
|
|
240
|
+
""" Uses PN and surrogate spin evolution to evolve spins of the
|
|
241
|
+
component BHs from an initial orbital frequency = omega0 until t=-100 M
|
|
242
|
+
from the peak of the waveform.
|
|
243
|
+
|
|
244
|
+
Inputs:
|
|
245
|
+
q: Mass ratio, mA/mB >= 1.
|
|
246
|
+
chiA0: Initial dimless spin of BhA in the inertial frame.
|
|
247
|
+
chiB0: Initial dimless spin of BhB in the inertial frame. Note
|
|
248
|
+
that the LAL inertial frame coincides with the
|
|
249
|
+
coorbital frame used in the surrogate models.
|
|
250
|
+
omega0: Initial orbital frequency in the coprecessing frame.
|
|
251
|
+
The spins are specified at this frequency. Note: This
|
|
252
|
+
is total-mass times the angular orbital frequency.
|
|
253
|
+
omega_switch_IG:
|
|
254
|
+
Initial guess for orbital frequency used to determine
|
|
255
|
+
if PN spin evolution is required, and where to switch
|
|
256
|
+
from PN spin evolution to the surrogate.
|
|
257
|
+
If omega0 >= omega_switch_IG:
|
|
258
|
+
PN evolution is not required and the surrogate dynamics
|
|
259
|
+
are used to evolve the spin until t=-100M. Default
|
|
260
|
+
value for omega_switch_IG is 0.03 which is expected to
|
|
261
|
+
be large enough for q<=6. NOTE: If you get errors
|
|
262
|
+
about omega0 being too small for the surrogate, try
|
|
263
|
+
increasing omega_switch_IG.
|
|
264
|
+
If omega0 < omega_switch_IG:
|
|
265
|
+
Use PN to evolve the spins until the surrogate becomes
|
|
266
|
+
valid. The surrogate is in time domain, so it is not
|
|
267
|
+
straightforward to determine the frequency at which it
|
|
268
|
+
is valid. So, we evolve with PN until omega_switch_IG.
|
|
269
|
+
However, this is chosen to be overly conservative such
|
|
270
|
+
that this initial guess works for all q<=6 cases.
|
|
271
|
+
Ideally, we would like to use as much as possible of
|
|
272
|
+
the surrogate spin evolution. So, using the PN spins at
|
|
273
|
+
omega_switch_IG, the surrogate dynamics are evolved
|
|
274
|
+
both backwards and forwards in time. Then the PN spins
|
|
275
|
+
at omega = omega_sur[t_sur_switch] are used to
|
|
276
|
+
reevaluate the surrogate dynamics. This way,
|
|
277
|
+
omega_switch_IG is only used as an initial guess for
|
|
278
|
+
where to switch to the surrogate, and we switch to the
|
|
279
|
+
surrogate as early as possible.
|
|
280
|
+
t_sur_switch:
|
|
281
|
+
The time at which we switch to the surrogate evolution.
|
|
282
|
+
This should be slightly larger than the surrogate start
|
|
283
|
+
time of -4300M. Since we use the PN spins at
|
|
284
|
+
omega_sur[t_sur_switch] to reevaluate the surrogate
|
|
285
|
+
dynamics, it is possible that for the given PN spins at
|
|
286
|
+
omega_sur[t_sur_switch], the surrogate is not long
|
|
287
|
+
enough. Default: -4000.
|
|
288
|
+
return_spin_evolution:
|
|
289
|
+
Also return the spin evolution and dynamics as a
|
|
290
|
+
dictionary.
|
|
291
|
+
unlimited_extrapolation:
|
|
292
|
+
If True, Allow unlimited extrapolation to regions well
|
|
293
|
+
outside the surrogate's training region. Else, raises
|
|
294
|
+
an error.
|
|
295
|
+
Outputs:
|
|
296
|
+
chiA_coorb_fitnode:
|
|
297
|
+
Spin of BhA in the coorbital frame at t=-100M.
|
|
298
|
+
chiB_coorb_fitnode:
|
|
299
|
+
Spin of BhB in the coorbital frame at t=-100M.
|
|
300
|
+
quat_fitnode:
|
|
301
|
+
Coprecessing frame quaternions at t=-100M.
|
|
302
|
+
orbphase_fitnode:
|
|
303
|
+
Orbital phase in the coprecessing frame at t=-100M.
|
|
304
|
+
spin_evolution:
|
|
305
|
+
Dictionary containing the PN and surrogate spin
|
|
306
|
+
evolution (in the inertial frame) and dynamics.
|
|
307
|
+
Default: None, unless return_spin_evolution=True.
|
|
308
|
+
"""
|
|
309
|
+
|
|
310
|
+
# If omega0 is below the NRSur7dq4 initial guess frequency, we use PN
|
|
311
|
+
# to evolve the spins. We get the initial PN spins and omega_init_sur
|
|
312
|
+
# that should go into the surrogate such that the initial time is
|
|
313
|
+
# t_sur_switch.
|
|
314
|
+
if omega0 < omega_switch_IG:
|
|
315
|
+
chiA0_nrsur_coorb, chiB0_nrsur_coorb, quat0_nrsur_copr, \
|
|
316
|
+
phi0_nrsur, omega_init_sur, chiA_PN, chiB_PN, omega_PN \
|
|
317
|
+
= self._get_pn_spins_at_surrogate_start(q, \
|
|
318
|
+
chiA0, chiB0, omega0, omega_switch_IG, t_sur_switch,
|
|
319
|
+
unlimited_extrapolation)
|
|
320
|
+
|
|
321
|
+
# If omega0 >= omega_switch_IG, we evolve spins directly with NRSur7dq4
|
|
322
|
+
# waveform model. We set the coprecessing frame quaternion to identity
|
|
323
|
+
# and orbital phase to 0 at omega=omega0, hence the coorbital frame is
|
|
324
|
+
# the same as the inertial frame here.
|
|
325
|
+
else:
|
|
326
|
+
# Note that here we set omega_init_sur to omega0
|
|
327
|
+
chiA0_nrsur_coorb, chiB0_nrsur_coorb, quat0_nrsur_copr, \
|
|
328
|
+
phi0_nrsur, omega_init_sur, chiA_PN, chiB_PN, omega_PN \
|
|
329
|
+
= chiA0, chiB0, [1,0,0,0], 0, omega0, None, None, None
|
|
330
|
+
|
|
331
|
+
# Now evaluate the surrogate dynamics using PN spins at omega_init_sur
|
|
332
|
+
dyn_times, quat_sur, orbphase_sur, chiA_copr_sur, chiB_copr_sur \
|
|
333
|
+
= self._get_surrogate_dynamics(q, chiA0_nrsur_coorb, \
|
|
334
|
+
chiB0_nrsur_coorb, quat0_nrsur_copr, phi0_nrsur, \
|
|
335
|
+
omega_init_sur, unlimited_extrapolation)
|
|
336
|
+
|
|
337
|
+
# get data at time node where remnant fits are done
|
|
338
|
+
fitnode_time = -100
|
|
339
|
+
nodeIdx = np.argmin(np.abs(dyn_times - fitnode_time))
|
|
340
|
+
quat_fitnode = quat_sur.T[nodeIdx]
|
|
341
|
+
orbphase_fitnode = orbphase_sur[nodeIdx]
|
|
342
|
+
|
|
343
|
+
# get coorbital frame spins at the time node
|
|
344
|
+
chiA_coorb_fitnode = quaternion_utils.rotate_in_plane(
|
|
345
|
+
chiA_copr_sur[nodeIdx], orbphase_fitnode)
|
|
346
|
+
chiB_coorb_fitnode = quaternion_utils.rotate_in_plane(
|
|
347
|
+
chiB_copr_sur[nodeIdx], orbphase_fitnode)
|
|
348
|
+
|
|
349
|
+
if return_spin_evolution:
|
|
350
|
+
# Transform spins to the reference inertial frame
|
|
351
|
+
chiA_sur = quaternion_utils.transform_time_dependent_vector(
|
|
352
|
+
quat_sur, chiA_copr_sur.T).T
|
|
353
|
+
chiB_sur = quaternion_utils.transform_time_dependent_vector(
|
|
354
|
+
quat_sur, chiB_copr_sur.T).T
|
|
355
|
+
spin_evolution = {
|
|
356
|
+
't_sur': dyn_times,
|
|
357
|
+
'chiA_sur': chiA_sur,
|
|
358
|
+
'chiB_sur': chiB_sur,
|
|
359
|
+
'orbphase_sur': orbphase_sur,
|
|
360
|
+
'quat_sur': quat_sur,
|
|
361
|
+
'omega_PN': omega_PN,
|
|
362
|
+
'chiA_PN': chiA_PN,
|
|
363
|
+
'chiB_PN': chiB_PN,
|
|
364
|
+
'omega_init_sur': omega_init_sur,
|
|
365
|
+
}
|
|
366
|
+
else:
|
|
367
|
+
spin_evolution = None
|
|
368
|
+
|
|
369
|
+
return chiA_coorb_fitnode, chiB_coorb_fitnode, quat_fitnode, \
|
|
370
|
+
orbphase_fitnode, spin_evolution
|
|
371
|
+
|
|
372
|
+
# ------------------------------------------------------------------------
|
|
373
|
+
def _get_fit_params(self, m1, m2, chiA_vec, chiB_vec, f_ref,
|
|
374
|
+
extra_params_dict):
|
|
375
|
+
"""
|
|
376
|
+
If f_ref = -1, assumes the reference epoch is at t=-100M and
|
|
377
|
+
just returns the input spins, which are expected to be in
|
|
378
|
+
the coorbital frame at t=-100M.
|
|
379
|
+
Else, takes the spins at f_ref and evolves them using a combination of
|
|
380
|
+
PN and NRSur7dq4 until t=-100M. The returned spins are in the coorbital
|
|
381
|
+
frame at t=-100M.
|
|
382
|
+
|
|
383
|
+
See eval_fits.eval_nrfit() for the definitions of the arguments of
|
|
384
|
+
this function.
|
|
385
|
+
"""
|
|
386
|
+
|
|
387
|
+
unlimited_extrapolation = extra_params_dict["unlimited_extrapolation"]
|
|
388
|
+
|
|
389
|
+
q = m1/m2
|
|
390
|
+
M = m1 + m2 # m1, m2 are assumed to be in kgs
|
|
391
|
+
|
|
392
|
+
if f_ref == -1:
|
|
393
|
+
# If f_ref = -1, assume the reference epoch is at t=-100M from the
|
|
394
|
+
# total waveform amplitude peak. All input and output quantities
|
|
395
|
+
# are in the coorbital frame at this time.
|
|
396
|
+
chiA_coorb_fitnode = chiA_vec
|
|
397
|
+
chiB_coorb_fitnode = chiB_vec
|
|
398
|
+
# We set this to None, and this will be used in _eval_fit() to
|
|
399
|
+
# determine if the remnant vectors need any further transformations.
|
|
400
|
+
quat_fitnode = None
|
|
401
|
+
orbphase_fitnode = None
|
|
402
|
+
else:
|
|
403
|
+
# Else, evolve the spins from f_ref to t = -100 M from the peak.
|
|
404
|
+
|
|
405
|
+
# reference orbital angular frequency times the total mass (M*omega)
|
|
406
|
+
omega_ref = f_ref*np.pi*M*lal.G_SI/lal.C_SI**3
|
|
407
|
+
|
|
408
|
+
chiA_coorb_fitnode, chiB_coorb_fitnode, quat_fitnode, \
|
|
409
|
+
orbphase_fitnode, spin_evolution = self._evolve_spins(q, \
|
|
410
|
+
chiA_vec, chiB_vec, omega_ref, \
|
|
411
|
+
unlimited_extrapolation=unlimited_extrapolation)
|
|
412
|
+
|
|
413
|
+
fit_params = [q, chiA_coorb_fitnode, chiB_coorb_fitnode, quat_fitnode, \
|
|
414
|
+
orbphase_fitnode]
|
|
415
|
+
|
|
416
|
+
return fit_params
|
|
417
|
+
|
|
418
|
+
# ------------------------------------------------------------------------
|
|
419
|
+
def _eval_fit(self, fit_params, fit_type, extra_params_dict):
|
|
420
|
+
""" Evaluates a particular fit for NRSur7dq4Remnant using the fit_params
|
|
421
|
+
returned by _get_fit_params().
|
|
422
|
+
|
|
423
|
+
fit_type can be one of "FinalMass", "FinalSpin" or "RecoilKick".
|
|
424
|
+
|
|
425
|
+
Passing extra_params_dict = {"unlimited_extrapolation": True}, will
|
|
426
|
+
ignore any extrapolation errors. USE AT YOUR OWN RISK!! Default: False.
|
|
427
|
+
"""
|
|
428
|
+
|
|
429
|
+
q, chiA_vec, chiB_vec, quat_fitnode, orbphase_fitnode = fit_params
|
|
430
|
+
LALParams = lal.CreateDict()
|
|
431
|
+
if extra_params_dict["unlimited_extrapolation"]:
|
|
432
|
+
lal.DictInsertUINT4Value(LALParams, "unlimited_extrapolation", 1)
|
|
433
|
+
|
|
434
|
+
if fit_type == "FinalMass":
|
|
435
|
+
# FinalMass is given as a fraction of total mass
|
|
436
|
+
val = lalsim.NRSur7dq4Remnant(q,
|
|
437
|
+
chiA_vec[0], chiA_vec[1], chiA_vec[2],
|
|
438
|
+
chiB_vec[0], chiB_vec[1], chiB_vec[2], "mf",
|
|
439
|
+
LALParams).data[0]
|
|
440
|
+
else:
|
|
441
|
+
if fit_type == "FinalSpin":
|
|
442
|
+
val = lalsim.NRSur7dq4Remnant(q,
|
|
443
|
+
chiA_vec[0], chiA_vec[1], chiA_vec[2],
|
|
444
|
+
chiB_vec[0], chiB_vec[1], chiB_vec[2], "chif",
|
|
445
|
+
LALParams).data
|
|
446
|
+
elif fit_type == "RecoilKick":
|
|
447
|
+
val = lalsim.NRSur7dq4Remnant(q,
|
|
448
|
+
chiA_vec[0], chiA_vec[1], chiA_vec[2],
|
|
449
|
+
chiB_vec[0], chiB_vec[1], chiB_vec[2], "vf",
|
|
450
|
+
LALParams).data
|
|
451
|
+
else:
|
|
452
|
+
raise ValueError("Invalid fit_type=%s. This model only allows "
|
|
453
|
+
"'FinalMass', 'FinalSpin' and 'RecoilKick'."%fit_type)
|
|
454
|
+
|
|
455
|
+
# The fits are constructed in the coorbital frame at t=-100M.
|
|
456
|
+
# If quat_fitnode is None, this means that no spin evolution
|
|
457
|
+
# was done and the return values should be in the coorbital frame
|
|
458
|
+
# at t=-100. So, we don't need any further transformations.
|
|
459
|
+
if quat_fitnode is not None:
|
|
460
|
+
# If quat_fitnode is not None, we transform the remnant vectors
|
|
461
|
+
# into the LAL inertial frame, which is the same as the
|
|
462
|
+
# coorbital frame at omega0. This is done using the
|
|
463
|
+
# coprecessing frame quaternion and orbital phase at t=-100M.
|
|
464
|
+
# These are defined w.r.t. the reference LAL inertial frame
|
|
465
|
+
# defined at omega0.
|
|
466
|
+
val = quaternion_utils.transform_vector_coorb_to_inertial(val, \
|
|
467
|
+
orbphase_fitnode, quat_fitnode)
|
|
468
|
+
|
|
469
|
+
return np.atleast_1d(val)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
from .eval_fits import eval_nrfit
|