eclipse 0.13.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. eclipse-0.13.0/LICENSE +3 -0
  2. eclipse-0.13.0/MANIFEST.in +16 -0
  3. eclipse-0.13.0/PKG-INFO +70 -0
  4. eclipse-0.13.0/README.md +20 -0
  5. eclipse-0.13.0/pyproject.toml +90 -0
  6. eclipse-0.13.0/setup.cfg +4 -0
  7. eclipse-0.13.0/src/eclipse/__init__.py +95 -0
  8. eclipse-0.13.0/src/eclipse/analysis.py +853 -0
  9. eclipse-0.13.0/src/eclipse/atmosphere.py +859 -0
  10. eclipse-0.13.0/src/eclipse/band.py +477 -0
  11. eclipse-0.13.0/src/eclipse/cli.py +138 -0
  12. eclipse-0.13.0/src/eclipse/config.py +1710 -0
  13. eclipse-0.13.0/src/eclipse/continuum.py +413 -0
  14. eclipse-0.13.0/src/eclipse/data/eis_response/EIS_EffArea_A.004 +61 -0
  15. eclipse-0.13.0/src/eclipse/data/eis_response/EIS_EffArea_B.004 +60 -0
  16. eclipse-0.13.0/src/eclipse/data/eis_response/EIS_EffArea_B.005 +64 -0
  17. eclipse-0.13.0/src/eclipse/data/eis_response/README_dz2025 +50 -0
  18. eclipse-0.13.0/src/eclipse/data/eis_response/fit_eis_ea_2023-05-04_smooth.sav +0 -0
  19. eclipse-0.13.0/src/eclipse/data/eis_response/source.txt +33 -0
  20. eclipse-0.13.0/src/eclipse/data/science_cases.yaml +365 -0
  21. eclipse-0.13.0/src/eclipse/data/throughput/grating_reflection_efficiency.dat +25 -0
  22. eclipse-0.13.0/src/eclipse/data/throughput/primary_mirror_coating_reflectance.dat +25 -0
  23. eclipse-0.13.0/src/eclipse/data/throughput/source.txt +6 -0
  24. eclipse-0.13.0/src/eclipse/data/throughput/throughput_aluminium_1000_angstrom.dat +503 -0
  25. eclipse-0.13.0/src/eclipse/data/throughput/throughput_aluminium_oxide_1000_angstrom.dat +503 -0
  26. eclipse-0.13.0/src/eclipse/data/throughput/throughput_carbon_1000_angstrom.dat +503 -0
  27. eclipse-0.13.0/src/eclipse/data_processing.py +904 -0
  28. eclipse-0.13.0/src/eclipse/deprecated.py +161 -0
  29. eclipse-0.13.0/src/eclipse/eis_calibration.py +573 -0
  30. eclipse-0.13.0/src/eclipse/extern/__init__.py +0 -0
  31. eclipse-0.13.0/src/eclipse/extern/mpfit.py +2388 -0
  32. eclipse-0.13.0/src/eclipse/fitting.py +1734 -0
  33. eclipse-0.13.0/src/eclipse/frame.py +594 -0
  34. eclipse-0.13.0/src/eclipse/full_frame.py +944 -0
  35. eclipse-0.13.0/src/eclipse/main.py +1646 -0
  36. eclipse-0.13.0/src/eclipse/monte_carlo.py +660 -0
  37. eclipse-0.13.0/src/eclipse/pinhole_diffraction.py +409 -0
  38. eclipse-0.13.0/src/eclipse/psf.py +6 -0
  39. eclipse-0.13.0/src/eclipse/radiometric.py +1328 -0
  40. eclipse-0.13.0/src/eclipse/raster.py +869 -0
  41. eclipse-0.13.0/src/eclipse/readout.py +1002 -0
  42. eclipse-0.13.0/src/eclipse/resolution_budget.py +108 -0
  43. eclipse-0.13.0/src/eclipse/results_file.py +1226 -0
  44. eclipse-0.13.0/src/eclipse/sampling.py +351 -0
  45. eclipse-0.13.0/src/eclipse/science_cases.py +364 -0
  46. eclipse-0.13.0/src/eclipse/synthesis.py +2492 -0
  47. eclipse-0.13.0/src/eclipse/synthesis_cli.py +12 -0
  48. eclipse-0.13.0/src/eclipse/synthesis_file.py +882 -0
  49. eclipse-0.13.0/src/eclipse/utils.py +1145 -0
  50. eclipse-0.13.0/src/eclipse.egg-info/PKG-INFO +70 -0
  51. eclipse-0.13.0/src/eclipse.egg-info/SOURCES.txt +109 -0
  52. eclipse-0.13.0/src/eclipse.egg-info/dependency_links.txt +1 -0
  53. eclipse-0.13.0/src/eclipse.egg-info/entry_points.txt +7 -0
  54. eclipse-0.13.0/src/eclipse.egg-info/requires.txt +32 -0
  55. eclipse-0.13.0/src/eclipse.egg-info/top_level.txt +2 -0
  56. eclipse-0.13.0/src/euvst_response/__init__.py +129 -0
  57. eclipse-0.13.0/tests/test_analysis_lookups.py +129 -0
  58. eclipse-0.13.0/tests/test_atmosphere_input.py +843 -0
  59. eclipse-0.13.0/tests/test_axis_conventions.py +416 -0
  60. eclipse-0.13.0/tests/test_band_lines.py +199 -0
  61. eclipse-0.13.0/tests/test_common_random_numbers.py +65 -0
  62. eclipse-0.13.0/tests/test_config_checks.py +395 -0
  63. eclipse-0.13.0/tests/test_config_validation.py +355 -0
  64. eclipse-0.13.0/tests/test_continuum.py +271 -0
  65. eclipse-0.13.0/tests/test_distributions.py +26 -0
  66. eclipse-0.13.0/tests/test_doppler_sign.py +338 -0
  67. eclipse-0.13.0/tests/test_downsample.py +225 -0
  68. eclipse-0.13.0/tests/test_eis_effective_area.py +226 -0
  69. eclipse-0.13.0/tests/test_emission_bins.py +117 -0
  70. eclipse-0.13.0/tests/test_fit_conditioning.py +100 -0
  71. eclipse-0.13.0/tests/test_fit_config.py +151 -0
  72. eclipse-0.13.0/tests/test_fit_constraints.py +108 -0
  73. eclipse-0.13.0/tests/test_fit_finite.py +410 -0
  74. eclipse-0.13.0/tests/test_fit_multi_start.py +166 -0
  75. eclipse-0.13.0/tests/test_fit_quality.py +95 -0
  76. eclipse-0.13.0/tests/test_fit_start.py +91 -0
  77. eclipse-0.13.0/tests/test_fit_summaries.py +594 -0
  78. eclipse-0.13.0/tests/test_fit_weighting.py +208 -0
  79. eclipse-0.13.0/tests/test_focal_plane_dispersion.py +115 -0
  80. eclipse-0.13.0/tests/test_frame.py +757 -0
  81. eclipse-0.13.0/tests/test_full_frame.py +747 -0
  82. eclipse-0.13.0/tests/test_goft_temperature_chunks.py +151 -0
  83. eclipse-0.13.0/tests/test_ground_truth_pixel_mean.py +76 -0
  84. eclipse-0.13.0/tests/test_instrument_settings.py +402 -0
  85. eclipse-0.13.0/tests/test_instrument_sources.py +394 -0
  86. eclipse-0.13.0/tests/test_line_cube_coordinates.py +80 -0
  87. eclipse-0.13.0/tests/test_line_matching.py +144 -0
  88. eclipse-0.13.0/tests/test_map_metadata.py +152 -0
  89. eclipse-0.13.0/tests/test_mpi_ranks.py +87 -0
  90. eclipse-0.13.0/tests/test_noise_toggle.py +297 -0
  91. eclipse-0.13.0/tests/test_old_package_name.py +182 -0
  92. eclipse-0.13.0/tests/test_photon_energy.py +396 -0
  93. eclipse-0.13.0/tests/test_pinhole_config.py +158 -0
  94. eclipse-0.13.0/tests/test_pixel_sampling.py +243 -0
  95. eclipse-0.13.0/tests/test_psf_boundary.py +151 -0
  96. eclipse-0.13.0/tests/test_radiometric_chain.py +544 -0
  97. eclipse-0.13.0/tests/test_raster.py +986 -0
  98. eclipse-0.13.0/tests/test_readout.py +848 -0
  99. eclipse-0.13.0/tests/test_readout_dark_current.py +123 -0
  100. eclipse-0.13.0/tests/test_resolution_budget.py +231 -0
  101. eclipse-0.13.0/tests/test_results_file.py +1242 -0
  102. eclipse-0.13.0/tests/test_results_file_runs.py +400 -0
  103. eclipse-0.13.0/tests/test_science_cases.py +230 -0
  104. eclipse-0.13.0/tests/test_slit_mask.py +240 -0
  105. eclipse-0.13.0/tests/test_slit_psf.py +463 -0
  106. eclipse-0.13.0/tests/test_small_fixes.py +282 -0
  107. eclipse-0.13.0/tests/test_spectral_rebinning.py +90 -0
  108. eclipse-0.13.0/tests/test_synthesis_file.py +799 -0
  109. eclipse-0.13.0/tests/test_synthesis_grids.py +317 -0
  110. eclipse-0.13.0/tests/test_uniform_intensity.py +458 -0
  111. eclipse-0.13.0/tests/test_untested_numbers.py +184 -0
