@sh.add_function(dsp, outputs=['r_dynamic'], weight=11)
def identify_r_dynamic_v2(
velocities, gears, engine_speeds_out, gear_box_ratios,
final_drive_ratios, stop_velocity, on_engine):
"""
Identifies the dynamic radius of the wheels [m].
:param velocities:
Vehicle velocity [km/h].
:type velocities: numpy.array
:param gears:
Gear vector [-].
:type gears: numpy.array
:param engine_speeds_out:
Engine speed [RPM].
:type engine_speeds_out: numpy.array
:param gear_box_ratios:
Gear box ratios [-].
:type gear_box_ratios: dict[int, float | int]
:param final_drive_ratios:
Final drive ratios [-].
:type final_drive_ratios: dict[int, float | int]
:param stop_velocity:
Maximum velocity to consider the vehicle stopped [km/h].
:type stop_velocity: float
:param on_engine:
If the engine is on [-].
:type on_engine: numpy.array
:return:
Dynamic radius of the wheels [m].
:rtype: float
"""
return identify_r_dynamic_v1(
velocities[on_engine], gears[on_engine], engine_speeds_out[on_engine],
gear_box_ratios, final_drive_ratios, stop_velocity
)