Skip to content

Commit 4cbdb14

Browse files
multunKhoyo
andcommitted
design-docs: timetable: unify arrival times and margin types
Co-Authored-By: Younes Khoudli <[email protected]>
1 parent 5863ffc commit 4cbdb14

File tree

1 file changed

+30
-13
lines changed
  • content/docs/reference/design-docs/timetable

1 file changed

+30
-13
lines changed

content/docs/reference/design-docs/timetable/index.en.md

+30-13
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,12 @@ What we can do about outdated trains:
9898
- We can not check what changed between the old and new version
9999
- We can not know the cause of this change (RS, Infra, Algorithms...)
100100

101+
### Separating stops and arrival times
102+
103+
This is a side effect of unifying the margins model: as arrival times now
104+
are just another way to specify margin values. It makes little sense to have
105+
stops be part of the margin subsystem.
106+
101107
## Creation fields
102108

103109
These fields are required at creation time, but cannot be changed afterwards.
@@ -129,19 +135,30 @@ path:
129135
- {id: c, deleted: true, waypoint: true, trigram: ABC}
130136
- {id: d, waypoint: true, track: toto, offset: 42}
131137

132-
# the algorithm used for computing the standard margins AND scheduled points
133-
distribution_margins: MARECO
134-
135-
standard_margins:
136-
# the begin and end waypoints are always implicitly added
137-
intermediate_waypoints: [b]
138-
values: ["5%", "2%"]
139-
140-
# all durations and times are specified using ISO 8601
141-
scheduled_points:
142-
- {at: a, arrival: PT0M, stop_for: PT5M}
143-
- {at: b, arrival: PT10M}
144-
- {at: c, arrival: PT25M}
138+
stops:
139+
- {at: a, for: PT5M}
140+
141+
# there are two mutually exclusive ways to add time constraints:
142+
# margins and arrival times. Both methods share parameters, such
143+
# as the distribution, intermediate waypoints, and transitions.
144+
time_constraints:
145+
# algorithm used to distribute time over space
146+
distribution: MARECO
147+
148+
# time constraints apply on the entire path. intermediate
149+
# waypoints delimit zones which can be configured with distinct
150+
# time constraints.
151+
intermediate_waypoints: [b, c]
152+
153+
# method 1: fixed arrival times
154+
# arrival times to intermediate_waypoints and the destination waypoint,
155+
# expressed as ISO 8601 durations since departure.
156+
arrival_times: [PT10M, PT25M, PT30M]
157+
158+
# method 2: margins
159+
# margins values are given for each zone, delimited by the
160+
# departure, intermediate, and arrival waypoints.
161+
margins: ["5%", "30s/km", "1min"]
145162

146163

147164
# train speed at departure, in meters per second

0 commit comments

Comments
 (0)