eclipse-0.13.0/LICENSE ADDED
@@ -0,0 +1,3 @@
1
+ Copyright (c) James McKevitt
2
+
3
+ The SOLAR-C SWG are required to approve the publication of forward modelling results for SOLAR-C/EUVST. Contact James McKevitt (jm2@mssl.ucl.ac.uk) for more information.
@@ -0,0 +1,16 @@
1
+ include README.md
2
+ include LICENSE
3
+ include pyproject.toml
4
+ recursive-include src/eclipse *.py
5
+ recursive-include src/euvst_response *.py
6
+ recursive-include src/eclipse/data *
7
+ recursive-include data *
8
+ recursive-exclude data/atmosphere *
9
+ exclude data/gofnt.sav
10
+ recursive-exclude * __pycache__
11
+ recursive-exclude * *.py[co]
12
+ recursive-exclude scratch *
13
+ exclude *.pkl
14
+ exclude *.png
15
+ exclude *.out
16
+ exclude job.*
@@ -0,0 +1,70 @@
1
+ Metadata-Version: 2.4
2
+ Name: eclipse
3
+ Version: 0.13.0
4
+ Summary: ECLIPSE: Emission Calculation and Line Prediction for SOLAR-C EUVST
5
+ Author-email: James McKevitt <jm2@mssl.ucl.ac.uk>
6
+ Project-URL: Homepage, https://github.com/jamesmckevitt/eclipse
7
+ Project-URL: Repository, https://github.com/jamesmckevitt/eclipse
8
+ Project-URL: Documentation, https://solarc-eclipse.readthedocs.io
9
+ Classifier: Development Status :: 4 - Beta
10
+ Classifier: Intended Audience :: Science/Research
11
+ Classifier: Topic :: Scientific/Engineering :: Astronomy
12
+ Classifier: Programming Language :: Python :: 3
13
+ Classifier: Programming Language :: Python :: 3.11
14
+ Classifier: Programming Language :: Python :: 3.12
15
+ Classifier: Programming Language :: Python :: 3.13
16
+ Classifier: Programming Language :: Python :: 3.14
17
+ Requires-Python: >=3.11
18
+ Description-Content-Type: text/markdown
19
+ License-File: LICENSE
20
+ Requires-Dist: numpy>=2.0
21
+ Requires-Dist: astropy>=6.1.5
22
+ Requires-Dist: ndcube>=2.3
23
+ Requires-Dist: scipy
24
+ Requires-Dist: matplotlib>=3.8.4
25
+ Requires-Dist: joblib>=1.2
26
+ Requires-Dist: tqdm
27
+ Requires-Dist: dill>=0.3.6
28
+ Requires-Dist: pyyaml
29
+ Requires-Dist: reproject>=0.14
30
+ Requires-Dist: sunpy[all]>=6.0
31
+ Requires-Dist: dask>=2024.9.1
32
+ Requires-Dist: psutil
33
+ Requires-Dist: mendeleev
34
+ Requires-Dist: h5py>=3.11
35
+ Requires-Dist: fiasco>=0.5
36
+ Provides-Extra: mpi
37
+ Requires-Dist: mpi4py; extra == "mpi"
38
+ Provides-Extra: dev
39
+ Requires-Dist: pytest; extra == "dev"
40
+ Requires-Dist: black; extra == "dev"
41
+ Requires-Dist: flake8; extra == "dev"
42
+ Requires-Dist: mypy; extra == "dev"
43
+ Requires-Dist: ipywidgets; extra == "dev"
44
+ Provides-Extra: docs
45
+ Requires-Dist: mkdocs-material; extra == "docs"
46
+ Requires-Dist: mkdocstrings[python]; extra == "docs"
47
+ Requires-Dist: mkdocs-jupyter; extra == "docs"
48
+ Requires-Dist: mkdocs-redirects; extra == "docs"
49
+ Dynamic: license-file
50
+
51
+ # ECLIPSE: Emission Calculation and Line Prediction for SOLAR-C EUVST
52
+
53
+ ECLIPSE (Emission Calculation and Line Prediction for SOLAR-C EUVST) predicts what the EUV spectrograph EUVST on SOLAR-C will measure, and how precisely, starting from a model of the solar atmosphere. It also models Hinode/EIS.
54
+
55
+ Contact: James McKevitt (jm2@mssl.ucl.ac.uk). See [LICENSE](LICENSE) for usage terms.
56
+
57
+ The instrument model will be updated as EUVST is built, tested and commissioned.
58
+
59
+ [![Tests](https://github.com/jamesmckevitt/eclipse/actions/workflows/tests.yml/badge.svg)](https://github.com/jamesmckevitt/eclipse/actions/workflows/tests.yml)
60
+ [![Documentation Status](https://app.readthedocs.org/projects/solarc-eclipse/badge/?version=stable)](https://solarc-eclipse.readthedocs.io/)
61
+ [![PyPI](https://img.shields.io/pypi/v/eclipse.svg)](https://pypi.org/project/eclipse/)
62
+ [![DOI](https://img.shields.io/badge/DOI-10.5281%2Fzenodo.17543844-blue.svg)](https://doi.org/10.5281/zenodo.17543844)
63
+
64
+ ECLIPSE is installed with `pip install eclipse`. ECLIPSE 0.12 and earlier were on PyPI as `solarc-eclipse`.
65
+
66
+ The documentation, with installation and a first run, guides to synthesising spectra, simulating the instrument and analysing the results, and a worked example, is at **[solarc-eclipse.readthedocs.io](https://solarc-eclipse.readthedocs.io)**.
67
+
68
+ ## Acknowledgements
69
+
70
+ The SOLAR-C/EUVST-SW instrument is an ESA-funded contribution to the JAXA-led SOLAR-C mission. The EUVST-LW (long wavelength) instrument is contributed by NASA. The ECLIPSE code is developed and maintained at Mullard Space Science Laboratory (UCL), and was made using Austrian Super Computing (ASC) infrastructure in collaboration with the University of Vienna.
@@ -0,0 +1,20 @@
1
+ # ECLIPSE: Emission Calculation and Line Prediction for SOLAR-C EUVST
2
+
3
+ ECLIPSE (Emission Calculation and Line Prediction for SOLAR-C EUVST) predicts what the EUV spectrograph EUVST on SOLAR-C will measure, and how precisely, starting from a model of the solar atmosphere. It also models Hinode/EIS.
4
+
5
+ Contact: James McKevitt (jm2@mssl.ucl.ac.uk). See [LICENSE](LICENSE) for usage terms.
6
+
7
+ The instrument model will be updated as EUVST is built, tested and commissioned.
8
+
9
+ [![Tests](https://github.com/jamesmckevitt/eclipse/actions/workflows/tests.yml/badge.svg)](https://github.com/jamesmckevitt/eclipse/actions/workflows/tests.yml)
10
+ [![Documentation Status](https://app.readthedocs.org/projects/solarc-eclipse/badge/?version=stable)](https://solarc-eclipse.readthedocs.io/)
11
+ [![PyPI](https://img.shields.io/pypi/v/eclipse.svg)](https://pypi.org/project/eclipse/)
12
+ [![DOI](https://img.shields.io/badge/DOI-10.5281%2Fzenodo.17543844-blue.svg)](https://doi.org/10.5281/zenodo.17543844)
13
+
14
+ ECLIPSE is installed with `pip install eclipse`. ECLIPSE 0.12 and earlier were on PyPI as `solarc-eclipse`.
15
+
16
+ The documentation, with installation and a first run, guides to synthesising spectra, simulating the instrument and analysing the results, and a worked example, is at **[solarc-eclipse.readthedocs.io](https://solarc-eclipse.readthedocs.io)**.
17
+
18
+ ## Acknowledgements
19
+
20
+ The SOLAR-C/EUVST-SW instrument is an ESA-funded contribution to the JAXA-led SOLAR-C mission. The EUVST-LW (long wavelength) instrument is contributed by NASA. The ECLIPSE code is developed and maintained at Mullard Space Science Laboratory (UCL), and was made using Austrian Super Computing (ASC) infrastructure in collaboration with the University of Vienna.
@@ -0,0 +1,90 @@
1
+ [build-system]
2
+ requires = ["setuptools>=77", "wheel"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "eclipse"
7
+ dynamic = ["version"]
8
+ authors = [
9
+ {name = "James McKevitt", email = "jm2@mssl.ucl.ac.uk"},
10
+ ]
11
+ description = "ECLIPSE: Emission Calculation and Line Prediction for SOLAR-C EUVST"
12
+ readme = "README.md"
13
+ license-files = ["LICENSE"]
14
+ requires-python = ">=3.11"
15
+ classifiers = [
16
+ "Development Status :: 4 - Beta",
17
+ "Intended Audience :: Science/Research",
18
+ "Topic :: Scientific/Engineering :: Astronomy",
19
+ "Programming Language :: Python :: 3",
20
+ "Programming Language :: Python :: 3.11",
21
+ "Programming Language :: Python :: 3.12",
22
+ "Programming Language :: Python :: 3.13",
23
+ "Programming Language :: Python :: 3.14",
24
+ ]
25
+ dependencies = [
26
+ "numpy>=2.0",
27
+ "astropy>=6.1.5",
28
+ "ndcube>=2.3",
29
+ "scipy",
30
+ "matplotlib>=3.8.4",
31
+ "joblib>=1.2",
32
+ "tqdm",
33
+ "dill>=0.3.6",
34
+ "pyyaml",
35
+ "reproject>=0.14",
36
+ "sunpy[all]>=6.0",
37
+ "dask>=2024.9.1",
38
+ "psutil",
39
+ "mendeleev",
40
+ "h5py>=3.11",
41
+ "fiasco>=0.5",
42
+ ]
43
+
44
+ [project.optional-dependencies]
45
+ mpi = [
46
+ "mpi4py",
47
+ ]
48
+ dev = [
49
+ "pytest",
50
+ "black",
51
+ "flake8",
52
+ "mypy",
53
+ # Needed when re-running the tutorial notebook, not when building the docs
54
+ # (mkdocs-jupyter renders the stored outputs without executing anything).
55
+ # Without it tqdm emits a TqdmWarning, which gets saved into the notebook
56
+ # outputs and then shows up as an error block on the docs site.
57
+ "ipywidgets",
58
+ ]
59
+ docs = [
60
+ "mkdocs-material",
61
+ "mkdocstrings[python]",
62
+ "mkdocs-jupyter",
63
+ "mkdocs-redirects",
64
+ ]
65
+
66
+ [project.scripts]
67
+ eclipse = "eclipse.cli:main"
68
+ solarc-eclipse = "eclipse.cli:main"
69
+ synthesise-spectra = "eclipse.synthesis_cli:main"
70
+ synthesise_spectra = "eclipse.synthesis_cli:main"
71
+ eclipse-science-cases = "eclipse.science_cases:main"
72
+ eclipse-atmosphere = "eclipse.atmosphere:main"
73
+
74
+ [project.urls]
75
+ Homepage = "https://github.com/jamesmckevitt/eclipse"
76
+ Repository = "https://github.com/jamesmckevitt/eclipse"
77
+ Documentation = "https://solarc-eclipse.readthedocs.io"
78
+
79
+ [tool.setuptools.packages.find]
80
+ where = ["src"]
81
+ include = ["eclipse*", "euvst_response"]
82
+
83
+ [tool.setuptools.dynamic]
84
+ version = {attr = "eclipse.__version__"}
85
+
86
+ [tool.setuptools.package-data]
87
+ eclipse = ["data/**/*"]
88
+
89
+ [tool.pytest.ini_options]
90
+ pythonpath = ["src"]
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,95 @@
1
+ """
2
+ ECLIPSE: Emission Calculation and Line Prediction for SOLAR-C EUVST
3
+
4
+ Tools for modeling the performance of EUVST, the EUV spectrograph on SOLAR-C.
5
+ """
6
+
7
+ __version__ = "0.13.0"
8
+ __author__ = "James McKevitt"
9
+ __email__ = "jm2@mssl.ucl.ac.uk"
10
+
11
+ # Import main classes and functions for easy access
12
+ from .config import Detector_SWC, Detector_EIS, Telescope_EUVST, Telescope_EIS, Simulation, AluminiumFilter
13
+ from .eis_calibration import effective_area as eis_effective_area
14
+ from .utils import wl_to_vel, vel_to_wl, angle_to_distance, distance_to_angle
15
+ from .radiometric import (
16
+ intensity_to_photons, add_telescope_throughput, photons_to_pixel_counts,
17
+ apply_exposure, sample_photon_arrivals, add_poisson, apply_focusing_optics_psf,
18
+ spatial_psf_fwhm, spectral_psf_fwhm, spectral_line_spread, across_slit_fwhm, to_electrons,
19
+ to_dn, add_visible_stray_light, add_pinhole_visible_light
20
+ )
21
+ from .pinhole_diffraction import apply_euv_pinhole_diffraction, airy_disk_pattern
22
+ from .fitting import fit_cube_gauss, velocity_from_fit, width_from_fit, analyse, FitConfig, FitComponent
23
+ from .monte_carlo import simulate_once, monte_carlo
24
+ from .main import main
25
+ from .data_processing import load_atmosphere, create_uniform_intensity_cube
26
+ from .atmosphere import (Atmosphere, describe_atmosphere_file, edges_from_centres,
27
+ read_atmosphere, write_atmosphere)
28
+ from .synthesis_file import (SpectralLine, Synthesis, convert_synthesis_pickle, load_synthesis,
29
+ read_synthesis, read_synthesis_products, write_line_cubes,
30
+ write_synthesis)
31
+ from .results_file import convert_results_pickle
32
+ from .band import (BandLines, IonLines, band_contribution_functions, read_band_lines,
33
+ write_band_lines)
34
+ from .readout import FocalPlane_SWC, ReadoutSequence
35
+ from .full_frame import FullFrame, full_ccd_frame, write_full_frame
36
+ from .analysis import (
37
+ load_instrument_response_results,
38
+ get_parameter_combinations,
39
+ analyse_fit_statistics,
40
+ list_fit_components,
41
+ get_results_for_combination,
42
+ summary_table,
43
+ create_sunpy_maps_from_combo,
44
+ )
45
+ from .deprecated import get_dem_data_from_results
46
+
47
+ __all__ = [
48
+ "Detector_SWC", "Detector_EIS", "Telescope_EUVST", "Telescope_EIS",
49
+ "Simulation", "AluminiumFilter",
50
+ "eis_effective_area",
51
+ "wl_to_vel", "vel_to_wl", "angle_to_distance", "distance_to_angle",
52
+ "intensity_to_photons", "add_telescope_throughput", "photons_to_pixel_counts",
53
+ "apply_exposure", "sample_photon_arrivals", "add_poisson", "apply_focusing_optics_psf",
54
+ "spatial_psf_fwhm", "spectral_psf_fwhm", "spectral_line_spread", "across_slit_fwhm",
55
+ "to_electrons",
56
+ "to_dn", "add_visible_stray_light", "add_pinhole_visible_light",
57
+ "fit_cube_gauss", "velocity_from_fit", "width_from_fit", "analyse",
58
+ "FitConfig", "FitComponent",
59
+ "simulate_once", "monte_carlo",
60
+ "main",
61
+ "load_atmosphere",
62
+ "create_uniform_intensity_cube",
63
+ "Atmosphere",
64
+ "describe_atmosphere_file",
65
+ "edges_from_centres",
66
+ "read_atmosphere",
67
+ "write_atmosphere",
68
+ "SpectralLine",
69
+ "Synthesis",
70
+ "convert_synthesis_pickle",
71
+ "load_synthesis",
72
+ "read_synthesis_products",
73
+ "write_line_cubes",
74
+ "read_synthesis",
75
+ "write_synthesis",
76
+ "convert_results_pickle",
77
+ "BandLines",
78
+ "IonLines",
79
+ "band_contribution_functions",
80
+ "read_band_lines",
81
+ "write_band_lines",
82
+ "FocalPlane_SWC",
83
+ "ReadoutSequence",
84
+ "FullFrame",
85
+ "full_ccd_frame",
86
+ "write_full_frame",
87
+ "load_instrument_response_results",
88
+ "get_parameter_combinations",
89
+ "analyse_fit_statistics",
90
+ "list_fit_components",
91
+ "get_results_for_combination",
92
+ "summary_table",
93
+ "create_sunpy_maps_from_combo",
94
+ "get_dem_data_from_results"
95
+ ]