diff --git a/VectoCore/Models/Simulation/Data/IModalDataWriter.cs b/VectoCore/Models/Simulation/Data/IModalDataWriter.cs
index b93a4815a09cc9447230dec0519624629478d1d1..fa3c9c3a9d945c27cb7dd97f8d36dcf050b72cff 100644
--- a/VectoCore/Models/Simulation/Data/IModalDataWriter.cs
+++ b/VectoCore/Models/Simulation/Data/IModalDataWriter.cs
@@ -13,6 +13,8 @@ namespace TUGraz.VectoCore.Models.Simulation.Data
 		/// <returns></returns>
 		object this[ModalResultField key] { get; set; }
 
+		bool HasTorqueConverter { get; set; }
+
 		/// <summary>
 		///     Commits the data of the current simulation step.
 		/// </summary>
diff --git a/VectoCore/Models/Simulation/Data/ModalDataWriter.cs b/VectoCore/Models/Simulation/Data/ModalDataWriter.cs
index 86b3fdda83b94565d08d3f5d7c9daaae12723669..4e947fed36e13510b4a5bebd3784ccf1c6dff8ae 100644
--- a/VectoCore/Models/Simulation/Data/ModalDataWriter.cs
+++ b/VectoCore/Models/Simulation/Data/ModalDataWriter.cs
@@ -15,12 +15,15 @@ namespace TUGraz.VectoCore.Models.Simulation.Data
 
 		public ModalDataWriter(string modFileName, bool engineOnly)
 		{
+			HasTorqueConverter = false;
 			ModFileName = modFileName;
 			Data = new ModalResults();
 			CurrentRow = Data.NewRow();
 			_engineOnly = engineOnly;
 		}
 
+		public bool HasTorqueConverter { get; set; }
+
 		public void CommitSimulationStep()
 		{
 			Data.Rows.Add(CurrentRow);
@@ -71,13 +74,14 @@ namespace TUGraz.VectoCore.Models.Simulation.Data
 					ModalResultField.Pbrake
 				});
 
-				//todo only add if (GBX.TCon)
-				dataColumns.AddRange(new[] {
-					ModalResultField.TCν,
-					ModalResultField.TCmu,
-					ModalResultField.TC_M_Out,
-					ModalResultField.TC_n_Out
-				});
+				if (HasTorqueConverter) {
+					dataColumns.AddRange(new[] {
+						ModalResultField.TCν,
+						ModalResultField.TCmu,
+						ModalResultField.TC_M_Out,
+						ModalResultField.TC_n_Out
+					});
+				}
 
 				//todo: auxiliaries
 			}
diff --git a/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs b/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs
index 5015f3f24d5f168bc6041502492f42274f7e2cc9..97ff0a9af0aaa9c081f76abf0ed8f195be495157 100644
--- a/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs
+++ b/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs
@@ -105,10 +105,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl
 
 			public IVectoSimulator Build(string cycleFile)
 			{
-				if (_engineOnly) {
-					return BuildEngineOnly(cycleFile);
-				}
-				return BuildFullPowertrain(cycleFile);
+				return _engineOnly ? BuildEngineOnly(cycleFile) : BuildFullPowertrain(cycleFile);
 			}
 
 			private IVectoSimulator BuildFullPowertrain(string cycleFile)
@@ -189,6 +186,12 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl
 
 			public void AddGearbox(string gearboxFile)
 			{
+				var gearboxData = GearboxData.ReadFromFile(gearboxFile);
+				_axleGear = new AxleGear(gearboxData.AxleGearData);
+
+				_dataWriter.HasTorqueConverter = gearboxData.HasTorqueConverter;
+
+				//todo init gearbox with gearbox data
 				_gearBox = new Gearbox(_container);
 			}
 
diff --git a/VectoCore/Models/SimulationComponent/Data/GearboxData.cs b/VectoCore/Models/SimulationComponent/Data/GearboxData.cs
index b88942c9574bb2140a42b2662da2a24334f34af9..322b4e54fde31c61a8c2dfddff78a31519132a41 100644
--- a/VectoCore/Models/SimulationComponent/Data/GearboxData.cs
+++ b/VectoCore/Models/SimulationComponent/Data/GearboxData.cs
@@ -96,7 +96,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 			gearboxData._data = d;
 
 			for (uint i = 0; i < d.Body.Gears.Count; i++) {
-				var gearSettings = d.Body.Gears[(int) i];
+				var gearSettings = d.Body.Gears[(int)i];
 				var lossMapPath = Path.Combine(basePath, gearSettings.LossMap);
 				TransmissionLossMap lossMap = TransmissionLossMap.ReadFromFile(lossMapPath, gearSettings.Ratio);
 
@@ -206,7 +206,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 		public SI Inertia
 		{
 			get { return _data.Body.Inertia.SI().Kilo.Gramm.Square.Meter; }
-			protected set { _data.Body.Inertia = (double) value.ConvertTo().Kilo.Gramm.Square.Meter; }
+			protected set { _data.Body.Inertia = (double)value.ConvertTo().Kilo.Gramm.Square.Meter; }
 		}
 
 		/// <summary>
@@ -263,6 +263,11 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 			protected set { _data.Body.StartAcceleration = value; }
 		}
 
+		public bool HasTorqueConverter
+		{
+			get { return _data.Body.TorqueConverter != null; }
+		}
+
 
 		/// <summary>
 		///		A class which represents the json data format for serializing and deseralizing the GearboxData files
diff --git a/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs b/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs
index 6dac5b39f0f65e31b6ec79e471d50ed855440d0d..3596d58395d749c7f9507433595022d3bf379f70 100644
--- a/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs
+++ b/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs
@@ -18,7 +18,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 		[TestMethod]
 		public void AxleGearTest()
 		{
-			VehicleContainer vehicle = new VehicleContainer();
+			var vehicle = new VehicleContainer();
 			var gbxData = GearboxData.ReadFromFile(GearboxDataFile);
 			//GearData gearData = new GearData();
 			var axleGear = new AxleGear(gbxData.AxleGearData);
diff --git a/VectoCoreTest/Utils/TestModalDataWriter.cs b/VectoCoreTest/Utils/TestModalDataWriter.cs
index 18df84d85194860c1aa63a93a02f4a5148419b9b..a9e4d8ccc6f0de77b9b61d9e2889ce1886b54c78 100644
--- a/VectoCoreTest/Utils/TestModalDataWriter.cs
+++ b/VectoCoreTest/Utils/TestModalDataWriter.cs
@@ -20,6 +20,8 @@ namespace TUGraz.VectoCore.Tests.Utils
 		public ModalResults Data { get; set; }
 		public DataRow CurrentRow { get; set; }
 
+		public bool HasTorqueConverter { get; set; }
+
 		public void CommitSimulationStep()
 		{
 			Data.Rows.Add(CurrentRow);