Sieć jest wspólna dla ekosystemu: graf, odległości bazowe, kodowania
stacji i aglomeracje. To, co dokłada przewoźnik (obsługiwane odcinki, własny kilometraż
handlowy, punkty poza siecią główną), żyje w jego nakładce i nie zmienia niczego
u pozostałych.
Sieć globalna
Wczytuję…
Nakładki przewoźników
Wczytuję…
Sieć skuteczną składa serwer (nadpisanie
kilometrażu > odcinek przewoźnika > sieć globalna), więc kolumna
źródło mówi, skąd wzięła się ta odległość. Odcinek bez odległości
istnieje w grafie, ale nie da się z niego policzyć ceny — te warto uzupełniać
pierwsze.
Popraw kilometraż odcinka
Odległość wchodzi do CENY biletu, więc każda
zmiana idzie do historii z podpisem. Puste pole = „nie wiemy, ile to ma km" —
odcinek zostaje, tylko bez odległości.
Cięciwy — odcinki, które są sumą innych
Topologia powstała z rozkładu, a rozkład
opisuje POŁĄCZENIA, nie tory: relacja pociągu pomijającego stacje pośrednie wygląda
w danych jak jeden odcinek. Dla ceny biletu to bez różnicy (suma jest ta sama), ale
wyszukiwarka tras liczy po grafie i taki odcinek udaje jej tor, którego nie ma.
Dowodem jest arytmetyka — objazd po innych odcinkach ma tę samą długość.
Te odcinki łączą dwa duże węzły i nie mają
odległości, więc arytmetyka milczy. Stacja kolejowa ma fizycznie 2–4 sąsiadów,
a Warszawa Zachodnia ma u nas 33 — czyli problem jest większy niż lista powyżej.
Rozstrzygnie je kilometraż albo lista przystanków kursu; do tego czasu ich NIE
usuwamy, bo zgadywanie na topologii wycięłoby realne tory w węzłach.