@@ -61,10 +61,10 @@ pub struct PhysicsConsist {
61
61
/// Mapping of power restriction code to power class
62
62
#[ serde( default ) ]
63
63
pub power_restrictions : BTreeMap < String , String > ,
64
- /// The time the train takes before actually using electrical power (in miliseconds ).
64
+ /// The time the train takes before actually using electrical power (in milliseconds ).
65
65
/// Is null if the train is not electric or the value not specified.
66
66
pub electrical_power_startup_time : Option < u64 > ,
67
- /// The time it takes to raise this train's pantograph in miliseconds .
67
+ /// The time it takes to raise this train's pantograph in milliseconds .
68
68
/// Is null if the train is not electric or the value not specified.
69
69
pub raise_pantograph_time : Option < u64 > ,
70
70
}
@@ -180,18 +180,18 @@ impl PhysicsConsistParameters {
180
180
181
181
let towed_mass = total_mass - traction_engine_mass; // kg
182
182
183
- let traction_engine_solid_friction_a = traction_engine_rr. A * 1000.0 ; // convert from kN to N
184
- let traction_engine_viscosity_friction_b = traction_engine_rr. B * 1000.0 * 3.6 ; // convert from kN/(km/h) to N/(m/s)
185
- let traction_engine_aerodynamic_drag_c = traction_engine_rr. C * 1000.0 * 3.6 * 3.6 ; // convert from kN/(km/h)² to N/(m/s)²
183
+ let traction_engine_solid_friction_a = traction_engine_rr. A ; // N
184
+ let traction_engine_viscosity_friction_b = traction_engine_rr. B ; // N/(m/s)
185
+ let traction_engine_aerodynamic_drag_c = traction_engine_rr. C ; // N/(m/s)²
186
186
187
- let towed_solid_friction_a = towed_rs_rr. A * 1e-2 * towed_mass; // convert from daN/t to N
188
- let towed_viscosity_friction_b = towed_rs_rr. B * 1e-2 * towed_mass * 3.6 ; // convert from (daN/t)/(km/h) to N/(m/s)
189
- let towed_aerodynamic_drag_c = towed_rs_rr. C * 1e-2 * towed_mass * 3.6 * 3.6 ; // convert from (daN/t)/(km/h)² to N/(m/s)²
187
+ let towed_solid_friction_a = towed_rs_rr. A * towed_mass; // N
188
+ let towed_viscosity_friction_b = towed_rs_rr. B * towed_mass; // N/(m/s)
189
+ let towed_aerodynamic_drag_c = towed_rs_rr. C * towed_mass; // N/(m/s)²
190
190
191
- let solid_friction_a = traction_engine_solid_friction_a + towed_solid_friction_a;
191
+ let solid_friction_a = traction_engine_solid_friction_a + towed_solid_friction_a; // N
192
192
let viscosity_friction_b =
193
- traction_engine_viscosity_friction_b + towed_viscosity_friction_b;
194
- let aerodynamic_drag_c = traction_engine_aerodynamic_drag_c + towed_aerodynamic_drag_c;
193
+ traction_engine_viscosity_friction_b + towed_viscosity_friction_b; // N/(m/s)
194
+ let aerodynamic_drag_c = traction_engine_aerodynamic_drag_c + towed_aerodynamic_drag_c; // N/(m/s)²
195
195
196
196
RollingResistance {
197
197
rolling_resistance_type : traction_engine_rr. rolling_resistance_type . clone ( ) ,
@@ -592,9 +592,9 @@ mod tests {
592
592
physics_consist. compute_rolling_resistance( ) ,
593
593
RollingResistance {
594
594
rolling_resistance_type: "davis" . to_string( ) ,
595
- A : 1350 .0,
596
- B : 48.6 ,
597
- C : 7.387200000000001
595
+ A : 35001 .0,
596
+ B : 350.01 ,
597
+ C : 7.0005 ,
598
598
}
599
599
) ;
600
600
0 commit comments