diff --git a/Aramis-spectral-diagnostics/Spectral-data.md b/Aramis-spectral-diagnostics/Spectral-data.md index d83c82b..372b43d 100644 --- a/Aramis-spectral-diagnostics/Spectral-data.md +++ b/Aramis-spectral-diagnostics/Spectral-data.md @@ -1,110 +1,110 @@ -## Channel & device list - -A standard channel naming is applied to the following devices: - -- SARFE10-PSSS059 -- SARFE10-PSSS059-LB -- SAROP21-PMOS127-1D -- SAROP21-PMOS127-2D -- SAROP31-PMOS132-1D -- SAROP31-PMOS132-2D -- SATOP11-PSAS079 - - -All spectrometer data channels are listed in the following sheet: - -[Sheet of spectrometer data channels](https://docs.google.com/spreadsheets/d/16Hz7MZR3E7-OmLHfakkT2K6yPMFUzp4eIFZxrzXWjFk/edit?usp=sharing) - -## Nomenclature - -| Style | Meaning | -|-------|---------| -| \:**SPECTRUM**\* | Raw spectral data | -| \:**FIT**\* | Results of Gaussian fit | -| \:**SPECT**\* | Statistics from the raw (without fit) spectrum | -| \:**AVG**\* | Data calculated from average (not single shot) spectra | - -## Concepts - -**Width and center** - -Spectral width and central energy are calculated by both a Gaussian fit and directly from the spectra. Depending on the spectral intensity profile, the Gaussian may return a poor representation of the spectra, for example for a spectral with a long tail. Before both fitting and calculation the spiky single shot spectra are smoothed with a savgol filter: - -```plaintext -# smooth the spectrum with savgol filter with 51 window size and 3rd order polynomial -smoothed_spectrum = scipy.signal.savgol_filter(spectrum, 51, 3) -``` - -The standard deviation and center of mass for the spectra are calculated as: - -```plaintext -smoothed_spectrum_normed = smoothed_spectrum / np.sum(smoothed_spectrum) -spectrum_com = np.sum(axis * smoothed_spectrum_normed) -spectrum_std = np.sqrt(np.sum((axis - spectrum_com) ** 2 * smoothed_spectrum_normed)) -``` - -**Relative energy spread** - -Channels ending in **RES** are a measure of the relative energy spread in units of ‰. For **FIT** data the relative energy spread is calculated as: - -$`\frac{2.355*\sigma}{\mu}`$ - -and for directly calculated values (**SPECT**): - -$`\frac{2.355*RMS}{\text{Center of mass}}`$ - -where the factor or 2.355 is included to allow these values to be comparable. - -**Spectral brightness** - -To quantify an increase in the spectral intensity in a narrowing bandwidth, the so called Spectral brightness is calculated: - -$`\text{Spectral brightness} = \frac{\text{Single shot intensity [uJ]}}{\text{Single shot spectral FWHM [eV]}}`$ - -At Aramis, the current channel used for the single shot pulse intensity is: -`SARFE10-PBPG050:FAST-PULSE-ENERGY` - -and the spectral FWHM uses the single-shot spectral width. The result channel name is: -`:FIT-BRT` -indicating the data uses a Gaussian fit. Be aware that this data is only meaningful if the spectral intensity distribution is near Gaussian. - -## Data flow schematic - -![](https://docs.google.com/drawings/d/e/2PACX-1vRShOtDRMpQTAY1p5oZKvRcuyLToMvmgzTQHOS_JrdQArvqcul-RoMcIobmKFc8RPgJVjGzULKczS5-/pub?w=1440&h=1080) - -## CamServer setup - -The PSSS has a dedicated server - sf-daqsync-11.psi.ch - -### Store pipeline - -- SARFE10-PSSS059_store -- 4 clients - -This pipeline sends the camera image directly to the image buffer. - -**Channels** - -- SARFE10-PSSS059:FPICTURE - -### PSSS pipeline - -- SARFE10-PSSS059_psss -- 13 clients - -This pipeline extracts the spectra, fits and produces the statistics. - -**Channels** - -- SARFE10-PSSS059:FIT-BRT -- SARFE10-PSSS059:FIT-COM -- SARFE10-PSSS059:FIT-FWHM -- SARFE10-PSSS059:FIT-RES -- SARFE10-PSSS059:FIT-RMS -- SARFE10-PSSS059:SPECT-COM -- SARFE10-PSSS059:SPECT-RES -- SARFE10-PSSS059:SPECT-RMS -- SARFE10-PSSS059:SPECTRUM_X -- SARFE10-PSSS059:SPECTRUM_Y -- SARFE10-PSSS059:SPECTRUM_Y_SUM +## Channel & device list + +A standard channel naming is applied to the following devices: + +- SARFE10-PSSS059 +- SARFE10-PSSS059-LB +- SATOP21-PMOS127-1D +- SATOP21-PMOS127-2D +- SATOP31-PMOS132-1D +- SATOP31-PMOS132-2D +- SATOP11-PSAS079 + + +All spectrometer data channels are listed in the following sheet: + +[Sheet of spectrometer data channels](https://docs.google.com/spreadsheets/d/16Hz7MZR3E7-OmLHfakkT2K6yPMFUzp4eIFZxrzXWjFk/edit?usp=sharing) + +## Nomenclature + +| Style | Meaning | +|-------|---------| +| \:**SPECTRUM**\* | Raw spectral data | +| \:**FIT**\* | Results of Gaussian fit | +| \:**SPECT**\* | Statistics from the raw (without fit) spectrum | +| \:**AVG**\* | Data calculated from average (not single shot) spectra | + +## Concepts + +**Width and center** + +Spectral width and central energy are calculated by both a Gaussian fit and directly from the spectra. Depending on the spectral intensity profile, the Gaussian may return a poor representation of the spectra, for example for a spectral with a long tail. Before both fitting and calculation the spiky single shot spectra are smoothed with a savgol filter: + +```plaintext +# smooth the spectrum with savgol filter with 51 window size and 3rd order polynomial +smoothed_spectrum = scipy.signal.savgol_filter(spectrum, 51, 3) +``` + +The standard deviation and center of mass for the spectra are calculated as: + +```plaintext +smoothed_spectrum_normed = smoothed_spectrum / np.sum(smoothed_spectrum) +spectrum_com = np.sum(axis * smoothed_spectrum_normed) +spectrum_std = np.sqrt(np.sum((axis - spectrum_com) ** 2 * smoothed_spectrum_normed)) +``` + +**Relative energy spread** + +Channels ending in **RES** are a measure of the relative energy spread in units of ‰. For **FIT** data the relative energy spread is calculated as: + +$`\frac{2.355*\sigma}{\mu}`$ + +and for directly calculated values (**SPECT**): + +$`\frac{2.355*RMS}{\text{Center of mass}}`$ + +where the factor or 2.355 is included to allow these values to be comparable. + +**Spectral brightness** + +To quantify an increase in the spectral intensity in a narrowing bandwidth, the so called Spectral brightness is calculated: + +$`\text{Spectral brightness} = \frac{\text{Single shot intensity [uJ]}}{\text{Single shot spectral FWHM [eV]}}`$ + +At Aramis, the current channel used for the single shot pulse intensity is: +`SARFE10-PBPG050:FAST-PULSE-ENERGY` + +and the spectral FWHM uses the single-shot spectral width. The result channel name is: +`:FIT-BRT` +indicating the data uses a Gaussian fit. Be aware that this data is only meaningful if the spectral intensity distribution is near Gaussian. + +## Data flow schematic + +![](https://docs.google.com/drawings/d/e/2PACX-1vRShOtDRMpQTAY1p5oZKvRcuyLToMvmgzTQHOS_JrdQArvqcul-RoMcIobmKFc8RPgJVjGzULKczS5-/pub?w=1440&h=1080) + +## CamServer setup + +The PSSS has a dedicated server - sf-daqsync-11.psi.ch + +### Store pipeline + +- SARFE10-PSSS059_store +- 4 clients + +This pipeline sends the camera image directly to the image buffer. + +**Channels** + +- SARFE10-PSSS059:FPICTURE + +### PSSS pipeline + +- SARFE10-PSSS059_psss +- 13 clients + +This pipeline extracts the spectra, fits and produces the statistics. + +**Channels** + +- SARFE10-PSSS059:FIT-BRT +- SARFE10-PSSS059:FIT-COM +- SARFE10-PSSS059:FIT-FWHM +- SARFE10-PSSS059:FIT-RES +- SARFE10-PSSS059:FIT-RMS +- SARFE10-PSSS059:SPECT-COM +- SARFE10-PSSS059:SPECT-RES +- SARFE10-PSSS059:SPECT-RMS +- SARFE10-PSSS059:SPECTRUM_X +- SARFE10-PSSS059:SPECTRUM_Y +- SARFE10-PSSS059:SPECTRUM_Y_SUM - SARFE10-PSSS059:processing_parameters \ No newline at end of file