ECLIPSE¶
Emission Calculation and Line Prediction for SOLAR-C EUVST
ECLIPSE is used to forward model the performance of the EUV spectrograph EUVST onboard the SOLAR-C spacecraft.
Contact: James McKevitt (jm2@mssl.ucl.ac.uk). See LICENSE for usage terms.
The instrument response generated by this code will be updated during instrument development, testing, and commissioning.
How ECLIPSE works¶
A run has three stages:
flowchart LR
MHD["MHD simulation"]
DEM["Observed DEM"]
UNI["Single intensity"]
MHD --> VDEM["VDEM"]
subgraph SYN["1. Synthesise an atmosphere"]
ECL["ECLIPSE synthesis<br>optically thin, G(T, n_e)"]
EXT["Any other synthesis code<br>Lightweaver, RH1.5D, ...<br>optically thin or thick"]
end
subgraph SIM["2. Simulate the instrument"]
INS["Optics, detector and noise,<br>then line fitting"]
end
subgraph ANL["3. Analyse the results"]
ANA["Measured against truth"]
end
MHD --> ECL
MHD --> EXT
VDEM --> ECL
DEM --> ECL
ECL -- "synthesis file" --> INS
EXT -. "coming soon" .-> INS
UNI --> INS
INS -- "results file" --> ANA
classDef node fill:#ECECFF,fill-opacity:1,stroke:#9370DB,stroke-opacity:1,color:#1a1a1a;
class MHD,DEM,UNI,VDEM,ECL,EXT,INS,ANA node
style SYN fill:#fdf6d8,fill-opacity:1,stroke:#c9b46a
style SIM fill:#fdf6d8,fill-opacity:1,stroke:#c9b46a
style ANL fill:#fdf6d8,fill-opacity:1,stroke:#c9b46a
1. Synthesise an atmosphere. Turn a model of the emitting plasma into synthetic spectra as they leave the Sun, before the instrument sees them. There are several ways to do this:
| Starting point | Page | Use it when |
|---|---|---|
| A 3D MHD simulation | From an MHD simulation | You have a numerical model of the atmosphere and want realistic spatial structure and Doppler shifts. |
| A VDEM from an MHD simulation | From a VDEM | The simulation has already been reduced to emission measure resolved in temperature and line-of-sight velocity, or it comes from a code ECLIPSE cannot yet read directly. |
| An observed DEM | From a DEM | You have a differential emission measure from an inversion of real data. No velocity information. |
| Spectra from any other code | Coming soon | You have already synthesised the spectra elsewhere - with an optically thick code such as Lightweaver or RH1.5D, or any other tool - and want only the instrument simulation on top. |
| A single intensity | From a single intensity | You only want to know how precisely a line of a given brightness can be measured. |
The first three run ECLIPSE's own synthesis, which is optically thin, and produce a synthesis file. The fourth brings in spectra that some other code has already produced. The last has no synthesis step at all and is set directly in the instrument configuration.
2. Simulate the instrument. Take those spectra through the telescope, filter, grating, and detector, add the noise sources, and fit the resulting spectra exactly as you would fit real data. This can be a Monte Carlo simulation, so it can run many times to give a distribution of measured intensities, velocities, and line widths. See Simulating the instrument.
3. Analyse the results. See the precision with which the instrument made its measurements. Also compare these measurements against the known truth, sweep across simulation variables, and make maps. See the analysis tutorial.
Instruments¶
SWC- SOLAR-C/EUVST-SW (short wavelength channel; default).EIS- Hinode/EIS.- The EUVST long wavelength channel (LW) is coming soon, and will complete the full EUVST instrument.
The instrument is chosen with a single top-level instrument: key in the configuration file.
Coming soon¶
- The long wavelength channel, completing EUVST alongside the short wavelength channel already modelled.
- More MHD codes. Synthesis currently reads MURaM output. Support for other MHD codes is being added.
- Spectra from any other synthesis code. ECLIPSE will read the spectra produced by codes like Lightweaver or RH1.5D.
Installation¶
From PyPI (recommended)¶
pip install solarc-eclipse
From source¶
pip install git+https://github.com/jamesmckevitt/eclipse.git
Contribution functions are computed with fiasco, which downloads and builds a local copy of the CHIANTI atomic database the first time it is used. Expect the first synthesis run to take longer than later ones.
Citing ECLIPSE¶
If ECLIPSE contributed to a publication, please cite both the paper describing the instrument model and the software version you actually ran:
- McKevitt et al. (2026), PASJ 78, 1524
- The Zenodo DOI for the release: 10.5281/zenodo.17543844 resolves to the latest version, and each release has its own DOI.
Every results file records the version and git commit that produced it, so summary_table(results) will tell you which version to cite.
Where to go next¶
- Quick start - CLI and Python API basics
- From an MHD simulation - full options for
synthesise-spectra - From a DEM - start from an observed DEM instead of an MHD cube
- From a VDEM - start from a simulation already reduced in temperature and velocity
- From a single intensity - no atmosphere, just one line
- Simulating the instrument - configuration file reference and the
eclipseCLI - Analysing the results - worked notebook example