MS_phasevels
MS_PHASEVELS - Wave velocities in anisotropic media.
Calculate the phase velocity details for an elsticity matrix.
[ pol, avs, vs1, vs2, vp, ...] = MS_phasevels( C, rh, inc, azi )
Usage: [ pol, avs, vs1, vs2, vp ] = MS_phasevels( C, rh, inc, azi ) Calculate phase velocities from elasticity matrix C (in GPa) and density rh (in kg/m^3) for a propogation direction defined by an inclination and azimuth (both in degrees, see below). Output details are given below.
[ pol, avs, vs1, vs2, vp, SF, SS ] = MS_phasevels( C, rh, inc, azi ) Additionally output fast and slow S-wave polarisation in vector form.
Notes: Azi is defined as the angle in degrees from the +ve 1-axis in x1-x2 plane with +ve being clockwise when looking at origin from the 3-axis. Inc is defined as the angle in degrees from the x1-x2 plane towards x3 with zero being in the x1-x2 plane. Inc and azi may be scalars, or vectors of the same size. Outputs are:
'pol' = angle in plane normal to raypath of FSW (deg, zero is x3 direction, +ve c'wise looking along raypath at origin) 'avs' = shear-wave anisotropy 'vs1' = fast shear-wave velocity (m/s) 'vs2' = slow shear-wave velocity (m/s) 'vp' = P-wave velocity (m/s)
and all are vectors of length equal to the input inc and azi vectors. In the case of no S-wave splitting (vs1 and vs2 are equal to within eps^1/2) pol is set to NaN. Optional outputs SF and SS are arrays of size (length(inc),3), with each row corresponding to a polarisation vector. This implementation is based on EMATRIX6 by D. Mainprice. Re-coded in MATLAB by James Wookey but now avoids transforming from the 6x6 elasticity matrix into the 3x3x3x3 tensor form using the method outlined in Winterstein (1990).
Reference: Mainprice D. (1990). An efficient FORTRAN program to calculate seismic anisotropy from the lattice preferred orientation of minerals. Computers & Gesosciences, vol16, pp385-393. Winterstein D. F. (1990). Velocity anisotropy terminology for geophysicists. Geophysics, vol 55, pp1070-1088.