diff --git a/Generic Vehicles/Declaration Mode/12t Delivery Truck/12t Delivery Truck.vsum b/Generic Vehicles/Declaration Mode/12t Delivery Truck/12t Delivery Truck.vsum
index 650450f6bda30aa27adaeea9970c18e650e5f9dc..6b6d338f51cc22f5fe777cf257339af6f826023a 100644
--- a/Generic Vehicles/Declaration Mode/12t Delivery Truck/12t Delivery Truck.vsum	
+++ b/Generic Vehicles/Declaration Mode/12t Delivery Truck/12t Delivery Truck.vsum	
@@ -1,10 +1,10 @@
-Job [-],Input File [-],Cycle [-],time [s],distance [km],speed [km/h],∆altitude [m],Eaux_FAN [kWh],Eaux_PS [kWh],Eaux_STP [kWh],Eaux_ES [kWh],Eaux_AC [kWh],Ppos [kW],Pneg [kW],FC-Map [g/h],FC-Map [g/km],FC-AUXc [g/h],FC-AUXc [g/km],FC-WHTCc [g/h],FC-WHTCc [g/km],CO2 [g/km],CO2 [g/tkm],FC-Final [g/km],FC-Final [l/100tkm],FC-Final [l/100km],PwheelPos [kW],Pbrake [kW],EposICE [kWh],EnegICE [kWh],Eair [kWh],Eroll [kWh],Egrad [kWh],Eacc [kWh],Eaux [kWh],Ebrake [kWh],Etransm [kWh],Eretarder [kWh],Etorqueconv [kWh],Mass [kg],Loading [kg],a [m/s^2],a_pos [m/s^2],a_neg [m/s^2],Acc.Noise [m/s^2],pAcc [%],pDec [%],pCruise [%],pStop [%]
-1,12t Delivery Truck.vecto,Long_Haul.vdri,5245,108.1818,74.25249,0.4157933,1.36807084861729,1.71919436802467,0.323441670835018,2.58087303572231,0.291388893230922,68.828245691688,-0.295060687814728,13939.92,187.7368,-,-,14048.65,189.2011,597.8755,-,189.2011,-,22.74052,53.3331431698079,-0.951296060530201,100.278930181362,-0.429887029885625,-53.7217975638455,-21.602133366182,-0.00594433389811052,8.54700596796142E-08,-6.28296870787938,-1.38598551041136,-16.8502154708157,0,0,7750,0,-4.545636E-10,0.432781,-0.5312394,0.2062322,0.0528122,0.04080076,0.8602479,0.04613918
-1,12t Delivery Truck.vecto,Long_Haul.vdri,5275,108.1819,73.83029,0.4122985,1.37589584870471,1.7290277009209,0.32529167085886,2.59563494059775,0.293055559922424,76.5622784120409,-0.614272283445602,15413,208.7625,-,-,15533.22,210.3909,664.8351,160.2012,210.3909,6.09334,25.28736,61.6186144348343,-1.91622710570057,112.185005173199,-0.900079526437653,-53.1544755984918,-31.7773630401368,-0.0114676845291009,-1.97346089407802E-07,-6.31890561183294,-2.80780499515848,-17.2149103430079,0,0,7750,4150,-4.519783E-10,0.4081375,-0.4746179,0.1942435,0.05800948,0.05023697,0.8458768,0.04587678
-1,12t Delivery Truck.vecto,Long_Haul.vdri,5275,108.1819,73.83029,0.4122985,1.37589584870471,1.7290277009209,0.32529167085886,2.59563494059775,0.293055559922424,76.5622784120409,-0.614272283445602,15413,208.7625,-,-,15533.22,210.3909,664.8351,160.2012,210.3909,6.09334,25.28736,61.6186144348343,-1.91622710570057,112.185005173199,-0.900079526437653,-53.1544755984918,-31.7773630401368,-0.0114676845291009,-1.97346089407802E-07,-6.31890561183294,-2.80780499515848,-17.2149103430079,0,0,7750,4150,-4.519783E-10,0.4081375,-0.4746179,0.1942435,0.05800948,0.05023697,0.8458768,0.04587678
-1,12t Delivery Truck.vecto,Regional_Delivery.vdri,1614,25.8284,57.60981,-0.02431984,0.445643341243267,0.573866653839747,0.086080000748237,0.675702400803566,0.0896666680028041,50.7909131905911,-0.797100853631931,10468.67,181.7169,-,-,10474.96,181.8259,574.5698,-,181.8259,-,21.85407,38.7421929767676,-2.22326468906216,22.7712594137817,-0.357366882711649,-10.5392731322911,-5.12026773493323,0.00982296626605805,-9.36206844117906E-08,-1.87095907131831,-0.996763668929537,-3.89645460828311,0,0,7750,0,-1.181753E-09,0.4412237,-0.4665618,0.3421181,0.1356877,0.1363073,0.6592317,0.06877323
-1,12t Delivery Truck.vecto,Regional_Delivery.vdri,1601,25.82833,58.07744,-0.02466047,0.442053896735112,0.56924443172084,0.0853866674088769,0.670259940326214,0.08894444576982,57.1183613138151,-1.31937498487137,11644,200.4909,-,-,11650.98,200.6112,633.9313,212.4513,200.6112,8.080701,24.11192,45.2564961777524,-3.48985577706971,25.4018045731717,-0.586755375216405,-10.5381488821988,-6.86437743980024,-0.00891033948502607,-1.69340314136611E-08,-1.85588938858774,-1.5520164164135,-3.99571019759609,0,0,7750,2983.89,-1.191348E-09,0.4123022,-0.4458131,0.3330745,0.1599001,0.1505309,0.6202374,0.06933167
-1,12t Delivery Truck.vecto,Regional_Delivery.vdri,1596,25.82822,58.25913,-0.02519032,0.440673341155052,0.567466653982798,0.0851200007398923,0.668166686296463,0.088666667987903,59.7485341806347,-1.43185722428306,12153.25,208.6068,-,-,12160.54,208.7319,659.593,158.9381,208.7319,6.045294,25.08797,48.2545329701648,-4.11557962622185,26.4885168200814,-0.634790036098825,-10.6201652208182,-7.53199708029628,0.016459057985598,4.77504606048266E-08,-1.85009335676829,-1.82457363429169,-4.04335998408496,0,0,7750,4150,1.792621E-09,0.4045506,-0.4171267,0.3388702,0.1785714,0.1735589,0.5783208,0.06954888
-1,12t Delivery Truck.vecto,Urban_Delivery.vdri,3368,27.80735,29.72282,-0.05254004,0.826095570723216,1.23493338240518,0.174013337459829,1.30175874736574,0.140333338909679,25.1396036124622,-0.948524291315193,5488.629,184.6605,-,-,5438.134,182.9616,578.1586,-,182.9616,-,21.99057,17.7081874708226,-4.22752134668448,23.5194958241036,-0.887397170319325,-5.6845096131651,-5.51247593332082,0.00780685773504148,2.38746094206969E-07,-3.67713422351413,-3.95508108212037,-3.81072937223646,0,0,7750,0,-2.477628E-10,0.4752795,-0.5695276,0.4568766,0.1980404,0.1725059,0.442696,0.1867577
-1,12t Delivery Truck.vecto,Urban_Delivery.vdri,3310,27.808,30.24435,-0.0495902,0.811869459350904,1.21366671489345,0.1710166707221,1.27934128675196,0.137916672146983,30.4334581804059,-1.16748940845631,6470.452,213.9392,-,-,6410.924,211.971,669.8283,224.4816,211.971,8.538279,25.47728,22.8231003207788,-6.46084705161626,27.9818740492066,-1.07344165055288,-5.8964291196102,-7.39037906715646,0.0122275942189784,-7.76761832336585E-08,-3.6138106531567,-5.94038992801384,-4.07968345087022,0,0,7750,2983.89,6.122531E-10,0.5035743,-0.5390744,0.4479906,0.2042296,0.1930514,0.4126888,0.1900302
-1,12t Delivery Truck.vecto,Urban_Delivery.vdri,3338,27.80793,29.99057,-0.04992481,0.818737237254779,1.22393338196807,0.172463337423073,1.29016350911723,0.139083338860008,32.0389942091836,-1.24704237898322,6760.725,225.4283,-,-,6698.526,223.3544,705.7999,170.0723,223.3544,6.46879,26.84548,24.5009796861328,-7.27165439083808,29.7072674084041,-1.15628540584611,-5.91822867834686,-8.10917532677452,0.0240152537522711,1.55775083435906E-07,-3.6443806526396,-6.74243954350486,-4.16080814222081,0,0,7750,4150,-1.785639E-10,0.4881508,-0.5538294,0.4431113,0.2055123,0.1842421,0.4218095,0.1884362
+Job [-],Input File [-],Cycle [-],time [s],distance [km],speed [km/h],∆altitude [m],Eaux_FAN [kWh],Eaux_PS [kWh],Eaux_STP [kWh],Eaux_ES [kWh],Eaux_AC [kWh],Ppos [kW],Pneg [kW],FC-Map [g/h],FC-Map [g/km],FC-AUXc [g/h],FC-AUXc [g/km],FC-WHTCc [g/h],FC-WHTCc [g/km],CO2 [g/km],CO2 [g/tkm],FC-Final [g/km],FC-Final [l/100tkm],FC-Final [l/100km],PwheelPos [kW],Pbrake [kW],EposICE [kWh],EnegICE [kWh],Eair [kWh],Eroll [kWh],Egrad [kWh],Eacc [kWh],Eaux [kWh],Ebrake [kWh],Etransm [kWh],Eretarder [kWh],Etorqueconv [kWh],Mass [kg],Loading [kg],a [m/s^2],a_pos [m/s^2],a_neg [m/s^2],pAcc [%],pDec [%],pCruise [%],pStop [%]
+1,12t Delivery Truck.vecto,Long_Haul.vdri,5245,108.1818,74.25249,0.4157933,1.36807084861729,1.71919436802467,0.323441670835018,2.58087303572231,0.291388893230922,68.828245691688,-0.295060687814728,13939.92,187.7368,-,-,14048.65,189.2011,597.8755,-,189.2011,-,22.74052,53.3331431698079,-0.951296060530201,100.278930181362,-0.429887029885625,-53.7217975638455,-21.602133366182,-0.00594433389811052,8.54700596796142E-08,-6.28296870787938,-1.38598551041136,-16.8502154708157,0,0,7750,0,-4.545636E-10,0.432781,-0.5312394,0.0528122,0.04080076,0.8602479,0.04613918
+1,12t Delivery Truck.vecto,Long_Haul.vdri,5275,108.1819,73.83029,0.4122985,1.37589584870471,1.7290277009209,0.32529167085886,2.59563494059775,0.293055559922424,76.5622784120409,-0.614272283445602,15413,208.7625,-,-,15533.22,210.3909,664.8351,160.2012,210.3909,6.09334,25.28736,61.6186144348343,-1.91622710570057,112.185005173199,-0.900079526437653,-53.1544755984918,-31.7773630401368,-0.0114676845291009,-1.97346089407802E-07,-6.31890561183294,-2.80780499515848,-17.2149103430079,0,0,7750,4150,-4.519783E-10,0.4081375,-0.4746179,0.05800948,0.05023697,0.8458768,0.04587678
+1,12t Delivery Truck.vecto,Long_Haul.vdri,5275,108.1819,73.83029,0.4122985,1.37589584870471,1.7290277009209,0.32529167085886,2.59563494059775,0.293055559922424,76.5622784120409,-0.614272283445602,15413,208.7625,-,-,15533.22,210.3909,664.8351,160.2012,210.3909,6.09334,25.28736,61.6186144348343,-1.91622710570057,112.185005173199,-0.900079526437653,-53.1544755984918,-31.7773630401368,-0.0114676845291009,-1.97346089407802E-07,-6.31890561183294,-2.80780499515848,-17.2149103430079,0,0,7750,4150,-4.519783E-10,0.4081375,-0.4746179,0.05800948,0.05023697,0.8458768,0.04587678
+1,12t Delivery Truck.vecto,Regional_Delivery.vdri,1614,25.8284,57.60981,-0.02431984,0.445643341243267,0.573866653839747,0.086080000748237,0.675702400803566,0.0896666680028041,50.7909131905911,-0.797100853631931,10468.67,181.7169,-,-,10474.96,181.8259,574.5698,-,181.8259,-,21.85407,38.7421929767676,-2.22326468906216,22.7712594137817,-0.357366882711649,-10.5392731322911,-5.12026773493323,0.00982296626605805,-9.36206844117906E-08,-1.87095907131831,-0.996763668929537,-3.89645460828311,0,0,7750,0,-1.181753E-09,0.4412237,-0.4665618,0.1356877,0.1363073,0.6592317,0.06877323
+1,12t Delivery Truck.vecto,Regional_Delivery.vdri,1601,25.82833,58.07744,-0.02466047,0.442053896735112,0.56924443172084,0.0853866674088769,0.670259940326214,0.08894444576982,57.1183613138151,-1.31937498487137,11644,200.4909,-,-,11650.98,200.6112,633.9313,212.4513,200.6112,8.080701,24.11192,45.2564961777524,-3.48985577706971,25.4018045731717,-0.586755375216405,-10.5381488821988,-6.86437743980024,-0.00891033948502607,-1.69340314136611E-08,-1.85588938858774,-1.5520164164135,-3.99571019759609,0,0,7750,2983.89,-1.191348E-09,0.4123022,-0.4458131,0.1599001,0.1505309,0.6202374,0.06933167
+1,12t Delivery Truck.vecto,Regional_Delivery.vdri,1596,25.82822,58.25913,-0.02519032,0.440673341155052,0.567466653982798,0.0851200007398923,0.668166686296463,0.088666667987903,59.7485341806347,-1.43185722428306,12153.25,208.6068,-,-,12160.54,208.7319,659.593,158.9381,208.7319,6.045294,25.08797,48.2545329701648,-4.11557962622185,26.4885168200814,-0.634790036098825,-10.6201652208182,-7.53199708029628,0.016459057985598,4.77504606048266E-08,-1.85009335676829,-1.82457363429169,-4.04335998408496,0,0,7750,4150,1.792621E-09,0.4045506,-0.4171267,0.1785714,0.1735589,0.5783208,0.06954888
+1,12t Delivery Truck.vecto,Urban_Delivery.vdri,3368,27.80735,29.72282,-0.05254004,0.826095570723216,1.23493338240518,0.174013337459829,1.30175874736574,0.140333338909679,25.1396036124622,-0.948524291315193,5488.629,184.6605,-,-,5438.134,182.9616,578.1586,-,182.9616,-,21.99057,17.7081874708226,-4.22752134668448,23.5194958241036,-0.887397170319325,-5.6845096131651,-5.51247593332082,0.00780685773504148,2.38746094206969E-07,-3.67713422351413,-3.95508108212037,-3.81072937223646,0,0,7750,0,-2.477628E-10,0.4752795,-0.5695276,0.1980404,0.1725059,0.442696,0.1867577
+1,12t Delivery Truck.vecto,Urban_Delivery.vdri,3310,27.808,30.24435,-0.0495902,0.811869459350904,1.21366671489345,0.1710166707221,1.27934128675196,0.137916672146983,30.4334581804059,-1.16748940845631,6470.452,213.9392,-,-,6410.924,211.971,669.8283,224.4816,211.971,8.538279,25.47728,22.8231003207788,-6.46084705161626,27.9818740492066,-1.07344165055288,-5.8964291196102,-7.39037906715646,0.0122275942189784,-7.76761832336585E-08,-3.6138106531567,-5.94038992801384,-4.07968345087022,0,0,7750,2983.89,6.122531E-10,0.5035743,-0.5390744,0.2042296,0.1930514,0.4126888,0.1900302
+1,12t Delivery Truck.vecto,Urban_Delivery.vdri,3338,27.80793,29.99057,-0.04992481,0.818737237254779,1.22393338196807,0.172463337423073,1.29016350911723,0.139083338860008,32.0389942091836,-1.24704237898322,6760.725,225.4283,-,-,6698.526,223.3544,705.7999,170.0723,223.3544,6.46879,26.84548,24.5009796861328,-7.27165439083808,29.7072674084041,-1.15628540584611,-5.91822867834686,-8.10917532677452,0.0240152537522711,1.55775083435906E-07,-3.6443806526396,-6.74243954350486,-4.16080814222081,0,0,7750,4150,-1.785639E-10,0.4881508,-0.5538294,0.2055123,0.1842421,0.4218095,0.1884362
diff --git a/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs b/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs
index 48bfc16afc31a6076008a7a0e67ba0c9f993bff2..4b96073226c7e4d99c9a9a30c305efb7d013691f 100644
--- a/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs
+++ b/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs
@@ -127,7 +127,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl
 				modContainer.WriteModalResults = WriteModalResults;
 				var current = i++;
 				var builder = new PowertrainBuilder(modContainer, (writer, mass, loading) =>
-					SumData.Write(d.IsEngineOnly, modContainer, d.JobName, string.Format("{0}-{1}", JobNumber, current),
+					SumData.Write(modContainer, d.JobName, string.Format("{0}-{1}", JobNumber, current),
 						d.Cycle.Name + Constants.FileExtensions.CycleFile, mass, loading));
 
 				VectoRun run;
diff --git a/VectoCore/Models/SimulationComponent/Data/CombustionEngineData.cs b/VectoCore/Models/SimulationComponent/Data/CombustionEngineData.cs
index bac0e8e43eae0509a91cca49a31aad8684260cdf..c1dfcbeefb20f04a4e489bcc0c64827dc652fcaf 100644
--- a/VectoCore/Models/SimulationComponent/Data/CombustionEngineData.cs
+++ b/VectoCore/Models/SimulationComponent/Data/CombustionEngineData.cs
@@ -29,6 +29,7 @@
 *   Martin Rexeis, rexeis@ivt.tugraz.at, IVT, Graz University of Technology
 */
 
+using System.Collections.Generic;
 using System.ComponentModel.DataAnnotations;
 using TUGraz.VectoCore.Configuration;
 using TUGraz.VectoCore.Models.SimulationComponent.Data.Engine;
diff --git a/VectoCore/OutputData/IModalDataContainer.cs b/VectoCore/OutputData/IModalDataContainer.cs
index bc1784efc38dd0eec219274277cf051321d97760..093d28a9efcf39ccc2f83d4deefc2ceb4aa8aa21 100644
--- a/VectoCore/OutputData/IModalDataContainer.cs
+++ b/VectoCore/OutputData/IModalDataContainer.cs
@@ -365,24 +365,18 @@ namespace TUGraz.VectoCore.OutputData
 			return data.TimeIntegral<Kilogram>(ModalResultField.FCFinal) * Physics.CO2PerFuelWeight / distance;
 		}
 
