Tuesday, August 26, 2025

Symmedian point in a triangle

Some years ago we presented a procedure for finding the most likely position based on a plot of 3 lines of position (LOP).  We focused on finding that position when the random uncertainties in each of the LOPs was different, and we also added the crucial factor that there could be a fixed systematic error that applied to all triangles. We will return to that subject in the near future, with more details on the mathematics behind that solution.

In the meantime, we step back to the simpler case where the random uncertainties in all three of the lines are the same, and there is no systematic error to the set of sights—which could be cel nav sextant sights, or compass bearings, or any means of piloting that puts 3 LOPs on the chart. In this case, the most likely position is located at a very special point in the triangle called the symmedian point.

The concept of the symmedian was first reported in 1803, but  the name "symmedian" did not come about until 1883. It comes from an abbreviation of the original French name  "symétrique de la médiane," which was meant to convey "symmetrical counterpart of the median" — in that the symmedian line of a triangle is obtained by reflecting the median over the bisector. 

The discovery that this point reflects the minimum of the sum of the squares of the distances to the sides of a triangle, and thus could represent the most likely position from three LOPs, was presented in 1877 by another French mathematician, but the point had not been named at that time. 

Looking at the picture below, for any point P, there is a distance to each side of the triangle (dashed lines), and the argument is that the most likely position is where it is the closest it can be to all three sides, but since a distance can be negative outside of the triangle, the most likely position is the location where the sum of the squares of all the distances is minimum. 

One can solve for that location several ways, and always end up with the answer being the symmedian point K.





Here is an interactive online app that you can use to show that K is the minimum of the sums.

Least squares demo (to do it yourself)



Or watch this video on the process.

Navigating underway, we want to know how to find the point in any triangle of LOPs we run across. There are several ways to do this, maybe dozens! We go over here the basic method of reflecting the median over the bisector, which is all plotting, and then we combine a computation with plotting for a faster solution.


The traditional way reflecting the medians over the bisectors, but with some short cuts.


A hybrid approach of doing a couple computations first and then plot the results. 

Download the free online app that computes the distances needed.

To get it on your phone, open that link in your phone and then share it to your home screen.

I will be back with more details on this topic as we proceed with our 3-LOPs rejuvenation program.

The app computations are based on this discovery from a German article in 1827:


Here is a form for solving the above rule by calculator:









Here we apply the plotting to a real cel nav sight session.





Friday, June 6, 2025

Role of qtVlm in the Starpath Coastal Nav Course

Starpath School of Navigation offers several online courses that use qtVlm for electronic chart work. 

In our Electronic Chart Navigation Course we cover qtVlm from the basics on up to advanced techniques of route planning and route safety evaluation, along with an introduction to optimum sailboat routing based on a boat's polar performance diagram and a wind forecast. We also take advantage of of its sophisticated simulation mode.  

In our Marine Weather Course we emphasize weather analysis using its sophisticated features (load multiple GRIBS, overlay images and maps, view near-live ship reports and ASCAT winds, meteograms, and more), and work on optimum sailboat routing using full environmental forecasts (wind, seas, and currents.) We also carry out simulated races where students in various locations can meet and compete in sailboat races using the same boat polars and wind, each seeing the others as AIS targets.

Our Inland and Coastal Navigation Course (ASA105), on the other hand, has a more basic, but still crucial, introduction to qtVlm, where we focus on the equivalent to paper chart plotting. The course is oriented toward paper chart navigation, as mariners would carry out using back up NOAA custom paper charts (NCC), but at the same time providing an introduction to a truly powerful electronic nav app, qtVlm. Below is a sequence of video tutorials that are limited to those applications we cover in that course, where we show that all of the traditional paper chart plotting and piloting we are accustomed to with paper charts, can be carried out more quickly and more accurately using qtVlm.  A broader range of qtVlm support can be found at starpath.com/qtVlm/#support.

If you are taking our Inland and Coastal Navigation Course, this would be the sequence to follow:

1) Install qtVlm and the Training Mode  Mac (9:09); PC (12:19)

2) Mac v. PC, chart types, 18465tr, menus, units, zooming, saved views. (13:59)

3) Compass set up, using marks, landmark searching (15:47)

4) Measure range and bearing between points (10:29)

5) Update a DR position from logbook entries (15:44) — WorkBook 5-24

6) Compass bearing fix (10:31) — WorkBook 4-9

7) Range and bearing fix (8:01) — WorkBook  4-15

8) Fix from two ranges (4:58) — WorkBook 7-5

9) Running fix (11:03) — WorkBook 6-3

10) Danger bearings (10:11) — WorkBook  6-2

11) Read Tides and Currents (past, present, and future) (23:39) — WorkBook 8-12, 8-13, 8-14

12) Find current from two fixes and DR between them (8:43) — WorkBook 9-1

13) Find CMG and SMG in a known current (7:59) — WorkBook 9-11 (A)

14) Course to steer (CTS) for desired course in known current (12:14) — WorkBook 9-2 (E)

15) Running fix with current and course changes (12:15) — WorkBook 9-14 (Errata)

