Skip to main content

Gravitational radiation from material orbiting a Kerr black hole

Project description

kerrgeodesic_gw

A SageMath package to compute gravitational radiation from material orbiting a Kerr black hole

This package makes use of SageMath functionalities developed through the SageManifolds project and is part of the Black Hole Perturbation Toolkit.

Installation

Requirements

This package requires the Python-based free mathematics software system SageMath (at least version 9.3). For versions of SageMath lower than 9.3, only version 0.3.2 of the package will work.

NB: the version of SageMath shipped with Ubuntu 20.04 is only 9.0; instead of the Ubuntu package sagemath, install then the most recent binary for Ubuntu 20.04 from SageMath download page.

Simple installation from PyPI

It suffices to run

sage -pip install kerrgeodesic_gw

to have the package ready to use in SageMath. See however install from source below if you want to build a local version of the documentation or modify the source files (development).

NB1 (Ubuntu users): if you have installed SageMath as the system package sagemath (e.g. via apt-get install), the installation is system wide and does not allow to use -pip install at the user level. Install instead SageMath from the most recent binary tar ball for Ubuntu from SageMath download page.

NB2: on the CoCalc cloud computing platform, you need to add the option --user, i.e. open a terminal and run

sage -pip install --user kerrgeodesic_gw

Here is the kerrgeodesic_gw page on PyPI (the Python Package Index).

Install from source

Download the source from the git repository:

git clone https://github.com/BlackHolePerturbationToolkit/kerrgeodesic_gw.git

This creates a directory kerrgeodesic_gw.

Run

sage -pip install --upgrade --no-index -v kerrgeodesic_gw

to install the package in SageMath. A shortcut of the above command is provided by the Makefile distributed with the package:

cd kerrgeodesic_gw
make install

NB: on CoCalc, you need to add the option --user, i.e. open a terminal and run

git clone https://github.com/BlackHolePerturbationToolkit/kerrgeodesic_gw.git
sage -pip install --user --upgrade --no-index -v kerrgeodesic_gw

Install for development

If you plan to edit the package source, you should add the option -e to the pip install, i.e. run

sage -pip install --upgrade --no-index -v -e kerrgeodesic_gw

or equivalently

cd kerrgeodesic_gw
make develop

Usage

Once the package is installed, you can use it in SageMath, like for instance:

sage: from kerrgeodesic_gw import spin_weighted_spherical_harmonic
sage: theta, phi = var('theta phi')
sage: spin_weighted_spherical_harmonic(-2, 2, 1, theta, phi)
1/4*(sqrt(5)*cos(theta) + sqrt(5))*e^(I*phi)*sin(theta)/sqrt(pi)

Usage in a virtual Python environment (no SageMath installation required)

Download the source from the git repository:

git clone https://github.com/BlackHolePerturbationToolkit/kerrgeodesic_gw.git

This creates a directory kerrgeodesic_gw.

Create and activate a virtual environment:

python3 -m venv venv_kerrgeodesic_gw
. venv_kerrgeodesic_gw/bin/activate

Install the package in the virtual environment:

pip install -e .[passagemath]

This automatically installs the modularized parts of the Sage library that are needed by the package.

Start Python:

python3

Import and use the package:

>>> from sage.all__sagemath_symbolics import *
>>> from sage.all__sagemath_plot import *
>>> from kerrgeodesic_gw import spin_weighted_spherical_harmonic
>>> theta, phi = var('theta phi')
>>> spin_weighted_spherical_harmonic(-2, 2, 1, theta, phi)
1/4*(sqrt(5)*cos(theta) + sqrt(5))*e^(I*phi)*sin(theta)/sqrt(pi)

Tests

This package is configured for tests written in the documentation strings of the source files, also known as doctests. You may then test the install by running, from the root of the package tree (i.e. the directory kerrgeodesic_gw created by the git clone),

sage -t kerrgeodesic_gw

You should then get the message All tests passed!

Alternatively, you can run (from the same directory)

make test

Documentation

The package documentation can be generated using SageMath's Sphinx installation:

cd docs
sage -sh -c "make html"

A shorthand of the above is

make doc

The html reference manual is then at

kerrgeodesic_gw/docs/build/html/index.html

For the LaTeX documentation, use

make doc-pdf

The pdf reference manual is then

kerrgeodesic_gw/docs/build/latex/kerrgeodesic_gw.pdf

Online documentation

Authors

  • Eric Gourgoulhon
  • Alexandre Le Tiec
  • Frederic Vincent
  • Niels Warburton

Reference: E. Gourgoulhon, A. Le Tiec, F. H. Vincent & N. Warburton: Gravitational waves from bodies orbiting the Galactic center black hole and their detectability by LISA, A&A 627, A92 (2019) (preprint: arXiv:1903.02049)

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

kerrgeodesic_gw-0.5.tar.gz (730.6 kB view details)

Uploaded Source

Built Distribution

kerrgeodesic_gw-0.5-py3-none-any.whl (746.7 kB view details)

Uploaded Python 3

File details

Details for the file kerrgeodesic_gw-0.5.tar.gz.

File metadata

  • Download URL: kerrgeodesic_gw-0.5.tar.gz
  • Upload date:
  • Size: 730.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for kerrgeodesic_gw-0.5.tar.gz
Algorithm Hash digest
SHA256 8307675229afbf61b7cdae3dc380a3620d6213b367e90f0f7e99d817c5f17b68
MD5 8a9a541df9e1f6f321ca742dfbbdcef3
BLAKE2b-256 c261edc5c8b260769b85e660128aca5ea7feb09f458b9c993cbf88978125bdc1

See more details on using hashes here.

File details

Details for the file kerrgeodesic_gw-0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for kerrgeodesic_gw-0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 12c36bb42a4244b17677236a00b23a33e93b2f89c43af5592d9291afa942b0b1
MD5 375d2cedd937f89e502a12f6c5475702
BLAKE2b-256 d201ee04b51bd132b4711b49640a9abf441de7fca7008bb82d4b267eb4ff522a

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