Skip to main content

Accelerating gravitational wave template generation with machine learning.

Project description

CI Pipeline for mlgw_bns Documentation Status PyPI version Code style: black

Machine Learning for Gravitational Waves from Binary Neutron Star mergers

This package's purpose is to speed up the generation of template gravitational waveforms for binary neutron star mergers by training a machine learning model on a dataset of waveforms generated with some physically-motivated surrogate.

It is able to reconstruct them with mismatches lower than 1/10000, with as little as 1000 training waveforms; the accuracy then steadily improves as more training waveforms are used.

Currently, the only model used for training is TEOBResumS, but it is planned to introduce the possibility to use others.

The documentation can be found here.

Installation

To install the package, use

pip install mlgw-bns

For more details see the documentation.

Inner workings

The main steps taken by mlgw_bns to train on a dataset are as follows:

  • generate the dataset, consisting of EOB waveforms
  • decompose the Fourier transforms of the waveforms into phase and amplitude
  • downsample the dataset to a few thousand points
  • compute the residuals of the EOB waveforms from PN ones
  • apply a PCA to reduce the dimensionality to a few tens of real numbers
  • train a neural network on the relation between the waveform parameters and the PCA components

After this, the model can reconstruct a waveform within its parameter space, resampled at arbitrary points in frequency space.

In several of the training steps data-driven optimizations are performed:

  • the points at which the waveforms are downsampled are not uniformly chosen: instead, a greedy downsampling algorithm determines them
  • the hyperparameters for the neural network are optimized, according to both the time taken for the training and the estimated reconstruction error, also varying the number of training waveforms available.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mlgw_bns-0.9.0a0.tar.gz (1.3 MB view details)

Uploaded Source

Built Distribution

mlgw_bns-0.9.0a0-py3-none-any.whl (1.3 MB view details)

Uploaded Python 3

File details

Details for the file mlgw_bns-0.9.0a0.tar.gz.

File metadata

  • Download URL: mlgw_bns-0.9.0a0.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.9.7 Linux/5.13.0-30-generic

File hashes

Hashes for mlgw_bns-0.9.0a0.tar.gz
Algorithm Hash digest
SHA256 db123d3dab2d27df6fcd8048a3628c8c1a43f55ad73ea206c15bed0e1a52b6f2
MD5 b68f2f814ba2f76275ea672b24b6bc92
BLAKE2b-256 f501b103840676e576b8a02e70e5c67e71e57acf01587825f86fd39c24079e17

See more details on using hashes here.

File details

Details for the file mlgw_bns-0.9.0a0-py3-none-any.whl.

File metadata

  • Download URL: mlgw_bns-0.9.0a0-py3-none-any.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.9.7 Linux/5.13.0-30-generic

File hashes

Hashes for mlgw_bns-0.9.0a0-py3-none-any.whl
Algorithm Hash digest
SHA256 b83e63af63cab2c67e165ed59813590dffea0cae5f0245ef0a36873b9eca42f2
MD5 d9f4e11d2400b8df721ef167f9166605
BLAKE2b-256 b64fbf0dd8868ef06244edda60f4e55bb2d4615b946c14ea9754e08cd9c62294

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page