This project is read-only.
1
Vote

Temperature in message, SPECI tag

description

Hi!
I'm building a program and I'm trying the library because it seems a perfect fit for what I have to do.
I encountered a problem though with these messages:
  • SPECI CYNA 140546Z AUTO 00000KT 5/8SM BR FEW001 M01/M01 A3020 RMK SLP229=
  • SPECI CYBC 140539Z AUTO 00000KT 1/2SM FG BKN003 01/01 A3017 RMK
    SLP217=
     
    The problem lies in the "temperature/dew point" section (as reported by the error message generated by CheckMetarString.
    My guess is that the slash used in the visibility section is interpreted by the class as the slash used in the temperature/dew point block.
     
    Another problem is that if in the message is a SPECI instead of a METAR the class doesn't accept it as a valid string. My workaround for this is to replace "SPECI" with "METAR" when I analyze the data I need, but is it possible to fix the problem anyway in the source code?

comments

Engin1980 wrote May 14, 2012 at 8:08 PM

Thank you for info, I'll check them both during week.

wrote May 14, 2012 at 8:08 PM

Engin1980 wrote May 15, 2012 at 5:00 PM

Hi, I just check the SPECI string, but it seems to work correctly for me. Can you please give here (or in the other "issue") the "string" which does not work, exactly?

Also please check you have the latest version. Old releases did not support SPECI prefixes.

Chrono251 wrote May 17, 2012 at 3:21 AM

Hi! It seems that I was actually using an old version (0.6 .NET from the Download page, now I downloaded v2.0 and those message work fine). Sorry, my mistake.

I tried it with some more messages and it seems to work fine (except with 2 messages, where there was a mistake made by the forecaster (eg. SPECI with temperature dewpoint like "00/").

Chrono251 wrote May 17, 2012 at 6:00 AM

I'm still having issues with SPECI messages. I'm not sure if this is something unusual, but in Canada the temperature is not always reported in SPECI messages (actually I think only automatic stations include the temperature/dew point block in SPECI messages).
This means that almost every time there is a SPECI, there is an Exception.

For the following message, for example,
"SPECI CYOD 170349Z 36007KT 12SM -SHRA SCT060 OVC070 RMK SC3AC5="
I get this:
Decoding failed at ->Whole METAR->Temperature->Temperature. Reason: >> Failed text is >RMK SC3AC5= <

Here is a bunch more SPECIs returning the same exception (the last three have temperature, but dew point is missing):
SPECI CYOD 170340Z 36007KT 12SM VCSH BKN070 OVC250 RMK AC7CI0=
SPECI CYOD 170309Z 36011KT 15SM -SHRA BKN100 OVC250 RMK AC7CI0=
SPECI CYMJ 170152Z 31007KT 15SM SCT250 BKN300 RMK CI2CI3 LAST OBS / NXT 171000 UTC=
METAR CWFD 170400Z AUTO ///// 1/4SM M09/ RMK ICG ALTM MISG=
METAR CWFD 170300Z AUTO ///// 1/4SM M09/ RMK ICG ALTM MISG=
METAR CWFD 170200Z AUTO 22011KT 1/4SM M08/ RMK ICG ALTM MISG=

Engin1980 wrote May 18, 2012 at 1:28 PM

Ok, I see now.

Canada style is a bit crazy in this :-) Specification expecially for Canada says, that "Groups not reported shall be omitted. Solidi (/) shall only be used for missing wind speed and/or direction.".

I'm really sorry, but implementation of this concept will need very deep changes in the code.

The only thing I can do for you (and is done) is that I just implemented derivation of decoder called

ENG.WMOCodes.Decoders.MetarDecoderWithAllOptional.

This decoder is trying to decode every block as optional and if there are no data, the whole block is skipped and default value(!!!!) is set. Therefore, you cannot recognize if item was decoded or not - it will just contain some default value (not null).
I will try to do something with this later.

I dont know if this does really help you, you will see. Check latest version for download in download section.

Chrono251 wrote May 25, 2012 at 6:54 AM

Great, thanks for the fix! This should work perfectly in my project.

The only question I have is if the problem is in the temperature/dewpoint section, say the dew point is not in the message but the temperature is there, will I still be able to decode the temperature?

wrote Feb 14, 2013 at 2:42 AM

Engin1980 wrote Sep 6, 2013 at 9:28 PM

Hi, sorry for late answer, now I realized that you are asking for the dew-point decoding. Is it still required, or you are no more interested? Please let me know.

wrote Nov 28 at 5:07 AM