HiSPoD¶

HiSPoD is a Matlab® program developed for simulating and analyzing undulator white-beam diffraction patterns from polycrystalline samples.
We kindly request that you cite [A1] if you use HiSPoD.
Features¶
- Simulate diffraction pattern of a given material.
- Calculated radially averaged 1D diffraction profile from 2D diffraction data from the Advanced Photon Source beamline 32-ID-B.
- Index (hkl) of diffraction data.
Contribute¶
- Documentation: https://github.com/HiSPoD/HiSPoD/tree/master/doc
- Issue Tracker: https://github.com/HiSPoD/HiSPoD/issues
- Source Code: https://github.com/HiSPoD/HiSPoD/
Content¶
About¶
HiSPoD is a Matlab® program developed for simulating and analyzing undulator white-beam diffraction patterns from polycrystalline samples.
User Manual¶
Introduction¶
HiSPoD is a Matlab® program, which runs in both Windows and Mac systems. Imaging Processing Toolbox is required for using some of the functions of this program.
HiSPoD is developed for simulating and analyzing undulator white-beam diffraction patterns from polycrystalline samples. It is particularly useful when (1) one deals with noisy diffraction patterns, i.e. single-pulse pattern collected using intensified CCD), (2) an area detector is placed with an offset angle from the incident direction, i.e. the detection plane is not perpendicular to the incident beam while the transmission spot may not fall on the detector, and (3) diffraction peaks from multiple x-ray harmonic energies co-exist. The major functions of this GUI include:
Simulate 2D diffraction pattern from a sample under a given experiment condition
- Analyze 2D diffraction patterns
- Estimate transmission beam position
- Define region of interest (i.e. apply mask)
- Calculate map of reciprocal wavevector q
- Extract 1D intensity profiles I(tth) and I(q) via radially averaging
- Index (hkl) and harmonic peaks
Perform curve fitting to quantify strain and phase content
HiSPoD aims at providing users with an effective tool for (1) designing experiments by predicting sample diffraction patterns before the visit to the synchrotron facility, (2) optimizing parameters and adjusting work plan by quickly analyzing the experiment data on site, and (3) fully understanding the data and quantifying the results by curve fitting after going back to home institution.
Figure 1 HiSPoD interface
HiSPoD consists of four modules:
- “Experiment Parameters”: users input the parameters associated with the detector and experiment geometry.
- “Sample Lattice Structure”: users input the standard powder diffraction intensities of the sample. Such information can be obtained from the International Centre for Diffraction Data, in-house diffraction experiments, or commercial software, such as CrystalMaker.
- “Load Data Files”: in this module, users load the raw data, background file, energy spectrum, and absorption file.
- “Analysis Tools”: this module contains multiple tools for users to perform data analysis.
Experiment geometry¶
HiSPoD works for both reflection and transmission geometries, as shown in Fig. 2. For polycrystalline samples, these two geometries are fundamentally the same, and the only difference is that in transmission geometry, the energy spectrum will be modified due to the sample absorption. Usually, the lower the energy, the higher the intensity attenuation is. The exceptions occur at the sample absorption edges, which are normally lower than the 1st harmonic energy and thereby can be ignored most of the time. A function called “Load absorption file” can be used for taking into account the absorption effect of the sample when quantitative simulation is desired. Details will be introduced in following sections.
Figure 2: Reflection and transmission experiment geometries
In the experiment, the detector is placed with detection plane perpendicular to the ground, as shown in Fig. 3. The position of the detector could be rather arbitrary. It’s recommended that the detector is mounted and moved in the “Circular track” geometry, such as the case of mounting the detector on a diffractometer arm for the ease of getting the direct beam X and Y values.
Figure 3: Position of the detector
Predict diffraction pattern¶
Prerequisite parameters¶
- Detector: pixel size, and image pixel dimension
- Sample: crystal structure, lattice parameter, and reference XRD spectrum (i.e. hkl and corresponding diffraction intensity)
- Photon energy spectrum: flux versus energy
- Sample absorption: transmission(%) versus energy. This is only needed when the experiment is in transmission geometry
Adjustable parameters¶
- Sample-to-detector distance: the shortest distance from the sample to the detector plane (Fig. 3)
- Detector angle: the angle from incident direction to the detector plane surface normal (Fig. 3)
- Direct beam X and Y pixel positions: typically X is negative and Y is positive (Fig. 3)
- Number of harmonic: meaning how many x-ray harmonic energies you’ll consider when simulating “Schematic” diffraction pattern and labeling I(tth) curve
- Scaling factor: meaning n by n image binning when doing data analysis and simulation. n is an integer, i.e. 1, 2, 4 etc. The larger the number, the faster the processing and yet the lower the resolution
- “q points”: number of points in q when calculating I(tth) and I(q)
- “q res (A)”: width or resolution of q when displaying and simulating. The larger this number, the smoother the I(tth) and I(q) plots
Deliverables¶
- 2D diffraction pattern under the given experiment condition (without noise). The “schematic” pattern show only peak positions with counting the selected harmonic energies, while the “realistic” pattern will consider the entire energy spectrum loaded, reference diffraction intensity, and absorption effect.
- 1D intensity profiles I(tth) and I(q) with all peaks labeled
Procedure for simulating diffraction patterns¶
- Input all the known experiment parameters. For repeated simulations, the parameters can be imported from a previously-saved file by clicking the “Load parameters” button.
- The direct beam X value can be directly input in if the exact position of the detector is known. Otherwise, it may be left blank and the “Find direct beam” function can do the math. Click “Find direct beam” button, and choose “Detector position” in the dialog window popping up, as shown in Fig. 4. Then the direct beam X will be generated. Note that this function only works for the case that the detector position is confined in a circular track with sample facing the center, as shown in the second panel of Fig. 3. Direct beam Y number can be estimated based on the curvature of the diffraction rings in the data. If simulating a diffraction pattern without data, direct beam Y value is typically half of the Image dimension V, i.e. beam is at the center height of the detector.
Figure 4: Find direct beam position based on detector position (only for “Circular track” mode)
- Click “Export parameters” button to save all the numbers in the “Experiment Parameters” module. A typical file saving window will pop up, asking the directory and file name. (Optional)
- Choose the lattice type from the pull-down menu in the “Sample Lattice Structure” module, and input the lattice parameters and standard diffraction information. For repeated simulations, the parameters can be imported from a previously-saved file by clicking the “Load” button.
- Input or load the sample information for the secondary phase. (Optional)
- Input the content of each phase. If there are two phases, the sum of these two numbers should be 100. If both spaces are left blank, the program will take the default value as 50%-50%. (Optional)
- Click “Remove” button will clear all inputs.
- Click “Load E spectrum” button to load the energy spectrum. These data files are normally provided to the users by the beamline. Also, users can calculate the energy spectrum using the XOP software for the given undulator type and gap. A message window will then pop up asking the user to circle out multiple peaks (“number of harmonic” that the user filled in) in the spectrum. Click “OK” and the energy spectrum plot will show up. Use mouse to circle the interested and the program will automatically find the peak positions and marked them in the plot. The energy of the first selected harmonic, wavelength, and the name of the loaded file will show up in the GUI control panel, as illustrated in Fig. 5. Note that users don’t have to always select the 1st harmonic energy, particularly when dealing with small undulator gap and strong absorption samples.
Figure 5: Load energy spectrum and find harmonic energies
- Click “Load absorption file” button to load x-ray transmission curve. This is needed only for transmission geometry. The x-ray mass attenuation coefficient of elements can be found on the webpage of NIST. The loaded data will then be plotted in a window, as shown in Fig. 6.
- Click “Apply” button next to the “Load absorption file” button to apply modification of the energy spectrum. A plot window with the original energy spectrum, the transmission curve, and the modified energy spectrum will pop up, together with a message window asking whether to keep the change or select another absorption file. If choose “Yes, keep it”, a window showing only the modified energy spectrum will pop up. Also, the name of the absorption file will appear in the GUI control panel, as shown in Fig. 7. If choose “No, select another file”, then choose another one. Choose “Cancel” if do not want to do anything.
Figure 6: Load absorption file (transmission% vs energy)
Figure 7: Apply sample absorption to modify the energy spectrum
- Click “Simulate diffraction” button to calculate the diffraction pattern with the given experiment parameters and sample structure. A dialog window will pop up and provide two options. Click “Schematic” to generate a simple pattern with the diffraction peak position marked. In this mode, only the selected harmonic energies will be considered. Click “Realistic” to simulate a diffraction pattern that resembles more like the true experiment data. In this mode, the reference diffraction intensity of each (hkl), energy spectrum, and absorption from sample and filter will all be considered. After click the “Realistic” button, an input window will pop up, asking for a number range from 0.5 to 3. This is a dummy scaling number, and the larger the number, the more data points from the energy spectrum will be used for simulating, i.e. simulation with higher energy resolution. After inputting a number and clicking “OK”, a message window will pop up with instruction of pointing out the harmonic peak positions. Then, in the energy spectrum plot, single click in the vicinity of each peak (the program will find the true peak position automatically) and double click the last point to confirm selection.
Figure 8: Simulate diffraction pattern
- In the “Tools” module, input number of points for I(tth) or I(q) and q resolution for getting 1D data. “Points” should be smaller than the number of pixels in the diffraction pattern along horizontal direction. “q res (A)” should be larger than the pixel resolution. Typical q resolution ranges from 0.005 to 0.05.
- Click “I(tth) of simulation” button to extract the 1D intensity profile, as Fig. 9. In this function, the program will first calculate the q map corresponding to the 1st harmonic energy, and then average intensities of those pixels that have similar q values. In the end, the program convert I(q) back to I(tth).
Figure 9: Calculate I(tth) from the simulated diffraction pattern
- Click “Label (hkl) in I(tth)” button to index the 1D intensity profile. A dialog window will pop up with options to index the experiment data or simulation. Click “Simulation” button, and reference diffraction peaks of the sample will be displayed on I(tth) plot. The color of the line/bar indicates to which harmonic energy a specific peak belongs. Solid line is for phase 1 and dashed line is for phase 2. The relative heights of these reference lines can be adjusted by clicking the “+” and “-” buttons.
Figure 10: Index peaks on 1D diffraction intensity profile I(tth)
Analyze experiment data¶
Find the direct beam position¶
In experiments, the detector may not be mounted on a diffractometer rotation arm and move in a circular track. In such case, the “Find direct beam” function based on the “detector location” will not work. If the detector position is accurately surveyed, the direct beam position can be manually calculated from geometry of the beam-sample-detector triangle; otherwise, the “Find direct beam” function based on “Diffraction pattern” will help to estimate direct beam X and Y. Basically, users will be asked to mark out a diffraction ring and provide information about the d-spacing of the atomic plane and the harmonic energy that this ring is generated with. In practice, a simple and high-quality diffraction pattern from a reference sample should be used to facilitate the locating of direct beam position. Below is the detailed procedure:
- Input experiment parameters and the sample structure. In this example, a transmission-mode diffraction pattern from Al foil was used.
- Load the diffraction pattern. If the raw data is multi-frame tiff file, the program will calculate the mean intensity of each frame and plots them in a figure. A dialog window will pop up simultaneously, asking which frame to load.
Figure 11: Load diffraction data
- Load the energy spectrum.
- In the space to the right of the “Find direct beam” button, input the number of times that this process will be repeated. Users may choose to calculate direct beam X and Y for multiple times based on one specific diffraction ring to increase statistical accuracy, or based on different rings as long as the d-spacings and harmonic energies are known for these rings.
- Click “Find direct beam” button and choose “Diffraction pattern”. A message window will show up with the instruction for this process. Read it carefully, and click “OK” to proceed. The diffraction pattern that was loaded will then appear.
- On the diffraction pattern, use three points to define the diffraction ring. Single-click the first two points, and double-click the last one to complete the marking. Once confirmed, a dialog window will pop up asking the energy and d-spacing associated with this diffraction ring. Click “OK” to proceed.
- If users choose to do multiple times, repeat step (6) until it all finishes.
- The program will do the calculation and the direct beam X and Y values will show up in the GUI control panel.
Figure 12: Procedure to estimate direct beam position based on a diffraction pattern
- Click “Calculate q map” to verify the direct beam position. Note that “q res (A)” has to have a number for this function. A figure with three panels will pop up. The left image is the q map corresponding to the selected 1st harmonic energy. The middle panel shows the map of azimuthal phi angles. The right image is the diffraction pattern overlaid with reference diffraction peaks (again corresponding to selected 1st harmonic energy). If the reference peak positions deviate much from the diffraction rings. Repeat the whole process and make sure the input of the diffraction ring information is correct. Note that those peaks which are generated by the nth harmonic energies (n>1) are not labeled here.
Figure 13: Calculate q and phi maps to verify the direct beam position
- To more accurately locate the direct beam position, click “Label (hkl) in I(tth)” button, and choose “Experiment”. The I(tth) plot will show up with diffraction peaks labeled. Slightly adjust the direct beam position and repeat this process until the peak positions in the data match the reference. Note that each time the direct beam X and Y are changed, q map has to be calculated before using the labeling I(tth) function.
Figure 14: Fine optimize the direct beam position
- Verify the direct beam position and the other experiment parameters by analyzing data from different reference samples, different detector angles, or different undulator gaps. The results should be consistently reasonable.
Procedure for analyzing diffraction patterns¶
Once the accurate direct beam X and Y are obtained, the program is ready to analyze user experiment data. Actually, most of the functions to be used have been mentioned above. A typical procedure is described below.
Calculate I(tth) of individual diffraction pattern¶
- Input or load sample structure.
- Load diffraction data.
- Load energy spectrum.
- Load and apply the absorption file if the transmission geometry is used. (Optional)
- Click “Define ROI” to mark out the region of interest. A message window will show up providing two options for ROI defining. Click “Full frame” is no region in intended to be masked out; click “Click to define” for selecting a certain region. Then, another message window will show up with detailed instructions. Click “OK” to proceed.
- In the diffraction pattern popping up, single-click the mouse left button at multiple spots (unlimited number) to define the region to be analyzed. Overlap the last the spot with the first one to complete the marking. Double-click the selected area to confirm. Once defined, the program will remember the ROI and automatically apply to the new data loaded. To analyze data with different ROI, simply re-define it.
Figure 15: Define the region of interest
Click “Calculate q map”. The diffraction rings should overlap with the reference peak positions perfectly.
Click “I(tth) of data” button. A dialog window will pop up, asking “Do you want to perform the radial averaging over all angles or a certain range of angles?” This is useful when dealing with diffraction anisotropy, such as the cases of tensile or compressive loading. If choose “All”, the program will integrate all pixels within ROI. If choose “Segment”, another window will pop up, asking whether you need to input the starting and ending azimuthal angles or click in the diffraction pattern to define the angle range. Choose “Input” to type in the angles in the following pop-up window; or choose “click” and then single click the starting angle, and double click to select the ending angle.
Figure 16: Calculate 1D intensity profile
Click “Label (hkl) in I(tth)” button and choose “Experiment” to index the diffraction plot. Click “+” and “-” buttons to adjust the relative heights of the reference bars.
Click “Get I(q) of data” button to get 1D intensity as a function of the reciprocal wavevector. (Optional) Here the q is calculated with the 1st harmonic energy.
Calculate I(tth) of a series of diffraction patterns¶
Input or load experiment parameters, sample structure, energy spectrum, and absorption data as routine.
Load data series by clicking “Load diffraction data series” button. A directory window will pop up asking for data selection. Choose files to be analyzed, and click “Open” to load them. The first pattern in the series will be displayed.
Figure 17: Load data series
Calculate q map and define ROI as routine.
Click “I(tth) of series” button to obtain 1D intensity profiles from the loaded data files. The space to the right of the button takes input of a number, which will help spacing individual intensity profile off in the final plot, as shown in Fig. 18. Once clicked, a message window will show up with the instruction for the following step. Click “OK”, then a 2D intensity pattern will show up. The vertical axis is the frame number, and the horizontal axis is 2theta scattering angle. This is a pattern that piles all individual 1D intensity profiles together, which helps the user to observe the change in the scattering intensity due to a certain sample event. Click two points laterally (i.e. within same frame) in a flat part of the intensity map to define an angle range that contains flat background. Then all 1D intensity profiles will subtract their own background intensity (calculated within the same angle range), and re-pack together to generate a new 2D intensity pattern. Along with background subtraction, the new 2D intensity pattern will be populated in pixels via data interpolation, in order to display a smoother visualization effect.
Similar to the analysis of individual diffraction pattern, one can choose to perform radial integration over all available azimuthal angles or a certain angle range.
Figure 18 Calculate 1D intensity profiles for a batch of diffraction patterns
Calculate I(phi)¶
Correlate simulation with experiment data¶
HiSPoD doesn’t have a function to automatically fit the 1D diffraction intensity profiles. The curve fitting function here is a direct overlay of the experiment data and simulated results. If strain information is desired, manually adjust the lattice parameter until the simulation matches the experiment data perfectly. A typical procedure to correlate the simulation with data is described below:
- Input or load experiment parameters and sample structure information.
- Load diffraction data, energy spectrum, and absorption file.
- Define ROI, and Calculate q map.
- Get I(tth) of data.
- Simulate “Realistic” diffraction pattern.
- Get I(tth) of simulation.
- Click “Overlay I(tth)” button in the “Tools” module. A message window will pop up telling users to get the noise level. Click “OK” to proceed. In the diffraction pattern, circle out a region (typically at the detector corners that are outside the scintillator) to collect the mean detector noise, and double-click to confirm. Another message window will pop up with instructions on how to define the background. Click “OK” to proceed. The 1D intensity profile of the experiment data will show up, in which multiple points need to be selected to define the background. Here the background (i.e. combination of the tail part of the transmission beam, air scattering and others) is assumed to follow the exponential decay function. Double-click the last point to confirm.
Figure 19: Define noise and background
- Once the background is defined, two windows with diffraction plots will pop up, as Fig. 20. The first plot shows the data and the defined background. The second figure shows the data and simulation in two formats. The left one with noise and background, and the right one without.
Figure 20: Overlay diffraction data and simulation
- Repeat step (10) if the fitting needs to be improved.
- For two-phase samples, adjust the content of each phase and re-do the simulation to get the best fitting result.
- For some samples with fine grains, the diffraction peaks will be largely broadened. To achieve a better curve fitting, the “Curve fit” function could be used. The “eta” and “sigma” parameters to the right of the button need user inputs. It’s assumed that the diffraction peak shape profile, if using monochromatic x-ray, can be described using pseudo-Voigt function, in which eta and sigma are two key parameters. “eta” is a parameter tuning the contribution of Gaussian and Lorentzian broadening in the Voigt function; “sigma” describes the peak width. (details in Appendix). After conducting previous steps of “Overlay I(tth)”, click “Curve fit” button. A message window with instruction will show up. Click “OK” to proceed. The figure with I(tth) curve will appear. Click two points on the figure to narrow down angle range for further fitting. The diffraction peak(s) within this range will be fitted. Double click the second point to confirm. Then another window will pop up, providing two options for curve fitting: one option is to match the maximum intensities of the data and simulation; the second option is to calculate standard deviation between the data and the simulation, and tune the scaling factor in order to minimize the deviation. For a good fitting, these two options yield very similar results.
Figure 21: Quantitative curve fitting
System tools¶
The system tools are located at the bottom of the control panel.
Figure 22: System tools
- Remove data: remove all the loaded diffraction data. The experiment parameters and sample structure won’t be affected.
- Copy results: transfer all the data into the current workspace of Matlab® as udata. For example, the 1D intensity will be udata.Ith, and the angle will be udata.th. The simulated intensity will be udata. Ith_fit_final.
- Save results: save all the data to the hard drive.
- Close all figures: close all the figures displayed. A quick desktop clean-up function.
- Quit program: exit the program and close the control panel.
Appendix¶
Diffraction simulation¶
The simulation of a white-beam diffraction pattern from a known material starts from the calculation of monochromatic beam diffraction patterns for the specific detector location, I(θ,E). Then these mono-beam diffraction patterns are integrated over the entire energy range with weighting factor being the flux of photons with different energy, F(E).
where E1 and E2 are typically 1 keV and 60 keV, respectively. To improve the calculation speed, discrete diffraction peaks are considered, meaning that I(θ,E) is normally replaced by a series of Ihkl(θ,E). Equation above then becomes:
In our simulations, the diffraction peak shape is described using the pseudo-Voigt function:
Essentially, the white-beam diffraction intensity at a given scattering angle is the convolution of the input diffraction intensity of different atomic planes with the energy spectrum of the x-rays.
Figure 23: Simulation of white-beam diffraction
How to obtain the sample absorption file¶
Option 1: Ask the beamline scientists for it. If users are not confident to calculate the attenuation curve, asking the beamline scientists is always the best choice. Provide sample parameters including chemical formula, mass density, and thickness. For example, sample Al2O3, density of 3.95 g/cm3, thickness 500 µm.
Option 2: Use the web tool of The Center of X-Ray Optics. Calculate the x-ray transmission for a solid with procedure shown below and in Fig. 24.
- Fill in sample information
- Select energy range
- Click “Submit Request” to do the calculation. Another window will then pop up with the plot
- Click “data file here” to show the values
- Copy the data (without the sample info lines), and save it as a *.txt file
Note that this online tool can only calculate the transmission for energy ranging from 0-30 keV, which often not suffice for white-beam experiments.
Figure 24: Calculate x-ray transmission at the website of CXRO
Option 3: Self calculate based on the x-ray mass attenuation coefficients from the NIST web page. There the attenuation coefficients (µ/ρ) are provided for elements from Hydrogen to Uranium. The x-ray attenuation T is calculated as:
where µ/ρ is value directly from the web page, ρ is the mass density of the sample, and t is the sample thickness.
For compounds, the attenuation coefficients will simply be the weighted-sum of each element:
where wi is the weight (or mass) fraction of element i.
For example of Al2O3, density 3.95 g/cm3, thickness 500 µm, and for x-ray energy 10 keV, the mass coefficient of the sample will be:
The attenuation will then be:
Some comparisons to guide the usage¶
Scaling factor: 4 vs 2 vs 1
Always, the larger the scaling factor, the faster the processing time, yet the smaller the resolution. For the example shown in Fig. 25, the simulation time for scaling factor 4, 2, and 1 are 11 min, 1.5 min, and 14 sec, respectively. (Note the CPU is Intel i7, 3.4 GHz) Clearly, the small peak at 48° can only be visualized in the patterns with scaling factor 2 and 1. The effect of scaling factor on the analysis of experiment data is not as obvious, as the signal-to-noise ratio of single-pulse diffraction patterns is rather low and radially averaging is more related to the parameters “Points” and “Q res”. For image with dimension of about 1k x 1k, the scaling factor of 2 may be a good option.
Figure 25: Effect of scaling factor
- Direct beam position: wrong vs right
Figure 26 show the overlap of diffraction rings with the reference peaks in cases of wrong and correct direct beam position input. The correct parameters should satisfy all other data, either same sample with different undulator gap (i.e. energy spectrum) or other samples. For this specific example in Fig. 26, all the diffraction rings are generated by the 1st harmonic energy, so they are all labeled, but this is not always the case. Figure 27 show the data from another undulator gap, in which some diffraction rings are generated by 2nd harmonic energy. Users may simply input the photon energy used for labeling in the “E1 (keV)” space.
Figure 26: Effect of direction beam locating on calculation of q map
Figure 27: Reference peaks corresponds to 1st and 2nd harmonic energies
- Pointes and Q res: rough vs smooth plots
Smooth plot looks good, but may lose some structure information due to the over averaging.
Figure 28: Rough and smooth (yet low-resolution) 1D plots
- Region of interest: without ROI vs with ROI
This is not necessary if all the pixels on the detector function properly.
Figure 29: Effect of ROI on the 1D plot
Install¶
This section covers the basics of how to download and install and contribute to the HiSPoD project.
Contents:
Cloning the repository¶
Clone the HiSPoD from GitHub repository:
git clone https://github.com/HiSPoD/HiSPoD.git HiSPoD
then:
cd HiSPoD
API reference¶
HiSPoD Modules:
hispod.module_01
¶
Module for describing .....
Functions:
function_01 (parameter_01, parameter_02, ...) |
Function description. |
function_02 (parameter_01, parameter_02, ...) |
Function description. |
hispod.module_02
¶
Module for describing .....
Functions:
function_01 (parameter_01, parameter_02, ...) |
Function description. |
function_02 (parameter_01, parameter_02, ...) |
Function description. |
Examples¶
Here we describe what the examples are doing. You can cite with [B16].
Example 01¶
This section contains the example_01 script.
Download file: example_01.py
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | #!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Example script
"""
from __future__ import print_function
import project
if __name__ == '__main__':
parameter_01 = 1
parameter_02 = 2
parameter_03 = 3
# call function_01
result = project.function_01(parameter_01, parameter_02, parameter_03)
print (result)
|
Example 02¶
This section contains the example_02 script.
Download file: example_02.py
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | #!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Example script
"""
from __future__ import print_function
import project
if __name__ == '__main__':
parameter_01 = 1
parameter_02 = 2
parameter_03 = 3
# call function_01
result = project.function_02(parameter_01, parameter_02, parameter_03)
print (result)
|
Credits¶
Citations¶
We kindly request that you cite the following article [A1] if you use project.
[A1] | Tao Sun and Kamel Fezzaa. HiSPoD: a program for high-speed polychromatic X-ray diffraction experiments and data analysis on polycrystalline samples. Journal of Synchrotron Radiation, 23(4):1046–1053, Jul 2016. URL: http://dx.doi.org/10.1107/S1600577516005804, doi:10.1107/S1600577516005804. |
References¶
[B1] | S. C. Barron, S. T. Kelly, J. Kirchhoff, R. Knepper, K. Fisher, K. J. T. Livi, E. M. Dufresne, K. Fezzaa, T. W. Barbee, T. C. Hufnagel, and T. P. Weihs. Self-propagating reactions in al/zr multilayers: anomalous dependence of reaction velocity on bilayer thickness. Journal of Applied Physics, 114(22):, 2013. URL: http://scitation.aip.org/content/aip/journal/jap/114/22/10.1063/1.4840915, doi:http://dx.doi.org/10.1063/1.4840915. |
[B2] | D. E. Eakins and D. J. Chapman. X-ray imaging of subsurface dynamics in high-z materials at the diamond light source. Review of Scientific Instruments, 85(12):, 2014. URL: http://scitation.aip.org/content/aip/journal/rsi/85/12/10.1063/1.4904275, doi:http://dx.doi.org/10.1063/1.4904275. |
[B3] | D. Fan, L. Lu, B. Li, M. L. Qi, J. C. E, F. Zhao, T. Sun, K. Fezzaa, W. Chen, and S. N. Luo. Transient x-ray diffraction with simultaneous imaging under high strain-rate loading. Review of Scientific Instruments, 85(11):, 2014. URL: http://scitation.aip.org/content/aip/journal/rsi/85/11/10.1063/1.4900861, doi:http://dx.doi.org/10.1063/1.4900861. |
[B4] | Kamel Fezzaa and Yujie Wang. Ultrafast x-ray phase-contrast imaging of the initial coalescence phase of two water droplets. Phys. Rev. Lett., 100:104501, Mar 2008. URL: http://link.aps.org/doi/10.1103/PhysRevLett.100.104501, doi:10.1103/PhysRevLett.100.104501. |
[B5] | M. Hudspeth, B. Claus, S. Dubelman, J. Black, A. Mondal, N. Parab, C. Funnell, F. Hai, M. L. Qi, K. Fezzaa, S. N. Luo, and W. Chen. High speed synchrotron x-ray phase contrast imaging of dynamic material response to split hopkinson bar loading. Review of Scientific Instruments, 84(2):, 2013. URL: http://scitation.aip.org/content/aip/journal/rsi/84/2/10.1063/1.4789780, doi:http://dx.doi.org/10.1063/1.4789780. |
[B6] | M. Hudspeth, T. Sun, N. Parab, Z. Guo, K. Fezzaa, S. Luo, and W. Chen. Simultaneous X-ray diffraction and phase-contrast imaging for investigating material deformation mechanisms during high-rate loading. Journal of Synchrotron Radiation, 22(1):49–58, Jan 2015. URL: http://dx.doi.org/10.1107/S1600577514022747, doi:10.1107/S1600577514022747. |
[B7] | B. J. Jensen, F. J. Cherne, M. B. Prime, K. Fezzaa, A. J. Iverson, C. A. Carlson, J. D. Yeager, K. J. Ramos, D. E. Hooks, J. C. Cooley, and G. Dimonte. Jet formation in cerium metal to examine material strength. Journal of Applied Physics, 118(19):, 2015. URL: http://scitation.aip.org/content/aip/journal/jap/118/19/10.1063/1.4935879, doi:http://dx.doi.org/10.1063/1.4935879. |
[B8] | P. K. Lambert, C. J. Hustedt, K. S. Vecchio, E. L. Huskins, D. T. Casem, S. M. Gruner, M. W. Tate, H. T. Philipp, A. R. Woll, P. Purohit, J. T. Weiss, V. Kannan, K. T. Ramesh, P. Kenesei, J. S. Okasinski, J. Almer, M. Zhao, A. G. Ananiadis, and T. C. Hufnagel. Time-resolved x-ray diffraction techniques for bulk polycrystalline materials under dynamic loading. Review of Scientific Instruments, 85(9):, 2014. URL: http://scitation.aip.org/content/aip/journal/rsi/85/9/10.1063/1.4893881, doi:http://dx.doi.org/10.1063/1.4893881. |
[B9] | Ji San Lee, Byung Mook Weon, Su Ji Park, Jung Ho Je, Kamel Fezzaa, and Wah-Keat Lee. Size limits the formation of liquid jets during bubble bursting. Nat Commun, 2:367, Jun 2011. URL: http://dx.doi.org/10.1038/ncomms1369, doi:10.1038/ncomms1369. |
[B10] | S. N. Luo, B. J. Jensen, D. E. Hooks, K. Fezzaa, K. J. Ramos, J. D. Yeager, K. Kwiatkowski, and T. Shimada. Gas gun shock experiments with single-pulse x-ray phase contrast imaging and diffraction at the advanced photon source. Review of Scientific Instruments, 83(7):, 2012. URL: http://scitation.aip.org/content/aip/journal/rsi/83/7/10.1063/1.4733704, doi:http://dx.doi.org/10.1063/1.4733704. |
[B11] | Seoksu Moon, Yuan Gao, Jin Wang, Kamel Fezzaa, and Taku Tsujimura. Near-field dynamics of high-speed diesel sprays: effects of orifice inlet geometry and injection pressure. Fuel, 133():299 – 309, 2014. URL: http://www.sciencedirect.com/science/article/pii/S0016236114004712, doi:http://dx.doi.org/10.1016/j.fuel.2014.05.024. |
[B12] | Niranjan D. Parab, Benjamin Claus, Matthew C. Hudspeth, John T. Black, Alex Mondal, Jianzhuo Sun, Kemal Fezzaa, Xianghui Xiao, S.N. Luo, and Wayne Chen. Experimental assessment of fracture of individual sand particles at different loading rates. International Journal of Impact Engineering, 68():8 – 14, 2014. URL: http://www.sciencedirect.com/science/article/pii/S0734743X14000165, doi:http://dx.doi.org/10.1016/j.ijimpeng.2014.01.003. |
[B13] | Alexander Rack, Mario Scheel, and Andreas N. Danilewsky. Real-time direct and diffraction X-ray imaging of irregular silicon wafer breakage. IUCrJ, 3(2):108–114, Mar 2016. URL: http://dx.doi.org/10.1107/S205225251502271X, doi:10.1107/S205225251502271X. |
[B14] | Robert V. Reeves, Jeremiah D. E. White, Eric M. Dufresne, Kamel Fezzaa, Steven F. Son, Arvind Varma, and Alexander S. Mukasyan. Microstructural transformations and kinetics of high-temperature heterogeneous gasless reactions by high-speed x-ray phase-contrast imaging. Phys. Rev. B, 80:224103, Dec 2009. URL: http://link.aps.org/doi/10.1103/PhysRevB.80.224103, doi:10.1103/PhysRevB.80.224103. |
[B15] | K.T. Sullivan, N.W. Piekiel, C. Wu, S. Chowdhury, S.T. Kelly, T.C. Hufnagel, K. Fezzaa, and M.R. Zachariah. Reactive sintering: an important component in the combustion of nanocomposite thermites. Combustion and Flame, 159(1):2 – 15, 2012. URL: http://www.sciencedirect.com/science/article/pii/S0010218011002276, doi:http://dx.doi.org/10.1016/j.combustflame.2011.07.015. |
[B16] | Tao Sun and Kamel Fezzaa. HiSPoD: a program for high-speed polychromatic X-ray diffraction experiments and data analysis on polycrystalline samples. Journal of Synchrotron Radiation, 23(4):, Jul 2016. URL: http://dx.doi.org/10.1107/S1600577516005804, doi:10.1107/S1600577516005804. |
[B17] | Yujie Wang, Xin Liu, Kyoung-Su Im, Wah-Keat Lee, Jin Wang, Kamel Fezzaa, David L. S. Hung, and James R. Winkelman. Ultrafast x-ray study of dense-liquid-jet flow dynamics using structure-tracking velocimetry. Nat Phys, 4(4):305–309, Apr 2008. URL: http://dx.doi.org/10.1038/nphys840, doi:10.1038/nphys840. |