Facebook

Login

Support Sailonline

If you haven't already - join the SAILONLINE YACHT CLUB!

Please also consider making a donation - all amounts are greatly appreciated!

Board » General Discussion » DTF calculation

One of the most frequently asked questions on chat is how the distance to finish is calculated. I've tried to explain that, based on my understanding. If anyone knows differently, please add to the thread.

The first two plots here are sketches of a race similar to our SWR Leg 6. That is a good example of where the DTF is not entirely intuitive. The third plot is the mark to mark distance, which many think should be the DTF.

The distance to the next mark is determined by the closest distance to the line that goes out from the mark. This line (the mark 2 rounding line) is drawn at right angles to the line between marks 1 and 3, starting at mark 2 and continuing infinitely.

From that point, the next part of the DTF is the distance to the next mark. Then mark to mark to the finish.

So looking at the attached plots. Boat A sails close to the rhumbline, so its DTF is very similar to a mark to mark course.

Boat B, however, is sailing wide of the mark. From B1 we find the closest point on the rounding line (point X). From there to mark 3.

All the distances from the various positions are shown on the plots.

--- Last Edited by NZL Scotsman at 2012-05-01 10:11:12 ---
Attachments
If you have another look at the mark to mark system, the main problem with this is that when you approach the mark rounding line wide - then the DTF includes the distance to this mark until you pass it. Then it jumps to the next mark.

For example Boat B at B4 jumps from 43nm to 35nm as soon as the line is crossed.

The existing system has a similar problem, but it is much less severe. The problem only really occurs when you have a situation like B3, where the mark 3 rounding is very wide and therefore the mark 3 to 4 distance is much greater than compared to boat A. (35nm compared to 17nm).
Here is an alternative method of calculating DTF that might avoid some of the issues the current version creates - those rare occasions when the course shape results in longer DTF than is reasonable.

The attached plot will help with this description. Instead of waiting until the mark is rounded before the next mark is considered, DTF is determined by going to the next mark as soon as the extended bearing is crossed. If the boat crosses back, then simply revert to distance to the mark.

For example B1 has crossed the line, therefore DTF is distance to Mark 3 plus 3-4 distance (141+17=158nm). This compares to 166nm with current method.

Now compare B2 and B3. The boat has only moved about 15nm. DTF for B2 = 108nm, B3 = 98nm. Sounds reasonable?

The existing method B2 - 112, B3 - 111.

I think this method will be easy to compute, so it will not add to the server requirements. I cannot think of any disadvantages, but might be worth testing it with some more examples.
Attachments
My personal solution is to ignore ranking and sail, all will be sweet when we cross the line ;-)

Your method of calculating is slightly off. Example 1 shows best (at our current situation on VOR6) is how it is currently done, but rather than orthogonal to the line *1-*3, the 'scoring line' that extends from *2 to score roundings bisects the angle *1-*2-*3. OK, in your diagrams this does not make a lot of difference - but shift *2 along the direction of line *1-*3 and you can see it can... This is the BRG value on the NOR - Brg from ship to mark at the instant the server scores your rounding.

Just some advice from experience (regarding alternative methods) - you can draw 100 examples and it all works fine, but there is often some edge case where things go nuts...
Diagram 4 does appear a better method of computing DTF, but not of scoring roundings (B3 should not be considered to be on Leg3 for example, and could flip from Leg2 to 3 many times on its way to the finish? sim. B1) and we still need the line we currently have extending from the mark to score roundings (and to detect 'unwindings')
This would be where is creates more load to compute - 2 lines crossings per mark instead of 1 - actually 1 line crossing (score) and 1 'which side of the line are we' (dtf)
(not saying is a bad idea, just commenting because you did about server loads)

It's great that others are thinking on things like this though - when you are doing such examples though, try pulling out GE and drawing LONG courses, as these are really the only ones where the ranking ever becomes an issue for some - when a GC path significantly changes where on the line the scoring point is, compared to a Loxo (and also the scoring line itself, being GC) - small distances like in your diagrams don't show this effect. Also GC can change the edge cases a bit - remembering back to the ranking fiasco on Leg 5 while the scoring point was the south pole for pretty much every boat.

Of course, the other question is "Is this a good allocation of development resources?" - which always needs to be asked ;-)
I help develop the client interface for the best online ocean racing sim there is... __/)/)_/)__
Thank you NZL Scotsman

This is a very complicate way to measure the DTF.

I think its not that hard to implement a way to calculate the DTF based on a point to point measure:
- point to point for "mark to mark", and
- point to point for "boat to next mark".

Its a suggestion to SOL programers.

Fair winds

--- Last Edited by Armando Faria at 2012-05-04 02:33:41 ---
Boteco1 - Make Bore Impossible
It is point to point for future legs??
It is actually point to point for all legs, just for the first 2 the exact location of that point is not fixed...

It isnt really any more complicated than just computing boat to mark to mark etc, but it is more realistic. It is exceedingly difficult to write an algorithm that can most accurately handle all possible course configurations, sizes, and locations (for example, had the VOR Leg5 been translated N so that it crossed the Equator, but otherwise remained the same shape, we would not have had the ranking issues with the South Pole)

If we change it then boats that stay close to the rhumbline will most likely figure higher in the rankings than they are. Personally I would rather appear lower in ranking than I really am. There is no realistic way to have a consistently accurate ranking across the whole race - given the very different configs/sizes/locations of SOL races and the variety of possible routes.

Rank calculations and visualisations like you see on the AC45s and VOR inport races only work for pure Windward/Leeward courses, and even then as the wind becomes more shifty they become less accurate.

