Even or odd: the perfect join

the-perfect-join

Back in February, Tim blogged about the differences between even and odd train lengths. This post posed it was better to use odd train length because they use less space when queuing.

To see what happens in a dynamic, i.e. moving, situation, I have built a test track which does a full speed join. It tries to get three trains as close to each other as possible, to see what the minimum distance between trains is. On another test track, I tested what the distance between trains from standstill is.

With the full speed join, the expected behaviour would be to have two tiles distance between the trains, no matter what length we use. For the standstill experiment, the expected behaviour is a positive relationship between the length of the train and the distance (a longer train is heavier and thus will have a larger following distance).

However, we are not interested in the large scale effects, but in the quantum effects: compare it to the queuing trains in Tims post: there is a linear relationship between train length and the amount of signal blocks used, but, because signal blocks go in sets of two tiles, even-length trains use relatively much space.

From standstill

First of all, I have tested the train following distance when starting from standstill for the Kirby Paul Tank, SH ’30’ and Lev4. By queuing trains with different lengths – 3, 4, 5, 6 and 6 tl – next to each other and starting them at the same time, comparison suddenly becomes easy. As distance, I have used the number of tiles, in halves, between trains, measured just before the following train reserves the next tile.

Kirby Paul Tank

The Kirby Paul Tank, with it’s 223kW and 64km/h max. speed, is the slowest locomotive in the game. Although we never use this train, it’s good to have multiple speeds as comparison.

Kirby Paul Tank running distance

The leftmost lane has 7tl trains, the rightmost lane has 3tl trains. The distances between the trains is

tl 3: 4.5 tiles (1.5 tiles/tl)
tl 4: 5.0 tiles (1.3 tiles/tl)
tl 5: 5.5 tiles (1.1 tiles/tl)
tl 6: 6.0 tiles (1.0 tiles/tl)
tl 7: 6.5 tiles (0.9 tiles/tl)

This shows a very linear relationship: d=0.5*tl+3. The used rail efficiency is calculated with e=d/tl = 0.5+3/tl. This means an infinite train length will still have half its length in distance between the trains.

SH ’30’

The SH ’30’ is the first, and slowest, electric locomotive to become available. Compared to the Kirby Paul Tank it’s of course very powerful: 2682kW and a 160km/h max speed.

SH40 running distance

However, the SH ’30’ shows exactly the same results as the Kirby Paul Tank!

savegame for both SH30 and Kirby Paul Tank

Lev4

The Lev4 is the fastest locomotive in the game. With almost 15MW of power from the dual engines, it reaches a staggering 643 km/h. Does this yield any different results?

Lev4 running distance

The lev4 yields some interesting results:

tl 3: 7.7 tiles (2.6 tiles/tl)
tl 4: 7 tiles (1.8 tiles/tl)
tl 5: 8.8 tiles (1.8 tiles/tl)
tl 6: 8.6 tiles (1.4 tiles/tl)
tl 7: 10 tiles (1.4 tiles/tl)

Take a moment to let this be processed. The distance gets shorter from tl3 to tl4 and from tl5 to tl6! And this is not just on a single occasion; these numbers are the average over three measurements. What is even more interesting are the track efficiency numbers: they show that, from a running start, even length trains use the track much more efficient than the just-shorter odd train, and as efficient as the just-longer odd train.
Lev4 savegame

High-speed join

Of course, this does not tell the entire story. We try to have our network running, so the distances from standstill are not the most important: we want to have a running network, not a network just recovering from a jam. To test this, I have built a high-speed joiner, which tries to join three trains as closely as possible. This joiner is followed by a straight track and a full-speed 180 degree curve. The track was signalled using 2-tile auto signalling, which means we notice the effects of the bad signalling in corners.

For this measurement, I have used a slightly different system. I have measured the distance between the starting positions, subtracted the train length and averaged this over the two follow-up trains, as one of them joins from a secondary track (i.e. it has a slightly longer path).

The full join is considered a success if both the straight track and the 180 degree turn are completed without any slowdowns.

SH ’30’

Tests with the SH ’30’ yielded these results:

tl 1: 4 tiles (4 t/tl)
tl 2: 4.5 tiles (2.3 t/tl)
tl 3: 5 tiles (1.7 t/tl)
tl 4: 5.5 tiles (1.4 t/tl)
tl 5: 6 tiles (1.2 t/tl)
tl 6: 6 tiles (1 t/tl)
tl 7: 6 tiles (0.9 t/tl)

This is the minimum distance between trains. The results show quantum effects for trains shorter than 5 tiles: longer trains all have the same distance in between, which is what you would expect.

lev4

The maglev tests yielded the following results:

tl 1: 4.5 tiles (4.5 t/tl)
tl 2: 4 tiles (2 t/tl)
tl 3: 5 tiles (1.6 t/tl)
tl 4: 5.5 tiles (1.4 t/tl)
tl 5: 6.5 tiles (1.3 t/tl)
tl 6: 6.5 tiles (1.1 t/tl)
tl 7: 6.5 tiles (0.9 t/tl)

Which is pretty much the same result.
SH30 & Lev4 savegame

Conclusion

Both the standstill and the fast join results show there is no reason to prefer odd train length in a running situation. Although even length trains take more space while standing still, this should not be a reason to choose even length trains over odd length trains: although the queue is slightly longer, the situation after trains start running again is even better than with even train lengths. Besides, queued trains are exceptional: we try to keep trains running.

For tightly spaced trains the oddness of train length is not important either. There are some quantization effects with small trains, but even length trains show no disadvantages compared to odd length trains.

For both situations, it is obvious using longer trains is more efficient. My calculation does not take locomotives into consideration: a tl3 lev4 carries 4 times as much cargo as a tl2 train (4 wagons instead of 2). To take this into account, the efficiency should be calculated with e=t/(tl-0.5*#loc) instead of e=t/tl. This will show an additional penalty for shorter trains.

Leave a comment

Please be polite and on topic. Your email-address will never be published.