Windy Community
    • Unread
    • Categories
    • Groups
    • Go to windy.com
    • Register
    • Login

    Negative wind strength values

    Your Feedback and Suggestions
    4
    20
    3.5k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      cyrilleSP | Premium
      last edited by

      See attached screenshot. Wind speed goes negative.

      f2bd1c2a-70b9-453e-a1b6-f8ff47b0e367-image.png

      idefix37I 1 Reply Last reply Reply Quote 0
      • F
        Ftjwinfs | Premium
        last edited by

        Funny! probably due to interpolation based on some high-order approach without limitation to the range of input values?

        1 Reply Last reply Reply Quote 0
        • idefix37I
          idefix37 Sailor Moderator @cyrilleSP
          last edited by idefix37

          @cyrilleSP
          @Ftjwinfs
          At same location in the mobile app.

          5B1604D6-37DB-4143-B590-0FCAE9A6D99A.jpeg

          But I never saw that for several years. It is definitively a bug.

          F 1 Reply Last reply Reply Quote 2
          • F
            Ftjwinfs @idefix37 | Premium
            last edited by

            @idefix37

            I saw something roughly similar on a sailing trip this year (windy v38). The region where I was, was at the boundary of the forecast region of the UKV model. At the edge of this forecast region I also saw some negative values.

            Such corrupt values should not appear, neither along the edge of the forecast region of a model nor (obviously) somewhere within.

            I am very sure, that there is a problem with interpolation. Windy gets raw model data from the forecast providers and needs to interpolate to user specified locations. As I wrote above, calculating a "bounded" interpolation on a discrete grid of values is not t trivial task. Bounded means, that all interpolated values should lie with the range of the "raw" values, that are used to interpolate values in between the original grid points of a model. An interpolation should only generate values, that lie within the range of original values that are used as input for the interpolation.

            Observing negative values pretty obviously indicates a problem, here corrupt values are easily detectable. It is quite possible, that other interpolated values can sometimes also be wrong by +/- a few knots. But if these interpolated values "appear" plausible, it is impossible for us users to identify this.

            @Windy: Are you aware of this issue? Do you use a bounded interpolation scheme to interpolate forecasts from the raw model data to specific locations of interest?

            The issue of bounded/unbounded interpolation is a standard problem in computational fluid dynamics / numerics. The principal problem is quite identical to interpolating raw weather model data within a given grid. If of interest I can provide literature on this.

            1 Reply Last reply Reply Quote 0
            • F
              Ftjwinfs | Premium
              last edited by

              Just googled a bit regarding "interpolation weather model data". Its a huge field with many publications out there.

              Thinking about it, depending on the interpolation scheme Windy decided to use, locally Windy can create "its own weather", meaning that the interpolation can have strong impact on the local data shown to us for specific locations. So due care is necessary for this interpolation process.

              idefix37I 1 Reply Last reply Reply Quote 0
              • idefix37I
                idefix37 Sailor Moderator @Ftjwinfs
                last edited by idefix37

                @Ftjwinfs
                It’s obvious that at forecast location the parameter value is interpolated between the data at the 4 nearest grid points provided by the model. For the wind direction and speed at grid points the data is provided as U and V vectors.
                But these values for Wind should never be negative. So with any type of interpolation, how 4 positive values could result in a negative local speed ??

                F 1 Reply Last reply Reply Quote 0
                • F
                  Ftjwinfs @idefix37 | Premium
                  last edited by Ftjwinfs

                  @idefix37

                  Do you have some insight here? Does Windy actually only use the four neighbors of a location?

                  I'm wondering what mathematical interpolation approach is used. A linear interpolation (bounded by definition) would be overdetermined by four points. A higher-order polynomial approach could generate over-/under-shoots (e.g., negative values)

                  idefix37I 1 Reply Last reply Reply Quote 0
                  • idefix37I
                    idefix37 Sailor Moderator @Ftjwinfs
                    last edited by idefix37

                    @Ftjwinfs said in Negative wind strength values:

                    A higher-order polynomial approach could generate over-/under-shoots (e.g., negative values)

                    Sorry my math knowledge is not good enough to understand what you mean.
                    I just know that the interpolation process to get a continuous weather map from discrete gridded values is based on bilinear interpolation:
                    https://en.m.wikipedia.org/wiki/Bilinear_interpolation
                    I assume this is the method used by Windy. This process is available in computer languages ​​such as python for example.

                    BTW it is used in numerical picture programs such as Photoshop to upgrade the resolution of a poor resolution image at 75dpi to a higher resolution of 300dpi for professional printing. But you don’t get a sharper picture, the added pixels are just “blended” from the original ones.

                    Same with the interpolation of weather grid data, the resulting data between the grid points are “blended” giving the resulting maps a smoothed look.

                    Again I can’t understand that positive values of wind speed at grid points can lead to negative values between the grid points.

                    F 1 Reply Last reply Reply Quote 0
                    • F
                      Ftjwinfs @idefix37 | Premium
                      last edited by

                      @idefix37
                      Good point with bilinear interpolation. But I'm not sure if Windy actually uses this approach. There are many interpolation schemes available.

                      Another scheme is for example bicubic interpolation: https://en.wikipedia.org/wiki/Bicubic_interpolation
                      Regarding a possible source for negative values see the last section of the wiki article on bicubic interpolation. There they talk about the application for computer graphics and "overshoots" that can appear. Essentially that is what I mean: Interpolated values that are outside the range of values, that the interpolation is based upon.

                      idefix37I 1 Reply Last reply Reply Quote 0
                      • idefix37I
                        idefix37 Sailor Moderator @Ftjwinfs
                        last edited by idefix37

                        @Ftjwinfs
                        Yes, your link is really interesting. So the interpolation is probably done from 16 grid points, not from 4.
                        In fact, I had heard about the use of bilinear interpolation from a weather professional on a forum. But that wasn't about Windy.
                        In the Wikipedia article, the 2 images showing the 2 types of interpolation show that the bicubic offers a more realistic and softened picture because the bilinear still shows the pattern of the grid.
                        And it seems that this type of interpolation can lead to negative values when the 4 nearest grid points are close to 0 but the surrounding values at grid points are much higher.

                        F 1 Reply Last reply Reply Quote 0
                        • F
                          Ftjwinfs @idefix37 | Premium
                          last edited by

                          @idefix37
                          Exactly!

                          In CFD the usual approach is to clip the interpolated value to the range of input values used for the interpolation. Since obviously wind velocity is always >=0, doing so would also avoid negative interpolated values.

                          Still, I do not say that this is THE approach. Its pretty "pragmatic". As said before, there are many, many approaches out there. Kriging to name only one more (very sophisticated) approach.

                          Whatever happens under the hood of Windy: There is a bug at the moment that leads to negative speeds. And I assume that only here we realize this since it leads to non-plausible (negative) values. If it is an interpolation bug as I assume, this can lead to over-/underestimated values that might appear plausible, but are actually not contained in the raw weather model data. Also, this can happen for any interpolated quantity, not only wind speed.

                          @Windy-team, what do you think about this?

                          idefix37I 1 Reply Last reply Reply Quote 0
                          • idefix37I
                            idefix37 Sailor Moderator @Ftjwinfs
                            last edited by idefix37

                            @Ftjwinfs said in Negative wind strength values:

                            If it is an interpolation bug as I assume, this can lead to over-/underestimated values that might appear plausible, but are actually not contained in the raw weather model data. Also, this can happen for any interpolated quantity, not only wind speed.

                            If we assume the interpolation is based on the bicubic interpolation, not sure there is general a bug
                            I refer to the sketches in your Wikipedia link and to show what I mean I’m just using the “cubic” sketch to simplify.

                            28FA4779-61C4-4E09-806C-AEF38932134D.jpeg

                            If a parameter is near 0 at the nearest grid points, it can lead to negative values. For temperature it is not an issue, but for wind it is. In this case it should be necessary to keep all negative interpolated values ​​equal to 0.

                            F C 2 Replies Last reply Reply Quote 0
                            • F
                              Ftjwinfs @idefix37 | Premium
                              last edited by

                              @idefix37

                              The overshoots are certainly not bugs in a mathematical sense. Mathematically they are to be expected and correct.

                              But I see the overshoots as "bug" in terms of plausibility of the interpolated wind velocity field. You are right, for temperature this is not necessarily an issue.
                              The crucial thing is, that it is not a good idea to apply "some" interpolation technique, but the interpolation technique needs to be chosen wisely, reflecting what the impact on the interpolated quantity might be.

                              To summarize what we observed:

                              • Negative values "within" the forecast region of a weather model
                              • Negative values at the boundary of the forecast region of a weather model

                              While I think, that the bespoken overshoots might be ok for e.g. the temperature within the forecast region, I'm afraid that it is difficult to predict what happens along the boundary of the forecast region.

                              (Still: I do not know what is state-of-the-art for interpolation of weather data and I also do not know, what Windy actually uses at the moment. The bicubic approach only visualises what I suspect as problem here. Probably there are smarter approaches than bicubic.)

                              1 Reply Last reply Reply Quote 0
                              • SutyS
                                Suty Administrator
                                last edited by

                                @cyrilleSP @Ftjwinfs @idefix37
                                Thank you for reporting this issue, I am not able to describe the actual logic behind this, however, it is already forwarded to colleagues for the fix.

                                Thank you for your patience.

                                1 Reply Last reply Reply Quote 0
                                • C
                                  cyrilleSP @idefix37 | Premium
                                  last edited by

                                  @idefix37 I think this is not quite how it works for wind where what is actually interpolated are the u and v values of wind speed (x and y coordinates if you will). Because they are coordinates it is perfectly fine that they become negative.
                                  Then the actual wind speed is computed at the end with TWS = SQRT(uu+vv).
                                  This can obviously never be negative.

                                  F idefix37I 2 Replies Last reply Reply Quote 0
                                  • F
                                    Ftjwinfs @cyrilleSP | Premium
                                    last edited by

                                    @cyrilleSP

                                    I guess you are right in principle, but this does not change the principal issue.

                                    And yes, what we were actually talking about (at least that's what I meant), is that the magnitude of the wind vector cannot be

                                    1 Reply Last reply Reply Quote 0
                                    • idefix37I
                                      idefix37 Sailor Moderator @cyrilleSP
                                      last edited by

                                      @cyrilleSP
                                      You say that the U and V velocity components are first interpolated, and then the speed and direction of wind at any location are calculated from the interpolated U/V values. May be you are right. But that does not explain why negative speed may occur at the end.

                                      F 1 Reply Last reply Reply Quote 1
                                      • F
                                        Ftjwinfs @idefix37 | Premium
                                        last edited by

                                        @idefix37

                                        I expect, that the weather models do not deliver u-,v-components of the wind vector, but instead deliver the magnitude (i.e. the wind speed) and the direction of the wind.

                                        Interpolating the magnitude then yields the problem of potentially negative wind speeds.

                                        But I think, that the Windy guys have opened a ticket and it makes not much sense to further speculate (although it is an interesting topic).

                                        idefix37I 1 Reply Last reply Reply Quote 0
                                        • idefix37I
                                          idefix37 Sailor Moderator @Ftjwinfs
                                          last edited by idefix37

                                          @Ftjwinfs
                                          They do it
                                          https://codes.ecmwf.int/grib/param-db/?id=131
                                          https://codes.ecmwf.int/grib/param-db/

                                          F 1 Reply Last reply Reply Quote 0
                                          • F
                                            Ftjwinfs @idefix37 | Premium
                                            last edited by

                                            @idefix37

                                            Oh, indeed!

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Windyty, S.E. - all rights reserved. Powered by excellent NodeBB
                                            NodeBB & contributors, OSM & contributors, HERE maps
                                            Terms of Use     Privacy Policy