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

    Sounding ground elevation never less than 1000hPa

    Bug Reports
    4
    13
    2.3k
    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.
    • J
      jancellor | Premium
      last edited by

      When showing the forecast sounding for a mountain region, the vertical axis begins at a pressure less than 1000hPa, corresponding to whatever the ground level pressure is. For a low-lying area, the vertical axis beings at 1000hPa, never higher, which is wrong. It appears that the calculated LCL and CCL are also wrong because of this.

      For example, get the sounding for Mont Blanc. The vertical axis starts at something like 750hPa / 2300m (the model elevation is 2300m even though Mont Blanc is 4809m -- this is not the problem). To get the correct LCL, position the cursor so that the dashed green thermal line and the grey line of constant mixing ratio intersect the red environmental lapse rate line and blue dew point line respectively. The height of the cursor is displayed on the vertical axis correctly and corresponds to the LCL shown below the graph.

      If you do the same for Monaco on the sea, the vertical axis starts at 1000hPa. The lowest altitude that can be displayed on the sounding is typically a few hundred metres (depends on the surface pressure). So even if there is fog/cloud on the ground/sea (dew point temperature and environment temperature is the same), the displayed LCL is a few hundred metres, instead of 0 (sea level). This is wrong.

      I imagine the fix is very simple. The vertical axis should be allowed to start above 1000hPa as well as below. It seems to be clamped to 1000hPa for some reason.

      @vicb am I right to mention you on this issue? Hope you can help or redirect. Sorry if that was inappropriate.

      vicbV 1 Reply Last reply Reply Quote 2
      • vicbV
        vicb Paraglider @jancellor | Premium
        last edited by vicb

        @jancellor I work on the "better sounding" plugin. But I know some parts of the builtin soundings are based on my code.

        Does the plugin show the same error?

        J 1 Reply Last reply Reply Quote 0
        • J
          jancellor @vicb | Premium
          last edited by

          @vicb Ah, my mistake, I thought you wrote the builtin sounding after writing the sounding plugin.

          I think the sounding plugin shows the same behaviour though. If I find a high pressure area on the sea, the sounding plugin does not start at 0m. But if I find a low pressure area less than 1000hPa on the sea, the sounding plugin does start at 0m. For a mountainous location, the sounding plugin starts at the model elevation (as reported by the builtin sounding).

          So it appears both the builtin sounding and sounding plugin have the same behaviour.

          J 1 Reply Last reply Reply Quote 0
          • J
            jancellor @jancellor | Premium
            last edited by

            Just a screenshot to help demonstrate the issue. The location is on the sea with pressure 1023hPa and humidity close to 100%. The sounding should start at 1023hPa but it starts at 1000hPa. The LCL should be close to 0m (sea fog) but it is 204m.

            windy-sounding-1000hpa-bug.png

            1 Reply Last reply Reply Quote 2
            • J
              jancellor | Premium
              last edited by

              @vicb I don't know Redux and can't follow through the code but I see something about pMax: 1000 in src/reducers/skewt.ts in the code for the plugin. Is this the right area of code? Do you think you might get a chance to look at this in the plugin? And/or do you know who to mention from the Windy team who might be able to make the corresponding change in the built-in sounding?

              The sounding is amazingly useful and it's great that this is available for us pilots so easily in Windy.

              vicbV 1 Reply Last reply Reply Quote 0
              • vicbV
                vicb Paraglider @jancellor | Premium
                last edited by

                @jancellor I'm reworking the plugin currently. Expect an updated version in a few days.
                yes this is the place

                J 1 Reply Last reply Reply Quote 1
                • J
                  jancellor @vicb | Premium
                  last edited by

                  @vicb fantastic!

                  vicbV 1 Reply Last reply Reply Quote 0
                  • vicbV
                    vicb Paraglider @jancellor | Premium
                    last edited by

                    @jancellor

                    I have been looking into this while updating my plugin and it's actually not trivial.

                    Weather models output is a list of parameters at different pressure levels. For example temp-1000h, temp-900h, ..., temp-100h. The only value below 1000hPa is temp-surface.

                    I'm sure if temp-surface can be used for the soundings. Soundings are about the air mass and I think the surface level is well the surface and not the air above the surface. Also if I remember correctly there were some discussions to remove that level.

                    Maybe @Suty can help connect with someone at windy that would be more knowledgeable than me on that topic.

                    For now I'll sticks with 1000hPa for the sounding plugin and I'll update if we get more info.

                    J N 2 Replies Last reply Reply Quote 1
                    • J
                      jancellor @vicb | Premium
                      last edited by

                      @vicb thanks for investigating.

                      I hope the temp-surface data can be used. If not, the green thermal line and cloud prediction would have to be removed from the plugin completely, right? Also I think the built-in sounding would have to remove the LCL and CCL.

                      You suggest the surface data may be the soil and not the air above the surface, but I don't think this is true. Regardless, if it is valid, is there any data missing or is it still possible to calculate the points on the diagram? The plugin just shows heights; are these heights just calculated from temp-1000h, temp-900h by assuming ISA? Can the model elevation be used for the surface data? (The builtin sounding shows the model elevation, but perhaps the plugin doesn't have access to this?)

                      I've taken some screenshots of 4 other weather websites for how they do soundings:
                      https://drive.google.com/drive/folders/1176-cdivdmWwW4vaguJmydc5Uir2Cs0H

                      They include:

                      • meteoblue (https://www.meteoblue.com/en/weather/aviation/stuve)
                      • weather.gov (https://www.weather.gov/zse/ModelSounding)
                      • ECMWF (https://charts.ecmwf.int/products/opencharts_vertical-profile-meteogram)
                      • Weather Online (https://tinyurl.com/2f35xkae)

                      The Meteoblue temperature and dew point lines always starts at 1000hPa, and it also shows a horizontal surface pressure line. All the other examples start at the surface pressure, whatever that is for the particular location and time.

                      vicbV 1 Reply Last reply Reply Quote 1
                      • vicbV
                        vicb Paraglider @jancellor | Premium
                        last edited by

                        The plugin just shows heights; are these heights just calculated from temp-1000h, temp-900h

                        They are calculated using the gh-1000h, ... (geopotential height)

                        Regardless, if it is valid, is there any data missing or is it still possible to calculate the points on the diagram?

                        Yes, it's possible to compute those values and it's called a weather model ;)

                        Can the model elevation be used for the surface data? (The builtin sounding shows the model elevation, but perhaps the plugin doesn't have access to this?)

                        The plugin has access to the same data. But again I don't think surface can be used (to be verified)

                        The Meteoblue temperature and dew point lines always starts at 1000hPa, and it also shows a horizontal surface pressure line. All the other examples start at the surface pressure, whatever that is for the particular location and time.

                        I think some models provide a temp-100m, ... which could be helpful. This is not part of the data provided by windy.

                        Maybe @marekd knows more?

                        Thanks for the screenshots, the ensemble graph on ECMWF gave me the idea to overlay multiple models on the sounding.

                        1 Reply Last reply Reply Quote 0
                        • vicbV vicb referenced this topic on
                        • N
                          nrbray @vicb
                          last edited by

                          May I ask @Suty if temp-surface should be used (to correct errors in the Sounding) as the surface airmass for LCL and CCL calculations?

                          Picking up on this, perhaps it is the place to ask again following as the issue was recently noted again here: https://community.windy.com/topic/37578

                          @vicb said in Sounding ground elevation never less than 1000hPa:

                          Maybe @Suty can help connect with someone at windy that would be more knowledgeable than me on that topic.

                          For now I'll sticks with 1000hPa for the sounding plugin and I'll update if we get more info.

                          @tomA27 said in Sounding forecast shows incorrect data.:

                          Whenever the surface pressure is greater than 1000hPa the sounding forecast shows incorrect data.
                          Please can this be fixed?

                          T 1 Reply Last reply Reply Quote 1
                          • T
                            tomA27 @nrbray | Premium
                            last edited by

                            @nrbray @Suty temp-surface and dewpoint-surface are already being used. But they should be applied at the surface level rather than at the 1000hPa level. I.e. like this...

                                const surfaceT: number = md['temp-surface'][t];
                                const surfaceTdew: number = md['dewpoint-surface'][t];
                            const surfaceGh: number = meteogramForecast.data.header.modelElevation;	// surface geopotential height is provided in the header rather than the data
                            

                            rather than the equivalent of this...
                            const surfaceT: number = md['temp-surface'][t];
                            const surfaceTdew: number = md['dewpoint-surface'][t];
                            const surfaceGh: number = = md['gh-1000h'][t];

                            (taken from code I wrote to reproduce the numbers)

                            I suspect that this would be rather a straightforward fix.

                            T 1 Reply Last reply Reply Quote 1
                            • T
                              tomA27 @tomA27 | Premium
                              last edited by

                              Hi @vicb

                              I would be hugely grateful if you could take a look at and comment on my previous post. This really does seem like quite a simple error with a simple fix. However, it does have consequences for anyone interested in thermal soaring from lowland locations in areas of high pressure. (i.e. most sailplane/hanglider/paraglider pilots most of the time???).

                              It also has serious consequences for a new plug-in (SoarCalc) which I wish to publish which calculates the RASP soaring parameters. It is natural to show "SoarCalc" alongside the "Sounding forecast" and the data shown overlaps the most simple case being LCL. "SoarCalc" will show this correctly (basically just)...

                              model elevation + 125 * (surfaceTemp - surfaceDewPoint)

                              whereas "Sounding forecast" is basically showing

                              1000hPa elevation + 125 * (surfaceTemp - surfaceDewPoint)

                              which is simply not correct. So, yes, you should be using the "-surface" level data (which is the same as obtained with getPointForecastData()) in conjunction with the model elevation from the header (gh-surface is always null).

                              My problem is that people are likely to assume that "Sounding forecast" is correct and "SoarCalc" is incorrect and will therefore junk the new plug-in with little further consideration. I am therefore very hesitant to publish my plug-in.

                              1 Reply Last reply Reply Quote 1
                              • 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