Laboratorium 1

Labortaorium 1: Wprowadzenie, Matlab, Mathematica, różniczkowanie i całkowanie numeryczne

Cel zajęć

  1. Wprowadzenie.
  2. Przypomnienie/zapoznanie się z programami Mathematica i Matlab.
  3. Generowanie danych „syntetycznych” o zadanych parametrach.
  4. Wykresy funkcji i danych.
  5. Algorytmy różniczkowania numerycznego przebiegów czasowych.
  6. Algorytmy całkowania numerycznego przebiegów czasowych.

Zadania do wykonania

  1. Zapoznanie się z elementarną dokumentacją systemów MathematicaMatlab — przed zajęciami.
  2. Przećwiczenie podanych przykładów.
  3. Zapoznanie się z dokumentacją on-line obu systemów (w przypadku Matlaba dostępne są również programy demonstracyjne).
  4. Przypomnienie sobie wzorów na numeryczne różniczkowanie (hint: iloraz różnicowy) i całkowanie (hint: metoda prostokątów, metoda trapezów).
  5. Wygenerowanie „syntetycznych” zestawów danych i sprawdzenie procedur całkowania/różniczkowania.
  6. Wygenerowanie syntetycznych zestawów danych (zaburzonych szumem o rozkładzie normalnym o średniej zero i zadanej wariancji) oraz sprawdzenie procedur całkowania/różniczkowania i zbadanie wpływu wariancji na wyniki.

Zadanie praktyczne

  1. Wczytać dane przykładowe lub inne dane przykładowe.
  2. Narysować wykres danych
  3. Na wykresie inteligentnie zaznaczyć okresy wzrostu i spadku mierzonej wartości (użyć do tego pochodnej?)

Uwaga: wszystkie dane są skompresowane, w formacie xz. Po kliknięciu w plik o tym rozszerzeniu powinno automatycznie uruchomić się oprogramowanie pozwalające dostać się do zawartości pliku.

Format danych

Dane pochodzą z pomiarów temperatury, ciśnienia atmosferycznego, wilgotności względnej oraz jasności światła z czujnika „wystawionego za okno”. Okno jest od strony południowo-wschodniej więc, z oczywistych względów, dane nie mogą być traktowane jako wiarogodne. Pomiary realizowane są co pięć minut z czujnika TI CC2650 SensorTag.

Format danych (CSV)1 jest następujący:

image1
Unix time stamp

Pierwsza kolumna to czas w postaci czytelnej, druga — tak zwany unix time stamp, a trzecia to zmierzona wartość. Gdy zamiast zmierzonej wartości pojawi się NaN oznacza to, że brakuje pomiaru. Taki punkt powinien „wypaść” z danych.

Dane pochodzą z systemu RRDtool, który dane zapisuje w specyficznych bazach danych wykorzystując format Round Robin Archives, który pozwala przechowywać najaktualniejsze dane z ostatniego okresu (na przykład doba) i skonsolidowane dane z okresów dłuższych — tydzień, miesiąc, rok. Stąd pojawiające się zestawach danych informacje typu:

określają typ konsolidacji (może to być oprócz AVERAGE — MIN lub MAX) oraz okres konsolidacji (w sekundach: 300, 1800, 86400, 2678400). Dane nawet jeżeli pojawiają się częściej są uśredniane.

Format drugiego zestawu danych

W srugim przypadku dane pochodzą z osobistej stacji pogodowej netatmo. Pomiary robione są na zewnątrz i wewnątrz pomieszczeń. Mierzone jest ciśnienie atmosferyczne (tylko wewnątrz) temperatura, poziom szumu (tylko wewnątrz) i wilgotność.

Pliki zawierają dane mierzone „dosyć gęsto”, ale okres próbkowania jest niejednostajny. Na przykład w przypadku szumu, oprócz znacznika czasu (TimeStamp) jest czas podany w formie tekstowej oraz wartość mierzonego parametru. Separatorem jest średnik.

W przypadku innych parametrów będzie identycznie. Separatorem części ułamkowej (jeżeli występuje) jest kropka.

Instrukcja w postaci jednego pliku…

…jest również dostępna.


  1. Comma Separated Values.