Pulsar scintillation screens¶
Analyze and model pulsar dynamic spectra, using secondary spectra and theta-theta decompositions for linear screens.
Everything here is super-preliminary and in constant flux.
Installation instructions¶
The package and its dependencies can be installed with:
pip install git+https://github.com/mhvk/screens.git#egg=screens
License¶
This project is Copyright (c) M.H. van Kerkwijk and licensed under the terms of the GNU GPL v3+ license. This package is based upon the Astropy package template which is licensed under the BSD 3-clause licence. See the licenses folder for more information.
Background¶
Simple scintillometry examples: the dynamic and secondary spectra, and wavefield for elementary situations
Scattering by multiple linear screens: derivation of the scattering angles and velocities
Scintillation velocities: derivation for a pulsar on a circular orbit and a single linear screen
Glossary of symbols: list of terms used in modelling scintillation velocities
Tutorials¶
Generating and processing scintillometry data¶
Single screen synthetic data example: how to generate the dynamic and secondary spectrum
Different transforms for constructing secondary spectra: how the nu-t transform preserves features best in wide-band data
Using the Screen1D class: generate synthetic data and visualize the system (for a single screen)
Simulating a multiple-screen system: how to use Screen1D for radiation scattered by multiple screens
Simulating VLBI Data: how to use the Screen1D class to generate VLBI data
Modelling scintillation velocities¶
This is a sequence of interconnected tutorials dealing with time series of scintillation velocities (or curvature). See also the background document on scintillation velocities for a derivation of the equation appearing in these tutorials.
Generating synthetic scintillation velocities: make synthetic time series of scintillation velocities or curvature
Fitting scintillation velocities: fit a phenomenological model to a time series of scintillation velocities
Inferring physical parameters: retrieve the physical parameters of the system from the fit
Error analysis: propagate uncertainties from fitting parameters to physical parameters
Reference/API¶
screens.screen Module¶
Representations for sources, screens, and telescopes.
Warning
experimental, i.e., API likely to change. For an example,
see examples/two_screens.py
.
Classes¶
|
Source of radiation at a given position and velocity. |
|
Screen passing through a source of radiation. |
|
Telescope detecting a source of radiation. |
|
One-dimensional screen. |
Class Inheritance Diagram¶
screens.fields Module¶
Functions¶
|
Calculate phase part of a Fourier transform like operation. |
|
Given a set of scattering points, construct the dynamic wave field. |
|
Make a grid of theta that sample the parabola in a particular way. |
|
Indices to pairs of angles within bounds. |
screens.dynspec Module¶
Classes¶
|
Dynamic spectrum and its axes. |
Class Inheritance Diagram¶
screens.conjspec Module¶
Classes¶
|
Conjugate spectrum and methods to fit it. |
Class Inheritance Diagram¶
screens.remap Module¶
Functions¶
|
Cover the range spanned by a in n points. |
|
Remap DS(t, f) to new(t_map[t], f). |
screens.modeling Module¶
Classes to model dynamic and conjugate spectra.
This is very much work in progress, with a somewhat illogical combination of the various fitting methods in a single class.
Classes¶
|
Model a dynamic spectrum. |
|
Conjugate spectrum and methods to fit it. |
Class Inheritance Diagram¶
screens.visualization Package¶
Functions¶
|
Treat the arguments as axis arrays of an image, and get their extent. |
|
Draw a schematic of the thin-screen model of for scintillation. |
Classes¶
|