You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
LocomotiveAxle.AxleWeightN=9.81f*DrvWheelWeightKg;//will be computed each time considering the tilting
2382
-
LocomotiveAxle.DriveForceN=MotiveForceN;//Total force applied to wheels
2383
-
LocomotiveAxle.TrainSpeedMpS=SpeedMpS;//Set the train speed of the axle model
2384
-
LocomotiveAxle.Update(elapsedClockSeconds);//Main updater of the axle model
2385
-
MotiveForceN=LocomotiveAxle.AxleForceN;//Get the Axle force and use it for the motion
2379
+
LocomotiveAxle.AxleWeightN=9.81f*DrvWheelWeightKg;//will be computed each time considering the tilting
2380
+
LocomotiveAxle.DriveForceN=MotiveForceN;//Total force applied to wheels
2381
+
LocomotiveAxle.TrainSpeedMpS=SpeedMpS;//Set the train speed of the axle model
2382
+
LocomotiveAxle.Update(elapsedClockSeconds);//Main updater of the axle model
2383
+
2384
+
// Output
2385
+
MotiveForceN=LocomotiveAxle.CompensatedAxleForceN;//Get the Axle force and use it for the motion (use compensated value as it is independent of brake force)
2386
+
2386
2387
if(elapsedClockSeconds>0)
2387
2388
{
2388
2389
WheelSlip=LocomotiveAxle.IsWheelSlip;//Get the wheelslip indicator
@@ -4279,7 +4280,7 @@ public virtual float GetDataOf(CabViewControl cvc)
// The Axle module subtracts brake force from the motive force for calculation purposes. However brake force is already taken into account in the braking module.
637
+
// And thus there is a duplication of the braking effect in OR. To compensate for this, after the slip characteristics have been calculated, the output of the axle module
638
+
// has the brake force "added" back in to give the appropriate motive force output for the locomotive. Braking force is handled separately.
639
+
// Hence CompensatedAxleForce is the actual output force on the axle.
640
+
varcompensateAxleForceN=axleForceN;
641
+
620
642
switch(driveType)
621
643
{
622
644
caseAxleDriveType.NotDriven:
@@ -656,42 +678,60 @@ public virtual void Update(float timeSpan)
0 commit comments