Equations and Variables

latest update: 16 April 2018     

Introduction

In the topic Process Design an overview is given about how an equation for a Unit Operation can be modeled and how data can be linked to variables in that equation.

In this topic this overview is completely detailed.

Equation

We saw that the head of a pump in metric units can be expressed in metric units as:

    h = 1000*(p2 - p1)/(ρ  g) + v22/(2*g)     

    where

    h = total head developed (m)

    p2 = pressure at outlet (1000*N/m2 = kPa)

    p1 = pressure at inlet (1000*N/m2 = kPa)

    ρ =   density (kg/m3)

    g = acceleration due to gravity (9.81)  m/s2

    v2 = velocity at the outlet (m/s)

Modeling an equation

First of all it should be mentioned that the transfer functions and their equations are hidden in the software and are, for the sake of lifecycle information integration, not important.

Variables, like the inlet pressure, are represented by means of ISO 15926 templates that have the value in their "signature".

If an equation is modeled, it can be represented in MathML, which makes it suitable for handling in an XML environment.

The relationship between the equation and its variables and constants is shown in the template below:

Functional mapping of the equation for centrifugal pump head

Example

Assume:

  • UO137 - an instance of ClassOfActivity called UO_Centrifugal_Pump;
  • P137 - an instance of ClassOfInanimatePhysicalObject performing UO137;
  • STRM137in - an instance of ClassOfStream being the inlet to P137;
  • STRM137out - an instance of ClassOfStream being the outlet from P137.

and the following process data, as shown in above template:

  • p1 = 211.8 kPa - inlet pressure = pressure of STRM137in;
  • p2 = 584.3 kPa - outlet pressure = pressure of STRM137out;
  • ρ = 1237 kg/m3 - density of STRM137in;
  • v2 = 5.3 m/s - fluid velocity of STRM137out.
  • g = 9.81 m/s2 - accelleration due to gravity.

Code for the ClassOfFunctionalMapping

New reference data must be defined:

 

These are temporarily stored in a local RDL extension. The final RDS-numbers of the core RDL will be entered later.

@prefix : <http://www.rdl.xyz-corp.com/> .

@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .

@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .

@prefix owl: <http://www.w3.org/2002/07/owl#> .

@prefix dc: <http://purl.org/dc/elements/1.1/> .

@prefix skos: <http://www.w3.org/2004/02/skos/core#> .

@prefix dm: <http://data.15926.org/dm/> .

@prefix lci: <http://data.15926.org/lci/> .

@prefix meta: <http://data.15926.org/meta/> .

@prefix tpl: <http://data.15926.org/tpl/> .

@prefix rdl: <http://data.15926.org/rdl/> .

 

#    //////////////////////////////////////////////////////////////////////////////////////////////////

#    //

#    // THIS ONTOLOGY REPRESENTS ADDITIONAL CONCEPTS FOR THE LOCAL RDL EXTENSION OF THE XYZ CORPORATION

#    //

#    //////////////////////////////////////////////////////////////////////////////////////////////////

 

# Definition of Unit Operation

  

:74B3781BF1F8486E8E8DE34D1193C6D7 rdf:type dm:ClassOfActivity ;

     rdfs:subclassOf rdl:RDS2223591 ; # UO_CENTRIFUGAL_PUMP

     rdfs:label "our_UO_CENTRIFUGAL_PUMP"@en ;

     skos:definition "PUMPING with a CENTRIFUGAL PUMP as defined for the XYZ Corp." ; # because not yet defined in the RDL

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:D7147D26812648EBBAC4AC8C638C87AA rdf:type tpl:ClassifiedDefinitionOfClassOfIndividualWithInformationRepresentation ;

     tpl:hasDefined :74B3781BF1F8486E8E8DE34D1193C6D7 ;

     tpl:hasDefinition :2C7362C0AF254D62BCF2CC865340E797 ; # UO_CENTRIFUGAL_PUMP TRANSFER FUNCTION

     tpl:hasDefinitionType rdl:RDS2225201 ; # DEFINITION WITH A MATHEMATICAL EQUATION

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# Equation is a part of Transfer Function (TFs for other equipment may have upto 50 equations)

:62A115E6E0FF475BA60F45F5848EA447 rdf:type tpl:ClassOfCompositionDefinition ;

     tpl:hasClassOfWhole :2C7362C0AF254D62BCF2CC865340E797 ;

     tpl:hasClassOfPart :4D1F91BF018C4E8793F07EC29C12F502 ;

     tpl:hasCardinalityOfWhole rdl:RDS222625 ;

     tpl:hasCardinalityOfPart rdl:RDS222625 ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:2C7362C0AF254D62BCF2CC865340E797 rdf:type dm:ClassOfInformationRepresentation ;

     rdfs:subclassOf lci:InformationObject ;

     rdfs:label "UO_CENTRIFUGAL_PUMP TRANSFER FUNCTION"@en ;

     skos:definition "A <UO_CENTRIFUGAL_PUMP TRANSFER FUNCTION> is an <InformationObject> that represents the transfer function of <UO_CENTRIFUGAL_PUMP>"@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:4D1F91BF018C4E8793F07EC29C12F502 rdf:type dm:ClassOfInformationRepresentation ;

     rdfs:subclassOf lci:InformationObject ;

     rdfs:label "UO_CENTRIFUGAL_PUMP EQUATION FOR HEAD CALCULATION"@en ;

     skos:definition "<math xmlns='http://www.w3.org/1998/Math/MathML'><mrow><mfrac><mrow><mn>1000</mn><mo>&#8290;</mo><mrow><mo>(</mo><mrow><mi>p2</mi><mo>-</mo><mi>p1</mi></mrow><mo></mo></mrow></mrow>           <mrow><mi>g</mi><mo>&#8290;</mo><mi>p</mi></mrow></mfrac><mo>+</mo><mfrac><msup><mi>v2</mi><mn>2</mn></msup><mrow><mn>2</mn><mo>&#8290;</mo><mi>g</mi></mrow></mfrac></mrow></math>" ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# Declaration of ClassOfFunctionalMapping

:4EF2213A315240F7A820FCDB2C61C88E rdf:type dm:ClassOfFunctionalMapping;

     dm:codomain :1A2B3956464C4DED8292CFAC511E8BA5 ; # the RoleAndDomain defining "h AND head in m"

     dm:domain :DCA31CC14D64478CADE5675E0DB2908E ; # the ClassOfMultidimensionalObject defining the variables and constants

     dc:description "pump head equation h = 1000*(p2 - p1)/(ρ*g) + v2^2/(2*g)"@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

 

# Definition of transfer function represented by ClassOfFunctionalMapping

:6E7ACE88D8184D819BC0E015529B5255 rdf:type tpl:ClassifiedDefinitionOfClassOfRelationshipWithInformationRepresentation ;

     tpl:hasDefined :4EF2213A315240F7A820FCDB2C61C88E ;

     tpl:hasDefinition :4D1F91BF018C4E8793F07EC29C12F502 ;

     tpl:hasDefinitionType rdl:RDS2225201 ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# Definition of ClassOfMultidimensionalobject that is input for ClassOfFunctionalMapping

:DCA31CC14D64478CADE5675E0DB2908E rdf:type dm:ClassOfMultidimensionalObject;

     :role1 :43B3EFF582C34763B51884CB01054BE4 ; # p1 AND NORMAL INLET PRESSURE IN KILOPASCAL

     :role2 :E14D7271C46140AF8DA32D137352C0A5 ; # p2 AND NORMAL OUTLET PRESSURE IN KILOPASCAL

     :role3 :413DDC0747DD4D338ACE5F827FE2B747 ; # ρ AND DENSITY IN KILOGRAM PER METRE CUBED

     :role4 :2EB8C54A72E64F8DB126F9452E7D848D ; # v2 AND AVERAGE VELOCITY IN METRE PER SECOND

     :role5 :F8554A71EEBC4C92959745A5CA2483C8 ; # 9.81 AND ACCELLERATION DUE TO GRAVITY IN METRE PER SECOND SQUARED

     rdfs:label "VARIABLES FOR PUMP EQUATION"@en ;

     skos:definition "<VARIABLES FOR PUMP HEAD EQUATION> is a <MultidimensionalObject> that defines the variables for h = (p2 - p1)/(ρ*g) + v2^2/(2*g)"@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# Definition of 5 instances of RoleAndDomain combined in ClassOfMultidimensionalobject

