Name | Description |
---|---|
Temperature | Impose a temperature difference across and a current between a pair of BoundaryBus connectors |
Pressure | Impose a pressure difference across and a heat flow rate between a pair of BoundaryBus connectors |
Phases | Conditions for a BoundaryBus connector |
Type | Name | Default | Description |
---|---|---|---|
Phases (click to edit) | |||
Gas | gas | Gas | |
Graphite | graphite | Graphite | |
Ionomer | ionomer | Ionomer | |
Liquid | liquid | Liquid |
Type | Name | Description |
---|---|---|
BoundaryBus | negative | Negative-side multi-species connector for material, momentum, and energy |
BoundaryBus | positive | Positive-side multi-species connector for material, momentum, and energy |
RealInputBus | u | Bus of inputs to specify conditions |
RealOutputBus | y | Output bus of measurements |
model Temperature "Impose a temperature difference across and a current between a pair of BoundaryBus connectors" extends FCSys.Icons.Conditions.SingleShort; Phases.Gas gas "Gas"; Phases.Graphite graphite "Graphite"; Phases.Ionomer ionomer "Ionomer"; Phases.Liquid liquid "Liquid"; Connectors.BoundaryBus negative "Negative-side multi-species connector for material, momentum, and energy"; Connectors.BoundaryBus positive "Positive-side multi-species connector for material, momentum, and energy"; Connectors.RealInputBus u "Bus of inputs to specify conditions"; Connectors.RealOutputBus y "Output bus of measurements"; equation // Gas connect(gas.negative, negative.gas); connect(gas.positive, positive.gas); connect(u.gas, gas.u); connect(gas.y, y.gas); // Graphite connect(graphite.negative, negative.graphite); connect(graphite.positive, positive.graphite); connect(u.graphite, graphite.u); connect(graphite.y, y.graphite); // Ionomer connect(ionomer.negative, negative.ionomer); connect(ionomer.positive, positive.ionomer); connect(u.ionomer, ionomer.u); connect(ionomer.y, y.ionomer); // Liquid connect(liquid.negative, negative.liquid); connect(liquid.positive, positive.liquid); connect(u.liquid, liquid.u); connect(liquid.y, y.liquid); end Temperature;
Type | Name | Description |
---|---|---|
BoundaryBus | negative | Negative-side multi-species connector for material, momentum, and energy |
BoundaryBus | positive | Positive-side multi-species connector for material, momentum, and energy |
RealInputBus | u | Bus of inputs to specify conditions |
RealOutputBus | y | Output bus of measurements |
model Pressure "Impose a pressure difference across and a heat flow rate between a pair of BoundaryBus connectors" extends Temperature( gas( H2( redeclare replaceable function materialSpec = Boundary.Pair.Material.pressure, redeclare replaceable function afterSpec = Boundary.Pair.Translational.force, redeclare replaceable function beforeSpec = Boundary.Pair.Translational.force, redeclare replaceable function thermalSpec = Boundary.Pair.Thermal.heatRate, redeclare replaceable function materialMeas = Boundary.Pair.Material.current, redeclare replaceable function afterMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function beforeMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function thermalMeas = Boundary.Pair.Thermal.temperature), H2O( redeclare replaceable function materialSpec = Boundary.Pair.Material.pressure, redeclare replaceable function afterSpec = Boundary.Pair.Translational.force, redeclare replaceable function beforeSpec = Boundary.Pair.Translational.force, redeclare replaceable function thermalSpec = Boundary.Pair.Thermal.heatRate, redeclare replaceable function materialMeas = Boundary.Pair.Material.current, redeclare replaceable function afterMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function beforeMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function thermalMeas = Boundary.Pair.Thermal.temperature), N2( redeclare replaceable function materialSpec = Boundary.Pair.Material.pressure, redeclare replaceable function afterSpec = Boundary.Pair.Translational.force, redeclare replaceable function beforeSpec = Boundary.Pair.Translational.force, redeclare replaceable function thermalSpec = Boundary.Pair.Thermal.heatRate, redeclare replaceable function materialMeas = Boundary.Pair.Material.current, redeclare replaceable function afterMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function beforeMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function thermalMeas = Boundary.Pair.Thermal.temperature), O2( redeclare replaceable function materialSpec = Boundary.Pair.Material.pressure, redeclare replaceable function afterSpec = Boundary.Pair.Translational.force, redeclare replaceable function beforeSpec = Boundary.Pair.Translational.force, redeclare replaceable function thermalSpec = Boundary.Pair.Thermal.heatRate, redeclare replaceable function materialMeas = Boundary.Pair.Material.current, redeclare replaceable function afterMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function beforeMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function thermalMeas = Boundary.Pair.Thermal.temperature)), graphite(redeclare replaceable Conditions.ByConnector.ThermalDiffusive.Pair.HeatRate 'C+', 'e-'( redeclare replaceable function materialSpec = Boundary.Pair.Material.pressure, redeclare replaceable function afterSpec = Boundary.Pair.Translational.force, redeclare replaceable function beforeSpec = Boundary.Pair.Translational.force, redeclare replaceable function thermalSpec = Boundary.Pair.Thermal.heatRate, redeclare replaceable function materialMeas = Boundary.Pair.Material.current, redeclare replaceable function afterMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function beforeMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function thermalMeas = Boundary.Pair.Thermal.temperature)), ionomer( redeclare replaceable Conditions.ByConnector.ThermalDiffusive.Pair.HeatRate 'SO3-', 'H+'( redeclare replaceable function materialSpec = Boundary.Pair.Material.pressure, redeclare replaceable function afterSpec = Boundary.Pair.Translational.force, redeclare replaceable function beforeSpec = Boundary.Pair.Translational.force, redeclare replaceable function thermalSpec = Boundary.Pair.Thermal.heatRate, redeclare replaceable function materialMeas = Boundary.Pair.Material.current, redeclare replaceable function afterMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function beforeMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function thermalMeas = Boundary.Pair.Thermal.temperature), H2O( redeclare replaceable function materialSpec = Boundary.Pair.Material.pressure, redeclare replaceable function afterSpec = Boundary.Pair.Translational.force, redeclare replaceable function beforeSpec = Boundary.Pair.Translational.force, redeclare replaceable function thermalSpec = Boundary.Pair.Thermal.heatRate, redeclare replaceable function materialMeas = Boundary.Pair.Material.current, redeclare replaceable function afterMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function beforeMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function thermalMeas = Boundary.Pair.Thermal.temperature)), liquid(H2O( redeclare replaceable function materialSpec = Boundary.Pair.Material.pressure, redeclare replaceable function afterSpec = Boundary.Pair.Translational.force, redeclare replaceable function beforeSpec = Boundary.Pair.Translational.force, redeclare replaceable function thermalSpec = Boundary.Pair.Thermal.heatRate, redeclare replaceable function materialMeas = Boundary.Pair.Material.current, redeclare replaceable function afterMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function beforeMeas = Boundary.Pair.Translational.velocity, redeclare replaceable function thermalMeas = Boundary.Pair.Thermal.temperature))); // Note: In Dymola 2014, the paths must be explicitly given to prevent // the error "Cannot show the parameter dialog for redeclared class […]". end Pressure;