instamatic

Python program for automated electron diffraction data collection

https://github.com/instamatic-dev/instamatic

Science Score: 77.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 14 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    1 of 14 committers (7.1%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.8%) to scientific vocabulary

Keywords

3d-electron-diffraction automation data-collection electron-diffraction electron-microscopy micro-ed serial-crystallography

Keywords from Contributors

cluster-analysis xds powder-diffraction profile-refinement structure-refinement topas background-correction
Last synced: 6 months ago · JSON representation ·

Repository

Python program for automated electron diffraction data collection

Basic Info
Statistics
  • Stars: 59
  • Watchers: 6
  • Forks: 30
  • Open Issues: 10
  • Releases: 23
Topics
3d-electron-diffraction automation data-collection electron-diffraction electron-microscopy micro-ed serial-crystallography
Created almost 9 years ago · Last pushed 6 months ago
Metadata Files
Readme Contributing Code of conduct Citation

readme.md

build PyPI - Python Version PyPI DOI

Instamatic banner

Instamatic

Instamatic is a Python program that is being developed with the aim to automate the collection of electron diffraction data. At the core is a Python library for transmission electron microscope experimental control with bindings for the JEOL/FEI microscopes and interfaces to the ASI/TVIPS/Gatan cameras. Routines have been implemented for collecting serial electron diffraction (serialED), continuous rotation electron diffraction (cRED, aka 3D-ED / microED), and stepwise rotation electron diffraction (RED) data. For streaming cameras, instamatic includes a live-view GUI.

Instamatic is distributed via pypi and https://github.com/instamatic-dev/instamatic/releases. However, the most up-to-date version of the code (including bugs!) is available from this repository.

Electron microscopes supported:

  • JEOL microscopes with the TEMCOM library
  • FEI microscopes via the scripting interface

Cameras supported:

  • ASI Timepix
  • ASI CheeTah through serval-toolkit library
  • TVIPS cameras through EMMENU4 API
  • Quantum Detectors MerlinEM
  • (Gatan cameras through DM plugin [1])

Instamatic has been developed on a JEOL-2100 with a Timepix camera, and a JEOL-1400 and JEOL-3200 with TVIPS cameras (XF416/F416).

See instamatic-dev/instamatic-tecnai-server for a TEM interface to control a FEI Tecnai-TEM on Windows XP/Python 3.4 via instamatic.

[1]: Support for Gatan cameras is somewhat underdeveloped. As an alternative, a DigitalMicrograph script for collecting cRED data on a OneView camera (or any other Gatan camera) can be found here.

Installation

If you use conda, create a new environment:

conda create -n instamatic python=3.11 conda activate instamatic

Install using pip, works with python versions 3.9 or newer:

bash pip install instamatic

OS requirement

The package requires Windows 7 or higher. It has been mainly developed and tested under windows 7 and higher.

Package dependencies

Check pypoject.toml for the full dependency list and versions.

Documentation

See the documentation for how to set up and use Instamatic.

Reference

If you found Instamatic useful, please consider citing it or one of the references below.

Each software release is archived on Zenodo, which provides a DOI for the project and each release. The project DOI 10.5281/zenodo.1090388 will always resolve to the latest archive, which contains all the information needed to cite the release.

Alternatively, some of the methods implemented in Instamatic are described in:

Maintenance

Owner

  • Name: Instamatic
  • Login: instamatic-dev
  • Kind: organization

Citation (CITATION.cff)

# YAML 1.2
---
abstract: "Python program for automated electron diffraction data collection."
authors:
  -
    affiliation: "Netherlands eScience Center"
    family-names: Smeets
    given-names: Stef
    orcid: "https://orcid.org/0000-0002-5413-9038"
  -
    affiliation: Vironova
    family-names: Wang
    given-names: Bin
    orcid: "https://orcid.org/0000-0002-4327-6424"
  -
    affiliation: "Amsterdam Scientific Instruments"
    family-names: Hogenbirk
    given-names: Erik
  -
    affiliation: "Charles University"
    family-names: Rainer
    given-names: Daniel
    orcid: "https://orcid.org/0000-0002-3272-3161"
  -
    affiliation: "Czech Academy of Sciences"
    family-names: Tchoń
    given-names: Daniel Mariusz
    orcid: "https://orcid.org/0000-0003-4798-867X"
cff-version: "1.1.0"
date-released: 2021-08-09
doi: "10.5281/zenodo.1090388"
license: "BSD-3-Clause"
message: "If you use this software, please cite it using these metadata."
title: Instamatic
version: "2.1.1"
...

GitHub Events

Total
  • Create event: 7
  • Release event: 2
  • Issues event: 24
  • Watch event: 3
  • Delete event: 4
  • Member event: 1
  • Issue comment event: 111
  • Push event: 32
  • Pull request review comment event: 91
  • Pull request review event: 87
  • Pull request event: 47
  • Fork event: 6
