Pomiary optyczne w atmosferze

advertisement
Wykład 15
Formaty Danych
Meteorologicznych
Krzysztof Markowicz
[email protected]
Formaty danych metrologicznych
Zapisywanie danych meteorologicznych obejmujących
dane: synoptyczne, klimatyczne, satelitarne czy też
wyniki obliczeń numerycznych prognoz pogody w
odpowiednim formacie stanowi zasadnicza kwestia w
sensie ich przesyłania, archiwizacji i budowy baz danych
z możliwością dostępu dla użytkowników.
Niestety nie stanieje żaden standardowy format, w
którym zapisywane byłby wyżej wspominane dane.
Dlatego też czytanie danych meteorologicznych wymaga
niejednokrotnie używania specjalnych programów, które
zależą od systemów operacyjnych i rodzajów używanych
komputerów.
Pliki tekstowe i binarne
Rozróżniamy dwa rodzaje plików: tekstowe i binarne. Nazwy są
trochę mylące, bo wszystkie pliki są binarne, czyli ,,zerojedynkowe''.
Jednak pliki tekstowe zajmują wśród nich wyróżnioną pozycję,
sposób ich odczytywania jest bowiem najbardziej
rozpowszechnionym Znajdują się w nich litery, zamienione na bity.
Zapisany w ten sposób plik można odczytać na dowolnym
komputerze, niezależnie od systemu operacyjnego itp. W dodatku
,,odczytać'' możemy tu rozumieć dosłownie, gdyż po zamianie bitów
na litery (czyli wyświetleniu pliku ASCII) pojawia się tekst, zwykle
zrozumiały dla człowieka.
Ogólnie, pliki binarne to wszystkie pliki nietekstowe. Mogą zawierać
obrazy, lub dowolne dane. Jeśli zapisano je w jednym z ogólnie
przyjętych standardów to zwykle daje się je odczytać na większości
komputerów, jeśli tylko zainstalowano na nich odpowiednie
programy. To jednak znacznie komplikuje i utrudnia zadanie
użytkownikom którzy zajmują się analiza tego typu danych
Hierarchical Data Format- HDF
HDF jest biblioteka oraz wielowymiarowym formatem
plików używanym do przesyłania danych w postaci
graficznej oraz numerycznej po miedzy komputerami.
Format HDF zawiera kilka modułów danych:
wielowymiarowe macierze, grafikę rastowa oraz tablice.
Każdy z nich zawiera zespół zmiennych, które mogą być
zapisywane, czytane oraz dodawane przez użytkownika
Format HDF jest samoopisujący się co oznacza, że
czytając plik z danymi nie musimy posiadać żadnej
informacji o strukturze pliku.
Pliki w formacie HDF mogą być wymieniane pomiędzy
większością komputerów i systemów operacyjnych. Z
czym nie radzi sobie większość formatów binarnych.
Format HDF używany jest najczęściej dla danych
satelitarnych
GRIB (GRIdded Binary)
To matematyczny format używany na potrzeby
meteorologii do archiwizowania danych historycznych
oraz numerycznych prognoz pogody
GRIP jest formatem standardowym zaakceptowanym
przez World Meteorological Organization jakos GRIB FM
92-IX, opisany w raporach WMO (Manual on Codes
No.306).
Obecnie funkcjonują dwie wersje GRIB-ow:
Edycja pierwsza GRIB-ow jest szeroko używana przez
centra meteorologiczne na potrzeby numerycznych
prognoz pogody
Nowej generacji (druga edycja) nie jest używana tak
powszechnie. Wyjątkiem jest Eumetcast, gdzie w
GRIBAch zapisuje się produkty związane z Meteosatem
drugiej generacji (Meteosat Second Generation)
NetCDF (Network Common Data Form
Cechy Formatu NetCDF
samo-opisujący się (plik netCDF zawiera informacje o
zawartych w nim danych).
niezależny od architektury komputera
bezpośredni dostęp do danych (dowolna część danych
może być efektywnie czytana bez wcześniejszego
czytania poprzedzający danych)
dane mogą być dopisywane do pliku w jednym wymiarze
bez przedefiniowania struktury pliku.
istnieje możliwość zmiany struktury pliku oraz
kopiowanie innych ustawień
równoczesna dostępność do pliku przez osobę
zapisującą dane jak i użytkowników czytając do
języki w jakich napisane zostały biblioteki NetCDF
C
C++
Fortran
Perl
Jave
niektóre programy służące do czytania plików
NetCDF:
IDL Interface
MATLAB
NCAR Graphics
FERRET
GrADS
HDF Interface
Struktura pliku NetCDF
a) header - część opisująca zmienne zawierająca informacje o:
wymiarach
atrybutach
zmiennych
b) sekcja danych - zawiera właściwe dane o:
ograniczonych wymiarach
nieograniczonym (jednym) wymiarze
c) typy zmiennych:
ncbyte 1 Byte
ncchar 1 Byte
ncshort 2 Byte
ncint 4 Byte
ncfloat 4 Byte
ncdouble 8 Byte
netcdf uwnd10m.mon.mean {
dimensions:
lon = 192 ;
lat = 94 ;
time = UNLIMITED ; // (694 currently)
variables:
float lat(lat) ;
lat:units = "degrees_north" ;
lat:actual_range = 88.542f -88.542f ;
lat:long_name = "Latitude" ;
float lon(lon) ;
lon:units = "degrees_east" ;
lon:long_name = "Longitude" ;
lon:actual_range = 0.f, 358.125f ;
double time(time) ;
time:units = "hours since 1-1-1 00:00:0.0" ;
time:long_name = "Time" ;
time:actual_range = 17067072., 17573304. ;
time:delta_t = "0000-01-00 00:00:00" ;
time:avg_period = "0017-00-00 00:00:00" ;
time:prev_avg_period = "0000-00-01 00:00:00" ;
float uwnd(time, lat, lon) ;
float uwnd(time, lat, lon) ;
uwnd:long_name = "Monthly Mean of U-Wind" ;
uwnd:valid_range = -102.2f, 102.2f ;
uwnd:actual_range = -13.76903f, 14.4571f ;
uwnd:units = "m/s" ;
uwnd:add_offset = 0.f ;
uwnd:scale_factor = 1.f ;
uwnd:missing_value = 32766s ;
uwnd:precision = 2s ;
uwnd:least_significant_digit = 1s ;
uwnd:GRIB_id = 11s ;
uwnd:var_desc = "u-wind" ;
uwnd:dataset = "CDC Derived NCEP Reanalysis Products\n",
"AC" ;
uwnd:level_desc = "10 m\n",
"P" ;
uwnd:statistic = "Mean\n",
"M" ;
uwnd:parent_stat = "Individual Obs\n",
"I" ;
// global attributes:
:Conventions = "COARDS" ;
:title = "monthly mean u wind" ;
:history = "renamevars Thu Feb 1 09:41:58 2001 from
uwnd10m.mon.mean.nc\n",
"Tue Jul 6 00:21:54 1999: ncrcat uwnd10m.mon.mean.nc
/Datasets/ncep.reanalysis.derived/surface_gauss/uwnd10m.mon.me
an.nc
/dm/dmwork/nmc.rean.ingest/combinedMMs/uwnd10m.mon.mean.n
c\n",
"created 97/10/04 by CAS (netCDF2.3)" ;
:description = "Data is from NMC initialized reanalysis\n",
"(4x/day). It consists of T62 variables interpolated to\n",
"pressure surfaces from model (sigma) surfaces." ;
:platform = "Model" ;
Sekcja danych
lon = 0, 1.875, 3.75, 5.625,…
lat = 88.542, 86.6531, 84.7532, 82.8508,…
time = 17067072, 17067816, 17068512, 17069256,…
uwnd= -2.035805, -2.166451, -2.145482, -2.277421, 2.800644,…
Kod SYNOP
Format SYNOP jest międzynarodowym formatem
danych meteorologicznych używanym do ich transmisji
w trybie rzeczywistym.
Używany jest od ponad 50 lat.
W kodzie SYNOP zawarte są
następujące grupy obserwacji
Grupa 000 – oznaczana numer stacji i lokalizacje
Grupa 111 – opisuje obserwacje nad lądem
Grupa 222 – opisuje pomiary powierzchni mórz i
oceanów
Grupa 333 – zawiera dane klimatologiczne
Struktura formatu SYNOP
IIiii lub IIIII YYGGi 99LLL QLLLL
iihVV Nddff 00fff 1sTTT 2sTTT 3PPPP 4PPPP 5appp
6RRRt 7wwWW 8NCCC 9GGgg
222Dv 0sTTT 1PPHH 2PPHH 3dddd 4PPHH 5PPHH
6IEER 70HHH 8aTTT
333 0.... 1sTTT 2sTTT 3Ejjj 4Esss 5jjjj jjjjj 6RRRt 7RRRR
8Nchh 9SSss
Inne formaty danych
SHIP
TEMP
METAR, TAF, TEMP
BOUY, AMDAR, AIREP.
Download