Skip to content

High-precision numerical-relativity waveforms of boson-star binaries

License

Notifications You must be signed in to change notification settings

tamaraevst/Boson-star-waveforms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Boson-star-waveforms

This repository contains numerical-relativity (NR) waveforms of boson-star (BS) binaries from two independent NR codes, GRChombo and Lean. The data for each binary configuration is stored in the HDF5 format (the Hierarchical Data Format version 5) following the standards of the LIGO Algorithms Library (LAL) supporting the simplest format 1 (see here for more details).

Our conventions

You should familiriase yourself with our papers on BSs to understand in more detail how our numerical simulations are set-up (please refer to References below). Here, we briefly outline some important BS nomenclature. BSs are modelled by a complex scalar field, which we decompose into:

$\varphi = A(r) e^{i (\epsilon \omega t + \delta \phi)}$,

where

  • $A(r)$ is the amplitude, so that $A_{ctr} = A(0)$ is the central amplitude of the BS,
  • $\epsilon$ is parameter controlling the rotation of the scalar field in the complex plane, and is either $\epsilon = 1$ (regular BS) or $\epsilon = -1$ (anti-boson star),
  • $\omega$ is the frequency,
  • $\delta \phi$ is the phase off-set parameter.

File names

The files have specific naming conventions that we describe below. We note that the names of the files do not contain all of the information about the simulations, which should instead be read from the attributes inside the file. We can use GRChombo_BBSsol02_A17A17q100d17p000a_h40.h5 as our reference example.

  • The first string corresponds to the code name. i.e. either GRChombo or Lean.
  • Next, it is followed by BBSsol02 standing for binary boson star with solitonic potential and the self-interaction term $\sigma_0 = 0.2$.
  • We then have A17A17 denoting the central amplitudes of the two stars, here they have the same amplitudes of $A_{ctr} = 0.17$.
  • Next, we give the mass ratio q100 corresponding to equal-mass $q=1$.
  • The separation of $d=17$ is given via d17 suffix.
  • Whether a phase off-set is applied is indicated by p000; here there is no phase-offset applied. However, if a binary had a phase-offset $\delta \phi = \pi$, we would have p180 in the name.
  • Whether one of the stars is anti-boson is indicated by 'a' and if no 'a' is appended, this means that both of the stars are regular BSs.
  • Finally, h40 stands for the grid spacing on the finest level, i.e. here it is $dx=1/40$.

Reading files

Here we show a simple example on how you can use h5py package to read our HDF5 files.

You first need to load the data.

#Import modules
import h5py as h5
import numpy as np

filename = "./GRChombo_BBSsol02_A17A17q100d17p000_Res40.h5" #Pick you favourite filename
f = h5.File(filename, "r") #Read the file

You can then access the attributes of the file, containing additional information about the simulation and read-off their values/strings.

for key, val in f.attrs.items():
        print("    %s: %s" % (key, val))

For example, the attributes contain the key initpos1-code-units, which is the initial position of the first star in code units, and its value is:

initpos1-code-units: "-0.16 8.76286 0.0"

NOTE: In order to avoid ambiguities and be as detailed as possible in the meta-data we provide, for centain meta-data, like positions and extraction radii, we report values both in code and mass units. We remark that this should simply be used as additional information for users. As the strain data provided in the files is already dimensionless and scaled appropriately, no further scalings by the individual masses of the boson stars and/or extraction radii is necessary. Of course, there will be further scalings as you start injecting these signals and assuming binaries of certain total masses and at some limunosity distances. However, this is usually taken care of in the downstream anlaysis and the parameter estimation pipeline you are using.

The attributes' keys show information required for format 1 of LAL NR injections as well as BS specific information such as central amplutudes, dephasing and many more.

Finally, you may want to access the information on phases and amplitudes of a specific $(lm)$-mode. For example:

#Print the data available in the group for the amplitude (22)-mode
for dset in f["amp_l2_m2"].keys():      
    print (dset)

time = np.array(f["amp_l2_m2"]["X"]) #time array for the amplitude of the (22)-mode 
amplitude = np.array(f["amp_l2_m2"]["Y"]) #amplitude array for the (22)-mode

import matplotlib.pyplot as plt 

#Plot the GW amplitude of the (22)-mode

plt.plot(time, amplitude)
plt.xlabel("Time")
plt.ylabel("Amplitude")
plt.show()

Now, you are ready to use the HDF5 files!

Further information on codes

GRChombo & Lean:

GRChombo:

Lean:

References

About

High-precision numerical-relativity waveforms of boson-star binaries

Resources

License

Stars

Watchers

Forks

Packages

No packages published