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 01317883 authored by QUARITSCH Markus's avatar QUARITSCH Markus
Browse files

Pull request #25: Develop

Merge in VECTO/vecto-engine from VECTO/mq_vecto-engine:develop to develop

* commit 'fb201300':
  added current vecto .dll's of vecto release 3.3.11.2675
  added test for single fuel WHR mech
  added test for dual fuel with WHR ice
  added test for single fuel whr ice
  reset whr ice checkbox if new input file gets selected
  updated the xml schema of  expected result xml's and added additional tests
  added json reader test
  closed xml file readers to prevent IOException
  finished xml v2.3 and v1.0 generation
  Code for xml 1.0 added, currently not tested yet
  Adaptation of the xml version 2.3 generation to the current version, and added the current .dlls
  if paths have already been selected, the corresponding path is opened again when the corresponding folder button is pressed
  put some calculations in seperate methods
  rewrite the current xml generation
parents 5387a25a fb201300
Branches
Tags
No related merge requests found
Showing
with 6031 additions and 3263 deletions
No preview for this file type
No preview for this file type
No preview for this file type
......@@ -995,6 +995,13 @@ Public Class Form1
Private Sub BtOutputDirectory_Click(sender As Object, e As EventArgs) Handles BtOutputDirectory.Click
Dim directoryDialog As new CommonOpenFileDialog()
If(TbOutputFolder.Text.Length > 0)
If(Directory.Exists(TbOutputFolder.Text))
directoryDialog.InitialDirectory = TbOutputFolder.Text
End If
End If
directoryDialog.Multiselect=False
directoryDialog.EnsurePathExists = True
directoryDialog.IsFolderPicker = True
......@@ -1084,6 +1091,13 @@ Public Class Form1
Private Sub JobFileButton_Click(sender As Object, e As EventArgs) Handles JobFileButton.Click
Dim dlog As New OpenFileDialog
If(TbJobFilePath.Text.Length > 0)
Dim initPath = Path.GetDirectoryName(TbJobFilePath.Text)
If(Directory.Exists(initPath))
dlog.InitialDirectory = initPath
End If
End If
dlog.Filter = "Vecto Engine Job (*.vep)|*.vep"
If dlog.ShowDialog() <> DialogResult.OK Then
Return
......@@ -1103,6 +1117,7 @@ Public Class Form1
Me.cbDualFuel.Checked=Job.DualFuel
Me.cbWHRMech.Checked=Job.WHR_Mech
Me.cbWHREl.Checked=Job.WHR_El
Me.cbWhrICE.Checked = Job.WHR_ICE
Me.TbManufacturer.Text = Job.Manufacturer
Me.TbModel.Text = Job.Model
Me.TbCertNumber.Text = Job.CertNumber
......
This diff is collapsed.
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="Engine" xml:space="preserve">
<value>Engine</value>
</data>
<data name="Engine_AppVersion" xml:space="preserve">
<value>AppVersion</value>
</data>
<data name="Engine_BFColdHot" xml:space="preserve">
<value>BFColdHot</value>
</data>
<data name="Engine_CertificationNumber" xml:space="preserve">
<value>CertificationNumber</value>
</data>
<data name="Engine_CFNCV" xml:space="preserve">
<value>CFNCV</value>
</data>
<data name="Engine_CFRegPer" xml:space="preserve">
<value>CFRegPer</value>
</data>
<data name="Engine_Date" xml:space="preserve">
<value>Date</value>
</data>
<data name="Engine_Displacement" xml:space="preserve">
<value>Displacement</value>
</data>
<data name="Engine_Fuel" xml:space="preserve">
<value>Fuel</value>
</data>
<data name="Engine_FuelConsumptionMap" xml:space="preserve">
<value>FuelConsumptionMap</value>
</data>
<data name="Engine_FuelConsumptionMap_ElectricPower_Attr" xml:space="preserve">
<value>electricPower</value>
</data>
<data name="Engine_FuelConsumptionMap_EngineSpeed_Attr" xml:space="preserve">
<value>engineSpeed</value>
</data>
<data name="Engine_FuelConsumptionMap_Entry" xml:space="preserve">
<value>Entry</value>
</data>
<data name="Engine_FuelConsumptionMap_FuelConsumption_Attr" xml:space="preserve">
<value>fuelConsumption</value>
</data>
<data name="Engine_FuelConsumptionMap_MechanicalPower_Attr" xml:space="preserve">
<value>mechanicalPower</value>
</data>
<data name="Engine_FuelConsumptionMap_Torque_Attr" xml:space="preserve">
<value>torque</value>
</data>
<data name="Engine_FuelType" xml:space="preserve">
<value>FuelType</value>
</data>
<data name="Engine_Fuel_BFColdHot" xml:space="preserve">
<value>BFColdHot</value>
</data>
<data name="Engine_Fuel_CFNCV" xml:space="preserve">
<value>CFNCV</value>
</data>
<data name="Engine_Fuel_CFRegPer" xml:space="preserve">
<value>CFRegPer</value>
</data>
<data name="Engine_Fuel_Type_Attr" xml:space="preserve">
<value>type</value>
</data>
<data name="Engine_Fuel_WHTCMotorway" xml:space="preserve">
<value>WHTCMotorway</value>
</data>
<data name="Engine_Fuel_WHTCRural" xml:space="preserve">
<value>WHTCRural</value>
</data>
<data name="Engine_Fuel_WHTCUrban" xml:space="preserve">
<value>WHTCUrban</value>
</data>
<data name="Engine_FullLoadAndDragCurve" xml:space="preserve">
<value>FullLoadAndDragCurve</value>
</data>
<data name="Engine_FullLoadAndDragCurve_DragTorque_Attr" xml:space="preserve">
<value>dragTorque</value>
</data>
<data name="Engine_FullLoadAndDragCurve_EngineSpeed_Attr" xml:space="preserve">
<value>engineSpeed</value>
</data>
<data name="Engine_FullLoadAndDragCurve_Entry" xml:space="preserve">
<value>Entry</value>
</data>
<data name="Engine_FullLoadAndDragCurve_MaxTorque_Attr" xml:space="preserve">
<value>maxTorque</value>
</data>
<data name="Engine_IdlingSpeed" xml:space="preserve">
<value>IdlingSpeed</value>
</data>
<data name="Engine_Manufacturer" xml:space="preserve">
<value>Manufacturer</value>
</data>
<data name="Engine_MaxEngineTorque" xml:space="preserve">
<value>MaxEngineTorque</value>
</data>
<data name="Engine_Mode" xml:space="preserve">
<value>Mode</value>
</data>
<data name="Engine_Model" xml:space="preserve">
<value>Model</value>
</data>
<data name="Engine_RatedPower" xml:space="preserve">
<value>RatedPower</value>
</data>
<data name="Engine_RatedSpeed" xml:space="preserve">
<value>RatedSpeed</value>
</data>
<data name="Engine_WHRCorrectionFactors" xml:space="preserve">
<value>WHRCorrectionFactors</value>
</data>
<data name="Engine_WHRCorrectionFactors_BFColdHot" xml:space="preserve">
<value>BFColdHot</value>
</data>
<data name="Engine_WHRCorrectionFactors_CFRegPer" xml:space="preserve">
<value>CFRegPer</value>
</data>
<data name="Engine_WHRCorrectionFactors_Electrical" xml:space="preserve">
<value>Electrical</value>
</data>
<data name="Engine_WHRCorrectionFactors_Mechanical" xml:space="preserve">
<value>Mechanical</value>
</data>
<data name="Engine_WHRCorrectionFactors_Motorway" xml:space="preserve">
<value>Motorway</value>
</data>
<data name="Engine_WHRCorrectionFactors_Rural" xml:space="preserve">
<value>Rural</value>
</data>
<data name="Engine_WHRCorrectionFactors_Urban" xml:space="preserve">
<value>Urban</value>
</data>
<data name="Engine_WHRType" xml:space="preserve">
<value>WHRType</value>
</data>
<data name="Engine_WHRType_ElectricalOutput" xml:space="preserve">
<value>ElectricalOutput</value>
</data>
<data name="Engine_WHRType_MechanicalOutputDrivetrain" xml:space="preserve">
<value>MechanicalOutputDrivetrain</value>
</data>
<data name="Engine_WHRType_MechanicalOutputICE" xml:space="preserve">
<value>MechanicalOutputICE</value>
</data>
<data name="Engine_WHTCMotorway" xml:space="preserve">
<value>WHTCMotorway</value>
</data>
<data name="Engine_WHTCRural" xml:space="preserve">
<value>WHTCRural</value>
</data>
<data name="Engine_WHTCUrban" xml:space="preserve">
<value>WHTCUrban</value>
</data>
<data name="Report_DataWrap" xml:space="preserve">
<value>Data</value>
</data>
<data name="VectoInputDeclaration" xml:space="preserve">
<value>VectoInputDeclaration</value>
</data>
</root>
\ No newline at end of file
......@@ -177,6 +177,11 @@
<DesignTime>True</DesignTime>
<DependentUpon>JSONKeys.resx</DependentUpon>
</Compile>
<Compile Include="Resources\XMLNames.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>XMLNames.resx</DependentUpon>
</Compile>
<Compile Include="VectoEngineVersion.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
......@@ -200,6 +205,12 @@
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="Resources\XMLNames.resx">
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<Generator>PublicResXFileCodeGenerator</Generator>
<LastGenOutput>XMLNames.Designer.vb</LastGenOutput>
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="My Project\app.manifest" />
......
......@@ -57,12 +57,12 @@ Public Class cJSON
End If
Content = JsonConvert.DeserializeObject(File.ReadAllText(path), Content.GetType)
End sub
End Sub
Public Function ReadJSON(jobFile As String)
Public Function ReadJSON(jobFile As String) As cJob
Dim cJob As cJob = new cJob()
Dim cJob As cJob = New cJob()
Dim MsgSrc As String
Dim JSON As New cJSON
......@@ -73,9 +73,9 @@ Public Class cJSON
'Try
Dim body = JSON.Content("Body")
if (body is nothing) Then throw New Exception("Failed to read job-file - missing body")
If (body Is Nothing) Then Throw New Exception("Failed to read job-file - missing body")
Dim engine = body(JSONKeys.Engine)
if (engine is nothing) Then throw New Exception("failed to read job file - no engine parameters")
If (engine Is Nothing) Then Throw New Exception("failed to read job file - no engine parameters")
cJob.DualFuel = engine(JSONKeys.Engine_DualFuel)
cJob.WHR_ICE = engine(JSONKeys.Engine_WHR_ICE)
......@@ -95,7 +95,7 @@ Public Class cJSON
cJob.CertNumber = engine(JSONKeys.Engine_CertificationNumber)
Dim fuels = body(JSONKeys.Fuels)
if (fuels is nothing) Then throw new Exception("failed to read job file - no fuels")
If (fuels Is Nothing) Then Throw New Exception("failed to read job file - no fuels")
cJob.FCspecMeas_HotUrb = fuels(0)(JSONKeys.Fuel_WHTCUrban)
cJob.FCspecMeas_HotRur = fuels(0)(JSONKeys.Fuel_WHTCRural)
cJob.FCspecMeas_HotMw = fuels(0)(JSONKeys.Fuel_WHTCMotorway)
......@@ -106,10 +106,10 @@ Public Class cJSON
cJob.NCVfuel = fuels(0)(JSONKeys.Fuel_NCV)
Dim whr = body(JSONKeys.WHRSystem)
IF cJob.WHR_Mech = True Then
If (whr is nothing) Then throw new Exception("failed to read job file - missing whr data")
If cJob.WHR_Mech = True Then
If (whr Is Nothing) Then Throw New Exception("failed to read job file - missing whr data")
Dim whrMech = whr(JSONKeys.WHR_Mechanical)
if (whrMech is nothing) Then Throw new Exception("failed to read job file - missing electrical whr data")
If (whrMech Is Nothing) Then Throw New Exception("failed to read job file - missing electrical whr data")
cJob.FCspecMeas_HotUrbWHRMech = whrMech(JSONKeys.WHR_WHTCUrban)
cJob.FCspecMeas_HotRurWHRMech = whrMech(JSONKeys.WHR_WHTCRural)
cJob.FCspecMeas_HotMwWHRMech = whrMech(JSONKeys.WHR_WHTC_Motorway)
......@@ -119,9 +119,9 @@ Public Class cJSON
End If
If cJob.WHR_El = True Then
If (whr is nothing) Then throw new Exception("failed to read job file - missing whr data")
dim whrEl = whr(JSONKeys.WHR_Electrical)
if (whrEl is nothing) Then Throw new Exception("failed to read job file - missing electrical whr data")
If (whr Is Nothing) Then Throw New Exception("failed to read job file - missing whr data")
Dim whrEl = whr(JSONKeys.WHR_Electrical)
If (whrEl Is Nothing) Then Throw New Exception("failed to read job file - missing electrical whr data")
cJob.FCspecMeas_HotUrbWHREl = whrEl(JSONKeys.WHR_WHTCUrban)
cJob.FCspecMeas_HotRurWHREl = whrEl(JSONKeys.WHR_WHTCRural)
cJob.FCspecMeas_HotMwWHREl = whrEl(JSONKeys.WHR_WHTC_Motorway)
......
......@@ -262,6 +262,75 @@ Public Class cJob
ColdHotBalancingFactor = 1 + 0.1*(FCspecMeas_ColdTot - FCspecMeas_HotTot)/FCspecMeas_HotTot
If ColdHotBalancingFactor < 1 Then ColdHotBalancingFactor = 1
CalculateDualFuel()
CalculateWHRMech()
CalculateWHREl()
'calculate NCV correction factor depending on fuel type
MAP.NCV_CorrectionFactor = Math.Round(NCVfuel/NCV_std.Item(FuelType), 4)
MAP.temp_Map_FuelType = FuelType
If DualFuel Then
MAP.NCV_CorrectionFactor2 = Math.Round(NCVfuel2/NCV_std.Item(FuelType2), 4)
MAP.temp_Map_FuelType2 = FuelType2
End If
'MsgBox(MAP.NCV_CorrectionFactor)
'Write output files
WorkerMsg(tMsgID.Normal, "Writing XML output file")
'If Not MAP.WriteMap(OutPath & fFILE(MapFile, False) & "_mod.vmap") Then Return False
#If DEBUG Then
If _
Not _
MAP.WriteMap(Path.Combine(OutPath,
RemoveInvalidFileCharacters(
"UNOFFICIAL_OUTPUT_" & Manufacturer & "_" & Model & "_" & CertNumber &
"_FCmap.vmap"))) _
Then Return False
#End If
#If DEBUG Then
If _
Not _
MAP.WriteFLD(
Path.Combine(OutPath,
RemoveInvalidFileCharacters(
"UNOFFICIAL_OUTPUT_" & Manufacturer & "_" & Model & "_" & CertNumber & "_FLC.vfld")),
True) _
Then Return False
#End If
Dim componentXmlGenerated As Boolean
If DualFuel = True Or
WHR_ICE = True Or
WHR_Mech = True Or
WHR_El = True Then
componentXmlGenerated = MAP.WriteXmlComponentFileV23(
Path.Combine(OutPath, RemoveInvalidFileCharacters(Manufacturer & "_" & Model & ".xml")), Me)
Else
componentXmlGenerated = MAP.WriteXmlComponentFileV10(
Path.Combine(OutPath, RemoveInvalidFileCharacters(Manufacturer & "_" & Model & ".xml")), Me)
End If
WorkerMsg(tMsgID.Normal, "Completed.")
If NumWarnings > 0 Then
WorkerMsg(tMsgID.Warn,
"ATTENTION: " & NumWarnings &
" Warning(s) occured: Please check detailled descriptions in 'Message Window'!")
End If
#If RELEASE_CANDIDATE Then
WorkerMsg(tMsgID.Err,
"ATTENTION: RELEASE CANDIDATE, NOT FOR CERTIFICATION!")
#End If
Return componentXmlGenerated
End Function
Private Sub CalculateDualFuel()
If DualFuel Then
'Calculation of WHTC-Correction and Cold-Hot-Balancing-Factor for second fuel
......@@ -294,8 +363,11 @@ Public Class cJob
WorkerMsg(tMsgID.Normal, " Total: " & (WHTCsim.TotFCspec).ToString("f2") & " [g/kWh].")
End If
If WHR_Mech Then
End Sub
Private Sub CalculateWHRMech()
If WHR_Mech Then
WHTCurbanFactorWHRMech = FCspecMeas_HotUrbWHRMech / Math.Round(WHTCsim.WHRMechUrban, 2)
WHTCruralFactorWHRMech = FCspecMeas_HotRurWHRMech / Math.Round(WHTCsim.WHRMechRural, 2)
WHTCmotorwayFactorWHRMech = FCspecMeas_HotMwWHRMech / Math.Round(WHTCsim.WHRMechMotorway, 2)
......@@ -309,6 +381,10 @@ Public Class cJob
ColdHotBalancingFactorWHRMech = 1 + 0.1 * (FCspecMeas_ColdTotWHRMech - FCspecMeas_HotTotWHRMech) / FCspecMeas_HotTotWHRMech
End If
End Sub
Private Sub CalculateWHREl()
If WHR_El Then
WHTCurbanFactorWHREl = FCspecMeas_HotUrbWHREl / Math.Round(WHTCsim.WHRElUrban, 2)
......@@ -324,58 +400,9 @@ Public Class cJob
ColdHotBalancingFactorWHREl = 1 + 0.1*(FCspecMeas_ColdTotWHREl - FCspecMeas_HotTotWHREl)/FCspecMeas_HotTotWHREl
End If
'calculate NCV correction factor depending on fuel type
MAP.NCV_CorrectionFactor = Math.Round(NCVfuel/NCV_std.Item(FuelType), 4)
MAP.temp_Map_FuelType = FuelType
If DualFuel Then
MAP.NCV_CorrectionFactor2 = Math.Round(NCVfuel2/NCV_std.Item(FuelType2), 4)
MAP.temp_Map_FuelType2 = FuelType2
End If
'MsgBox(MAP.NCV_CorrectionFactor)
'Write output files
WorkerMsg(tMsgID.Normal, "Writing XML output file")
'If Not MAP.WriteMap(OutPath & fFILE(MapFile, False) & "_mod.vmap") Then Return False
#If DEBUG Then
If _
Not _
MAP.WriteMap(Path.Combine(OutPath,
RemoveInvalidFileCharacters(
"UNOFFICIAL_OUTPUT_" & Manufacturer & "_" & Model & "_" & CertNumber &
"_FCmap.vmap"))) _
Then Return False
#End If
#If DEBUG Then
If _
Not _
MAP.WriteFLD(
Path.Combine(OutPath,
RemoveInvalidFileCharacters(
"UNOFFICIAL_OUTPUT_" & Manufacturer & "_" & Model & "_" & CertNumber & "_FLC.vfld")),
True) _
Then Return False
#End If
Dim outgenerated = MAP.WriteXmlComponentFile(
Path.Combine(OutPath, RemoveInvalidFileCharacters(Manufacturer & "_" & Model & ".xml")), Me)
WorkerMsg(tMsgID.Normal, "Completed.")
If NumWarnings > 0 Then
WorkerMsg(tMsgID.Warn,
"ATTENTION: " & NumWarnings &
" Warning(s) occured: Please check detailled descriptions in 'Message Window'!")
End If
End Sub
#If RELEASE_CANDIDATE Then
WorkerMsg(tMsgID.Err,
"ATTENTION: RELEASE CANDIDATE, NOT FOR CERTIFICATION!")
#End If
Return outgenerated
End Function
Private Function RemoveInvalidFileCharacters(filename As String) As String
return string.Join("", filename.Split(Path.GetInvalidFileNameChars()))
......
This diff is collapsed.
<?xml version="1.0" encoding="utf-8"?>
<tns:VectoInputDeclaration schemaVersion="2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.3" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0 https://webgate.ec.europa.eu/CITnet/svn/VECTO/trunk/Share/XML/XSD/DEV/VectoComponent.2.0.xsd">
<tns:VectoInputDeclaration xmlns="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0" xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" schemaVersion="2.0" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" xmlns:di="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationComponent V:\VectoCore\VectoCore\Resources\XSD/VectoDeclarationComponent.xsd">
<tns:Engine xsi:type="v2.0:EngineComponentDeclarationType">
<v2.0:Data xsi:type="v2.3:EngineDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.3" id="ENG-73252dbf57754b8fbf5c">
<v2.0:Data xsi:type="v2.3:EngineDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" id="ENG-c03efb5d1af24cd0990e">
<Manufacturer>IVT at TU Graz</Manufacturer>
<Model>Best engine ever - Dual fuel+WHR_el</Model>
<CertificationNumber>*1234*</CertificationNumber>
<Date>2019-12-19T11:37:05.2952396Z</Date>
<Date>2022-04-22T12:48:44.720144Z</Date>
<AppVersion>VECTO-Engine 1.5.0.1811</AppVersion>
<Displacement>3000</Displacement>
<RatedSpeed>2200</RatedSpeed>
......@@ -674,13 +674,13 @@
</Mode>
</v2.0:Data>
<v2.0:Signature>
<Reference URI="#ENG-73252dbf57754b8fbf5c" xmlns="http://www.w3.org/2000/09/xmldsig#">
<Reference URI="#ENG-c03efb5d1af24cd0990e" xmlns="http://www.w3.org/2000/09/xmldsig#">
<Transforms>
<Transform Algorithm="urn:vecto:xml:2017:canonicalization" />
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" />
<DigestValue>6Jd42QWXlX4hybnR0ysQzg1Md9emRFonWUJOvuLHF5g=</DigestValue>
<DigestValue>/7bo70LKMydZzSAA/BR3fwkn3GecX8kvgCYXMh1owbQ=</DigestValue>
</Reference>
</v2.0:Signature>
</tns:Engine>
......
This diff is collapsed.
<?xml version="1.0" encoding="utf-8"?>
<tns:VectoInputDeclaration schemaVersion="2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.3" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0 https://webgate.ec.europa.eu/CITnet/svn/VECTO/trunk/Share/XML/XSD/DEV/VectoComponent.2.0.xsd">
<tns:VectoInputDeclaration xmlns="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0" xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" schemaVersion="2.0" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" xmlns:di="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationComponent V:\VectoCore\VectoCore\Resources\XSD/VectoDeclarationComponent.xsd">
<tns:Engine xsi:type="v2.0:EngineComponentDeclarationType">
<v2.0:Data xsi:type="v2.3:EngineDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.3" id="ENG-6a211dcc8238475593ad">
<v2.0:Data xsi:type="v2.3:EngineDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" id="ENG-b0d290a9980d49e99e1b">
<Manufacturer>IVT at TU Graz</Manufacturer>
<Model>Best engine ever - Dual fuel+WHR_mech</Model>
<CertificationNumber>*1234*</CertificationNumber>
<Date>2019-12-19T11:37:20.7824698Z</Date>
<Date>2022-04-22T12:49:11.2353336Z</Date>
<AppVersion>VECTO-Engine 1.5.0.1811</AppVersion>
<Displacement>3000</Displacement>
<RatedSpeed>2200</RatedSpeed>
......@@ -674,13 +674,13 @@
</Mode>
</v2.0:Data>
<v2.0:Signature>
<Reference URI="#ENG-6a211dcc8238475593ad" xmlns="http://www.w3.org/2000/09/xmldsig#">
<Reference URI="#ENG-b0d290a9980d49e99e1b" xmlns="http://www.w3.org/2000/09/xmldsig#">
<Transforms>
<Transform Algorithm="urn:vecto:xml:2017:canonicalization" />
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" />
<DigestValue>O1daZ31T2AJIG2/aUkkrEqqkYpl0F3Ag2Ci1OttTGp0=</DigestValue>
<DigestValue>Xr6Kpu4pUQNjr7kuQobwmvdkqhcZw6s4qs3DS242wc0=</DigestValue>
</Reference>
</v2.0:Signature>
</tns:Engine>
......
<?xml version="1.0" encoding="utf-8"?>
<tns:VectoInputDeclaration schemaVersion="2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.3" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0 https://webgate.ec.europa.eu/CITnet/svn/VECTO/trunk/Share/XML/XSD/DEV/VectoComponent.2.0.xsd">
<tns:VectoInputDeclaration xmlns="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0" xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" schemaVersion="2.0" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" xmlns:di="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationComponent V:\VectoCore\VectoCore\Resources\XSD/VectoDeclarationComponent.xsd">
<tns:Engine xsi:type="v2.0:EngineComponentDeclarationType">
<v2.0:Data xsi:type="v2.3:EngineDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.3" id="ENG-699107ec0fa24912829e">
<v2.0:Data xsi:type="v2.3:EngineDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" id="ENG-fc91717883334d5ea516">
<Manufacturer>IVT at TU Graz</Manufacturer>
<Model>Best engine ever - Dual fuel</Model>
<CertificationNumber>*1234*</CertificationNumber>
<Date>2019-12-19T11:36:44.1988914Z</Date>
<Date>2022-04-22T12:48:05.5944053Z</Date>
<AppVersion>VECTO-Engine 1.5.0.1811</AppVersion>
<Displacement>3000</Displacement>
<RatedSpeed>2200</RatedSpeed>
......@@ -665,13 +665,13 @@
</Mode>
</v2.0:Data>
<v2.0:Signature>
<Reference URI="#ENG-699107ec0fa24912829e" xmlns="http://www.w3.org/2000/09/xmldsig#">
<Reference URI="#ENG-fc91717883334d5ea516" xmlns="http://www.w3.org/2000/09/xmldsig#">
<Transforms>
<Transform Algorithm="urn:vecto:xml:2017:canonicalization" />
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" />
<DigestValue>kV45mZ19obdeNZL/E0tyShB3V8M3FnDXEI+mGbA0D2U=</DigestValue>
<DigestValue>hPls0MBANU0gSU6c0+KRZK8o0Pjnw+oZRY5d7efnB4o=</DigestValue>
</Reference>
</v2.0:Signature>
</tns:Engine>
......
<?xml version="1.0" encoding="utf-8"?>
<tns:VectoInputDeclaration schemaVersion="2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.3" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0 https://webgate.ec.europa.eu/CITnet/svn/VECTO/trunk/Share/XML/XSD/DEV/VectoComponent.2.0.xsd">
<tns:VectoInputDeclaration xmlns="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0" xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationComponent:v2.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" schemaVersion="2.0" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" xmlns:di="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationComponent V:\VectoCore\VectoCore\Resources\XSD/VectoDeclarationComponent.xsd">
<tns:Engine xsi:type="v2.0:EngineComponentDeclarationType">
<v2.0:Data xsi:type="v2.3:EngineDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.3" id="ENG-fa0d929924ee464183a9">
<v2.0:Data xsi:type="v2.3:EngineDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" id="ENG-3ee438e1004e47b7843b">
<Manufacturer>IVT at TU Graz</Manufacturer>
<Model>Best engine ever - Single fuel</Model>
<CertificationNumber>*1234*</CertificationNumber>
<Date>2019-12-19T11:42:48.1849302Z</Date>
<Date>2022-04-22T12:50:04.9928543Z</Date>
<AppVersion>VECTO-Engine 1.5.0.1811</AppVersion>
<Displacement>3000</Displacement>
<RatedSpeed>2200</RatedSpeed>
......@@ -485,14 +485,14 @@
</Mode>
</v2.0:Data>
<v2.0:Signature>
<Reference URI="#ENG-fa0d929924ee464183a9" xmlns="http://www.w3.org/2000/09/xmldsig#">
<Transforms>
<Transform Algorithm="urn:vecto:xml:2017:canonicalization" />
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" />
<DigestValue>p2O8jl2q9WRGlUdqjxz6Fm546rk0PlaT4iTAagY6mYw=</DigestValue>
</Reference>
<di:Reference URI="#ENG-3ee438e1004e47b7843b">
<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>pWH69clCkszog8bofugjWn8tCWY3GSnCjW/vD3ZYR78=</di:DigestValue>
</di:Reference>
</v2.0:Signature>
</tns:Engine>
</tns:VectoInputDeclaration>
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
{
"Header": {
"CreatedBy": "",
"Date": "2019-12-17T15:47:13.8213475Z",
"AppVersion": "VECTO-Engine 1.5.0.1811",
"FileVersion": "1"
},
"Body": {
"Engine": {
"DualFuel": true,
"WHR ICE": false,
"WHR Mechanical": false,
"WHR Electrical": false,
"Manufacturer": "IVT at TU Graz",
"Model": "Best engine ever - Dual fuel",
"Displacement": 3000.0,
"RatedPower": 130,
"RatedSpeed": 2200,
"ParentFullConsumption": "Demo_Map_v1.5_DF.csv",
"ParentFullLoadCurve": "Demo_FullLoad_Parent_v1.5.csv",
"FullLoadCurve": "Demo_FullLoad_Child_v1.5.csv",
"MotoringCurve": "Demo_Motoring_v1.5.csv",
"ParentIdlingSpeed": 600.0,
"IdlingSpeed": 600.0,
"CertificationNumber": "*1234*"
},
"WHR": {},
"Fuels": [
{
"WHTCUrban": 211.1,
"WHTCRural": 201.7,
"WHTCMotorway": 196.3,
"ColdStartTotal": 205.6,
"HotStartTotal": 198.2,
"CFRegPer": 1.0,
"FuelType": "Natural Gas / CI",
"NCV": 48.7
},
{
"WHTCUrban": 25.6,
"WHTCRural": 19.2,
"WHTCMotorway": 15.1,
"ColdStartTotal": 23.0,
"HotStartTotal": 18.0,
"CFRegPer": 1.0,
"FuelType": "Diesel / CI",
"NCV": 42.5
}
]
}
}
\ No newline at end of file
{
"Header": {
"CreatedBy": "",
"Date": "2019-12-17T15:58:06.5779019Z",
"AppVersion": "VECTO-Engine 1.5.0.1811",
"FileVersion": "1"
},
"Body": {
"Engine": {
"DualFuel": true,
"WHR ICE": false,
"WHR Mechanical": false,
"WHR Electrical": true,
"Manufacturer": "IVT at TU Graz",
"Model": "Best engine ever - Dual fuel+WHR_el",
"Displacement": 3000.0,
"RatedPower": 130,
"RatedSpeed": 2200,
"ParentFullConsumption": "Demo_Map_v1.5_DF_WHRel.csv",
"ParentFullLoadCurve": "Demo_FullLoad_Parent_v1.5.csv",
"FullLoadCurve": "Demo_FullLoad_Child_v1.5.csv",
"MotoringCurve": "Demo_Motoring_v1.5.csv",
"ParentIdlingSpeed": 600.0,
"IdlingSpeed": 600.0,
"CertificationNumber": "*1234*"
},
"WHR": {
"electrical": {
"WHTCUrban": 49.2,
"WHTCRural": 55.4,
"WHTCMotorway": 75.3,
"ColdStartTotal": 23.0,
"HotStartTotal": 61.5,
"CFRegPer": 1.0
}
},
"Fuels": [
{
"WHTCUrban": 211.1,
"WHTCRural": 201.7,
"WHTCMotorway": 196.3,
"ColdStartTotal": 205.6,
"HotStartTotal": 198.2,
"CFRegPer": 1.0,
"FuelType": "Natural Gas / CI",
"NCV": 48.7
},
{
"WHTCUrban": 25.6,
"WHTCRural": 19.2,
"WHTCMotorway": 15.1,
"ColdStartTotal": 23.0,
"HotStartTotal": 18.0,
"CFRegPer": 1.0,
"FuelType": "Diesel / CI",
"NCV": 42.5
}
]
}
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment