diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs index b7e086c691c05902b8a21127210821d25f30a82f..f1b59dbac951fb73ca8b7b3ac66c63a8af1c77f0 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs @@ -599,7 +599,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider throw new VectoException("Medium lorries with type Van require the input parameter cargo volume!"); } return ElementExists(XMLNames.Vehicle_CargoVolume) ? GetDouble(XMLNames.Vehicle_CargoVolume).SI<CubicMeter>() - : 0.SI<CubicMeter>(); + : null; } } @@ -1164,6 +1164,16 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider IXMLDeclarationJobInputData jobData, XmlNode xmlNode, string sourceFile) : base(jobData, xmlNode, sourceFile) { } + #region Overrides of XMLDeclarationVehicleDataProviderV20 + + public override TankSystem? TankSystem => + ElementExists(XMLNames.Vehicle_NgTankSystem) + ? EnumHelper.ParseEnum<TankSystem>(GetString(XMLNames.Vehicle_NgTankSystem)) + : (TankSystem?)null; + + #endregion + + #region Overrides of XMLDeclarationVehicleDataProviderV10 public override IList<ITorqueLimitInputData> TorqueLimits => @@ -1341,6 +1351,15 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider public XMLDeclarationHEVIEPCSHeavyLorryDataProviderV210(IXMLDeclarationJobInputData jobData, XmlNode xmlNode, string sourceFile) : base(jobData, xmlNode, sourceFile) { } + #region Overrides of XMLDeclarationVehicleDataProviderV20 + + public override TankSystem? TankSystem => + ElementExists(XMLNames.Vehicle_NgTankSystem) + ? EnumHelper.ParseEnum<TankSystem>(GetString(XMLNames.Vehicle_NgTankSystem)) + : (TankSystem?)null; + + #endregion + #region Overrides of XMLDeclarationVehicleDataProviderV10 public override CubicMeter CargoVolume => null; diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/Conventional_mediumLorry_AMT_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/Conventional_mediumLorry_AMT_n_opt.xml index fe3ba86b16d65e55ecd2d6fe42353c248342177f..1f9e89e3193af82c4e1b6da8f4f1f04793253fc4 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/Conventional_mediumLorry_AMT_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/Conventional_mediumLorry_AMT_n_opt.xml @@ -15,7 +15,6 @@ <RetarderType>None</RetarderType> <AngledriveType>None</AngledriveType> <ZeroEmissionVehicle>false</ZeroEmissionVehicle> - <NgTankSystem>Liquefied</NgTankSystem><!-- optional --> <VehicleTypeApprovalNumber>ASDF</VehicleTypeApprovalNumber> <ADAS xsi:type="ADAS_Conventional_Type"> <EngineStopStart>true</EngineStopStart> diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_AMT_S2_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_AMT_S2_n_opt.xml index 18e044c2178d8a008e03ada5191fb2ba5916cd75..07ff0af5a3d53431e7e5d66e61fc599e1741bce7 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_AMT_S2_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_AMT_S2_n_opt.xml @@ -20,7 +20,6 @@ </PTO> <ZeroEmissionVehicle>false</ZeroEmissionVehicle> <VocationalVehicle>false</VocationalVehicle> - <NgTankSystem>Liquefied</NgTankSystem><!-- optional --> <SleeperCab>false</SleeperCab> <VehicleTypeApprovalNumber>ASDF</VehicleTypeApprovalNumber> <ArchitectureID>S2</ArchitectureID> diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_IEPC-S_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_IEPC-S_n_opt.xml index 9dba5f8b41e0ba3e3b5290d001239e8c6d57076a..30ba13f4af70f18d915798f3b4975d8c40e6994a 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_IEPC-S_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_IEPC-S_n_opt.xml @@ -20,7 +20,6 @@ </PTO> <ZeroEmissionVehicle>false</ZeroEmissionVehicle> <VocationalVehicle>false</VocationalVehicle> - <NgTankSystem>Liquefied</NgTankSystem><!-- optional --> <SleeperCab>false</SleeperCab> <VehicleTypeApprovalNumber>ASDF</VehicleTypeApprovalNumber> <ArchitectureID>S-IEPC</ArchitectureID> diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_S3_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_S3_n_opt.xml index aa877055209518df2fe1c5035d6bdc62658f2d5c..e99d0ed6232c43a79001e5e221d2232963656483 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_S3_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_S3_n_opt.xml @@ -20,7 +20,6 @@ </PTO> <ZeroEmissionVehicle>false</ZeroEmissionVehicle> <VocationalVehicle>false</VocationalVehicle> - <NgTankSystem>Liquefied</NgTankSystem><!-- optional --> <SleeperCab>false</SleeperCab> <VehicleTypeApprovalNumber>ASDF</VehicleTypeApprovalNumber> <ArchitectureID>S3</ArchitectureID> diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_S4_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_S4_n_opt.xml index 97d8bed48c62580024fe0b66d4b76dc541868f2f..c7acc733e0758069ceb1035efd262febe464bc1c 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_S4_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_heavyLorry_S4_n_opt.xml @@ -20,7 +20,6 @@ </PTO> <ZeroEmissionVehicle>false</ZeroEmissionVehicle> <VocationalVehicle>false</VocationalVehicle> - <NgTankSystem>Liquefied</NgTankSystem><!-- optional --> <SleeperCab>false</SleeperCab> <VehicleTypeApprovalNumber>ASDF</VehicleTypeApprovalNumber> <ArchitectureID>S4</ArchitectureID> diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_mediumLorry_IEPC-S_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_mediumLorry_IEPC-S_n_opt.xml index 309e2d91d7207f6feb31ad54334c2c83633e38d3..a97ea550880dc9e921c55122fd38789beebe9f05 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_mediumLorry_IEPC-S_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_mediumLorry_IEPC-S_n_opt.xml @@ -15,7 +15,6 @@ <RetarderType>None</RetarderType> <AngledriveType>None</AngledriveType> <ZeroEmissionVehicle>false</ZeroEmissionVehicle> - <NgTankSystem>Liquefied</NgTankSystem><!-- optional --> <VehicleTypeApprovalNumber>ASDF</VehicleTypeApprovalNumber> <ArchitectureID>S-IEPC</ArchitectureID> <OvcHev>false</OvcHev> diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_mediumLorry_S3_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_mediumLorry_S3_n_opt.xml index 5487ee087fb63260cbb479229e348d5aa7b893c9..01382d305bce57d35ef8eaf766098f283ba307b9 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_mediumLorry_S3_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_mediumLorry_S3_n_opt.xml @@ -15,7 +15,6 @@ <RetarderType>None</RetarderType> <AngledriveType>None</AngledriveType> <ZeroEmissionVehicle>false</ZeroEmissionVehicle> - <NgTankSystem>Liquefied</NgTankSystem><!-- optional --> <VehicleTypeApprovalNumber>ASDF</VehicleTypeApprovalNumber> <ArchitectureID>S3</ArchitectureID> <OvcHev>false</OvcHev> diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_mediumLorry_S4_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_mediumLorry_S4_n_opt.xml index cd05ded6a03afc30c5a02b28d28b001779213263..ab37a90e0b610d7e2bb0f901a08f5cbb60c5bc36 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_mediumLorry_S4_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV-S_mediumLorry_S4_n_opt.xml @@ -15,7 +15,6 @@ <RetarderType>None</RetarderType> <AngledriveType>None</AngledriveType> <ZeroEmissionVehicle>false</ZeroEmissionVehicle> - <NgTankSystem>Liquefied</NgTankSystem><!-- optional --> <VehicleTypeApprovalNumber>ASDF</VehicleTypeApprovalNumber> <ArchitectureID>S4</ArchitectureID> <OvcHev>false</OvcHev> diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV_heavyLorry_AMT_Px_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV_heavyLorry_AMT_Px_n_opt.xml index 4884b28a7e3e4fcf24a168b4d20bfdede14abb81..e0ac91954cf5dfd3508d87b0f3a3789adfe9c45a 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV_heavyLorry_AMT_Px_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV_heavyLorry_AMT_Px_n_opt.xml @@ -1 +1 @@ -<?xml version="1.0" encoding="UTF-8"?> <tns:VectoInputDeclaration xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.10.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" schemaVersion="2.0" xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationInput:v2.0" xmlns:di="http://www.w3.org/2000/09/xmldsig#" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationJob V:\VectoCore\VectoCore\Resources\XSD/VectoDeclarationJob.xsd" 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.6="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.6" xmlns:v2.10.1="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.10.1" xmlns:v2.10.2="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.10.2"> <v2.0:Vehicle xsi:type="Vehicle_HEV-Px_HeavyLorryDeclarationType" id="a"> <Manufacturer>TU Graz</Manufacturer> <ManufacturerAddress>Inffeldgasse 19</ManufacturerAddress> <Model>HEV Heavy Lorry Px</Model> <VIN>1234</VIN> <Date>2017-01-01T00:00:00Z</Date> <LegislativeCategory>N3</LegislativeCategory> <ChasisConfiguration>Rigid Lorry</ChasisConfiguration> <AxleConfiguration>4x2</AxleConfiguration> <CorrectedActualMass>6000</CorrectedActualMass> <TechnicalPermissibleMaximumLadenMass>12000</TechnicalPermissibleMaximumLadenMass> <IdlingSpeed>650</IdlingSpeed> <RetarderType>None</RetarderType> <AngledriveType>None</AngledriveType> <PTO xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xsi:type="v2.0:PTOType"> <v2.0:PTOShaftsGearWheels>none</v2.0:PTOShaftsGearWheels> <v2.0:PTOOtherElements>none</v2.0:PTOOtherElements> </PTO> <ZeroEmissionVehicle>false</ZeroEmissionVehicle> <VocationalVehicle>false</VocationalVehicle> <NgTankSystem>Liquefied</NgTankSystem><!-- optional --> <SleeperCab>false</SleeperCab> <VehicleTypeApprovalNumber>ASDF</VehicleTypeApprovalNumber> <ArchitectureID>P2</ArchitectureID> <OvcHev>false</OvcHev> <ADAS xsi:type="ADAS_HEV_Type"> <v2.10.2:EngineStopStart>true</v2.10.2:EngineStopStart> <v2.10.2:PredictiveCruiseControl>1,2,3</v2.10.2:PredictiveCruiseControl> </ADAS> <Components xsi:type="Components_HEV-Px_LorryType"> <Engine> <v2.0:Data xsi:type="v1.0:EngineDataDeclarationType" id="ENG-gooZah3D" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v1.0"> <Manufacturer>Generic Engine Manufacturer</Manufacturer> <Model>Generic 40t Long Haul Truck Engine</Model> <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> <Date>2017-02-15T11:00:00Z</Date> <AppVersion>VectoEngine x.y</AppVersion> <Displacement>12730</Displacement> <IdlingSpeed>560</IdlingSpeed> <RatedSpeed>2200</RatedSpeed> <RatedPower>380000</RatedPower> <MaxEngineTorque>2300</MaxEngineTorque> <WHTCUrban>1.0097</WHTCUrban> <WHTCRural>1.0035</WHTCRural> <WHTCMotorway>1.0200</WHTCMotorway> <BFColdHot>1.0000</BFColdHot> <CFRegPer>1.0000</CFRegPer> <CFNCV>1.0000</CFNCV> <FuelType>NG</FuelType> <FuelConsumptionMap> <Entry engineSpeed="560.00" torque="-149.00" fuelConsumption="0.00"/> <Entry engineSpeed="560.00" torque="1180.00" fuelConsumption="12869.00"/> <Entry engineSpeed="2100.00" torque="-320.00" fuelConsumption="0.00"/> <Entry engineSpeed="2100.00" torque="1100.00" fuelConsumption="50653.00"/> </FuelConsumptionMap> <FullLoadAndDragCurve> <Entry engineSpeed="560.00" maxTorque="1180.00" dragTorque="-149.00"/> <Entry engineSpeed="1800.00" maxTorque="1800.00" dragTorque="-300.00"/> <Entry engineSpeed="2100.00" maxTorque="1100.00" dragTorque="-320.00"/> </FullLoadAndDragCurve> </v2.0:Data> <v2.0:Signature> <di:Reference> <di:DigestMethod Algorithm=""/> <di:DigestValue/> </di:Reference> </v2.0:Signature> </Engine> <ElectricMachine> <PowertrainPosition>2</PowertrainPosition> <Count>1</Count> <ElectricMachineSystem> <v2.10.1:Data xsi:type="v2.10.1:ElectricMachineSystemMeasuredDataDeclarationType" id="EM-1234" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.10.1"> <Manufacturer>a</Manufacturer> <Model>a</Model> <CertificationNumber>token</CertificationNumber> <Date>2017-01-01T00:00:00Z</Date> <AppVersion>aaaaa</AppVersion> <ElectricMachineType>ASM</ElectricMachineType> <CertificationMethod>Measured</CertificationMethod> <R85RatedPower>1</R85RatedPower> <RotationalInertia>0.10</RotationalInertia> <ContinuousTorque>200.00</ContinuousTorque> <TestSpeedContinuousTorque>2000.00</TestSpeedContinuousTorque> <OverloadTorque>400.00</OverloadTorque> <TestSpeedOverloadTorque>2000.00</TestSpeedOverloadTorque> <OverloadDuration>30.00</OverloadDuration> <TestVoltageOverload>483</TestVoltageOverload> <DcDcConverterIncluded>true</DcDcConverterIncluded> <IHPCType>None</IHPCType> <VoltageLevel> <Voltage>400</Voltage> <MaxTorqueCurve> <Entry outShaftSpeed="0.00" maxTorque="450.00" minTorque="-450.00"/> <Entry outShaftSpeed="4000.00" maxTorque="100.00" minTorque="-100.00"/> </MaxTorqueCurve> <PowerMap> <Entry outShaftSpeed="0.00" torque="400.00" electricPower="1000.00"/> <Entry outShaftSpeed="0.00" torque="-400.00" electricPower="-1000.00"/> <Entry outShaftSpeed="4000.00" torque="4000.00" electricPower="20000.00"/> <Entry outShaftSpeed="4000.00" torque="-4000.00" electricPower="-20000.00"/> </PowerMap> </VoltageLevel> <VoltageLevel> <Voltage>600</Voltage> <MaxTorqueCurve> <Entry outShaftSpeed="0.00" maxTorque="450.00" minTorque="-450.00"/> <Entry outShaftSpeed="4000.00" maxTorque="100.00" minTorque="-100.00"/> </MaxTorqueCurve> <PowerMap> <Entry outShaftSpeed="0.00" torque="400.00" electricPower="1000.00"/> <Entry outShaftSpeed="0.00" torque="-400.00" electricPower="-1000.00"/> <Entry outShaftSpeed="4000.00" torque="4000.00" electricPower="20000.00"/> <Entry outShaftSpeed="4000.00" torque="-4000.00" electricPower="-20000.00"/> </PowerMap> </VoltageLevel> <DragCurve> <Entry outShaftSpeed="0.00" dragTorque="10.00"/> <Entry outShaftSpeed="4000.00" dragTorque="30.00"/> </DragCurve> <Conditioning circuitId="0"> <Entry coolantTempInlet="30" coolingPower="5000"/> </Conditioning> </v2.10.1:Data> <v2.10.1:Signature> <di:Reference> <di:DigestMethod Algorithm=""/> <di:DigestValue/> </di:Reference> </v2.10.1:Signature> </ElectricMachineSystem> <P2.5GearRatios><!-- only for P2.5 HEV --> <Ratio gear="1">1.000</Ratio> <Ratio gear="2">2.000</Ratio> </P2.5GearRatios> </ElectricMachine> <ElectricEnergyStorage> <Battery> <StringID>0</StringID> <REESS> <v2.10.2:Data id="BAT-asdf" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.10.1"> <Manufacturer>a</Manufacturer> <Model>a</Model> <CertificationNumber>tokena</CertificationNumber> <Date>2017-01-01T00:00:00Z</Date> <AppVersion>aaaaa</AppVersion> <CertificationMethod>Measured</CertificationMethod> <BatteryType>HPBS</BatteryType> <RatedCapacity>72.00</RatedCapacity> <ConnectorsSubsystemsIncluded>true</ConnectorsSubsystemsIncluded> <JunctionboxIncluded>true</JunctionboxIncluded> <TestingTemperature>20</TestingTemperature> <OCV> <Entry SoC="0" OCV="620.00"/> <Entry SoC="100" OCV="640.00"/> </OCV> <InternalResistance> <Entry SoC="0" R_2="10.00" R_10="11.00" R_20="12.00"/> <Entry SoC="100" R_2="12.00" R_10="14.00" R_20="16.00"/> </InternalResistance> <CurrentLimits> <Entry SoC="0" maxChargingCurrent="50.00" maxDischargingCurrent="0.00"/> <Entry SoC="100" maxChargingCurrent="0.00" maxDischargingCurrent="50.00"/> </CurrentLimits> </v2.10.2:Data> <Signature> <di:Reference> <di:DigestMethod Algorithm="asf"/> <di:DigestValue/> </di:Reference> </Signature> </REESS> <SOCmin>20</SOCmin> <SOCmax>80</SOCmax> </Battery> <Battery> <StringID>1</StringID> <REESS> <v2.10.2:Data id="BAT-asdf" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.10.1"> <Manufacturer>b</Manufacturer> <Model>b</Model> <CertificationNumber>tokenb</CertificationNumber> <Date>2017-02-02T00:00:00Z</Date> <AppVersion>bbbbb</AppVersion> <CertificationMethod>Measured</CertificationMethod> <BatteryType>HPBS</BatteryType> <RatedCapacity>73.00</RatedCapacity> <ConnectorsSubsystemsIncluded>true</ConnectorsSubsystemsIncluded> <JunctionboxIncluded>true</JunctionboxIncluded> <TestingTemperature>20</TestingTemperature> <OCV> <Entry SoC="0" OCV="621.00"/> <Entry SoC="100" OCV="641.00"/> </OCV> <InternalResistance> <Entry SoC="0" R_2="11.00" R_10="12.00" R_20="13.00"/> <Entry SoC="100" R_2="12.00" R_10="14.00" R_20="16.00"/> </InternalResistance> <CurrentLimits> <Entry SoC="0" maxChargingCurrent="51.00" maxDischargingCurrent="0.00"/> <Entry SoC="100" maxChargingCurrent="0.00" maxDischargingCurrent="50.00"/> </CurrentLimits> </v2.10.2:Data> <Signature> <di:Reference> <di:DigestMethod Algorithm="bsf"/> <di:DigestValue/> </di:Reference> </Signature> </REESS> </Battery> </ElectricEnergyStorage> <Gearbox> <v2.0:Data id="gbx-vi2Oak2N" xsi:type="v2.0:GearboxDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0"> <Manufacturer>Generic Gearbox Manufacturer</Manufacturer> <Model>Generic 40t Long Haul Truck Gearbox</Model> <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> <Date>2017-01-11T11:00:00Z</Date> <AppVersion>3.0.1</AppVersion> <TransmissionType>AMT</TransmissionType> <MainCertificationMethod>Standard values</MainCertificationMethod> <Gears xsi:type="GearsDeclarationType"> <Gear number="1"> <Ratio>14.930</Ratio> <MaxTorque>1900</MaxTorque> <MaxSpeed>2000</MaxSpeed> <TorqueLossMap> <Entry inputSpeed="0.00" inputTorque="-1000.00" torqueLoss="25.06"/> <Entry inputSpeed="0.00" inputTorque="50.00" torqueLoss="6.06"/> <Entry inputSpeed="0.00" inputTorque="3000.00" torqueLoss="54.06"/> <Entry inputSpeed="2100.00" inputTorque="-1000.00" torqueLoss="35.69"/> <Entry inputSpeed="2100.00" inputTorque="50.00" torqueLoss="16.69"/> <Entry inputSpeed="2100.00" inputTorque="3000.00" torqueLoss="64.69"/> </TorqueLossMap> </Gear> <Gear number="2"> <Ratio>11.640</Ratio> <MaxTorque>1900</MaxTorque> <MaxSpeed>2000</MaxSpeed> <TorqueLossMap> <Entry inputSpeed="0.00" inputTorque="-1000.00" torqueLoss="25.06"/> <Entry inputSpeed="0.00" inputTorque="50.00" torqueLoss="6.06"/> <Entry inputSpeed="0.00" inputTorque="3000.00" torqueLoss="54.06"/> <Entry inputSpeed="2100.00" inputTorque="-1000.00" torqueLoss="35.69"/> <Entry inputSpeed="2100.00" inputTorque="50.00" torqueLoss="16.69"/> <Entry inputSpeed="2100.00" inputTorque="3000.00" torqueLoss="64.69"/> </TorqueLossMap> </Gear> </Gears> </v2.0:Data> <v2.0:Signature> <di:Reference URI="#gbx-vi2Oak2N"> <di:Transforms> <di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/> <di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> </di:Transforms> <di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/> <di:DigestValue>ieNmjofFObDBGnB7+GX9of3HYe3ydK/ra+YvmULVJIk=</di:DigestValue> </di:Reference> </v2.0:Signature> </Gearbox> <TorqueConverter><!-- optional --> <v2.0:Data xsi:type="v1.0:TorqueConverterDataDeclarationType" id="TQ-1234" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v1.0"> <Manufacturer>Some Manufacturer</Manufacturer> <Model>Some Model</Model> <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> <Date>2017-02-15T11:00:00Z</Date> <AppVersion>TC CalcApp 123</AppVersion> <CertificationMethod>Standard values</CertificationMethod> <Characteristics> <Entry speedRatio="0.0000" torqueRatio="1.00" inputTorqueRef="300.00"/> <Entry speedRatio="0.5000" torqueRatio="1.00" inputTorqueRef="200.00"/> <Entry speedRatio="0.9000" torqueRatio="0.90" inputTorqueRef="200.00"/> </Characteristics> </v2.0:Data> <v2.0:Signature> <di:Reference> <di:DigestMethod Algorithm=""></di:DigestMethod> <di:DigestValue></di:DigestValue> </di:Reference> </v2.0:Signature> </TorqueConverter> <Axlegear> <v2.0:Data id="AXL-EC3ohnoh" xsi:type="v2.0:AxlegearDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0"> <Manufacturer>Generic Gearbox Manufacturer</Manufacturer> <Model>Generic 40t Long Haul Truck AxleGear</Model> <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> <Date>2017-01-11T11:00:00Z</Date> <AppVersion>3.0.1</AppVersion> <LineType>Single portal axle</LineType> <Ratio>2.590</Ratio> <CertificationMethod>Standard values</CertificationMethod> <TorqueLossMap> <Entry inputSpeed="0.00" inputTorque="-5000.00" torqueLoss="115.00"/> <Entry inputSpeed="0.00" inputTorque="0.00" torqueLoss="40.00"/> <Entry inputSpeed="0.00" inputTorque="15000.00" torqueLoss="265.00"/> <Entry inputSpeed="2100.00" inputTorque="-5000.00" torqueLoss="115.00"/> <Entry inputSpeed="2100.00" inputTorque="0.00" torqueLoss="40.00"/> <Entry inputSpeed="2100.00" inputTorque="35000.00" torqueLoss="565.00"/> </TorqueLossMap> </v2.0:Data> <v2.0:Signature> <di:Reference URI="#AXL-EC3ohnoh"> <di:Transforms> <di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/> <di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> </di:Transforms> <di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/> <di:DigestValue>o4nYTajmWKaduxys5ShmnfJbYd23rpxZ01JbuG6dmzU=</di:DigestValue> </di:Reference> </v2.0:Signature> </Axlegear> <AxleWheels> <v2.0:Data xsi:type="v2.0:AxleWheelsDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0"> <Axles> <Axle axleNumber="1" xsi:type="AxleDataDeclarationType"> <AxleType>VehicleNonDriven</AxleType> <TwinTyres>false</TwinTyres> <Steered>true</Steered> <Tyre> <Data id="WHL-5432198760-315-70-R22.5" xsi:type="TyreDataDeclarationType"> <Manufacturer>Generic Wheels Manufacturer</Manufacturer> <Model>Generic Wheel</Model> <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> <Date>2017-01-11T14:00:00Z</Date> <AppVersion>Tyre Generation App 1.0</AppVersion> <Dimension>315/70 R22.5</Dimension> <RRCDeclared>0.0055</RRCDeclared> <FzISO>31300</FzISO> </Data> <Signature> <di:Reference URI="#WHL-5432198760-315-70-R22.5"> <di:Transforms> <di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/> <di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> </di:Transforms> <di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/> <di:DigestValue>4TkUGQTX8tevHOU9Cj9uyCFuI/aqcEYlo/gyVjVQmv0=</di:DigestValue> </di:Reference> </Signature> </Tyre> </Axle> <Axle axleNumber="2" xsi:type="AxleDataDeclarationType"> <AxleType>VehicleDriven</AxleType> <TwinTyres>true</TwinTyres> <Steered>false</Steered> <Tyre> <Data id="WHL-5432198760-315-70-R22.5" xsi:type="TyreDataDeclarationType"> <Manufacturer>Generic Wheels Manufacturer</Manufacturer> <Model>Generic Wheel</Model> <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> <Date>2017-01-11T14:00:00Z</Date> <AppVersion>Tyre Generation App 1.0</AppVersion> <Dimension>315/70 R22.5</Dimension> <RRCDeclared>0.0063</RRCDeclared> <FzISO>31300</FzISO> </Data> <Signature> <di:Reference URI="#WHL-5432198760-315-70-R22.5"> <di:Transforms> <di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/> <di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> </di:Transforms> <di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/> <di:DigestValue>KljvtvGUUQ/L7MiLVAqU+bckL5PNDNNwdeLH9kUVrfM=</di:DigestValue> </di:Reference> </Signature> </Tyre> </Axle> </Axles> </v2.0:Data> </AxleWheels> <Auxiliaries> <Data xsi:type="AUX_HEV-P_LorryDataType"> <Fan> <Technology>Hydraulic driven - Constant displacement pump</Technology> </Fan> <SteeringPump> <Technology axleNumber="1">Variable displacement elec. controlled</Technology> </SteeringPump> <ElectricSystem> <Technology>Standard technology - LED headlights, all</Technology> </ElectricSystem> <PneumaticSystem> <Technology>Medium Supply 2-stage</Technology> </PneumaticSystem> <HVAC> <Technology>Default</Technology> </HVAC> </Data> </Auxiliaries> </Components> </v2.0:Vehicle> </tns:VectoInputDeclaration> \ No newline at end of file +<?xml version="1.0" encoding="UTF-8"?> <tns:VectoInputDeclaration xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.10.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" schemaVersion="2.0" xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationInput:v2.0" xmlns:di="http://www.w3.org/2000/09/xmldsig#" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationJob V:\VectoCore\VectoCore\Resources\XSD/VectoDeclarationJob.xsd" 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.6="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.6" xmlns:v2.10.1="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.10.1" xmlns:v2.10.2="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.10.2"> <v2.0:Vehicle xsi:type="Vehicle_HEV-Px_HeavyLorryDeclarationType" id="a"> <Manufacturer>TU Graz</Manufacturer> <ManufacturerAddress>Inffeldgasse 19</ManufacturerAddress> <Model>HEV Heavy Lorry Px</Model> <VIN>1234</VIN> <Date>2017-01-01T00:00:00Z</Date> <LegislativeCategory>N3</LegislativeCategory> <ChasisConfiguration>Rigid Lorry</ChasisConfiguration> <AxleConfiguration>4x2</AxleConfiguration> <CorrectedActualMass>6000</CorrectedActualMass> <TechnicalPermissibleMaximumLadenMass>12000</TechnicalPermissibleMaximumLadenMass> <IdlingSpeed>650</IdlingSpeed> <RetarderType>None</RetarderType> <AngledriveType>None</AngledriveType> <PTO xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xsi:type="v2.0:PTOType"> <v2.0:PTOShaftsGearWheels>none</v2.0:PTOShaftsGearWheels> <v2.0:PTOOtherElements>none</v2.0:PTOOtherElements> </PTO> <ZeroEmissionVehicle>false</ZeroEmissionVehicle> <VocationalVehicle>false</VocationalVehicle> <SleeperCab>false</SleeperCab> <VehicleTypeApprovalNumber>ASDF</VehicleTypeApprovalNumber> <ArchitectureID>P2</ArchitectureID> <OvcHev>false</OvcHev> <ADAS xsi:type="ADAS_HEV_Type"> <v2.10.2:EngineStopStart>true</v2.10.2:EngineStopStart> <v2.10.2:PredictiveCruiseControl>1,2,3</v2.10.2:PredictiveCruiseControl> </ADAS> <Components xsi:type="Components_HEV-Px_LorryType"> <Engine> <v2.0:Data xsi:type="v1.0:EngineDataDeclarationType" id="ENG-gooZah3D" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v1.0"> <Manufacturer>Generic Engine Manufacturer</Manufacturer> <Model>Generic 40t Long Haul Truck Engine</Model> <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> <Date>2017-02-15T11:00:00Z</Date> <AppVersion>VectoEngine x.y</AppVersion> <Displacement>12730</Displacement> <IdlingSpeed>560</IdlingSpeed> <RatedSpeed>2200</RatedSpeed> <RatedPower>380000</RatedPower> <MaxEngineTorque>2300</MaxEngineTorque> <WHTCUrban>1.0097</WHTCUrban> <WHTCRural>1.0035</WHTCRural> <WHTCMotorway>1.0200</WHTCMotorway> <BFColdHot>1.0000</BFColdHot> <CFRegPer>1.0000</CFRegPer> <CFNCV>1.0000</CFNCV> <FuelType>NG</FuelType> <FuelConsumptionMap> <Entry engineSpeed="560.00" torque="-149.00" fuelConsumption="0.00"/> <Entry engineSpeed="560.00" torque="1180.00" fuelConsumption="12869.00"/> <Entry engineSpeed="2100.00" torque="-320.00" fuelConsumption="0.00"/> <Entry engineSpeed="2100.00" torque="1100.00" fuelConsumption="50653.00"/> </FuelConsumptionMap> <FullLoadAndDragCurve> <Entry engineSpeed="560.00" maxTorque="1180.00" dragTorque="-149.00"/> <Entry engineSpeed="1800.00" maxTorque="1800.00" dragTorque="-300.00"/> <Entry engineSpeed="2100.00" maxTorque="1100.00" dragTorque="-320.00"/> </FullLoadAndDragCurve> </v2.0:Data> <v2.0:Signature> <di:Reference> <di:DigestMethod Algorithm=""/> <di:DigestValue/> </di:Reference> </v2.0:Signature> </Engine> <ElectricMachine> <PowertrainPosition>2</PowertrainPosition> <Count>1</Count> <ElectricMachineSystem> <v2.10.1:Data xsi:type="v2.10.1:ElectricMachineSystemMeasuredDataDeclarationType" id="EM-1234" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.10.1"> <Manufacturer>a</Manufacturer> <Model>a</Model> <CertificationNumber>token</CertificationNumber> <Date>2017-01-01T00:00:00Z</Date> <AppVersion>aaaaa</AppVersion> <ElectricMachineType>ASM</ElectricMachineType> <CertificationMethod>Measured</CertificationMethod> <R85RatedPower>1</R85RatedPower> <RotationalInertia>0.10</RotationalInertia> <ContinuousTorque>200.00</ContinuousTorque> <TestSpeedContinuousTorque>2000.00</TestSpeedContinuousTorque> <OverloadTorque>400.00</OverloadTorque> <TestSpeedOverloadTorque>2000.00</TestSpeedOverloadTorque> <OverloadDuration>30.00</OverloadDuration> <TestVoltageOverload>483</TestVoltageOverload> <DcDcConverterIncluded>true</DcDcConverterIncluded> <IHPCType>None</IHPCType> <VoltageLevel> <Voltage>400</Voltage> <MaxTorqueCurve> <Entry outShaftSpeed="0.00" maxTorque="450.00" minTorque="-450.00"/> <Entry outShaftSpeed="4000.00" maxTorque="100.00" minTorque="-100.00"/> </MaxTorqueCurve> <PowerMap> <Entry outShaftSpeed="0.00" torque="400.00" electricPower="1000.00"/> <Entry outShaftSpeed="0.00" torque="-400.00" electricPower="-1000.00"/> <Entry outShaftSpeed="4000.00" torque="4000.00" electricPower="20000.00"/> <Entry outShaftSpeed="4000.00" torque="-4000.00" electricPower="-20000.00"/> </PowerMap> </VoltageLevel> <VoltageLevel> <Voltage>600</Voltage> <MaxTorqueCurve> <Entry outShaftSpeed="0.00" maxTorque="450.00" minTorque="-450.00"/> <Entry outShaftSpeed="4000.00" maxTorque="100.00" minTorque="-100.00"/> </MaxTorqueCurve> <PowerMap> <Entry outShaftSpeed="0.00" torque="400.00" electricPower="1000.00"/> <Entry outShaftSpeed="0.00" torque="-400.00" electricPower="-1000.00"/> <Entry outShaftSpeed="4000.00" torque="4000.00" electricPower="20000.00"/> <Entry outShaftSpeed="4000.00" torque="-4000.00" electricPower="-20000.00"/> </PowerMap> </VoltageLevel> <DragCurve> <Entry outShaftSpeed="0.00" dragTorque="10.00"/> <Entry outShaftSpeed="4000.00" dragTorque="30.00"/> </DragCurve> <Conditioning circuitId="0"> <Entry coolantTempInlet="30" coolingPower="5000"/> </Conditioning> </v2.10.1:Data> <v2.10.1:Signature> <di:Reference> <di:DigestMethod Algorithm=""/> <di:DigestValue/> </di:Reference> </v2.10.1:Signature> </ElectricMachineSystem> <P2.5GearRatios><!-- only for P2.5 HEV --> <Ratio gear="1">1.000</Ratio> <Ratio gear="2">2.000</Ratio> </P2.5GearRatios> </ElectricMachine> <ElectricEnergyStorage> <Battery> <StringID>0</StringID> <REESS> <v2.10.2:Data id="BAT-asdf" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.10.1"> <Manufacturer>a</Manufacturer> <Model>a</Model> <CertificationNumber>tokena</CertificationNumber> <Date>2017-01-01T00:00:00Z</Date> <AppVersion>aaaaa</AppVersion> <CertificationMethod>Measured</CertificationMethod> <BatteryType>HPBS</BatteryType> <RatedCapacity>72.00</RatedCapacity> <ConnectorsSubsystemsIncluded>true</ConnectorsSubsystemsIncluded> <JunctionboxIncluded>true</JunctionboxIncluded> <TestingTemperature>20</TestingTemperature> <OCV> <Entry SoC="0" OCV="620.00"/> <Entry SoC="100" OCV="640.00"/> </OCV> <InternalResistance> <Entry SoC="0" R_2="10.00" R_10="11.00" R_20="12.00"/> <Entry SoC="100" R_2="12.00" R_10="14.00" R_20="16.00"/> </InternalResistance> <CurrentLimits> <Entry SoC="0" maxChargingCurrent="50.00" maxDischargingCurrent="0.00"/> <Entry SoC="100" maxChargingCurrent="0.00" maxDischargingCurrent="50.00"/> </CurrentLimits> </v2.10.2:Data> <Signature> <di:Reference> <di:DigestMethod Algorithm="asf"/> <di:DigestValue/> </di:Reference> </Signature> </REESS> <SOCmin>20</SOCmin> <SOCmax>80</SOCmax> </Battery> <Battery> <StringID>1</StringID> <REESS> <v2.10.2:Data id="BAT-asdf" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.10.1"> <Manufacturer>b</Manufacturer> <Model>b</Model> <CertificationNumber>tokenb</CertificationNumber> <Date>2017-02-02T00:00:00Z</Date> <AppVersion>bbbbb</AppVersion> <CertificationMethod>Measured</CertificationMethod> <BatteryType>HPBS</BatteryType> <RatedCapacity>73.00</RatedCapacity> <ConnectorsSubsystemsIncluded>true</ConnectorsSubsystemsIncluded> <JunctionboxIncluded>true</JunctionboxIncluded> <TestingTemperature>20</TestingTemperature> <OCV> <Entry SoC="0" OCV="621.00"/> <Entry SoC="100" OCV="641.00"/> </OCV> <InternalResistance> <Entry SoC="0" R_2="11.00" R_10="12.00" R_20="13.00"/> <Entry SoC="100" R_2="12.00" R_10="14.00" R_20="16.00"/> </InternalResistance> <CurrentLimits> <Entry SoC="0" maxChargingCurrent="51.00" maxDischargingCurrent="0.00"/> <Entry SoC="100" maxChargingCurrent="0.00" maxDischargingCurrent="50.00"/> </CurrentLimits> </v2.10.2:Data> <Signature> <di:Reference> <di:DigestMethod Algorithm="bsf"/> <di:DigestValue/> </di:Reference> </Signature> </REESS> </Battery> </ElectricEnergyStorage> <Gearbox> <v2.0:Data id="gbx-vi2Oak2N" xsi:type="v2.0:GearboxDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0"> <Manufacturer>Generic Gearbox Manufacturer</Manufacturer> <Model>Generic 40t Long Haul Truck Gearbox</Model> <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> <Date>2017-01-11T11:00:00Z</Date> <AppVersion>3.0.1</AppVersion> <TransmissionType>AMT</TransmissionType> <MainCertificationMethod>Standard values</MainCertificationMethod> <Gears xsi:type="GearsDeclarationType"> <Gear number="1"> <Ratio>14.930</Ratio> <MaxTorque>1900</MaxTorque> <MaxSpeed>2000</MaxSpeed> <TorqueLossMap> <Entry inputSpeed="0.00" inputTorque="-1000.00" torqueLoss="25.06"/> <Entry inputSpeed="0.00" inputTorque="50.00" torqueLoss="6.06"/> <Entry inputSpeed="0.00" inputTorque="3000.00" torqueLoss="54.06"/> <Entry inputSpeed="2100.00" inputTorque="-1000.00" torqueLoss="35.69"/> <Entry inputSpeed="2100.00" inputTorque="50.00" torqueLoss="16.69"/> <Entry inputSpeed="2100.00" inputTorque="3000.00" torqueLoss="64.69"/> </TorqueLossMap> </Gear> <Gear number="2"> <Ratio>11.640</Ratio> <MaxTorque>1900</MaxTorque> <MaxSpeed>2000</MaxSpeed> <TorqueLossMap> <Entry inputSpeed="0.00" inputTorque="-1000.00" torqueLoss="25.06"/> <Entry inputSpeed="0.00" inputTorque="50.00" torqueLoss="6.06"/> <Entry inputSpeed="0.00" inputTorque="3000.00" torqueLoss="54.06"/> <Entry inputSpeed="2100.00" inputTorque="-1000.00" torqueLoss="35.69"/> <Entry inputSpeed="2100.00" inputTorque="50.00" torqueLoss="16.69"/> <Entry inputSpeed="2100.00" inputTorque="3000.00" torqueLoss="64.69"/> </TorqueLossMap> </Gear> </Gears> </v2.0:Data> <v2.0:Signature> <di:Reference URI="#gbx-vi2Oak2N"> <di:Transforms> <di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/> <di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> </di:Transforms> <di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/> <di:DigestValue>ieNmjofFObDBGnB7+GX9of3HYe3ydK/ra+YvmULVJIk=</di:DigestValue> </di:Reference> </v2.0:Signature> </Gearbox> <TorqueConverter><!-- optional --> <v2.0:Data xsi:type="v1.0:TorqueConverterDataDeclarationType" id="TQ-1234" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v1.0"> <Manufacturer>Some Manufacturer</Manufacturer> <Model>Some Model</Model> <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> <Date>2017-02-15T11:00:00Z</Date> <AppVersion>TC CalcApp 123</AppVersion> <CertificationMethod>Standard values</CertificationMethod> <Characteristics> <Entry speedRatio="0.0000" torqueRatio="1.00" inputTorqueRef="300.00"/> <Entry speedRatio="0.5000" torqueRatio="1.00" inputTorqueRef="200.00"/> <Entry speedRatio="0.9000" torqueRatio="0.90" inputTorqueRef="200.00"/> </Characteristics> </v2.0:Data> <v2.0:Signature> <di:Reference> <di:DigestMethod Algorithm=""></di:DigestMethod> <di:DigestValue></di:DigestValue> </di:Reference> </v2.0:Signature> </TorqueConverter> <Axlegear> <v2.0:Data id="AXL-EC3ohnoh" xsi:type="v2.0:AxlegearDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0"> <Manufacturer>Generic Gearbox Manufacturer</Manufacturer> <Model>Generic 40t Long Haul Truck AxleGear</Model> <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> <Date>2017-01-11T11:00:00Z</Date> <AppVersion>3.0.1</AppVersion> <LineType>Single portal axle</LineType> <Ratio>2.590</Ratio> <CertificationMethod>Standard values</CertificationMethod> <TorqueLossMap> <Entry inputSpeed="0.00" inputTorque="-5000.00" torqueLoss="115.00"/> <Entry inputSpeed="0.00" inputTorque="0.00" torqueLoss="40.00"/> <Entry inputSpeed="0.00" inputTorque="15000.00" torqueLoss="265.00"/> <Entry inputSpeed="2100.00" inputTorque="-5000.00" torqueLoss="115.00"/> <Entry inputSpeed="2100.00" inputTorque="0.00" torqueLoss="40.00"/> <Entry inputSpeed="2100.00" inputTorque="35000.00" torqueLoss="565.00"/> </TorqueLossMap> </v2.0:Data> <v2.0:Signature> <di:Reference URI="#AXL-EC3ohnoh"> <di:Transforms> <di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/> <di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> </di:Transforms> <di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/> <di:DigestValue>o4nYTajmWKaduxys5ShmnfJbYd23rpxZ01JbuG6dmzU=</di:DigestValue> </di:Reference> </v2.0:Signature> </Axlegear> <AxleWheels> <v2.0:Data xsi:type="v2.0:AxleWheelsDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0"> <Axles> <Axle axleNumber="1" xsi:type="AxleDataDeclarationType"> <AxleType>VehicleNonDriven</AxleType> <TwinTyres>false</TwinTyres> <Steered>true</Steered> <Tyre> <Data id="WHL-5432198760-315-70-R22.5" xsi:type="TyreDataDeclarationType"> <Manufacturer>Generic Wheels Manufacturer</Manufacturer> <Model>Generic Wheel</Model> <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> <Date>2017-01-11T14:00:00Z</Date> <AppVersion>Tyre Generation App 1.0</AppVersion> <Dimension>315/70 R22.5</Dimension> <RRCDeclared>0.0055</RRCDeclared> <FzISO>31300</FzISO> </Data> <Signature> <di:Reference URI="#WHL-5432198760-315-70-R22.5"> <di:Transforms> <di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/> <di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> </di:Transforms> <di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/> <di:DigestValue>4TkUGQTX8tevHOU9Cj9uyCFuI/aqcEYlo/gyVjVQmv0=</di:DigestValue> </di:Reference> </Signature> </Tyre> </Axle> <Axle axleNumber="2" xsi:type="AxleDataDeclarationType"> <AxleType>VehicleDriven</AxleType> <TwinTyres>true</TwinTyres> <Steered>false</Steered> <Tyre> <Data id="WHL-5432198760-315-70-R22.5" xsi:type="TyreDataDeclarationType"> <Manufacturer>Generic Wheels Manufacturer</Manufacturer> <Model>Generic Wheel</Model> <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> <Date>2017-01-11T14:00:00Z</Date> <AppVersion>Tyre Generation App 1.0</AppVersion> <Dimension>315/70 R22.5</Dimension> <RRCDeclared>0.0063</RRCDeclared> <FzISO>31300</FzISO> </Data> <Signature> <di:Reference URI="#WHL-5432198760-315-70-R22.5"> <di:Transforms> <di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/> <di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> </di:Transforms> <di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/> <di:DigestValue>KljvtvGUUQ/L7MiLVAqU+bckL5PNDNNwdeLH9kUVrfM=</di:DigestValue> </di:Reference> </Signature> </Tyre> </Axle> </Axles> </v2.0:Data> </AxleWheels> <Auxiliaries> <Data xsi:type="AUX_HEV-P_LorryDataType"> <Fan> <Technology>Hydraulic driven - Constant displacement pump</Technology> </Fan> <SteeringPump> <Technology axleNumber="1">Variable displacement elec. controlled</Technology> </SteeringPump> <ElectricSystem> <Technology>Standard technology - LED headlights, all</Technology> </ElectricSystem> <PneumaticSystem> <Technology>Medium Supply 2-stage</Technology> </PneumaticSystem> <HVAC> <Technology>Default</Technology> </HVAC> </Data> </Auxiliaries> </Components> </v2.0:Vehicle> </tns:VectoInputDeclaration> \ No newline at end of file diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV_mediumLorry_AMT_Px_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV_mediumLorry_AMT_Px_n_opt.xml index b8a043e71c57e96ec98be0d6e5f6eea82fcd3a8e..d98f5afcb099a764a2bdebddc1f78fd81831bbac 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV_mediumLorry_AMT_Px_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.10/WithoutOptionalEntries/HEV_mediumLorry_AMT_Px_n_opt.xml @@ -15,7 +15,6 @@ <RetarderType>None</RetarderType> <AngledriveType>None</AngledriveType> <ZeroEmissionVehicle>false</ZeroEmissionVehicle> - <NgTankSystem>Liquefied</NgTankSystem><!-- optional --> <VehicleTypeApprovalNumber>ASDF</VehicleTypeApprovalNumber> <ArchitectureID>P2</ArchitectureID> <OvcHev>false</OvcHev> diff --git a/VectoCore/VectoCoreTest/XML/XMLDeclarationInputv210.cs b/VectoCore/VectoCoreTest/XML/XMLDeclarationInputv210.cs index 1047ec3c37f0aab9e037b280616995734e628299..45753222fb267ae61fb9184eb676830c0284accb 100644 --- a/VectoCore/VectoCoreTest/XML/XMLDeclarationInputv210.cs +++ b/VectoCore/VectoCoreTest/XML/XMLDeclarationInputv210.cs @@ -216,13 +216,15 @@ namespace TUGraz.VectoCore.Tests.XML //optional test if (testDir == Optional_TESTS_DIR) { + Assert.IsNull(vehicle.TankSystem); Assert.IsNull(vehicle.Components.AngledriveInputData); Assert.IsNull(vehicle.Components.RetarderInputData); Assert.IsNull(vehicle.Components.AirdragInputData); - Assert.AreEqual(0.SI<CubicMeter>(), vehicle.CargoVolume); + Assert.IsNull(vehicle.CargoVolume); Assert.IsNull(vehicle.TorqueLimits); } else { + Assert.IsNotNull(vehicle.TankSystem); Assert.IsNotNull(vehicle.Components.AngledriveInputData); Assert.IsNotNull(vehicle.Components.RetarderInputData); Assert.IsNotNull(vehicle.Components.AirdragInputData); @@ -288,7 +290,7 @@ namespace TUGraz.VectoCore.Tests.XML [TestCase(@"HeavyLorry\HEV_heavyLorry_AMT_Px.xml", BASE_DIR)] [TestCase(@"HEV_heavyLorry_AMT_Px_Capacitor.xml", ADDITONAL_TESTS_DIR)] [TestCase(@"HEV_heavyLorry_AMT_Px_n_opt.xml", Optional_TESTS_DIR)] - public void TestHEVHeaveyLorry(string jobfile, string testDir) + public void TestHEVHeavyLorry(string jobfile, string testDir) { var filename = Path.Combine(testDir, jobfile); var dataProvider = xmlInputReader.CreateDeclaration(XmlReader.Create(filename)); @@ -310,6 +312,7 @@ namespace TUGraz.VectoCore.Tests.XML //optional test if (testDir == Optional_TESTS_DIR) { + Assert.IsNull(vehicle.TankSystem); Assert.IsNull(vehicle.Components.AngledriveInputData); Assert.IsNull(vehicle.Components.RetarderInputData); Assert.IsNull(vehicle.Components.AirdragInputData); @@ -319,6 +322,7 @@ namespace TUGraz.VectoCore.Tests.XML } else { + Assert.IsNotNull(vehicle.TankSystem); Assert.IsNotNull(vehicle.Components.AngledriveInputData); Assert.IsNotNull(vehicle.Components.RetarderInputData); Assert.IsNotNull(vehicle.Components.AirdragInputData); @@ -611,6 +615,7 @@ namespace TUGraz.VectoCore.Tests.XML //optional test if (testDir == Optional_TESTS_DIR) { + Assert.IsNull(vehicle.TankSystem); Assert.IsNull(vehicle.Components.AngledriveInputData); Assert.IsNull(vehicle.Components.RetarderInputData); Assert.IsNull(vehicle.Components.AirdragInputData); @@ -621,6 +626,7 @@ namespace TUGraz.VectoCore.Tests.XML } else { + Assert.IsNotNull(vehicle.TankSystem); Assert.IsNotNull(vehicle.Components.AngledriveInputData); Assert.IsNotNull(vehicle.Components.RetarderInputData); Assert.IsNotNull(vehicle.Components.AirdragInputData); @@ -663,7 +669,7 @@ namespace TUGraz.VectoCore.Tests.XML //optional test if (testDir == Optional_TESTS_DIR) { - Assert.IsNull(vehicle.Components.AngledriveInputData); + Assert.IsNull(vehicle.Components.AngledriveInputData); Assert.IsNull(vehicle.Components.RetarderInputData); Assert.IsNull(vehicle.TorqueLimits); Assert.IsNull(vehicle.ElectricMotorTorqueLimits);//Vehicle EM Drive Limits @@ -671,7 +677,7 @@ namespace TUGraz.VectoCore.Tests.XML } else { - Assert.IsNotNull(vehicle.Components.AngledriveInputData); + Assert.IsNotNull(vehicle.Components.AngledriveInputData); Assert.IsNotNull(vehicle.Components.RetarderInputData); Assert.IsNotNull(vehicle.TorqueLimits); Assert.IsNotNull(vehicle.ElectricMotorTorqueLimits);//Vehicle EM Drive Limits @@ -713,6 +719,7 @@ namespace TUGraz.VectoCore.Tests.XML if (testDir == Optional_TESTS_DIR) { + Assert.IsNull(vehicle.TankSystem); Assert.IsNull(vehicle.Components.AngledriveInputData); Assert.IsNull(vehicle.Components.RetarderInputData); Assert.IsNull(vehicle.Components.AirdragInputData); @@ -721,6 +728,7 @@ namespace TUGraz.VectoCore.Tests.XML } else { + Assert.IsNotNull(vehicle.TankSystem); Assert.IsNotNull(vehicle.Components.AngledriveInputData); Assert.IsNotNull(vehicle.Components.RetarderInputData); Assert.IsNotNull(vehicle.Components.AirdragInputData); @@ -817,12 +825,14 @@ namespace TUGraz.VectoCore.Tests.XML if (testDir == Optional_TESTS_DIR) { + Assert.IsNull(vehicle.TankSystem); Assert.IsNull(vehicle.Components.RetarderInputData); Assert.IsNull(vehicle.Components.AirdragInputData); Assert.IsNull(vehicle.ElectricMotorTorqueLimits);//Vehicle EM Drive Limits } else { + Assert.IsNotNull(vehicle.TankSystem); Assert.IsNotNull(vehicle.Components.RetarderInputData); Assert.IsNotNull(vehicle.Components.AirdragInputData); Assert.IsNotNull(vehicle.ElectricMotorTorqueLimits);//Vehicle EM Drive Limits @@ -865,12 +875,14 @@ namespace TUGraz.VectoCore.Tests.XML if (testDir == Optional_TESTS_DIR) { + Assert.IsNull(vehicle.TankSystem); Assert.IsNull(vehicle.Components.RetarderInputData); Assert.IsNull(vehicle.Components.AirdragInputData); Assert.IsNull(vehicle.ElectricMotorTorqueLimits);//Vehicle EM Drive Limits } else { + Assert.IsNotNull(vehicle.TankSystem); Assert.IsNotNull(vehicle.Components.RetarderInputData); Assert.IsNotNull(vehicle.Components.AirdragInputData); Assert.IsNotNull(vehicle.ElectricMotorTorqueLimits);//Vehicle EM Drive Limits @@ -911,6 +923,7 @@ namespace TUGraz.VectoCore.Tests.XML if (testDir == Optional_TESTS_DIR) { + Assert.IsNull(vehicle.TankSystem); Assert.IsNull(vehicle.Components.AngledriveInputData); Assert.IsNull(vehicle.Components.RetarderInputData); Assert.IsNull(vehicle.Components.AirdragInputData); @@ -920,6 +933,7 @@ namespace TUGraz.VectoCore.Tests.XML } else { + Assert.IsNotNull(vehicle.TankSystem); Assert.IsNotNull(vehicle.Components.AngledriveInputData); Assert.IsNotNull(vehicle.Components.RetarderInputData); Assert.IsNotNull(vehicle.Components.AirdragInputData); @@ -960,6 +974,7 @@ namespace TUGraz.VectoCore.Tests.XML if (testDir == Optional_TESTS_DIR) { + Assert.IsNull(vehicle.TankSystem); Assert.IsNull(vehicle.Components.RetarderInputData); Assert.IsNull(vehicle.Components.AirdragInputData); Assert.IsNull(vehicle.CargoVolume); @@ -967,6 +982,7 @@ namespace TUGraz.VectoCore.Tests.XML } else { + Assert.IsNotNull(vehicle.TankSystem); Assert.IsNotNull(vehicle.Components.RetarderInputData); Assert.IsNotNull(vehicle.Components.AirdragInputData); Assert.IsNotNull(vehicle.CargoVolume); @@ -1009,6 +1025,7 @@ namespace TUGraz.VectoCore.Tests.XML if (testDir == Optional_TESTS_DIR) { + Assert.IsNull(vehicle.TankSystem); Assert.IsNull(vehicle.Components.RetarderInputData); Assert.IsNull(vehicle.Components.AirdragInputData); Assert.IsNull(vehicle.CargoVolume); @@ -1016,6 +1033,7 @@ namespace TUGraz.VectoCore.Tests.XML } else { + Assert.IsNotNull(vehicle.TankSystem); Assert.IsNotNull(vehicle.Components.RetarderInputData); Assert.IsNotNull(vehicle.Components.AirdragInputData); Assert.IsNotNull(vehicle.CargoVolume); @@ -1193,12 +1211,14 @@ namespace TUGraz.VectoCore.Tests.XML if (testDir == Optional_TESTS_DIR) { + Assert.IsNull(vehicle.TankSystem); Assert.IsNull(vehicle.Components.RetarderInputData); Assert.IsNull(vehicle.Components.AxleGearInputData); Assert.IsNull(vehicle.Components.AirdragInputData); } else { + Assert.IsNotNull(vehicle.TankSystem); Assert.IsNotNull(vehicle.Components.RetarderInputData); Assert.IsNotNull(vehicle.Components.AxleGearInputData); Assert.IsNotNull(vehicle.Components.AirdragInputData); @@ -1288,6 +1308,7 @@ namespace TUGraz.VectoCore.Tests.XML if (testDir == Optional_TESTS_DIR) { + Assert.IsNull(vehicle.TankSystem); Assert.IsNull(vehicle.Components.RetarderInputData); Assert.IsNull(vehicle.Components.AxleGearInputData); Assert.IsNull(vehicle.Components.AirdragInputData); @@ -1295,6 +1316,7 @@ namespace TUGraz.VectoCore.Tests.XML } else { + Assert.IsNotNull(vehicle.TankSystem); Assert.IsNotNull(vehicle.Components.RetarderInputData); Assert.IsNotNull(vehicle.Components.RetarderInputData.LossMap); Assert.IsNotNull(vehicle.Components.AxleGearInputData);