News:

Want to praise Simutrans?
Your feedback is important for us ;D.

Bogie car feature as an extension of is_tilting

Started by Phystam, April 14, 2019, 07:10:27 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Phystam

In early era, there are only two-axle cars. Later, bogie is developed, and spreaded all over the world.
Clearly there is large performance improvement, however it is not simulated in Simutrans-extended.

I developed small patch, in order to simulate bogie cars. In my setting, bogie cars can run 10% faster than two-axle cars when cornering.


USAGE:
in .dat file, please describe like below, if you want it to make a bogie car:

is_tilting=2

That's all. "is_tilting" is already written as uint8, so there's no change on makeobj.

You can try it here: https://github.com/Phystam/simutrans-extended/tree/bogie

jamespetts

Thank you for this. However, I am not aware of it being the case that bogie rail vehicles can take corners 10% faster than rigid wheelbase vehicles. May I ask whether this is based on empirical research?

My understanding is that the reason for the restriction in speed around corners is not to do with the running gear, but rather the lateral forces caused by cornering at speed. Tilting trains reduce these forces by tilting the cabins, which allows them to go faster (and the extent to which they may go faster is based on empirical data about this difference in maximum speed).

Certainly so far as the UK is concerned, I am not aware of any rail vehicles having differential speed limits for corners based on whether they are rigid or bogie vehicles. Bogie vehicles are likely to have higher speed limits overall, of course, but this is not corner specific.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Vladki

I think that the comfort value is enough to distinguish bogie cars from 4-wheelers

However there are some places where some trains are allowed to go faster. And it was discussed recently. I think that the tilting value could be generalised to be directly the percentage of speed that train can take corners faster, or slower (6-axle C-C engines)

SuperTimo

From my experience working in the industry in the UK I can also say that there are no particular restrictions on rigid vehicles when it comes to cornering. The line speed profile takes into account track curvature and freight trains often tend to be scheduled at slower speeds than line speed, but this is normally due to their poor braking characteristics rather than any poor cornering ability. Freight trains, particularly in the era of unfitted (un-braked) wagons, are usually travelling so slowly compared to line speed that the dynamic loads on the wagons due to corners are not of any concern. In the case of tilting trains they have a special ESP (enhanced speed profile) which permits them to travel at higher speeds overall, and this will be reflected in the speed profiles at sharp corners where other trains are limited due to the dynamic loads of cornering rather than their braking ability.

I believe the main advantage of bogie based vehicles is their stability at high-speeds rather than any cornering ability, this is due to their longer length and greater number of axles which allows for better suspension systems.



jamespetts

Quote from: Vladki on April 14, 2019, 09:45:35 AM
I think that the comfort value is enough to distinguish bogie cars from 4-wheelers

However there are some places where some trains are allowed to go faster. And it was discussed recently. I think that the tilting value could be generalised to be directly the percentage of speed that train can take corners faster, or slower (6-axle C-C engines)

I am not aware of any difference in the corner-specific speed limit for 6 axle locomotives: are you able to refer to any source of data regarding this? Such locomotives are common in the UK and have been since the 1960s, and they are not, to my knowledge, subject to any different speed restrictions than four axle equivalents (indeed, they tend to be more powerful, so can often go faster, at least up to 160km/h).
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Vladki

May be not in UK, but in czechoslovakia there are lower speed limits for 6-axle loco in curves. They have different speed signs for this. The reason is higher wear from 3-axle bogies than from 2-axle bogies. Also the 6-axle locos here are only for heavy freight. All express engines are 4-axle.

https://cs.m.wikipedia.org/wiki/Železniční_traťové_návěstidlo#/media/Soubor%3ARychlostniky_Chocen.JPG

The round sign is for 6-axle locos, rectangular is the regular kind, the second rectangular with higher speed is for some trains (mostly dmu/emu or other passenger trains) and further ahead there is speed sign for tilting trains.

Ranran(retired)

#6
I have never heard of the fact that the bogie car can drive corner fast. (´・ω・`)
There is likely to be a difference in the maximum speed due to running stability between the two-axle car and the bogie car in Japan.
Japan's early railway technology is mostly imported from the UK (Britain has made the track width of Japan equal to that of the British colony to make vehicles buy from the UK), so it seems that there is no difference from the UK('s colony?) in early 20th century.

http://www6.plala.or.jp/abetanpidf50568/senro.pdf
Here, as James says, the curve passing speed limit is determined by the lateral forces, and is described as the following equation.
V = √(R(Cm+Cd)/8.4)   [km/h]  (This is the case of Japanese standard gauges - 1,067mm)
Therefore I think it is irrelevant whether it is bogie or not.

In Japan, in general, express trains with low center of gravity are faster than commuter trains (regardless of tilting equipment), and freight trains with high center of gravity and high lateral pressure often have severe speed limits in the corner.

I think that something close to this is currently being simulated.

However, I like the concept of giving a level to tilting vehicle.
At present, low-cost simple tilting devices using air springs have been developed and widespread in Japan. All modern Shinkansen vehicles are used it. It is a lower level of the existing one.
That is, there is a difference between the tilting of the vehicle 2 ° and the tilting of the vehicle 6 °.
ひめしという日本人が開発者達の助言を無視して自分好みの機能をextendedに"強引に"実装し、
コードをぐちゃぐちゃにしてメンテナンスを困難にし(とりわけ道路と建物関連)、
挙句にバグを大量に埋め込み、それを知らんぷりして放置し(隠居するなどと言って)別のところに逃げ隠れて自分のフォーク(OTRP)は開発を続けている
その事実と彼の無責任さに日本人プレイヤーは目を向けるべき。らんらんはそれでやる気をなくした(´・ω・`)
他人の振り見て我が振り直せ。ひめしのようにならないために、らんらんが生み出したバグや問題は自分で修正しなくちゃね(´・ω・`)

jamespetts

That is interesting - I was unaware of some of these differences. The current is_tilting system uses a fixed percentage of the calculated corner speed from the formula as the additional speed that is permitted on the corner. A system where one specifies a different percentage would be workable to deal with some of the issues discussed here. Backwards compatibility would need to be maintained with the existing is_tilting setting, however.

The best way to do it, I think, is to have a user specified percentage parameter. This should be able to fit into the existing 8 bit space occupied by is_tilting. The is_tilting parameter if used should put a fixed value into this variable, which should be renamed to something like curve_speed_percentage both in makeobj and the main Simutrans-Extended code, the default being 100, the value with is_tilting being set to 1 being 133. If both curve_speed_percentage and is_tilting are set, then the data from curve_speed_percentage should take precedence. This would then allow for vehicles that are able to travel faster as well as more slowly around corners, as well as permitting emulation of different degrees of efficacy of tilting. The code would have to recognise a value of 1 in the pakset as a special value (from older paksets) and set this to 133.
Some consideration will need to be given as to how to display these data to the player.

Note that the figure of 133% is what I recall: I may have misremembered this, in which case, the value in the code should take precedence over what I write here.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Vladki


Phystam

I am not familiar with the train physics, but your discussions are reasonable for me.
I think that it is more preferable introducing "Cant" parameter in way .dat file. This parameter will relax the speed restrictions at the curve.
Example:
cant=100 --> speed limit is as same as current setting
cant=130 --> speed limit is 130% faster than current setting

When passing vehicles, if the vehicles has "is_tilting=130", the speed limit will be 130%*130%~170% faster. Is it okay?

ACarlotti

Quote from: Phystam on April 26, 2019, 04:20:55 AMI think that it is more preferable introducing "Cant" parameter in way .dat file.
Cant has a specific meaning that is mostly distinct from the things your parameter would be modelling. Cant is the amount by which the outer rail in a curve is higher than the inner rail, and usually has nothing to do with the train (although tilting trains can increase the effective cant experienced by passengers). So please don't call the parameter 'cant'.

Vladki

I'm not sure if the current formula used to calculate cornering speed uses some default cant or not. Anyway i thing that port of code needs much improvement. I have some Ideas, but not enough discipline to dive in it myself, and when I have time for simutrans I end up playing... ;-) . Anyway for slow speeds, cant is not so important. We can safely assume, that canted curves began to be build about the same time when the speeds have been high enough to be affected by cant. So, the cant can be accounted by default in the formula. Another thing is, that junctions cannot be canted...

Ranran(retired)

Are there any penalties for curve at junctions now?
ひめしという日本人が開発者達の助言を無視して自分好みの機能をextendedに"強引に"実装し、
コードをぐちゃぐちゃにしてメンテナンスを困難にし(とりわけ道路と建物関連)、
挙句にバグを大量に埋め込み、それを知らんぷりして放置し(隠居するなどと言って)別のところに逃げ隠れて自分のフォーク(OTRP)は開発を続けている
その事実と彼の無責任さに日本人プレイヤーは目を向けるべき。らんらんはそれでやる気をなくした(´・ω・`)
他人の振り見て我が振り直せ。ひめしのようにならないために、らんらんが生み出したバグや問題は自分で修正しなくちゃね(´・ω・`)

Rollmaterial

Quote from: Vladki on April 27, 2019, 12:59:25 PM
Another thing is, that junctions cannot be canted...
Points can be canted according to one track as long as the other track is within its allowed cant deficiency.

Vladki

Quote from: Rollmaterial on April 27, 2019, 01:17:22 PM
Points can be canted according to one track as long as the other track is within its allowed cant deficiency.
Do you have some more details? I can't imagine points where one direction is straight, and could be passed at quite high speed, to have any cant. On the other hand if the points are in curve, and the diverging routes differ only in radius, it could be canted... Hmm so it is getting even more complex. For simplicity and ease of play I would assume canted way everywhere.

jamespetts

Quote from: Ranran on April 27, 2019, 01:11:44 PM
Are there any penalties for curve at junctions now?

The current code treats junctions in exactly the same way as plain track for speed/curve - the train will slow down based on the curve of the route that it actually takes through the junction and ignore other routes.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Vladki

And does the current formula assume canted corners or not?