If you are not taking our online course (sorry to hear that!), but you still want to practice with these methods, then you can work through the exercises in our Navigation WorkBook 18465Tr. This is a large set of plotting exercises that can be worked with qtVlm. The Workbook's support page provides an RNC of the needed 18465Tr.


Wednesday, April 30, 2025

Shapefiles for qtVlm

A powerful function of qtVlm is its ability to show shapefiles in a very convenient manner. They can even be configured to include links to live data. One example is the UK shipping forecasts that we made for qtVlm some time ago, which we put here at the top of the list.  But we need a list because there are many of these floating around that can be very useful for navigation, and I am beginning to loose as many as I find. Just found a couple neat ones for the Gulf Stream, which motivated setting up this index.

(1) UK Shipping forecasts
Note this is a special type of shapefile in that Starpath has made code that lets you get live forecasts at each zone. Normally shapefiles load static data. If we want overlays that update automatically we need to have links to images or KML files.

(2) Add elevation contours to an ENC

(3) Add north and south walls to the Gulf Stream plus Add eddies with ID 

The above Navy data were typically updated every 36 hrs, but at present (4/30/25) it is nearly a month old. So we need to keep an eye on this.  There is a lot of chaos in ocean and weather data delivery these days. A sample below:

These shape files (two are loaded here) are to be overlaid onto either the RUCOOL SST images or one of the model forecasts for the current, or overlay onto the Navy Gulf Stream Analysis to annotate what they show. These eddies will coincide exactly with what are on the Analysis maps.  Note too that these shapefiles have to be downloaded  each time they are new, which is typically every 36 hr. They are identified by day of the year, ODate, ie in 2025, 90 = Mar 31.... however, as of May 4, 2025 we are seeing only erratic updating on Navy GS products, so their fate is uncertain.

(4) Up dated US Forecast zones





Thursday, February 27, 2025

Digital Soundings and Water Depths from OFS Forecasts

The Operational Forecast System (OFS) model forecasts tide height and tidal currents for 15 locations around the country — a true revolution in modern marine navigation.

What is probably less known, is that we can potentially get the actual water depths for any point on the chart from these same forecasts.  These values should match the charted soundings and depth contours—to the extent that they are right, and indeed the OFS model bathymetry data are right as well.

Plus, we have to assume that the logic presented here is valid for extracting this information. So a main reason for this post is to have a way to ask the experts if this is a sound process.

When we then add the tide heights to the digital depths we have the forecasted water depth at any point in space and time, which would be another revolution in marine navigation. The concept of digital water depth has been planned to be part of the future S-100 electronic navigational charts (ENC), but I would like to show here that this is essentially available now.

When one of the OFS forecasts in netCDF format is downloaded from the NOAA AWS server and then opened in Panoply, we see these parameters from the San Francisco Bay model (SFBOFS).


u_eastward and v_northward are the vector components of the tidal current.

zetatomllw is the tide height, which is always relative to (above) MLLW.

But we also have

h, which is the depth of the water below MSL and 

zeta, which is the depth of the water above MSL.

(The parameter called Depth is just the number of depth layers where data are provided, which is 21, from 0 to 100 m.)

The diagram below shows how these parameters are related.




There are stand alone programs such as CDO that lets users combine parameters in a netCDF file and make a new file with the new parameters. So we have experimented with the process.

It seems we can get the total water level by just adding h and zeta, since they are both relative to MSL, even though that is not a datum used for this purpose in charting.

To obtain digital values of the soundings at any point on the chart, we need the depth relative to MLLW, not the h values in the native files, which are relative to MSL. The actual charted depths will be deeper than h by the difference between MLLW and MSL. 

But we can compute that value, which varies across a chart, because it is just the difference between zetatomllw and zeta, as shown in the diagram. Since in the nautical chart world, MLLW is the sounding datum defining zero tide height, this difference is just the tide height equivalent to MSL, which is a datum that NOAA lists for each of their tidal stations.

It is presented at tidesandcurrents.noaa.gov on each tidal station's home page. Below is a sample from Redwood City, CA.


We can then make a plot of this difference in Panoply and check for what it thinks this value is at each of the locations where the value is known. That plot looks like this:


The places where MSL is known in this area are shown in this figure.


In Panoply you can interrogate a point in a plot to get location and value, which we did at each of these locations. Samples are below.


The results are summarized in this table:


The agreement is good over a fairly large range of values, so it appears that this is a valid way to extract the MSL depth from the OFS data that we can use to compute chart depth from h.

Below is an example of a custom GRIB file made in the manner described and viewed in qtVlm—a popular free nav app for Mac and PC. It shows digitized chart depths in the region of SFBOFS just outside of the Golden Gate Bridge.


This shows the depth in feet, with a color gradient background designed to match the standard depth contours on US ENC. We end up with a display that is similar to an ENC depth area object  (DEPARE), but now we have digital values of the soundings any place on the chart. The famous Four Fathom Bank (yellow patch) stands out very nicely.

It will take more testing to be sure this is a productive useful addition to our navigation. We can now display the digital soundings (chart depths) and the digital water depth, which is chart depth + tide height.

It is a promising development, and new use of the OFS forecasts, but it will take some work to test its value.