@sh.add_function(dsp, outputs=['gear_shifting_model'])
def initialize_gear_shifting_model(
gear_shifting_model_raw, velocity_speed_ratios, cycle_type):
"""
Initialize the gear shifting model.
:param gear_shifting_model_raw:
A gear shifting model (cmv or gspv or dtgs).
:type gear_shifting_model_raw: GSPV | CMV | DTGS
:param velocity_speed_ratios:
Constant velocity speed ratios of the gear box [km/(h*RPM)].
:type velocity_speed_ratios: dict[int | float]
:param cycle_type:
Cycle type (WLTP or NEDC).
:type cycle_type: str
:return:
Initialized gear shifting model (cmv or gspv or dtgs).
:rtype: GSPV | CMV | DTGS
"""
# noinspection PyProtectedMember
from .at_gear import _upgrade_gsm
gsm = gear_shifting_model_raw
return _upgrade_gsm(gsm, velocity_speed_ratios, cycle_type)