epyc
epyc: Computational experiment management in Python - Published in JOSS (2022)
Science Score: 98.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 4 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org, zenodo.org -
○Committers with academic emails
-
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Scientific Fields
Engineering
Computer Science -
40% confidence
Last synced: 4 months ago
·
JSON representation
·
Repository
Python computational experiment management
Basic Info
- Host: GitHub
- Owner: simoninireland
- License: gpl-3.0
- Language: Python
- Default Branch: master
- Size: 1.39 MB
Statistics
- Stars: 12
- Watchers: 4
- Forks: 5
- Open Issues: 0
- Releases: 1
Created over 9 years ago
· Last pushed over 3 years ago
Metadata Files
Readme
Changelog
Contributing
License
Citation
README.rst
epyc: Python computational experiment management
================================================
.. image:: https://badge.fury.io/py/epyc.svg
:target: https://pypi.org/project/epyc/
.. image:: https://readthedocs.org/projects/epyc/badge/?version=latest
:target: https://epyc.readthedocs.io/en/latest/index.html
.. image:: https://github.com/simoninireland/epyc/actions/workflows/ci.yaml/badge.svg
:target: https://github.com/simoninireland/epyc/actions
.. image:: https://zenodo.org/badge/63255319.svg
:target: https://zenodo.org/badge/latestdoi/63255319
.. image:: https://joss.theoj.org/papers/10.21105/joss.03764/status.svg
:target: https://doi.org/10.21105/joss.03764
.. image:: https://www.gnu.org/graphics/gplv3-88x31.png
:target: https://www.gnu.org/licenses/gpl-3.0.en.html
Overview
--------
``epyc`` is a Python module for controlling a long-running series of
computational experiments, as is often found when writing simulations
of complex networks and other such domains. There is often a need to
perform a computation across a multi-dimensional parameter space,
varying the parameters, performing and aggregating multiple
repetitions, and wrangling results for analysis and
presentation. Often the experiments being performed are on such a
scale as to require the use of a computing cluster to perform multiple
experiments simultaneously.
Managing all these tasks is complicated, so ``epyc`` tries to automate
it. It provides a way to define a "laboratory" performing a collection
of "experiments" whose parameters and results are collected togethr into "result
sets" and recorded in a "lab
notebook" for later retrieval. Laboratories can be sequential (for a
single machine) or parallel (to use a multicore or cluster of
machines); lab notebooks can be persistent to allow experiments to be
fired-off and their results retrieved later -- handy if you use a
laptop. Notebooks store all the data and metadata in a portable format
to improve the reproducibility of computational experiments.
``epyc`` also includes a small number of "experiment combinators" that
separate the logic of a single experiment from the logic of performing
multiple repetitions and other structuring tasks. This means that
any experiment can be repeated and statistically summarised, for
example.
Installation
------------
``epyc`` works with Python 3.6 and above, and with PyPy3. You can install
it directly from PyPi using ``pip``:
::
pip install epyc
The master distribution of ``epyc`` is hosted on GitHub. To obtain a
copy, just clone the repo:
::
git clone git@github.com:simoninireland/epyc.git
cd epyc
pip install .
Examples
--------
See `the examples directory `_ for code examples.
Documentation
-------------
API documentation for ``epyc`` can be found on `ReadTheDocs `_.
You can also read a Jupyter notebook describing several ``epyc`` use
cases online `here `_.
Author and license
------------------
Copyright (c) 2016-2022, Simon Dobson
Licensed under the `GNU General Public Licence v3 `_.
Owner
- Name: Simon Dobson
- Login: simoninireland
- Kind: user
- Location: St Andrews, UK
- Company: University of St Andrews
- Website: https://simondobson.org
- Repositories: 33
- Profile: https://github.com/simoninireland
I'm a computer scientist interested in complex systems, where chains of cause and effect can be difficult to establish. #python #emacs #lisp
JOSS Publication
epyc: Computational experiment management in Python
Published
April 18, 2022
Volume 7, Issue 72, Page 3764
Tags
computational science cluster computing high-performance computing automation experimental designCitation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software and want to cite it, please reference the following." authors: - family-names: "Dobson" given-names: "Simon" orcid: "https://orcid.org/0000-0001-9633-2103" title: "epyc" doi: 10.5281/zenodo.6460760 date-released: 2022-04-14 url: "https://github.com/simoninireland/epyc"
GitHub Events
Total
- Watch event: 2
Last Year
- Watch event: 2
Committers
Last synced: 5 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Simon Dobson | s****n@c****g | 530 |
| amritagos | a****6@g****m | 3 |
| Hristo Georgiev | h****v@g****m | 1 |
Committer Domains (Top 20 + Academic)
computer.org: 1
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 12
- Total pull requests: 3
- Average time to close issues: 6 months
- Average time to close pull requests: 24 days
- Total issue authors: 6
- Total pull request authors: 3
- Average comments per issue: 1.92
- Average comments per pull request: 0.67
- Merged pull requests: 2
- Bot issues: 0
- Bot pull requests: 1
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
- lorenzo-rovigatti (4)
- zbeekman (3)
- michaeljpitcher (2)
- zelenkastiot (1)
- amritagos (1)
- alexvoss (1)
Pull Request Authors
- amritagos (1)
- dependabot[bot] (1)
- hristog (1)
Top Labels
Issue Labels
Pull Request Labels
dependencies (1)
Packages
- Total packages: 1
-
Total downloads:
- pypi 2,331 last-month
- Total dependent packages: 1
- Total dependent repositories: 4
- Total versions: 37
- Total maintainers: 1
pypi.org: epyc
Python computational experiment management
- Homepage: http://github.com/simoninireland/epyc
- Documentation: https://epyc.readthedocs.io/
- License: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
-
Latest release: 1.7.2
published over 3 years ago
Rankings
Dependent packages count: 4.8%
Dependent repos count: 7.5%
Average: 11.7%
Forks count: 14.2%
Downloads: 14.9%
Stargazers count: 17.1%
Maintainers (1)
Last synced:
4 months ago
Dependencies
dev-requirements.txt
pypi
- black * development
- coverage * development
- doc8 * development
- flake8 * development
- jedi * development
- jedi-language-server * development
- jupyter * development
- matplotlib * development
- mypy * development
- pylint * development
- rope * development
- seaborn * development
- sphinx * development
- sphinx-autodoc-typehints * development
- sphinx_rtd_theme * development
- tox * development
- twine * development
- wheel * development
requirements.txt
pypi
- click *
- cloudpickle *
- h5py *
- ipyparallel >=6.2.4
- joblib *
- numpy >=1.17.5
- pandas *
- pyzmq *
- requests *
- typing_extensions *
setup.py
pypi
- numpy *