Last Year
  • Create event: 7
  • Release event: 2
  • Issues event: 24
  • Watch event: 3
  • Delete event: 4
  • Member event: 1
  • Issue comment event: 111
  • Push event: 32
  • Pull request review comment event: 91
  • Pull request review event: 87
  • Pull request event: 47
  • Fork event: 6

Committers

Last synced: almost 3 years ago

All Time
  • Total Commits: 1,344
  • Total Committers: 14
  • Avg Commits per committer: 96.0
  • Development Distribution Score (DDS): 0.569
Top Committers
Name Email Commits
Stef Smeets s****s@m****e 579
Stef Smeets s****s@t****l 569
Bin Wang w****7@s****m 73
Stef Smeets s****s@u****m 53
Stef Smeets s****s@e****l 36
binwang b****g@v****m 18
ErikHogenbirk e****k@a****m 6
Daniel N. Rainer d****r@o****m 2
Jonas Ångström j****7@w****e 2
Thomas Aarholt t****t@g****m 2
TM t****g@g****m 1
BinWang b****g@s****e 1
Kotaro Tanaka 4****9@u****m 1
Paul van Schayck p****e@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 53
  • Total pull requests: 98
  • Average time to close issues: 3 months
  • Average time to close pull requests: 7 days
  • Total issue authors: 16
  • Total pull request authors: 14
  • Average comments per issue: 2.94
  • Average comments per pull request: 1.28
  • Merged pull requests: 82
  • Bot issues: 0
  • Bot pull requests: 1
Past Year
  • Issues: 19
  • Pull requests: 43
  • Average time to close issues: about 1 month
  • Average time to close pull requests: 5 days
  • Issue authors: 6
  • Pull request authors: 4
  • Average comments per issue: 1.95
  • Average comments per pull request: 2.16
  • Merged pull requests: 34
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • stefsmeets (11)
  • thomasaarholt (8)
  • kttn8769 (5)
  • iverks (5)
  • Baharis (4)
  • viljarjf (4)
  • GearoidM (3)
  • rds-itga (3)
  • Binary-Vanguard-12138 (2)
  • Taimin (1)
  • CSSFrancis (1)
  • dkajfnln (1)
  • magnunor (1)
  • aurorateien (1)
  • komoto48g (1)
Pull Request Authors
  • stefsmeets (36)
  • Baharis (29)
  • asdfdsa (15)
  • viljarjf (8)
  • Binary-Vanguard-12138 (4)
  • iverks (4)
  • Junschen1 (2)
  • Taimin (2)
  • thomasaarholt (2)
  • kttn8769 (1)
  • danielnrainer (1)
  • dependabot[bot] (1)
  • PaulVanSchayck (1)
  • jonasangstrom (1)
Top Labels
Issue Labels
enhancement (1)
Pull Request Labels
enhancement (10) bug (7) dependencies (3)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 147 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 17
  • Total maintainers: 2
pypi.org: instamatic

Python program for automated electron diffraction data collection

  • Versions: 17
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 147 Last month
Rankings
Dependent packages count: 10.1%
Dependent repos count: 21.6%
Average: 23.8%
Downloads: 39.8%
Maintainers (2)
Last synced: 6 months ago

Dependencies

docs/requirements.txt pypi
  • autodocsumm *
  • ipython *
  • matplotlib *
  • nbsphinx *
  • nbsphinx-link *
  • numpy *
  • pandas *
  • pyyaml *
  • readthedocs-sphinx-search *
  • scikit-image *
  • scikit-learn *
  • scipy *
  • sphinx *
  • sphinx_rtd_theme *
  • tqdm *
pyproject.toml pypi
  • check-manifest * develop
  • pre-commit * develop
  • pytest >=5.4.1 develop
  • pytest-cov >=2.8.1 develop
  • comtypes >=1.1.7
  • h5py >=2.10.0
  • ipython >=7.11.1
  • lmfit >=1.0.0
  • matplotlib >=3.1.2
  • mrcfile >=1.1.2
  • numpy >=1.17.3
  • pandas >=1.0.0
  • pillow >=7.0.0
  • pyserialem >=0.3.2
  • python >=3.7.0
  • pywinauto >=0.6.8
  • pyyaml >=5.3
  • scikit-image >=0.17.1
  • scipy >=1.3.2
  • tifffile >=2019.7.26.2
  • tqdm >=4.41.1
  • virtualbox >=2.0.0
requirements.txt pypi
  • check-manifest *
  • comtypes >=1.1.7
  • h5py >=2.10.0
  • ipython >=7.11.1
  • lmfit >=1.0.0
  • matplotlib >=3.1.2
  • mrcfile >=1.1.2
  • numpy >=1.17.3
  • pandas >=0.25.3
  • pillow >=7.0.0
  • pre-commit *
  • pywinauto >=0.6.8
  • pyyaml >=5.3
  • scikit-image >=0.16.2
  • scipy >=1.3.2
  • tifffile >=2019.7.26.2
  • tqdm >=4.41.1
  • virtualbox >=2.0.0
.github/workflows/publish.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • pypa/gh-action-pypi-publish master composite
.github/workflows/test.yml actions
  • actions/cache v3 composite
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
environment.yml pypi