opticalib 1.0.0__py3-none-any.whl

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 (62) hide show
  1. opticalib/__init__.py +53 -0
  2. opticalib/__version__.py +29 -0
  3. opticalib/alignment.py +920 -0
  4. opticalib/analyzer.py +1068 -0
  5. opticalib/core/__init__.py +20 -0
  6. opticalib/core/_configurations/configuration.yaml +127 -0
  7. opticalib/core/exceptions.py +42 -0
  8. opticalib/core/fitsarray.py +344 -0
  9. opticalib/core/read_config.py +472 -0
  10. opticalib/core/root.py +377 -0
  11. opticalib/devices/_API/__init__.py +27 -0
  12. opticalib/devices/_API/alpaoAPI.py +90 -0
  13. opticalib/devices/_API/base_devices.py +113 -0
  14. opticalib/devices/_API/i4d.py +426 -0
  15. opticalib/devices/_API/micAPI.py +171 -0
  16. opticalib/devices/_API/splattAPI.py +183 -0
  17. opticalib/devices/__init__.py +29 -0
  18. opticalib/devices/cameras.py +170 -0
  19. opticalib/devices/deformable_mirrors.py +534 -0
  20. opticalib/devices/interferometer.py +676 -0
  21. opticalib/dmutils/__init__.py +35 -0
  22. opticalib/dmutils/actuator_identification_lib.py +81 -0
  23. opticalib/dmutils/flattening.py +521 -0
  24. opticalib/dmutils/iff_acquisition_preparation.py +408 -0
  25. opticalib/dmutils/iff_module.py +113 -0
  26. opticalib/dmutils/iff_processing.py +846 -0
  27. opticalib/dmutils/pupil_calibration.py +187 -0
  28. opticalib/ground/__init__.py +28 -0
  29. opticalib/ground/computerec.py +348 -0
  30. opticalib/ground/geo.py +193 -0
  31. opticalib/ground/logger.py +157 -0
  32. opticalib/ground/modal_decomposer.py +623 -0
  33. opticalib/ground/osutils.py +583 -0
  34. opticalib/ground/roi.py +160 -0
  35. opticalib/ground/zernike.py +545 -0
  36. opticalib/py.typed +0 -0
  37. opticalib/simulator/__init__.py +2 -0
  38. opticalib/simulator/deformable_mirrors.py +239 -0
  39. opticalib/simulator/interferometer.py +319 -0
  40. opticalib/typings.py +318 -0
  41. opticalib-1.0.0.dist-info/METADATA +98 -0
  42. opticalib-1.0.0.dist-info/RECORD +62 -0
  43. opticalib-1.0.0.dist-info/WHEEL +5 -0
  44. opticalib-1.0.0.dist-info/entry_points.txt +2 -0
  45. opticalib-1.0.0.dist-info/licenses/LICENSE +21 -0
  46. opticalib-1.0.0.dist-info/top_level.txt +3 -0
  47. setup_calpy.py +144 -0
  48. tests/__init__.py +4 -0
  49. tests/conftest.py +275 -0
  50. tests/test_core_exceptions.py +125 -0
  51. tests/test_core_fits.py +327 -0
  52. tests/test_core_read_config.py +390 -0
  53. tests/test_core_root.py +248 -0
  54. tests/test_dmutils_flattening.py +219 -0
  55. tests/test_dmutils_iff_acquisition_preparation.py +390 -0
  56. tests/test_dmutils_iff_module.py +176 -0
  57. tests/test_dmutils_iff_processing.py +332 -0
  58. tests/test_ground_computerec.py +265 -0
  59. tests/test_ground_logger.py +169 -0
  60. tests/test_ground_modal_decomposer.py +438 -0
  61. tests/test_ground_osutils.py +283 -0
  62. tests/test_ground_roi.py +237 -0
opticalib/__init__.py ADDED
@@ -0,0 +1,53 @@
1
+ """
2
+ OPTICALIB: adaptive OPTIcs package for dm CALIBration
3
+ =====================================================
4
+
5
+ Author(s)
6
+ ---------
7
+ - Pietro Ferraiuolo : pietro.ferraiuolo@inaf.it
8
+
9
+ Description
10
+ -----------
11
+ `opticalib` is a package for the control of laboratory instrumentations, like
12
+ Interferometers and Deformable Mirrors. It also provides tools for the
13
+ analysis of wavefronts and images.
14
+
15
+ How to Use:
16
+ -----------
17
+ ```python
18
+ > import opticalib
19
+ > interf = opticalib.PhaseCam('193.206.155.218', 8011)
20
+ > img = interf.acquire_map()
21
+ ```
22
+ """
23
+
24
+ from .__version__ import __version__
25
+ from . import analyzer
26
+ from .ground.osutils import load_fits, save_fits, getFileList, read_phasemap
27
+ from .core.root import (
28
+ folders,
29
+ create_configuration_file,
30
+ )
31
+ from .core import read_config
32
+ from .core.fitsarray import fits_array
33
+ from .devices import *
34
+ from .devices.interferometer import _4DInterferometer
35
+
36
+ getCameraSettings = _4DInterferometer.getCameraSettings
37
+ getFrameRate = _4DInterferometer.getFrameRate
38
+
39
+ del _4DInterferometer
40
+
41
+ __all__ = [
42
+ "analyzer",
43
+ "load_fits",
44
+ "save_fits",
45
+ "read_phasemap",
46
+ "getFileList",
47
+ "folders",
48
+ "create_configuration_file",
49
+ "read_config",
50
+ "getCameraSettings",
51
+ "getFrameRate",
52
+ "fits_array",
53
+ ]
@@ -0,0 +1,29 @@
1
+ """
2
+ Created on March 2025
3
+
4
+ Author
5
+ ------
6
+ Pietro Ferraiuolo
7
+ """
8
+
9
+ __title__ = "opticalib"
10
+ __long_title__ = "OPTICALIB : adaptive OPTIcs package for dm CALibrationS"
11
+ __description__ = "This package is a python interface for laboratory adaptive optics systems, with a focus on the calibration of deformable mirrors (DMs) and the acquisition of wavefront data using interferometers."
12
+ __version__ = "1.0.0"
13
+ __author__ = "Adaptive Optics Group - INAF - Osservatorio Astrofisico di Arcetri"
14
+ __maintainer__ = "Pietro Ferraiuolo"
15
+ __author_email__ = "pietro.ferraiuolo@inaf.it"
16
+ __license__ = "MIT License"
17
+ __url__ = "https://github.com/pietroferraiuolo/LABOTT"
18
+
19
+ __all__ = [
20
+ "__title__",
21
+ "__long_title__",
22
+ "__description__",
23
+ "__version__",
24
+ "__author__",
25
+ "__maintainer__",
26
+ "__author_email__",
27
+ "__license__",
28
+ "__url__",
29
+ ]