@sh.add_function(dsp, outputs=['gear_box_efficiency_parameters_cold_hot'])
def calculate_gear_box_efficiency_parameters_cold_hot(
gear_box_efficiency_constants, engine_max_torque):
"""
Calculates the parameters of gear box efficiency model for cold/hot phases.
:param gear_box_efficiency_constants:
Vehicle gear box efficiency constants.
:type gear_box_efficiency_constants: dict
:param engine_max_torque:
Engine Max Torque [N*m].
:type engine_max_torque: float
:return:
Parameters of gear box efficiency model for cold/hot phases:
- 'hot': `gbp00`, `gbp10`, `gbp01`
- 'cold': `gbp00`, `gbp10`, `gbp01`
:rtype: dict
"""
par = {'hot': {}, 'cold': {}}
for p in ['hot', 'cold']:
for k, v in gear_box_efficiency_constants.items():
m = _get_par(_get_par(v, 'm', default=0.0), p)
q = _get_par(_get_par(v, 'q', default=0.0), p)
par[p][k] = _linear(engine_max_torque, m, q)
return par