Elvas Tower: Advanced Adhesion - Poach - Elvas Tower

Jump to content

Posting Rules

All new threads will be started by members of the Open Rails team, Staff, and/or Admins. Existing threads started in other forums may get moved here when it makes sense to do so.

Once a thread is started any member may post replies to it.
  • 6 Pages +
  • 1
  • 2
  • 3
  • 4
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic

Advanced Adhesion - Poach Rate Topic: -----

#11 User is offline   steamer_ctn 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 1,889
  • Joined: 24-June 11
  • Gender:Male
  • Country:

Posted 02 October 2023 - 11:45 AM

View Postcesarbl, on 02 October 2023 - 07:59 AM, said:

I see a constant 0.2km/h slip threshold with the SD70 for all speed ranges. This indicates that WheelSlipThreshold is too low, and the numerical simulation can't handle the adhesion curve. For speeds ~30mph, I would expect a wheel slip threshold greater than 1km/h, so probably there's a problem with the Polach input parameters.
I agree that it shouldn't be a constant, and I am investigating a conditional test statement which seems to be comparing the slip speeds rather then the fa and fb values.

I will get back to all when I work out what is holding the threshold at a constant value.

#12 User is offline   Weter 

  • Member, Board of Directors
  • PipPipPipPipPipPipPipPipPipPip
  • Group: ET Admin
  • Posts: 6,932
  • Joined: 01-June 20
  • Gender:Not Telling
  • Simulator:ORTS
  • Country:

Posted 02 October 2023 - 04:29 PM

Hello.
Thanks for answer.

Quote

track dynamics, such as stiffness

Does it depend, among other reasons, on ties material/ballast consistence?

#13 User is offline   pschlik 

  • Conductor
  • Group: Status: Active Member
  • Posts: 332
  • Joined: 04-March 15
  • Gender:Male
  • Simulator:OpenRails - Unstable
  • Country:

Posted 02 October 2023 - 05:26 PM

I hate to be the bearer of game breaking news, but it seems that this update also completely broke restoring savegames.

On the unstable version from October 1 (first one I've found with Poach), loading a save gives an error in loading a string in TrainCar.Restore
Error: System.IO.IOException: BinaryReader encountered an invalid string length of -805306369 characters.
   at System.IO.BinaryReader.ReadString()
   at Orts.Simulation.RollingStocks.TrainCar.Restore(BinaryReader inf) in C:\Jenkins\jobs\Open Rails Unstable\workspace\Source\Orts.Simulation\Simulation\RollingStocks\TrainCar.cs:line 2225
   at Orts.Simulation.RollingStocks.MSTSWagon.Restore(BinaryReader inf) in C:\Jenkins\jobs\Open Rails Unstable\workspace\Source\Orts.Simulation\Simulation\RollingStocks\MSTSWagon.cs:line 1922
   at Orts.Simulation.RollingStocks.MSTSLocomotive.Restore(BinaryReader inf) in C:\Jenkins\jobs\Open Rails Unstable\workspace\Source\Orts.Simulation\Simulation\RollingStocks\MSTSLocomotive.cs:line 1342
   at Orts.Simulation.RollingStocks.MSTSDieselLocomotive.Restore(BinaryReader inf) in C:\Jenkins\jobs\Open Rails Unstable\workspace\Source\Orts.Simulation\Simulation\RollingStocks\MSTSDieselLocomotive.cs:line 523
   at Orts.Simulation.Physics.Train.RestoreCars(Simulator simulator, BinaryReader inf) in C:\Jenkins\jobs\Open Rails Unstable\workspace\Source\Orts.Simulation\Simulation\Physics\Train.cs:line 956
   at Orts.Simulation.Physics.Train..ctor(Simulator simulator, BinaryReader inf) in C:\Jenkins\jobs\Open Rails Unstable\workspace\Source\Orts.Simulation\Simulation\Physics\Train.cs:line 673
   at Orts.Simulation.Simulator.RestoreTrains(BinaryReader inf) in C:\Jenkins\jobs\Open Rails Unstable\workspace\Source\Orts.Simulation\Simulation\Simulator.cs:line 1586
   at Orts.Simulation.Simulator.Restore(BinaryReader inf, String pathName, Single initialTileX, Single initialTileZ, CancellationToken cancellation) in C:\Jenkins\jobs\Open Rails Unstable\workspace\Source\Orts.Simulation\Simulation\Simulator.cs:line 541
   at Orts.Viewer3D.Processes.GameStateRunActivity.Resume(UserSettings settings, String[] args) in C:\Jenkins\jobs\Open Rails Unstable\workspace\Source\RunActivity\Viewer3D\Processes\GameStateRunActivity.cs:line 518
   at Orts.Viewer3D.Processes.GameStateRunActivity.<>c__DisplayClass41_0.<Load>b__3() in C:\Jenkins\jobs\Open Rails Unstable\workspace\Source\RunActivity\Viewer3D\Processes\GameStateRunActivity.cs:line 213
   at Orts.Viewer3D.Processes.GameStateRunActivity.Load() in C:\Jenkins\jobs\Open Rails Unstable\workspace\Source\RunActivity\Viewer3D\Processes\GameStateRunActivity.cs:line 249
   at Orts.Viewer3D.Processes.LoaderProcess.Load() in C:\Jenkins\jobs\Open Rails Unstable\workspace\Source\RunActivity\Viewer3D\Processes\LoaderProcess.cs:line 161
   at Orts.Viewer3D.Processes.LoaderProcess.DoLoad() in C:\Jenkins\jobs\Open Rails Unstable\workspace\Source\RunActivity\Viewer3D\Processes\LoaderProcess.cs:line 140
   at Orts.Viewer3D.Processes.LoaderProcess.LoaderThread() in C:\Jenkins\jobs\Open Rails Unstable\workspace\Source\RunActivity\Viewer3D\Processes\LoaderProcess.cs:line 111
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)   at System.Threading.ThreadHelper.ThreadStart()


The offending line of code is OrgConsist = inf.ReadString(); which seems completely unrelated to adhesion, so it's likely a coincidence that the save file ran out of data at this point. The difference in file size I'm seeing is just 16 bytes (in identical setups, the save with the error was 49,617 bytes, 49,601 without.)

Backdating to the unstable build from September 29 eliminates the problem, and I believe the only change from the 29th to the 1st was the addition of Poach.

#14 User is offline   Laci1959 

  • Foreman Of Engines
  • Group: Status: Contributing Member
  • Posts: 948
  • Joined: 01-March 15
  • Gender:Male
  • Simulator:Alföld
  • Country:

Posted 02 October 2023 - 10:46 PM

View PostWeter, on 02 October 2023 - 04:29 PM, said:

Hello.
Thanks for answer.

Does it depend, among other reasons, on ties material/ballast consistence?


HELLO.

Yes, among other things. It depends on the steepness of the slope/ascent, the time of day, the season and the environment.
Slope/uphill slope. I don't think this needs to be explained. I think this also includes the arc radius. In small-radius bends on the side line, the longer two-axle cars and the 6-axle cars are stretched, thereby increasing the resistance of the train.
Part of the day. The first train may have less traction due to the morning dew.
Season and environment. In autumn, trains passing through the forest or close to the forest may slip when braking due to fallen leaves on the tracks. By the way, the CZ-SK version perfectly models this when the forest crosses the Forest object or is close to it.
Just thinking about what you asked.

Sincerely, Laci 1959

#15 User is offline   steamer_ctn 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 1,889
  • Joined: 24-June 11
  • Gender:Male
  • Country:

Posted 03 October 2023 - 01:00 AM

View Postpschlik, on 02 October 2023 - 05:26 PM, said:

I hate to be the bearer of game breaking news, but it seems that this update also completely broke restoring savegames.
Thanks it is better to identify problems and solve them.

View Postpschlik, on 02 October 2023 - 05:26 PM, said:

The offending line of code is OrgConsist = inf.ReadString(); which seems completely unrelated to adhesion, so it's likely a coincidence that the save file ran out of data at this point.
As you suggest there appears to be no direct tie between the OrgConsist (which is a TT function) and the adhesion function.

The first obvious question, is did you do the save and restore in the same Unstable version?

If so, I will need to ponder it a bit more.

#16 User is offline   steamer_ctn 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 1,889
  • Joined: 24-June 11
  • Gender:Male
  • Country:

Posted 03 October 2023 - 01:06 AM

View PostLaci1959, on 02 October 2023 - 10:46 PM, said:

Yes, among other things. It depends on the steepness of the slope/ascent, the time of day, the season and the environment.
Slope/uphill slope. I don't think this needs to be explained. I think this also includes the arc radius. In small-radius bends on the side line, the longer two-axle cars and the 6-axle cars are stretched, thereby increasing the resistance of the train.
Part of the day. The first train may have less traction due to the morning dew.
Season and environment. In autumn, trains passing through the forest or close to the forest may slip when braking due to fallen leaves on the tracks. By the way, the CZ-SK version perfectly models this when the forest crosses the Forest object or is close to it.
Just thinking about what you asked.
Just to be clear, you have described two different features, ie train resistance (the force acting in opposition to the motive force of the train), and adhesion (effectively this is the "grip" that the wheel has on the rail).

So it is good to be clear about what function that we are discussing. Weter was asking about track conditions that impact adhesion.

#17 User is offline   Laci1959 

  • Foreman Of Engines
  • Group: Status: Contributing Member
  • Posts: 948
  • Joined: 01-March 15
  • Gender:Male
  • Simulator:Alföld
  • Country:

Posted 03 October 2023 - 02:02 AM

View Poststeamer_ctn, on 03 October 2023 - 01:06 AM, said:

Just to be clear, you have described two different features, ie train resistance (the force acting in opposition to the motive force of the train), and adhesion (effectively this is the "grip" that the wheel has on the rail).

So it is good to be clear about what function that we are discussing. Weter was asking about track conditions that impact adhesion.


Hello.

Yes, you are absolutely right in answering the question.
The resistance of the track does modify the grip, but really, that was not the question.

Sorry.

#18 User is offline   pschlik 

  • Conductor
  • Group: Status: Active Member
  • Posts: 332
  • Joined: 04-March 15
  • Gender:Male
  • Simulator:OpenRails - Unstable
  • Country:

Posted 03 October 2023 - 05:43 AM

View Poststeamer_ctn, on 03 October 2023 - 01:00 AM, said:

As you suggest there appears to be no direct tie between the OrgConsist (which is a TT function) and the adhesion function.

The first obvious question, is did you do the save and restore in the same Unstable version?

If so, I will need to ponder it a bit more.


My multiple attempts at saving and loading were definitely in the same version. I did try loading across versions but that was correctly interrupted before an error happened as the versions aren't compatible.

#19 User is offline   steamer_ctn 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 1,889
  • Joined: 24-June 11
  • Gender:Male
  • Country:

Posted 03 October 2023 - 09:25 PM

View Postpschlik, on 03 October 2023 - 05:43 AM, said:

My multiple attempts at saving and loading were definitely in the same version. I did try loading across versions but that was correctly interrupted before an error happened as the versions aren't compatible.
Thanks for that.

I can reproduce the fault, but it seems to hang at the following line for me (not sure why).

CarID = inf.ReadString();

I will try and work out why.

#20 User is offline   steamer_ctn 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 1,889
  • Joined: 24-June 11
  • Gender:Male
  • Country:

Posted 03 October 2023 - 09:41 PM

Out of interest I have attached two graphs based upon the Polach adhesion curves.

polach_adhesion_0.1 - this is with a train speed of 0.1kmh, potentially starting. The transition point between adhesion and slip (ie the SlipThreshold ) is at approx 0.025 kph ( 0.0069444444 mps)

polach_adhesion_16 - this is with a train speed of 16kmh (10mph). The transition point between adhesion and slip (ie the SlipThreshold ) is at approx 1km/h (4.44 mps).

The top curve is for a dry track and the middle curve is for a wet track.

So I still need to work out why the slipthreshold is not conforming to these values or similar.

Attached thumbnail(s)

  • Attached Image: polach_adhesion_0.1.jpg
  • Attached Image: polach_adhesion_16.jpg


  • 6 Pages +
  • 1
  • 2
  • 3
  • 4
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users