Science Score: 23.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 3 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.8%) to scientific vocabulary
Repository
Rewrite of PAL
Basic Info
- Host: GitHub
- Owner: jellis18
- Language: Python
- Default Branch: master
- Size: 16.7 MB
Statistics
- Stars: 9
- Watchers: 3
- Forks: 6
- Open Issues: 1
- Releases: 0
Metadata Files
README.md
PAL2 (PTA Algorithm Library)
PAL2 is a Bayesian inference package for pulsar timing data. PAL2 is a re-write of the original PAL in which we use a very similar signal dictionary formalism introduced in piccard. This code is meant to perform a large number of analyses on pulsar timing data including:
- Noise characterization
- Detection and characterization of GWB (isotropic and anisotropic) and continuous GWs
- Non-linear pulsar timing
- Dispersion measure variation modeling
Dependencies
The code has a large number of Python and non-Python dependencies. The python dependencies should should be installed automatically when following the directions below. You will have to manually install the following non-Python packages (preferably with a package manager):
- tempo2
- hdf5
- healpix
- openmpi
PAL2 also supports MultiNest but it must be installed separately.
- MultiNest (version 2.18 or later])
- PyMultiNest
Installation
You will need to have tempo2 and a working C, C++ and Fortran compiler.
Anaconda Install
The easiest way for installation is to use Anaconda or Miniconda. Anaconda comes with many of the packages that we will need whereas Miniconda only comes with a small base Python installation. Once you have Anaconda (or Miniconda) installed you should get a academic license and install the MKL optimizations for fast linear algebra. With either installation it is best to set up an python environment with all of the needed dependencies. This can easily be done in Anaconda with
conda env create -f environment.yml
source activate pal2_conda
Be sure to follow the instructions and activate the Anaconda environment. This will create an Anaconda environment with nearly all of the required dependencies installed except libstempo. The libstempo package can be installed with
pip install libstempo --install-option="--with-tempo2=$TEMPO2"
if you have your TEMPO2 environment variable set correctly. To finalize the installation do
python setup.py install
Standard Install
You can also install PAL2 with a python virutal environment. However for some clusters this may not be appropriate and you can follow the instructions below but append a --user flag on all of the pip and setup.py commands. Once you have the virualenv activated first do:
pip install numpy
pip install cython
pip install -r requirements.txt
This will install most of the dependencies except libstempo. The libstempo package can be installed with
pip install libstempo --install-option="--with-tempo2=$TEMPO2"
if you have your TEMPO2 environment variable set correctly. To finalize the installation do
python setup.py install
Known Issues
There are a few known issues with the PAL2 code that are being addressed:
- During installation
pipmay have problems with the healpy package on Mac OSX. To overcome any potential problems you may need to includeexport CC=/path/to/gccandexport CXX=/path/to/g++. - the
mark6likelihood function is currently not compatible with cross correlations in the GWB. You will need to use the--noCorrelationsflag withPAL2_run.pyor use theincCorrelations=Falseflag in the likelihood if using your own interface. - You may have problems installing
basemapwith pip. You will first need to installgeowith your package manager. Then you can installbasemapviapip install basemap --allow-external basemap --allow-unverified basemap.
Example Data
We have included two datasets for testing purposes.
- Open dataset 1 from the IPTA MDC. Good for testing GWB detection and characterization.
- The 5-year data release from NANOGrav. Good for testing realistic noise models.
Manual
Example ipython notebook can be found in here.
Attribution
If you make use of this code please cite:
@misc{justin_ellis_2017_251456,
author = {Justin Ellis and
Rutger van Haasteren},
title = {jellis18/PAL2: PAL2},
month = jan,
year = 2017,
doi = {10.5281/zenodo.251456},
url = {https://doi.org/10.5281/zenodo.251456}
}
Contact
Owner
- Name: Justin Ellis
- Login: jellis18
- Kind: user
- Location: Raleigh, NC
- Company: Infinia ML
- Website: https://jellis18.github.io
- Twitter: justinellis18
- Repositories: 14
- Profile: https://github.com/jellis18
Data Scientist at Infinia ML in Durham, NC
GitHub Events
Total
- Fork event: 1
Last Year
- Fork event: 1
Committers
Last synced: almost 3 years ago
Top Committers
| Name | Commits | |
|---|---|---|
| Justin Ellis | j****8@g****m | 331 |
| Rutger van Haasteren | v****n@g****m | 2 |
Issues and Pull Requests
Last synced: 11 months ago
All Time
- Total issues: 0
- Total pull requests: 3
- Average time to close issues: N/A
- Average time to close pull requests: 38 minutes
- Total issue authors: 0
- Total pull request authors: 2
- Average comments per issue: 0
- Average comments per pull request: 2.33
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
- vhaasteren (2)
- paulthebaker (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 6 last-month
- Total dependent packages: 0
- Total dependent repositories: 1
- Total versions: 2
- Total maintainers: 1
pypi.org: pal2
PTA analysis software
- Homepage: https://github.com/jellis18/PAL2
- Documentation: https://pal2.readthedocs.io/
- License: GPLv3
-
Latest release: 2015.4
published about 11 years ago
Rankings
Maintainers (1)
Dependencies
- acor ==1.1.1
- astropy ==1.1.1
- backports-abc ==0.4
- backports.ssl-match-hostname ==3.4.0.2
- healpy ==1.9.1
- ipython-genutils ==0.1.0
- jupyter-client ==4.1.1
- jupyter-console ==4.1.0
- jupyter-core ==4.0.6
- line-profiler ==1.0
- mpi4py ==2.0.0
- Cython >=0.22.1
- Jinja2 >=2.7.3
- MarkupSafe >=0.23
- Pygments >=2.0.2
- acor >=1.1.1
- astropy >=1.0.3
- backports.ssl-match-hostname >=3.4.0.2
- certifi >=2015.4.28
- ephem >=3.7.5.3
- funcsigs >=0.4
- functools32 >=3.2.3.post2
- gnureadline >=6.3.3
- h5py >=2.5.0
- healpy >=1.8.6
- ipython >=3.2.1
- jsonschema >=2.5.1
- matplotlib >=1.4.3
- mistune >=0.7
- mock >=1.2.0
- mpi4py >=1.3.1
- nose >=1.3.7
- numexpr >=2.4.3
- numpy >=1.9.2
- pbr >=1.3.0
- ptyprocess >=0.5
- pyparsing >=2.0.3
- python-dateutil >=2.4.2
- pytz >=2015.4
- pyzmq >=14.7.0
- scikit-sparse >=0.4
- scipy >=0.15.1
- six >=1.9.0
- statsmodels >=0.6.1
- terminado >=0.5
- tornado >=4.2.1
- wheel >=0.24.0
- cython *
- h5py *
- healpy *
- numexpr *
- numpy *
- scipy *