I don't really see there is much wrong with the current system
I help develop the client interface for the best online ocean racing sim there is... __/)/)_/)__

Please login to post a reply.

Races

Next Race: 00d 00h 00m


Current Races:

Magical Mediterranean 2026 - Benghazi to Korcula

We return to Antiquity’s Middle Sea for a seventh celebration of all things Mediterranean - fickle winds, history and olive oil. This time we will sail from ancient Benghazi, whence once grain shipped continuously to feed Rome’s urban masses, to the medieval Venetian thalassocracy’s port of Korcula, birthplace of Marco Polo; 700nm in classy Club Swan 50s!
Race #1978
INFO by brainaid.de
Club Swan 50 PARTICULARS
WX Updates:
0430 / 1030 / 1630 / 2230
Ranking: MED - SYC
Race starts: Jul 27th 15:00 Registration Open!

▶ Flash
GO TO RACE

Red Eye 2026 - Georgian Bay

Welcome to the sensational scenic Georgian Bay of northern Lake Huron, the first area of the Great Lakes to be visited by Europeans in 1615, so former SOLer A2R informed us when he designed this geometrically tortuous course of 317nm criss-cross through its island maze. Originally known as Lake Manitoulin, in 1822 the bay was renamed after King George IV after his succession to the throne. This time we’ll take the very flashy Fareast 31R, which hopefully should keep you wide awake!
Race #2051
INFOby brainaid.de
Fareast 31R PARTICULARS
WX Updates:
0430 / 1030 / 1630 / 2230
Ranking: RED - SYC
Race starts: Jul 26th 08:00 Registration Open!
▶ Flash
GO TO RACE

Tall Ships 2026 - Stavanger to Aalborg


Welcome to the fourth of four virtual Tall Ships Races in European waters which are concurrently being organized in-real-life by Sail Training International . This fourth race is from Stavanger in Norway into the Skaggerak to a finish off Denmark’s Aalborg and perhaps an Aquavit to toast the adventure afterwards – a final circa 250nm in Sailonline’s classic Clipper 240.
NOTE: Starts and Finishes in tall ships racing are always offshore to avoid conflict with shipping and shipping lanes; online and real-life may not match exactly.
Race #1995
INFO by brainaid.de
Clipper 240 PARTICULARS
WX Updates:
0430 / 1030 / 1630 / 2230
Ranking: TSI - SUPBUD - SYC
Race starts: Jul 25th 16:00 Registration Open!
▶ Flash
GO TO RACE

Chinook Salmon - Canada to Andreanovs


A year after spawning in the upper reaches of the rivers of British Columbia, Chinook Salmon develop the age-old urge, so familiar to SOLers, to go to sea, heading for different parts of the northern Pacific Ocean. This race catches up with a particular school with an instinctive memory for the Andreanov Islands far west on the Aleutian Islands chain, as they depart the Salian Sea between Vancouver Island and the San Juans. It’s 2200nm and we’re taking the 60ft Trimaran, in the hope we can keep up!
Race #2048
INFOby brainaid.de
60ft Trimaran PARTICULARS
WX Updates:
0430 / 1030 / 1630 / 2230
Ranking: MIG - SYC
Race starts: Jul 21st 11:00 Registration Open!
▶ Flash
GO TO RACE

Juventud TIMED Race 2026

Welcome to Isla de la Juventud (Isle of Youth), Cuba’s second largest island after mainland Cuba. Known as a haven for pirates, the island was the inspiration for novels “Treasure Island” and “Peter Pan”. The circa 120nm course runs clockwise around the island.
This is a TIMEDrace so you may RE-REGISTER HEREto try again after finishing a run. You will have two weeks to test your skill and decision making after the race opens.
Race #2049
INFOby brainaid.de
The boat for this race is the sporty Mini 6.5p Foil PARTICULARS
WX Updates:
0430 / 1030 / 1630 / 2230
Ranking:
TRQ3 - TRCH - SYC
RACE CLOSE: Saturday,
1 August at 23:00 UTC
Race starts: Jul 19th 12:00 Registration Open!
▶ Flash
GO TO RACE

Alaska to Easter Island 2026

Welcome to yet another all-new series. The initial leg of the RNW (Round the New World), Alaska to Easter Island, also part of our Ocean Championship. The first race of OCQ3 2026. This race will be sailed in our revised 'version 2' Imoca 60 Foil. Race #2042
INFO by brainaid.de
Imoca 60 Foil v2 PARTICULARS
WX Updates:
0430 / 1030 / 1630 / 2230
Ranking: OCQ3 - RNW - OCCH - SYC
RACE CLOSE: Saturday,
August 1 at 2300 UTC.
Race starts: Jul 06th 11:00 Registration Closed
▶ Flash
GO TO RACE

Go to race archive

SYC Ranking

  1. Sailonline Yacht Club Member KaSToR
  2. Sailonline Yacht Club Member WRmirekd
  3. Sailonline Yacht Club Member CriticalHippo
  4. Sailonline Yacht Club Member cdhinman
  5. Sailonline Yacht Club Member Panpyc
  6. Sailonline Yacht Club Member bonknhoot
  7. Sailonline Yacht Club Member rafa
  8. Sailonline Yacht Club Member ms0689
  9. Sailonline Yacht Club Member ita10267
  10. Sailonline Yacht Club Member sassy63

View full list

Series

Mobile Client

SYC members have the benefit of access to our mobile/lightweight web client!

The mobile client