SUBSIM Radio Room Forums



SUBSIM: The Web's #1 resource for all submarine & naval simulations since 1997

Go Back   SUBSIM Radio Room Forums > Current crop of subsims & naval games > Wolfpack
Forget password? Reset here

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Old 04-07-19, 11:24 PM   #5
ljqcn101
Sailor man
 
Join Date: Jan 2013
Location: Hong Kong
Posts: 50
Downloads: 78
Uploads: 3
Default

For anyone who is interested in the formulas or wants to implement in other apps:

First I set three unknown variables,
1. target distance at first bearing as "L1_distance"
2. target course as "crs"
3. target speed as "spd"

And I let ownship coordinate (m,n) initiate at (0,0). Y axis points to north (0 deg), and X axis points to east (90 deg). All angles start at Y axis and rotate in clockwise direction. So we can get:

1. target speed component on x axis "u" = spd * sin(crs)
2. target speed component on y axis "v" = spd * cos(crs)
3. target coordinate (a,b) at first bearing = L1_distance * sin(brg1), L1_distance * cos(brg1)
4. target coordinate (x,y) at each time = (a+u*t, b+v*t)
5. the vector pointing from ownship to target = (x-m, y-n)

By knowing the bearing of this vector, we can get the bearing vector equation:
(y-n)*sin(brg) = (x-m)*cos(brg)

Since we have three unknown variables to solve, in order to make sure the left hand side of the equation is really close to the right hand side, we can use the least square method:

Let formula f(t) = (y-n)*sin(brg) - (x-m)*cos(brg)
So we need to minimise the sum of squared f(t) for all bearing vectors. I used BFGS algorithm to solve this utilising C++ Dlib library.
ljqcn101 is offline   Reply With Quote
 

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -5. The time now is 08:59 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © 1995- 2025 Subsim®
"Subsim" is a registered trademark, all rights reserved.