Be the first to rate this file! 20 Downloads (last 30 days) File Size: 2.53 KB File ID: #35916
image thumbnail

Water sound speed calculator

by

 

30 Mar 2012 (Updated )

Calculate the sound speed of water for any given temperature, pressure, and salinity.

| Watch this File

File Information
Description

OUTPUT: sound speed in m/s

INPUTS:
This function allows any or all inputs to be scalar or vectors. However, dimensions of all vector inputs must agree.

T_degrees_C is temperature in [°C]
P_kPa is absolute pressure [kPa]
S_ppt is salinity in ppt; most often close enough to psu for practical purposes. For freshwater use S_ppt = 0 or leave blank

If you have data from a CTD cast, you might have values for temperature, pressure, and salinity in the following format. (These example values are entirely hypothetical):
T_profile = [22 22 21 19 18];
P_profile = [101 150 199 240 300];
S_profile = [35.5 35 34.5 34 34.5];

Or you might have constant values for one or all of the input parameters:
T_const = 22;
P_const = 110;
S_const = 33;

ANY OF THE INPUTS FOLLOWING WILL WORK:
c_water(T_const,P_const,S_const)
c_water(T_const,P_const)
c_water(T_const)
c_water()
c_water
c_water(T_profile)
c_water(T_profile,P_profile)
c_water(T_profile,P_profile,S_profile)
c_water(T_profile,P_profile,S_const)
c_water(T_profile,P_const,S_profile)
c_water(T_profile,P_const,S_const)
c_water(T_const,P_profile,S_profile)
c_water(T_const,P_const,S_profile)
c_water(T_const,P_profile,S_const)
c_water(T_const,P_profile)
c_water(T_profile,P_const)

GRAPHICAL EXAMPLE
d = 0:5000; % for depth of 0 to 5 kilometers
p = 101.325+1025*9.81*d/1000; % pressure equivalent in kPa
t = [20:-10/500:10 10*ones(1,4500)]; % a very simplified thermocline model
c = c_water(t,p,32);
plot(c,-d)
ylabel('depth (m)')
xlabel('sound speed (m/s)')

Note: This calculator assumes a complete absence of bubbles. Even a small amount of gas in the water column may significantly affect sound speed. See Wood's model for the bulk sound speed of multiphase media.

Acknowledgements

Unit Converters, Compressibility Factor Calculator, Sound Pressure Level Calculator, and Raytrace inspired this file.

This file inspired Minnaert Bubble Models, Two Phase Medium Sound Speed Calculator, and Seawater Acoustic Absorption Calculator.

Required Products MATLAB
MATLAB release MATLAB 7.12 (R2011a)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (2)
27 Apr 2012 Chad Greene

Val: This is very helpful, thank you! I was not previously aware of the TEOS toolbox, but you're right--it is much more comprehensive and possibly more accurate than the file shared on this page.

25 Apr 2012 Val Schmidt

Chad,
You should know the 1983 UNESCO equations have been superseded by the "Thermodynamic Equation of State of Seawater" for which there is MATLAB toolbox. It can be found here:
http://www.teos-10.org/
Cheers!
-Val

Updates
30 Mar 2012

Any or all of the input values may now be arrays or constants.

11 Apr 2012

Clarified the validity of this function as it relates to bubbles in the water column.

25 Apr 2012

Acknowledged the "raytrace" function by Val Schmidt.

Contact us