Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

U-Boat Torpedo Firing Solution Problem

  1. Apr 25, 2005 #1
    Suppose, for a moment, that you are a German u-boat captain in the second world war. You've sighted a lone merchant ship, traveling in a constant direction with a constant speed. You bring your ship down to periscope depth to observe it...thankfully, it doesn't seem to have noticed you at all, and it continues merrily along its way, course and speed unchanged. You close the distance and identify it with a book you have on hand, so you know both the height from its waterline to the top of its mast, as well as the length from her stern to bow.

    You have an electro-mechanical computing device on board, just like every other sub, which, with a few pieces of data, will give you a firing solution on your target. You need to find and punch in these values:

    1. Range
    2. Angle on Bow
    3. Speed

    The machine will give you a firing solution based on your bearing to the target, as well as your own heading and speed. You don't have to worry about that data.

    The range is easy to calculate. Since we know the target's height above the waterline, we can use a special prism that displays two images of the ship simultaneously. You line up the waterline of one of the images with the highest point on the other image. Once you have that, you have an angle, and the distance is a pretty simple trigonometry equation. Also, if you had sonar or radar, you could ping the target with sound or radio waves to get the range.

    To get the speed, we'll first have to figure out the Angle on Bow, which is the particular question I'm posting here for. I can't quite figure out a good method to go about doing it. I suppose I should clarify just what AoB is. Here's a diagram:

    http://students.washington.edu/marusich/aob.jpg [Broken]

    (The large oval represents your target; the small oval represents your u-boat. Both ships are pointing with their bows upward...although keep in mind that you might find yourself on the other side of the ship, or in front of it, waiting for it to pass, in which case, the picture will look slightly different.)

    You could maneuver your u-boat until both the range and bearing to the target remain constant (so you're traveling parallel to him), and then subtract from 180 degrees the bearing from you to the target (0 to 180 degrees either starboard or port). But, I was trying to think of a better way to go about doing it that would involve neither the process of repeatedly taking bearing and range measurements until you were sure you were parallel and traveling at the same speed as the target, nor simply guessing and having that guess fall far from the actual value.

    As the picture I linked you to says, I thought it'd be reasonable to try calculating the AoB from the observed angle that the target takes up in the periscope. I mean, you know the range to the target, and you know the target's length. So there must be a way to relate the angle it takes up from stern to bow in your periscope to the Angle on Bow, right? It seems like it...

    Anyway, that's the computation that I've been trying to figure out recently. It was prompted by the game Silent Hunter III, in which you play as a u-boat captain, and in which you can actually try and solve your own firing solutions by collecting the same data that a u-boat captain would have had to do himself back in World War II. And lemme tell you, it ain't easy...

    Any comments would be appreciated! Gotta sink those tankers, after all. ;) Oh, and by the way, AoB is not measured from 0 to 360 degrees. It's measured from 0 to 180 degrees starboard, and from 0 to 180 degrees port. AoB is basically the bearing relative to the target, either in degrees starboard or degrees port, at which he would observe your u-boat. As much as I love and cherish radians and how they work, the captains of u-boats didn't use them... I actually think they used minutes and seconds of degrees, also, but degrees will serve my purposes here.
    Last edited by a moderator: May 2, 2017
  2. jcsd
  3. Apr 26, 2005 #2


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    The calculation is easiest in the limiting case when ls<<R (ls is the ship length and R is the range). So, if the range is large compared to the length of the target ship, you will end up with : R*sin(subtended angle) = ls*sin(AoB)

    A slightly better approximation would be : 2R*sin(half the subtended angle) = ls*sin(AoB)

    Note : You do not want to ping the target, or you'll give yourself away. You can find the range from the vertical subtended angle and the mast height (kind of like how you described it).
  4. Apr 26, 2005 #3
    Right, but I mean, it'd be nice to know just what the error in that approximation is with respect to what the angle actually is, and at what range it becomes significant (if at all).

    I chatted with a friend about it, and we came up with a theoretically solveable set of equations which aren't terribly menacing...but the problem is, I can't isolate the last unknown I need to get rid of. I don't have time to post up the information right now, but I'll do it sometime in a while. (I just spent about 9 hours working on math and chem...parametric equations, vectors and vector functions in three-space, as well as a lab report... And I certainly lived up to my forum name. It's now 9:00 AM. Time for breakfast. ;) )

    EDIT: In retrospect, I realize that I really put in a lot of superfluous information in my original post. When I post up what I've got so far on the exact solution to the problem, it'll be more like proper geometry and algebra than a colorful description...! Oh, and also...in the manual for Silent Hunter III, they said that the formula for the distance to your target based on the perceived angle in your periscope from the waterline to the topmost point was this:

    range = h/sin(a)

    where "a" is the perceived angle. But shouldn't it be tan(a) instead? I mean, at long range it'll give you practically the same thing, but still...it's wrong. The only reason I could see using sin(a) would be so you could approximate small angles reasonably well by simply substituting "a" in for "sin(a)", since for a small enough interval around 0, y = x is reasonably accurate for approximating y = sin(x). Still, the tangent function also goes through zero with slope of 1, too, so I don't really get why they put sin(a) in here, if they meant to on purpose.
    Last edited: Apr 26, 2005
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook