Hello, I am an undergraduate student working on a project about GW, and I met some problems when I was trying to replicate LIGO’s results for GW190521 with parallel bilby and SEOBNR waveforms.
In my analysis, I applied the priors from GWTC2.1 via Zenodo, which I had successfully used with IMRPhenomXPHM and NRSur7dq4 directly to SEOBNRv4PHM. I set the reference frequency and minimum frequency of the waveform to 11 Hz, with a maximum frequency of 512 Hz and a sampling rate of 1024 Hz. However, I encountered an XLAL Error, specifically an Input Domain Error.
For example:
XLAL Error - XLALSimIMRSpinPrecEOBWaveformAll: Intitial frequency is too high, the limit is 5.9523220274
XLAL Error - XLALSimIMRSpinPrecEOBWaveform (/home/conda/feedstock_root/build_artifacts/lalsimulation-split_1655125056255/work/lib/LALSimIMRSpinPrecEOBv4P.c:949): Input domain error
XLAL Error - XLALSimInspiralChooseTDWaveform (/home/conda/feedstock_root/build_artifacts/lalsimulation-split_1655125056255/work/lib/LALSimInspiral.c:1232): Internal function call failed: Input domain error
XLAL Error - XLALSimInspiralTD (/home/conda/feedstock_root/build_artifacts/lalsimulation-split_1655125056255/work/lib/LALSimInspiral.c:2770): Internal function call failed: Input domain error
XLAL Error - XLALSimInspiralFD (/home/conda/feedstock_root/build_artifacts/lalsimulation-split_1655125056255/work/lib/LALSimInspiral.c:3021): Internal function call failed: Input domain error
14:06 bilby WARNING : Evaluating the waveform failed with error: Internal function call failed: Input domain error
The parameters were {‘mass_1’: 3.8091012145306735e+32, ‘mass_2’: 2.5359647991946067e+32, ‘spin_1’: (-0.06276776212672577, -0.06257253424489016, 0.02720899652995396), ‘spin_2’: (-0.24425532398084737, -0.006407378269556524, 0.14880372503320358), ‘luminosity_distance’: 2.0084181278763156e+26, ‘iota’: 0.8024391791545143, ‘phase’: 0.0, ‘eccentricity’: 0.0, ‘start_frequency’: 11}
Likelihood will be set to -inf.
This error perplexed me because the same settings worked well for IMRPhenomXPHM and NRSur7dq4 (though initially, some errors about fmin occurred), yielding consistent results. However, they seem incompatible with SEOBNRv4PHM. I am uncertain whether this is due to inherent differences in the parameter spaces of these waveform models or whether SEOBNR waveforms require specifically set priors.
Furthermore, I noticed that when using NRSur7dq4 with Parallel Bilby, some errors existed initially, as mentioned before. However, as the process continued, no further errors occurred, and the result agreed well with that of IMRPhenomXPHM and GWTC-2. In contrast, with Bilby, my process was stopped directly upon encountering an error, preventing me from completing the computation. Thus, I wonder whether encountering errors during sampling is a common occurrence in PE that can be ignored.
Moreover, I am unable to use SEOBNRv5PHM, SEOBNRv5EHM, and SEOBNRv5HM with both Bilby and Parallel Bilby. I couldn’t find these models after reinstalling LALSuite following the installation of PySEOBNR. I followed the installation requirements for PySEOBNR and reinstalled LALSuite via Conda in an environment where Bilby and Parallel Bilby had already been installed. I suppose I may have missed some important documentation about the installation or simply installed it incorrectly, or do I need to recompile the codes of bilby and pbilby?
Thanks in advance for your help.
PS: The following is my prior on GW190521
a_1 = Uniform(minimum=0, maximum=0.99, name=‘a_1’, latex_label=‘$a_1$’, unit=None, boundary=None)
a_2 = Uniform(minimum=0, maximum=0.99, name=‘a_2’, latex_label=‘$a_2$’, unit=None, boundary=None)
chirp_mass = bilby.gw.prior.UniformInComponentsChirpMass(minimum=50, maximum=150, name=‘chirp_mass’, latex_label=‘$\mathcal{M}$’, unit=‘$M_{\odot}$’, boundary=None)
geocent_time = Uniform(minimum=1242442967.359473, maximum=1242442967.5594728, name=‘geocent_time’, latex_label=‘$t_c$’, unit=‘$s$’, boundary=None)
luminosity_distance = PowerLaw(alpha=2, minimum=100, maximum=10000, name=‘luminosity_distance’, latex_label=‘$d_L$’, unit=‘Mpc’, boundary=None)
total_mass = Constraint(minimum=60, maximum=400, name=‘total_mass’, latex_label=‘$M$’, unit=None)
mass_1 = Constraint(minimum=30, maximum=200, name=‘mass_1’, latex_label=‘$m_1$’, unit=None)
mass_2 = Constraint(minimum=30, maximum=200, name=‘mass_2’, latex_label=‘$m_2$’, unit=None)
mass_ratio = bilby.gw.prior.UniformInComponentsMassRatio(minimum=0.167, maximum=1.0, name=‘mass_ratio’, latex_label=‘$q$’, unit=None, boundary=None)
phase = Uniform(minimum=0, maximum=6.283185307179586, name=‘phase’, latex_label=‘$\phi$’, unit=None, boundary=‘periodic’)
phi_12 = Uniform(minimum=0, maximum=6.283185307179586, name=‘phi_12’, latex_label=‘$\Delta\phi$’, unit=None, boundary=‘periodic’)
phi_jl = Uniform(minimum=0, maximum=6.283185307179586, name=‘phi_jl’, latex_label=‘$\phi_{JL}$’, unit=None, boundary=‘periodic’)
psi = Uniform(minimum=0, maximum=3.141592653589793, name=‘psi’, latex_label=‘$\psi$’, unit=None, boundary=‘periodic’)
theta_jn = Sine(minimum=0, maximum=3.141592653589793, name=‘theta_jn’, latex_label=‘$\theta_{JN}$’, unit=None, boundary=None)
tilt_1 = Sine(minimum=0, maximum=3.141592653589793, name=‘tilt_1’, latex_label=‘$\theta_1$’, unit=None, boundary=None)
tilt_2 = Sine(minimum=0, maximum=3.141592653589793, name=‘tilt_2’, latex_label=‘$\theta_2$’, unit=None, boundary=None)
time_jitter = Uniform(minimum=-0.001953125, maximum=0.001953125, name=None, latex_label=None, unit=None, boundary=‘periodic’)
azimuth = Uniform(minimum=0, maximum=6.283185307179586, name=None, latex_label=‘$\epsilon$’, unit=None, boundary=‘periodic’)
zenith = Sine(minimum=0, maximum=3.141592653589793, name=None, latex_label=‘$\kappa$’, unit=None, boundary=None)