
| Name | Description |
|---|---|
| Controller. | |
| Information emitter. | |
| Gas - CV. | |
| Gas TP. | |
| Gas TP. | |
| Gas TP. | |
| Gas CV. | |
| Thermic interface - CV. | |
| Thermic interface TP. | |
| Thermic interface TP. | |
| Thermic interface TP. | |
| Liquid and Gas - TP. | |
| Liquid and Gas - TP. | |
| Liquid TP. | |
| Liquid TP. | |
| Liquid TP. | |
| Liquid CV. | |
| Liquid CV. | |
| Liquid CV. | |
| Information flow. | |
| Information flow | |
| Information flow | |
| Information receiver. | |
| Information flow. | |
| Information flow. | |
| Information flow. | |
| Information flow. | |
| Information flow. | |
| Information flow. | |
| Volume constraint. |
JARA2i.interf.controllerI
Interface type: information flow
| Type | Name | Default | Description |
|---|---|---|---|
| Real | samplePeriod0 | 0.1 | Sample period |
| Integer | dimSP | 1 | Dimension of the set-point signal |
| Integer | dimy | 1 | Dimension of the controlled variable signal |
| Integer | dimu | 1 | Dimension of the manipulated variable signal |
| Type | Name | Description |
|---|---|---|
| cutReceiver | setPointSignal | Set-point signal |
| cutEmitter | uVarSignal | Manipulated variable |
| cutReceiver | yVarSignal | Controlled variable |
partial model controllerI
parameter Real samplePeriod0 = 0.1 "Sample period";
Real samplePeriod(start=samplePeriod0) "Sample period of component";
// parameter SI.Time startTime=0 "First sample time instant";
discrete Boolean sampleTrigger(fixed=true, start=true)
"True, if sample time instant";
Boolean firstTrigger "Rising edge signals first sample instant";
parameter Integer dimSP=1 "Dimension of the set-point signal";
parameter Integer dimy=1 "Dimension of the controlled variable signal";
parameter Integer dimu=1 "Dimension of the manipulated variable signal";
Real setPoint[dimSP] "Setpoint signals";
Real uVar[dimu] "Manipulated signals";
Real yVar[dimy] "Controlled signals";
cutsB.cutReceiver setPointSignal(dim=dimSP, signal=setPoint)
"Set-point signal";
cutsB.cutEmitter uVarSignal(dim=dimu, signal=uVar) "Manipulated variable";
cutsB.cutReceiver yVarSignal(dim=dimy, signal=yVar) "Controlled variable";
protected
discrete Real nextTime(start=0);
equation
der(samplePeriod) = 0;
when time > nextTime then
//Hasta el sgte. instante de muestreo no se actualiza el valor de nextTime
// sampleTrigger = true;
nextTime = samplePeriod + pre(nextTime);
end when;
sampleTrigger = time < nextTime;
when sampleTrigger then
firstTrigger = time <= samplePeriod/2;
end when;
end controllerI;
JARA2i.interf.controllerMI
Interface type: information flow
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | dimSP | 1 | Number of setpoint signals |
| Integer | dimManip | 1 | Number of manipulated variables |
| Integer | dimControl | 1 | Number of control variables |
| Type | Name | Description |
|---|---|---|
| cutReceiver | setPointSignal | Setpoint signals |
| cutEmitter | manipVarSignal | Manipulated signals |
| cutReceiver | contrVarSignal | Control signals |
model controllerMI "Controller."
parameter Integer dimSP = 1 "Number of setpoint signals";
parameter Integer dimManip = 1 "Number of manipulated variables";
parameter Integer dimControl = 1 "Number of control variables";
Real setPoint[ dimSP] "Setpoint signals";
Real manipVar[ dimManip] "Manipulated signals";
Real contrVar[ dimControl] "Controlled signals";
cutsB.cutReceiver setPointSignal( dim=dimSP, signal=setPoint)
"Setpoint signals";
cutsB.cutEmitter manipVarSignal( dim=dimManip, signal=manipVar)
"Manipulated signals";
cutsB.cutReceiver contrVarSignal( dim=dimControl, signal=contrVar)
"Control signals";
equation
end controllerMI;
JARA2i.interf.emitter1I
Interface type: information flow
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | dim | 1 | Number of components of the signal vector |
| Type | Name | Description |
|---|---|---|
| cutEmitter | signal | Information |
model emitter1I "Information emitter." parameter Integer dim = 1 "Number of components of the signal vector"; cutsB.cutEmitter signal( dim=dim) "Information"; equation end emitter1I;
JARA2i.interf.gas1I
Interface of the classes modeling a control volume (CV) that contains a homogeneous mixture of an arbitrary number of semiperfect gases.
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 | Number of components |
| Type | Name | Description |
|---|---|---|
| cutGasC | inMol | Gas flow - Connector Capacitive |
| cutHeatMC | inHeat | Heat flow - Connector M-C |
model gas1I "Gas - CV." parameter Integer nComp = 1 "Number of components"; cutsB.cutGasC inMol( nComp=nComp) "Gas flow - Connector Capacitive"; cutsB.cutHeatMC inHeat( nComp=nComp) "Heat flow - Connector M-C"; equation end gas1I;
JARA2i.interf.gasFlow1I
Interface type: transport phenomenon
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 | Number of components |
| Type | Name | Description |
|---|---|---|
| cutGasR | inMol | Gas flow - Connector Resistive |
model gasFlow1I "Gas TP." parameter Integer nComp = 1 "Number of components"; cutsB.cutGasR inMol( nComp=nComp) "Gas flow - Connector Resistive"; equation end gasFlow1I;
JARA2i.interf.gasFlow2I
Interface type: transport phenomenon
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 | Number of components |
| Type | Name | Description |
|---|---|---|
| cutGasR | inMol | Gas flow - Connector Resistive |
| cutGasR | outMol | Gas flow - Connector Resistive |
model gasFlow2I "Gas TP." parameter Integer nComp = 1 "Number of components"; cutsB.cutGasR inMol( nComp=nComp) "Gas flow - Connector Resistive"; cutsB.cutGasR outMol( nComp=nComp) "Gas flow - Connector Resistive"; equation end gasFlow2I;
JARA2i.interf.gasFlow2qI
Interface type: transport phenomenon
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 | Number of components |
| Type | Name | Description |
|---|---|---|
| cutGasR | inMol | Gas flow - Connector Resistive. |
| cutGasR | outMol | Gas flow - Connector Resistive. |
| cutHeatFC | inHeat | Heat flow - Connector F-C. Connector for the heat convection. |
model gasFlow2qI "Gas TP."
parameter Integer nComp = 1 "Number of components";
cutsB.cutGasR inMol( nComp=nComp) "Gas flow - Connector Resistive.";
cutsB.cutGasR outMol( nComp=nComp) "Gas flow - Connector Resistive.";
cutsB.cutHeatFC inHeat( nComp=nComp)
"Heat flow - Connector F-C. Connector for the heat convection.";
equation
end gasFlow2qI;
JARA2i.interf.gasV1I
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 | Number of components |
| Type | Name | Description |
|---|---|---|
| cutGasC | inMol | Gas flow - Connector Capacitive |
| cutHeatMC | inHeat | Heat flow - Connector M-C |
| cutVolConstrGas | constraintV | Volume constraint - Gas |
model gasV1I "Gas CV." parameter Integer nComp = 1 "Number of components"; cutsB.cutGasC inMol( nComp=nComp) "Gas flow - Connector Capacitive"; cutsB.cutHeatMC inHeat( nComp=nComp) "Heat flow - Connector M-C"; cutsB.cutVolConstrGas constraintV "Volume constraint - Gas"; equation // Reationship between the terminal variables // constraintV.dummyVol1 = constraintV.dummyVol; constraintV.vcE[1] = constraintV.vcE[2]; end gasV1I;
JARA2i.interf.heat1I
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 | Number of components |
| Type | Name | Description |
|---|---|---|
| cutHeatMC | inHeat | Connector for the heat conduction. |
model heat1I "Thermic interface - CV." parameter Integer nComp = 1 "Number of components"; cutsB.cutHeatMC inHeat( nComp=nComp) "Connector for the heat conduction."; equation end heat1I;
JARA2i.interf.heatFlow1I
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 | Number of components |
| Type | Name | Description |
|---|---|---|
| cutHeatMR | inHeat | Heat flow source |
model heatFlow1I "Thermic interface TP." parameter Integer nComp = 1 "Number of components"; cutsB.cutHeatMR inHeat( nComp=nComp) "Heat flow source"; equation end heatFlow1I;
JARA2i.interf.heatFlow2I
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nCompI | 1 | Number of components of inHeat |
| Integer | nCompO | 1 | Number of components of outHeat |
| Type | Name | Description |
|---|---|---|
| cutHeatMR | inHeat | Heat flow |
| cutHeatMR | outHeat | Heat flow |
model heatFlow2I "Thermic interface TP." parameter Integer nCompI = 1 "Number of components of inHeat"; parameter Integer nCompO = 1 "Number of components of outHeat"; cutsB.cutHeatMR inHeat( nComp=nCompI) "Heat flow"; cutsB.cutHeatMR outHeat( nComp=nCompO) "Heat flow"; equation end heatFlow2I;
JARA2i.interf.heatFlowF2I
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nCompI | 1 | Number of components of inHeat |
| Integer | nCompO | 1 | Number of components of outHeat |
| Type | Name | Description |
|---|---|---|
| cutHeatMR | inHeat | Heat flow |
| cutHeatFR | outHeat | Heat flow |
model heatFlowF2I "Thermic interface TP." parameter Integer nCompI = 1 "Number of components of inHeat"; parameter Integer nCompO = 1 "Number of components of outHeat"; cutsB.cutHeatMR inHeat( nComp=nCompI) "Heat flow"; cutsB.cutHeatFR outHeat( nComp=nCompO) "Heat flow"; equation end heatFlowF2I;
JARA2i.interf.heteroFlow2I
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 | Number of components |
| Type | Name | Description |
|---|---|---|
| cutLiquidR | inMass | Liquid flow - Connector R. Connector for the liquid flow. |
| cutGasR | outMol | Gas flow - Connector Resistive. |
model heteroFlow2I "Liquid and Gas - TP." parameter Integer nComp = 1 "Number of components"; cutsB.cutLiquidR inMass( nComp=nComp) "Liquid flow - Connector R. Connector for the liquid flow."; cutsB.cutGasR outMol( nComp=nComp) "Gas flow - Connector Resistive."; equation end heteroFlow2I;
JARA2i.interf.heteroProcessFlow2I
Interface type: transport phenomenon
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nCompL | 1 | Number of liquid components |
| Integer | nCompG | 1 | Number of gas components |
| Type | Name | Description |
|---|---|---|
| cutLiquidR | inMass | Connector for the liquid flow |
| cutGasR | outMol | Connector for the gas flow |
model heteroProcessFlow2I "Liquid and Gas - TP." parameter Integer nCompL = 1 "Number of liquid components"; parameter Integer nCompG = 1 "Number of gas components"; cutsB.cutLiquidR inMass( nComp=nCompL) "Connector for the liquid flow"; cutsB.cutGasR outMol( nComp=nCompG) "Connector for the gas flow"; equation end heteroProcessFlow2I;
JARA2i.interf.liqFlow1I
Interface type: transport phenomenon
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 | Number of components |
| Type | Name | Description |
|---|---|---|
| cutLiquidR | inMass | Connector for the liquid flow |
model liqFlow1I "Liquid TP." parameter Integer nComp = 1 "Number of components"; cutsB.cutLiquidR inMass( nComp=nComp) "Connector for the liquid flow"; equation end liqFlow1I;
JARA2i.interf.liqFlow2I
Interface type: transport phenomenon
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 |
| Type | Name | Description |
|---|---|---|
| cutLiquidR | inMass | |
| cutLiquidR | outMass |
model liqFlow2I "Liquid TP." parameter Integer nComp = 1; cutsB.cutLiquidR inMass( nComp=nComp); cutsB.cutLiquidR outMass( nComp=nComp); equation end liqFlow2I;
JARA2i.interf.liqFlow2qI
Interface type: transport phenomenon
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 | Number of components |
| Type | Name | Description |
|---|---|---|
| cutLiquidR | inMass | Liquid flow connector - R |
| cutLiquidR | outMass | Liquid flow connector - R |
| cutHeatFC | inHeat | Heat flow connector -C |
model liqFlow2qI "Liquid TP." parameter Integer nComp = 1 "Number of components"; cutsB.cutLiquidR inMass( nComp=nComp) "Liquid flow connector - R"; cutsB.cutLiquidR outMass( nComp=nComp) "Liquid flow connector - R"; cutsB.cutHeatFC inHeat( nComp=nComp) "Heat flow connector -C"; equation end liqFlow2qI;
JARA2i.interf.liquid1I
Interface type: control volume
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 | Number of components of the liquid mixture |
| Type | Name | Description |
|---|---|---|
| cutLiquidC | inMass | Connector for the liquid flow |
model liquid1I "Liquid CV." parameter Integer nComp = 1 "Number of components of the liquid mixture"; cutsB.cutLiquidC inMass( nComp=nComp) "Connector for the liquid flow"; equation end liquid1I;
JARA2i.interf.liquid2I
Liquid CV: the CV contains an ideal, homogeneous liquid mixture composed of an
arbitrary number of components.
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 | Number of components of the liquid mixture |
| Type | Name | Description |
|---|---|---|
| cutLiquidC | inMassTop | Connector for the liquid flow |
| cutLiquidC | inMassBot | Connector for the liquid flow |
| cutHeatMC | inHeat | Connector for the heat flow |
model liquid2I "Liquid CV." parameter Integer nComp = 1 "Number of components of the liquid mixture"; cutsB.cutLiquidC inMassTop( nComp=nComp) "Connector for the liquid flow"; cutsB.cutLiquidC inMassBot( nComp=nComp) "Connector for the liquid flow"; cutsB.cutHeatMC inHeat( nComp=nComp) "Connector for the heat flow"; equation end liquid2I;
JARA2i.interf.liquidV2I
Interface type: control volume
Liquid CV: the CV contains an ideal, homogeneous liquid mixture composed of an
arbitrary number of components.
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 | Number of components |
| Type | Name | Description |
|---|---|---|
| cutLiquidC | inMassTop | Connector for the liquid flow |
| cutLiquidC | inMassBot | Connector for the liquid flow |
| cutHeatMC | inHeat | Connector for the heat flow |
| cutVolConstrLiq | constraintV | Connector for the volume constraint - Liquid |
model liquidV2I "Liquid CV."
parameter Integer nComp = 1 "Number of components";
cutsB.cutLiquidC inMassTop( nComp=nComp) "Connector for the liquid flow";
cutsB.cutLiquidC inMassBot( nComp=nComp) "Connector for the liquid flow";
cutsB.cutHeatMC inHeat( nComp=nComp) "Connector for the heat flow";
cutsB.cutVolConstrLiq constraintV
"Connector for the volume constraint - Liquid";
equation
end liquidV2I;
JARA2i.interf.pumpMassSignalI
Interface type: information flow
| Type | Name | Description |
|---|---|---|
| cutEmitter | setPointSignal | Set-point signal |
model pumpMassSignalI "Information flow."
Real totalMassFSP( unit="M.t-1") "Setpoint of the total mass flow";
cutsB.cutEmitter setPointSignal( dim=1, signal={totalMassFSP})
"Set-point signal";
equation
end pumpMassSignalI;
JARA2i.interf.pumpMolSignalI
Interface type: information flow
| Type | Name | Description |
|---|---|---|
| cutEmitter | setPointSignal | Setpoint of the total molar flow |
model pumpMolSignalI "Information flow"
Real totalMolFSP( unit="mol.t-1") "Setpoint of the total molar flow";
cutsB.cutEmitter setPointSignal( dim=1, signal={totalMolFSP})
"Setpoint of the total molar flow";
equation
end pumpMolSignalI;
JARA2i.interf.pumpVolSignalI
Interface type: information flow
| Type | Name | Description |
|---|---|---|
| cutEmitter | setPointSignal | Setpoint of the total volumetric flow |
model pumpVolSignalI "Information flow"
Real totalVolFSP( unit="L3.t-1")
"Setpoint of the total volumetric flow";
cutsB.cutEmitter setPointSignal( dim=1, signal={totalVolFSP})
"Setpoint of the total volumetric flow";
equation
end pumpVolSignalI;
JARA2i.interf.receiver1I
Interface type: information flow
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | dim | 1 | Dimension of the signal vector |
| Type | Name | Description |
|---|---|---|
| cutReceiver | signal | Information connector |
model receiver1I "Information receiver." parameter Integer dim = 1 "Dimension of the signal vector"; cutsB.cutReceiver signal( dim=dim) "Information connector"; equation end receiver1I;
JARA2i.interf.sourceHeatSignalI
Interface type: information flow
| Type | Name | Description |
|---|---|---|
| cutEmitter | setPointSignal | Setpoint of the heat flow |
model sourceHeatSignalI "Information flow."
Real heatFSP( unit="M.L2.t-3") "Setpoint of the heat flow";
cutsB.cutEmitter setPointSignal( dim=1, signal={heatFSP})
"Setpoint of the heat flow";
equation
end sourceHeatSignalI;
JARA2i.interf.sourceMassSignalI
Interface type: information flow
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 | Number of components |
| Type | Name | Description |
|---|---|---|
| cutEmitter | setPointSignal | Setpoint of the temperature |
model sourceMassSignalI "Information flow."
parameter Integer nComp = 1 "Number of components";
Real totalMassFSP( unit="M.t-1")
"Setpoint of the total mass-flow";
Real massFractSP[ nComp]( unit=" ")
"Setpoint of each-component mass fraction";
Real tempFSP( unit="T") "Setpoint of the temperature";
cutsB.cutEmitter setPointSignal( dim=nComp+2) "Setpoint of the temperature";
equation
setPointSignal.signal[1] = totalMassFSP;
setPointSignal.signal[2:(nComp+1)] = massFractSP[:];
setPointSignal.signal[nComp+2] = tempFSP;
end sourceMassSignalI;
JARA2i.interf.sourceMolSignalI
Interface type: information flow
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 |
| Type | Name | Description |
|---|---|---|
| cutEmitter | setPointSignal | Set-point of the total molar flow, mol fraction and temperature |
model sourceMolSignalI "Information flow."
parameter Integer nComp = 1;
Real totalMolFSP( unit="mol.t-1") "Setpoint of the total mol-flow";
Real molFractSP[ nComp]( unit=" ")
"Setpoint of each-component mol fraction";
Real tempFSP( unit="T") "Setpoint of the temperature";
cutsB.cutEmitter setPointSignal( dim=nComp+2)
"Set-point of the total molar flow, mol fraction and temperature";
equation
setPointSignal.signal[1] = totalMolFSP;
setPointSignal.signal[2:(nComp+1)] = molFractSP[:];
setPointSignal.signal[nComp+2] = tempFSP;
end sourceMolSignalI;
JARA2i.interf.sourceVolGasSignalI
Interface type: information flow
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 |
| Type | Name | Description |
|---|---|---|
| cutEmitter | setPointSignal | Setpoint of the total volumetric flow, component mol fraction, temperature and pressure |
model sourceVolGasSignalI "Information flow."
parameter Integer nComp = 1;
Real totalVolFSP( unit="L3.t-1")
"Setpoint of the total volumetric flow";
Real molFractSP[ nComp]( unit=" ")
"Setpoint of each-component mol fraction";
Real tempFSP( unit="T") "Setpoint of the temperature";
Real pressFSP( unit="M.L-1.t-2") "Setpoint of the pressure";
cutsB.cutEmitter setPointSignal( dim=nComp+3)
"Setpoint of the total volumetric flow, component mol fraction, temperature and pressure";
equation
setPointSignal.signal[1] = totalVolFSP;
setPointSignal.signal[2:(nComp+1)] = molFractSP[:];
setPointSignal.signal[nComp+2] = tempFSP;
setPointSignal.signal[nComp+3] = pressFSP;
end sourceVolGasSignalI;
JARA2i.interf.sourceVolLiqSignalI
Interface type: information flow
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | nComp | 1 | Number of components |
| Type | Name | Description |
|---|---|---|
| cutEmitter | setPointSignal | Set-point of the total volumetric flow, component volume fraction and temperature |
model sourceVolLiqSignalI "Information flow."
parameter Integer nComp = 1 "Number of components";
Real totalVolFSP( unit="L3.t-1")
"Setpoint of the total volumetric flow";
Real volFractSP[ nComp]( unit=" ")
"Setpoint of each-component volume fraction";
Real tempFSP( unit="T") "Setpoint of the temperature";
cutsB.cutEmitter setPointSignal( dim=nComp+2)
"Set-point of the total volumetric flow, component volume fraction and temperature";
equation
setPointSignal.signal[1] = totalVolFSP;
setPointSignal.signal[2:(nComp+1)] = volFractSP[:];
setPointSignal.signal[nComp+2] = tempFSP;
end sourceVolLiqSignalI;
JARA2i.interf.valveSignalI
Interface type: information flow
| Type | Name | Description |
|---|---|---|
| cutEmitter | setPointSignal | Setpoint signal: {valveOpeningSP} |
model valveSignalI "Information flow."
Real valveOpeningSP( unit=" ") "Setpoint of the valve opening";
cutsB.cutEmitter setPointSignal( dim=1, signal={valveOpeningSP})
"Setpoint signal: {valveOpeningSP}";
equation
end valveSignalI;
JARA2i.interf.vesselI
| Type | Name | Description |
|---|---|---|
| cutVolConstrVessel | constraintV | Volume constraint - Vessel. |
model vesselI "Volume constraint." cutsB.cutVolConstrVessel constraintV "Volume constraint - Vessel."; equation // Relationship between the terminal variables // constraintV.dummyVolF = -constraintV.dummyVol; constraintV.vcE[2] = - constraintV.vcF; end vesselI;