Commit b2abc6df authored by Kai-Holger Brassel's avatar Kai-Holger Brassel
Browse files

First public version as of Verena Weilers Dissertation

parent 2c40014f
No related merge requests found
Showing with 7570 additions and 0 deletions
+7570 -0
<?xml version="1.0" encoding="UTF-8"?>
<org.eclipse.emf.ecp.view.model:View xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:org.eclipse.emf.ecp.view.model="http://org/eclipse/emf/ecp/view/model/1180" xmlns:org.eclipse.emf.ecp.view.table.model="http://org/eclipse/emf/ecp/view/table/model/150" xmi:id="_AaR5kNWOEeqGXM8gpSKWmQ" name="TableFunction">
<rootEClass href="https://www.hft-stuttgart.de/energycomponents#//TableFunction"/>
<children xsi:type="org.eclipse.emf.ecp.view.model:Control" xmi:id="_AaSgoNWOEeqGXM8gpSKWmQ" name="Control parameter">
<domainModelReference xsi:type="org.eclipse.emf.ecp.view.model:FeaturePathDomainModelReference" xmi:id="_wUoxgOFbEeqtNPSEI5W18w">
<domainModelEFeature xsi:type="ecore:EAttribute" href="https://www.hft-stuttgart.de/energycomponents#//TableFunction/key"/>
</domainModelReference>
</children>
<children xsi:type="org.eclipse.emf.ecp.view.table.model:TableControl" xmi:id="_CeU08NWOEeqGXM8gpSKWmQ" detailEditing="WithPanel">
<domainModelReference xsi:type="org.eclipse.emf.ecp.view.table.model:TableDomainModelReference" xmi:id="_EhMEkNWOEeqGXM8gpSKWmQ">
<domainModelReference xsi:type="org.eclipse.emf.ecp.view.model:FeaturePathDomainModelReference" xmi:id="_EhMEkdWOEeqGXM8gpSKWmQ">
<domainModelEFeature xsi:type="ecore:EReference" href="https://www.hft-stuttgart.de/energycomponents#//TableFunction/datapoints"/>
</domainModelReference>
</domainModelReference>
</children>
<ecorePaths>/de.hftstuttgart.energycomponents/model/EnergyComponents.ecore</ecorePaths>
</org.eclipse.emf.ecp.view.model:View>
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src-gen"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
<attributes>
<attribute name="module" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="output" path="bin"/>
</classpath>
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>de.hftstuttgart.energycomponents</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.pde.ManifestBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.pde.SchemaBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.sirius.nature.modelingproject</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.eclipse.pde.PluginNature</nature>
</natures>
</projectDescription>
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: de.hftstuttgart.energycomponents;singleton:=true
Automatic-Module-Name: de.hftstuttgart.energycomponents
Bundle-Version: 1.0.0.qualifier
Bundle-ClassPath: .
Bundle-Vendor: %providerName
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Export-Package: de.hftstuttgart.energycomponents,
de.hftstuttgart.energycomponents.impl,
de.hftstuttgart.energycomponents.util
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.emf.ecore;visibility:=reexport,
de.hftstuttgart.units;bundle-version="1.0.0"
Bundle-ActivationPolicy: lazy
#
bin.includes = .,\
model/,\
META-INF/,\
plugin.xml,\
plugin.properties
jars.compile.order = .
source.. = src-gen/
output.. = bin/
This source diff could not be displayed because it is too large. You can view the blob instead.
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="energycomponents" nsURI="https://www.hft-stuttgart.de/energycomponents"
nsPrefix="encomp">
<eClassifiers xsi:type="ecore:EClass" name="EnergyComponent" abstract="true">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="modelName" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" defaultValueLiteral="model xyz"
iD="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="revisionYear" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Year from which information is provided"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="technicalLifetime" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"
defaultValueLiteral="30">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="years"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="manufacturer" lowerBound="1"
eType="#//Manufacturer"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="EnergyComponentsCatalog">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="author" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
defaultValueLiteral="HFT_Stuttgart"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="bioFuels" upperBound="-1"
eType="#//BioFuel" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="media" upperBound="-1"
eType="#//Medium" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="combinedHeatPowerUtilities"
upperBound="-1" eType="#//CombinedHeatPower" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="boilers" upperBound="-1"
eType="#//Boiler" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="photovoltaicModules" upperBound="-1"
eType="#//PhotovoltaicModule" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="solarThermalCollectors"
upperBound="-1" eType="#//SolarThermalCollector" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="windTurbines" upperBound="-1"
eType="#//WindTurbine" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="geothermalHeatExchangers"
upperBound="-1" eType="#//GeothermalHeatExchanger" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="heatPumps" upperBound="-1"
eType="#//HeatPump" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="inverters" upperBound="-1"
eType="#//Inverter" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="heatExchangers" upperBound="-1"
eType="#//HeatExchanger" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="electrolyzers" upperBound="-1"
eType="#//Electrolyzer" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="hydrogenCompressors" upperBound="-1"
eType="#//HydrogenCompressor" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="fuelCells" upperBound="-1"
eType="#//FuelCell" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="thermalStorages" upperBound="-1"
eType="#//ThermalStorage" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="powerStorages" upperBound="-1"
eType="#//ElectricalStorage" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="hydrogenStorages" upperBound="-1"
eType="#//HydrogenStorage" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="fossilFuels" upperBound="-1"
eType="#//FossilFuel" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="manufacturers" upperBound="-1"
eType="#//Manufacturer" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="materials" upperBound="-1"
eType="#//Material" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="energycomponentscostcatalog"
eType="#//EnergyComponentsCostCatalog" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="energycarriers" upperBound="-1"
eType="#//EnergyCarrier" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ThermalStorage" eSuperTypes="#//EnergyComponent">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="volume" eType="#//QuantityDouble"
defaultValueLiteral="5 m³">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="m³"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="thermalStorageType" unique="false"
eType="#//ThermalStorageTypes" transient="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="maxTemp" eType="#//QuantityDouble"
defaultValueLiteral="80 °C">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="degree Celsius"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="tankThickness" eType="#//QuantityDouble"
defaultValueLiteral="10 mm "/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="insulationThickness" eType="#//QuantityDouble"
defaultValueLiteral="100 mm"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="usesMedium" lowerBound="1"
eType="#//Medium"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="insulationMaterial" eType="#//Material"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="height" eType="#//QuantityDouble"
defaultValueLiteral="2 m"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="tankMaterial" eType="#//Material"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ElectricalStorage" eSuperTypes="#//EnergyComponent">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="electricalStorageType"
lowerBound="1" eType="#//ElectricalStorageTypes"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="batteryCapacity" lowerBound="1"
eType="#//QuantityDouble" defaultValueLiteral="A*h">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Ah&#xD;&#xA;&#xD;&#xA;The storage capacity of the battery is represented in Ampere &#xD;&#xA;hour or Ah. If V is the battery voltage then the energy storage &#xD;&#xA;capacity of the battery can be Ah x V = Watt-hour. Usually &#xD;&#xA;battery capacity will be specified for a given discharge/charge &#xD;&#xA;rating or C rating. The actual capacity depends on operating &#xD;&#xA;conditions such as load, temperature, etc. "/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="batteryVoltage" eType="#//QuantityDouble"
defaultValueLiteral="V">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="V&#xD;&#xA;&#xD;&#xA;The terminal voltage during operating condition is known as &#xD;&#xA;nominal voltage or working voltage. This voltage will be &#xD;&#xA;specified by manufactures. It may be 3V, 6V, 12V, 24Vetc "/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="batteryLifeCycle" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"
defaultValueLiteral="7000">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="It is the number of complete charge – discharge cycles a &#xD;&#xA;battery can work before the nominal capacity decreases less &#xD;&#xA;than 80% of its rated initial capacity. After the specified life &#xD;&#xA;cycle, the battery will work with reduced capacity. It can be &#xD;&#xA;used but the capacity will be lower. "/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="selfDischarge" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"
defaultValueLiteral="0.2">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="rate&#xD;&#xA;&#xD;&#xA;It is the electrical capacity lost when a battery is not being &#xD;&#xA;used due to internal electrochemical process with the battery. &#xD;&#xA;The self discharge increases with increase of temperature. The &#xD;&#xA;batteries can be stored at lower temperatures to reduce self &#xD;&#xA;discharge. "/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="inverterIncluded" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
defaultValueLiteral="false"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="batteryEffiency" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"
defaultValueLiteral="0.8"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="energyContent" lowerBound="1"
eType="#//QuantityDouble" defaultValueLiteral="5 kW*h"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CombinedHeatPower" eSuperTypes="#//ThermalEnergyDevice">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="thermalEfficiency" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble" defaultValueLiteral="0.4">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="share"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="electricalEfficiency" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble" defaultValueLiteral="0.4">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="share"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="installedElectricalPower"
lowerBound="1" eType="#//QuantityDouble" defaultValueLiteral="kW">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="kW"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="electricalEfficiencyPartLoad"
eType="#//Characteristic" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="thermalEfficiencyPartLoad"
eType="#//Characteristic" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="HeatPump" eSuperTypes="#//ThermalEnergyDevice">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="heatSource" lowerBound="1"
eType="#//HeatSources"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="coefficientOfPerformance"
lowerBound="1" eType="#//Characteristic" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="powerInput" eType="#//Characteristic"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="heatOutput" eType="#//Characteristic"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Boiler" eSuperTypes="#//ThermalEnergyDevice">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="nominalEfficiency" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"
defaultValueLiteral="0.98">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="share"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="boilerType" eType="#//BoilerTypes"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="SolarThermalCollector" eSuperTypes="#//EnergyComponent">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="collectorType" lowerBound="1"
eType="#//CollectorTypes"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="apertureArea" lowerBound="1"
eType="#//QuantityDouble" defaultValueLiteral="m²">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="m²"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="opticalEfficiency" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"
defaultValueLiteral="0.77">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="share"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="linearHeatLossCoefficient"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble" defaultValueLiteral="3.2"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="quadraticalHeatLossCoefficient"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble" defaultValueLiteral="0.01"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="HeatSources">
<eLiterals name="air"/>
<eLiterals name="ground"/>
<eLiterals name="water"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="CollectorTypes">
<eLiterals name="flatPlaneCollector"/>
<eLiterals name="evacuatedTubeCollector" value="1"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Electrolyzer" eSuperTypes="#//EnergyComponent">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="cellType" eType="#//cellTypesElectrolyzer"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="cellArea" lowerBound="1"
eType="#//QuantityDouble" defaultValueLiteral="50 cm²">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="cm²"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="numberOfCells" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble" defaultValueLiteral="5"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="maxOperatingCurrentDensity"
eType="#//QuantityDouble" defaultValueLiteral="3 A/cm²">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A/cm²"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="minOperatingCurrentDensity"
eType="#//QuantityDouble" defaultValueLiteral="0.3 A/cm²">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A/cm²"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="overloadCapacity" eType="#//QuantityDouble"
defaultValueLiteral="120 %">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="percent"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="nominalCellVoltage" eType="#//QuantityDouble"
defaultValueLiteral="1.94 V">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="V"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ThermalEnergyDevice" abstract="true"
eSuperTypes="#//EnergyComponent">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="installedThermalPower"
lowerBound="1" eType="#//QuantityDouble" defaultValueLiteral="kW">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="kW"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="modulationRange" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"
defaultValueLiteral="0.5">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="share"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="fuel" lowerBound="1" eType="#//FuelTypes"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="ElectricalStorageTypes">
<eLiterals name="lithiumIon">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Lithium ion"/>
</eAnnotations>
</eLiterals>
<eLiterals name="leadAcid" value="1"/>
<eLiterals name="niMH" value="2">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Nickel – Metal hydride"/>
</eAnnotations>
</eLiterals>
<eLiterals name="lithiumPolymer" value="3">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value=""/>
</eAnnotations>
</eLiterals>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="HydrogenCompressor" eSuperTypes="#//EnergyComponent">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="efficiency" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"
defaultValueLiteral="0.68">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="share"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="thermodynamicMode" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"
defaultValueLiteral="0"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="maxPressure" eType="#//QuantityDouble"
defaultValueLiteral="50 MPa">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="MPa"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="maxDeliveryRate" eType="#//QuantityDouble"
defaultValueLiteral="9 kg/h">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="kg/h"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="HydrogenStorage" eSuperTypes="#//EnergyComponent">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="numberOfCylinders" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" defaultValueLiteral="1"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="cylinderVolume" lowerBound="1"
eType="#//QuantityDouble" defaultValueLiteral="1.5 m³">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="m³"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="nominalPressure" eType="#//QuantityDouble"
defaultValueLiteral="25 MPa"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="FuelCell" eSuperTypes="#//EnergyComponent"/>
<eClassifiers xsi:type="ecore:EClass" name="EnergyCarrier" abstract="true">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="co2EmissionsFactor" lowerBound="1"
eType="#//QuantityDouble" defaultValueLiteral="t/MW*h"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="primaryEnergyFactor" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="cost" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="FossilFuel" eSuperTypes="#//Fuel">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="methaneContent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Hydrogen" eSuperTypes="#//Fuel">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="chemicalPurity" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble" defaultValueLiteral="0.99">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value=""/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="hydrogenForHydrogenStorage"
eType="#//HydrogenStorage"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Electricity" abstract="true" eSuperTypes="#//EnergyCarrier">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="renewableShare" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BioFuel" eSuperTypes="#//Fuel">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="waterContent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"
defaultValueLiteral="0">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="%"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="ashContent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"
defaultValueLiteral="0">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="%"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Fuel" abstract="true" eSuperTypes="#//EnergyCarrier">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="netCalorificValue" lowerBound="1"
eType="#//QuantityDouble" defaultValueLiteral="(kW*h)/m³">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="kWh/m³&#xD;&#xA;Heizwert"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="grossCalorificValue" lowerBound="1"
eType="#//QuantityDouble" defaultValueLiteral="(kW*h)/m³">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="kWh/m³&#xD;&#xA;Brennwert"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="density" lowerBound="1"
eType="#//QuantityDouble" defaultValueLiteral="kg/m³">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="kg/m³"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="fuelType" lowerBound="1"
eType="#//FuelTypes"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="WindTurbine" eSuperTypes="#//EnergyComponent"/>
<eClassifiers xsi:type="ecore:EClass" name="PhotovoltaicModule" eSuperTypes="#//EnergyComponent">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="cellType" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EEnumerator"
transient="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="nominalPower" lowerBound="1"
eType="#//QuantityDouble" defaultValueLiteral="W">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="W"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="mppVoltage" lowerBound="1"
eType="#//QuantityDouble" defaultValueLiteral="V">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="V"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="mppCurrent" lowerBound="1"
eType="#//QuantityDouble" defaultValueLiteral="A">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="nominalEfficiency" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble" defaultValueLiteral="0.18">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value=""/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="moduleArea" lowerBound="1"
eType="#//QuantityDouble" defaultValueLiteral="m²">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="m²"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Inverter" eSuperTypes="#//EnergyComponent"/>
<eClassifiers xsi:type="ecore:EClass" name="HeatExchanger" eSuperTypes="#//EnergyComponent">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="heatRecoveryEfficiency"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble" defaultValueLiteral="0.8"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="nominalElectricityConsumption"
lowerBound="1" eType="#//QuantityDouble" defaultValueLiteral="W">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Watt"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="GeothermalHeatExchanger" eSuperTypes="#//EnergyComponent">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="pipeDiameter" eType="#//QuantityDouble"
defaultValueLiteral="1 cm"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="BoilerTypes">
<eLiterals name="condensingBoiler"/>
<eLiterals name="lowtemperatureBoiler" value="1"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="ThermalStorageTypes">
<eLiterals name="sensible"/>
<eLiterals name="latent" value="1" literal="LITERAL1"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Medium">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="density" lowerBound="1"
eType="#//QuantityDouble" defaultValueLiteral="g/cm³">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="kg/m³"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="heatCapacity" eType="#//QuantityDouble"
defaultValueLiteral="kJ/(kg*K)">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="kJ/kg*K"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="evaporationTemperature"
eType="#//QuantityDouble" defaultValueLiteral="°C">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="degree Celsius"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="meltingTemperature" eType="#//QuantityDouble"
defaultValueLiteral="°C">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="degree Celsius"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="QuantityDouble" instanceClassName="de.hftstuttgart.units.NullableQuantity"/>
<eClassifiers xsi:type="ecore:EDataType" name="QuantityLong" instanceClassName="de.hftstuttgart.units.NullableQuantity"/>
<eClassifiers xsi:type="ecore:EEnum" name="cellTypesElectrolyzer">
<eLiterals name="PEM"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LinearFunction">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="y = ParameterM * x + ParameterC"/>
</eAnnotations>
<eOperations name="linearfunction" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="y = ParameterM * x + ParameterC"/>
</eAnnotations>
<eParameters name="x" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="key" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="parameterM" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="y = ParameterM * x + ParameterC"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="parameterC" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="y = ParameterM * x + ParameterC"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DataPoint">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="x" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Double"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="y" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Double"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TableFunction">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="key" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="datapoints" lowerBound="2"
upperBound="-1" eType="#//DataPoint" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ExponentialFunction">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="y = ParameterA * ParameterB ^ x"/>
</eAnnotations>
<eOperations name="exponentialfunction" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="y = ParameterA * ParameterB ^ x"/>
</eAnnotations>
<eParameters name="x" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="key" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="parameterA" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="y = ParameterA * ParameterB ^ x"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="parameterB" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="y = ParameterA * ParameterB ^ x"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Characteristic" abstract="true"/>
<eClassifiers xsi:type="ecore:EClass" name="TableCharacteristic" eSuperTypes="#//Characteristic">
<eStructuralFeatures xsi:type="ecore:EReference" name="functions" lowerBound="1"
upperBound="-1" eType="#//TableFunction" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LinearCharacteristic" eSuperTypes="#//Characteristic">
<eStructuralFeatures xsi:type="ecore:EReference" name="functions" lowerBound="1"
upperBound="-1" eType="#//LinearFunction" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ExponentionalCharacteristic" eSuperTypes="#//Characteristic">
<eStructuralFeatures xsi:type="ecore:EReference" name="functions" lowerBound="1"
upperBound="-1" eType="#//ExponentialFunction" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Manufacturer">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="manufacturerName" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="country" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="outOfBusinessSince" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PolynomialCharacteristic" eSuperTypes="#//Characteristic">
<eStructuralFeatures xsi:type="ecore:EReference" name="functions" lowerBound="1"
upperBound="-1" eType="#//PolynomialFunction" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PolynomialFunction">
<eOperations name="polynomialfunction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="y = ParameterA * x^2 + ParameterB * x + ParameterC"/>
</eAnnotations>
<eParameters name="x" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="key" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="parameterA" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="y = ParameterA * x^2 + ParameterB * x + ParameterC"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="parameterB" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="y = ParameterA * x^2 + ParameterB * x + ParameterC"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="parameterC" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="y = ParameterA * x^2 + ParameterB * x + ParameterC"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Material">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="thermalConductivity" eType="#//QuantityDouble"
defaultValueLiteral=" W/(m*K)">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value=" W/(m*K)"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="EnergyComponentsCostCatalog">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="author" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="revisionYear" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="costCategories" upperBound="-1"
eType="#//Cost" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="personnelCost" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"
defaultValueLiteral="150 "/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Cost">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="componentName" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="i.e. what is included in which cost category"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="heatSource" eType="#//TypeOfHeatSource"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="datasource" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="investmentCost" lowerBound="1"
eType="#//Characteristic" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="otherInvestmentCost" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"
defaultValueLiteral="0"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="personnelHours" eType="#//QuantityDouble"
defaultValueLiteral="10 h"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="personnelCostShare" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="administrationAndOtherCostShare"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble" defaultValueLiteral="0.015">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="share of investment cost"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="maintenanceCostShare" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"
defaultValueLiteral="0.015">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="share of investment cost"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="FuelTypes">
<eLiterals name="naturalGas"/>
<eLiterals name="oil" value="1"/>
<eLiterals name="diesel" value="2"/>
<eLiterals name="bioGas"/>
<eLiterals name="syntheticGas" value="1"/>
<eLiterals name="woodPellets" value="2"/>
<eLiterals name="woodChips" value="3"/>
<eLiterals name="sewageGas" value="4"/>
<eLiterals name="electricity" value="8"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="TypeOfHeatSource">
<eLiterals name="naturalGas"/>
<eLiterals name="biogas" value="1"/>
<eLiterals name="oil" value="2"/>
<eLiterals name="diesel" value="3"/>
<eLiterals name="syntheticGas" value="4"/>
<eLiterals name="woodPellets" value="5"/>
<eLiterals name="woodChips" value="6"/>
<eLiterals name="sewageGas" value="7"/>
<eLiterals name="LNG" value="8"/>
<eLiterals name="CNG" value="9"/>
<eLiterals name="water" value="10"/>
<eLiterals name="air" value="11"/>
<eLiterals name="soil" value="12"/>
<eLiterals name="none" value="13"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PowerCharacteristic" eSuperTypes="#//Characteristic">
<eStructuralFeatures xsi:type="ecore:EReference" name="functions" lowerBound="1"
upperBound="-1" eType="#//PowerFunction" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PowerFunction">
<eOperations name="powerfunction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="y = ParameterA * x^ParameterB"/>
</eAnnotations>
<eParameters name="x" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="key" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="parameterA" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="parameterB" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
</eClassifiers>
</ecore:EPackage>
<?xml version="1.0" encoding="UTF-8"?>
<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel"
modelDirectory="/de.hftstuttgart.energycomponents/src-gen" creationIcons="false"
editDirectory="/de.hftstuttgart.energycomponents.edit/src-gen" editorDirectory="/de.hftstuttgart.energycomponents.editor/src-gen"
modelPluginID="de.hftstuttgart.energycomponents" modelName="EnergyComponents"
rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" codeFormatting="true"
importerID="org.eclipse.emf.importer.ecore" complianceLevel="8.0" copyrightFields="false"
operationReflection="true" importOrganizing="true">
<foreignModel>EnergyComponents.ecore</foreignModel>
<testsDirectory xsi:nil="true"/>
<genPackages prefix="EnComp" basePackage="de.hftstuttgart" disposableProviderFactory="true"
ecorePackage="EnergyComponents.ecore#/">
<genEnums typeSafeEnumCompatible="false" ecoreEnum="EnergyComponents.ecore#//HeatSources">
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//HeatSources/air"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//HeatSources/ground"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//HeatSources/water"/>
</genEnums>
<genEnums typeSafeEnumCompatible="false" ecoreEnum="EnergyComponents.ecore#//CollectorTypes">
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//CollectorTypes/flatPlaneCollector"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//CollectorTypes/evacuatedTubeCollector"/>
</genEnums>
<genEnums typeSafeEnumCompatible="false" ecoreEnum="EnergyComponents.ecore#//ElectricalStorageTypes">
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//ElectricalStorageTypes/lithiumIon"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//ElectricalStorageTypes/leadAcid"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//ElectricalStorageTypes/niMH"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//ElectricalStorageTypes/lithiumPolymer"/>
</genEnums>
<genEnums typeSafeEnumCompatible="false" ecoreEnum="EnergyComponents.ecore#//BoilerTypes">
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//BoilerTypes/condensingBoiler"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//BoilerTypes/lowtemperatureBoiler"/>
</genEnums>
<genEnums typeSafeEnumCompatible="false" ecoreEnum="EnergyComponents.ecore#//ThermalStorageTypes">
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//ThermalStorageTypes/sensible"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//ThermalStorageTypes/latent"/>
</genEnums>
<genEnums typeSafeEnumCompatible="false" ecoreEnum="EnergyComponents.ecore#//cellTypesElectrolyzer">
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//cellTypesElectrolyzer/PEM"/>
</genEnums>
<genEnums typeSafeEnumCompatible="false" ecoreEnum="EnergyComponents.ecore#//FuelTypes">
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//FuelTypes/naturalGas"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//FuelTypes/oil"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//FuelTypes/diesel"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//FuelTypes/bioGas"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//FuelTypes/syntheticGas"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//FuelTypes/woodPellets"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//FuelTypes/woodChips"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//FuelTypes/sewageGas"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//FuelTypes/electricity"/>
</genEnums>
<genEnums typeSafeEnumCompatible="false" ecoreEnum="EnergyComponents.ecore#//TypeOfHeatSource">
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//TypeOfHeatSource/naturalGas"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//TypeOfHeatSource/biogas"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//TypeOfHeatSource/oil"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//TypeOfHeatSource/diesel"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//TypeOfHeatSource/syntheticGas"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//TypeOfHeatSource/woodPellets"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//TypeOfHeatSource/woodChips"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//TypeOfHeatSource/sewageGas"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//TypeOfHeatSource/LNG"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//TypeOfHeatSource/CNG"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//TypeOfHeatSource/water"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//TypeOfHeatSource/air"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//TypeOfHeatSource/soil"/>
<genEnumLiterals ecoreEnumLiteral="EnergyComponents.ecore#//TypeOfHeatSource/none"/>
</genEnums>
<genDataTypes ecoreDataType="EnergyComponents.ecore#//QuantityDouble" create="return de.hftstuttgart.units.NullableQuantity.create(it);"
convert="return it == null ? null : it.toString();"/>
<genDataTypes ecoreDataType="EnergyComponents.ecore#//QuantityLong" create="return de.hftstuttgart.units.NullableQuantity.create(it);"
convert="return it == null ? null : it.toString();"/>
<genClasses ecoreClass="EnergyComponents.ecore#//EnergyComponent">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//EnergyComponent/description"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//EnergyComponent/modelName"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//EnergyComponent/revisionYear"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//EnergyComponent/technicalLifetime"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponent/manufacturer"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//EnergyComponentsCatalog">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//EnergyComponentsCatalog/author"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/bioFuels"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/media"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/combinedHeatPowerUtilities"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/boilers"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/photovoltaicModules"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/solarThermalCollectors"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/windTurbines"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/geothermalHeatExchangers"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/heatPumps"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/inverters"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/heatExchangers"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/electrolyzers"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/hydrogenCompressors"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/fuelCells"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/thermalStorages"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/powerStorages"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/hydrogenStorages"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/fossilFuels"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/manufacturers"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/materials"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/energycomponentscostcatalog"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCatalog/energycarriers"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//ThermalStorage">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ThermalStorage/volume"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ThermalStorage/thermalStorageType"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ThermalStorage/maxTemp"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ThermalStorage/tankThickness"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ThermalStorage/insulationThickness"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//ThermalStorage/usesMedium"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//ThermalStorage/insulationMaterial"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ThermalStorage/height"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//ThermalStorage/tankMaterial"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//ElectricalStorage">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ElectricalStorage/electricalStorageType"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ElectricalStorage/batteryCapacity"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ElectricalStorage/batteryVoltage"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ElectricalStorage/batteryLifeCycle"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ElectricalStorage/selfDischarge"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ElectricalStorage/inverterIncluded"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ElectricalStorage/batteryEffiency"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ElectricalStorage/energyContent"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//CombinedHeatPower">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//CombinedHeatPower/thermalEfficiency"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//CombinedHeatPower/electricalEfficiency"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//CombinedHeatPower/installedElectricalPower"/>
<genFeatures children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//CombinedHeatPower/electricalEfficiencyPartLoad"/>
<genFeatures children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//CombinedHeatPower/thermalEfficiencyPartLoad"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//HeatPump">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//HeatPump/heatSource"/>
<genFeatures children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//HeatPump/coefficientOfPerformance"/>
<genFeatures children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//HeatPump/powerInput"/>
<genFeatures children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//HeatPump/heatOutput"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//Boiler">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Boiler/nominalEfficiency"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Boiler/boilerType"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//SolarThermalCollector">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//SolarThermalCollector/collectorType"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//SolarThermalCollector/apertureArea"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//SolarThermalCollector/opticalEfficiency"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//SolarThermalCollector/linearHeatLossCoefficient"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//SolarThermalCollector/quadraticalHeatLossCoefficient"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//Electrolyzer">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Electrolyzer/cellType"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Electrolyzer/cellArea"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Electrolyzer/numberOfCells"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Electrolyzer/maxOperatingCurrentDensity"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Electrolyzer/minOperatingCurrentDensity"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Electrolyzer/overloadCapacity"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Electrolyzer/nominalCellVoltage"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//ThermalEnergyDevice">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ThermalEnergyDevice/installedThermalPower"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ThermalEnergyDevice/modulationRange"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ThermalEnergyDevice/fuel"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//HydrogenCompressor">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//HydrogenCompressor/efficiency"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//HydrogenCompressor/thermodynamicMode"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//HydrogenCompressor/maxPressure"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//HydrogenCompressor/maxDeliveryRate"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//HydrogenStorage">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//HydrogenStorage/numberOfCylinders"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//HydrogenStorage/cylinderVolume"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//HydrogenStorage/nominalPressure"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//FuelCell"/>
<genClasses ecoreClass="EnergyComponents.ecore#//EnergyCarrier">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//EnergyCarrier/co2EmissionsFactor"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//EnergyCarrier/primaryEnergyFactor"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//EnergyCarrier/name"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//EnergyCarrier/cost"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//FossilFuel">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//FossilFuel/methaneContent"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//Hydrogen">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Hydrogen/chemicalPurity"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//Hydrogen/hydrogenForHydrogenStorage"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//Electricity">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Electricity/renewableShare"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//BioFuel">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//BioFuel/waterContent"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//BioFuel/ashContent"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//Fuel">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Fuel/netCalorificValue"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Fuel/grossCalorificValue"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Fuel/density"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Fuel/fuelType"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//WindTurbine"/>
<genClasses ecoreClass="EnergyComponents.ecore#//PhotovoltaicModule">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//PhotovoltaicModule/cellType"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//PhotovoltaicModule/nominalPower"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//PhotovoltaicModule/mppVoltage"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//PhotovoltaicModule/mppCurrent"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//PhotovoltaicModule/nominalEfficiency"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//PhotovoltaicModule/moduleArea"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//Inverter"/>
<genClasses ecoreClass="EnergyComponents.ecore#//HeatExchanger">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//HeatExchanger/heatRecoveryEfficiency"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//HeatExchanger/nominalElectricityConsumption"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//GeothermalHeatExchanger">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//GeothermalHeatExchanger/pipeDiameter"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//Medium">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Medium/density"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Medium/heatCapacity"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Medium/evaporationTemperature"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Medium/meltingTemperature"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Medium/name"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//LinearFunction">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//LinearFunction/key"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//LinearFunction/parameterM"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//LinearFunction/parameterC"/>
<genOperations ecoreOperation="EnergyComponents.ecore#//LinearFunction/linearfunction"
body="return getParameterM() * x + getParameterC();">
<genParameters ecoreParameter="EnergyComponents.ecore#//LinearFunction/linearfunction/x"/>
</genOperations>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//DataPoint">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//DataPoint/x"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//DataPoint/y"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//TableFunction">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//TableFunction/key"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//TableFunction/datapoints"/>
</genClasses>
<genClasses documentation="y = ParameterA * ParameterB ^ x" ecoreClass="EnergyComponents.ecore#//ExponentialFunction">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ExponentialFunction/key"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ExponentialFunction/parameterA"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//ExponentialFunction/parameterB"/>
<genOperations documentation="y = ParameterA * ParameterB ^ x" ecoreOperation="EnergyComponents.ecore#//ExponentialFunction/exponentialfunction"
body="return getParameterA() * Math.pow(getParameterB(), x);">
<genParameters ecoreParameter="EnergyComponents.ecore#//ExponentialFunction/exponentialfunction/x"/>
</genOperations>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//Characteristic"/>
<genClasses image="false" ecoreClass="EnergyComponents.ecore#//TableCharacteristic">
<genFeatures children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//TableCharacteristic/functions"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//LinearCharacteristic">
<genFeatures children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//LinearCharacteristic/functions"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//ExponentionalCharacteristic">
<genFeatures children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//ExponentionalCharacteristic/functions"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//Manufacturer">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Manufacturer/manufacturerName"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Manufacturer/country"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Manufacturer/outOfBusinessSince"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//PolynomialCharacteristic">
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//PolynomialCharacteristic/functions"/>
</genClasses>
<genClasses documentation="y = ParameterA * x^2 + ParameterB * x + ParameterC"
ecoreClass="EnergyComponents.ecore#//PolynomialFunction">
<genFeatures documentation="y = ParameterA * x^2 + ParameterB * x + ParameterC"
createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//PolynomialFunction/key"/>
<genFeatures documentation="y = ParameterA * x^2 + ParameterB * x + ParameterC"
createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//PolynomialFunction/parameterA"/>
<genFeatures documentation="y = ParameterA * x^2 + ParameterB * x + ParameterC"
createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//PolynomialFunction/parameterB"/>
<genFeatures documentation="y = ParameterA * x^2 + ParameterB * x + ParameterC"
createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//PolynomialFunction/parameterC"/>
<genOperations ecoreOperation="EnergyComponents.ecore#//PolynomialFunction/polynomialfunction"
body="return getParameterA() * Math.pow( x,2 ) + getParameterB() * x + getParameterC();">
<genParameters ecoreParameter="EnergyComponents.ecore#//PolynomialFunction/polynomialfunction/x"/>
</genOperations>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//Material">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Material/thermalConductivity"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Material/name"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//EnergyComponentsCostCatalog">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//EnergyComponentsCostCatalog/author"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//EnergyComponentsCostCatalog/revisionYear"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//EnergyComponentsCostCatalog/costCategories"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//EnergyComponentsCostCatalog/personnelCost"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//Cost">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Cost/componentName"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Cost/description"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Cost/heatSource"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Cost/datasource"/>
<genFeatures children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//Cost/investmentCost"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Cost/otherInvestmentCost"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Cost/personnelHours"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Cost/personnelCostShare"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Cost/administrationAndOtherCostShare"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//Cost/maintenanceCostShare"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//PowerCharacteristic">
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference EnergyComponents.ecore#//PowerCharacteristic/functions"/>
</genClasses>
<genClasses ecoreClass="EnergyComponents.ecore#//PowerFunction">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//PowerFunction/key"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//PowerFunction/parameterA"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute EnergyComponents.ecore#//PowerFunction/parameterB"/>
<genOperations documentation="y = ParameterA * x^ParameterB" ecoreOperation="EnergyComponents.ecore#//PowerFunction/powerfunction"
body="return getParameterA() * Math.pow( x,getParameterB() );">
<genParameters ecoreParameter="EnergyComponents.ecore#//PowerFunction/powerfunction/x"/>
</genOperations>
</genClasses>
</genPackages>
</genmodel:GenModel>
#
pluginName = EnergyComponents Model
providerName = www.hft-stuttgart.de
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
-->
<plugin>
<extension point="org.eclipse.emf.ecore.generated_package">
<!-- @generated EnergyComponents -->
<package
uri="https://www.hft-stuttgart.de/energycomponents"
class="de.hftstuttgart.energycomponents.EnCompPackage"
genModel="model/EnergyComponents.genmodel"/>
</extension>
</plugin>
/**
*/
package de.hftstuttgart.energycomponents;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import org.eclipse.emf.common.util.Enumerator;
/**
* <!-- begin-user-doc -->
* A representation of the literals of the enumeration '<em><b>All Fuel Types</b></em>',
* and utility methods for working with them.
* <!-- end-user-doc -->
* @see de.hftstuttgart.energycomponents.EnCompPackage#getAllFuelTypes()
* @model
* @generated
*/
public enum AllFuelTypes implements Enumerator {
/**
* The '<em><b>Natural Gas</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #NATURAL_GAS_VALUE
* @generated
* @ordered
*/
NATURAL_GAS(0, "naturalGas", "naturalGas"),
/**
* The '<em><b>Oil</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #OIL_VALUE
* @generated
* @ordered
*/
OIL(1, "oil", "oil"),
/**
* The '<em><b>Diesel</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #DIESEL_VALUE
* @generated
* @ordered
*/
DIESEL(2, "diesel", "diesel"),
/**
* The '<em><b>Bio Gas</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #BIO_GAS_VALUE
* @generated
* @ordered
*/
BIO_GAS(0, "bioGas", "bioGas"),
/**
* The '<em><b>Synthetic Gas</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #SYNTHETIC_GAS_VALUE
* @generated
* @ordered
*/
SYNTHETIC_GAS(1, "syntheticGas", "syntheticGas"),
/**
* The '<em><b>Wood Pellets</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #WOOD_PELLETS_VALUE
* @generated
* @ordered
*/
WOOD_PELLETS(2, "woodPellets", "woodPellets"),
/**
* The '<em><b>Wood Chips</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #WOOD_CHIPS_VALUE
* @generated
* @ordered
*/
WOOD_CHIPS(3, "woodChips", "woodChips"),
/**
* The '<em><b>Sewage Gas</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #SEWAGE_GAS_VALUE
* @generated
* @ordered
*/
SEWAGE_GAS(4, "sewageGas", "sewageGas");
/**
* The '<em><b>Natural Gas</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #NATURAL_GAS
* @model name="naturalGas"
* @generated
* @ordered
*/
public static final int NATURAL_GAS_VALUE = 0;
/**
* The '<em><b>Oil</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #OIL
* @model name="oil"
* @generated
* @ordered
*/
public static final int OIL_VALUE = 1;
/**
* The '<em><b>Diesel</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #DIESEL
* @model name="diesel"
* @generated
* @ordered
*/
public static final int DIESEL_VALUE = 2;
/**
* The '<em><b>Bio Gas</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #BIO_GAS
* @model name="bioGas"
* @generated
* @ordered
*/
public static final int BIO_GAS_VALUE = 0;
/**
* The '<em><b>Synthetic Gas</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #SYNTHETIC_GAS
* @model name="syntheticGas"
* @generated
* @ordered
*/
public static final int SYNTHETIC_GAS_VALUE = 1;
/**
* The '<em><b>Wood Pellets</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #WOOD_PELLETS
* @model name="woodPellets"
* @generated
* @ordered
*/
public static final int WOOD_PELLETS_VALUE = 2;
/**
* The '<em><b>Wood Chips</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #WOOD_CHIPS
* @model name="woodChips"
* @generated
* @ordered
*/
public static final int WOOD_CHIPS_VALUE = 3;
/**
* The '<em><b>Sewage Gas</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #SEWAGE_GAS
* @model name="sewageGas"
* @generated
* @ordered
*/
public static final int SEWAGE_GAS_VALUE = 4;
/**
* An array of all the '<em><b>All Fuel Types</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private static final AllFuelTypes[] VALUES_ARRAY = new AllFuelTypes[] { NATURAL_GAS, OIL, DIESEL, BIO_GAS,
SYNTHETIC_GAS, WOOD_PELLETS, WOOD_CHIPS, SEWAGE_GAS, };
/**
* A public read-only list of all the '<em><b>All Fuel Types</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static final List<AllFuelTypes> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
/**
* Returns the '<em><b>All Fuel Types</b></em>' literal with the specified literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param literal the literal.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static AllFuelTypes get(String literal) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
AllFuelTypes result = VALUES_ARRAY[i];
if (result.toString().equals(literal)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>All Fuel Types</b></em>' literal with the specified name.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param name the name.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static AllFuelTypes getByName(String name) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
AllFuelTypes result = VALUES_ARRAY[i];
if (result.getName().equals(name)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>All Fuel Types</b></em>' literal with the specified integer value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the integer value.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static AllFuelTypes get(int value) {
switch (value) {
case NATURAL_GAS_VALUE:
return NATURAL_GAS;
case OIL_VALUE:
return OIL;
case DIESEL_VALUE:
return DIESEL;
case WOOD_CHIPS_VALUE:
return WOOD_CHIPS;
case SEWAGE_GAS_VALUE:
return SEWAGE_GAS;
}
return null;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final int value;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final String name;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final String literal;
/**
* Only this class can construct instances.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private AllFuelTypes(int value, String name, String literal) {
this.value = value;
this.name = name;
this.literal = literal;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public int getValue() {
return value;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getName() {
return name;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getLiteral() {
return literal;
}
/**
* Returns the literal value of the enumerator, which is its string representation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String toString() {
return literal;
}
} //AllFuelTypes
/**
*/
package de.hftstuttgart.energycomponents;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Bio Fuel</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link de.hftstuttgart.energycomponents.BioFuel#getWaterContent <em>Water Content</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.BioFuel#getAshContent <em>Ash Content</em>}</li>
* </ul>
*
* @see de.hftstuttgart.energycomponents.EnCompPackage#getBioFuel()
* @model
* @generated
*/
public interface BioFuel extends Fuel {
/**
* Returns the value of the '<em><b>Water Content</b></em>' attribute.
* The default value is <code>"0"</code>.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* %
* <!-- end-model-doc -->
* @return the value of the '<em>Water Content</em>' attribute.
* @see #setWaterContent(double)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getBioFuel_WaterContent()
* @model default="0"
* @generated
*/
double getWaterContent();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.BioFuel#getWaterContent <em>Water Content</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Water Content</em>' attribute.
* @see #getWaterContent()
* @generated
*/
void setWaterContent(double value);
/**
* Returns the value of the '<em><b>Ash Content</b></em>' attribute.
* The default value is <code>"0"</code>.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* %
* <!-- end-model-doc -->
* @return the value of the '<em>Ash Content</em>' attribute.
* @see #setAshContent(double)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getBioFuel_AshContent()
* @model default="0"
* @generated
*/
double getAshContent();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.BioFuel#getAshContent <em>Ash Content</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Ash Content</em>' attribute.
* @see #getAshContent()
* @generated
*/
void setAshContent(double value);
} // BioFuel
/**
*/
package de.hftstuttgart.energycomponents;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import org.eclipse.emf.common.util.Enumerator;
/**
* <!-- begin-user-doc -->
* A representation of the literals of the enumeration '<em><b>Bio Fuel Types</b></em>',
* and utility methods for working with them.
* <!-- end-user-doc -->
* @see de.hftstuttgart.energycomponents.EnCompPackage#getBioFuelTypes()
* @model
* @generated
*/
public enum BioFuelTypes implements Enumerator {
/**
* The '<em><b>Bio Gas</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #BIO_GAS_VALUE
* @generated
* @ordered
*/
BIO_GAS(0, "bioGas", "bioGas"),
/**
* The '<em><b>Synthetic Gas</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #SYNTHETIC_GAS_VALUE
* @generated
* @ordered
*/
SYNTHETIC_GAS(1, "syntheticGas", "syntheticGas"),
/**
* The '<em><b>Wood Pellets</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #WOOD_PELLETS_VALUE
* @generated
* @ordered
*/
WOOD_PELLETS(2, "woodPellets", "woodPellets"),
/**
* The '<em><b>Wood Chips</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #WOOD_CHIPS_VALUE
* @generated
* @ordered
*/
WOOD_CHIPS(3, "woodChips", "woodChips"),
/**
* The '<em><b>Sewage Gas</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #SEWAGE_GAS_VALUE
* @generated
* @ordered
*/
SEWAGE_GAS(4, "sewageGas", "sewageGas");
/**
* The '<em><b>Bio Gas</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #BIO_GAS
* @model name="bioGas"
* @generated
* @ordered
*/
public static final int BIO_GAS_VALUE = 0;
/**
* The '<em><b>Synthetic Gas</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #SYNTHETIC_GAS
* @model name="syntheticGas"
* @generated
* @ordered
*/
public static final int SYNTHETIC_GAS_VALUE = 1;
/**
* The '<em><b>Wood Pellets</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #WOOD_PELLETS
* @model name="woodPellets"
* @generated
* @ordered
*/
public static final int WOOD_PELLETS_VALUE = 2;
/**
* The '<em><b>Wood Chips</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #WOOD_CHIPS
* @model name="woodChips"
* @generated
* @ordered
*/
public static final int WOOD_CHIPS_VALUE = 3;
/**
* The '<em><b>Sewage Gas</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #SEWAGE_GAS
* @model name="sewageGas"
* @generated
* @ordered
*/
public static final int SEWAGE_GAS_VALUE = 4;
/**
* An array of all the '<em><b>Bio Fuel Types</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private static final BioFuelTypes[] VALUES_ARRAY = new BioFuelTypes[] { BIO_GAS, SYNTHETIC_GAS, WOOD_PELLETS,
WOOD_CHIPS, SEWAGE_GAS, };
/**
* A public read-only list of all the '<em><b>Bio Fuel Types</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static final List<BioFuelTypes> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
/**
* Returns the '<em><b>Bio Fuel Types</b></em>' literal with the specified literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param literal the literal.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static BioFuelTypes get(String literal) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
BioFuelTypes result = VALUES_ARRAY[i];
if (result.toString().equals(literal)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Bio Fuel Types</b></em>' literal with the specified name.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param name the name.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static BioFuelTypes getByName(String name) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
BioFuelTypes result = VALUES_ARRAY[i];
if (result.getName().equals(name)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Bio Fuel Types</b></em>' literal with the specified integer value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the integer value.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static BioFuelTypes get(int value) {
switch (value) {
case BIO_GAS_VALUE:
return BIO_GAS;
case SYNTHETIC_GAS_VALUE:
return SYNTHETIC_GAS;
case WOOD_PELLETS_VALUE:
return WOOD_PELLETS;
case WOOD_CHIPS_VALUE:
return WOOD_CHIPS;
case SEWAGE_GAS_VALUE:
return SEWAGE_GAS;
}
return null;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final int value;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final String name;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final String literal;
/**
* Only this class can construct instances.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private BioFuelTypes(int value, String name, String literal) {
this.value = value;
this.name = name;
this.literal = literal;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public int getValue() {
return value;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getName() {
return name;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getLiteral() {
return literal;
}
/**
* Returns the literal value of the enumerator, which is its string representation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String toString() {
return literal;
}
} //BioFuelTypes
/**
*/
package de.hftstuttgart.energycomponents;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Boiler</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link de.hftstuttgart.energycomponents.Boiler#getNominalEfficiency <em>Nominal Efficiency</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.Boiler#getBoilerType <em>Boiler Type</em>}</li>
* </ul>
*
* @see de.hftstuttgart.energycomponents.EnCompPackage#getBoiler()
* @model
* @generated
*/
public interface Boiler extends ThermalEnergyDevice {
/**
* Returns the value of the '<em><b>Nominal Efficiency</b></em>' attribute.
* The default value is <code>"0.98"</code>.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* share
* <!-- end-model-doc -->
* @return the value of the '<em>Nominal Efficiency</em>' attribute.
* @see #setNominalEfficiency(double)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getBoiler_NominalEfficiency()
* @model default="0.98"
* @generated
*/
double getNominalEfficiency();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.Boiler#getNominalEfficiency <em>Nominal Efficiency</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Nominal Efficiency</em>' attribute.
* @see #getNominalEfficiency()
* @generated
*/
void setNominalEfficiency(double value);
/**
* Returns the value of the '<em><b>Boiler Type</b></em>' attribute.
* The literals are from the enumeration {@link de.hftstuttgart.energycomponents.BoilerTypes}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Boiler Type</em>' attribute.
* @see de.hftstuttgart.energycomponents.BoilerTypes
* @see #setBoilerType(BoilerTypes)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getBoiler_BoilerType()
* @model
* @generated
*/
BoilerTypes getBoilerType();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.Boiler#getBoilerType <em>Boiler Type</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Boiler Type</em>' attribute.
* @see de.hftstuttgart.energycomponents.BoilerTypes
* @see #getBoilerType()
* @generated
*/
void setBoilerType(BoilerTypes value);
} // Boiler
/**
*/
package de.hftstuttgart.energycomponents;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import org.eclipse.emf.common.util.Enumerator;
/**
* <!-- begin-user-doc -->
* A representation of the literals of the enumeration '<em><b>Boiler Types</b></em>',
* and utility methods for working with them.
* <!-- end-user-doc -->
* @see de.hftstuttgart.energycomponents.EnCompPackage#getBoilerTypes()
* @model
* @generated
*/
public enum BoilerTypes implements Enumerator {
/**
* The '<em><b>Condensing Boiler</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #CONDENSING_BOILER_VALUE
* @generated
* @ordered
*/
CONDENSING_BOILER(0, "condensingBoiler", "condensingBoiler"),
/**
* The '<em><b>Lowtemperature Boiler</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #LOWTEMPERATURE_BOILER_VALUE
* @generated
* @ordered
*/
LOWTEMPERATURE_BOILER(1, "lowtemperatureBoiler", "lowtemperatureBoiler");
/**
* The '<em><b>Condensing Boiler</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #CONDENSING_BOILER
* @model name="condensingBoiler"
* @generated
* @ordered
*/
public static final int CONDENSING_BOILER_VALUE = 0;
/**
* The '<em><b>Lowtemperature Boiler</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #LOWTEMPERATURE_BOILER
* @model name="lowtemperatureBoiler"
* @generated
* @ordered
*/
public static final int LOWTEMPERATURE_BOILER_VALUE = 1;
/**
* An array of all the '<em><b>Boiler Types</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private static final BoilerTypes[] VALUES_ARRAY = new BoilerTypes[] { CONDENSING_BOILER, LOWTEMPERATURE_BOILER, };
/**
* A public read-only list of all the '<em><b>Boiler Types</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static final List<BoilerTypes> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
/**
* Returns the '<em><b>Boiler Types</b></em>' literal with the specified literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param literal the literal.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static BoilerTypes get(String literal) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
BoilerTypes result = VALUES_ARRAY[i];
if (result.toString().equals(literal)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Boiler Types</b></em>' literal with the specified name.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param name the name.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static BoilerTypes getByName(String name) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
BoilerTypes result = VALUES_ARRAY[i];
if (result.getName().equals(name)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Boiler Types</b></em>' literal with the specified integer value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the integer value.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static BoilerTypes get(int value) {
switch (value) {
case CONDENSING_BOILER_VALUE:
return CONDENSING_BOILER;
case LOWTEMPERATURE_BOILER_VALUE:
return LOWTEMPERATURE_BOILER;
}
return null;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final int value;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final String name;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final String literal;
/**
* Only this class can construct instances.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private BoilerTypes(int value, String name, String literal) {
this.value = value;
this.name = name;
this.literal = literal;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public int getValue() {
return value;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getName() {
return name;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getLiteral() {
return literal;
}
/**
* Returns the literal value of the enumerator, which is its string representation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String toString() {
return literal;
}
} //BoilerTypes
/**
*/
package de.hftstuttgart.energycomponents;
import org.eclipse.emf.ecore.EObject;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Characteristic</b></em>'.
* <!-- end-user-doc -->
*
*
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCharacteristic()
* @model abstract="true"
* @generated
*/
public interface Characteristic extends EObject {
} // Characteristic
/**
*/
package de.hftstuttgart.energycomponents;
import de.hftstuttgart.units.NullableQuantity;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Chemical Energy Device</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link de.hftstuttgart.energycomponents.ChemicalEnergyDevice#getInstalledThermalPower <em>Installed Thermal Power</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.ChemicalEnergyDevice#getUsesFuel <em>Uses Fuel</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.ChemicalEnergyDevice#getModulationRange <em>Modulation Range</em>}</li>
* </ul>
*
* @see de.hftstuttgart.energycomponents.EnCompPackage#getChemicalEnergyDevice()
* @model abstract="true"
* @generated
*/
public interface ChemicalEnergyDevice extends EnergyComponent {
/**
* Returns the value of the '<em><b>Installed Thermal Power</b></em>' attribute.
* The default value is <code>"kW"</code>.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* kW
* <!-- end-model-doc -->
* @return the value of the '<em>Installed Thermal Power</em>' attribute.
* @see #setInstalledThermalPower(NullableQuantity)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getChemicalEnergyDevice_InstalledThermalPower()
* @model default="kW" dataType="de.hftstuttgart.energycomponents.QuantityDouble" required="true"
* @generated
*/
NullableQuantity getInstalledThermalPower();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.ChemicalEnergyDevice#getInstalledThermalPower <em>Installed Thermal Power</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Installed Thermal Power</em>' attribute.
* @see #getInstalledThermalPower()
* @generated
*/
void setInstalledThermalPower(NullableQuantity value);
/**
* Returns the value of the '<em><b>Uses Fuel</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Uses Fuel</em>' reference.
* @see #setUsesFuel(Fuel)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getChemicalEnergyDevice_UsesFuel()
* @model
* @generated
*/
Fuel getUsesFuel();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.ChemicalEnergyDevice#getUsesFuel <em>Uses Fuel</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Uses Fuel</em>' reference.
* @see #getUsesFuel()
* @generated
*/
void setUsesFuel(Fuel value);
/**
* Returns the value of the '<em><b>Modulation Range</b></em>' attribute.
* The default value is <code>"0.5"</code>.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* share
* <!-- end-model-doc -->
* @return the value of the '<em>Modulation Range</em>' attribute.
* @see #setModulationRange(double)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getChemicalEnergyDevice_ModulationRange()
* @model default="0.5"
* @generated
*/
double getModulationRange();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.ChemicalEnergyDevice#getModulationRange <em>Modulation Range</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Modulation Range</em>' attribute.
* @see #getModulationRange()
* @generated
*/
void setModulationRange(double value);
} // ChemicalEnergyDevice
/**
*/
package de.hftstuttgart.energycomponents;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import org.eclipse.emf.common.util.Enumerator;
/**
* <!-- begin-user-doc -->
* A representation of the literals of the enumeration '<em><b>Collector Types</b></em>',
* and utility methods for working with them.
* <!-- end-user-doc -->
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCollectorTypes()
* @model
* @generated
*/
public enum CollectorTypes implements Enumerator {
/**
* The '<em><b>Flat Plane Collector</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FLAT_PLANE_COLLECTOR_VALUE
* @generated
* @ordered
*/
FLAT_PLANE_COLLECTOR(0, "flatPlaneCollector", "flatPlaneCollector"),
/**
* The '<em><b>Evacuated Tube Collector</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #EVACUATED_TUBE_COLLECTOR_VALUE
* @generated
* @ordered
*/
EVACUATED_TUBE_COLLECTOR(1, "evacuatedTubeCollector", "evacuatedTubeCollector");
/**
* The '<em><b>Flat Plane Collector</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FLAT_PLANE_COLLECTOR
* @model name="flatPlaneCollector"
* @generated
* @ordered
*/
public static final int FLAT_PLANE_COLLECTOR_VALUE = 0;
/**
* The '<em><b>Evacuated Tube Collector</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #EVACUATED_TUBE_COLLECTOR
* @model name="evacuatedTubeCollector"
* @generated
* @ordered
*/
public static final int EVACUATED_TUBE_COLLECTOR_VALUE = 1;
/**
* An array of all the '<em><b>Collector Types</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private static final CollectorTypes[] VALUES_ARRAY = new CollectorTypes[] { FLAT_PLANE_COLLECTOR,
EVACUATED_TUBE_COLLECTOR, };
/**
* A public read-only list of all the '<em><b>Collector Types</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static final List<CollectorTypes> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
/**
* Returns the '<em><b>Collector Types</b></em>' literal with the specified literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param literal the literal.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static CollectorTypes get(String literal) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
CollectorTypes result = VALUES_ARRAY[i];
if (result.toString().equals(literal)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Collector Types</b></em>' literal with the specified name.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param name the name.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static CollectorTypes getByName(String name) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
CollectorTypes result = VALUES_ARRAY[i];
if (result.getName().equals(name)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Collector Types</b></em>' literal with the specified integer value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the integer value.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static CollectorTypes get(int value) {
switch (value) {
case FLAT_PLANE_COLLECTOR_VALUE:
return FLAT_PLANE_COLLECTOR;
case EVACUATED_TUBE_COLLECTOR_VALUE:
return EVACUATED_TUBE_COLLECTOR;
}
return null;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final int value;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final String name;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final String literal;
/**
* Only this class can construct instances.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private CollectorTypes(int value, String name, String literal) {
this.value = value;
this.name = name;
this.literal = literal;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public int getValue() {
return value;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getName() {
return name;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getLiteral() {
return literal;
}
/**
* Returns the literal value of the enumerator, which is its string representation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String toString() {
return literal;
}
} //CollectorTypes
/**
*/
package de.hftstuttgart.energycomponents;
import de.hftstuttgart.units.NullableQuantity;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Combined Heat Power</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link de.hftstuttgart.energycomponents.CombinedHeatPower#getThermalEfficiency <em>Thermal Efficiency</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.CombinedHeatPower#getElectricalEfficiency <em>Electrical Efficiency</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.CombinedHeatPower#getInstalledElectricalPower <em>Installed Electrical Power</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.CombinedHeatPower#getElectricalEfficiencyPartLoad <em>Electrical Efficiency Part Load</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.CombinedHeatPower#getThermalEfficiencyPartLoad <em>Thermal Efficiency Part Load</em>}</li>
* </ul>
*
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCombinedHeatPower()
* @model
* @generated
*/
public interface CombinedHeatPower extends ThermalEnergyDevice {
/**
* Returns the value of the '<em><b>Thermal Efficiency</b></em>' attribute.
* The default value is <code>"0.4"</code>.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* share
* <!-- end-model-doc -->
* @return the value of the '<em>Thermal Efficiency</em>' attribute.
* @see #setThermalEfficiency(double)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCombinedHeatPower_ThermalEfficiency()
* @model default="0.4" required="true"
* @generated
*/
double getThermalEfficiency();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.CombinedHeatPower#getThermalEfficiency <em>Thermal Efficiency</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Thermal Efficiency</em>' attribute.
* @see #getThermalEfficiency()
* @generated
*/
void setThermalEfficiency(double value);
/**
* Returns the value of the '<em><b>Electrical Efficiency</b></em>' attribute.
* The default value is <code>"0.4"</code>.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* share
* <!-- end-model-doc -->
* @return the value of the '<em>Electrical Efficiency</em>' attribute.
* @see #setElectricalEfficiency(double)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCombinedHeatPower_ElectricalEfficiency()
* @model default="0.4" required="true"
* @generated
*/
double getElectricalEfficiency();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.CombinedHeatPower#getElectricalEfficiency <em>Electrical Efficiency</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Electrical Efficiency</em>' attribute.
* @see #getElectricalEfficiency()
* @generated
*/
void setElectricalEfficiency(double value);
/**
* Returns the value of the '<em><b>Installed Electrical Power</b></em>' attribute.
* The default value is <code>"kW"</code>.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* kW
* <!-- end-model-doc -->
* @return the value of the '<em>Installed Electrical Power</em>' attribute.
* @see #setInstalledElectricalPower(NullableQuantity)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCombinedHeatPower_InstalledElectricalPower()
* @model default="kW" dataType="de.hftstuttgart.energycomponents.QuantityDouble" required="true"
* @generated
*/
NullableQuantity getInstalledElectricalPower();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.CombinedHeatPower#getInstalledElectricalPower <em>Installed Electrical Power</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Installed Electrical Power</em>' attribute.
* @see #getInstalledElectricalPower()
* @generated
*/
void setInstalledElectricalPower(NullableQuantity value);
/**
* Returns the value of the '<em><b>Electrical Efficiency Part Load</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Electrical Efficiency Part Load</em>' containment reference.
* @see #setElectricalEfficiencyPartLoad(Characteristic)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCombinedHeatPower_ElectricalEfficiencyPartLoad()
* @model containment="true"
* @generated
*/
Characteristic getElectricalEfficiencyPartLoad();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.CombinedHeatPower#getElectricalEfficiencyPartLoad <em>Electrical Efficiency Part Load</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Electrical Efficiency Part Load</em>' containment reference.
* @see #getElectricalEfficiencyPartLoad()
* @generated
*/
void setElectricalEfficiencyPartLoad(Characteristic value);
/**
* Returns the value of the '<em><b>Thermal Efficiency Part Load</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Thermal Efficiency Part Load</em>' containment reference.
* @see #setThermalEfficiencyPartLoad(Characteristic)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCombinedHeatPower_ThermalEfficiencyPartLoad()
* @model containment="true"
* @generated
*/
Characteristic getThermalEfficiencyPartLoad();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.CombinedHeatPower#getThermalEfficiencyPartLoad <em>Thermal Efficiency Part Load</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Thermal Efficiency Part Load</em>' containment reference.
* @see #getThermalEfficiencyPartLoad()
* @generated
*/
void setThermalEfficiencyPartLoad(Characteristic value);
} // CombinedHeatPower
/**
*/
package de.hftstuttgart.energycomponents;
import de.hftstuttgart.units.NullableQuantity;
import org.eclipse.emf.ecore.EObject;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Cost</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link de.hftstuttgart.energycomponents.Cost#getComponentName <em>Component Name</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.Cost#getDescription <em>Description</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.Cost#getHeatSource <em>Heat Source</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.Cost#getDatasource <em>Datasource</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.Cost#getInvestmentCost <em>Investment Cost</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.Cost#getOtherInvestmentCost <em>Other Investment Cost</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.Cost#getPersonnelHours <em>Personnel Hours</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.Cost#getPersonnelCostShare <em>Personnel Cost Share</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.Cost#getAdministrationAndOtherCostShare <em>Administration And Other Cost Share</em>}</li>
* <li>{@link de.hftstuttgart.energycomponents.Cost#getMaintenanceCostShare <em>Maintenance Cost Share</em>}</li>
* </ul>
*
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCost()
* @model
* @generated
*/
public interface Cost extends EObject {
/**
* Returns the value of the '<em><b>Datasource</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Datasource</em>' attribute.
* @see #setDatasource(String)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCost_Datasource()
* @model
* @generated
*/
String getDatasource();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.Cost#getDatasource <em>Datasource</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Datasource</em>' attribute.
* @see #getDatasource()
* @generated
*/
void setDatasource(String value);
/**
* Returns the value of the '<em><b>Investment Cost</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Investment Cost</em>' containment reference.
* @see #setInvestmentCost(Characteristic)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCost_InvestmentCost()
* @model containment="true" required="true"
* @generated
*/
Characteristic getInvestmentCost();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.Cost#getInvestmentCost <em>Investment Cost</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Investment Cost</em>' containment reference.
* @see #getInvestmentCost()
* @generated
*/
void setInvestmentCost(Characteristic value);
/**
* Returns the value of the '<em><b>Other Investment Cost</b></em>' attribute.
* The default value is <code>"0"</code>.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Other Investment Cost</em>' attribute.
* @see #setOtherInvestmentCost(double)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCost_OtherInvestmentCost()
* @model default="0"
* @generated
*/
double getOtherInvestmentCost();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.Cost#getOtherInvestmentCost <em>Other Investment Cost</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Other Investment Cost</em>' attribute.
* @see #getOtherInvestmentCost()
* @generated
*/
void setOtherInvestmentCost(double value);
/**
* Returns the value of the '<em><b>Personnel Hours</b></em>' attribute.
* The default value is <code>"10 h"</code>.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Personnel Hours</em>' attribute.
* @see #setPersonnelHours(NullableQuantity)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCost_PersonnelHours()
* @model default="10 h" dataType="de.hftstuttgart.energycomponents.QuantityDouble"
* @generated
*/
NullableQuantity getPersonnelHours();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.Cost#getPersonnelHours <em>Personnel Hours</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Personnel Hours</em>' attribute.
* @see #getPersonnelHours()
* @generated
*/
void setPersonnelHours(NullableQuantity value);
/**
* Returns the value of the '<em><b>Personnel Cost Share</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Personnel Cost Share</em>' attribute.
* @see #setPersonnelCostShare(double)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCost_PersonnelCostShare()
* @model
* @generated
*/
double getPersonnelCostShare();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.Cost#getPersonnelCostShare <em>Personnel Cost Share</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Personnel Cost Share</em>' attribute.
* @see #getPersonnelCostShare()
* @generated
*/
void setPersonnelCostShare(double value);
/**
* Returns the value of the '<em><b>Administration And Other Cost Share</b></em>' attribute.
* The default value is <code>"0.015"</code>.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* share of investment cost
* <!-- end-model-doc -->
* @return the value of the '<em>Administration And Other Cost Share</em>' attribute.
* @see #setAdministrationAndOtherCostShare(double)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCost_AdministrationAndOtherCostShare()
* @model default="0.015"
* @generated
*/
double getAdministrationAndOtherCostShare();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.Cost#getAdministrationAndOtherCostShare <em>Administration And Other Cost Share</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Administration And Other Cost Share</em>' attribute.
* @see #getAdministrationAndOtherCostShare()
* @generated
*/
void setAdministrationAndOtherCostShare(double value);
/**
* Returns the value of the '<em><b>Maintenance Cost Share</b></em>' attribute.
* The default value is <code>"0.015"</code>.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* share of investment cost
* <!-- end-model-doc -->
* @return the value of the '<em>Maintenance Cost Share</em>' attribute.
* @see #setMaintenanceCostShare(double)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCost_MaintenanceCostShare()
* @model default="0.015"
* @generated
*/
double getMaintenanceCostShare();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.Cost#getMaintenanceCostShare <em>Maintenance Cost Share</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Maintenance Cost Share</em>' attribute.
* @see #getMaintenanceCostShare()
* @generated
*/
void setMaintenanceCostShare(double value);
/**
* Returns the value of the '<em><b>Component Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Component Name</em>' attribute.
* @see #setComponentName(String)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCost_ComponentName()
* @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
* @generated
*/
String getComponentName();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.Cost#getComponentName <em>Component Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Component Name</em>' attribute.
* @see #getComponentName()
* @generated
*/
void setComponentName(String value);
/**
* Returns the value of the '<em><b>Description</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* i.e. what is included in which cost category
* <!-- end-model-doc -->
* @return the value of the '<em>Description</em>' attribute.
* @see #setDescription(String)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCost_Description()
* @model
* @generated
*/
String getDescription();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.Cost#getDescription <em>Description</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Description</em>' attribute.
* @see #getDescription()
* @generated
*/
void setDescription(String value);
/**
* Returns the value of the '<em><b>Heat Source</b></em>' attribute.
* The literals are from the enumeration {@link de.hftstuttgart.energycomponents.TypeOfHeatSource}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Heat Source</em>' attribute.
* @see de.hftstuttgart.energycomponents.TypeOfHeatSource
* @see #setHeatSource(TypeOfHeatSource)
* @see de.hftstuttgart.energycomponents.EnCompPackage#getCost_HeatSource()
* @model
* @generated
*/
TypeOfHeatSource getHeatSource();
/**
* Sets the value of the '{@link de.hftstuttgart.energycomponents.Cost#getHeatSource <em>Heat Source</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Heat Source</em>' attribute.
* @see de.hftstuttgart.energycomponents.TypeOfHeatSource
* @see #getHeatSource()
* @generated
*/
void setHeatSource(TypeOfHeatSource value);
} // Cost
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment