Code development platform for open source projects from the European Union institutions :large_blue_circle: EU Login authentication by SMS will be completely phased out by mid-2025. To see alternatives please check here

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

AuxMap: Corrections for Tests

parent f7f43214
No related branches found
No related tags found
No related merge requests found
using System.Data;
using System.IO;
using System.Text;
using TUGraz.VectoCommon.Exceptions;
using TUGraz.VectoCommon.Utils;
using TUGraz.VectoCore.InputData.Impl;
using TUGraz.VectoCore.InputData.Reader.ComponentData;
......@@ -12,27 +13,31 @@ namespace TUGraz.VectoCore.InputData
{
public static void FillAuxiliaryDataInputData(AuxiliaryDataInputData auxData, string auxFile)
{
var stream = new StreamReader(auxFile);
stream.ReadLine(); // skip header "Transmission ration to engine rpm [-]"
auxData.TransmissionRatio = stream.ReadLine().IndulgentParse();
stream.ReadLine(); // skip header "Efficiency to engine [-]"
auxData.EfficiencyToEngine = stream.ReadLine().IndulgentParse();
stream.ReadLine(); // skip header "Efficiency auxiliary to supply [-]"
auxData.EfficiencyToSupply = stream.ReadLine().IndulgentParse();
try {
var stream = new StreamReader(auxFile);
stream.ReadLine(); // skip header "Transmission ration to engine rpm [-]"
auxData.TransmissionRatio = stream.ReadLine().IndulgentParse();
stream.ReadLine(); // skip header "Efficiency to engine [-]"
auxData.EfficiencyToEngine = stream.ReadLine().IndulgentParse();
stream.ReadLine(); // skip header "Efficiency auxiliary to supply [-]"
auxData.EfficiencyToSupply = stream.ReadLine().IndulgentParse();
var table = VectoCSVFile.ReadStream(new MemoryStream(Encoding.UTF8.GetBytes(stream.ReadToEnd())), source: auxFile);
foreach (DataRow row in table.Rows) {
if (AuxiliaryDataReader.HeaderIsValid(table.Columns)) {
row[AuxiliaryDataReader.Fields.MechPower] =
row.ParseDouble(AuxiliaryDataReader.Fields.MechPower).SI().Kilo.Watt.Value();
row[AuxiliaryDataReader.Fields.SupplyPower] =
row.ParseDouble(AuxiliaryDataReader.Fields.SupplyPower).SI().Kilo.Watt.Value();
} else {
row[1] = row.ParseDouble(1).SI().Kilo.Watt.Value();
row[2] = row.ParseDouble(2).SI().Kilo.Watt.Value();
var table = VectoCSVFile.ReadStream(new MemoryStream(Encoding.UTF8.GetBytes(stream.ReadToEnd())), source: auxFile);
foreach (DataRow row in table.Rows) {
if (AuxiliaryDataReader.HeaderIsValid(table.Columns)) {
row[AuxiliaryDataReader.Fields.MechPower] =
row.ParseDouble(AuxiliaryDataReader.Fields.MechPower).SI().Kilo.Watt.Value();
row[AuxiliaryDataReader.Fields.SupplyPower] =
row.ParseDouble(AuxiliaryDataReader.Fields.SupplyPower).SI().Kilo.Watt.Value();
} else {
row[1] = row.ParseDouble(1).SI().Kilo.Watt.Value();
row[2] = row.ParseDouble(2).SI().Kilo.Watt.Value();
}
}
auxData.DemandMap = table;
} catch (FileNotFoundException e) {
throw new VectoException("Auxiliary file not found: " + auxFile, e);
}
auxData.DemandMap = table;
}
}
}
\ No newline at end of file
......@@ -475,7 +475,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
var acceleration = Body[JsonKeys.DriverData_AccelerationCurve];
if (acceleration == null || EmptyOrInvalidFileName(acceleration.Value<string>())) {
return null;
// throw new VectoException("AccelerationCurve (VACC) required");
// throw new VectoException("AccelerationCurve (VACC) required");
}
try {
return ReadTableData(acceleration.Value<string>(), "DriverAccelerationCurve", true);
......@@ -627,7 +627,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
if (auxFile == null || EmptyOrInvalidFileName(auxFile.Value<string>())) {
continue;
}
AuxiliaryFileHelper.FillAuxiliaryDataInputData(auxData, auxFile.Value<string>());
AuxiliaryFileHelper.FillAuxiliaryDataInputData(auxData, Path.Combine(BasePath, auxFile.Value<string>()));
}
return retVal;
}
......
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