EISPAC - The EIS Python Analysis Code
EISPAC - The EIS Python Analysis Code - Published in JOSS (2023)
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 2 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org -
○Committers with academic emails
-
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords from Contributors
Repository
Read the Docs
Basic Info
- Host: GitHub
- Owner: USNavalResearchLaboratory
- License: mit
- Language: Python
- Default Branch: main
- Homepage: https://eispac.readthedocs.io/en/latest/
- Size: 44.6 MB
Statistics
- Stars: 25
- Watchers: 7
- Forks: 7
- Open Issues: 16
- Releases: 14
Metadata Files
README.md
EISPAC - EIS Python Analysis Code
This software provides a set of tools for analyzing Hinode/EIS data within a Python environment. The general approach is as follows:
Sets of level 1 HDF5 files are processed from the latest EIS level-0 fits files and made available online by the NRL EIS team at https://eis.nrl.navy.mil/. The HDF5 files come in pairs of "data" and "header" files which contain corrected count rates, the calibration curve needed to convert counts into intensity, and all of the associated metadata and pointing information.
This package provides Python classes and functions that can read these hdf5 files, perform all of the necessary calibration and pointing adjustments, and create user-friendly python objects that can be manipulated as needed. Also included are functions for fitting the intensity profiles using the same template files and underlying methodology that is used in the IDL SolarSoft environment.
Citing EISPAC
If you use EISPAC in your reaserch, please consider citing the JOSS paper.
Getting Started
Install using PIP (recommended) or by manually downloading this repo.
Read through the Online User's Guide (PDF download)
- Quick Guide: A brief overview of the core EISPAC functions and objects.
- Command Line Tools: Description of some command line tools available for searching, downloading, and fitting EIS observations.
Need help? If you have any questions, bug reports, or feature requests; please open an issue or email the development team.
Want to contribute code? Please see the Community Guidelines section of the online documentation.
Installation
Using PIP
EISPAC is now available on PyPI. To install, just use the following command,
> python -m pip install eispac
To upgrade the package, please use:
> python -m pip install --upgrade eispac
pip should automatically install all package dependencies. If it does not, please see the list of required packages below. Note: if you are using conda to manage your Python packages, you may wish to install or update the dependencies manually first, before installing eispac using pip (this is by no means required, but it can help simplify updating packages).
Manual Install
- Download or clone "eispac" to a convenient location on your computer (it does not matter where).
> git clone https://github.com/USNavalResearchLaboratory/eispac.git - Open a terminal and navigate to the directory
- To install:
> python -m pip install . - To upgrade:
> python -m pip install --upgrade .
The package should then be installed to the correct location for your current Python
environment. You can now import the package using import eispac.
Required Packages
- python >= 3.9
- numpy >= 1.18
- scipy >= 1.4
- matplotlib >= 3.1
- h5py >= 2.9
- astropy >= 4.2.11
- sunpy >= 4.0
- ndcube >= 2.0.0
- parfive >= 1.5
- python-dateutil>=2.8
Code Organization
There are currently three core directories:
- eispac: main python code directory containing all of the programs required to read level 1 HDF5 files and fit templates and fit spectra using mpfit.
Notable subdirectories:
* ../eispac/core/: Main code directory. All functions here are loaded into the
top-level namespace (i.e. eispac.{function name})
* ../eispac/data/: Contains fitting templates for specific spectral lines. These HDF5
files are direct conversions of the ".genx" files used by some IDL users. Also included
is an example EIS raster from 2021-03-06 at 06:44:44.
scripts: GUI and command line tools
docs: Source reStructuredText files used to build the online documentation
It should also be noted that mpfit.py was written by Mark Rivers and Sergey Kopsov and
is a direct Python port of the mpfit.pro IDL procedure written by Craig Markwardt. As such,
much of the documentation online for the IDL version of the code is still applicable to the
Python version (see also the mpfit section of our docs for more information).
TODO list
Here, in no particular order, is a list of some things that may be added in future releases.
* Expanded documentation
* More unit and integration tests
* More detailed logging (with option to send all log information to a file)
* Consider adding a subclass of NDCubeSequence which can hold multiple spectral windows
* Consider storing the output fit parameters in another NDCube
Owner
- Name: US Naval Research Laboratory
- Login: USNavalResearchLaboratory
- Kind: organization
- Email: github@nrl.navy.mil
- Location: Washington, DC
- Website: http://www.nrl.navy.mil
- Repositories: 20
- Profile: https://github.com/USNavalResearchLaboratory
JOSS Publication
EISPAC - The EIS Python Analysis Code
Authors
US Naval Research Laboratory, USA
Tags
solar physics astronomy spectroscopyCitation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - family-names: "Weberg" given-names: "Micah J." orcid: "https://orcid.org/0000-0002-4433-4841" - family-names: "Warren" given-names: "Harry P." orcid: "https://orcid.org/0000-0001-6102-6851" - family-names: "Crump" given-names: "Nicholas" - family-names: "Barnes" given-names: "Will" orcid: "https://orcid.org/0000-0001-9642-6089" title: "EISPAC - The EIS Python Analysis Code" version: 1.0.0 doi: 10.5281/zenodo.1234 date-released: 2023-05-18 url: "https://github.com/USNavalResearchLaboratory/eispac"
GitHub Events
Total
- Create event: 5
- Issues event: 11
- Release event: 5
- Watch event: 2
- Issue comment event: 10
- Push event: 12
- Pull request event: 21
- Fork event: 1
Last Year
- Create event: 5
- Issues event: 11
- Release event: 5
- Watch event: 2
- Issue comment event: 10
- Push event: 12
- Pull request event: 21
- Fork event: 1
Committers
Last synced: 5 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| MJWeberg | m****g@g****m | 84 |
| Harry Warren | h****n@n****l | 33 |
| Will Barnes | w****s@g****m | 17 |
| Micah Weberg | m****r@n****l | 9 |
| andyto1234 | t****o@g****m | 2 |
| Dan F-M | f****y@g****m | 2 |
| Harry Warren | h****y@s****l | 2 |
| hpwarren | h****n@g****m | 1 |
| David Stansby | d****y@g****m | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 47
- Total pull requests: 95
- Average time to close issues: 6 months
- Average time to close pull requests: 8 days
- Total issue authors: 15
- Total pull request authors: 5
- Average comments per issue: 1.68
- Average comments per pull request: 0.38
- Merged pull requests: 87
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 6
- Pull requests: 29
- Average time to close issues: about 1 month
- Average time to close pull requests: 6 days
- Issue authors: 6
- Pull request authors: 3
- Average comments per issue: 1.17
- Average comments per pull request: 0.1
- Merged pull requests: 22
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- wtbarnes (18)
- PaulJWright (8)
- andyto1234 (4)
- dstansby (4)
- MohamedNedal (2)
- yjzhu-solar (2)
- kdere (1)
- DanRyanIrish (1)
- Richardjmorton (1)
- zhenxuanSUN (1)
- JulioHC00 (1)
- jamesmckevitt (1)
- adolliou (1)
- AlexandrosKoukras (1)
- nabobalis (1)
Pull Request Authors
- MJWeberg (74)
- wtbarnes (16)
- andyto1234 (3)
- dstansby (1)
- dfm (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 837 last-month
- Total dependent packages: 0
- Total dependent repositories: 1
- Total versions: 16
- Total maintainers: 1
pypi.org: eispac
Python analysis tools for Hinode / EIS data
- Homepage: https://github.com/USNavalResearchLaboratory/eispac
- Documentation: https://eispac.readthedocs.io/
- License: MIT
-
Latest release: 0.99.0
published 5 months ago
Rankings
Maintainers (1)
Dependencies
- actions/checkout v2 composite
- actions/upload-artifact v1 composite
- openjournals/openjournals-draft-action master composite
- actions/checkout v2.3.1 composite
- actions/setup-python v2 composite
