suboptimumg.vehicle.powertrain.powertrain#

class suboptimumg.vehicle.powertrain.powertrain.Motor(vehicle_model)[source]#

Bases: object

Parameters:

vehicle_model (VehicleModel)

calculate_max_ground_force_and_motor_power(v, ratio)[source]#

Calculates force and power output by the motor.

Parameters:
  • v (float) – Velocity of the vehicle (m/s)

  • ratio (float) – Gear ratio

Returns:

  • ground_force (float) – Force at the ground (N)

  • motor_power (float) – Motor power output (W)

get_torque_at_rpm(motor_rpm)[source]#

Get motor torque at a given RPM using piecewise function.

The torque curve has three regions: 1. Flat region (0 to fw_rpm): constant max torque 2. Linear decay (fw_rpm to max_rpm): torque decreases linearly 3. Zero region (above max_rpm): no torque

Parameters:

motor_rpm (float) – Motor RPM

Returns:

Motor torque at the given RPM (Nm)

Return type:

float

powertrain_efficiency()[source]#

Calculates the system efficiency of the powertrain.

Uses system efficiency if it is set, otherwise uses the product of the individual efficiencies.

Returns:

System efficiency of the powertrain

Return type:

float

class suboptimumg.vehicle.powertrain.powertrain.Powertrain(vehicle_model)[source]#

Bases: object

Parameters:

vehicle_model (VehicleModel)