:43B3EFF582C34763B51884CB01054BE4 rdf:type dm:RoleAndDomain;

     rdfs:subclassOf dm:Class ;

     rdfs:label "VARIABLE p1(kPa) AS PROXY FOR NORMAL INLET PRESSURE IN KILOPASCAL" ;

     skos:definition "A <VARIABLE p1(kPa) AS A PROXY FOR NORMAL INLET PRESSURE IN KILOPASCAL> is a <Class> that is an instance of <RoleAndDomain> with variable <p1(kPa)> as the <Role> and <NORMAL INLET PRESSURE IN KILOPASCAL> as the domain."@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:897C983AE38D4FB5BE1A5A56E6E232AB rdf:type tpl:DefinitionOfRoleAndDomain;

     tpl:hasDomain :60C213406AA44BF2B8CC3F9AA1A5702F ; # NORMAL INLET PRESSURE IN KILOPASCAL

     tpl:hasRole :E78BF0D141A04ED7A31657117902E621 ; # p1(kPa)

     tpl:hasDefined :43B3EFF582C34763B51884CB01054BE4 ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:E14D7271C46140AF8DA32D137352C0A5 rdf:type dm:RoleAndDomain;

     rdfs:subclassOf dm:Class ;

     rdfs:label "VARIABLE p2(kPa) AS PROXY FOR NORMAL OUTLET PRESSURE IN KILOPASCAL" ;

     skos:definition "A <VARIABLE p2(kPa) AS A PROXY FOR NORMAL OUTLET PRESSURE IN KILOPASCAL> is a <Class> that is an instance of <RoleAndDomain> with variable <p2(kPa)> as the <Role> and <NORMAL OUTLET PRESSURE IN KILOPASCAL> as the domain."@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:A5C827C08DD245CE84456C64D191929C rdf:type tpl:DefinitionOfRoleAndDomain;

     tpl:hasDomain :C6F4FC97334A42EEB1E65B29C7A5849A ; # NORMAL OUTLET PRESSURE IN KILOPASCAL

     tpl:hasRole :F4CA2B783FCF45BA9DA230AB05940B30 ; # p2(kPa)

     tpl:hasDefined :E14D7271C46140AF8DA32D137352C0A5 ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:413DDC0747DD4D338ACE5F827FE2B747 rdf:type dm:RoleAndDomain;

     rdfs:subclassOf dm:Class ;

     rdfs:label "VARIABLE ρ AS PROXY FOR DENSITY IN KILOGRAM PER METRE CUBED"@en ;

     skos:definition "A <VARIABLE ρ AS A PROXY FOR DENSITY IN KILOGRAM PER METRE CUBED> is a <Class> that is an instance of <RoleAndDomain> with variable <ρ> as the <Role> and <DENSITY IN KILOGRAM PER METRE CUBED> as the domain."@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:AB126315D5264FDAAA0D03E5EDDEE7BC rdf:type tpl:DefinitionOfRoleAndDomain;

     tpl:hasDomain :B0680CE8FC714E6086DE23105A57EEA8 ; # DENSITY IN KILOGRAM PER METRE CUBED

     tpl:hasRole :0A0211667B5C45CF99887B3D16BDFB54 ; # ρ

     tpl:hasDefined :413DDC0747DD4D338ACE5F827FE2B747 ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:2EB8C54A72E64F8DB126F9452E7D848D rdf:type dm:RoleAndDomain;

     rdfs:subclassOf dm:Class ;

     rdfs:label "VARIABLE v2 AS A PROXY FOR AVERAGE VELOCITY IN METRE PER SECOND"@en ;

     skos:definition "A <VARIABLE v2 AS PROXY FOR AVERAGE VELOCITY IN METRE PER SECOND> is a <Class> that is an instance of <RoleAndDomain> with variable <v2> as the <Role> and <AVERAGE VELOCITY IN METRE PER SECOND> as the domain."@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:D03D9DD5FAE140B1859353F733114D0F rdf:type tpl:DefinitionOfRoleAndDomain;

     tpl:hasDomain :CB119DD8E10847DBB72B293A837C58C3 ; # AVERAGE VELOCITY IN METRE PER SECOND

     tpl:hasRole :F6B278A5CFA945059204E3EF6C7F2A28 ; # v2

     tpl:hasDefined :2EB8C54A72E64F8DB126F9452E7D848D ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:F8554A71EEBC4C92959745A5CA2483C8 rdf:type dm:RoleAndDomain;

     rdfs:subclassOf dm:Class ;

     rdfs:label "VARIABLE g AS A PROXY FOR ACCELLERATION OF GRAVITY IN METRE PER SECOND SQUARED"@en ;

     skos:definition "A <VARIABLE g AS PROXY FOR ACCELLERATION OF GRAVITY IN METRE PER SECOND SQUARED> is a <Class> that is an instance of <RoleAndDomain> with variable <g> as the <Role> and <ACCELLERATION OF GRAVITY IN METRE PER SECOND SQUARED> as the domain."@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:540A3F31A39041E18780A6456D3277E5 rdf:type tpl:DefinitionOfRoleAndDomain;

     tpl:hasDomain :CC3E589E120D4E1BACF31E279DF627A3 ; # ACCELLERATION OF GRAVITY IN METRE PER SECOND SQUARED

     tpl:hasRole :02FB5C3088BB4956AFE8A8BF16969ACC ; # g

     tpl:hasDefined :F8554A71EEBC4C92959745A5CA2483C8 ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# Definition of RoleAndDomain resulting from ClassOfFunctionalMapping

:B273151247244835BA017401B091107D rdf:type dm:RoleAndDomain;

     rdfs:subclassOf dm:Class ;

     rdfs:label "VARIABLE h AS A PROXY FOR HEAD IN METRE"@en ;

     skos:definition "A <VARIABLE h AS PROXY FOR HEAD IN METRE> is a <Class> that is an instance of <RoleAndDomain> with variable <h> as the <Role> and <HEAD IN METRE> as the domain."@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:6F70F10B81E644EFAE57229CD9250801 rdf:type tpl:DefinitionOfRoleAndDomain;

     tpl:hasDomain :C6BD19B16A5A4DBC859C0249EE979021 ; # HEAD IN METRE

     tpl:hasRole :C6BD19B16A5A4DBC859C0249EE979021 ; # h

     tpl:hasDefined :B273151247244835BA017401B091107D ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# Definition of 6 Variables

 

# DEFINITION OF p1(kPa)

:0189AADB09FE47CE8E1D8DBB79365C9E rdf:type dm:Role;

     rdfs:subclassOf rdl:RDS2229037 ; # VARIABLE IN EQUATION

     rdfs:label "p1" ;

     dc:description "<p1> is a <VARIABLE IN EQUATION> and a proxy for a <PRESSURE>"@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:D2F2DA6812DB4514971729643CA316BF rdf:type dm:RoleAndDomain ;

     rdfs:subclassOf dm:Class ;

     rdfs:label "VARIABLE p1 AS A PROXY FOR NORMAL INLET PRESSURE"@en ;

     skos:definition "A <VARIABLE p1 AS PROXY FOR NORMAL INLET PRESSURE> is a <Class> that is an instance of <RoleAndDomain> with variable <p1> as the <Role> and <NORMAL INLET PRESSURE> as the domain."@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:E7E6EDAE1EBD4B1282ACAEEA671A99AD rdf:type tpl:DefinitionOfRoleAndDomain;

     tpl:hasDomain rdl:RDS7343782 ; # NORMAL INLET PRESSURE

     tpl:hasRole :0189AADB09FE47CE8E1D8DBB79365C9E ; # p1

     tpl:hasDefined :D2F2DA6812DB4514971729643CA316BF ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:E78BF0D141A04ED7A31657117902E621 rdf:type dm:Role ;

     rdfs:subclassOf :0189AADB09FE47CE8E1D8DBB79365C9E ; # p1

     rdfs:label "p1(kPa)" ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# DEFINITION OF p2(kPa)

