Why does Aqua-Sim NG use "dist / AcousticSpeed(depth1 - depth2)" to calculate the propagation delay?

39 views
Skip to first unread message

Harry Allen

unread,
Mar 5, 2023, 5:34:32 AM3/5/23
to ns-3-users
Hello everyone,

I think the right way to calculate the propagation delay is to use calculus, can anyone tell me why Aqua-Sim NG uses AcousticSpeed(depth1 - depth2) to estimate the average sound speed?
Thanks in advance

Tommaso Pecorella

unread,
Mar 5, 2023, 6:08:45 AM3/5/23
to ns-3-users
Hi,

it all depends on what `AcousticSpeed(depth1 - depth2)` does (Aqua-Sim NG is not part of the "core" ns-3, so I can't be sure). However, the problem is that acoustic waves travel differently than electromagnetic waves. Well, also this is not entirely true.

Ok, let's start from the beginning. Any wave is affected by the medium it does travel into. It's not like the fake Ether idea, mind. The point is that a change in the medium density can introduce delays, reflections, scattering, etc. Common (visible) phenomena range from the light in the air/water interface (if you ever did look at someone in the pool, their submerged part of the body looks... strange).

For EM we have the tropospheric scattering, and for light we uses this concept in optical fiber cables.

For water, the salinity plays a crucial role in waves propagation, and two layers water might have a completely different salinity, like rivers inside the water. Go to the beach and try yourself - you might not feel the difference in salt, but you might feel the temperature shifts. 
Hence, a way to make things more realistic in the simulation is to simulate also the presence of these effects.

Interesting enough, this might mean that two physically close nodes sitting at different depths can have a very bad channel compared to two nodes further apart but at the same depth ¯\_(ツ)_/¯
Message has been deleted

Harry Allen

unread,
Mar 5, 2023, 10:59:33 AM3/5/23
to ns-3-...@googlegroups.com
Hi,
Sorry, I wasn't clear enough before.   AcousticSpeed() is a function for calculating the speed of sound, with depth as the parameter. AcousticSpeed(depth1) means the sound speed at a depth of depth1. I want to know why Aqua-Sim NG uses "dist / AcousticSpeed(depth1 - depth2)" to calculate the propagation delay between two nodes, shouldn't we generally use calculus for this?
Thanks for your reply.

Tommaso Pecorella <tomm...@gmail.com> 于2023年3月5日周日 19:08写道:
--
Posting to this group should follow these guidelines https://www.nsnam.org/wiki/Ns-3-users-guidelines-for-posting
---
You received this message because you are subscribed to a topic in the Google Groups "ns-3-users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/ns-3-users/5JDN0U6i44I/unsubscribe.
To unsubscribe from this group and all its topics, send an email to ns-3-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ns-3-users/356e5714-0396-4d40-aff8-78093f6e7bc2n%40googlegroups.com.

Charles Pandian

unread,
Mar 5, 2023, 11:15:07 PM3/5/23
to ns-3-...@googlegroups.com
I think, you should raise an 'Issue" at aquasim-ng GitHub page ;  so that the original authors of aquasim-ng may explain why they have implemented it like that.



You received this message because you are subscribed to the Google Groups "ns-3-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ns-3-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ns-3-users/CAMYG7oRxEJHq6a8Lu4zohFkkFL43C0eTE31JFEKCQXrEkWDb4Q%40mail.gmail.com.
Reply all
Reply to author
Forward
0 new messages