Skip to content

Commit 9407233

Browse files
committed
Add maximum polach adhesion to HuD for visibility of values.
1 parent bb3dfb9 commit 9407233

File tree

2 files changed

+10
-3
lines changed
  • Source
    • Orts.Simulation/Simulation/RollingStocks/SubSystems/PowerTransmissions
    • RunActivity/Viewer3D/Popups

2 files changed

+10
-3
lines changed

Source/Orts.Simulation/Simulation/RollingStocks/SubSystems/PowerTransmissions/Axle.cs

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -521,6 +521,11 @@ public float TransmissionEfficiency
521521
/// </summary>
522522
public float WheelAdhesion;
523523

524+
/// <summary>
525+
/// Maximum wheel adhesion as calculated by Polach at the slip threshold speed
526+
/// </summary>
527+
public float MaximumPolachWheelAdhesion;
528+
524529
/// <summary>
525530
/// Correction parameter of adhesion, it has proportional impact on adhesion limit
526531
/// Should be set to 1.0 for most cases
@@ -600,7 +605,9 @@ public void ComputeWheelSlipThresholdMpS()
600605
double SlipSpeedMpS = AxleSpeedMpS - TrainSpeedMpS;
601606
double fslip = SlipCharacteristics(SlipSpeedMpS);
602607

603-
if(SlipSpeedMpS == 0)
608+
MaximumPolachWheelAdhesion = (float)SlipCharacteristics(WheelSlipThresholdMpS);
609+
610+
if (SlipSpeedMpS == 0)
604611
{
605612
// For display purposes threshold = 0 when no slip speed
606613
WheelSlipThresholdMpS = 0;

Source/RunActivity/Viewer3D/Popups/HUDWindow.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1085,7 +1085,7 @@ void TextPageForceInfo(TableData table)
10851085
TableSetCell(table, table.CurrentRow++, table.CurrentLabelColumn, Viewer.Catalog.GetString("Axle drive force"));
10861086
TableSetCell(table, table.CurrentRow++, table.CurrentLabelColumn, Viewer.Catalog.GetString("Axle brake force"));
10871087
TableSetCell(table, table.CurrentRow++, table.CurrentLabelColumn, Viewer.Catalog.GetString("Number of substeps"));
1088-
TableSetCell(table, table.CurrentRow++, table.CurrentLabelColumn, Viewer.Catalog.GetString("Wheel Adhesion"));
1088+
TableSetCell(table, table.CurrentRow++, table.CurrentLabelColumn, Viewer.Catalog.GetString("Wheel Adh. (Max)"));
10891089
TableSetCell(table, table.CurrentRow++, table.CurrentLabelColumn, Viewer.Catalog.GetString("Axle out force"));
10901090
TableSetCell(table, table.CurrentRow++, table.CurrentLabelColumn, Viewer.Catalog.GetString("Comp Axle out force"));
10911091
TableSetCell(table, table.CurrentRow++, table.CurrentLabelColumn, Viewer.Catalog.GetString("Wheel speed (Slip)"));
@@ -1098,7 +1098,7 @@ void TextPageForceInfo(TableData table)
10981098
TableSetCell(table, table.CurrentRow++, table.CurrentValueColumn + 2 * i, "{0} ({1})", FormatStrings.FormatForce(axle.DriveForceN, mstsLocomotive.IsMetric), FormatStrings.FormatPower(axle.DriveForceN * mstsLocomotive.AbsTractionSpeedMpS, mstsLocomotive.IsMetric, false, false));
10991099
TableSetCell(table, table.CurrentRow++, table.CurrentValueColumn + 2 * i, "{0}", FormatStrings.FormatForce(axle.BrakeRetardForceN, mstsLocomotive.IsMetric));
11001100
TableSetCell(table, table.CurrentRow++, table.CurrentValueColumn + 2 * i, "{0:F0}", axle.NumOfSubstepsPS);
1101-
TableSetCell(table, table.CurrentRow++, table.CurrentValueColumn + 2 * i, "{0:F0}%", axle.WheelAdhesion * 100);
1101+
TableSetCell(table, table.CurrentRow++, table.CurrentValueColumn + 2 * i, "{0:F0}% ({1:F0}%)", axle.WheelAdhesion * 100, axle.MaximumPolachWheelAdhesion * 100);
11021102
TableSetCell(table, table.CurrentRow++, table.CurrentValueColumn + 2 * i, "{0} ({1})", FormatStrings.FormatForce(axle.AxleForceN, mstsLocomotive.IsMetric),
11031103
FormatStrings.FormatPower(axle.AxleForceN * mstsLocomotive.AbsTractionSpeedMpS, mstsLocomotive.IsMetric, false, false));
11041104
TableSetCell(table, table.CurrentRow++, table.CurrentValueColumn + 2 * i, "{0} ({1})",

0 commit comments

Comments
 (0)