opcsim
opcsim is a python package for simulating low-cost optical particle sensors
Science Score: 46.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
✓DOI references
Found 2 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
✓Committers with academic emails
1 of 2 committers (50.0%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (19.4%) to scientific vocabulary
Repository
opcsim is a python package for simulating low-cost optical particle sensors
Basic Info
Statistics
- Stars: 17
- Watchers: 5
- Forks: 4
- Open Issues: 8
- Releases: 6
Metadata Files
README.md
opcsim
opcsim is a Python library for simulating low-cost Optical Particle Sensors (both Optical Particle Counters and Nephelometers) and their response to various aerosol distributions.
Citation
The paper for this library can be found on the AMT website here. It should be cited as:
Hagan, D.H. and Kroll, J.H.: Assessing the accuracy of low-cost optical particle sensors using a physics-based approach, Atmos. Meas. Tech., 13, 6343-6355, https://doi.org/10.5194/amt-13-6343-2020, 2020.
Documentation
Full online documentation can be found here.
The docs include a tutorial, an example gallery, and an API Reference.
In addition, documentation can be built locally for development purposes. To do so, please check out the complete details in the contributing to opcsim section of the documentation.
Docker
If you are familiar with Docker, there is a Docker image available to get up and running with OPCSIM with ease. To get started with an ephemeral container with a jupyter lab interface, navigate to your preferred working directory and execute:
sh
$ docker run --rm -p 8888:8888 -e JUPYTER_ENABLE_LAB=yes -v "$PWD":/home/joyvan/work dhhagan/opcsim:latest
Once executed, you should see the url with token in your terminal that will allow you to bring up the jupyter lab instance.
Dependencies
Opcsim is supported for python3.6.1+.
Installation requires scipy, numpy, pandas, matplotlib, and seaborn.
Installation
To install (or upgrade to) the latest stable release:
```sh
$ pip install opcsim [--upgrade] ```
To install the development version directly from GitHub using pip:
```sh
$ pip install git+https://github.com/dhhagan/opcsim.git ```
In addition, you can either clone the repository and install from source or download/unzip the zip file and install from source using poetry:
```sh
$ git clone https://github.com/dhhagan/opcsim.git $ cd /opcsim $ poetry install ```
Testing
All tests are automagically run via GitHub actions and Travis.ci. For results of these tests, please click on the link in the above travis badge. In addition, you can run tests locally using poetry.
To run tests locally:
```sh
$ poetry run pytest tests ```
Development
opcsim development takes place on GitHub. Issues and bugs can be submitted and tracked via the GitHub Issue Tracker for this repository. As of v0.5.0, opcsim uses poetry for versioning and managing dependencies and releases.
Owner
- Name: David H Hagan
- Login: dhhagan
- Kind: user
- Location: Cambridge, MA
- Company: Massachusetts Institute of Technology
- Website: https://www.davidhagan.me
- Twitter: dhagan7
- Repositories: 54
- Profile: https://github.com/dhhagan
Building @quant-aq.
GitHub Events
Total
- Create event: 1
- Commit comment event: 1
- Issues event: 2
- Release event: 1
- Watch event: 4
- Issue comment event: 4
- Push event: 2
- Pull request event: 2
- Fork event: 1
Last Year
- Create event: 1
- Commit comment event: 1
- Issues event: 2
- Release event: 1
- Watch event: 4
- Issue comment event: 4
- Push event: 2
- Pull request event: 2
- Fork event: 1
Committers
Last synced: almost 2 years ago
Top Committers
| Name | Commits | |
|---|---|---|
| David H Hagan | d****d@d****m | 138 |
| David H Hagan | d****n@m****u | 17 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 7 months ago
All Time
- Total issues: 68
- Total pull requests: 36
- Average time to close issues: about 2 months
- Average time to close pull requests: 11 days
- Total issue authors: 6
- Total pull request authors: 2
- Average comments per issue: 0.1
- Average comments per pull request: 0.11
- Merged pull requests: 29
- Bot issues: 0
- Bot pull requests: 2
Past Year
- Issues: 2
- Pull requests: 4
- Average time to close issues: N/A
- Average time to close pull requests: 3 minutes
- Issue authors: 1
- Pull request authors: 2
- Average comments per issue: 0.0
- Average comments per pull request: 0.0
- Merged pull requests: 2
- Bot issues: 0
- Bot pull requests: 2
Top Authors
Issue Authors
- dhhagan (62)
- rkuemmer99 (2)
- samjsilva (1)
- drewmee (1)
- daridley (1)
- jhaskinsPhD (1)
Pull Request Authors
- dhhagan (36)
- dependabot[bot] (3)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 31 last-month
- Total dependent packages: 0
- Total dependent repositories: 1
- Total versions: 16
- Total maintainers: 1
pypi.org: opcsim
OPCSIM: simulating low-cost optical particle counters
- Homepage: https://dhhagan.github.io/opcsim/
- Documentation: https://dhhagan.github.io/opcsim/
- License: MIT
-
Latest release: 1.0.0
published over 5 years ago
Rankings
Maintainers (1)
Dependencies
- alabaster 0.7.12 develop
- appnope 0.1.0 develop
- atomicwrites 1.4.0 develop
- attrs 19.3.0 develop
- babel 2.8.0 develop
- backcall 0.1.0 develop
- bleach 3.1.5 develop
- certifi 2020.4.5.1 develop
- chardet 3.0.4 develop
- colorama 0.4.3 develop
- coverage 5.1 develop
- decorator 4.4.2 develop
- defusedxml 0.6.0 develop
- docutils 0.16 develop
- entrypoints 0.3 develop
- idna 2.9 develop
- imagesize 1.2.0 develop
- importlib-metadata 1.6.0 develop
- ipykernel 5.3.0 develop
- ipython 7.14.0 develop
- ipython-genutils 0.2.0 develop
- ipywidgets 7.5.1 develop
- jedi 0.17.0 develop
- jinja2 2.11.2 develop
- jsonschema 3.2.0 develop
- jupyter 1.0.0 develop
- jupyter-client 6.1.3 develop
- jupyter-console 6.1.0 develop
- jupyter-core 4.6.3 develop
- markupsafe 1.1.1 develop
- mistune 0.8.4 develop
- more-itertools 8.3.0 develop
- nbconvert 5.6.1 develop
- nbformat 5.0.6 develop
- notebook 6.0.3 develop
- numpydoc 0.9.2 develop
- packaging 20.4 develop
- pandoc 1.0.2 develop
- pandocfilters 1.4.2 develop
- parso 0.7.0 develop
- pexpect 4.8.0 develop
- pickleshare 0.7.5 develop
- pluggy 0.13.1 develop
- ply 3.11 develop
- prometheus-client 0.8.0 develop
- prompt-toolkit 3.0.5 develop
- ptyprocess 0.6.0 develop
- py 1.8.1 develop
- pygments 2.6.1 develop
- pyrsistent 0.16.0 develop
- pytest 3.10.1 develop
- pytest-cov 2.9.0 develop
- pywin32 227 develop
- pywinpty 0.5.7 develop
- pyzmq 19.0.1 develop
- qtconsole 4.7.4 develop
- qtpy 1.9.0 develop
- requests 2.23.0 develop
- send2trash 1.5.0 develop
- snowballstemmer 2.0.0 develop
- sphinx 3.0.3 develop
- sphinx-bootstrap-theme 0.7.1 develop
- sphinxcontrib-applehelp 1.0.2 develop
- sphinxcontrib-devhelp 1.0.2 develop
- sphinxcontrib-htmlhelp 1.0.3 develop
- sphinxcontrib-jsmath 1.0.1 develop
- sphinxcontrib-qthelp 1.0.3 develop
- sphinxcontrib-serializinghtml 1.1.4 develop
- terminado 0.8.3 develop
- testpath 0.4.4 develop
- tornado 6.0.4 develop
- traitlets 4.3.3 develop
- urllib3 1.25.9 develop
- wcwidth 0.1.9 develop
- webencodings 0.5.1 develop
- widgetsnbextension 3.5.1 develop
- zipp 3.1.0 develop
- cycler 0.10.0
- kiwisolver 1.2.0
- matplotlib 3.2.1
- numpy 1.18.4
- pandas 1.0.3
- pyparsing 2.4.7
- python-dateutil 2.8.1
- pytz 2020.1
- scipy 1.4.1
- seaborn 0.10.1
- six 1.15.0
- jupyter ^1.0.0 develop
- numpydoc ^0.9.2 develop
- pandoc ^1.0.2 develop
- pytest ^3.4 develop
- pytest-cov ^2.9.0 develop
- sphinx ^3.0.3 develop
- sphinx-bootstrap-theme ^0.7.1 develop
- matplotlib ^3.2.1
- numpy ^1.18.4
- pandas ^1.0.3
- python ^3.6.1
- scipy ^1.4.1
- seaborn ^0.10.1
- Cecilapp/GitHub-Pages-deploy v3 composite
- actions/checkout v2 composite
- actions/setup-python master composite
- snok/install-poetry v1 composite
- actions/checkout v2 composite
- actions/setup-python master composite
- snok/install-poetry v1 composite
- actions/checkout v2 composite
- actions/setup-python master composite
- codecov/codecov-action v1 composite
- snok/install-poetry v1 composite