Code development platform for open source projects from the European Union institutions :large_blue_circle: EU Login authentication by SMS has been phased out. To see alternatives please check here

Skip to content
Snippets Groups Projects
Commit 3be435b7 authored by Michael KRISPER's avatar Michael KRISPER
Browse files

PowertrainBuilder: Reformated BuildFullPowertrainConventional

parent 71c6b0c2
Branches
Tags
No related merge requests found
......@@ -335,30 +335,21 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl
}
var container = new VehicleContainer(data.ExecutionMode, _modData, _sumWriter) { RunData = data };
// DistanceBasedDrivingCycle --> driver --> vehicle --> wheels
// --> axleGear --> (retarder) --> gearBox --> (retarder) --> clutch --> engine <-- Aux
var cycle = new DistanceBasedDrivingCycle(container, data.Cycle);
var powertrain = cycle
.AddComponent(new Driver(container, data.DriverData, new DefaultDriverStrategy(container)))
var engine = new StopStartCombustionEngine(container, data.EngineData);
var idleController = GetIdleController(data.PTO, engine, container);
cycle.IdleController = idleController as IdleControllerSwitcher;
cycle.AddComponent(new Driver(container, data.DriverData, new DefaultDriverStrategy(container)))
.AddComponent(new Vehicle(container, data.VehicleData, data.AirdragData))
.AddComponent(new Wheels(container, data.VehicleData.DynamicTyreRadius, data.VehicleData.WheelsInertia))
.AddComponent(new Brakes(container))
.AddComponent(new AxleGear(container, data.AxleGearData))
.AddComponent(data.AngledriveData != null ? new Angledrive(container, data.AngledriveData) : null)
.AddComponent(GetGearbox(container), data.Retarder, container);
if (data.GearboxData.Type.ManualTransmission()) {
powertrain = powertrain.AddComponent(new Clutch(container, data.EngineData));
}
var engine = new StopStartCombustionEngine(container, data.EngineData);
var idleController = GetIdleController(data.PTO, engine, container);
cycle.IdleController = idleController as IdleControllerSwitcher;
powertrain.AddComponent(engine, idleController)
.AddComponent(GetGearbox(container), data.Retarder, container)
.AddComponent(data.GearboxData.Type.ManualTransmission() ? new Clutch(container, data.EngineData) : null)
.AddComponent(engine, idleController)
.AddAuxiliaries(container, data);
return container;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment