|
|||
rozdział 3 |
Definiowanie modelu |
||
![]() |
W OGAM jest możliwe elastyczne definiowanie trzech podstawowych modułów modelu dostępności: modelu ruchu, funkcji oporu przestrzeni i wzoru mas. Odbywa się to na stronie Model podzielonej na trzy części zatytułowane Velocity Engine, Distance Decay Function i Mass Engine (zobacz diagram blokowy aby zorientować się w zależnościach między modułami). Definiowanie każdego składnika polega na wpisaniu w odpowiednie pole edycyjne wyrażenia, które zostanie przez OGAM użyte w czasie przygotowania grafu do obliczeń współczynników dostępności. Wyrażenia muszą być sformułowane w języku SQL (Structured Query Language), standardowym języku systemów zarządzania bazami danych. Parser wbudowany w OGAM przekształca tekst wyrażenia do postaci kodu, który jest wykonywany w czasie odczytywania danych ze zbiorów importowych i wprowadza do grafu obliczone wartości. Dodatek opisuje składnię wyrażeń i dostępne funkcje. Zastosowanie wyrażeń pozwala na posługiwanie się surowymi danymi i przeprowadzanie obliczeń już wewnątrz programu, a nie w zewnętrznym oprogramowaniu np. arkuszu kalkulacyjnym. |
||
|
|||
Wzór Mas
|
Wzór mas służy do przypisania M-węzłom masy, czyli własności podlegającej modelowaniu. Zmienne użyte w wyrażeniu oznaczają kolumny z pliku importowego M-węzłów. Obliczone wartości są przypisywane M-węzłom i są składnikiem współczynników dostępności.
|
||
Model ruchu
|
Model ruchu odpowiada za obliczenia prędkości, która zostaje przypisania krawędziom grafu, a następnie jest przeliczana na czas podróży krawędzią. OGAM przyjmuje, że wszystkie informacje potrzebne do określenia prędkości są zapisane w pliku importowym krawędzi. W wyrażeniu można więc używać zmiennych oznaczających kolumny z pliku importowego krawędzi. Rezultat wyrażenia musi być liczbą. W najprostszym przypadku całe wyrażenie może się sprowadzić do pojedynczej zmiennej albo stałej liczbowej. Na przykład jeśli tablica krawędzi posiada już gotową kolumnę z prędkościami, to jako wyrażenie podaje się tylko nazwę tej kolumny. Jeśli natomiast przyjmujemy, że wszystkie odcinki sieci mają tę samą prędkość, to w tym miejscu podaje się stałą wartość liczbową np. 90. Do bardziej skomplikowanych obliczeń są do dyspozycji operatory i funkcje opisane w dodatku, ze szczególnym uwzględnieniem funkcji decode, która pozwala na przekształcanie dyskretnych, zakodowanych wartości (np. kategorii) na wartości liczbowe.
|
||
Funkcja oporu przestrzeni
|
Wzór na funkcję oporu przestrzeni jest wykorzystywany na końcowym etapie obliczeń, wtedy gdy najkrótsze ścieżki są już znalezione i znany jest czas podróży nimi. Wzór służy do przekształcania czasu podróży na zgeneralizowany koszt podróży, który jest już bezpośrednim składnikiem współczynników dostępności. W tym wzorze można używać tylko jednej predefiniowanej zmiennej t, która oznacza czas. Nie można natomiast używać żadnych nazw kolumn, ponieważ czas podróży jest już wynikiem obliczeń a nie własnością przypisaną na stałe odcinkom sieci transportowej. Rezultat wyrażenia musi być liczbą. Najprostszym przekształceniem czasu na zgeneralizowany koszt jest pozostawienie niezmienionego czasu (wpisanie w pole samej zmiennej t). Takie jest domyślne ustawienie przy tworzeniu nowego modelu.
|