:0E9DEEF7F5C9494592488CE4A0BB0DA6 rdf:type dm:Role;

     rdfs:subclassOf rdl:RDS2229037 ; # VARIABLE IN EQUATION

     rdfs:label "p2" ;

     dc:description "<p2> is a <VARIABLE IN EQUATION> and a proxy for a <PRESSURE>"@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:C21E4ECF0D3F4071BF52E1D67724AD5A rdf:type dm:RoleAndDomain ;

     rdfs:subclassOf dm:Class ;

     rdfs:label "VARIABLE p2 AS A PROXY FOR NORMAL OUTLET PRESSURE"@en ;

     skos:definition "A <VARIABLE p2 AS PROXY FOR NORMAL OUTLET PRESSURE> is a <Class> that is an instance of <RoleAndDomain> with variable <p2> as the <Role> and <NORMAL OUTLET PRESSURE> as the domain."@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:893B32474A80468B95F3D00E33D73C5C rdf:type tpl:DefinitionOfRoleAndDomain;

     tpl:hasDomain rdl:RDS14261705 ; # NORMAL OUTLET PRESSURE

     tpl:hasRole :0E9DEEF7F5C9494592488CE4A0BB0DA6 ; # p2

     tpl:hasDefined :C21E4ECF0D3F4071BF52E1D67724AD5A ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:F4CA2B783FCF45BA9DA230AB05940B30 rdf:type dm:Role ;

     rdfs:subclassOf :0E9DEEF7F5C9494592488CE4A0BB0DA6 ; # p2

     rdfs:label "p2(kPa)" ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# DEFINITION OF ρ(kg/m3)

:11F842C6F6C3423CA564257EB9FAC4A1 rdf:type dm:Role;

     rdfs:subclassOf rdl:RDS2229037 ; # VARIABLE IN EQUATION

     rdfs:label "ρ" ;

     dc:description "<ρ> is a <VARIABLE IN EQUATION> and a proxy for a <DENSITY>"@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:1BDDEFBAE38D40B4B20B6DBB0DA5CDB4 rdf:type dm:RoleAndDomain ;

     rdfs:subclassOf dm:Class ;

     rdfs:label "VARIABLE ρ AS A PROXY FOR DENSITY"@en ;

     skos:definition "A <VARIABLE ρ AS PROXY FOR DENSITY> is a <Class> that is an instance of <RoleAndDomain> with variable <> as the <Role> and <DENSITY> as the domain."@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:78E5198380A245AE9D8625BE621E5907 rdf:type tpl:DefinitionOfRoleAndDomain;

     tpl:hasDomain rdl:RDS2229036 ; # DENSITY

     tpl:hasRole :11F842C6F6C3423CA564257EB9FAC4A1 ; # ρ

     tpl:hasDefined :1BDDEFBAE38D40B4B20B6DBB0DA5CDB4 ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:995839B7142B4C73828F093F44877FBF rdf:type dm:Role ;

     rdfs:subclassOf :11F842C6F6C3423CA564257EB9FAC4A1 ; # ρ

     rdfs:label "ρ(kg/m3)" ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# DEFINITION OF v2(m/s)

:41B1C554D3694FFBBC5CB504EA0A7D54 rdf:type dm:Role;

     rdfs:subclassOf rdl:RDS2229037 ; # VARIABLE IN EQUATION

     rdfs:label "v2" ;

     dc:description "<v2> is a <VARIABLE IN EQUATION> and a proxy for a <VELOCITY>"@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:48883636899C49AC8FE27C68E9DF9D02 rdf:type dm:RoleAndDomain ;

     rdfs:subclassOf dm:Class ;

     rdfs:label "VARIABLE v2 AS A PROXY FOR AVERAGE VELOCITY"@en ;

     skos:definition "A <VARIABLE v2 AS PROXY FOR AVERAGE VELOCITY> is a <Class> that is an instance of <RoleAndDomain> with variable <v2> as the <Role> and <AVERAGE VELOCITY> as the domain."@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:F94C2435C331451593F1CB870809143F rdf:type tpl:DefinitionOfRoleAndDomain;

     tpl:hasDomain rdl:RDS2229038 ; # AVERAGE VELOCITY

     tpl:hasRole :41B1C554D3694FFBBC5CB504EA0A7D54 ; # v2

     tpl:hasDefined :48883636899C49AC8FE27C68E9DF9D02 ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:43E3658D8B034F29B98C8DA4D379B694 rdf:type dm:Role ;

     rdfs:subclassOf :41B1C554D3694FFBBC5CB504EA0A7D54 ; # v2

     rdfs:label "v2(m/s)" ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# DEFINITION OF g(m/s2)

:E99CA65E08AB4771B4EF57694A74F41C rdf:type dm:Role;

     rdfs:subclassOf rdl:RDS2229037 ; # VARIABLE IN EQUATION

     rdfs:label "g" ;

     dc:description "<g> is a <VARIABLE IN EQUATION> and a proxy for an <ACCELLERATION DUE TO GRAVITY>"@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:9E928F93914645E296F41ED0A007CF2A rdf:type dm:RoleAndDomain ;

     rdfs:subclassOf dm:Class ;

     rdfs:label "VARIABLE g AS A PROXY FOR ACCELLERATION DUE TO GRAVITY"@en ;

     skos:definition "A <VARIABLE g AS PROXY FOR ACCELLERATION DUE TO GRAVITY> is a <Class> that is an instance of <RoleAndDomain> with variable <g> as the <Role> and <ACCELLERATION DUE TO GRAVITY> as the domain."@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:AAFB1190BAF54437A184671BC29CEC42 rdf:type tpl:DefinitionOfRoleAndDomain;

     tpl:hasDomain rdl:RDS1061546401 ; # ACCELLERATION DUE TO GRAVITY

     tpl:hasRole :E99CA65E08AB4771B4EF57694A74F41C ; # g

     tpl:hasDefined :9E928F93914645E296F41ED0A007CF2A ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:CB6E76ECD69143F6A8FB03FC9618DCE8 rdf:type dm:Role ;

     rdfs:subclassOf :E99CA65E08AB4771B4EF57694A74F41C ; # g

     rdfs:label "g(m/s2)" ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# DEFINITION OF h(m)

:1328384C7B08412198B0049332751575 rdf:type dm:Role;

     rdfs:subclassOf rdl:RDS2229037 ; # VARIABLE IN EQUATION

     rdfs:label "h" ;

     dc:description "<h> is a <VARIABLE IN EQUATION> and a proxy for a <HEAD>"@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:1A2B3956464C4DED8292CFAC511E8BA5 rdf:type dm:RoleAndDomain ;

     rdfs:subclassOf dm:Class ;

     rdfs:label "VARIABLE h AS A PROXY FOR HEAD"@en ;

     skos:definition "A <VARIABLE h AS PROXY FOR HEAD> is a <Class> that is an instance of <RoleAndDomain> with variable <h> as the <Role> and <HEAD> as the domain."@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:9D66BC1C15AC4766A6699326D8106E9E rdf:type tpl:DefinitionOfRoleAndDomain;

     tpl:hasDomain rdl:RDS362609 ; # HEAD

     tpl:hasRole :1328384C7B08412198B0049332751575 ; # h

     tpl:hasDefined :1A2B3956464C4DED8292CFAC511E8BA5 ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:E20DAE152ACA414BB2567EE1749AC875 rdf:type dm:Role ;

     rdfs:subclassOf :1328384C7B08412198B0049332751575 ; # h

     rdfs:label "h(m)" ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# Definition of 5 (Indirect)Properties with predefined Scale

:60C213406AA44BF2B8CC3F9AA1A5702F rdf:type dm:ClassOfIndirectProperty;

     rdfs:subclassOf rdl:RDS7343782 ; # NORMAL INLET PRESSURE

     rdfs:label "NORMAL INLET PRESSURE IN KILOPASCAL"@en ;

     skos:definition "A <NORMAL INLET PRESSURE IN KILOPASCAL> is a <NORMAL INLET PRESSURE> of which the value of the related <PRESSURE> is mapped to the <Scale> <KILOPASCAL>"@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:C6F4FC97334A42EEB1E65B29C7A5849A rdf:type dm:ClassOfIndirectProperty;

     rdfs:subclassOf rdl:RDS14261705 ; # NORMAL OUTLET PRESSURE

     rdfs:label "NORMAL OUTLET PRESSURE IN KILOPASCAL"@en ;

     skos:definition "A <NORMAL OUTLET PRESSURE IN KILOPASCAL> is a <NORMAL OUTLET PRESSURE> of which the value of the related <PRESSURE> is mapped to the <Scale> <KILOPASCAL>"@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:B0680CE8FC714E6086DE23105A57EEA8 rdf:type dm:SinglePropertyDimension ;

     rdfs:subclassOf rdl:RDS358874 ; # DENSITY

     rdfs:label "DENSITY IN KILOGRAM PER METRE CUBED"@en ;

     skos:definition "A <DENSITY IN KILOGRAM PER METRE CUBED> is a <DENSITY> of which the value is mapped to the <Scale> <KILOGRAM PER METRE CUBED>"@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:CB119DD8E10847DBB72B293A837C58C3 rdf:type dm:ClassOfIndirectProperty;

     rdfs:subclassOf rdl:RDS13107740 ; # AVERAGE VELOCITY

     rdfs:label "AVERAGE VELOCITY IN METRE PER SECOND"@en ;

     skos:definition "An <AVERAGE VELOCITY IN METRE PER SECOND> is an <AVERAGE VELOCITY> of which the value of the related <VELOCITY> is mapped to the <Scale> <METRE PER SECOND>"@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

:CC3E589E120D4E1BACF31E279DF627A3 rdf:type dm:SinglePropertyDimension;

     rdfs:subclassOf rdl:RDS362609 ; # HEAD

     rdfs:label "HEAD IN METRE"@en ;

     skos:definition "A <HEAD IN METRE> is a <HEAD> of which the value is mapped to the <Scale> <METRE>"@en ;

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# NOTE - In order to make these six definitions computer-interpretable we would need to use templates. That has been left out here.


Code for the variables

@prefix : <http://www.p1234.xyz-corp.com/> .

@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .

@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .

@prefix owl: <http://www.w3.org/2002/07/owl#> .

@prefix skos: <http://www.w3.org/2004/02/skos/core#> .

@prefix dm: <http://data.15926.org/dm/> .

@prefix lci: <http://data.15926.org/edm/> .

@prefix meta: <http://data.15926.org/meta/> .

@prefix tpl: <http://data.15926.org/tpl/> .

@prefix rdl: <http://data.15926.org/rdl/> .

@prefix xyzrdl: <http://www.rdl.xyz-corp.com/> . # local RDL extension

 

#    ////////////////////////////////////////////////////////////////

#    //

#    // THIS ONTOLOGY REPRESENTS AN EQUATION WITH DETAILED VARIABLES

#    //

#    ////////////////////////////////////////////////////////////////

 

#    ///////////////////

#    //

#    // DECLARED OBJECTS

#    //

#    ///////////////////

 

# Declaration of Unit Operation UO137

:UO137 rdf:type dm:ClassOfActivity ;

     rdfs:subclassOf rdl:RDS2223591 ; # UO_CENTRIFUGAL_PUMP

     rdfs:label "UO137" ;

     meta:lifecycleActivity rdl:RDS9648872 ; # PROCESS DESIGN

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# Declaration of Pump P137

:P137 rdf:type dm:ClassOfInanimatePhysicalObject ;

     rdfs:subclassOf rdl:RDS416834 ; # CENTRIFUGAL PUMP

     rdfs:label "P137" ;

     meta:lifecycleActivity rdl:RDS9648872 ; # PROCESS DESIGN

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# Declaration of Stream STRM137in

:STRM137in rdf:type lci:ClassOfStream ;

     rdfs:subclassOf rdl:RDS436813371 ; # ISO 15926-4 STREAM

     rdfs:label "STRM137in" ;

     meta:lifecycleActivity rdl:RDS9648872 ; # PROCESS DESIGN

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# Declaration of Stream STRM137out

:STRM137out rdf:type lci:ClassOfStream ;

     rdfs:subclassOf rdl:RDS436813371 ; # ISO 15926-4 STREAM

     rdfs:label "STRM137out" ;

     meta:lifecycleActivity rdl:RDS9648872 ; # PROCESS DESIGN

     meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

#    //////////////////////////////////////////////////////////////

#    //

#    // INSTANTIATING THE TEMPLATE FunctionalMappingOf5ExpressReals

#    //

#    //////////////////////////////////////////////////////////////

 

:87D68D3F4F6448B3ABC99D4424206362 rdf:type tpl:FunctionalMappingOf5ExpressReals ;

    tpl:valInput1 "211.8"^^xsd:decimal ;

    tpl:valInput2 "584.3"^^xsd:decimal ;

    tpl:valInput3 "1237"^^xsd:decimal ;

    tpl:valInput4 "5.3"^^xsd:decimal ;

    tpl:valInput5 "9.81"^^xsd:decimal ;

    tpl:valResult "32.12"^^xsd:decimal ;

    tpl:hasFunction :4EF2213A315240F7A820FCDB2C61C88E ;

    meta:lifecycleActivity rdl:RDS9648872 ; # PROCESS DESIGN

    meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# NOTE - The above template instance can only be populated with a SPARQL query result, where the values of the role tpl:valPropertyValue of the templates for variables (below) are being used. There cannot be a permanent link because, other than ExpressReal with its 'content' property, RDF datatypes cannot have a URI.

 

#    ////////////////////////////////////////////

#    //

#    // TEMPLATES FOR QUANTIFICATION OF VARIABLES

#    //

#    ////////////////////////////////////////////

 

# Template for value of inlet pressure p1

:D0798298B72941EBB2340D4E30C12A7C rdf:type tpl:ClassOfIndividualHasIndirectPropertyWithValue ;

    tpl:hasPossessorType :STRM137in ;

    tpl:hasIndirectPropertyType rdl:RDS7343782 ; # NORMAL INLET PRESSURE

    tpl:valPropertyValue "211.8"^^xsd:decimal ;

    tpl:hasScale rdl:RDS1330559 ; # KILOPASCAL

    meta:lifecycleActivity rdl:RDS9648872 ; # PROCESS DESIGN

    meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# Template for value of outlet pressure p2

:6742BC68C09B4D42A463531B194300C0 rdf:type tpl:ClassOfIndividualHasIndirectPropertyWithValue ;

    tpl:hasPossessorType :STRM137out ;

    tpl:hasIndirectPropertyType rdl:RDS14261705 ; # NORMAL OUTLET PRESSURE

    tpl:valPropertyValue "584.3"^^xsd:decimal ;

    tpl:hasScale rdl:RDS1330559 ; # KILOPASCAL

    meta:lifecycleActivity rdl:RDS9648872 ; # PROCESS DESIGN

    meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# Template for value of density ρ

:735EC4CCB35146CA97815C4048B5BB02 rdf:type tpl:ClassOfIndividualHasPropertyWithValue ;

    tpl:hasPossessorType :STRM137in ;

    tpl:hasPropertyType rdl:RDS358874 ; # DENSITY

    tpl:valPropertyValue "1237"^^xsd:decimal ;

    tpl:hasScale rdl:RDS1354454 ; # KILOGRAM PER METRE CUBED

    meta:lifecycleActivity rdl:RDS9648872 ; # PROCESS DESIGN

    meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# Template for value of outlet fluid velocity v2

:835A33699AD042A4A63EE46A41E8ED33 rdf:type tpl:ClassOfIndividualHasIndirectPropertyWithValue ;

    tpl:hasPossessorType :STRM137out ;

    tpl:hasIndirectPropertyType rdl:RDS13107740 ; # AVERAGE VELOCITY

    tpl:valPropertyValue "5.3"^^xsd:decimal ;

    tpl:hasScale rdl:RDS1354499 ; # METRE PER SECOND

    meta:lifecycleActivity rdl:RDS9648872 ; # PROCESS DESIGN

    meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .

# Template for value of head h

:3CD1FB18A2D84C7680E64D60D1E6864B rdf:type tpl:ClassOfIndividualHasIndirectPropertyWithValue ;

    tpl:hasPossessorType :P137 ;

    tpl:hasIndirectPropertyType rdl:RDS362609 ; # HEAD

    tpl:valPropertyValue "32.12"^^xsd:decimal ;

    tpl:hasScale rdl:RDS1332674 ; # METRE

    meta:lifecycleActivity rdl:RDS9648872 ; # PROCESS DESIGN

    meta:valEffectiveDate "2015-04-26T11:41:35Z"^^xsd:dateTime .