Skip to content

edenacadia/imaka_wfp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wavefront Profiling Demo

Created by Eden McEwen [email protected]
Summer 2020 REU, IfA at the University of Hawaii
Mentor: Mark Chun

Documentation pdf: LINK

Downloading

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

Overview

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/pipelinethe code directory.

Basic Utilization:

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.

Package Structure:

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

Directory explaination:

inputs/

A directory of all files passed into the pipelines.

inputs/conf

Configuration files are stored here. They instruct the program on where to find and store data, as well as parameters for running the pipeline.

inputs/runs

inputs/targets

pipeline/

Files stored here do minimum computation, instead are focused on taking input and translating requests to the main code files.

pipeline/code

This directory is full of the computational programs and the helper files.

Main Pipeline Files:

(Correlation Code)

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

Main Code Files:

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

About

A wave front profiler for imaka

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages