More AFRL Data Collection

This post covers work from 04/09 to 04/19. I worked with Nathaniel to try to close the loop by implementing a basic optimization script that can send commands back to the EPICS server. Additionally, we submitted the synthetic data paper to ar$\chi$iv and Journal of Plasma Physics as well.

Updated Oprimization Script

Changes:

  • Placement of constants in constants.py so that the script doesn’t need to be directly edited
  • Incorporated Waveplate information by fitting linear regression to $\cos(\theta - \theta_0)^2$ to establish proper mapping of diode to waveplate data
  • Added flags for MANUAL_MODE so that we can control whether the opimization runs automatically or manually.

GUIs

I spent some time on 04-12 and the weekend making a GUI to make the analysis of the data a little bit easier.

Optimization_GUI.py

This Interface allows me to do the following things:

  • View histograms for the distribution of variables
  • View scatter plots comparing variables to each other
  • Show the plot of Diode Voltage against Angle with indicated calibration vline
  • Show variable vs shot number
  • Train a regression model and show the optimization result

Spectrum_GUI.py

This Interface allows me to do the following things:

  • View the electron/proton spectra throughout the day
  • Pick a particular data point and see the spectra along with gaussian fit
  • Pick a particular data point and view histograms with specified number of bins where the x-axis is not Energy in MeV instead of pixel number

To Do

  • Update Spectrum GUI to take an arbitrary number of bins
  • Update Spectrum GUI to load the data faster
  • Add a script to consolidate the data into a pandas df, add a column with a DAQ ID Code, and save to hdf5 file.
  • Should also save timestamps so that we can further filter data
  • Add Gaussian Fit Metrics to Dataframes
  • Fix PP calibration
  • Save Misc Info to Txt File: Linear Regression for MP + PP, Ridge HPs,
Written on April 10, 2024