@sh.add_function(dsp, outputs=['motors_electric_powers'])
def calculate_motors_electric_powers(
motor_p0_electric_powers, motor_p1_electric_powers,
motor_p2_planetary_electric_powers, motor_p2_electric_powers,
motor_p3_front_electric_powers, motor_p3_rear_electric_powers,
motor_p4_front_electric_powers, motor_p4_rear_electric_powers):
"""
Calculate motors electric power [kW].
:param motor_p0_electric_powers:
Electric power of motor P0 [kW].
:type motor_p0_electric_powers: numpy.array | float
:param motor_p1_electric_powers:
Electric power of motor P1 [kW].
:type motor_p1_electric_powers: numpy.array | float
:param motor_p2_planetary_electric_powers:
Electric power of planetary motor P2 [kW].
:type motor_p2_planetary_electric_powers: numpy.array | float
:param motor_p2_electric_powers:
Electric power of motor P2 [kW].
:type motor_p2_electric_powers: numpy.array | float
:param motor_p3_front_electric_powers:
Electric power of motor P3 front [kW].
:type motor_p3_front_electric_powers: numpy.array | float
:param motor_p3_rear_electric_powers:
Electric power of motor P3 rear [kW].
:type motor_p3_rear_electric_powers: numpy.array | float
:param motor_p4_front_electric_powers:
Electric power of motor P4 front [kW].
:type motor_p4_front_electric_powers: numpy.array | float
:param motor_p4_rear_electric_powers:
Electric power of motor P4 rear [kW].
:type motor_p4_rear_electric_powers: numpy.array | float
:return:
Cumulative motors electric power [kW].
:rtype: numpy.array | float
"""
p = motor_p0_electric_powers + motor_p1_electric_powers
p += motor_p2_planetary_electric_powers
p += motor_p2_electric_powers
p += motor_p3_front_electric_powers
p += motor_p3_rear_electric_powers
p += motor_p4_front_electric_powers
p += motor_p4_rear_electric_powers
return p