ccp9-community / pyblock

python module for performing blocking analysis on data containing serial correlations

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

pyblock

pyblock is a python module for performing a reblocking analysis on serially-correlated data.

The algorithms implemented in pyblock are not new; please see the documentation for references.

pyblock is compatible with (and tested on!) python 2.7 and python 3.3-3.4 and should work on any other version supported by pandas.

https://travis-ci.org/jsspencer/pyblock.svg?branch=master

Documentation

Documentation and a simple tutorial can be found in the docs subdirectory and on readthedocs.

Installation

pyblock can be used simply by adding to $PYTHONPATH. Alternatively, it can be installed using distutils:

$ pip install pyblock

or from PyPI:

$ pip install pyblock

pyblock requires numpy and (optionally) pandas and matplotlib. Please see the documentation for more details.

License

Modified BSD license; see LICENSE for more details.

Please cite pyblock, James Spencer, http://github.com/jsspencer/pyblock if used to analyse data for an academic publication.

Author

James Spencer, Imperial College London

Contributing

Contributions are extremely welcome, either by raising an issue or contributing code. For code contributions, please try to follow the following points:

  1. Divide commits into logical units (e.g. don't mix feature development with refactoring).
  2. Ensure all existing tests pass.
  3. Create tests for new functionality. I aim for complete test coverage. (Currently the only function not tested is one that creates plots.)
  4. Write nice git commit messages (see Tim Pope's advice.)
  5. Send a pull request!

Acknowledgments

Will Vigor (Imperial College London) pointed out and wrote an early implementation of the algorithm to detect the optimal reblock length.

Tom Poole (Imperial College London) contributed code to handle weighted averages.

The HANDE FCIQMC/CCMC development team made several helpful comments and suggestions.

About

python module for performing blocking analysis on data containing serial correlations

License:Other


Languages

Language:Python 100.0%