Created by Eden McEwen [email protected]
Summer 2020 REU, IfA at the University of Hawaii
Mentor: Mark Chun
Documentation pdf: LINK
Currently, this demo is on the wfp_demo
branch of the imaka project.
To pull the imaka code with this demo, run:
first initialize git:
git init
then pull from this branch:
git clone --branch wfp_demo https://github.com/jluastro/imaka
The Imaka Wavefront Profiler takes in imaka Adaptive Optics circular buffers and produces spacial-temporal correlations fits from Wavefront Sensor slopes, as well as graphical representations of those correlations.
-
README: This README will give a very basic pointer for Utilization and the main sections of this code.
-
Interactive HOWTO: HOWTO.ipynb this jupyter notebook walks through the main pipeline inputs (Note that this is viewabe and useful through the above link even without running the notebook.)
-
Detailed Descriptions of each programming file, please see the README included in
wf_profile/pipeline
the code directory.
For running a large batch of files, use the profiler pipeline: wfp_pipeline.py
This runs the correlator on the input RUN files
Files to edit before execution:
inputs/CONF_ex.txt
CONF files contain input and output paths that are unique to users. Please edit these file paths in the example CONF file before running the tester funtion.
Example for running this function:
python3 pipeline/wfp_pipeline.py inputs/CONF_ex.txt inputs/RUN_ex.txt
Run the above command in the command line to generate correlation files and plots for the dates in RUN_ex.txt
. You will find them in the out_path
listed in CONF_ex.txt
.
TODO: add aocb file for example purposes, have proper links.
wf_profile/
- HOWTO.ipynb
- inputs/
- RUN_ex.py
- CONF_ex.py
- conf/
- runs/
- targets/
- pipeline/
- cor_pipeline.py
- est_pipeline.py
- wfp_pipeline.py
- code/
- Correlator.py
- corr_plots.py
- corr_code.py
- Estimator.py
- est_plots.py
- data_table.py
- graph_code.py
- log_ex.py
- tpoint.py
A directory of all files passed into the pipelines.
Configuration files are stored here. They instruct the program on where to find and store data, as well as parameters for running the pipeline.
Files stored here do minimum computation, instead are focused on taking input and translating requests to the main code files.
This directory is full of the computational programs and the helper files.
Description: A set of functions that allows for abstraction when interacting with batch requests from Correlator.py. Simplifies interactions when requested by wfp_pipeline.py. All functions write to a python logger in the INFO category. For simplicity, the default correlation parameters used are: tmax=200, s_sub=False, tt_sub = False The default graphing parameters are: sub_len=200, avg_sub=True
Associated py files:
- Correlator.py
(Estimation Code) Description: Takes in a dataframe with a list of aocb and adds wfs estimates to it with the estimator file.
Associated py files:
- Estimator.py
(WaveFront Profiler Pipeline Code) Description: The main function for creating correlation files. This interfaces with user input to call on other pipelines.
Associated py files:
- Cor_pipeline
- All calls to Correlator.py are made through this function
- code/log_ex.py
- Sets up the logger, or the output of
- code/file_reader.py
Description: The python class that creates a correlator from an aocb fits file. Functions are divided into categories such as checking files associated with the aocb, naming files generated by the class, setting data externally, generating computations, getting data externally, fits file needs, plotting helper, autocorrelation plotting functions, cross correlation plotting functions.
Associated .py files:
- corr_code.py
- corr_plots.py
Description: STILL IN TESTING PHASE. The python Class that returns estimates from an aocb correlation fits file.
Associated py files:
- tpoint.py