Calculate quasinormal modes of Kerr black holes.
Project description
Welcome to qnm
Python implementation of Cook-Zalutskiy spectral approach to computing Kerr QNM frequencies.
TODO basic info
Installation
PyPI
qnm is available through PyPI:
pip install qnm
From source
git clone https://github.com/duetosymmetry/qnm.git
cd qnm
python setup.py install
If you do not have root permissions, replace the last step with
python setup.py install --user
Dependencies
All of these can be installed through pip or conda.
Documentation
Automatically-generated API documentation is available on Read the Docs: qnm.
Usage
The highest-level interface is via qnm.cached.KerrSeqCache
, which
load cached spin sequences from disk. A spin sequence is just a mode
labeled by (s,l,m,n), with the spin a ranging from a=0 to some
maximum, e.g. 0.9995. A large number of low-lying spin sequences have
been precomputed and are available online. The first time you use the
package, download the precomputed sequences:
>>> import qnm
>>> qnm.download_data() # Only need to do this once
Trying to fetch https://duetosymmetry.com/files/qnm/data.tar.bz2
Trying to decompress file /<something>/qnm/data.tar.bz2
Data directory /<something>/qnm/data contains 860 pickle files
Then, use qnm.cached.KerrSeqCache
to load a
qnm.spinsequence.KerrSpinSeq
of interest. If the mode is not
available, it will try to compute it (see detailed documentation for
how to control that calculation).
>>> ksc = qnm.cached.KerrSeqCache(init_schw=True) # Only need init_schw once
>>> mode_seq = ksc(s=-2,l=2,m=2,n=0)
>>> omega, A, C = mode_seq(a=0.68)
>>> print(omega)
(0.5239751042900845-0.08151262363119974j)
Calling a spin sequence with mode_seq(a)
will return the complex
quasinormal mode frequency omega, the complex angular separation
constant A, and a vector C of coefficients for decomposing the
associated spin-weighted spheroidal harmonics as a sum of
spin-weighted spherical harmonics.
Credits
The code is developed and maintained by Leo C. Stein.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.