This repository is used to share the code and data for microlensing diffraction and SL identification
One can run this code to reproduce the result quickly.
Step 1: Run code in the SLGW_simulation folder to generate unlensed gravitational waves and only macro-lensed gravitational wave data.
- Run
GWDistribution.py: Generate the parameters for gravitational wave events. - Run
Generate_GW_file_FD.py: Create the gravitational waveforms, save them to files, and then perform template matching to calculate the signal-to-noise ratio (SNR). - Run
ReadAndEstimate.py: Perform parameter estimation on the saved gravitational wave files. - Run
LensParameterGen.py: Generate the lens parameters. Thesersic_profile.pyfile is called here to set the microlensing density based on the Sersic profile. - Run
Generate_GW_file_Lensed_4_macro_4_SNR.py: Compute the SNR considering only macrolensing amplification, and save the waveform data into files.
- Run
Totalmicro.cpp: Calculate the microlensing diffraction integrals. (The microlensing data can be obtained from https://pan.bnu.edu.cn/l/X1QPKG.)
Step 3: Return to the SLGW_simulation folder and generate the strongly lensed gravitational waveforms affected by microlensing.
- Run
Generate_GW_file_Lensed_4_micro.py: Generate the waveforms considering microlensing effects. - Run
ReadAndEstimate_with_micro*.py: Perform parameter estimation for the microlensed images.
- Run
Plot_SNR_VS_match: Generate the theoretical match for all lensing cases. - Run
Gen_input_cat_file_unlens: Generate FRAMES data, input files, and DQ files for the unlensed cases, used as input for cWB. - Run
Gen_input_cat_file_micro_Total: Generate FRAMES data, input files, and DQ files for all microlensed cases. - Run
cal_match_unlens: Compute the match for unlensed cases. - Run
cal_match_micro_Totalandcal_match_micro_Total_final: Compute the match for microlensed cases. - Run
OverlapAna.py: Analyze the Bayes factor for pairwise comparisons of unlensed cases. - Run
Overlap_lens.py: Analyze the Bayes factor for pairwise comparisons of lensed cases. - Run
Plot_Overlap_and_find_high_bayes_event.py: Plot the Bayes factors for unlensed and lensed cases, and identify events with high Bayes factors.
- Run
Lens_Galaxy_Sample.py: Generate galaxy-galaxy strong lensing systems based on the JWST star catalog. - Run
Lens_light_population.pu: Calculate the effective radius (R_e) and magnitude of the lens galaxy using the fundamental plane. - Run
Source_light_population_improve.py: Identify the magnitudes, effective radius (R_e), and Sersic index (R_sersic_n) of the host galaxies for the three selected SLGW events from the JWST star catalog, and save cases with star formation rates greater than 1. - Run
Dec_Rec_Full_CSST/JWST_host_pop.py: Simulate the host galaxy-galaxy strong lensing system and reconstruct the lensing parameters. - Run
TD_consistent_JWST_host_pop.py: Calculate the time delay and sample the four-image region based on the star formation rate. - Run
Area_in_quadruple_region_host (unhost).py: Calculate the area of the quadruple region for all host (and unhost) galaxies. - Run
Bayes_factor4TD.py: Calculate the Bayes factors for the time delay in unlensed and host lens galaxies.