holosim-ml
machine learning applied to the efficient analysis of radio holography measurements of complex optical systems
Science Score: 44.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
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.9%) to scientific vocabulary
Repository
machine learning applied to the efficient analysis of radio holography measurements of complex optical systems
Basic Info
- Host: GitHub
- Owner: McMahonCosmologyGroup
- Language: Jupyter Notebook
- Default Branch: main
- Size: 927 KB
Statistics
- Stars: 2
- Watchers: 2
- Forks: 2
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
holosim-ml 📡
holosim-ml is a library for beam simulation and analysis of radio holography data from complex optical systems. This code uses machine learning to efficiently determine the position of hundreds of mirror adjusters on multiple mirrors with few micron accuracy. We apply this approach to the example of the Simons Observatory 6 m telescope.
For example, holosim-ml simulates the far-field beam pattern, with mirror surface error root-mean-squares of 0 µm, 20 µm, 35 µm, and 50 µm. The side-lobes around the central beam increase as RMS of panel errors increases. This figure was produced with the Window Function.ipynb notebook, at 150 GHz.
Dependencies
- Python>=3.6
- numpy, scipy, matplotlib, sklearn
Installation
$ git clone https://github.com/orgs/McMahonCosmologyGroup/holosim-ml
The notebooks call two .csv files with the telescope mirrors' panel geometries. In order to run the notebooks, change the path in pan_mod.py to the location of the .csv files (lines 264 and 270).
```
Primary mirror adjuster positions
dfm1 = pd.readcsv( "path/to/folder/pans-adjs/Mirror-M1-vertical-adjuster-pointsr1-1.csv", skiprows=2, navalues=["<-- ", "--> ", "<--", "-->"], )
Secondary mirror adjuster positions
dfm2 = pd.readcsv( "path/to/folder/pans-adjs/Mirror-M2-vertical-adjuster-pointsr1-1.csv", skiprows=2, navalues=["<-- ", "--> ", "<--", "-->"], ) ```
Contributions
If you have write access to this repository, please: * create a new branch * push your changes to that branch * merge or rebase to get in sync with main * submit a pull request on github * If you do not have write access, create a fork of this repository and proceed as described above. For more details, see Contributing.
Email: chesmore@uchicago.edu for .sav files.
Owner
- Name: McMahonCosmologyGroup
- Login: McMahonCosmologyGroup
- Kind: organization
- Repositories: 8
- Profile: https://github.com/McMahonCosmologyGroup
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: Chesmore
given-names: Grace E.
orcid: https://orcid.org/0000-0002-5127-0401
title: "The Simons Observatory HoloSim-ML: machine learning applied to the efficient analysis of radio holography measurements of complex optical systems"
version: 2.0
doi: 10.1364/AO.435007
date-released: 2021-10
url: "https://github.com/McMahonCosmologyGroup/holosim-ml"
GitHub Events
Total
Last Year
Dependencies
- Jinja2 ==3.0.3
- MarkupSafe ==2.0.1
- Pillow ==8.4.0
- Pygments ==2.10.0
- QtPy ==1.11.2
- Send2Trash ==1.8.0
- argon2-cffi ==21.1.0
- async-generator ==1.10
- attrs ==21.2.0
- backcall ==0.2.0
- bleach ==4.1.0
- certifi ==2020.6.20
- cffi ==1.15.0
- colorama ==0.4.4
- cycler ==0.11.0
- decorator ==5.1.0
- defusedxml ==0.7.1
- entrypoints ==0.3
- importlib-metadata ==4.8.2
- ipykernel ==5.5.6
- ipython ==7.16.1
- ipython-genutils ==0.2.0
- ipywidgets ==7.6.5
- jedi ==0.18.1
- joblib ==1.1.0
- jsonschema ==3.2.0
- jupyter ==1.0.0
- jupyter-client ==7.0.6
- jupyter-console ==6.4.0
- jupyter-core ==4.9.1
- jupyterlab-pygments ==0.1.2
- jupyterlab-widgets ==1.0.2
- kiwisolver ==1.3.1
- matplotlib ==3.3.4
- mistune ==0.8.4
- nbclient ==0.5.8
- nbconvert ==6.0.7
- nbformat ==5.1.3
- nest-asyncio ==1.5.1
- notebook ==6.4.6
- numpy ==1.19.5
- packaging ==21.3
- pandas ==1.1.5
- pandocfilters ==1.5.0
- parso ==0.8.2
- pickleshare ==0.7.5
- prometheus-client ==0.12.0
- prompt-toolkit ==3.0.22
- pycparser ==2.21
- pyparsing ==3.0.6
- pyrsistent ==0.18.0
- python-dateutil ==2.8.2
- pytz ==2021.3
- pywin32 ==302
- pywinpty ==1.1.6
- pyzmq ==22.3.0
- qtconsole ==5.2.0
- scikit-learn ==0.24.2
- scipy ==1.5.4
- six ==1.16.0
- sklearn ==0.0
- terminado ==0.12.1
- testpath ==0.5.0
- threadpoolctl ==3.0.0
- tornado ==6.1
- traitlets ==4.3.3
- typing_extensions ==4.0.0
- wcwidth ==0.2.5
- webencodings ==0.5.1
- widgetsnbextension ==3.5.2
- wincertstore ==0.2
- zipp ==3.6.0