-		public static SI FuelConsumptionLiterPer100Kilometer(this IModalDataContainer data)
+		public static KilogramPerSecond FCMapPerSecond(this IModalDataContainer data)
 		{
-			var fcVolumePerMeter = data.FuelConsumptionPerMeter() / Physics.FuelDensity;
-			return fcVolumePerMeter.ConvertTo().Cubic.Dezi.Meter * 100.SI().Kilo.Meter;
+			return data.TimeIntegral<Kilogram>(ModalResultField.FCMap) / data.Duration();
 		}
 
-		public static KilogramPerSecond FuelConsumptionPerSecond(this IModalDataContainer data)
-		{
-			return data.TimeIntegral<Kilogram>(ModalResultField.FCFinal) / data.Duration();
-		}
-
-		public static KilogramPerMeter FuelConsumptionPerMeter(this IModalDataContainer data)
+		public static KilogramPerMeter FCMapPerMeter(this IModalDataContainer data)
 		{
 			var distance = data.Distance();
 			if (distance == null || distance.IsEqual(0)) {
 				return null;
 			}
-			return data.TimeIntegral<Kilogram>(ModalResultField.FCFinal) / distance;
+			return data.TimeIntegral<Kilogram>(ModalResultField.FCMap) / distance;
 		}
 
 		public static Watt EnginePowerNegativeAverage(this IModalDataContainer data)
diff --git a/VectoCore/OutputData/PDF/PDFDeclarationReport.cs b/VectoCore/OutputData/PDF/PDFDeclarationReport.cs
index d16fb92ac2ed0f35ca536ec0f136f6015c3f70f4..a4b721fa5d49082e99b398cb23bcf43c00b01398 100644
--- a/VectoCore/OutputData/PDF/PDFDeclarationReport.cs
+++ b/VectoCore/OutputData/PDF/PDFDeclarationReport.cs
@@ -113,7 +113,6 @@ namespace TUGraz.VectoCore.OutputData.PDF
 			var reader = new PdfReader(inputStream);
 			var stamper = new PdfStamper(reader, stream);
 
-
 			var pdfFields = stamper.AcroFields;
 			pdfFields.SetField("version", System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString());
 			pdfFields.SetField("Job", JobName);
@@ -130,7 +129,6 @@ namespace TUGraz.VectoCore.OutputData.PDF
 			pdfFields.SetField("GbxM", GearboxModel);
 			pdfFields.SetField("PageNr", string.Format("Page {0} of {1}", 1, missions.Count + 1));
 
-
 			var i = 1;
 			foreach (var results in missions.Values.OrderBy(m => m.Mission.MissionType)) {
 				pdfFields.SetField("Mission" + i, results.Mission.MissionType.ToString());
@@ -140,7 +138,7 @@ namespace TUGraz.VectoCore.OutputData.PDF
 				pdfFields.SetField("Loading" + i, results.Mission.RefLoad.ConvertTo().Ton.ToOutputFormat(1) + " t");
 				pdfFields.SetField("Speed" + i, data.Speed().ConvertTo().Kilo.Meter.Per.Hour.ToOutputFormat(1) + " km/h");
 
-				var fcLiterPer100Km = data.FuelConsumptionLiterPer100Kilometer();
+				var fcLiterPer100Km = data.FuelConsumptionFinalLiterPer100Kilometer();
 				pdfFields.SetField("FC" + i, fcLiterPer100Km.ToOutputFormat(1));
 
 				var loadingTon = results.Mission.RefLoad.ConvertTo().Ton;
@@ -205,7 +203,6 @@ namespace TUGraz.VectoCore.OutputData.PDF
 			pdfFields.SetField("PageNr", string.Format("Page {0} of {1}", currentPageNr, pageCount));
 			pdfFields.SetField("Mission", results.Mission.MissionType.ToString());
 
-
 			foreach (var pair in results.ModData) {
 				var loadingType = pair.Key;
 				var data = pair.Value;
@@ -216,12 +213,11 @@ namespace TUGraz.VectoCore.OutputData.PDF
 				pdfFields.SetField("Load" + loadAppendix, loadingTon.ToOutputFormat(1) + " t");
 				pdfFields.SetField("Speed" + loadAppendix, data.Speed().ConvertTo().Kilo.Meter.Per.Hour.ToOutputFormat(1));
 
-				var fcLiterPer100Km = data.FuelConsumptionLiterPer100Kilometer();
+				var fcLiterPer100Km = data.FuelConsumptionFinalLiterPer100Kilometer();
 				pdfFields.SetField("FCkm" + loadAppendix, fcLiterPer100Km.ToOutputFormat(1));
 				pdfFields.SetField("FCtkm" + loadAppendix,
 					loadingTon.IsEqual(0) ? "-" : (fcLiterPer100Km / loadingTon).ToOutputFormat(1));
 
-
 				var co2GrammPerKm = data.CO2PerMeter().ConvertTo().Gramm.Per.Kilo.Meter;
 				pdfFields.SetField("CO2km" + loadAppendix, co2GrammPerKm.ToOutputFormat(1));
 				pdfFields.SetField("CO2tkm" + loadAppendix,
diff --git a/VectoCore/OutputData/SummaryDataContainer.cs b/VectoCore/OutputData/SummaryDataContainer.cs
index f03fc55b2cd9e9321bbd02623c2811cd1990a08b..160c7aec22666e1fcfea2ecf86f91cc832f49714 100644
--- a/VectoCore/OutputData/SummaryDataContainer.cs
+++ b/VectoCore/OutputData/SummaryDataContainer.cs
@@ -123,8 +123,8 @@ namespace TUGraz.VectoCore.OutputData
 			}.Select(x => new DataColumn(x, typeof(SI))).ToArray());
 		}
 
-		public virtual void Write(bool isEngineOnly, IModalDataContainer data, string jobFileName, string jobName,
-			string cycleFileName, Kilogram vehicleMass, Kilogram vehicleLoading)
+		public virtual void Write(IModalDataContainer data, string jobFileName, string jobName, string cycleFileName,
+			Kilogram vehicleMass, Kilogram vehicleLoading)
 		{
 			var row = _table.NewRow();
 			_table.Rows.Add(row);
@@ -135,85 +135,77 @@ namespace TUGraz.VectoCore.OutputData
 			row[STATUS] = data.RunStatus;
 			row[TIME] = data.Duration();
 
-			if (isEngineOnly) {
-				row[PPOS] = data.EnginePowerPositiveAverage().ConvertTo().Kilo.Watt;
-				row[PNEG] = data.EnginePowerNegativeAverage().ConvertTo().Kilo.Watt;
-				row[FCMAP] = data.FuelConsumptionPerSecond().ConvertTo().Gramm.Per.Hour;
-				row[FCAUXC] = data.FuelConsumptionAuxStartStopCorrectedPerSecond().ConvertTo().Gramm.Per.Hour;
-				row[FCWHTCC] = data.FuelConsumptionWHTCCorrectedPerSecond().ConvertTo().Gramm.Per.Hour;
-				WriteAuxiliaries(data, row);
-			} else {
-				var distance = data.Distance();
-				if (distance != null) {
-					row[DISTANCE] = distance.ConvertTo().Kilo.Meter;
-				}
+			var fcfinal = data.FuelConsumptionFinal();
+			if (fcfinal != null) {
+				row[FCFINAL] = fcfinal.ConvertTo().Gramm.Per.Kilo.Meter;
+			}
+			row[FCFINAL_LITERPER100KM] = data.FuelConsumptionFinalLiterPer100Kilometer();
+			if (vehicleLoading != null && !vehicleLoading.IsEqual(0)) {
+				row[FCFINAL_LITERPER100TKM] = data.FuelConsumptionFinalLiterPer100Kilometer() / vehicleLoading.ConvertTo().Ton;
+			}
+			row[FCMAP] = data.FCMapPerSecond().ConvertTo().Gramm.Per.Hour;
 
-				var speed = data.Speed();
-				if (speed != null) {
-					row[SPEED] = speed.ConvertTo().Kilo.Meter.Per.Hour;
-				}
+			var fcMapPerMeter = data.FCMapPerMeter();
+			if (fcMapPerMeter != null) {
+				row[FCMAPKM] = fcMapPerMeter.ConvertTo().Gramm.Per.Kilo.Meter;
+			}
 
-				row[ALTITUDE_DELTA] = data.AltitudeDelta();
-				row[PPOS] = data.EnginePowerPositiveAverage().ConvertTo().Kilo.Watt;
-				row[PNEG] = data.EnginePowerNegativeAverage().ConvertTo().Kilo.Watt;
+			row[FCAUXC] = data.FuelConsumptionAuxStartStopCorrectedPerSecond().ConvertTo().Gramm.Per.Hour;
+			var fuelConsumptionAuxStartStopCorrected = data.FuelConsumptionAuxStartStopCorrected();
+			if (fuelConsumptionAuxStartStopCorrected != null) {
+				row[FCAUXCKM] = fuelConsumptionAuxStartStopCorrected.ConvertTo().Gramm.Per.Kilo.Meter;
+			}
+			row[FCWHTCC] = data.FuelConsumptionWHTCCorrectedPerSecond().ConvertTo().Gramm.Per.Hour;
+			var fuelConsumptionWHTCCorrected = data.FuelConsumptionWHTCCorrected();
+			if (fuelConsumptionWHTCCorrected != null) {
+				row[FCWHTCCKM] = fuelConsumptionWHTCCorrected.ConvertTo().Gramm.Per.Kilo.Meter;
+			}
 
-				var fcfinal = data.FuelConsumptionFinal();
-				if (fcfinal != null) {
-					row[FCFINAL] = fcfinal.ConvertTo().Gramm.Per.Kilo.Meter;
-				}
-				row[FCFINAL_LITERPER100KM] = data.FuelConsumptionFinalLiterPer100Kilometer();
+			var kilogramPerMeter = data.CO2PerMeter();
+			if (kilogramPerMeter != null) {
+				row[CO2KM] = kilogramPerMeter.ConvertTo().Gramm.Per.Kilo.Meter;
 				if (vehicleLoading != null && !vehicleLoading.IsEqual(0)) {
-					row[FCFINAL_LITERPER100TKM] = data.FuelConsumptionFinalLiterPer100Kilometer() / vehicleLoading.ConvertTo().Ton;
-				}
-				row[FCMAP] = data.FuelConsumptionPerSecond().ConvertTo().Gramm.Per.Hour;
-
-				var fuelConsumptionPerMeter = data.FuelConsumptionPerMeter();
-				if (fuelConsumptionPerMeter != null) {
-					row[FCMAPKM] = fuelConsumptionPerMeter.ConvertTo().Gramm.Per.Kilo.Meter;
-				}
-				row[FCAUXC] = data.FuelConsumptionAuxStartStopCorrectedPerSecond().ConvertTo().Gramm.Per.Hour;
-				var fuelConsumptionAuxStartStopCorrected = data.FuelConsumptionAuxStartStopCorrected();
-				if (fuelConsumptionAuxStartStopCorrected != null) {
-					row[FCAUXCKM] = fuelConsumptionAuxStartStopCorrected.ConvertTo().Gramm.Per.Kilo.Meter;
-				}
-				row[FCWHTCC] = data.FuelConsumptionWHTCCorrectedPerSecond().ConvertTo().Gramm.Per.Hour;
-				var fuelConsumptionWHTCCorrected = data.FuelConsumptionWHTCCorrected();
-				if (fuelConsumptionWHTCCorrected != null) {
-					row[FCWHTCCKM] = fuelConsumptionWHTCCorrected.ConvertTo().Gramm.Per.Kilo.Meter;
+					row[CO2TKM] = kilogramPerMeter.ConvertTo().Gramm.Per.Kilo.Meter / vehicleLoading.ConvertTo().Ton;
 				}
+			}
 
-				var kilogramPerMeter = data.CO2PerMeter();
-				if (kilogramPerMeter != null) {
-					row[CO2KM] = kilogramPerMeter.ConvertTo().Gramm.Per.Kilo.Meter;
-					if (vehicleLoading != null && !vehicleLoading.IsEqual(0)) {
-						row[CO2TKM] = kilogramPerMeter.ConvertTo().Gramm.Per.Kilo.Meter / vehicleLoading.ConvertTo().Ton;
-					}
-				}
+			var distance = data.Distance();
+			if (distance != null) {
+				row[DISTANCE] = distance.ConvertTo().Kilo.Meter;
+			}
 
-				row[PWHEELPOS] = data.PowerWheelPositive().ConvertTo().Kilo.Watt;
-				row[PBRAKE] = data.PowerBrake().ConvertTo().Kilo.Watt;
-				row[EPOSICE] = data.EngineWorkPositive().ConvertTo().Kilo.Watt.Hour;
-				row[ENEGICE] = data.EngineWorkNegative().ConvertTo().Kilo.Watt.Hour;
-				row[EAIR] = data.WorkAirResistance().ConvertTo().Kilo.Watt.Hour;
-				row[EROLL] = data.WorkRollingResistance().ConvertTo().Kilo.Watt.Hour;
-				row[EGRAD] = data.WorkRoadGradientResistance().ConvertTo().Kilo.Watt.Hour;
-				row[EACC] = data.PowerAccelerations().ConvertTo().Kilo.Watt.Hour;
-				row[EAUX] = data.WorkAuxiliaries().ConvertTo().Kilo.Watt.Hour;
-				WriteAuxiliaries(data, row);
-				row[EBRAKE] = data.WorkTotalMechanicalBrake().ConvertTo().Kilo.Watt.Hour;
-				row[ETRANSM] = data.WorkTransmission().ConvertTo().Kilo.Watt.Hour;
-				row[ERETARDER] = data.WorkRetarder().ConvertTo().Kilo.Watt.Hour;
-				row[ETORQUECONV] = data.WorkTorqueConverter().ConvertTo().Kilo.Watt.Hour;
-				row[MASS] = vehicleMass;
-				row[LOADING] = vehicleLoading;
-				row[ACCELERATIONS] = data.AccelerationAverage();
-				row[APOS] = data.AccelerationsPositive3SecondAverage();
-				row[ANEG] = data.AverageAccelerations3SecondNegative();
-				row[PACC] = data.PercentAccelerationTime();
-				row[PDEC] = data.PercentDecelerationTime();
-				row[PCRUISE] = data.PercentCruiseTime();
-				row[PSTOP] = data.PercentStopTime();
+			var speed = data.Speed();
+			if (speed != null) {
+				row[SPEED] = speed.ConvertTo().Kilo.Meter.Per.Hour;
 			}
+
+			row[ALTITUDE_DELTA] = data.AltitudeDelta();
+			row[PPOS] = data.EnginePowerPositiveAverage().ConvertTo().Kilo.Watt;
+			row[PNEG] = data.EnginePowerNegativeAverage().ConvertTo().Kilo.Watt;
+
+			row[PWHEELPOS] = data.PowerWheelPositive().ConvertTo().Kilo.Watt;
+			row[PBRAKE] = data.PowerBrake().ConvertTo().Kilo.Watt;
+			row[EPOSICE] = data.EngineWorkPositive().ConvertTo().Kilo.Watt.Hour;
+			row[ENEGICE] = data.EngineWorkNegative().ConvertTo().Kilo.Watt.Hour;
+			row[EAIR] = data.WorkAirResistance().ConvertTo().Kilo.Watt.Hour;
+			row[EROLL] = data.WorkRollingResistance().ConvertTo().Kilo.Watt.Hour;
+			row[EGRAD] = data.WorkRoadGradientResistance().ConvertTo().Kilo.Watt.Hour;
+			row[EACC] = data.PowerAccelerations().ConvertTo().Kilo.Watt.Hour;
+			row[EAUX] = data.WorkAuxiliaries().ConvertTo().Kilo.Watt.Hour;
+			WriteAuxiliaries(data, row);
+			row[EBRAKE] = data.WorkTotalMechanicalBrake().ConvertTo().Kilo.Watt.Hour;
+			row[ETRANSM] = data.WorkTransmission().ConvertTo().Kilo.Watt.Hour;
+			row[ERETARDER] = data.WorkRetarder().ConvertTo().Kilo.Watt.Hour;
+			row[ETORQUECONV] = data.WorkTorqueConverter().ConvertTo().Kilo.Watt.Hour;
+			row[MASS] = vehicleMass;
+			row[LOADING] = vehicleLoading;
+			row[ACCELERATIONS] = data.AccelerationAverage();
+			row[APOS] = data.AccelerationsPositive3SecondAverage();
+			row[ANEG] = data.AverageAccelerations3SecondNegative();
+			row[PACC] = data.PercentAccelerationTime();
+			row[PDEC] = data.PercentDecelerationTime();
+			row[PCRUISE] = data.PercentCruiseTime();
+			row[PSTOP] = data.PercentStopTime();
 		}
 
 		private static string ReplaceNotAllowedCharacters(string text)
diff --git a/VectoCore/Utils/VectoCSVFile.cs b/VectoCore/Utils/VectoCSVFile.cs
index 487d8f4f722331580ed5143cebf1f9287501ddb3..111e0cedb6b38de1a40ff4c9f9fd9507d81639b0 100644
--- a/VectoCore/Utils/VectoCSVFile.cs
+++ b/VectoCore/Utils/VectoCSVFile.cs
@@ -32,8 +32,6 @@
 using System;
 using System.Collections.Generic;
 using System.Data;
-using System.Diagnostics;
-using System.Diagnostics.Contracts;
 using System.Globalization;
 using System.IO;
 using System.Linq;
diff --git a/VectoCoreTest/Integration/CoachPowerTrain.cs b/VectoCoreTest/Integration/CoachPowerTrain.cs
index a20f1110c9e0c697ee7830e83c504466e039c980..2427a1e53a9de6d50954a75e5063dde8e9e9af82 100644
--- a/VectoCoreTest/Integration/CoachPowerTrain.cs
+++ b/VectoCoreTest/Integration/CoachPowerTrain.cs
@@ -60,7 +60,6 @@ namespace TUGraz.VectoCore.Tests.Integration
 			bool overspeed = false)
 		{
 			var container = CreatePowerTrain(cycleData, modFileName.Replace(".vmod", ""), overspeed);
-
 			return new DistanceRun(container);
 		}
 
diff --git a/VectoCoreTest/Models/Simulation/AuxTests.cs b/VectoCoreTest/Models/Simulation/AuxTests.cs
index e43ec5bbea9d84624e44af3491ff1d50af950f4d..d44a38ce62fcc08cb4ee11ffa3e0d5cea86ca218 100644
--- a/VectoCoreTest/Models/Simulation/AuxTests.cs
+++ b/VectoCoreTest/Models/Simulation/AuxTests.cs
@@ -29,8 +29,6 @@
 *   Martin Rexeis, rexeis@ivt.tugraz.at, IVT, Graz University of Technology
 */
 
-using System.Configuration;
-using System.Linq;
 using TUGraz.VectoCore.Utils;
 using TUGraz.VectoCore.Exceptions;
 using TUGraz.VectoCore.Tests.Utils;
@@ -52,6 +50,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 	{
 		[TestMethod]
 		public void AuxWriteModFileSumFile()
+
 		{
 			var fileWriter = new FileOutputWriter("AuxWriteModFileSumFile", "");
 			var modData = new ModalDataContainer("AuxWriteModFileSumFile", fileWriter);
@@ -63,7 +62,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 
 			var sumWriter = new SummaryDataContainer(fileWriter);
 			var container = new VehicleContainer(modData,
-				(writer, mass, loading) => sumWriter.Write(false, modData, "", "", "", null, null));
+				(writer, mass, loading) => sumWriter.Write(modData, "", "", "", null, null));
 			var data = DrivingCycleDataReader.ReadFromFile(@"TestData\Cycles\LongHaul_short.vdri", CycleType.DistanceBased, false);
 			var mockcycle = new MockDrivingCycle(container, data);
 
diff --git a/VectoCoreTest/Models/Simulation/SimulationTests.cs b/VectoCoreTest/Models/Simulation/SimulationTests.cs
index 6fd36bdd958b79b7be8396f0e232da3c6bbfcfe1..1323120cba0701d0c50f4bb9679fa10ab826c107 100644
--- a/VectoCoreTest/Models/Simulation/SimulationTests.cs
+++ b/VectoCoreTest/Models/Simulation/SimulationTests.cs
@@ -71,7 +71,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 
 		private class MockSumWriter : SummaryDataContainer
 		{
-			public override void Write(bool isEngineOnly, IModalDataContainer data, string jobFileName, string jobName,
+			public override void Write(IModalDataContainer data, string jobFileName, string jobName,
 				string cycleFileName, Kilogram vehicleMass, Kilogram vehicleLoading) {}
 
 			public override void Finish() {}
diff --git a/VectoCoreTest/Reports/SumWriterTest.cs b/VectoCoreTest/Reports/SumWriterTest.cs
index db7f43b901df33dc2e5c995210a0dcd62692b058..dd38b28c7ec6eeed2ab9f2bfe51a8a8c614541a1 100644
--- a/VectoCoreTest/Reports/SumWriterTest.cs
+++ b/VectoCoreTest/Reports/SumWriterTest.cs
@@ -29,7 +29,6 @@
 *   Martin Rexeis, rexeis@ivt.tugraz.at, IVT, Graz University of Technology
 */
 
-using System.Linq;
 using Microsoft.VisualStudio.TestTools.UnitTesting;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.Models.Simulation.Impl;
@@ -48,7 +47,7 @@ namespace TUGraz.VectoCore.Tests.Reports
 			var writer = new FileOutputWriter("testsumcalc_fixed", "");
 			var sumWriter = new SummaryDataContainer(writer);
 
-			var modData = new ModalDataContainer("testsumcalc_fixed", writer); //("testsumcalc_fixed.vmod");
+			var modData = new ModalDataContainer("testsumcalc_fixed", writer);
 			modData.AddAuxiliary("FAN");
 
 			for (var i = 0; i < 500; i++) {
@@ -71,7 +70,7 @@ namespace TUGraz.VectoCore.Tests.Reports
 				modData.CommitSimulationStep();
 			}
 
-			sumWriter.Write(false, modData, "testSumCalc", "--", "--", 0.SI<Kilogram>(), 0.SI<Kilogram>());
+			sumWriter.Write(modData, "testSumCalc", "--", "--", 0.SI<Kilogram>(), 0.SI<Kilogram>());
 
 			modData.Finish(VectoRun.Status.Success);
 			sumWriter.Finish();
@@ -107,23 +106,23 @@ namespace TUGraz.VectoCore.Tests.Reports
 			{ 1000.SI<Watt>(), 1500.SI<Watt>(), 2000.SI<Watt>(), 2500.SI<Watt>(), 3000.SI<Watt>() };
 
 			for (var i = 0; i < 500; i++) {
-				modData[ModalResultField.simulationInterval] = timeSteps[i % timeSteps.Count()];
+				modData[ModalResultField.simulationInterval] = timeSteps[i % timeSteps.Length];
 				modData[ModalResultField.time] = i.SI<Second>();
 				modData[ModalResultField.dist] = i.SI<Meter>();
-				modData["FAN"] = powerDemand[i % powerDemand.Count()];
-				modData[ModalResultField.P_air] = powerDemand[i % powerDemand.Count()];
-				modData[ModalResultField.P_roll] = powerDemand[i % powerDemand.Count()];
-				modData[ModalResultField.P_slope] = powerDemand[i % powerDemand.Count()];
-				modData[ModalResultField.P_aux] = powerDemand[i % powerDemand.Count()];
-				modData[ModalResultField.P_brake_loss] = powerDemand[i % powerDemand.Count()];
+				modData["FAN"] = powerDemand[i % powerDemand.Length];
+				modData[ModalResultField.P_air] = powerDemand[i % powerDemand.Length];
+				modData[ModalResultField.P_roll] = powerDemand[i % powerDemand.Length];
+				modData[ModalResultField.P_slope] = powerDemand[i % powerDemand.Length];
+				modData[ModalResultField.P_aux] = powerDemand[i % powerDemand.Length];
+				modData[ModalResultField.P_brake_loss] = powerDemand[i % powerDemand.Length];
 
 				modData[ModalResultField.altitude] = 0.SI<Meter>();
 				modData[ModalResultField.acc] = 0.SI<MeterPerSquareSecond>();
-				modData[ModalResultField.P_eng_out] = (i % 2 == 0 ? 1 : -1) * powerDemand[i % powerDemand.Count()];
+				modData[ModalResultField.P_eng_out] = (i % 2 == 0 ? 1 : -1) * powerDemand[i % powerDemand.Length];
 				modData.CommitSimulationStep();
 			}
 
-			sumWriter.Write(false, modData, "testSumCalc", "--", "--", 0.SI<Kilogram>(), 0.SI<Kilogram>());
+			sumWriter.Write(modData, "testSumCalc", "--", "--", 0.SI<Kilogram>(), 0.SI<Kilogram>());
 
 			modData.Finish(VectoRun.Status.Success);
 			sumWriter.Finish();