@sh.add_function(dsp, outputs=['engine_speeds_out_hot'])
def identify_engine_speeds_out_hot(
engine_speeds_base, after_treatment_warm_up_phases, idle_engine_speed):
"""
Predicts the engine speed at hot condition [RPM].
:param engine_speeds_base:
Base engine speed (i.e., without clutch/TC effect) [RPM].
:type engine_speeds_base: numpy.array
:param after_treatment_warm_up_phases:
Phases when engine is affected by the after treatment warm up [-].
:type after_treatment_warm_up_phases: numpy.array
:param idle_engine_speed:
Engine speed idle median and std [RPM].
:type idle_engine_speed: (float, float)
:return:
Engine speed at hot condition [RPM].
:rtype: numpy.array
"""
return np.where(
after_treatment_warm_up_phases, idle_engine_speed[0], engine_speeds_base
)