GWAnalysis consists of two main packages: DiscreteFunction and DataAnalysis.
DiscreteFunction is a set of python classes which implements 1D function objects based
on a discrete set of points. It is similar to Mathematica's InterpolatingFunction
in that it allows to retrieve a function's value at continuous coordinate values
via interpolation.
A subset of features includes:
- interpolation/resampling,
- pointwise addition, subtraction, multiplication, and division of DiscreteFunction objects,
- differentiation, integration,
- (inverse) Fourier transformation,
- finding discrete/continuous maxima,
- blending of functions.
A derived class, WaveFunction, is a special sort of DiscreteFunction
implementing computation of phase, amplitude, frequency, and other
aspects related to wave functions.
DataAnalysis uses DiscreteFunction/WaveFunction objects to compute
a variety of quantities related to GW analysis.
Listing only a few features here:
- Computation of h from Psi4 or the Bondi news via fixed-frequency
integration.
- Computation of signal-to-noise ratios and best/minmax (mis)matches
for (ad)LIGO, (ad)Virgo and LISA.
- Radiated energy, angular and linear momentum.
- Mode reconstruction.
- Transformation from code units to physical units.