Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

clarify: Wind #520

Open
Dirk-- opened this issue Oct 30, 2018 · 10 comments
Open

clarify: Wind #520

Dirk-- opened this issue Oct 30, 2018 · 10 comments

Comments

@Dirk--
Copy link

Dirk-- commented Oct 30, 2018

TWD:

  • True Wind Direction (relative to true north) environment.wind.directionTrue
  • True Wind Direction (relative to magnetic north) environment.wind.directionMagnetic

AWD:

  • Apparent Wind Direction (relative to true north) environment.wind.directionApparentTrue
  • Apparent Wind Direction (relative to magnetic north) environment.wind.directionApparentMagnetic

TWS:

  • True Wind Speed (relative to ground) environment.wind.speedOverGround
  • True Wind Speed (relative to water) environment.wind.speedOverWater
@joabakk
Copy link
Contributor

joabakk commented Oct 30, 2018

It might be better to fork and make a pull request, so we can see what you are proposing in code. Is it the descriptions you are lproposing to change?

@Dirk--
Copy link
Author

Dirk-- commented Oct 31, 2018

reworked things, here is my proposal:
environment.wind:

  • AW Apparent Wind (relative to vessel)
    • Apparent Wind Speed speedApparent
    • Apparent Wind Direction (relative to true north) directionTrue directionApparantTrue
    • Apparent Wind Direction (relative to magnetic north) directionMagnetic directionApparantMagnetic
    • Apparent Wind Angle (relative to HDG) angleApparent
  • TW True Wind (relative to surface of the water)
    • True Wind Speed speedTrue speedWater
    • True Wind Direction (relative to true north) add: directionWaterTrue
    • True Wind Direction (relative to magnetic north) add: directionWaterMagnetic
    • True Wind Angle (relative to HDG) angleTrueWater angleWater
  • GW Ground Wind (relative to ground) used in weather forecasts and reports
    • Ground Wind Speed speedOverGround
    • Ground Wind Direction (relative to true north) add: directionOverGroundTrue
    • Ground Wind Direction (relative to magnetic north) add: directionOverGroundMagnetic
    • Ground Wind Angle (relative to HDG) angleTrueGround angleOverGround

My (limited) knowledge is based upon
https://opencpn.org/wiki/dokuwiki/doku.php?id=opencpn:opencpn_user_manual:terminology

@joabakk
Copy link
Contributor

joabakk commented Oct 31, 2018

As this would be a breaking change, and any clients using the existing schema would have to be re-written, I would suggest refining the descriptions instead of the path names. Granted, the current path names can lead to confusion, but that can be resolved more easily by the descriptions. I would propose that you make a pull request with the additions and the description changes you propose

@sbender9
Copy link
Member

You're changes make sense and too bad you weren't here before we finalized 1.0.

But as @joabakk said, we can't make breaking changes in the 1.x spec. It could be considered for 2.0, but that's probably a long way off.

@tkurki
Copy link
Member

tkurki commented Nov 1, 2018

The different wind related figures seem to cause endless debates. Honing the descriptions would be the way to go here - no matter how you name them, they won't be crystal clear to everybody.

Plus the backwards compatibility already mentioned.

@quantenschaum
Copy link

quantenschaum commented Aug 22, 2024

The different wind related figures seem to cause endless debates.

Yes, of course, because the current naming it terrible and it's wrong in almost every software project I came cross.

  • The naming is inconsistent
  • angles and directions get mixed up
  • true wind (relative to water, always!) and ground wind get mixed up ❗ This is a big one, especially in tidal waters.
  • set and drift is ignored or assumed to be zero
  • the term "true" is ambiguous, it may refer to "true north" or "true wind"
  • magnetic and true directions get mixed up
  • magnetic deviation and variation get mixed up
  • calculations converting one to the other are almost always wrong, more on that here

[not all SignalK but the same/related issues: here, here, here, here, here, here]

Even expensive commercial products get it wrong.

So, this wind thing seems confusing, but actually it is very well defined. You just have to take 10 minutes to think about the definitions and use a proper naming scheme.

@Dirk--'s proposal #520 (comment) is very good to clean up that mess. 👍

  • It's a clear, logical and self explaining naming scheme. ✔️
  • It's very good to call the "true wind" "water wind" to emphasize that it is relative to water and it eliminates the ambiguity with "true north" ✔️
  • "apparent" is spelled with an E
  • I would use just "Ground" instead of "OverGround" like in "ground wind" to make it shorter
  • (Who wants magnetic directions? 🤷 )

As this would be a breaking change... any clients using the existing schema would have to be re-written

Well, the current scheme is broken so it requires a breaking change to fix it.
This would make people aware of this problem and it would finally clean up this mess.

@jrversteegh
Copy link

jrversteegh commented Aug 23, 2024

After some debate with a co-worker once, I made this drawing. I feel it's accurate, so maybe it's of use to someone, or maybe just creating more confusion ;) Either way, what it tries to get right is:

  • The relationship between vectors, angles and magnitudes
  • Velocities are vectors and "speeds" the magnitude of these vectors
  • Angles are relative to the boat and directions relative to the 'world'

It does not contain the concept of magnetic north... I suppose that's another topic of discussion. Considering it's 2024, I think it should no longer exist, except for converting a magnetic north measurement to true north, but that's my humble opinion.

@quantenschaum
Copy link

quantenschaum commented Aug 23, 2024

The drawing is good, maybe somewhat confusing due the may triangles, but all in all it's correct. I made a similar drawing and also gave the (vector) equations to perform the calculations.

What you call "drift" is usually called "leeway (angle)" in that scheme and the current (or tide) vector is composed of "set" (current direction) and "drift" (current speed), "wind" is usually called "ground wind" and "ground wind speed" and "speed" is "water speed" just to be clear.

The wind vectors are usually drawn reverse because the wind direction is the direction where the wind in coming from, where as velocity vectors and current vector point in the direction it is going into. This makes it more confusing, but this is the common definition.

It all boils down to the current triangle which is also used to work out a course to steer.
Now connect the wind vectors to the 3 vertices of that triangle and you get ground wind, true wind, apparent wind.

image
(source )

These drawings and some descriptions/definitions should end these discussions.

The concept of the magnetic directions does actually not belong here directly. All directions should always be relative to true north. The only place where you need a magnetic direction is when reading a magnetic compass (course or bearing) or working out a (magnetic) compass course to steer. All other calculations should be done "true" only. In the end you can convert back to a compass course using variation and deviation. This saves a lot of headache.

@jrversteegh
Copy link

@quantenschaum Thanks for the feedback!
"Drift" and "drift angle" are terms from commercial ship building, but "leeway" is indeed more accurate for sailing vessels. I'll change that. As well as adding "ground" to wind.
With respect to wind vectors: I deliberately didn't draw them inverse. That would be confusing indeed. I did however make them end at the origin rather than start, so the definition of the associated angles and directions still conforms to traditional "where the wind comes from" angles and directions.

@quantenschaum
Copy link

With respect to wind vectors: I deliberately didn't draw them inverse

That is smart. - Together with some explanatory text this is a good solution.

So, everyone participating in a discussion on this topic should study our drawings and explanations first.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants