***************************************************************************************** ** ** ** The DATA SET described in this README.txt file is based on the manuscript ** ** to be accepted for publication at Nature Communications, 2023. ** ** Title: Attosecond-Angstrom free-electron-laser towards the cold beam limit ** ** authors: A. F. Habib et al. (2023) ** ** e-mail:ahmad.habib@strath.ac.uk ** ***************************************************************************************** Three different simulation codes have been used to produce this data. Figure 2 data is based on the 3D particle-in-cell code called VSim, developed by Tech-X Corporation. Figure 3 data is produced by the particle tracking code ELEGANT and the data in Figure 4 is generated with the unaveraged free-electron laser code PUFFIN. A more detailed description of the simulation codes is presented in the links below: A description of VSim can be found on this website: https://www.txcorp.com/vsim A description of ELEGANT can be found on this website: https://ops.aps.anl.gov/elegant.html A description of PUFFIN can be obtained from the GitHub repository: https://github.com/UKFELs/Puffin *********************************DATA SET Description************************************** The data set is separated by subfolders: "figure2", "figure3", and "figure4". Each subfolder contains the data in the Hierarchical Data Format (HDF5) that produced each figure (Figure 2, Figure 3, and Figure 4, respectively) in the manuscript. The HDF5 container has an internal structure where data arrays for each subfigure are stored. The data tree diagram below shows what the data structure might look like inside an HDF5 file. The "file-name.h5" is referring to the figures in the manuscript. The "Group name" in the HDF5-files is referring to each subfigure and will contain the corresponding data. The arrow indicates the description of the respective arrays. ├── Group name │ ├── Array Name (array length) --> description │ └── Array Name (array length) --> description ..... ..... ..... Below describe the details of each subfolder, the HDF5 file structure, and the content: ------------------------------------------------------------------------------------------- Folder: figure2 ------------------------------------------------------------------------------------------- Figure 2 presents the relevant results of the 3D PIC simulation of the plasma acceleration stage. ├── fig1a │ ├── DensityProfile (1202) ---> Plasma density profile normalized to the nominal density n/n0. Unit: unitless │ └── zAxis (1202) ---> Correpoinig propagation axis in z. Unit: m ├── fig1b │ ├── Co-moving position (1441) ---> Co-moving frame axis (i.e. zeta = z- ct). Unit: m │ ├── Wakefield (1441) ---> Waterfall plot data of the on-axis wakefield along propagation distance z. Unit: GV/m │ └── zAxis (1441) ---> Correpoinig propagation axis in z. Unit: m ├── fig1c │ ├── Energy (947) ---> Witness beam average energy. Unit: MeV │ ├── ProjEnergySpread (947) ---> Projected relative energy spread of the witness beam. Unit: % │ ├── ProjNormEmittance (947) ---> Projected normalized emittance of the witness beam. Unit: rad │ ├── SliceEnergySpread (949) ---> Slice relative energy spread of the witness beam. Unit: % │ ├── SliceNormEmittance (949) ---> Slice normalized emittance of the witness beam. Unit: rad │ ├── zAxis (947) ---> Corrsponsing propagation axis in z for the projected values. Unit: m │ └── zAxisSlice Values (949) ---> Corrsponsing propagation axis in z for the slice values. Unit: m └── fig1e ├── CurrentProfile (218) ---> Witness beam current profile at the plasma stage exit. Unit: A └── zetaAxis (218) ---> Correpoinig co-moving axis in zeta. Unit: m The HDF5 files below contain the density plot data used in Figures 2d and 2e for the density plots of the longitudinal phase space. Driver beam ├── Density (200) ---> Longitudinal phase space density plot data (2D histogram). Unit: arb.unity ├── xAxis (200) ---> Co-moving frame axis (i.e. zeta = z- ct). Unit: m └── yAxis (200) ---> Beam energy axis. Unit: MeV Escort beam ├── Density (200) ---> Longitudinal phase space density plot data (2D histogram). Unit: arb.unity ├── xAxis (200) ---> Co-moving frame axis (i.e. zeta = z- ct). Unit: m └── yAxis (200) ---> Beam energy axis. Unit: MeV Witnessbeam beam ├── Density (200) ---> Longitudinal phase space density plot data (2D histogram). Unit: arb.unity ├── xAxis (200) ---> Co-moving frame axis (i.e. zeta = z- ct). Unit: m └── yAxis (200) ---> Beam energy axis. Unit: MeV ------------------------------------------------------------------------------------------- Folder: figure3 ------------------------------------------------------------------------------------------- Figure 3 shows the relevant results of witness beam transport, isolation and matching. ├── fig3a │ ├── MeanSliceEnergySpread (5115) ---> Averaged slice relative energy spread of the witness beam along the beam transport line. Unit: % │ ├── MeanSliceNormEmittanceX (5115) ---> Averaged slice normalized emittance of the witness beam in X plane along the beam transport line. Unit: rad │ ├── MeanSliceNormEmittanceY (5115) ---> Averaged slice normalized emittance of the witness beam in the Y-plane along the beam transport line. Unit: rad │ └── zAxis (5115) ---> Corrsponsing propagation axis in z along the transport line. Unit: m ├── fig3b │ ├── BetaX (5115) ---> Twiss beta function of the witness beam in X plane along the beam transport line. Unit: m │ ├── BetaY (5115) ---> Twiss beta function of the witness beam in Y plane along the beam transport line. Unit: m │ ├── CentroidXDriver (2707) ---> Centroid of driver beam in X-plane along the beam transport line. Unit: m │ ├── CentroidXEscort (2709) ---> Centroid of escort beam in X-plane along the beam transport line. Unit: m │ ├── CentroidXWitness (5115) ---> Centroid of witness beam in X-plane along the beam transport line. Unit: m │ ├── zAxisBeta (5115) ---> Propagation axis of twiss beta in z along the transport line. Unit: m │ └── zAxisCentroid (5115) ---> Propagation axis of Centroid in z along the transport line. Unit: m └── fig3c ├── Current (17554) ---> Witness beam current profile at the undulator entrance. Unit: A ├── SliceEnergySpread (4000) ---> Witness beam slice relative energy spread at the undulator entrance. Unit: % ├── SliceNormEmittanceX (4000) ---> Witness beam slice normalized emittance in X-plane at the undulator entrance. Unit: rad ├── SliceNormEmittanceY (4000) ---> Witness beam slice normalized emittance in Y-plane at the undulator entrance. Unit: rad ├── TauAxisBeam (4000) ---> Co-moving time axis corresponding to the slice values. Unit: s └── TauAxisCurrent (17554) ---> Co-moving time axis corresponding to the current profile. Unit: s ------------------------------------------------------------------------------------------- Folder: figure3 ------------------------------------------------------------------------------------------- Figure 4 presents the free-electron laser radiation production with the code PUFFIN for the two respective cases (C1, C2) in the paper. C1: 1.5 angstrom and C2: 0.8 Angstrom. ├── fig4a │ ├── C1_PowerGainCurve (2400) ---> Power gain curve along the undulator for case 1. Unit: GW │ └── C1_zAxis (2400) ---> Corresponding propagation axis along the undulator. Unit: m ├── fig4b │ ├── C1_PowerProfile (51713) ---> Radiation pulse profile for case 1. Unit: GW │ └── C1_TauAxis (51713) ---> Corrsponding time axis. Unit: s ├── fig4c │ ├── C1_SpectralPower (78989) ---> Unfiltered normalized spectral power for case 1. Unit: unit less │ └── C1_Wavelength (78989) ---> Corrspending wavelength axis. Unit: m ├── fig4d │ ├── C2_PowerGainCurve (3500) ---> Power gain curve along the undulator for case 2. Unit: GW │ └── C2_zAxis (3500) ---> Corresponding propagation axis along the undulator. Unit: m ├── fig4e │ ├── C2_PowerProfile (82802) ---> Radiation pulse profile for case 2. Unit: GW │ └── C2_TauAxis (82802) ---> Corrsponding time axis. Unit: s └── fig4f ├── C2_SpectralPower (123920) ---> Unfiltered normalized spectral power for case 1. Unit: unitless └── C2_Wavelength (123920) ---> Corrspending wavelength axis. Unit: m *************************************************************************************************** * * * END OF README * * * *************************************************************************************************** * _(\ * * ______ / .| ~ ~ ~ ~ ~ X ~ ~ ~ ~ ~ .... * * >==. 'TH FEL' \_| * * / | | | \/ * * |_ | | |__| * * / \|__|__/ \ * * \__/ \__/ * *************************************************************************************************** * * ***************************************************************************************************