Code development platform for open source projects from the European Union institutions

Skip to content
Snippets Groups Projects
Commit ec2b1363 authored by Markus Quaritsch's avatar Markus Quaritsch
Browse files

Merge branch 'feature/VehicleContainer' into feature/VECTO-64-create-vehiclecontainer-that-contains

parents 5b3c9f46 2c52e8ff
No related branches found
No related tags found
No related merge requests found
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using TUGraz.VectoCore.Models.SimulationComponent;
namespace TUGraz.VectoCore.Models.Simulation
{
public class SimulationContainer
{
private IList<VectoSimulationComponent> _components = new List<VectoSimulationComponent>();
private ICombustionEngine _engine = null;
private IGearbox _gearbox = null;
public void AddComponent(VectoSimulationComponent component)
{
DoAddComponent(component);
}
public void Addcomponent<T>(T engine) where T : VectoSimulationComponent, ICombustionEngine
{
_engine = engine;
DoAddComponent(engine);
}
public void AddComponent<T>(T gearbox) where T : VectoSimulationComponent, IGearbox
{
_gearbox = gearbox;
DoAddComponent(gearbox);
}
public IReadOnlyCollection<VectoSimulationComponent> SimulationComponents()
{
return new ReadOnlyCollection<VectoSimulationComponent>(_components);
}
public ICombustionEngine CombustionEngine()
{
return _engine;
}
public IGearbox Gearbox()
{
return _gearbox;
}
protected void DoAddComponent(VectoSimulationComponent component)
{
_components.Add(component);
}
}
}
......@@ -2,6 +2,7 @@
using System.Collections.Generic;
using TUGraz.VectoCore.Exceptions;
using TUGraz.VectoCore.Models.Connector.Ports;
using TUGraz.VectoCore.Models.Simulation.Data;
using TUGraz.VectoCore.Models.SimulationComponent.Data;
using TUGraz.VectoCore.Utils;
......@@ -164,7 +165,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
{
var deltaEngineSpeed = engineSpeed - _previousState.EngineSpeed;
var avgEngineSpeed = (_previousState.EngineSpeed + engineSpeed) / 2.0;
return _data.Inertia*VectoMath.RpmTpAngularVelocity(deltaEngineSpeed)*VectoMath.RpmTpAngularVelocity(avgEngineSpeed);
return _data.Inertia * VectoMath.RpmTpAngularVelocity(deltaEngineSpeed) * VectoMath.RpmTpAngularVelocity(avgEngineSpeed);
}
// accelleration los rotation engine
......
using System;
using TUGraz.VectoCore.Models.Connector.Ports;
using TUGraz.VectoCore.Models.Simulation.Data;
namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
{
......
using Common.Logging;
using TUGraz.VectoCore.Models.Simulation.Data;
namespace TUGraz.VectoCore.Models.SimulationComponent
{
......
......@@ -68,24 +68,25 @@
<Compile Include="Models\Connector\Ports\Impl\TnOutPort.cs" />
<Compile Include="Models\Connector\Ports\IOutShaft.cs" />
<Compile Include="Models\Connector\Ports\ITnPort.cs" />
<Compile Include="Models\SimulationComponent\Data\EngineOnlyDrivingCycle.cs" />
<Compile Include="Models\SimulationComponent\Data\ModalResult.cs" />
<Compile Include="Models\SimulationComponent\Data\CombustionEngineData.cs" />
<Compile Include="Models\SimulationComponent\Data\Engine\FuelConsumptionMap.cs" />
<Compile Include="Models\SimulationComponent\Data\Engine\FullLoadCurve.cs" />
<Compile Include="Models\SimulationComponent\Data\VectoCSVFile.cs" />
<Compile Include="Models\SimulationComponent\Data\SimulationComponentData.cs" />
<Compile Include="Models\SimulationComponent\ICombustionEngine.cs" />
<Compile Include="Models\Connector\Ports\IInPort.cs" />
<Compile Include="Models\SimulationComponent\IGearbox.cs" />
<Compile Include="Models\SimulationComponent\IModalDataWriter.cs" />
<Compile Include="Models\SimulationComponent\Impl\CombustionEngine.cs" />
<Compile Include="Models\SimulationComponent\Impl\Wheels.cs" />
<Compile Include="Models\Connector\Ports\IOutPort.cs" />
<Compile Include="Models\SimulationComponent\IWheels.cs" />
<Compile Include="Models\SimulationComponent\SimulationComponentData.cs" />
<Compile Include="Models\SimulationComponent\VectoSimulationComponent.cs" />
<Compile Include="Models\Simulation\Data\EngineOnlyDrivingCycle.cs" />
<Compile Include="Models\Simulation\Data\IModalDataWriter.cs" />
<Compile Include="Models\Simulation\Data\ModalResult.cs" />
<Compile Include="Models\Simulation\SimulationContainer.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Utils\DataRowExtensionMethods.cs" />
<Compile Include="Utils\VectoCSVFile.cs" />
<Compile Include="Utils\VectoMath.cs" />
<Compile Include="Utils\DelauneyMap.cs" />
<Compile Include="Utils\FloatingPointExtensionMethods.cs" />
......
......@@ -5,6 +5,7 @@ using System.Net.Security;
using System.Reflection;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using TUGraz.VectoCore.Models.Connector.Ports;
using TUGraz.VectoCore.Models.Simulation.Data;
using TUGraz.VectoCore.Models.SimulationComponent.Data;
using TUGraz.VectoCore.Models.SimulationComponent.Impl;
using TUGraz.VectoCore.Tests.Utils;
......
......@@ -13,8 +13,8 @@ namespace TUGraz.VectoCore.Tests.Models
[TestMethod]
public void TestMethod1()
{
var engineData = new CombustionEngineData().
var engine = new CombustionEngine();
var engineData = CombustionEngineData.ReadFromFile("TestData\\EngineOnly\\EngineMaps\\24t Coach.veng");
var engine = new CombustionEngine(engineData);
var simulationcontainer = new SimulationContainer();
......
using System;
using System.Data;
using TUGraz.VectoCore.Models.Simulation.Data;
using TUGraz.VectoCore.Models.SimulationComponent;
using TUGraz.VectoCore.Models.SimulationComponent.Data;
......
......@@ -68,6 +68,7 @@
</Choose>
<ItemGroup>
<Compile Include="Models\SimulationComponent\CombustionEngineTest.cs" />
<Compile Include="Models\UnitTest1.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment