Metody Przetwarzania Danych Meteorologicznych
Wykład 1
Krzysztof Markowicz
Instytut Geofizyki UW
kmark@igf.fuw.edu.pl
Informacje ogólne
Wykład: wtorek godzina 9:15-11:00, sala 104a Ćwiczenia: poniedziałek godzina 14:15-16:00, sala 406.
Forma zaliczenia:
Zaliczenie ćwiczeń
Egzamin ustny
Literatura
• Roger Daley, „Atmospheric Data Analysysis”.
• Notatki do wykładu z lat ubiegłych:
http://www.igf.fuw.edu.pl/wyklady/pdm_notatki.pdf Internet:
• Analiza obiektywna i asymilacja danych http://twister.ou.edu/OBAN2006/
• Kurs asymilacji danych ECMWF
http://www.ecmwf.int/newsevents/training/rcourse_notes/
DATA_ASSIMILATION/ASSIM_CONCEPTS/Assim_concepts.html
• Analiza obiektywna
http://www.comet.ucar.edu/class/faculty/Jun07_1999/html/obj_
analysis_may99/index.htm
• Materiały do ćwiczeń w matlabie i nie tylko http://w3eos.whoi.edu/12.747/lectures.html
Program wykładu
• Wprowadzenie do wykładu, proces przetwarzania danych.
• Dane meteorologiczne
– typy danych (dane standardowe i niestandardowe) – formaty danych meteorologicznych
– wykrywanie błędów i weryfikacja danych
• Analiza danych meteorologicznych
– pojęcie skali
– interpolacja danych, przegląd metod interpolacyjnych
• Asymilacja danych
– wprowadzenie do asymilacji danych – asymilacja 3D oraz 4D
– filtr Kalmana
– przykłady asymilacji danych satelitarnych, danych synoptycznych
• Re-analiza danych klimatologicznych
– standaryzacja długich serii obserwacyjnych – re-analiza NCEP/NCAR
• Filtracja
– matematyczny opis procesu filtracji
– filtracja w czasie pomiaru wielkości fizycznych – typy filtracji
• Statystyczna analiza danych
– przestrzeń zdarzeń losowych, zmienna losowa jedno i wielowymiarowa, prawo wielkich liczb
– gęstość prawdopodobieństwa, dystrybuanta, histogram – poziom istotności, przedział ufności, weryfikacja hipotez – momenty statystyczne, macierz kowariancji i korelacji – funkcje od zmiennych losowych
• Regresja
– liniowa i nieliniowa
– metoda najmniejszych kwadratów
6
• Elementy teorii procesów stochastycznych
– definicje
– funkcja autokorelacyjna
– przedstawienie kanoniczne – funkcje strukturalne
– procesy losowe, proces stacjonarny i jednorodny – procesy niestacjonarne
– rozwinięcie fourierowskie i analiza fourierowska procesu stacjonarnego
– twierdzenie ergodyczne
• Empiryczne Funkcje Ortogonalne EOF
– przykłady EOF-ów
• Analiza falkowa i fraktalna
– falki
– przykłady i konstrukcja falek – wymiar fraktalny Hausdorffa – wymiar korelacyjny i pudełkowy
• Sieci Neuronowe
– przykłady prostych układów samouczących
Zagadnienia na ćwiczenia
• Wstęp do programowania w matlabie/IDLu
• Czytanie różnych formatów danych
meteorologicznych i ich wizualizacja w matlabie
• Wykrywanie i korekcja błędów w danych
• Interpolacja, ekstrapolacja
• Regresja danych
• Przetwarzanie danych na przykładzie danych satelitarnych, sondażowych i innych
• Metody statystyczne, analiza statystyczna danych
• Analiza Fouriera, Falkowa
• Rozkład kanoniczny na funkcje ortogonalne EOF-y ,
przykłady
8
Główne problemy i zadania związane z przetwarzaniem danych meteorologicznych
• Asymilacja danych meteorologicznych do modeli
numerycznych (dane pochodzą z różnych przyrządów a pomiary nie raz wykonywane są w różnych momentach czasu).
• Asymilacja danych satelitarnych. Dane o silnie
niejednorodnym rozkładzie np. pomiary SST wykonywane są gdy brak chmur na danym obszarze.
• Wizualizacja danych obserwacyjnych
• Ujednolicanie pól meteorologicznych pochodzących z różnych typów obserwacji.
• Analizy danych pod kątem statystycznym
• Rekonstrukcja niejednolitych ciągów czasowych
• Problemy wynikające ze zmian przyrządów używanych do obserwacjach klimatycznych – ujednolicanie serii
pomiarowych (re-analiza meteorologiczna). Problem ten dotyczy zarówno pomiarów typu in-situ jak i
teledetekcyjnych.
• Dane – wszystkie informacje w formie zakodowanej (binarnie, szesnastkowo, kreskowo itd.)
• Informacja - oznacza pewną własność fizyczną lub strukturalną obiektów, która może być przesyłana.
• Dzięki czemu pozwala ona rozróżniać obiekty
Jednostką podstawowa informacji jest bit informacji
• Do przekazywania informacji stosuje się kodowanie.
Najprostszym kodem jest kod binarny i wszystkie inne można na niego przetłumaczyć
• Archiwizowanie i przenoszenie informacji jest często
kodowane aby ograniczyć koszty tego procesu.
Proces przetwarzania danych
• Przetwarzanie danych – to proces w czasie, którego dane
konwertowane są z jednego formatu do drugiego. Często spotyka się inną definicje mówiącą, że jest to proces komputerowy pomiędzy
danymi a informacją.
• Proces ten często dobywa się automatycznie na pośrednictwem komputerów lub mikrokomputerów
• W czasie przetwarzania danych nie powstają nowe dane, mogą być za to tracone.
• W czasie procesu przetwarzania danych możemy wyróżnić:
• Selekcję (rezygnacja z części danych wejściowych)
• Uogólnianie (rezygnacja z niepotrzebnych rozróżnień np. przez uśrednianie)
• Zmianę kodu (np. przejście z danych liczbowych na format graficzny),
• Zmianę nośnika i archiwizację
• Transmisję
• Filtrację (wydobywanie z wyjściowego zbioru danych istotnie potrzebnych z punktu widzenia prowadzącego proces).
To proces w czasie którego dokonujemy redukcji danych wyjściowych tak, aby zbiór danych końcowych zwierał
jedynie informacje rzeczywiście niezbędne użytkownikowi w formie wygodnej do ich wykorzystania.
Wynika to z faktu, iż mamy do dyspozycji ogromne ilości danych a człowiek, który jest najczęściej końcowym
użytkownikiem danych nie jest w stanie operować więcej niż kilkoma informacjami naraz.
Elementami procesu analizy są
• detekcja i korekcja błędów
• synteza (redukcja danych do postaci przyswajalnej przez użytkownika)
• edycja (wybór informacji oraz formatu)
• wizualizację (graficzna forma edycji zależna od
przeznaczania np. mapy 3D, przekroje, histogramy itd.)
Analiza
Redundancja informacji
• W teorii informacji redundancja to ilość informacji przekraczająca wymagane do rozwiązania problemu minimum.
• Bardziej formalnie – ilość bitów w wiadomości minus ilość bitów faktycznej informacji.
• Celowa redundancja danych jest stosowana w celu ułatwienia
odtworzenia danych po ich częściowej utracie czy uszkodzeniu lub też do wykrycia takiego uszkodzenia (CRC, suma kontrolna).
• Redundancja ma zastosowanie głównie w przypadku bardzo ważnych, strategicznych dla danego systemu informacji.
Szczególnie często mamy do czynienia z redundancją danych w systemach telekomunikacyjnych, gdzie niezawodność przesyłania odgrywa kluczową rolę podczas transmisji.
• Usuwanie nieprzydatnej redundancji to kompresja danych.
Paradoksalnie, wiele programów kompresujących może dodawać niewielkie informacje nadmiarowe, pozwalające wykryć
uszkodzenie skompresowanych danych (sumy kontrolne).
Suma kontrolna
• to liczba uzyskana w wyniku sumowania lub wykonania innych operacji matematycznych na przesyłanych danych, przesłana razem z danymi i służąca do sprawdzania poprawności przetwarzanych danych.
• komputer wysyłający dane liczy sumę kontrolną i dołącza ją do pakietu danych. Komputer odbierający dane liczy również sumę kontrolną z odebranych danych i sprawdza, czy zgadza się suma obliczona przez niego z sumą odebraną z pakietem danych. Jeśli nie, to znaczy, że dane uległy przekłamaniu.
• odmianą sumy kontrolnej jest:
• CRC
• cyfra kontrolna w numerach PESEL (11 cyfra), NIP, numerach kont bankowych,
• bit parzystości stosowany przy transmisji szeregowej łączem RS-232, lub bit parzystości w taśmie perforowanej. W tym przypadku liczba jest liczbą 1-bitową,
• suma bitowa, różnica bitowa stosowana w wielu protokołach transmisji danych.
Przykład – bit parzystości
• Jest to bit dodawany do każdego bajtu informacji w celu
sprawdzenia poprawności pakietu, w ten sposób, by liczba jedynek w bajcie i bicie parzystości była zawsze parzysta.
• Bit parzystości otrzymuje wartość 0 lub 1 tworząc sumę wszystkich bitów tak aby łączna wartość równała się 0 - była zawsze parzysta.
• Pakiet bajtowy 10111101 jest parzysty (6 bitów '1'), więc bit parzystości wynosi 0 dając 9 bitowe wyrażenie kodowe 101111010.
• Pakiet bajtowy 01110011 jest nieparzysty (ma 5 bitów '1'), więc bit parzystości wynosi 1, dając 9 bitowy wyraz kodowy 011100111.
• Pakiet bajtowy 00000000 jest parzysty (ponieważ zero jest
parzyste), więc bit parzystości wynosi 0, dając w rezultacie 9 bitowe wyrażenie kodowe 000000000.
• Bit parzystości umożliwia wykrywanie tylko pojedynczych
przekłamań. Toteż obecnie zaprzestaje się jego używania na rzecz rozbudowanych i pewniejszych protokołów nadzoru poprawności transmitowanych danych.
• Odwrotnością bitu parzystości jest bit nieparzystości.
CRC (Cyclic Redundancy Check) – cykliczny kod nadmiarowy)
• to matematyczna suma kontrolna wykorzystywana do wykrywania uszkodzonych danych binarnych.
• Kod CRC zwykle dodawany jest do ramki lub pakietu w celu późniejszej weryfikacji integralności danych. Jest to algorytm
wykrywania błędów bardziej niezawodny niż suma kontrolna, umożliwia również określenie, czy błąd zdarzył się podczas transmisji.
• Wartość CRC określana jest w sposób bardziej rygorystyczny niż
wartość sumy kontrolnej - otrzymuje się ją w wyniku podziału wartości otrzymanej w wyniku odczytania ciągu binarnego przez wcześniej
określoną liczbę binarną.
• CRC jest resztą z binarnego dzielenia ciągu danych przez relatywnie krótki dzielnik, zwany generatorem lub wielomianem CRC. W praktyce stosuje się najczęściej wielomiany o długości 17 lub 33 bitów, dające odpowiednio wyniki 16 (CRC-16) i 32 bitów (CRC-32).
• Metoda ta jest szeroko wykorzystywana do wykrywania błędów przypadkowych, ale nie nadaje się do ochrony integralności w zastosowaniach kryptograficznych. CRC jest relatywnie łatwe do
sfałszowania, tj. jest możliwe takie poprawienie ciągu bitów by dawał on
Dane meteorologiczne
• Pochodzą z obserwacji meteorologicznych szczegółowo omawianych na wykładzie meteorologia doświadczalna.
• Dzielimy je na standardowe (zbierane wg ściśle
określonej procedury za pomocą standaryzowanych
przez WMO przyrządów) i niestandardowe (obejmujące wyniki z procesów badawczych).
• Dane meteorologiczne dzielimy na:
Synoptyczne, klimatologiczne i inne.
• Dane synoptyczne wykonywane są w tych samych porach czasu UTC (pomiary synchroniczne)
• Dane klimatologiczne wykonywane są w względem czasu lokalnego ( pomiary niesynchroniczne).
• Pomiary satelitarne są z reguły niesynchroniczne poza
pomiarami z platform geostacjionarnych.
Weryfikacja Danych
• Jednym z głównych zadań weryfikacji danych jest wykrywanie błędów
• błędy pojawiają się w czasie obserwacji
meteorologicznych i można je podzielić na
• błędy aparatury pomiarowej
• błędy powstałe w czasie rejestracji (zapisu)
• błędy związane z niereprezentatywnością pomiarów
• błędy transmisji danych.
Cechy informacji meteorologicznych
• wykazują zależności fizyczne pomiędzy różnymi wielkościami np. wiatr geostroficzny, czy równanie hydrostatyki wprowadzają związki na podstawowe wielkości mierzone w czasie obserwacji
meteorologicznych.
• mieszczą się w pewnych zakresach zmienności
(widełkach)
Wykrywanie błędów
• Jeżeli błędy są względnie nieduże, stwierdzenie ich istnienia i wielkości może być niemożliwe i trzeba je traktować jako nieusuwalną niepewność, możliwą do oszacowania co najwyżej w sensie statystycznym.
• Natomiast błędy większe dają się często wykryć i w pewnym stopniu skorygować.
• Do wykrywania takich błędów wykorzystuje się redundancję w zapisie danych lub redundancję zawartą we wcześniejszej wiedzy na temat ich własności, lub w metadanych.
• W szczególności wykrycie błędu umożliwiają często:
• znajomość zakresu zmienności parametru (wartość odbiegająca
znacznie od oczekiwanej a zwłaszcza wykraczająca poza znany zakres zmienności może być błędna);
• znajomość skali zmienności pola lub przebiegu czasowego
pozwalająca na wykrycie błędów przez stwierdzenie nierealnych wartości pierwszych lub drugich pochodnych.;
• znajomość zależności pomiędzy różnymi wielkościami – można np.
szukać rozbieżności pomiędzy zmierzonym polem ciśnienia i polem oczekiwanym na podstawie pomiarów temperatury itp. oraz równania hydrostatyki, która to rozbieżność świadczyć może błędzie.
• na podstawy pewnej wiedzy a priori o własnościach analizowanych pól
• na podstawie wiedzy statystycznej.
• W szczególności, jeśli przebieg czasowy pewnego parametru w danym punkcie obserwacyjnym
zaczyna zachowywać się inaczej niż w punktach sąsiednich, podczas gdy wcześniej wykazywał
podobieństwo, może to wynikać z zerwania
jednorodności danych, np. zmiany przyrządów lub zmiany warunków fizjograficznych w otoczeniu tego punktu.
• Nietypowe zachowanie analizowanego pola lub przebiegu czasowego nie zawsze musi oznaczać
błąd w danych (choć najczęściej oznacza). Może też być sygnałem wystąpienia jakiegoś nieznanego lub w danych okolicznościach nieoczekiwanego zjawiska.
Dlatego automatyzacja korygowania takich błędów może być ryzykowna (vide historia „dziury
ozonowej”) choć często bywa konieczna ze
względów operacyjnych.
Metody korekcji błędów
• Najprostszą metodą korekcji jest odrzucenie danej uznanej za błędną.
Może to jednak czasem spowodować odrzucenie informacji nietypowej ale prawdziwej. Ponadto w wielu przypadkach dane są używane w
operacjach, które nie dopuszczają pustych pozycji (np. obliczenia na
sieciach punktów o regularnych odstępach pomiędzy węzłami). W takim przypadku błędną wartość należy zastąpić inną, policzoną na podstawie posiadanych danych redundantnych. Może to być:
• najbardziej prawdopodobna wartość klimatologiczna,
• wartość wyliczona na podstawie znanych relacji z innymi polami (np.
geopotencjał wyliczony na podstawie rozkładu temperatury i wilgotności),
• wartość uzyskana w wyniku interpolacji na podstawie danych z innych punktów analizowanego pola lub przebiegu.
• W szczególności dane klimatyczne można poprawiać, wykorzystując dane archiwalne na temat korelacji tendencji zmian parametrów
pomiędzy sąsiednimi stacjach.
Analiza subiektywna i obiektywna
• Subiektywna analiza danych meteorologicznych została zapoczątkowana przez szkołę norweską w czasie I Wojny Światowej. Przykładem są tu mapy synoptyczne rysowane ręcznie. W tym przypadku
analiza zależy od osoby która ją sporządza. Pierwsze mapy Bergerona są raczej dziełem artystycznym niż wykorzystanie posiadanej wiedzy.
• Obiektywna analiza danych często zwana również statystyczną oznacza, że proces analizy jest
zalgorytmizowały a wynik powtarzalne.
Subiektywna analiza pola meteorologicznego
Analiza obiektywna
• Głównym problemem analizy obiektywnej jest nieregularność przestrzenna (czasami również czasowa) sieci obserwacyjnej.
• Musimy podać zmierzone wartości parametrów meteorologicznych w punktach siatki.
• Tak wiec obiektywna analiza jest w NWP jest procesem interpolacyjnym, w wyniku którego uzyskujemy
wartość początkową pola meteorologicznego.
• Dlaczego nie jest to „prosta” (z punktu widzenia matematyki) interpolacja nieregularnego pola wielkości skalarnych czy
wektorowych?
• Istnieje wiele odpowiedzi na to pytanie, zostaną jednak one
udzielone w dalszej części wykładu.
Asymilacja danych do numerycznych prognoz pogody
NWP - Numerical Weather Prediction
Ciągła asymilacja danych, wykorzystująca
zarówno nowe jak i stare informacje
Formaty danych metrologicznych
• Zapisywanie informacji 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, 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 w świecie
komputerów rozpowszechnionym standardem. 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 między komputerami.
• Format HDF zawiera kilka modułów danych:
wielowymiarowe macierze, grafikę rastrową 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!!.
• Format HDF używany jest najczęściej dla danych
satelitarnych
FIGURE 1a - HDF Data Structures
GRIB (GRIdded Binary)
• To matematyczny format używany na potrzeby
meteorologii do archiwizowania danych historycznych oraz wyników numerycznych prognoz pogody
• GRIP jest formatem standardowym zaakceptowanym przez World Meteorological Organization jak GRIB FM 92-IX, opisany w raportach 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)
Struktura GRIBów
• Każdy plik w formacie GRIB zawiera szereg rekordów.
• Każdy z rekordów składa się z jednego parametru dla danego czasu oraz jednego poziomu.
• Z kolei każdy rekord składa się z 6 sekcji. Przy czym sekcja 4 zawiera właściwe dane. Pozostałe zawierają niezbędne informacje do przeczytania sekcji danych.
• Struktura sekcji:
• Section 0: Indicator Section.
Section 1: Product Definition Section.
Section 2: Grid Description Section - Optional.
Section 3: Bit Map Section - Optional.
Section 4: Binary Data Section.
Section 5: '7777' - ASCII Characters indicating end
of GRID record.
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
35
języki w jakich napisane zostały biblioteki NetCDF
• C
• C++
• Fortran
• Perl
• Jave
niektóre programy czytające pliki NetCDF:
• IDL Interface
• MATLAB
• NCAR Graphics
• FERRET
• GrADS
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
Struktura NetCDF-u
38
• 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.m ean.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" ;