Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Speed of sound in the depths of the Mediterranean #53

Closed
tamasgal opened this issue Apr 9, 2024 · 2 comments
Closed

Speed of sound in the depths of the Mediterranean #53

tamasgal opened this issue Apr 9, 2024 · 2 comments
Assignees
Labels
question Further information is requested

Comments

@tamasgal
Copy link

tamasgal commented Apr 9, 2024

I am by no means an acoustics expert (let alone underwater) but we are currently trying to improve the simulation of the acoustics position system of an underwater neutrino telescope in the depths of the Mediterranean (3500m deep).

I wanted to plot the sound speed profile but I am a little bit confused about the models and some namings, so forgive my ignorance. If would be awesome if we could somehow simulate the propagation of acoustic pingers (short frequency sweeps) but first things first 😉

I thought that MunkSSP() would give me some reasonable SSP values but I am a bit confused confused.

Btw. for the salanity, we use data from other experiments but it seems I can only provide a fixed number in this package. It probably does not matter much, but again, I am no expert ;)

We are operating in a height-range of about 800m, so e.g. one detector is sitting at a depth of 3500m and the top is at 2700m.

Here, I defined a simple environment to plot the speed profile.

env = UnderwaterEnvironment(
         seasurface = Vacuum,
         seabed = FineSand,
         salinity = 38.72,
         ssp = MunkSSP(),
         bathymetry = ConstantDepth(3450.0)
       )
Screenshot 2024-04-09 at 17 29 05

Now I am wondering since the model we use shows a "big" discrepancy. According to NPL at depths of about 3450m, the velocity with those parameters is areound 1565 m/s, so about 20 m/s or so faster. I used their Calculator:

Screenshot 2024-04-09 at 17 30 26

You can see that there I can also pass the temperature, which has an effect on the same ballpark if I adjust it by a few degrees celsius, so maybe that's the reason? How do I make use of the temperature effect? I see that soundspeed() uses it but am struggling to bring things together: https://org-arl.github.io/UnderwaterAcoustics.jl/stable/uw_basic.html#UnderwaterAcoustics.soundspeed

Happy to hear some feedback from experts :)

@mchitre mchitre self-assigned this Apr 10, 2024
@mchitre mchitre added the question Further information is requested label Apr 10, 2024
@mchitre
Copy link
Member

mchitre commented Apr 10, 2024

The sound speed estimate from UnderwaterAcoustics.jl agrees with the estimate from NPL:

julia> using UnderwaterAcoustics
julia> soundspeed(14, 38, 3450)
1564.897339843575

The MunkSSP is a specific sound speed profile that is used in many benchmark underwater acoustics problems, but likely not the one you want to use for your simulations. The one you probably want is the SampledSSP, where you can specify sound speed as a function of depth. You can use soundspeed() to compute estimates of sound speed given temperature, salinity and depth, if you don't have measurements. Example:

env = UnderwaterEnvironment(
  seasurface = Vacuum,
  seabed = FineSand,
  ssp = SampledSSP(0:3450, soundspeed.(14, 38, 0:3450)),
  bathymetry = ConstantDepth(3450.0)
)

plot(ssp(env); maxdepth=3450)
image

The above example used a constant temperature of 14 deg C and constant salinity of 38 ppt, in line with the data you entered into the NPL calculator. If you have an idea of the the variability of temperature and/or salinity with depth, you can put that in by replacing the scalar values with vectors in the code above.

P.S. The documentation shows how to simulate a pinger.

@tamasgal
Copy link
Author

Ah, understood, makes perfect sense now, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants