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 3ef9b38b authored by Markus Quaritsch's avatar Markus Quaritsch
Browse files

Pull request #314: Feature/VECTO-1731 declaration mode xev primary bus

Merge in VECTO/vecto-dev from VECTO/mq_vecto-dev:feature/VECTO-1731-declaration-mode-xev-primary-bus to develop

* commit '895c504e':
  adding fallback search in case the interpolate search finds an invalid ICE operating point
  serial hybrid strategy: use next gear in case gearbox is disengaged
  fixed IEPC and IHPC mockup runs
  inject IDeclarationCyclefactory into VectoMockupRunDataFactoryFactory
  error message in case no primary result can be found. extend results in VIF used for testcase
  added S2-HEV vif
  only calculate fuel factor (completed bus) if there are fuels in the primary bus - i.e. don't calculate for PEV
  override checking gears method for IEPC
  remove xml element in vif that's not allowed for PEV
  remove line with no contents
  updated user manual
parents c71736f7 895c504e
Branches
Tags
No related merge requests found
Showing
with 903 additions and 38 deletions
...@@ -63,7 +63,8 @@ In case a mandatory input field is empty, or the value provided by the user is i ...@@ -63,7 +63,8 @@ In case a mandatory input field is empty, or the value provided by the user is i
### 8 Save and Close ### 8 Save and Close
- **Save as JSON ...**:\ - **Save as JSON ...**:\
Saves the input data as completed bus job (JSON v7). Saves the input data as completed bus job (JSON v7).
Not the created files consist of the paths of the VIF and the completed input, to update edited fields the input has to be saved additionaly. Note: The created file consists of the paths of the VIF and the completed input relative to the created JSON (.vecto) file, to update edited fields the input has to be saved additionaly.
This option is only available if a step input was loaded, or the current input was already saved.
- **Save Input As ...**:\ - **Save Input As ...**:\
Saves the input of the current step to a new file. Saves the input of the current step to a new file.
......
This diff is collapsed.
docker build -t ubuntu_pandoc . docker build -t ubuntu_pandoc .
docker run --rm --volume /mnt/c/Users/Harry/source/repos/hm_vecto-dev/Documentation/MultiStepTool:/documentation --entrypoint /documentation/convert.sh ubuntu_pandoc
SCRIPT=$(readlink -f "$0")
# Absolute path this script is in, thus /home/user/bin
SCRIPTPATH=$(dirname "$SCRIPT")
echo $SCRIPTPATH
docker run --rm --volume $SCRIPTPATH:/documentation --entrypoint /documentation/convert.sh ubuntu_pandoc
...@@ -12,11 +12,14 @@ cd documentation ...@@ -12,11 +12,14 @@ cd documentation
declare -a FILES declare -a FILES
mapfile -t FILES < files.txt mapfile -t FILES < files.txt
cat files.txt cat files.txt
echo "\n"
echo "Running pandoc with these input files" echo "Running pandoc with these input files"
echo "${FILES[@]}" echo "${FILES[@]}\n"
OUTPUTFILE="MultiStepToolHelp.html"
OUTPUTFILE="MultiStepToolHelp.html"
echo "Start conversion"
#pandoc --verbose -f markdown+raw_html %LIST% -s -S --toc --toc-depth=2 --self-contained --email-obfuscation=none --section-divs --webtex -c includes/style.css -c includes/print.css -B includes/header.html -A includes/footer.html -o HashingToolHelp.html -H includes/jquery.js -H includes/jquery-ui.js -H includes/include.js #pandoc --verbose -f markdown+raw_html %LIST% -s -S --toc --toc-depth=2 --self-contained --email-obfuscation=none --section-divs --webtex -c includes/style.css -c includes/print.css -B includes/header.html -A includes/footer.html -o HashingToolHelp.html -H includes/jquery.js -H includes/jquery-ui.js -H includes/include.js
pandoc --verbose -f markdown+raw_html ${FILES[@]} -s -S --toc --toc-depth=2 --self-contained --email-obfuscation=none --section-divs --webtex -c includes/style.css -c includes/print.css -B includes/header.html -A includes/footer.html -o $OUTPUTFILE -H includes/jquery.js -H includes/jquery-ui.js -H includes/include.js pandoc --verbose -f markdown+raw_html ${FILES[@]} -s -S --toc --toc-depth=2 --self-contained --email-obfuscation=none --section-divs --webtex -c includes/style.css -c includes/print.css -B includes/header.html -A includes/footer.html -o $OUTPUTFILE -H includes/jquery.js -H includes/jquery-ui.js -H includes/include.js
......
...@@ -4,6 +4,7 @@ using System.Linq; ...@@ -4,6 +4,7 @@ using System.Linq;
using System.Xml; using System.Xml;
using System.Xml.Linq; using System.Xml.Linq;
using Ninject; using Ninject;
using TUGraz.VectoCommon.Exceptions;
using TUGraz.VectoCommon.InputData; using TUGraz.VectoCommon.InputData;
using TUGraz.VectoCommon.Models; using TUGraz.VectoCommon.Models;
using TUGraz.VectoCommon.Resources; using TUGraz.VectoCommon.Resources;
...@@ -157,6 +158,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -157,6 +158,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
x => x.VehicleGroup == vehicleClass && x => x.VehicleGroup == vehicleClass &&
(x.SimulationParameter.Payload - payload).IsEqual(0, 1) && x.Mission == mission (x.SimulationParameter.Payload - payload).IsEqual(0, 1) && x.Mission == mission
).ToArray(); ).ToArray();
if (!matches.Any()) {
throw new VectoException($"No primary result found for {vehicleClass}, {mission}, {payload}");
}
if (matches.Length == 1) { if (matches.Length == 1) {
return matches.First(); return matches.First();
} }
......
...@@ -228,7 +228,7 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter.SimulationComponen ...@@ -228,7 +228,7 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter.SimulationComponen
} }
protected void CheckGearNumbers(IGearboxDeclarationInputData gbxInputData) protected virtual void CheckGearNumbers(IGearboxDeclarationInputData gbxInputData)
{ {
if (gbxInputData == null) { if (gbxInputData == null) {
return; return;
...@@ -565,6 +565,12 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter.SimulationComponen ...@@ -565,6 +565,12 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter.SimulationComponen
{ {
return CreateIEPCGearboxData(inputData, runData, shiftPolygonCalculator); return CreateIEPCGearboxData(inputData, runData, shiftPolygonCalculator);
} }
protected override void CheckGearNumbers(IGearboxDeclarationInputData gbxInputData)
{
// TODO?
}
#endregion #endregion
} }
......
...@@ -72,8 +72,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories ...@@ -72,8 +72,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories
protected virtual IEnumerable<VectoRunData> VectoRunDataHeavyBusCompleted() protected virtual IEnumerable<VectoRunData> VectoRunDataHeavyBusCompleted()
{ {
if (PrimaryVehicle.VehicleType == if (PrimaryVehicle.VehicleType.IsOneOf(VectoSimulationJobType.IEPC_E, VectoSimulationJobType.BatteryElectricVehicle)) {
VectoSimulationJobType.BatteryElectricVehicle) {
foreach (var vectoRunData in CreateVectoRunDataForMissions(0, "")) foreach (var vectoRunData in CreateVectoRunDataForMissions(0, ""))
yield return vectoRunData; yield return vectoRunData;
} else { } else {
......
...@@ -55,6 +55,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories ...@@ -55,6 +55,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories
case VectoSimulationJobType.ConventionalVehicle: case VectoSimulationJobType.ConventionalVehicle:
case VectoSimulationJobType.ParallelHybridVehicle: case VectoSimulationJobType.ParallelHybridVehicle:
case VectoSimulationJobType.SerialHybridVehicle: case VectoSimulationJobType.SerialHybridVehicle:
case VectoSimulationJobType.IHPC:
case VectoSimulationJobType.IEPC_S: case VectoSimulationJobType.IEPC_S:
return VectoRunDataConventionalHeavyBusPrimaryNonExempted(); return VectoRunDataConventionalHeavyBusPrimaryNonExempted();
case VectoSimulationJobType.IEPC_E: case VectoSimulationJobType.IEPC_E:
......
...@@ -22,7 +22,12 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories ...@@ -22,7 +22,12 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories
{ {
#region Implementation of IVectoRunDataFactoryFactory #region Implementation of IVectoRunDataFactoryFactory
private IDeclarationCycleFactory _cycleFactory;
public VectoMockUpRunDataFactoryFactory(IDeclarationCycleFactory cycleFactory)
{
_cycleFactory = cycleFactory;
}
public IVectoRunDataFactory CreateDeclarationRunDataFactory(IInputDataProvider inputDataProvider, public IVectoRunDataFactory CreateDeclarationRunDataFactory(IInputDataProvider inputDataProvider,
IDeclarationReport report, IDeclarationReport report,
...@@ -31,6 +36,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories ...@@ -31,6 +36,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories
if (inputDataProvider == null) if (inputDataProvider == null)
throw new ArgumentNullException(nameof(inputDataProvider)); throw new ArgumentNullException(nameof(inputDataProvider));
switch (inputDataProvider) switch (inputDataProvider)
{ {
case IVTPDeclarationInputDataProvider vtpProvider: case IVTPDeclarationInputDataProvider vtpProvider:
...@@ -55,7 +61,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories ...@@ -55,7 +61,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories
multiStepVifInputData, multiStepVifInputData,
report, new DeclarationDataAdapterSpecificCompletedBus.Conventional(), report, new DeclarationDataAdapterSpecificCompletedBus.Conventional(),
new DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.Conventional(), new DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.Conventional(),
null, null); _cycleFactory, null);
} }
else { else {
return new DeclarationModeMultistageBusVectoRunDataFactory(multiStepVifInputData, report); return new DeclarationModeMultistageBusVectoRunDataFactory(multiStepVifInputData, report);
...@@ -69,7 +75,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories ...@@ -69,7 +75,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories
if (vehicleCategory.IsLorry()) if (vehicleCategory.IsLorry())
{ {
return new MockupLorryVectoRunDataFactory(declDataProvider, report, new DeclarationDataAdapterHeavyLorry.Conventional(), return new MockupLorryVectoRunDataFactory(declDataProvider, report, new DeclarationDataAdapterHeavyLorry.Conventional(),
null, null); _cycleFactory, null);
} }
if (vehicleCategory.IsBus()) if (vehicleCategory.IsBus())
...@@ -81,7 +87,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories ...@@ -81,7 +87,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories
//return new DeclarationModeMultistageBusVectoRunDataFactory(declDataProvider, report); //return new DeclarationModeMultistageBusVectoRunDataFactory(declDataProvider, report);
case VehicleCategory.HeavyBusPrimaryVehicle: case VehicleCategory.HeavyBusPrimaryVehicle:
return new PrimaryBusMockupRunDataFactory(declDataProvider, report, new DeclarationDataAdapterPrimaryBus.Conventional(), return new PrimaryBusMockupRunDataFactory(declDataProvider, report, new DeclarationDataAdapterPrimaryBus.Conventional(),
null, null); _cycleFactory, null);
default: default:
break; break;
} }
......
...@@ -82,7 +82,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Strategies ...@@ -82,7 +82,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Strategies
var g = DataBus.GearboxInfo as Gearbox ?? throw new VectoException("AMT Gearbox Required!"); var g = DataBus.GearboxInfo as Gearbox ?? throw new VectoException("AMT Gearbox Required!");
TestPowertrain.Gearbox.Disengaged = g.Disengaged; TestPowertrain.Gearbox.Disengaged = g.Disengaged;
TestPowertrain.Gearbox.DisengageGearbox = g.DisengageGearbox; TestPowertrain.Gearbox.DisengageGearbox = g.DisengageGearbox;
TestPowertrain.Gearbox.Gear = DataBus.VehicleInfo.VehicleStopped ? g.NextGear : DataBus.GearboxInfo.Gear; TestPowertrain.Gearbox.Gear = DataBus.VehicleInfo.VehicleStopped || g.Disengaged ? g.NextGear : DataBus.GearboxInfo.Gear;
TestPowertrain.Gearbox._nextGear = g.NextGear; TestPowertrain.Gearbox._nextGear = g.NextGear;
} }
...@@ -699,6 +699,8 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Strategies ...@@ -699,6 +699,8 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Strategies
var tmp = TestGenSet.ElectricMotor.Request(absTime, dt, 0.SI<NewtonMeter>(), iceSpeed, true) as ResponseDryRun; var tmp = TestGenSet.ElectricMotor.Request(absTime, dt, 0.SI<NewtonMeter>(), iceSpeed, true) as ResponseDryRun;
delta = tmp.DeltaFullLoad; delta = tmp.DeltaFullLoad;
} }
var origIceSpeed = iceSpeed;
iceSpeed = SearchAlgorithm.Search(iceSpeed, delta, iceSpeed * 0.01, iceSpeed = SearchAlgorithm.Search(iceSpeed, delta, iceSpeed * 0.01,
getYValue: r => { getYValue: r => {
var dryRun = r as ResponseDryRun; var dryRun = r as ResponseDryRun;
...@@ -716,6 +718,28 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Strategies ...@@ -716,6 +718,28 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Strategies
return searchFullLoad ? dryRun.DeltaFullLoad.Value() : dryRun.DeltaDragLoad.Value(); return searchFullLoad ? dryRun.DeltaFullLoad.Value() : dryRun.DeltaDragLoad.Value();
}, },
searcher: this); searcher: this);
if (!iceSpeed.IsBetween(DataBus.EngineInfo.EngineIdleSpeed, DataBus.EngineInfo.EngineN95hSpeed)) {
iceSpeed = SearchAlgorithm.Search(origIceSpeed, delta, origIceSpeed * 0.01,
getYValue: r => {
var dryRun = r as ResponseDryRun;
return searchFullLoad ? dryRun.DeltaFullLoad : dryRun.DeltaDragLoad;
},
evaluateFunction: x => {
var tmp = TestGenSet.ElectricMotor.Request(absTime, dt, 0.SI<NewtonMeter>(), x, true);
tmpEmTqDt = tqDt?.LimitTo(tmp.ElectricMotor.MaxDriveTorque ?? 0.SI<NewtonMeter>(),
tmp.ElectricMotor.MaxRecuperationTorque ?? 0.SI<NewtonMeter>());
TestGenSet.ElectricMotorCtl.EMTorque = tmpEmTqDt;
return TestGenSet.ElectricMotor.Request(absTime, dt, 0.SI<NewtonMeter>(), x, true);
},
criterion: r => {
var dryRun = r as ResponseDryRun;
return searchFullLoad ? dryRun.DeltaFullLoad.Value() : dryRun.DeltaDragLoad.Value();
},
searcher: this, forceLineSearch: true);
}
if (!iceSpeed.IsBetween(DataBus.EngineInfo.EngineIdleSpeed, DataBus.EngineInfo.EngineN95hSpeed)) {
throw new VectoException("failed to find ICE speed for GenSet");
}
emTqDt = tmpEmTqDt; emTqDt = tmpEmTqDt;
TestGenSet.ElectricMotorCtl.EMTorque = emTqDt; TestGenSet.ElectricMotorCtl.EMTorque = emTqDt;
var r1 = TestGenSet.ElectricMotor.Request(absTime, dt, 0.SI<NewtonMeter>(), iceSpeed); var r1 = TestGenSet.ElectricMotor.Request(absTime, dt, 0.SI<NewtonMeter>(), iceSpeed);
......
...@@ -196,20 +196,25 @@ namespace TUGraz.VectoCore.OutputData.XML ...@@ -196,20 +196,25 @@ namespace TUGraz.VectoCore.OutputData.XML
DeclarationData.FuelData.Lookup(x, specific.VectoRunData.VehicleData.InputData.TankSystem)).ToList(); //specific.FuelData; DeclarationData.FuelData.Lookup(x, specific.VectoRunData.VehicleData.InputData.TankSystem)).ToList(); //specific.FuelData;
var co2Sum = 0.SI<Kilogram>(); var co2Sum = 0.SI<Kilogram>();
if (primary.EnergyConsumption != null && primary.EnergyConsumption.Any()) {
var fuel = specific.FuelData.First(); var fuel = specific.FuelData.First();
var fuelFactor = CalculateFactor(combinedResults, r => r.FuelConsumptionFinal(fuel.FuelType).TotalFuelConsumptionCorrected); var fuelFactor = CalculateFactor(combinedResults,
r => r.FuelConsumptionFinal(fuel.FuelType).TotalFuelConsumptionCorrected);
foreach (var entry in primary.EnergyConsumption) //generic.FuelData.Select(f => f.FuelType)) foreach (var entry in primary.EnergyConsumption) //generic.FuelData.Select(f => f.FuelType))
{ {
var energyDemand = fuelFactor * (entry.Value * specific.Distance); var energyDemand = fuelFactor * (entry.Value * specific.Distance);
var fuelConsumption = new CompletedBusFuelConsumption() var fuelConsumption = new CompletedBusFuelConsumption() {
{ Fuel = DeclarationData.FuelData.Lookup(entry.Key,
Fuel = DeclarationData.FuelData.Lookup(entry.Key, specific.VectoRunData.VehicleData.InputData.TankSystem), // specific.FuelData.Single(f => f.FuelType == fuel), specific.VectoRunData.VehicleData.InputData
.TankSystem), // specific.FuelData.Single(f => f.FuelType == fuel),
EnergyDemand = energyDemand, EnergyDemand = energyDemand,
}; };
co2Sum += fuelConsumption.TotalFuelConsumptionCorrected * fuelConsumption.Fuel.CO2PerFuelWeight; co2Sum += fuelConsumption.TotalFuelConsumptionCorrected * fuelConsumption.Fuel.CO2PerFuelWeight;
result.CorrectedFinalFuelConsumption.Add(entry.Key, fuelConsumption); result.CorrectedFinalFuelConsumption.Add(entry.Key, fuelConsumption);
} }
}
result.CO2Total = co2Sum; result.CO2Total = co2Sum;
......
...@@ -313,4 +313,3 @@ ...@@ -313,4 +313,3 @@
4.000 ,0.800 ,3.908 4.000 ,0.800 ,3.908
4.000 ,1.000 ,5.009 4.000 ,1.000 ,5.009
4.000 ,1.100 ,5.582 4.000 ,1.100 ,5.582
, ,
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<VectoOutputMultistep xmlns:di="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:vif="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1" xmlns:v1.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v1.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xmlns:v2.1="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.1" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" xmlns:v2.4="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.4" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1 V:\VectoCore\VectoCore\Resources\XSD/VectoOutputMultistep.0.1.xsd" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1"> <VectoOutputMultistep xmlns:di="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:vif="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1" xmlns:v1.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v1.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xmlns:v2.1="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.1" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" xmlns:v2.4="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.4" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1 V:\VectoCore\VectoCore\Resources\XSD/VectoOutputMultistep.0.1.xsd" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1">
<PrimaryVehicle> <PrimaryVehicle>
<Data id="VIF_P-c15b1005764d4741ae98" xsi:type="PrimaryVehicleDataType"> <Data id="VIF_P-c15b1005764d4741ae98" xsi:type="PrimaryVehicleDataType">
...@@ -429,7 +429,6 @@ ...@@ -429,7 +429,6 @@
<CompressorDrive>electrically</CompressorDrive> <CompressorDrive>electrically</CompressorDrive>
<SmartRegenerationSystem>false</SmartRegenerationSystem> <SmartRegenerationSystem>false</SmartRegenerationSystem>
<AirsuspensionControl>electronically</AirsuspensionControl> <AirsuspensionControl>electronically</AirsuspensionControl>
<PneumaticSCRReagentDosing>false</PneumaticSCRReagentDosing>
</PneumaticSystem> </PneumaticSystem>
<HVAC> <HVAC>
<AdjustableCoolantThermostat>true</AdjustableCoolantThermostat> <AdjustableCoolantThermostat>true</AdjustableCoolantThermostat>
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<VectoOutputMultistep xmlns:di="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:vif="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1" xmlns:v1.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v1.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xmlns:v2.1="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.1" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" xmlns:v2.4="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.4" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1 V:\VectoCore\VectoCore\Resources\XSD/VectoOutputMultistep.0.1.xsd" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1"> <VectoOutputMultistep xmlns:di="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:vif="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1" xmlns:v1.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v1.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xmlns:v2.1="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.1" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" xmlns:v2.4="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.4" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1 V:\VectoCore\VectoCore\Resources\XSD/VectoOutputMultistep.0.1.xsd" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1">
<PrimaryVehicle> <PrimaryVehicle>
<Data id="VIF_P-eed1f0ed412b4130bda1" xsi:type="PrimaryVehicleDataType"> <Data id="VIF_P-eed1f0ed412b4130bda1" xsi:type="PrimaryVehicleDataType">
...@@ -306,7 +306,6 @@ ...@@ -306,7 +306,6 @@
<CompressorDrive>electrically</CompressorDrive> <CompressorDrive>electrically</CompressorDrive>
<SmartRegenerationSystem>false</SmartRegenerationSystem> <SmartRegenerationSystem>false</SmartRegenerationSystem>
<AirsuspensionControl>electronically</AirsuspensionControl> <AirsuspensionControl>electronically</AirsuspensionControl>
<PneumaticSCRReagentDosing>false</PneumaticSCRReagentDosing>
</PneumaticSystem> </PneumaticSystem>
<HVAC> <HVAC>
<AdjustableCoolantThermostat>true</AdjustableCoolantThermostat> <AdjustableCoolantThermostat>true</AdjustableCoolantThermostat>
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<VectoOutputMultistep xmlns:di="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:vif="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1" xmlns:v1.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v1.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xmlns:v2.1="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.1" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" xmlns:v2.4="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.4" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1 V:\VectoCore\VectoCore\Resources\XSD/VectoOutputMultistep.0.1.xsd" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1"> <VectoOutputMultistep xmlns:di="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:vif="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1" xmlns:v1.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v1.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xmlns:v2.1="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.1" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" xmlns:v2.4="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.4" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1 V:\VectoCore\VectoCore\Resources\XSD/VectoOutputMultistep.0.1.xsd" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1">
<PrimaryVehicle> <PrimaryVehicle>
<Data id="VIF_P-f6219114ce4248989b7f" xsi:type="PrimaryVehicleDataType"> <Data id="VIF_P-f6219114ce4248989b7f" xsi:type="PrimaryVehicleDataType">
...@@ -272,7 +272,6 @@ ...@@ -272,7 +272,6 @@
<CompressorDrive>electrically</CompressorDrive> <CompressorDrive>electrically</CompressorDrive>
<SmartRegenerationSystem>false</SmartRegenerationSystem> <SmartRegenerationSystem>false</SmartRegenerationSystem>
<AirsuspensionControl>electronically</AirsuspensionControl> <AirsuspensionControl>electronically</AirsuspensionControl>
<PneumaticSCRReagentDosing>false</PneumaticSCRReagentDosing>
</PneumaticSystem> </PneumaticSystem>
<HVAC> <HVAC>
<AdjustableCoolantThermostat>true</AdjustableCoolantThermostat> <AdjustableCoolantThermostat>true</AdjustableCoolantThermostat>
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<VectoOutputMultistep xmlns:di="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:vif="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1" xmlns:v1.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v1.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xmlns:v2.1="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.1" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" xmlns:v2.4="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.4" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1 V:\VectoCore\VectoCore\Resources\XSD/VectoOutputMultistep.0.1.xsd" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1"> <VectoOutputMultistep xmlns:di="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:vif="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1" xmlns:v1.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v1.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xmlns:v2.1="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.1" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" xmlns:v2.4="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.4" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1 V:\VectoCore\VectoCore\Resources\XSD/VectoOutputMultistep.0.1.xsd" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1">
<PrimaryVehicle> <PrimaryVehicle>
<Data id="VIF_P-7198abf5d8364942a4ef" xsi:type="PrimaryVehicleDataType"> <Data id="VIF_P-7198abf5d8364942a4ef" xsi:type="PrimaryVehicleDataType">
...@@ -234,7 +234,6 @@ ...@@ -234,7 +234,6 @@
<CompressorDrive>electrically</CompressorDrive> <CompressorDrive>electrically</CompressorDrive>
<SmartRegenerationSystem>false</SmartRegenerationSystem> <SmartRegenerationSystem>false</SmartRegenerationSystem>
<AirsuspensionControl>electronically</AirsuspensionControl> <AirsuspensionControl>electronically</AirsuspensionControl>
<PneumaticSCRReagentDosing>false</PneumaticSCRReagentDosing>
</PneumaticSystem> </PneumaticSystem>
<HVAC> <HVAC>
<AdjustableCoolantThermostat>true</AdjustableCoolantThermostat> <AdjustableCoolantThermostat>true</AdjustableCoolantThermostat>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment