dispersion.m - A MatLab script for phase angle and amplitude correction of pressure bar signals
Code as a research output can either be uploaded directly from your computer or through the code management system GitHub. Versioning of code repositories is supported.
This script uses an implementation of the dispersion-correction method described by Tyas and Pope (2005) to ensure that the inferred measurements of axial stress and strain accurately represent the specimen behaviour. In this method:
- The time-domain strain signal is converted into the frequency domain using the fast Fourier transform (FFT)
- A correction is applied to the phase angle of each frequency component to account for the dispersion over the distance between the strain gauge and the bar end, using Bancroft's equation.
- A correction is applied to the amplitude of each frequency component using the factors M_1 and M_2, which account for the variation of strain and Young's modulus across the bar cross section, respectively. These are derived from Davies' analysis of the radial effects in a cylindrical pressure bar.
- The signal is transformed back into the time domain using the inverse FFT.
Dispersion.m uses a pre-calculated, normalised look-up table of phase velocity, M1 and M2 to improve calculation time. A lookup table for a Poisson's ratio of 0.29 has been provided in the .zip file, and other tables can be constructed using the relationships defined in Tyas and Pope (2005).
Further information on the operation of the script is also available in Barr (2016), linked below.