SH4 has a very simple sonar model, basically on or off. You detect all ships within a certain range, no matter the conditions or your speed. You can detect ships on sonar even when they do not show up on radar, so at over 30 or 40,000 yds.
The "range" only seems to affect your sonar man who will not detect ships beyond a certain range.
In RL, it was possible for U.S.subs to detect ships on sonar when surfaced, but only when motionless or going very slow since the Diesel engine or water flow over the sonar heads would quickly drown out any contacts.
__________________
|