Proton Calorimetry/User Interface: Difference between revisions

From PBTWiki
Jump to navigation Jump to search
Line 15: Line 15:


==GUI version 2.05==
==GUI version 2.05==
Newest version of the GUI can be seen on:  <code> https://www.hep.ucl.ac.uk/pbt/PDdisplay/escribano/escribano-v2.05/ </code>
Latest version of the GUI can be seen on:  <code> https://www.hep.ucl.ac.uk/pbt/PDdisplay/escribano/v2.05/ </code>
 
'''General information'''
 
Developed in JavaScript with d3 and papaparse libraries. This version consists of a single tab, where the user can adjust WET number (mm) and max Y (pC) and select which elements are plotted on the graph, via checkboxes.
 
Disclaimer!: The error bars from this version do not correspond to the real error value, as the magnitude has been increased by 5pC for visualisation purposes (defined in the code as extraerror).
 
 
'''Live update'''
 
This version provides live update of the data file. In order to visualise this two scripts have been developed in Python: GUIrandom.py and runauto.py.
 
- GUIrandom.py: calculates a random number and multiplies the PD data and the curves by this number. The random number is shown in the terminal.
 
- runauto.py: runs GUIrandom.py every selected time interval (initially 0.02s, to have a refresh rate of 50Hz)

Revision as of 15:15, 2 March 2023

Uploading Data to HEP Server

Data can be uploaded to the HEP cluster in order to run a webpage with live photodiode data.

  • On your local machine:
    • Move to the directory containing photodiode data being saved by CoolTerm and the C++ script to generate the CSV file: cd /Path/To/Data
    • Generate the photodiode data with: root -l "writeCSV.cpp"
    • In a new terminal, move to the same directory and run the following command in order to copy this data, line by line, to the plus1 web area: tail -F -n 1 output.csv | ssh username@plus2.hep.ucl.ac.uk -T 'cat - > /unix/www/html/pbt/PDdisplay/photodiodeValuesAll.csv'
  • On plus2 :
    • In a new terminal, move into the directory where the photodiode data is written: cd /unix/www/html/pbt/PDdisplay/
    • Run the following script in that directory: ./outputSingleLine.sh -v photodiodeValuesAll.csv photodiodeValues.csv 0.02
      • This will output a single line CSV file - photodiodeValues.csv - every 10ms (100Hz). It's a good idea to set the write rate about 2x faster than the desired frame rate.
    • To output this any more or less often, adjust the "waitTime" value at the end (needs to be in seconds).
    • To stop displaying each line as it is written, remove the -v flag.
    • Note that this script contains an infinite loop, so to stop it running you need to kill it by hand with Ctrl-C. You may need to do this a few times to get it to quit...


GUI version 2.05

Latest version of the GUI can be seen on: https://www.hep.ucl.ac.uk/pbt/PDdisplay/escribano/v2.05/

General information

Developed in JavaScript with d3 and papaparse libraries. This version consists of a single tab, where the user can adjust WET number (mm) and max Y (pC) and select which elements are plotted on the graph, via checkboxes.

Disclaimer!: The error bars from this version do not correspond to the real error value, as the magnitude has been increased by 5pC for visualisation purposes (defined in the code as extraerror).


Live update

This version provides live update of the data file. In order to visualise this two scripts have been developed in Python: GUIrandom.py and runauto.py.

- GUIrandom.py: calculates a random number and multiplies the PD data and the curves by this number. The random number is shown in the terminal.

- runauto.py: runs GUIrandom.py every selected time interval (initially 0.02s, to have a refresh rate of 50Hz)