Differences between Version 3.2 and 3.2.1 Build 2 of package Modelica

Version: 3.2 | Version: 3.2.1 Build 2
Version date: 2010-10-25 | Version date: 2013-08-14

model Blocks.Examples.PID_Controller

Component | Version 3.2 | Version 3.2.1
PI | initType=Modelica_3_2.Blocks.Types.Init.SteadyState | initType=Modelica.Blocks.Types.InitPID.SteadyState
inertia1 | a(fixed=true) | a(fixed=true, start=0)

model Blocks.Examples.RealNetwork1

Component | Version 3.2 | Version 3.2.1
product | nu=3 | nu=2
linearDependency1 |  | Present
minMax |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(add.y, showValue.numberPort);
connect(add.y, product.u[1]); | connect(integerStep.y, product.u[1]);
connect(integerStep.y, product.u[2]); | connect(integerConstant.y, product.u[2]);
connect(integerConstant.y, product.u[3]); |
connect(product.y, showValue1.numberPort);
| connect(add.y, linearDependency1.u1); connect(product.y, linearDependency1.u2); connect(add.y, minMax.u[1]); connect(product.y, minMax.u[2]);

model Blocks.Examples.BooleanNetwork1

Component | Version 3.2 | Version 3.2.1
rSFlipFlop |  | Present
sampleTriggerSet |  | Present
sampleTriggerReset |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(onDelay.y, showValue6.activePort);
| connect(sampleTriggerSet.y, rSFlipFlop.S); connect(sampleTriggerReset.y, rSFlipFlop.R);

block Blocks.Continuous.LimIntegrator

Component | Version 3.2 | Version 3.2.1
strict |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... der(y) = k*u;
assert(y >= outMin - 0.01*abs(outMin) and y <= outMax + 0.01*abs(outMax), "LimIntegrator: During initialization the limits have been ignored.\n"+ "However, the result is that the output y is not within the required limits:\n"+ " y = " + String(y) + ", outMin = " + String(outMin) + ", outMax = " + String(outMax)); | assert(y >= outMin - 0.001*abs(outMax-outMin) and y <= outMax + 0.001*abs(outMax-outMin), "LimIntegrator: During initialization the limits have been ignored.\n" + "However, the result is that the output y is not within the required limits:\n" + " y = " + String(y) + ", outMin = " + String(outMin) + ", outMax = " + String(outMax));
| elseif strict then der(y) = noEvent(if y < outMin and k*u < 0 or y > outMax and k*u > 0 then 0 else k*u);
else
der(y) = if y < outMin and u < 0 or y > outMax and u > 0 then 0 else k*u; | der(y) = if y < outMin and k*u < 0 or y > outMax and k*u > 0 then 0 else k*u;
end if;

block Blocks.Continuous.PID

Component | Version 3.2 | Version 3.2.1
I | k=1/Ti | k=unitTime/Ti
initType=if initType == InitPID.SteadyState then InitPID.SteadyState else if initType == InitPID.InitialState or initType == InitPID.DoNotUse_InitialIntegratorState then InitPID.InitialState else InitPID.NoInit | initType=if initType == InitPID.SteadyState then Init.SteadyState else if initType == InitPID.InitialState or initType == InitPID.DoNotUse_InitialIntegratorState then Init.InitialState else Init.NoInit
D | k=Td | k=Td/unitTime
initType=if initType == InitPID.SteadyState or initType == InitPID.InitialOutput then InitPID.SteadyState else if initType == InitPID.InitialState then InitPID.InitialState else InitPID.NoInit | initType=if initType == InitPID.SteadyState or initType == InitPID.InitialOutput then Init.SteadyState else if initType == InitPID.InitialState then Init.InitialState else Init.NoInit
unitTime |  | Present

block Blocks.Continuous.LimPID

Component | Version 3.2 | Version 3.2.1
controllerType | =Modelica_3_2.Blocks.Types.SimpleController.PID | =.Modelica.Blocks.Types.SimpleController.PID
Ti | start=0.5 |
| =0.5
Td | start=0.1 |
| =0.1
initType | =Modelica_3_2.Blocks.Types.InitPID.DoNotUse_InitialIntegratorState | =.Modelica.Blocks.Types.InitPID.DoNotUse_InitialIntegratorState
I | k=1/Ti | k=unitTime/Ti
initType=if initType == InitPID.SteadyState then InitPID.SteadyState else if initType == InitPID.InitialState or initType == InitPID.DoNotUse_InitialIntegratorState then InitPID.InitialState else InitPID.NoInit | initType=if initType == InitPID.SteadyState then Init.SteadyState else if initType == InitPID.InitialState or initType == InitPID.DoNotUse_InitialIntegratorState then Init.InitialState else Init.NoInit
D | k=Td | k=Td/unitTime
initType=if initType == InitPID.SteadyState or initType == InitPID.InitialOutput then InitPID.SteadyState else if initType == InitPID.InitialState then InitPID.InitialState else InitPID.NoInit | initType=if initType == InitPID.SteadyState or initType == InitPID.InitialOutput then Init.SteadyState else if initType == InitPID.InitialState then Init.InitialState else Init.NoInit
limiter |  | strict=strict
strict |  | Present
unitTime |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... if initType==InitPID.InitialOutput then
y = y_start; | gainPID.y = y_start;
end if; ...

block Blocks.Continuous.StateSpace

Component | Version 3.2 | Version 3.2.1
A |  | =[1, 0; 0, 1]
B |  | =[1; 1]
C |  | =[1, 1]

function Blocks.Continuous.Internal.Filter.base.Bessel

Component | Version 3.2 | Version 3.2.1
n_den2 | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
... alpha2 = alpha*alpha;
for i in 1:n_den2 loop | for i in 1:size(c0, 1) loop
den2[i, 1] = den2[i, 1]*alpha2; ...

function Blocks.Continuous.Internal.Filter.base.Butterworth

Component | Version 3.2 | Version 3.2.1
n_den2 | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
for i in 1:n_den2 loop | for i in 1:size(c0, 1) loop
den2[i, 1] = 1.0; ...

function Blocks.Continuous.Internal.Filter.base.ChebyshevI

Component | Version 3.2 | Version 3.2.1
n_den2 | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
... fac = asinh(1/epsilon)/order;
| den1 = fill(1/sinh(fac),size(den1,1));
if size(cr,1) == 0 then
for i in 1:n_den2 loop | for i in 1:size(c0, 1) loop
den2[i,1] = 1/(cosh(fac)^2 - cos((2*i - 1)*pi/(2*order))^2); ... else
den1[1] = 1/sinh(fac); | for i in 1:size(c0, 1) loop
for i in 1:n_den2 loop |
den2[i,1] = 1/(cosh(fac)^2 - cos(i*pi/order)^2); ... alpha2 = alpha*alpha;
for i in 1:n_den2 loop | for i in 1:size(c0, 1) loop
den2[i, 1] = den2[i, 1]*alpha2; ... end for;
if size(cr,1) == 1 then | den1 = den1*alpha;
den1[1] = den1[1]*alpha; |
end if;
end if; |
(cr,c0,c1) = &nbspModelica_3_2.Blocks.Continuous.Internal.Filter.Utilities.toHighestPowerOne( &nbspden1, den2); ...

function Blocks.Continuous.Internal.Filter.coefficients.bandPass

Component | Version 3.2 | Version 3.2.1
w_band | SIunits.AngularVelocity | Real

function Blocks.Continuous.Internal.Filter.coefficients.bandStop

Component | Version 3.2 | Version 3.2.1
w_band | SIunits.AngularVelocity | Real

block Blocks.Discrete.FirstOrderHold

Component | Version 3.2 | Version 3.2.1
ySample | Present |
uSample |  | Present
pre_uSample |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
when sampleTrigger then | initial equation
ySample = u; | pre(tSample) = time;
tSample = time; | pre(uSample) = u;
c = if firstTrigger then 0 else (ySample - pre(ySample))/samplePeriod; | pre(pre_uSample) = u;
end when; | pre(c) = 0.0;
y = pre(ySample) + pre(c)*(time - tSample); |
| equation &nbspwhen sampleTrigger then tSample = time; uSample = u; pre_uSample = pre(uSample); c = if firstTrigger then 0 else (uSample - pre_uSample)/samplePeriod; end when; y = pre_uSample + pre(c)*(time - tSample);

block Blocks.Discrete.TransferFunction

Component | Version 3.2 | Version 3.2.1
a |  | ={1}

block Blocks.Discrete.StateSpace

Component | Version 3.2 | Version 3.2.1
A |  | =[1, 0; 0, 1]
B |  | =[1; 1]
C |  | =[1, 1]

block Blocks.Interfaces.SI2BooleanSO

Component | Version 3.2 | Version 3.2.1
u1 | Blocks.Interfaces.RealInput | Blocks.Interfaces.BooleanInput
input |
u2 | Blocks.Interfaces.RealInput | Blocks.Interfaces.BooleanInput
input |
y | output |

block Blocks.Logical.TriggeredTrapezoid

Equations in Version 3.2 | Equations in Version 3.2.1
initial equation | y = if time < T then endValue - (T - time)*rate else endValue;
pre(y) = 0; equation &nbspy = if time < T then endValue - (T - time)*rate else endValue; |
when {initial(),u,not u} then ...

block Blocks.Math.MultiSwitch

Component | Version 3.2 | Version 3.2.1
y | start=y_default |
fixed=true |

block Blocks.Math.Feedback

Component | Version 3.2 | Version 3.2.1
u1 | input |
u2 | input |
y | output |

block Blocks.Math.Add3

Component | Version 3.2 | Version 3.2.1
u1 | input |
u2 | input |
u3 | input |
y | output |

block Blocks.Math.Abs

Component | Version 3.2 | Version 3.2.1
generateEvent |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
y = abs(u); | y=if generateEvent then (if u>=0 then u else -u) else (if noEvent(u>=0) then u else -u);

block Blocks.Math.Sign

Component | Version 3.2 | Version 3.2.1
generateEvent |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
y = sign(u); | y=if generateEvent then (if u>0 then 1 elseif u<0 then -1 else 0) else (if noEvent(u>0) then 1 elseif noEvent(u<0) then -1 else 0);

block Blocks.Math.Mean

Component | Version 3.2 | Version 3.2.1
t0 | discrete | parameter
| fixed=false
x | start=0 |
x0 |  | Present
yGreaterOrEqualZero |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
when initial() then | initial equation
t0 = time;
end when; | x = x0;
der(x) = u; | y = 0;
| equation &nbspder(x) = u;
when sample(t0+1/f, 1/f) then
y=f*x; | y = if not yGreaterOrEqualZero then f*pre(x) else max(0.0, f*pre(x));
reinit(x, 0); ...

block Blocks.Math.RootMeanSquare

Component | Version 3.2 | Version 3.2.1
product | Blocks.Math.Product | Blocks.Math.MultiProduct
mean |  | final yGreaterOrEqualZero=true

Equations in Version 3.2 | Equations in Version 3.2.1
connect(u, product.u1); connect(u, product.u2); |
connect(product.y, mean.u); ... connect(sqrt1.y, y);
| connect(u, product.u[1]); connect(u, product.u[2]);

block Blocks.Math.Harmonic

Component | Version 3.2 | Version 3.2.1
product1 | Blocks.Math.Product | Blocks.Math.MultiProduct
product2 | Blocks.Math.Product | Blocks.Math.MultiProduct

Equations in Version 3.2 | Equations in Version 3.2.1
connect(sin2.y, product2.u2); connect(sin1.y, product1.u1); connect(u, product1.u2); connect(u, product2.u1); |
connect(product2.y, mean2.u); ... connect(rectangularToPolar.y_arg, y_arg);
| connect(sin1.y, product1.u[1]); connect(u, product1.u[2]); connect(u, product2.u[1]); connect(sin2.y, product2.u[2]);

block Blocks.MathBoolean.MultiSwitch

Component | Version 3.2 | Version 3.2.1
y | start=y_default |
fixed=true |

Equations in Version 3.2 | Equations in Version 3.2.1
firstActiveIndex = Modelica_3_2.Math.BooleanVectors.firstTrueIndex(u); | initial equation
y = if firstActiveIndex == 0 then (if use_pre_as_default then pre(y) else y_default) else expr[firstActiveIndex]; | pre(y) = y_default;
| equation &nbspfirstActiveIndex = &nbspModelica.Math.BooleanVectors.firstTrueIndex( &nbspu); y = if firstActiveIndex == 0 then (if use_pre_as_default then pre(y) else y_default) else &nbspexpr[firstActiveIndex];

block Blocks.MathBoolean.OnDelay

Equations in Version 3.2 | Equations in Version 3.2.1
... algorithm
when u then | when initial() then
| delaySignal = u; t_next = time - 1; elsewhen u then
delaySignal = true; ...

block Blocks.Nonlinear.Limiter

Component | Version 3.2 | Version 3.2.1
strict |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... assert(u >= uMin - 0.01*abs(uMin) and &nbspu <= uMax + 0.01*abs(uMax), "Limiter: During initialization the limits have been ignored.\n"+ "However, the result is that the input u is not within the required limits:\n"+ " u = " + String(u) + ", uMin = " + String(uMin) + ", uMax = " + String(uMax));
| elseif strict then y = smooth(0, noEvent(if u > uMax then uMax else if u < uMin then uMin else u));
else ...

block Blocks.Nonlinear.VariableLimiter

Component | Version 3.2 | Version 3.2.1
strict |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
| if strict then uMax = noEvent(max(limit1, limit2)); uMin = noEvent(min(limit1, limit2)); else
uMax = max(limit1, limit2);
uMin = min(limit1, limit2);
| end if;
if initial() and not limitsAtInit then ... assert(u >= uMin - 0.01*abs(uMin) and &nbspu <= uMax + 0.01*abs(uMax), "VariableLimiter: During initialization the limits have been ignored.\n"+ "However, the result is that the input u is not within the required limits:\n"+ " u = " + String(u) + ", uMin = " + String(uMin) + ", uMax = " + String(uMax));
| elseif strict then y = smooth(0, noEvent(if u > uMax then uMax else if u < uMin then uMin else u));
else ...

block Blocks.Sources.Ramp

Component | Version 3.2 | Version 3.2.1
duration | min=Modelica_3_2.Constants.small | min=0.0

block Blocks.Sources.KinematicPTP

Component | Version 3.2 | Version 3.2.1
deltaq |  | ={1}
qd_max |  | ={1}
qdd_max |  | ={1}

block Blocks.Sources.KinematicPTP2

Component | Version 3.2 | Version 3.2.1
q_end |  | ={1}
qd_max |  | ={1}
qdd_max |  | ={1}
r_s | Present |
r_sd | Present |
r_sdd | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
... s3 = 0;
r_sdd = 0; | s = 0;
r_sd = 0; r_s = 0; |
else ... if time < startTime then
r_sdd = 0; | s = 0;
r_sd = 0; r_s = 0; |
elseif noWphase then
if time < Ta1s then
r_sdd = sdd_max; | s = (sdd_max/2)*(time - startTime)*(time - startTime);
r_sd = sdd_max*(time - startTime); r_s = (sdd_max/2)*(time - startTime)*(time - startTime); |
elseif time < Tes then
r_sdd = -sdd_max; | s = s1 + sd_max2*(time - Ta1s) - (sdd_max/2)*(time - Ta1s)*(time - Ta1s);
r_sd = sd_max2 - sdd_max*(time - Ta1s); r_s = s1 + sd_max2*(time - Ta1s) - (sdd_max/2)*(time - Ta1s)*(time &nbsp- Ta1s); |
else
r_sdd = 0; | s = s2;
r_sd = 0; r_s = s2; |
end if;
elseif time < Ta2s then
r_sdd = sdd_max; | s = (sdd_max/2)*(time - startTime)*(time - startTime);
r_sd = sdd_max*(time - startTime); r_s = (sdd_max/2)*(time - startTime)*(time - startTime); |
elseif time < Tvs then
r_sdd = 0; | s = s1 + sd_max*(time - Ta2s);
r_sd = sd_max; r_s = s1 + sd_max*(time - Ta2s); |
elseif time < Tes then
r_sdd = -sdd_max; | s = s2 + sd_max*(time - Tvs) - (sdd_max/2)*(time - Tvs)*(time - Tvs);
r_sd = sd_max - sdd_max*(time - Tvs); r_s = s2 + sd_max*(time - Tvs) - (sdd_max/2)*(time - Tvs)*(time - Tvs); |
else
r_sdd = 0; | s = s3;
r_sd = 0; r_s = s3; |
end if;
end if;
| sd = der(s); sdd = der(sd);
qdd = p_deltaq*sdd; ... endTime = Tes;
s = position({r_s, r_sd, r_sdd}, time); sd = der(s); sdd = der(sd); |
motion_ref = time <= endTime; ...

block Blocks.Sources.TimeTable

Component | Version 3.2 | Version 3.2.1
table |  | =fill(0.0, 0, 2)
nextEvent |  | discrete

block Blocks.Sources.BooleanTable

Component | Version 3.2 | Version 3.2.1
table |  | ={0,1}

block Blocks.Sources.RadioButtonSource

Component | Version 3.2 | Version 3.2.1
buttonTimeTable |  | ={0,1}

block ComplexBlocks.Sources.ComplexExpression

Component | Version 3.2 | Version 3.2.1
y | output |

model StateGraph.Examples.Utilities.valve

Component | Version 3.2 | Version 3.2.1
inflow1 | StateGraph.Examples.Utilities.inflow2 | StateGraph.Examples.Utilities.Inflow2
outflow1 | StateGraph.Examples.Utilities.outflow2 | StateGraph.Examples.Utilities.Outflow2

model StateGraph.Examples.Utilities.Tank

Component | Version 3.2 | Version 3.2.1
inflow1 | StateGraph.Examples.Utilities.inflow1 | StateGraph.Examples.Utilities.Inflow1
outflow1 | StateGraph.Examples.Utilities.outflow1 | StateGraph.Examples.Utilities.Outflow1
level |  | start=0
| fixed=true

model StateGraph.Examples.Utilities.Source

Component | Version 3.2 | Version 3.2.1
outflow1 | StateGraph.Examples.Utilities.outflow1 | StateGraph.Examples.Utilities.Outflow1

block StateGraph.Interfaces.PartialTransition

Equations in Version 3.2 | Equations in Version 3.2.1
initial equation
| if enableTimer then pre(t_start) = time; end if;
pre(enableFire) = false; ...

model StateGraph.PartialCompositeStep

Equations in Version 3.2 | Equations in Version 3.2.1
initial equation
pre(newActive) = pre(active); | pre(newActive) = false;
...

block StateGraph.Temporary.RadioButton

Equations in Version 3.2 | Equations in Version 3.2.1
| initial equation pre(reset) = fill(false, size(reset,1));
algorithm ...

model Electrical.Analog.Examples.CauerLowPassAnalog

Component | Version 3.2 | Version 3.2.1
C1 |  | v(start=0, fixed=true)
C3 |  | v(start=0, fixed=true)
C5 |  | v(start=0, fixed=true)
L1 |  | i(start=0, fixed=true)
L2 |  | i(start=0, fixed=true)
R1 |  | R=1
R2 |  | R=1
V |  | V=1

model Electrical.Analog.Examples.CauerLowPassOPV

Component | Version 3.2 | Version 3.2.1
C1 |  | v(start=0, fixed=true)
C2 |  | v(start=0, fixed=true)
C3 |  | v(start=0, fixed=true)
C4 |  | v(start=0, fixed=true)
R1 |  | R=1
R2 |  | R=1
R3 |  | R=1
R6 |  | R=1
R7 |  | R=1
R10 |  | R=1
C7 |  | v(start=0, fixed=true)
R11 |  | R=1
V |  | V=1

model Electrical.Analog.Examples.CauerLowPassSC

Component | Version 3.2 | Version 3.2.1
C1 |  | v(start=0, fixed=true)
C2 |  | v(start=0, fixed=true)
C3 |  | v(start=0, fixed=true)
C4 |  | v(start=0, fixed=true)
C7 |  | v(start=0, fixed=true)
V |  | V=1
R4 |  | Capacitor1(v(start=0, fixed=true))
R5 |  | Capacitor1(v(start=0, fixed=true))
R8 |  | Capacitor1(v(start=0, fixed=true))
R9 |  | Capacitor1(v(start=0, fixed=true))
R1 |  | Capacitor1(v(start=0, fixed=true))
R2 |  | Capacitor1(v(start=0, fixed=true))
R3 |  | Capacitor1(v(start=0, fixed=true))
Rp1 |  | Capacitor1(v(start=0, fixed=true))
R7 |  | Capacitor1(v(start=0, fixed=true))
R10 |  | Capacitor1(v(start=0, fixed=true))
R11 |  | Capacitor1(v(start=0, fixed=true))

model Electrical.Analog.Examples.CharacteristicIdealDiodes

Component | Version 3.2 | Version 3.2.1
Ideal |  | Vknee=0
With_Ron_Goff |  | Vknee=0
SineVoltage1 |  | freqHz=1
SineVoltage2 |  | freqHz=1
SineVoltage3 |  | freqHz=1

model Electrical.Analog.Examples.CharacteristicThyristors

Component | Version 3.2 | Version 3.2.1
IdealThyristor1 | Vknee=5 | Vknee=1
| off(start=true, fixed=true)
SineVoltage1 |  | freqHz=1
IdealGTOThyristor1 | Vknee=0 | Vknee=1
| off(fixed=true, start=true)
BooleanStep1 | Present |
booleanStep1 |  | Present
IdealThyristor2 |  | Present
R2 |  | Present
IdealGTOThyristor2 |  | Present
R4 |  | Present
booleanPulse |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(IdealThyristor1.n, R3.p); | initial equation
| equation &nbspconnect(IdealThyristor1.n, R3.p);
connect(Ground1.p, SineVoltage1.n);
connect(SineVoltage1.p, IdealThyristor1.p);
connect(BooleanStep1.y, IdealThyristor1.fire); |
connect(IdealGTOThyristor1.n, R1.p);
connect(R3.n, R1.n);
connect(R1.n, Ground1.p); |
connect(IdealGTOThyristor1.p, IdealThyristor1.p);
connect(IdealGTOThyristor1.fire, IdealThyristor1.fire);
| connect(IdealThyristor1.fire, booleanStep1.y); connect(IdealThyristor2.n,R2. p); connect(IdealGTOThyristor2.n,R4. p); connect(R2.n,R4. n); connect(IdealGTOThyristor2.p,IdealThyristor2. p); connect(IdealGTOThyristor2.fire,IdealThyristor2. fire); connect(R4.n, Ground1.p); connect(R2.n, R1.n); connect(SineVoltage1.p, IdealThyristor2.p); connect(booleanPulse.y, IdealThyristor2.fire);

model Electrical.Analog.Examples.ChuaCircuit

Component | Version 3.2 | Version 3.2.1
L |  | i(start=0, fixed=true)
C1 | v(start=4) | v(start=4, fixed=true)
C2 |  | v(start=0, fixed=true)

model Electrical.Analog.Examples.DifferenceAmplifier

Component | Version 3.2 | Version 3.2.1
C1 |  | v(start=0, fixed=true)
C4 |  | v(start=0, fixed=true)
C5 |  | v(start=0, fixed=true)
C2 |  | v(start=0, fixed=true)
C3 |  | v(start=0, fixed=true)
Transistor1 |  | ct(v(start=0, fixed=true))
Transistor2 |  | ct(v(start=0, fixed=true))

model Electrical.Analog.Examples.HeatingMOSInverter

Component | Version 3.2 | Version 3.2.1
Capacitor1 |  | v(start=0, fixed=true)

Equations in Version 3.2 | Equations in Version 3.2.1
connect(Sin.n, G.p); | initial equation
| HeatCapacitor1.T= 293.15; equation &nbspconnect(Sin.n, G.p);
connect(Capacitor1.n, G.p); ...

model Electrical.Analog.Examples.HeatingNPN_OrGate

Component | Version 3.2 | Version 3.2.1
CapVal | constant | parameter
tauVal | constant | parameter
T1 |  | ibe(start=0)
| vbc(start=0)
T2 |  | ibe(start=0)
| vbc(start=0)

Equations in Version 3.2 | Equations in Version 3.2.1
connect(Gnd1.p, V1.n); | initial equation
| HeatCapacitor1.T= 293.15; equation &nbspconnect(Gnd1.p, V1.n);
connect(V1.p, R1.p); ...

model Electrical.Analog.Examples.HeatingResistor

Component | Version 3.2 | Version 3.2.1
heatingResistor |  | i(start=0)

model Electrical.Analog.Examples.HeatingRectifier

Component | Version 3.2 | Version 3.2.1
Capacitor1 |  | v(start=0, fixed=true)

Equations in Version 3.2 | Equations in Version 3.2.1
connect(SineVoltage1.p, HeatingDiode1.p); | initial equation
| HeatCapacitor1.T = 293.15; equation &nbspconnect(SineVoltage1.p, HeatingDiode1.p);
connect(SineVoltage1.n, G.p); ...

model Electrical.Analog.Examples.NandGate

Component | Version 3.2 | Version 3.2.1
VIN1 |  | nperiod=-1
VIN2 |  | nperiod=-1
Nand |  | C4(v(start=0, fixed=true))
| C7(v(start=0, fixed=true))

model Electrical.Analog.Examples.OvervoltageProtection

Component | Version 3.2 | Version 3.2.1
CL |  | v(start=0, fixed=true)
zDiode1 |  | v(start=0)

model Electrical.Analog.Examples.Rectifier

Component | Version 3.2 | Version 3.2.1
Inductor2 |  | i(start=0, fixed=true)
Inductor3 |  | i(start=0, fixed=true)

model Electrical.Analog.Examples.ShowSaturatingInductor

Component | Version 3.2 | Version 3.2.1
SaturatingInductance1 |  | i(start=0)
Inductance1 |  | i(start=0, fixed=true)

model Electrical.Analog.Examples.ShowVariableResistor

Component | Version 3.2 | Version 3.2.1
R1 |  | R=1
R2 |  | R=1
R3 |  | R=1
R4 |  | R=1
R5 |  | R=1
SineVoltage1 |  | V=1
| freqHz=1
Ramp1 |  | duration=2

model Electrical.Analog.Examples.SwitchWithArc

Component | Version 3.2 | Version 3.2.1
booleanPulse |  | period=1
inductor1 |  | i(start=0, fixed=true)
resistor1 |  | R=1
inductor2 |  | i(start=0, fixed=true)
resistor2 |  | R=1
switch2 |  | dVdt=10000
| V0=30
| Vmax=60

model Electrical.Analog.Examples.ThyristorBehaviourTest

Component | Version 3.2 | Version 3.2.1
thyristor_v4_1 |  | vControl(fixed=true)
| vAK(start=0)
| vGK(start=0)
inductor |  | i(start=0, fixed=true)

model Electrical.Analog.Examples.AmplifierWithOpAmpDetailed

Equations in Version 3.2 | Equations in Version 3.2.1
connect(resistor.n, opAmp.m); | initial equation
| resistor2.i = 0; opAmp.q_fp1 = 0; opAmp.q_fr1 = 0; opAmp.q_fr2 = 0; opAmp.q_fr3 = 0; equation &nbspconnect(resistor.n, opAmp.m);
connect(resistor1.n, resistor2.p); ...

model Electrical.Analog.Examples.CompareTransformers

Component | Version 3.2 | Version 3.2.1
inductor22 |  | i(start=0, fixed=true)

Equations in Version 3.2 | Equations in Version 3.2.1
connect(sineVoltage1.n, ground11.p); | initial equation
| basicTransformer.i1=0; basicTransformer.i2=0; equation &nbspconnect(sineVoltage1.n, ground11.p);
connect(sineVoltage1.p, resistor11.p); ...

model Electrical.Analog.Examples.ControlledSwitchWithArc

Component | Version 3.2 | Version 3.2.1
resistor1 |  | R=1
resistor2 |  | R=1
switch2 |  | V0=30
| dVdt=10000
| Vmax=60

Equations in Version 3.2 | Equations in Version 3.2.1
connect(inductor1.n,resistor1. p); | initial equation
| inductor1.i = 0; inductor2.i = 0; equation &nbspconnect(inductor1.n,resistor1. p);
connect(resistor1.n,ground1. p); ...

model Electrical.Analog.Examples.SimpleTriacCircuit

Component | Version 3.2 | Version 3.2.1
L |  | i(start=0, fixed=true)
| p(v(start=0))
simpleTriac |  | thyristor1(vGK(start=0))

Equations in Version 3.2 | Equations in Version 3.2.1
connect(L.n, R.p); | initial equation
| simpleTriac.thyristor.vControl=0; simpleTriac.thyristor1.vControl=0; equation &nbspconnect(L.n, R.p);
connect(R.n, V.p); ...

model Electrical.Analog.Examples.IdealTriacCircuit

Component | Version 3.2 | Version 3.2.1
idealTriac |  | capacitor(v(start=0, fixed=true))
| idealThyristor(off(start=true, fixed=true))
| idealThyristor1(off(start=true, fixed=true))

model Electrical.Analog.Examples.AD_DA_conversion

Component | Version 3.2 | Version 3.2.1
aD_Converter |  | Rin=1000000
| VRefLow=0
| VRefHigh=10
dA_Converter |  | Vref=10

model Electrical.Analog.Examples.Utilities.Transistor

Component | Version 3.2 | Version 3.2.1
Tr |  | UIC=true

model Electrical.Analog.Basic.SaturatingInductor

Component | Version 3.2 | Version 3.2.1
Psi |  | start=0
| fixed=true

model Electrical.Analog.Basic.Transformer

Component | Version 3.2 | Version 3.2.1
dv |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
v1 = L1*der(i1) + M*der(i2);
v2 = M*der(i1) + L2*der(i2); | dv = (L1 - M)*der(i1) + (M - L2)*der(i2);
| v2 = v1 - dv;

model Electrical.Analog.Basic.M_Transformer

Component | Version 3.2 | Version 3.2.1
p | extent=[-80, -40; -62, 40] |
n | extent=[62, -40; 80, 40] |
i |  | each start=0
| fixed=true
Lm |  | parameter
| each final fixed=false

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm | initial equation
for s in 1:N loop ...

model Electrical.Analog.Basic.OpAmp

Component | Version 3.2 | Version 3.2.1
Slope | start=1 | start=10000

Equations in Version 3.2 | Equations in Version 3.2.1
... f = 2/(VMax.v - VMin.v);
absSlope = smooth(0,(if (Slope < 0) then -Slope else Slope)); | absSlope = if (Slope < 0) then -Slope else Slope;
out.v = (VMax.v + VMin.v)/2 + absSlope*vin/(1 + absSlope*smooth(0,(if (f*vin < 0) then -f*vin else f*vin)));

model Electrical.Analog.Basic.VariableResistor

Component | Version 3.2 | Version 3.2.1
R |  | unit="Ohm"

model Electrical.Analog.Basic.VariableConductor

Component | Version 3.2 | Version 3.2.1
G |  | unit="S"

model Electrical.Analog.Basic.VariableCapacitor

Component | Version 3.2 | Version 3.2.1
C |  | unit="F"
IC |  | Present
UIC |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
assert(C>=0,"Capacitance C (= " + String(C) + ") has to be >= 0!"); | initial equation
Q = noEvent(max(C,Cmin))*v; | if UIC then
i = der(Q); | v = IC;
| end if; equation &nbspassert(C>=0,"Capacitance C (= " + &nbspString(C) + ") has to be >= 0!"); Q = noEvent(max(C,Cmin))*v; i = der(Q);

model Electrical.Analog.Basic.VariableInductor

Component | Version 3.2 | Version 3.2.1
L |  | unit="H"
IC |  | Present
UIC |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
assert(L>=0,"Inductance L_ (= " + String(L) + ") has to be >= 0!"); | initial equation
Psi = noEvent(max(L,Lmin))*i; | if UIC then
v = der(Psi); | i = IC;
| end if; equation &nbspassert(L>=0,"Inductance L_ (= " + &nbspString(L) + ") has to be >= 0!"); Psi = noEvent(max(L,Lmin))*i; v = der(Psi);

model Electrical.Analog.Ideal.IdealDiode

Component | Version 3.2 | Version 3.2.1
s |  | start=0

model Electrical.Analog.Ideal.OpenerWithArc

Component | Version 3.2 | Version 3.2.1
quenched |  | fixed=true

model Electrical.Analog.Ideal.CloserWithArc

Component | Version 3.2 | Version 3.2.1
off | =not on |
| start=false
| fixed=true
quenched |  | fixed=true

Equations in Version 3.2 | Equations in Version 3.2.1
| off = not on;
when edge(off) then ...

model Electrical.Analog.Ideal.ControlledCloserWithArc

Component | Version 3.2 | Version 3.2.1
off | =(control.v < level) |
| start=false
| fixed=true
quenched |  | fixed=true

Equations in Version 3.2 | Equations in Version 3.2.1
| off =(control.v < level);
control.i = 0; ...

model Electrical.Analog.Ideal.AD_Converter

Equations in Version 3.2 | Equations in Version 3.2.1
... algorithm
when (trig==4 or trig==8) then | when (trig==L.'1' or trig==L.'H') then
z= if u>VRefLow then integer((u-VRefLow)/(VRefHigh-VRefLow)*(2^N - 1) + 0.5) else 0; ...

model Electrical.Analog.Ideal.DA_Converter

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
when trig==4 or trig==8 then | when trig==L.'1' or trig==L.'H' then
y= 0;
for i in 1:N loop
y = if ( x[i] == 4 or x[i] == 8) then y + 2^(i-1) else y; | y = if ( x[i] == L.'1' or x[i] == L.'H') then y + 2^(i-1) else y;
end for; ...

model Electrical.Analog.Lines.OLine

Component | Version 3.2 | Version 3.2.1
R |  | T_ref=fill(T_ref, N + 1)
| alpha=fill(alpha_R, N + 1)
| useHeatPort=fill(useHeatPort, N + 1)
| T=fill(T, N + 1)
G |  | T_ref=fill(T_ref, N)
| alpha=fill(alpha_G, N)
| useHeatPort=fill(useHeatPort, N)
| T=fill(T, N)
alpha_R |  | Present
alpha_G |  | Present
useHeatPort |  | Present
T |  | Present
T_ref |  | Present
heatPort |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(L[N + 1].n, p2);
| if useHeatPort then for i in 1:N + 1 loop connect(heatPort, R[i].heatPort); end for; for i in 1:N loop connect(heatPort, G[i].heatPort); end for; end if;

model Electrical.Analog.Lines.M_OLine

Component | Version 3.2 | Version 3.2.1
N | final min=1 | final min=2
r | final min=Modelica_3_2.Constants.small |
unit="Ohm/m" |
| each final min=Modelica.Constants.small
| each unit="Ohm/m"
l | final min=Modelica_3_2.Constants.small |
unit="H/m" |
| each final min=Modelica.Constants.small
| each unit="H/m"
g | final min=Modelica_3_2.Constants.small |
unit="S/m" |
| each final min=Modelica.Constants.small
| each unit="S/m"
c | final min=Modelica_3_2.Constants.small |
unit="F/m" |
| each final min=Modelica.Constants.small
| each unit="F/m"
s |  | alpha_R=fill(alpha_R, N - 1)
| alpha_G=fill(alpha_G, N - 1)
| T_ref=fill(T_ref, N - 1)
| useHeatPort=fill(useHeatPort, N - 1)
| T=fill(T, N - 1)
s_first |  | alpha_R=alpha_R
| alpha_G=alpha_G
| T_ref=T_ref
| useHeatPort=useHeatPort
| T=T
s_last |  | alpha_R=alpha_R
| T_ref=T_ref
| useHeatPort=useHeatPort
| T=T
alpha_R |  | Present
alpha_G |  | Present
useHeatPort |  | Present
T |  | Present
T_ref |  | Present
heatPort |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(s_last.n,n);
| if useHeatPort then connect(heatPort, s_first.heatPort); for i in 1:N - 1 loop connect(heatPort, s[i].heatPort); end for; connect(heatPort, s_last.heatPort); end if;

model Electrical.Analog.Lines.ULine

Component | Version 3.2 | Version 3.2.1
R |  | T_ref=fill(T_ref, N + 1)
| alpha=fill(alpha, N + 1)
| useHeatPort=fill(useHeatPort, N + 1)
| T=fill(T, N + 1)
alpha |  | Present
useHeatPort |  | Present
T |  | Present
T_ref |  | Present
heatPort |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(R[N + 1].n, p2);
| if useHeatPort then for i in 1:N + 1 loop connect(heatPort, R[i].heatPort); end for; end if;

model Electrical.Analog.Lines.TLine2

Component | Version 3.2 | Version 3.2.1
TD |  | parameter
| =NL/F

Equations in Version 3.2 | Equations in Version 3.2.1
... assert(F > 0, "F has to be positive");
TD = NL/F; |
i1 = (v1 - es)/Z0; ...

model Electrical.Analog.Lines.TLine3

Component | Version 3.2 | Version 3.2.1
TD |  | parameter
| =1/F/4

Equations in Version 3.2 | Equations in Version 3.2.1
... assert(F > 0, "F has to be positive");
TD = 1/F/4; |
i1 = (v1 - es)/Z0; ...

model Electrical.Analog.Semiconductors.NPN

Component | Version 3.2 | Version 3.2.1
IC |  | Present
UIC |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
ExMin = exp(EMin); | initial equation
| if UIC then C.v = IC; end if; equation &nbspExMin = exp(EMin);
ExMax = exp(EMax); ...

model Electrical.Analog.Semiconductors.Thyristor

Equations in Version 3.2 | Equations in Version 3.2.1
... vConmain = (if Anode.i>IH or vAK>VDRM then Von else 0);
| LossPower = Anode.i*Anode.v + Cathode.i*Cathode.v + Gate.i*Gate.v;

model Electrical.Analog.Semiconductors.SimpleTriac

Component | Version 3.2 | Version 3.2.1
thyristor |  | useHeatPort=useHeatPort
| T=T
thyristor1 |  | useHeatPort=useHeatPort
| T=T
useHeatPort |  | Present
T |  | Present
heatPort |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
| if useHeatPort then connect(heatPort, thyristor.heatPort); connect(heatPort, thyristor1.heatPort); end if;
connect(thyristor.Anode, n); ...

model Electrical.Analog.Sensors.PotentialSensor

Component | Version 3.2 | Version 3.2.1
phi |  | unit="V"

model Electrical.Analog.Sensors.VoltageSensor

Component | Version 3.2 | Version 3.2.1
v |  | unit="V"

model Electrical.Analog.Sensors.CurrentSensor

Component | Version 3.2 | Version 3.2.1
i |  | unit="A"

model Electrical.Analog.Sensors.PowerSensor

Component | Version 3.2 | Version 3.2.1
power |  | unit="W"

model Electrical.Analog.Sources.SignalVoltage

Component | Version 3.2 | Version 3.2.1
v |  | unit="V"

model Electrical.Analog.Sources.SignalCurrent

Component | Version 3.2 | Version 3.2.1
i |  | unit="A"

model Electrical.Digital.Examples.Multiplexer

Component | Version 3.2 | Version 3.2.1
CLK |  | startTime=0
| width=50
D0 | y0=3 | y0=L.'0'
x={4,3,4,3} | x={L.'1',L.'0',L.'1',L.'0'}
D1 | y0=3 | y0=L.'0'
x={4,3,4,3} | x={L.'1',L.'0',L.'1',L.'0'}
D2 | y0=3 | y0=L.'0'
x={4,3,4,3} | x={L.'1',L.'0',L.'1',L.'0'}
D3 | y0=3 | y0=L.'0'
x={4,3,4,3} | x={L.'1',L.'0',L.'1',L.'0'}
Enable |  | x=Modelica.Electrical.Digital.Interfaces.Logic.'1'

model Electrical.Digital.Examples.FlipFlop

Component | Version 3.2 | Version 3.2.1
CLK |  | startTime=0
| width=50
J | y0=3 | y0=L.'0'
x={4,3,4,3} | x={L.'1',L.'0',L.'1',L.'0'}
K | y0=3 | y0=L.'0'
x={4,3,4,3} | x={L.'1',L.'0',L.'1',L.'0'}

model Electrical.Digital.Examples.HalfAdder

Component | Version 3.2 | Version 3.2.1
a | x={4,3,4,3} | x={L.'1',L.'0',L.'1',L.'0'}
y0=3 | y0=L.'0'
b | x={4,3} | x={L.'1',L.'0'}
y0=3 | y0=L.'0'
Adder |  | AND(G2(y(start=L.'U', fixed=true)))
| XOR(G2(y(start=L.'U', fixed=true)))
s |  | n=1
| value_U=0.5
| value_X=0.5
| value_0=0
| value_1=1
| value_Z=0.5
| value_W=0.5
| value_L=0
| value_H=1
| value_m=0.5
c |  | n=1
| value_U=0.5
| value_X=0.5
| value_0=0
| value_1=1
| value_Z=0.5
| value_W=0.5
| value_L=0
| value_H=1
| value_m=0.5

model Electrical.Digital.Examples.FullAdder

Component | Version 3.2 | Version 3.2.1
s |  | value_0=0
| value_1=1
| value_H=1
| value_L=0
| value_m=0.5
| value_U=0.5
| value_W=0.5
| value_X=0.5
| value_Z=0.5
| n=1
c_out |  | value_0=0
| value_1=1
| value_H=1
| value_L=0
| value_m=0.5
| value_U=0.5
| value_W=0.5
| value_X=0.5
| value_Z=0.5
| n=1
CLK |  | period=1
| startTime=0
| width=50

model Electrical.Digital.Examples.Adder4

Component | Version 3.2 | Version 3.2.1
b4 | y0=3 | y0=L.'0'
x={4,3} | x={L.'1',L.'0'}
b1 | x={4,3,4} | x={L.'1',L.'0',L.'1'}
y0=3 | y0=L.'0'
b2 | y0=3 | y0=L.'0'
x={4} | x={L.'1'}
b3 | y0=3 | y0=L.'0'
x={4} | x={L.'1'}
a1 | y0=3 | y0=L.'0'
x={4,3,4} | x={L.'1',L.'0',L.'1'}
a2 | y0=3 | y0=L.'0'
x={4} | x={L.'1'}
a3 | y0=3 | y0=L.'0'
x={4,3} | x={L.'1',L.'0'}
a4 | y0=3 | y0=L.'0'
x={3} | x={L.'0'}
Set | x=3 | x=L.'0'
Adder1 |  | Adder1(AND(G2(y(start=L.'U', fixed=true))), XOR(G2(y(start=L.'U', fixed=true))))
| Adder2(AND(G2(y(start=L.'U', fixed=true))), XOR(G2(y(start=L.'U', fixed=true))))
Adder2 |  | Adder1(AND(G2(y(start=L.'U', fixed=true))), XOR(G2(y(start=L.'U', fixed=true))))
| Adder2(AND(G2(y(start=L.'U', fixed=true))), XOR(G2(y(start=L.'U', fixed=true))))
Adder3 |  | Adder1(AND(G2(y(start=L.'U', fixed=true))), XOR(G2(y(start=L.'U', fixed=true))))
| Adder2(AND(G2(y(start=L.'U', fixed=true))), XOR(G2(y(start=L.'U', fixed=true))))
Adder4 |  | Adder1(AND(G2(y(start=L.'U', fixed=true))), XOR(G2(y(start=L.'U', fixed=true))))
| Adder2(AND(G2(y(start=L.'U', fixed=true))), XOR(G2(y(start=L.'U', fixed=true))))

model Electrical.Digital.Examples.Counter3

Component | Version 3.2 | Version 3.2.1
Enable |  | after=D.Interfaces.Logic.'1'
| before=D.Interfaces.Logic.'0'
| stepTime=1
Clock |  | period=1
| startTime=0
| width=50

model Electrical.Digital.Examples.Counter

Component | Version 3.2 | Version 3.2.1
Enable |  | after=D.Interfaces.Logic.'1'
| before=D.Interfaces.Logic.'0'
| stepTime=1
Clock |  | period=1
| startTime=0
| width=50
Q0 |  | value_0=0
| value_1=1
| value_H=1
| value_L=0
| value_m=0.5
| value_U=0.5
| value_W=0.5
| value_X=0.5
| value_Z=0.5
| n=1
Q1 |  | value_0=0
| value_1=1
| value_H=1
| value_L=0
| value_m=0.5
| value_U=0.5
| value_W=0.5
| value_X=0.5
| value_Z=0.5
| n=1
Q2 |  | value_0=0
| value_1=1
| value_H=1
| value_L=0
| value_m=0.5
| value_U=0.5
| value_W=0.5
| value_X=0.5
| value_Z=0.5
| n=1
Q3 |  | value_0=0
| value_1=1
| value_H=1
| value_L=0
| value_m=0.5
| value_U=0.5
| value_W=0.5
| value_X=0.5
| value_Z=0.5
| n=1

model Electrical.Digital.Examples.VectorDelay

Component | Version 3.2 | Version 3.2.1
delay |  | inertialDelaySensitive(each y(start=L.'U', fixed=true))
table | x={3,4,3,4,3} | x={L.'0',L.'1',L.'0',L.'1',L.'0'}
table1 | x={3,4} | x={L.'0',L.'1'}
table2 | x={3,4,3} | x={L.'0',L.'1',L.'0'}

model Electrical.Digital.Examples.DFFREG

Component | Version 3.2 | Version 3.2.1
clock | x={3,4,3,4,3,4,3} | x={L.'0',L.'1',L.'0',L.'1',L.'0',L.'1',L.'0'}
data_0 | x={4,3} | x={L.'1',L.'0'}
reset | x={3,4,3} | x={L.'0',L.'1',L.'0'}
data_1 | x={8,2} | x={L.'H',L.'X'}
dFFREG |  | delay(inertialDelaySensitive(each y(start=L.'U', fixed=true)))
| dFFR(clock(start=L.'U', fixed=true), reset(start=L.'U', fixed=true))

model Electrical.Digital.Examples.DFFREGL

Component | Version 3.2 | Version 3.2.1
clock | x={3,4,3,4,3,4,3} | x={L.'0',L.'1',L.'0',L.'1',L.'0',L.'1',L.'0'}
data_0 | x={4,3} | x={L.'1',L.'0'}
reset | x={4,3,4} | x={L.'1',L.'0',L.'1'}
data_1 | x={8,2} | x={L.'H',L.'X'}
dFFREGL |  | delay(inertialDelaySensitive(each y(start=L.'U', fixed=true)))
| dFFR(clock(start=L.'U', fixed=true), reset(start=L.'U', fixed=true))

model Electrical.Digital.Examples.DFFREGSRH

Component | Version 3.2 | Version 3.2.1
clock | x={3,4,3} | x={L.'0',L.'1',L.'0'}
data_0 | x={6} | x={L.'W'}
reset | x={3,4,3} | x={L.'0',L.'1',L.'0'}
data_1 | x={3} | x={L.'0'}
set | x={3,4,3} | x={L.'0',L.'1',L.'0'}

model Electrical.Digital.Examples.DFFREGSRL

Component | Version 3.2 | Version 3.2.1
clock | x={3,4,3} | x={L.'0',L.'1',L.'0'}
data_0 | x={6} | x={L.'W'}
reset | x={4,3,4} | x={L.'1',L.'0',L.'1'}
data_1 | x={3} | x={L.'0'}
set | x={4,3,4} | x={L.'1',L.'0',L.'1'}

model Electrical.Digital.Examples.DLATREG

Component | Version 3.2 | Version 3.2.1
enable | x={3,4,3} | x={L.'0',L.'1',L.'0'}
data_0 | x={6,4} | x={L.'W',L.'1'}
reset | x={3,4,3,4,3} | x={L.'0',L.'1',L.'0',L.'1',L.'0'}
data_1 | x={3,4} | x={L.'0',L.'1'}
dLATREG |  | delay(inertialDelaySensitive(each y(start=L.'U', fixed=true)))

model Electrical.Digital.Examples.DLATREGL

Component | Version 3.2 | Version 3.2.1
enable | x={3,4,3} | x={L.'0',L.'1',L.'0'}
data_0 | x={6,4} | x={L.'W',L.'1'}
reset | x={4,3,4,3,4} | x={L.'1',L.'0',L.'1',L.'0',L.'1'}
data_1 | x={3,4} | x={L.'0',L.'1'}
dLATREGL |  | delay(inertialDelaySensitive(each y(start=L.'U', fixed=true)))

model Electrical.Digital.Examples.DLATREGSRH

Component | Version 3.2 | Version 3.2.1
enable | x={3,4,3} | x={L.'0',L.'1',L.'0'}
data_0 | x={6,4} | x={L.'W',L.'1'}
reset | x={3,4,3,4,3} | x={L.'0',L.'1',L.'0',L.'1',L.'0'}
data_1 | x={3,4} | x={L.'0',L.'1'}
set | x={3,4,3} | x={L.'0',L.'1',L.'0'}
dLATREGSRH |  | delay(inertialDelaySensitive(each y(start=L.'U', fixed=true)))

model Electrical.Digital.Examples.DLATREGSRL

Component | Version 3.2 | Version 3.2.1
enable | x={3,4,3} | x={L.'0',L.'1',L.'0'}
data_0 | x={6,4} | x={L.'W',L.'1'}
reset | x={4,3,4,3,4} | x={L.'1',L.'0',L.'1',L.'0',L.'1'}
data_1 | x={3,4} | x={L.'0',L.'1'}
set | x={4,3,4} | x={L.'1',L.'0',L.'1'}
dLATREGSRL |  | delay(inertialDelaySensitive(each y(start=L.'U', fixed=true)))

model Electrical.Digital.Examples.NXFER

Component | Version 3.2 | Version 3.2.1
e_table | x={3,4,5} | x={L.'0',L.'1',L.'Z'}
x_table | x={4,3} | x={L.'1',L.'0'}

model Electrical.Digital.Examples.NRXFER

Component | Version 3.2 | Version 3.2.1
e_table | x={3,4,5} | x={L.'0',L.'1',L.'Z'}
x_table | x={4,3} | x={L.'1',L.'0'}

model Electrical.Digital.Examples.BUF3S

Component | Version 3.2 | Version 3.2.1
e_table | x={3,4,5} | x={L.'0',L.'1',L.'Z'}
x_table | x={4,3} | x={L.'1',L.'0'}

model Electrical.Digital.Examples.INV3S

Component | Version 3.2 | Version 3.2.1
e_table | y0=Modelica_3_2.Electrical.Digital.Interfaces.Logic.'U' | y0=L.'U'
x={3,4,5} | x={L.'0',L.'1',L.'Z'}
x_table | y0=Modelica_3_2.Electrical.Digital.Interfaces.Logic.'U' | y0=L.'U'
x={4,3} | x={L.'1',L.'0'}

model Electrical.Digital.Examples.WiredX

Component | Version 3.2 | Version 3.2.1
e_table2 | y0=Modelica_3_2.Electrical.Digital.Interfaces.Logic.'U' | y0=L.'U'
x={3,4,3} | x={L.'0',L.'1',L.'0'}
x_table2 | y0=Modelica_3_2.Electrical.Digital.Interfaces.Logic.'U' | y0=L.'U'
x={4,3} | x={L.'1',L.'0'}
e_table1 | y0=Modelica_3_2.Electrical.Digital.Interfaces.Logic.'U' | y0=L.'U'
x={3,4,3} | x={L.'0',L.'1',L.'0'}
x_table1 | y0=Modelica_3_2.Electrical.Digital.Interfaces.Logic.'U' | y0=L.'U'
x={3,4,3} | x={L.'0',L.'1',L.'0'}

model Electrical.Digital.Examples.Utilities.DFF

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(Not1.y, RSFF1.r);
connect(clk, RSFF1.clk); |
connect(d, Not1.x);
connect(d, RSFF1.s);
| connect(clk, RSFF1.clk);

model Electrical.Digital.Examples.Utilities.HalfAdder

Component | Version 3.2 | Version 3.2.1
AND |  | G2(y(start=L.'U', fixed=true))
XOR |  | G2(y(start=L.'U', fixed=true))

package Electrical.Digital.Tables

Component | Version 3.2 | Version 3.2.1
MUX2x1Table |  | Present

model Electrical.Digital.Delay.TransportDelay

Component | Version 3.2 | Version 3.2.1
LogicValues |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
x_delayed = integer(delay(x, delayTime)); | x_delayed = LogicValues[integer(delay(Integer(pre(x)), delayTime))];
y = if delayTime > 0 then (if time >= delayTime then x_delayed else y0) else &nbsppre(x);

model Electrical.Digital.Delay.InertialDelaySensitive

Component | Version 3.2 | Version 3.2.1
delayTable |  | constant

Equations in Version 3.2 | Equations in Version 3.2.1
... when {initial(),(tLH > 0 or tHL > 0) and change(x) and not initial()} then
y_old = if initial() or pre(y) == 0 then y0 else pre(y); | y_old = if initial() or pre(y) == L.'U' then y0 else pre(y);
lh = delayTable[y_old, x]; ...

model Electrical.Digital.Basic.And

Component | Version 3.2 | Version 3.2.1
auxiliary | each fixed=true |
auxiliary_n |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... end for;
y = pre(auxiliary[n]); | auxiliary_n = auxiliary[n];
| y = pre(auxiliary_n);

model Electrical.Digital.Basic.Nand

Component | Version 3.2 | Version 3.2.1
auxiliary | each fixed=true |
auxiliary_n |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... end for;
y = pre(Modelica_3_2.Electrical.Digital.Tables.NotTable[auxiliary[n]]); | auxiliary_n = Modelica.Electrical.Digital.Tables.NotTable[auxiliary[n]];
| y = pre(auxiliary_n);

model Electrical.Digital.Basic.Or

Component | Version 3.2 | Version 3.2.1
auxiliary | each fixed=true |
auxiliary_n |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... end for;
y = pre(auxiliary[n]); | auxiliary_n = auxiliary[n];
| y = pre(auxiliary_n);

model Electrical.Digital.Basic.Nor

Component | Version 3.2 | Version 3.2.1
auxiliary | each fixed=true |
auxiliary_n |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... end for;
y = pre(Modelica_3_2.Electrical.Digital.Tables.NotTable[auxiliary[n]]); | auxiliary_n = Modelica.Electrical.Digital.Tables.NotTable[auxiliary[n]];
| y = pre(auxiliary_n);

model Electrical.Digital.Basic.Xor

Component | Version 3.2 | Version 3.2.1
auxiliary | each fixed=true |
auxiliary_n |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... end for;
y = pre(auxiliary[n]); | auxiliary_n = auxiliary[n];
| y = pre(auxiliary_n);

model Electrical.Digital.Basic.Xnor

Component | Version 3.2 | Version 3.2.1
auxiliary | each fixed=true |
auxiliary_n |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... end for;
y = pre(Modelica_3_2.Electrical.Digital.Tables.NotTable[auxiliary[n]]); | auxiliary_n = Modelica.Electrical.Digital.Tables.NotTable[auxiliary[n]];
| y = pre(auxiliary_n);

block Electrical.Digital.Sources.Step

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
when initial() then y = before; end when; |
if time >= stepTime then ...

block Electrical.Digital.Sources.Table

Component | Version 3.2 | Version 3.2.1
x | ={1} | ={L.'1'}

model Electrical.Digital.Sources.Clock

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm |
when sample(startTime, period) then ... y = if (not time>=startTime) or time >= t_i + t_width then L.'0' else L.'1';

block Electrical.Digital.Converters.LogicToBoolean

Equations in Version 3.2 | Equations in Version 3.2.1
for i in 1:n loop
y[i] = if x[i] == 4 or x[i] == 8 then true else false; | y[i] = if x[i] == L.'1' or x[i] == L.'H' then true else false;
end for;

model Electrical.Digital.Registers.DFFREG

Equations in Version 3.2 | Equations in Version 3.2.1
connect(dataOut, dataOut); |
connect(delay.y, dataOut); ...

model Electrical.Digital.Registers.DFFREGSRH

Component | Version 3.2 | Version 3.2.1
delay |  | inertialDelaySensitive(each y(start=L.'U', fixed=true))
dFFSR |  | clock(start=L.'U', fixed=true)
| reset(start=L.'U', fixed=true)
| set(start=L.'U', fixed=true)

model Electrical.Digital.Registers.DLATREG

Equations in Version 3.2 | Equations in Version 3.2.1
connect(dataOut, dataOut); |
connect(delay.y, dataOut); ...

model Electrical.Digital.Registers.DLATREGSRH

Equations in Version 3.2 | Equations in Version 3.2.1
connect(dataOut, dataOut); |
connect(delay.y, dataOut); ...

model Electrical.Digital.Tristates.NXFERGATE

Component | Version 3.2 | Version 3.2.1
inertialDelaySensitive | each tLH=tLH |
each tHL=tHL |
| tLH=tLH
| tHL=tHL
| y(start=L.'U', fixed=true)

model Electrical.Digital.Tristates.NRXFERGATE

Component | Version 3.2 | Version 3.2.1
inertialDelaySensitive | each tLH=tLH |
each tHL=tHL |
| tLH=tLH
| tHL=tHL
| y(start=L.'U', fixed=true)

model Electrical.Digital.Tristates.PXFERGATE

Component | Version 3.2 | Version 3.2.1
inertialDelaySensitive | each tLH=tLH |
each tHL=tHL |
| tLH=tLH
| tHL=tHL

model Electrical.Digital.Tristates.PRXFERGATE

Component | Version 3.2 | Version 3.2.1
inertialDelaySensitive | each tLH=tLH |
each tHL=tHL |
| tLH=tLH
| tHL=tHL

model Electrical.Digital.Tristates.BUF3S

Component | Version 3.2 | Version 3.2.1
inertialDelaySensitive | each tLH=tLH |
each tHL=tHL |
| tLH=tLH
| tHL=tHL
| y(start=L.'U', fixed=true)

model Electrical.Digital.Tristates.BUF3SL

Component | Version 3.2 | Version 3.2.1
inertialDelaySensitive | each tLH=tLH |
each tHL=tHL |
| tLH=tLH
| tHL=tHL

model Electrical.Digital.Tristates.INV3S

Component | Version 3.2 | Version 3.2.1
inertialDelaySensitive | each tLH=tLH |
each tHL=tHL |
| tLH=tLH
| tHL=tHL
| y(start=L.'U', fixed=true)

model Electrical.Digital.Tristates.INV3SL

Component | Version 3.2 | Version 3.2.1
inertialDelaySensitive | each tLH=tLH |
each tHL=tHL |
| tLH=tLH
| tHL=tHL

model Electrical.Machines.Examples.AsynchronousInductionMachines.AIMC_DOL

Component | Version 3.2 | Version 3.2.1
aimc |  | p=aimcData.p
| fsNominal=aimcData.fsNominal
| Rs=aimcData.Rs
| TsRef=aimcData.TsRef
| alpha20s(displayUnit="1/K") = aimcData.alpha20s
| Lszero=aimcData.Lszero
| Lssigma=aimcData.Lssigma
| Jr=aimcData.Jr
| Js=aimcData.Js
| frictionParameters=aimcData.frictionParameters
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| statorCoreParameters=aimcData.statorCoreParameters
| strayLoadParameters=aimcData.strayLoadParameters
| Lm=aimcData.Lm
| Lrsigma=aimcData.Lrsigma
| Rr=aimcData.Rr
| TrRef=aimcData.TrRef
| TsOperational=293.15
| alpha20r=aimcData.alpha20r
| TrOperational=293.15
idealCloser |  | Ron=fill(1e-5, m)
| Goff=fill(1e-5, m)
aimcData |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(star.pin_n, ground.p); | initial equation
| aimc.is=zeros(3); aimc.ir=zeros(2); equation &nbspconnect(star.pin_n, ground.p);
connect(sineVoltage.plug_n, star.plug_p); ...

model Electrical.Machines.Examples.AsynchronousInductionMachines.AIMC_YD

Component | Version 3.2 | Version 3.2.1
aimc |  | p=aimcData.p
| fsNominal=aimcData.fsNominal
| Rs=aimcData.Rs
| TsRef=aimcData.TsRef
| alpha20s(displayUnit="1/K") = aimcData.alpha20s
| Lszero=aimcData.Lszero
| Lssigma=aimcData.Lssigma
| Jr=aimcData.Jr
| Js=aimcData.Js
| frictionParameters=aimcData.frictionParameters
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| statorCoreParameters=aimcData.statorCoreParameters
| strayLoadParameters=aimcData.strayLoadParameters
| Lm=aimcData.Lm
| Lrsigma=aimcData.Lrsigma
| Rr=aimcData.Rr
| TrRef=aimcData.TrRef
| TsOperational=293.15
| alpha20r=aimcData.alpha20r
| TrOperational=293.15
idealCloser |  | Ron=fill(1e-5, m)
| Goff=fill(1e-5, m)
switchYD |  | m=m
aimcData |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(star.pin_n, ground.p); | initial equation
| aimc.is=zeros(3); aimc.ir=zeros(2); equation &nbspconnect(star.pin_n, ground.p);
connect(sineVoltage.plug_n, star.plug_p); ...

model Electrical.Machines.Examples.AsynchronousInductionMachines.AIMC_Transformer

Component | Version 3.2 | Version 3.2.1
aimc |  | p=aimcData.p
| fsNominal=aimcData.fsNominal
| Rs=aimcData.Rs
| TsRef=aimcData.TsRef
| alpha20s(displayUnit="1/K") = aimcData.alpha20s
| Lszero=aimcData.Lszero
| Lssigma=aimcData.Lssigma
| Jr=aimcData.Jr
| Js=aimcData.Js
| frictionParameters=aimcData.frictionParameters
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| statorCoreParameters=aimcData.statorCoreParameters
| strayLoadParameters=aimcData.strayLoadParameters
| Lm=aimcData.Lm
| Lrsigma=aimcData.Lrsigma
| Rr=aimcData.Rr
| TrRef=aimcData.TrRef
| TsOperational=293.15
| alpha20r=aimcData.alpha20r
| TrOperational=293.15
idealCloser |  | Ron=fill(1e-5, m)
| Goff=fill(1e-5, m)
transformer |  | T1Ref=293.15
| alpha20_1(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| T2Ref=293.15
| alpha20_2(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| T1Operational=293.15
| T2Operational=293.15
transformerData |  | parameter
idealCommutingSwitch | Goff=fill(5E-4, m) | Goff=fill(50E-5, m)
| Ron=fill(1e-5, m)
aimcData |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(star.pin_n, ground.p); | initial equation
| aimc.is=zeros(3); aimc.ir=zeros(2); transformer.i1[1:2]=zeros(2); equation &nbspconnect(star.pin_n, ground.p);
connect(terminalBox.plug_sn, aimc.plug_sn); ...

model Electrical.Machines.Examples.AsynchronousInductionMachines.AIMS_Start

Component | Version 3.2 | Version 3.2.1
Rstart | =0.16 | =0.16/aimsData.turnsRatio^2
aims |  | p=aimsData.p
| Jr=aimsData.Jr
| Js=aimsData.Js
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| useTurnsRatio=aimsData.useTurnsRatio
| turnsRatio=aimsData.turnsRatio
| VsNominal=aimsData.VsNominal
| VrLockedRotor=aimsData.VrLockedRotor
| Rs=aimsData.Rs
| TsRef=aimsData.TsRef
| Lszero=aimsData.Lszero
| Lssigma=aimsData.Lssigma
| Lm=aimsData.Lm
| Lrsigma=aimsData.Lrsigma
| Lrzero=aimsData.Lrzero
| Rr=aimsData.Rr
| TrRef=aimsData.TrRef
| frictionParameters=aimsData.frictionParameters
| statorCoreParameters=aimsData.statorCoreParameters
| strayLoadParameters=aimsData.strayLoadParameters
| rotorCoreParameters=aimsData.rotorCoreParameters
| fsNominal=aimsData.fsNominal
| TsOperational=293.15
| alpha20s=aimsData.alpha20s
| alpha20r=aimsData.alpha20r
| TrOperational=293.15
idealCloser |  | Ron=fill(1e-5, m)
| Goff=fill(1e-5, m)
switchedRheostat |  | m=m
aimsData |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(star.pin_n, ground.p); | initial equation
| aims.is=zeros(3); aims.ir=zeros(3); equation &nbspconnect(star.pin_n, ground.p);
connect(sineVoltage.plug_n, star.plug_p); ...

model Electrical.Machines.Examples.AsynchronousInductionMachines.AIMC_Inverter

Component | Version 3.2 | Version 3.2.1
aimc |  | p=aimcData.p
| fsNominal=aimcData.fsNominal
| Rs=aimcData.Rs
| TsRef=aimcData.TsRef
| alpha20s(displayUnit="1/K") = aimcData.alpha20s
| Lszero=aimcData.Lszero
| Lssigma=aimcData.Lssigma
| Jr=aimcData.Jr
| Js=aimcData.Js
| frictionParameters=aimcData.frictionParameters
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| statorCoreParameters=aimcData.statorCoreParameters
| strayLoadParameters=aimcData.strayLoadParameters
| Lm=aimcData.Lm
| Lrsigma=aimcData.Lrsigma
| Rr=aimcData.Rr
| TrRef=aimcData.TrRef
| TsOperational=293.15
| alpha20r=aimcData.alpha20r
| TrOperational=293.15
loadTorqueStep |  | offsetTorque=0
aimcData |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(signalVoltage.plug_n, star.plug_p); | initial equation
| aimc.is[1:2]=zeros(2); aimc.ir=zeros(2); equation &nbspconnect(signalVoltage.plug_n, star.plug_p);
connect(star.pin_n, ground.p); ...

model Electrical.Machines.Examples.AsynchronousInductionMachines.AIMC_Steinmetz

Component | Version 3.2 | Version 3.2.1
aimc | useSupport=true |
| p=aimcData.p
| fsNominal=aimcData.fsNominal
| Rs=aimcData.Rs
| TsRef=aimcData.TsRef
| alpha20s(displayUnit="1/K") = aimcData.alpha20s
| Lszero=aimcData.Lszero
| Lssigma=aimcData.Lssigma
| Jr=aimcData.Jr
| Js=aimcData.Js
| frictionParameters=aimcData.frictionParameters
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| statorCoreParameters=aimcData.statorCoreParameters
| strayLoadParameters=aimcData.strayLoadParameters
| Lm=aimcData.Lm
| Lrsigma=aimcData.Lrsigma
| Rr=aimcData.Rr
| TrRef=aimcData.TrRef
| TsOperational=293.15
| alpha20r=aimcData.alpha20r
| TrOperational=293.15
quadraticLoadTorque |  | useSupport=false
relSpeedSensor | Mechanics.Rotational.Sensors.RelSpeedSensor | Mechanics.Rotational.Sensors.SpeedSensor
fixed | Present |
aimcData |  | Present
currentQuasiRMSSensor |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(ground.p, sineVoltage.n); | initial equation
| aimc.is=zeros(3); aimc.ir=zeros(2); cStart.v=0; cRun.v = 0; equation &nbspconnect(ground.p, sineVoltage.n);
connect(sineVoltage.p, idealCloser.p); ... connect(TerminalBox1.plug_sp, aimc.plug_sp);
connect(TerminalBox1.plugSupply, plugToPin_p2.plug_p); | connect(aimc.flange, loadInertia.flange_a);
connect(TerminalBox1.plugSupply, plugToPin_p3.plug_p); | connect(relSpeedSensor.flange, aimc.flange);
connect(TerminalBox1.plugSupply, plugToPin_p1.plug_p); | connect(relSpeedSensor.w, greaterThreshold.u);
connect(quadraticLoadTorque.support, fixed.flange); | connect(plugToPin_p3.plug_p, currentQuasiRMSSensor.plug_p);
connect(relSpeedSensor.flange_a, fixed.flange); | connect(plugToPin_p2.plug_p, currentQuasiRMSSensor.plug_p);
connect(relSpeedSensor.w_rel, greaterThreshold.u); | connect(plugToPin_p1.plug_p, currentQuasiRMSSensor.plug_p);
connect(aimc.support, fixed.flange); | connect(currentQuasiRMSSensor.plug_n, TerminalBox1.plugSupply);
connect(aimc.flange, relSpeedSensor.flange_b); connect(aimc.flange, loadInertia.flange_a); |

model Electrical.Machines.Examples.AsynchronousInductionMachines.AIMC_withLosses

Component | Version 3.2 | Version 3.2.1
m | protected |
aimc | Jr=J | Jr=aimcData.Jr
p=2 | p=aimcData.p
fsNominal=fNominal | fsNominal=aimcData.fsNominal
Rs=0.56 | Rs=aimcData.Rs
alpha20s(displayUnit="1/K") = Modelica_3_2.Electrical.Machines.Thermal.Constants.alpha20Copper | alpha20s(displayUnit="1/K") = aimcData.alpha20s
Lssigma=1.52/(2*pi*fNominal) | Lssigma=aimcData.Lssigma
Lm=66.4/(2*pi*fNominal) | Lm=aimcData.Lm
Lrsigma=2.31/(2*pi*fNominal) | Lrsigma=aimcData.Lrsigma
Rr=0.42 | Rr=aimcData.Rr
TsRef=293.15 | TsRef=aimcData.TsRef
TrRef=293.15 | TrRef=aimcData.TrRef
statorCoreParameters(PRef=PcoreRef, VRef=VcoreNominal, wRef=2*pi*fNominal) |
strayLoadParameters(PRef=0.005*sqrt(3)*VNominal*INominal*pfNominal, IRef=INominal/sqrt(3), wRef=wNominal) |
alpha20r(displayUnit="1/K") = Modelica_3_2.Electrical.Machines.Thermal.Constants.alpha20Aluminium |
wMechanical(start=wNominal, fixed=true) |
frictionParameters(PRef=PfrictionRef, wRef=wNominal) |
| Lszero=aimcData.Lszero
| Js=aimcData.Js
| frictionParameters=aimcData.frictionParameters
| phiMechanical(fixed=true)
| statorCoreParameters=aimcData.statorCoreParameters
| strayLoadParameters=aimcData.strayLoadParameters
| wMechanical(fixed=true, start=2*pi*aimcData.fsNominal/aimcData.p)
| alpha20r=aimcData.alpha20r
loadInertia | J=J | J=aimcData.Jr
PI |  | initType=Modelica.Blocks.Types.Init.InitialState
pi | Present |
J | Present |
PcoreRef | Present |
VcoreNominal | Present |
PfrictionRef | Present |
aimcData |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(star.pin_n, ground.p); | initial equation
| aimc.i_0_s=0; der(aimc.idq_sr)=zeros(2); der(aimc.idq_rr)=zeros(2); equation &nbspconnect(star.pin_n, ground.p);
connect(sineVoltage.plug_n, star.plug_p); ...

model Electrical.Machines.Examples.SynchronousInductionMachines.SMR_Inverter

Component | Version 3.2 | Version 3.2.1
smr |  | p=smrData.p
| fsNominal=smrData.fsNominal
| Rs=smrData.Rs
| TsRef=smrData.TsRef
| Lszero=smrData.Lszero
| Lssigma=smrData.Lssigma
| Jr=smrData.Jr
| Js=smrData.Js
| frictionParameters=smrData.frictionParameters
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| statorCoreParameters=smrData.statorCoreParameters
| strayLoadParameters=smrData.strayLoadParameters
| Lmd=smrData.Lmd
| Lmq=smrData.Lmq
| useDamperCage=smrData.useDamperCage
| Lrsigmad=smrData.Lrsigmad
| Lrsigmaq=smrData.Lrsigmaq
| Rrd=smrData.Rrd
| Rrq=smrData.Rrq
| TrRef=smrData.TrRef
| TsOperational=293.15
| alpha20s=smrData.alpha20s
| ir(fixed=true)
| TrOperational=293.15
| alpha20r=smrData.alpha20r
loadTorqueStep |  | offsetTorque=0
smrData |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(signalVoltage.plug_n, star.plug_p); | initial equation
| smr.is[1:2]=zeros(2); equation &nbspconnect(signalVoltage.plug_n, star.plug_p);
connect(star.pin_n, ground.p); ...

model Electrical.Machines.Examples.SynchronousInductionMachines.SMPM_Inverter

Component | Version 3.2 | Version 3.2.1
smpm |  | p=smpmData.p
| fsNominal=smpmData.fsNominal
| Rs=smpmData.Rs
| TsRef=smpmData.TsRef
| Lszero=smpmData.Lszero
| Lssigma=smpmData.Lssigma
| Jr=smpmData.Jr
| Js=smpmData.Js
| frictionParameters=smpmData.frictionParameters
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| statorCoreParameters=smpmData.statorCoreParameters
| strayLoadParameters=smpmData.strayLoadParameters
| VsOpenCircuit=smpmData.VsOpenCircuit
| Lmd=smpmData.Lmd
| Lmq=smpmData.Lmq
| useDamperCage=smpmData.useDamperCage
| Lrsigmad=smpmData.Lrsigmad
| Lrsigmaq=smpmData.Lrsigmaq
| Rrd=smpmData.Rrd
| Rrq=smpmData.Rrq
| TrRef=smpmData.TrRef
| permanentMagnetLossParameters=smpmData.permanentMagnetLossParameters
| TsOperational=293.15
| alpha20s=smpmData.alpha20s
| ir(fixed=true)
| TrOperational=293.15
| alpha20r=smpmData.alpha20r
loadTorqueStep |  | offsetTorque=0
smpmData |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(signalVoltage.plug_n, star.plug_p); | initial equation
| smpm.is[1:2]=zeros(2); equation &nbspconnect(signalVoltage.plug_n, star.plug_p);
connect(star.pin_n, ground.p); ...

model Electrical.Machines.Examples.SynchronousInductionMachines.SMPM_CurrentSource

Component | Version 3.2 | Version 3.2.1
smpm | useDamperCage=false | useDamperCage=smpmData.useDamperCage
| p=smpmData.p
| fsNominal=smpmData.fsNominal
| TsOperational=293.15
| Rs=smpmData.Rs
| TsRef=smpmData.TsRef
| alpha20s=smpmData.alpha20s
| Lszero=smpmData.Lszero
| Lssigma=smpmData.Lssigma
| Jr=smpmData.Jr
| Js=smpmData.Js
| frictionParameters=smpmData.frictionParameters
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| statorCoreParameters=smpmData.statorCoreParameters
| strayLoadParameters=smpmData.strayLoadParameters
| TrOperational=293.15
| VsOpenCircuit=smpmData.VsOpenCircuit
| Lmd=smpmData.Lmd
| Lmq=smpmData.Lmq
| Lrsigmad=smpmData.Lrsigmad
| Lrsigmaq=smpmData.Lrsigmaq
| Rrd=smpmData.Rrd
| Rrq=smpmData.Rrq
| TrRef=smpmData.TrRef
| alpha20r=smpmData.alpha20r
| permanentMagnetLossParameters=smpmData.permanentMagnetLossParameters
smpmData |  | Present
currentQuasiRMSSensor |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(angleSensor.phi, currentController.phi);
connect(signalCurrent.plug_n, terminalBox.plugSupply); |
connect(id.y, currentController.id_rms); ... connect(torqueSensor.flange_b, inertiaLoad.flange_a);
| connect(signalCurrent.plug_n, currentQuasiRMSSensor.plug_p); connect(currentQuasiRMSSensor.plug_n, voltageQuasiRMSSensor.plug_p);

model Electrical.Machines.Examples.SynchronousInductionMachines.SMEE_Generator

Component | Version 3.2 | Version 3.2.1
smee | useSupport=true |
| p=2
| Jr=0.29
| Js=0.29
| useDamperCage=true
| statorCoreParameters(VRef=100)
| strayLoadParameters(IRef=100)
| brushParameters(ILinear=0.01)
| TsOperational=293.15
| ir(fixed=true)
| TrOperational=293.15
| TeOperational=293.15
rotorDisplacementAngle | useSupport=true |
mechanicalPowerSensor | useSupport=true |
smeeData |  | SNominal=30e3
| VsNominal=100
| fsNominal=50
| IeOpenCircuit=10
| x0=0.1
| xd=1.6
| xq=1.6
| xdTransient=0.1375
| xdSubtransient=0.121428571
| xqSubtransient=0.148387097
| Ta=0.014171268
| Td0Transient=0.261177343
| Td0Subtransient=0.006963029
| Tq0Subtransient=0.123345081
| alpha20s(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| alpha20r(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| alpha20e(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| TsSpecification=293.15
| TsRef=293.15
| TrSpecification=293.15
| TrRef=293.15
| TeSpecification=293.15
| TeRef=293.15
fixed | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
connect(rotorDisplacementAngle.plug_n, smee.plug_sn); | initial equation
| smee.is[1:2]=zeros(2); equation &nbspconnect(rotorDisplacementAngle.plug_n, smee.plug_sn);
connect(rotorDisplacementAngle.plug_p, smee.plug_sp); ... connect(terminalBox.plug_sp, smee.plug_sp);
connect(constantSpeed.support, fixed.flange); | connect(smee.flange, rotorDisplacementAngle.flange);
connect(mechanicalPowerSensor.support, fixed.flange); | connect(smee.flange, mechanicalPowerSensor.flange_a);
connect(smee.support, fixed.flange); connect(rotorDisplacementAngle.support, smee.support); connect(smee.flange, rotorDisplacementAngle.flange); connect(smee.flange, mechanicalPowerSensor.flange_a); |

model Electrical.Machines.Examples.SynchronousInductionMachines.SMEE_LoadDump

Component | Version 3.2 | Version 3.2.1
smee |  | p=2
| Jr=0.29
| Js=0.29
| statorCoreParameters(VRef=100)
| strayLoadParameters(IRef=100)
| brushParameters(ILinear=0.01)
| TsOperational=293.15
| ir(fixed=true)
| TrOperational=293.15
| TeOperational=293.15
smeeData |  | SNominal=30e3
| VsNominal=100
| fsNominal=50
| IeOpenCircuit=10
| x0=0.1
| xd=1.6
| xq=1.6
| xdTransient=0.1375
| xdSubtransient=0.121428571
| xqSubtransient=0.148387097
| Ta=0.014171268
| Td0Transient=0.261177343
| Td0Subtransient=0.006963029
| Tq0Subtransient=0.123345081
| TsSpecification=293.15
| TsRef=293.15
| alpha20s(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| TrSpecification=293.15
| TrRef=293.15
| alpha20r(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| TeSpecification=293.15
| TeRef=293.15
| alpha20e(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
setPointGain | k=smeeData.VsNominal/wNominal | k=(smeeData.VsNominal/wNominal)/unitMagneticFlux
voltageController |  | initType=Modelica.Blocks.Types.InitPID.InitialState
| Td=0.001
switch |  | Ron=fill(1e-5, m)
| Goff=fill(1e-5, m)
| V0=fill(30, m)
| dVdt=fill(10e3, m)
| Vmax=fill(60, m)
unitMagneticFlux |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(terminalBox.plug_sn, smee.plug_sn); | initial equation
| smee.idq_sr=zeros(2); smee.ie=0; equation &nbspconnect(terminalBox.plug_sn, smee.plug_sn);
connect(terminalBox.plug_sp, smee.plug_sp); ...

model Electrical.Machines.Examples.DCMachines.DCPM_Start

Component | Version 3.2 | Version 3.2.1
dcpm |  | VaNominal=dcpmData.VaNominal
| IaNominal=dcpmData.IaNominal
| wNominal=dcpmData.wNominal
| TaNominal=dcpmData.TaNominal
| Ra=dcpmData.Ra
| TaRef=dcpmData.TaRef
| La=dcpmData.La
| Jr=dcpmData.Jr
| useSupport=false
| Js=dcpmData.Js
| frictionParameters=dcpmData.frictionParameters
| coreParameters=dcpmData.coreParameters
| strayLoadParameters=dcpmData.strayLoadParameters
| brushParameters=dcpmData.brushParameters
| TaOperational=293.15
| alpha20a=dcpmData.alpha20a
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| ia(fixed=true)
loadTorqueStep |  | offsetTorque=0
dcpmData |  | Present

model Electrical.Machines.Examples.DCMachines.DCEE_Start

Component | Version 3.2 | Version 3.2.1
dcee |  | VaNominal=dceeData.VaNominal
| IaNominal=dceeData.IaNominal
| wNominal=dceeData.wNominal
| TaNominal=dceeData.TaNominal
| Ra=dceeData.Ra
| TaRef=dceeData.TaRef
| La=dceeData.La
| Jr=dceeData.Jr
| useSupport=false
| Js=dceeData.Js
| frictionParameters=dceeData.frictionParameters
| coreParameters=dceeData.coreParameters
| strayLoadParameters=dceeData.strayLoadParameters
| brushParameters=dceeData.brushParameters
| IeNominal=dceeData.IeNominal
| Re=dceeData.Re
| TeRef=dceeData.TeRef
| Le=dceeData.Le
| sigmae=dceeData.sigmae
| TaOperational=293.15
| alpha20a=dceeData.alpha20a
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| ia(fixed=true)
| alpha20e=dceeData.alpha20e
| TeOperational=293.15
| ie(fixed=true)
loadTorqueStep |  | offsetTorque=0
dceeData |  | Present

model Electrical.Machines.Examples.DCMachines.DCSE_Start

Component | Version 3.2 | Version 3.2.1
dcse |  | VaNominal=dcseData.VaNominal
| IaNominal=dcseData.IaNominal
| wNominal=dcseData.wNominal
| TaNominal=dcseData.TaNominal
| TeNominal=dcseData.TeNominal
| Ra=dcseData.Ra
| TaRef=dcseData.TaRef
| La=dcseData.La
| Jr=dcseData.Jr
| useSupport=false
| Js=dcseData.Js
| frictionParameters=dcseData.frictionParameters
| coreParameters=dcseData.coreParameters
| strayLoadParameters=dcseData.strayLoadParameters
| brushParameters=dcseData.brushParameters
| Re=dcseData.Re
| TeRef=dcseData.TeRef
| Le=dcseData.Le
| sigmae=dcseData.sigmae
| TaOperational=293.15
| alpha20a=dcseData.alpha20a
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| ia(fixed=true)
| alpha20e=dcseData.alpha20e
| TeOperational=293.15
dcseData |  | Present

model Electrical.Machines.Examples.DCMachines.DCSE_SinglePhase

Component | Version 3.2 | Version 3.2.1
dcse |  | VaNominal=dcseData.VaNominal
| IaNominal=dcseData.IaNominal
| wNominal=dcseData.wNominal
| TaNominal=dcseData.TaNominal
| TeNominal=dcseData.TeNominal
| Ra=dcseData.Ra
| TaRef=dcseData.TaRef
| La=dcseData.La
| Jr=dcseData.Jr
| useSupport=false
| Js=dcseData.Js
| frictionParameters=dcseData.frictionParameters
| coreParameters=dcseData.coreParameters
| strayLoadParameters=dcseData.strayLoadParameters
| brushParameters=dcseData.brushParameters
| Re=dcseData.Re
| TeRef=dcseData.TeRef
| Le=dcseData.Le
| sigmae=dcseData.sigmae
| TaOperational=293.15
| alpha20a=dcseData.alpha20a
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| ia(fixed=true)
| alpha20e=dcseData.alpha20e
| TeOperational=293.15
dcseData |  | Present

model Electrical.Machines.Examples.DCMachines.DCPM_Temperature

Component | Version 3.2 | Version 3.2.1
dcpm | TaNominal=353.15 | TaNominal=dcpmData.TaNominal
TaRef=353.15 | TaRef=dcpmData.TaRef
alpha20a(displayUnit="1/K") = Machines.Thermal.Constants.alpha20Copper |
| VaNominal=dcpmData.VaNominal
| IaNominal=dcpmData.IaNominal
| wNominal=dcpmData.wNominal
| Ra=dcpmData.Ra
| La=dcpmData.La
| Jr=dcpmData.Jr
| useSupport=false
| Js=dcpmData.Js
| frictionParameters=dcpmData.frictionParameters
| coreParameters=dcpmData.coreParameters
| strayLoadParameters=dcpmData.strayLoadParameters
| brushParameters=dcpmData.brushParameters
| phiMechanical(fixed=true)
| ia(fixed=true)
| TaOperational=293.15
| alpha20a=dcpmData.alpha20a
thermalAmbientDCPM |  | Ta=293.15
| Tpm=293.15
dcpmData |  | Present

model Electrical.Machines.Examples.DCMachines.DCPM_Cooling

Component | Version 3.2 | Version 3.2.1
dcpm | TaNominal=353.15 | TaNominal=dcpmData.TaNominal
TaRef=353.15 | TaRef=dcpmData.TaRef
alpha20a(displayUnit="1/K") = Machines.Thermal.Constants.alpha20Copper |
| VaNominal=dcpmData.VaNominal
| IaNominal=dcpmData.IaNominal
| wNominal=dcpmData.wNominal
| Ra=dcpmData.Ra
| La=dcpmData.La
| Jr=dcpmData.Jr
| useSupport=false
| Js=dcpmData.Js
| frictionParameters=dcpmData.frictionParameters
| coreParameters=dcpmData.coreParameters
| strayLoadParameters=dcpmData.strayLoadParameters
| brushParameters=dcpmData.brushParameters
| phiMechanical(fixed=true)
| ia(fixed=true)
| TaOperational=293.15
| alpha20a=dcpmData.alpha20a
inlet |  | constantAmbientPressure=0
volumeFlow |  | m=0
cooling |  | m=0
| h_g=0
| V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| T0fixed=false
outlet |  | constantAmbientPressure=0
dcpmData |  | Present

model Electrical.Machines.Examples.DCMachines.DCPM_QuasiStationary

Component | Version 3.2 | Version 3.2.1
dcpm1 | wMechanical(start=w0, fixed=true) |
alpha20a(displayUnit="1/K") |
| VaNominal=dcpmData.VaNominal
| IaNominal=dcpmData.IaNominal
| wNominal=dcpmData.wNominal
| TaNominal=dcpmData.TaNominal
| Ra=dcpmData.Ra
| TaRef=dcpmData.TaRef
| La=dcpmData.La
| Jr=dcpmData.Jr
| useSupport=false
| Js=dcpmData.Js
| frictionParameters=dcpmData.frictionParameters
| coreParameters=dcpmData.coreParameters
| strayLoadParameters=dcpmData.strayLoadParameters
| brushParameters=dcpmData.brushParameters
| phiMechanical(fixed=true)
| ia(fixed=true)
| TaOperational=293.15
| alpha20a=dcpmData.alpha20a
| wMechanical(fixed=true, start=w0)
dcpm2 | wMechanical(start=w0, fixed=true) |
alpha20a(displayUnit="1/K") |
| VaNominal=dcpmData.VaNominal
| IaNominal=dcpmData.IaNominal
| wNominal=dcpmData.wNominal
| TaNominal=dcpmData.TaNominal
| Ra=dcpmData.Ra
| TaRef=dcpmData.TaRef
| La=dcpmData.La
| Jr=dcpmData.Jr
| useSupport=false
| Js=dcpmData.Js
| frictionParameters=dcpmData.frictionParameters
| coreParameters=dcpmData.coreParameters
| strayLoadParameters=dcpmData.strayLoadParameters
| brushParameters=dcpmData.brushParameters
| phiMechanical(fixed=true)
| wMechanical(fixed=true, start=w0)
| TaOperational=293.15
| alpha20a=dcpmData.alpha20a
dcpmData |  | Present

model Electrical.Machines.Examples.DCMachines.DCPM_withLosses

Component | Version 3.2 | Version 3.2.1
dcpm1 |  | VaNominal=dcpmData1.VaNominal
| IaNominal=dcpmData1.IaNominal
| wNominal=dcpmData1.wNominal
| TaNominal=dcpmData1.TaNominal
| Ra=dcpmData1.Ra
| TaRef=dcpmData1.TaRef
| La=dcpmData1.La
| Jr=dcpmData1.Jr
| useSupport=false
| Js=dcpmData1.Js
| frictionParameters=dcpmData1.frictionParameters
| coreParameters=dcpmData1.coreParameters
| strayLoadParameters=dcpmData1.strayLoadParameters
| brushParameters=dcpmData1.brushParameters
| TaOperational=293.15
| alpha20a=dcpmData1.alpha20a
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| ia(fixed=true)
dcpm2 | wNominal=148.44025288212 | wNominal=dcpmData2.wNominal
TaNominal=368.15 | TaNominal=dcpmData2.TaNominal
Ra=0.03864 | Ra=dcpmData2.Ra
TaRef=293.15 | TaRef=dcpmData2.TaRef
frictionParameters(PRef=100) |
alpha20a(displayUnit="1/K") = Modelica_3_2.Electrical.Machines.Thermal.Constants.alpha20Copper |
coreParameters(PRef=200) |
strayLoadParameters(PRef=50) |
brushParameters(V=0.5) |
| VaNominal=dcpmData2.VaNominal
| IaNominal=dcpmData2.IaNominal
| La=dcpmData2.La
| Jr=dcpmData2.Jr
| useSupport=false
| Js=dcpmData2.Js
| frictionParameters=dcpmData2.frictionParameters
| coreParameters=dcpmData2.coreParameters
| strayLoadParameters=dcpmData2.strayLoadParameters
| brushParameters=dcpmData2.brushParameters
| alpha20a=dcpmData2.alpha20a
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| ia(fixed=true)
| core(v(start=0))
dcpmData1 |  | Present
dcpmData2 |  | Present

model Electrical.Machines.Examples.Transformers.TransformerTestbench

Component | Version 3.2 | Version 3.2.1
transformerData |  | parameter
| f=50
| V1=100
| V2=100
| SNominal=30E3
| v_sc=0.05
| P_sc=300
transformer |  | T1Ref=293.15
| alpha20_1(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| T2Ref=293.15
| alpha20_2(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| T1Operational=293.15
| T2Operational=293.15

Equations in Version 3.2 | Equations in Version 3.2.1
connect(starS.pin_n, groundS.p); | initial equation
| transformer.i2[1:2]=zeros(2); equation &nbspconnect(starS.pin_n, groundS.p);
connect(source.plug_n, starS.plug_p); ...

model Electrical.Machines.Examples.Transformers.AsymmetricalLoad

Component | Version 3.2 | Version 3.2.1
transformerData |  | parameter
| f=50
| V1=100
| V2=100
| SNominal=30E3
| v_sc=0.05
| P_sc=300
transformer |  | T1Ref=293.15
| alpha20_1(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| T2Ref=293.15
| alpha20_2(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| T1Operational=293.15
| T2Operational=293.15

Equations in Version 3.2 | Equations in Version 3.2.1
connect(starS.pin_n, groundS.p); | initial equation
| transformer.i2[1]=0; equation &nbspconnect(starS.pin_n, groundS.p);
connect(source.plug_n, starS.plug_p); ...

model Electrical.Machines.Examples.Transformers.Rectifier6pulse

Component | Version 3.2 | Version 3.2.1
diode1 |  | Ron=fill(1e-5, m)
| Goff=fill(1e-5, m)
| Vknee=fill(0, m)
diode2 |  | Ron=fill(1e-5, m)
| Goff=fill(1e-5, m)
| Vknee=fill(0, m)
transformerData1 |  | parameter
| f=50
| V1=100
| V2=100
| SNominal=30E3
| v_sc=0.05
| P_sc=300
transformer1 |  | T1Ref=293.15
| alpha20_1(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| T2Ref=293.15
| alpha20_2(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| T1Operational=293.15
| T2Operational=293.15

Equations in Version 3.2 | Equations in Version 3.2.1
connect(cDC1.n, cDC2.p); | initial equation
| cDC1.v=VC0/2; cDC2.v=VC0/2; transformer1.i2[1:2]=zeros(2); equation &nbspconnect(cDC1.n, cDC2.p);
connect(cDC1.n, groundDC.p); ...

model Electrical.Machines.Examples.Transformers.Rectifier12pulse

Component | Version 3.2 | Version 3.2.1
diode3 |  | Ron=fill(1e-5, m)
| Goff=fill(1e-5, m)
| Vknee=fill(0, m)
diode4 |  | Ron=fill(1e-5, m)
| Goff=fill(1e-5, m)
| Vknee=fill(0, m)
transformer2 |  | T1Ref=293.15
| alpha20_1(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| T2Ref=293.15
| alpha20_2(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| T1Operational=293.15
| T2Operational=293.15
transformerData2 |  | parameter
| f=50
| V1=100
| V2=100
| SNominal=30E3
| v_sc=0.05
| P_sc=300

Equations in Version 3.2 | Equations in Version 3.2.1
connect(diode3.plug_n, star3.plug_p); | initial equation
| transformer2.core.plug_p1.pin[1:3].i=zeros(3); equation &nbspconnect(diode3.plug_n, star3.plug_p);
connect(diode4.plug_p, star4.plug_p); ...

model Electrical.Machines.BasicMachines.AsynchronousInductionMachines.AIM_SquirrelCage

Component | Version 3.2 | Version 3.2.1
ir |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(airGapS.spacePhasor_r, squirrelCageR.spacePhasor_r);
connect(airGapS.support, internalSupport); |
connect(airGapS.flange, inertiaRotor.flange_a); ... connect(squirrelCageR.heatPort, internalThermalPort.heatPortRotorWinding);
| connect(airGapS.support, internalSupport);

model Electrical.Machines.BasicMachines.AsynchronousInductionMachines.AIM_SlipRing

Component | Version 3.2 | Version 3.2.1
lrsigma | final L=fill(Lrsigma, 2) | final L=fill(internalTurnsRatio^2*Lrsigma, 2)
lrzero | final L=Lrzero | final L=internalTurnsRatio^2*Lrzero
rotorCore |  | final useHeatPort=true
| final turnsRatio=internalTurnsRatio

Equations in Version 3.2 | Equations in Version 3.2.1
connect(airGapS.support, internalSupport); connect(airGapS.flange, inertiaRotor.flange_a); connect(plug_rn, plug_rn); |
connect(lssigma.spacePhasor_b, airGapS.spacePhasor_s); ... connect(plug_rp, rr.plug_p);
| connect(airGapS.flange, inertiaRotor.flange_a); connect(fixed.flange, internalSupport); connect(internalSupport, airGapS.support);

model Electrical.Machines.BasicMachines.SynchronousInductionMachines.SM_PermanentMagnet

Component | Version 3.2 | Version 3.2.1
idq_dr | SIunits.Current | Blocks.Interfaces.RealOutput
output |
permanentMagnet | Electrical.Machines.BasicMachines.Components.PermanentMagnet | Electrical.Machines.BasicMachines.Components.PermanentMagnetWithLosses
heatFlowSensorDamperCage | Present |
ir |  | Present
permanentMagnetLossParameters |  | Present
damperCageLossPower |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
| connect(ir, damperCage.i); connect(idq_dr, damperCage.i); connect(damperCageLossPower, damperCage.lossPower); if not useDamperCage then damperCageLossPower=0; end if;
connect(airGapR.spacePhasor_r, damperCage.spacePhasor_r); ... connect(airGapR.support, internalSupport);
| connect(lssigma.spacePhasor_b, airGapR.spacePhasor_s);
connect(airGapR.flange, inertiaRotor.flange_a);
connect(lssigma.spacePhasor_b, airGapR.spacePhasor_s); | connect(permanentMagnet.heatPort, internalThermalPort.heatPortPermanentMagnet);
connect(damperCage.heatPort, heatFlowSensorDamperCage.port_a); | connect(permanentMagnet.flange, inertiaRotor.flange_b);
connect(heatFlowSensorDamperCage.port_b, internalThermalPort.heatPortRotorWinding); | connect(damperCage.heatPort, internalThermalPort.heatPortRotorWinding);
| connect(internalSupport, permanentMagnet.support);

model Electrical.Machines.BasicMachines.SynchronousInductionMachines.SM_ElectricalExcited

Component | Version 3.2 | Version 3.2.1
idq_dr | SIunits.Current | Blocks.Interfaces.RealOutput
output |
brush |  | final useHeatPort=true
heatFlowSensorDamperCage | Present |
ir |  | Present
damperCageLossPower |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
| connect(ir, damperCage.i); connect(idq_dr, damperCage.i); connect(damperCageLossPower, damperCage.lossPower); if not useDamperCage then damperCageLossPower=0; end if;
connect(airGapR.spacePhasor_r, damperCage.spacePhasor_r);
connect(airGapR.spacePhasor_r, electricalExcitation.spacePhasor_r);
connect(airGapR.support, internalSupport); connect(airGapR.flange, inertiaRotor.flange_a); |
connect(electricalExcitation.pin_en, pin_en); ... connect(re.heatPort, internalThermalPort.heatPortExcitation);
connect(damperCage.heatPort, heatFlowSensorDamperCage.port_a); | connect(airGapR.flange, inertiaRotor.flange_a);
connect(heatFlowSensorDamperCage.port_b, internalThermalPort.heatPortRotorWinding); | connect(airGapR.support, internalSupport);
| connect(damperCage.heatPort, internalThermalPort.heatPortRotorWinding);

model Electrical.Machines.BasicMachines.SynchronousInductionMachines.SM_ReluctanceRotor

Component | Version 3.2 | Version 3.2.1
heatFlowSensorDamperCage | Present |
ir |  | Present
idq_dr |  | Present
damperCageLossPower |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
| connect(ir, damperCage.i); connect(idq_dr, damperCage.i); connect(damperCageLossPower, damperCage.lossPower); if not useDamperCage then damperCageLossPower=0; end if;
connect(airGapR.spacePhasor_r, damperCage.spacePhasor_r);
connect(airGapR.support, internalSupport);
| connect(lssigma.spacePhasor_b, airGapR.spacePhasor_s);
connect(airGapR.flange, inertiaRotor.flange_a);
connect(lssigma.spacePhasor_b, airGapR.spacePhasor_s); | connect(damperCage.heatPort, internalThermalPort.heatPortRotorWinding);
connect(damperCage.heatPort, heatFlowSensorDamperCage.port_a); connect(heatFlowSensorDamperCage.port_b, internalThermalPort.heatPortRotorWinding); |

model Electrical.Machines.BasicMachines.DCMachines.DC_ElectricalExcited

Component | Version 3.2 | Version 3.2.1
ie |  | start=0

model Electrical.Machines.BasicMachines.Components.DamperCage

Component | Version 3.2 | Version 3.2.1
i |  | Present
lossPower |  | Present

model Electrical.Machines.Sensors.VoltageQuasiRMSSensor

Component | Version 3.2 | Version 3.2.1
V |  | final quantity="ElectricPotential"
| final unit="V"

model Electrical.Machines.Sensors.CurrentQuasiRMSSensor

Component | Version 3.2 | Version 3.2.1
I |  | final quantity="ElectricCurrent"
| final unit="A"

model Electrical.Machines.Sensors.ElectricalPowerSensor

Component | Version 3.2 | Version 3.2.1
P |  | final quantity="Power"
| final unit="W"
Q |  | final quantity="Power"
| final unit="var"

model Electrical.Machines.Sensors.MechanicalPowerSensor

Component | Version 3.2 | Version 3.2.1
P |  | final quantity="Power"
| final unit="W"

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(torqueSensor.flange_b, flange_b);
connect(product.y, P); connect(torqueSensor.tau, product.u2); |
connect(flange_a, relSpeedSensor.flange_b);
connect(relSpeedSensor.w_rel, product.u1); |
connect(relSpeedSensor.flange_a, fixed.flange);
connect(relSpeedSensor.flange_a, support);
| connect(relSpeedSensor.w_rel, product.u1); connect(torqueSensor.tau, product.u2); connect(product.y, P);

model Electrical.Machines.Sensors.RotorDisplacementAngle

Component | Version 3.2 | Version 3.2.1
rotorDisplacementAngle |  | final quantity="Angle"
| final unit="rad"

Equations in Version 3.2 | Equations in Version 3.2.1
connect(constant_.y, add.u2); connect(add.y, rotatorVS2R.angle); connect(ToSpacePhasorVS.y, rotatorVS2R.u); connect(rotatorVS2R.y, ToPolarVSR.u); connect(ToPolarVSR.y, deMultiplex2.u); |
connect(plug_p, VoltageSensor1.plug_p);
connect(plug_n, VoltageSensor1.plug_n);
connect(VoltageSensor1.v, ToSpacePhasorVS.u); connect(deMultiplex2.y2[1], rotorDisplacementAngle); connect(relativeAngleSensor.phi_rel, add.u1); |
connect(relativeAngleSensor.flange_b, flange); ... connect(relativeAngleSensor.flange_a, fixed.flange);
| connect(relativeAngleSensor.phi_rel, add.u1); connect(constant_.y, add.u2); connect(VoltageSensor1.v, ToSpacePhasorVS.u); connect(ToSpacePhasorVS.y, rotatorVS2R.u); connect(rotatorVS2R.y, ToPolarVSR.u); connect(add.y, rotatorVS2R.angle); connect(ToPolarVSR.y, deMultiplex2.u); connect(deMultiplex2.y2[1], rotorDisplacementAngle);

function Electrical.Machines.SpacePhasors.Functions.ToSpacePhasor

Component | Version 3.2 | Version 3.2.1
m |  | protected
pi | Real | SIunits.Angle
| protected

function Electrical.Machines.SpacePhasors.Functions.FromSpacePhasor

Component | Version 3.2 | Version 3.2.1
m |  | protected
pi | Real | SIunits.Angle
| protected

function Electrical.Machines.SpacePhasors.Functions.ToPolar

Component | Version 3.2 | Version 3.2.1
small |  | protected

function Electrical.Machines.SpacePhasors.Functions.FromPolar

Component | Version 3.2 | Version 3.2.1
pi | Real | SIunits.Angle
| protected
small |  | protected

function Electrical.Machines.SpacePhasors.Functions.quasiRMS

Component | Version 3.2 | Version 3.2.1
m |  | protected
pi | Real | SIunits.Angle
| protected

function Electrical.Machines.SpacePhasors.Functions.activePower

Component | Version 3.2 | Version 3.2.1
m |  | protected
pi |  | Present

record Electrical.Machines.Losses.FrictionParameters

Component | Version 3.2 | Version 3.2.1
PRef | start=0 |
| =0

record Electrical.Machines.Losses.BrushParameters

Component | Version 3.2 | Version 3.2.1
V | start=0 |
| =0

record Electrical.Machines.Losses.StrayLoadParameters

Component | Version 3.2 | Version 3.2.1
PRef | start=0 |
| =0

record Electrical.Machines.Losses.CoreParameters

Component | Version 3.2 | Version 3.2.1
PRef | start=0 |
| =0

model Electrical.Machines.Losses.Friction

Component | Version 3.2 | Version 3.2.1
heatPort | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
heatPort.Q_flow = tau*w; | lossPower = -tau*w;

model Electrical.Machines.Losses.InductionMachines.Brush

Component | Version 3.2 | Version 3.2.1
brush |  | each final useHeatPort=true
heatPort | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
... for j in 1:m loop
connect(brush[j].heatPort, heatPort); | connect(brush[j].heatPort, internalHeatPort);
end for;

model Electrical.Machines.Losses.InductionMachines.StrayLoad

Component | Version 3.2 | Version 3.2.1
iRMS | =Machines.SpacePhasors.Functions.quasiRMS(i) | =quasiRMS(i)
heatPort | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
heatPort.Q_flow = tau*w; | lossPower = -tau*w;

model Electrical.Machines.Losses.InductionMachines.Core

Component | Version 3.2 | Version 3.2.1
coreParameters | final m=3 | final m=m
heatPort | Present |
m |  | Present
turnsRatio |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
heatPort.Q_flow = -3/2*(+spacePhasor.v_[1]*spacePhasor.i_[1]+spacePhasor.v_[2]*spacePhasor.i_[2]); | lossPower = 3/2*(+spacePhasor.v_[1]*spacePhasor.i_[1]+spacePhasor.v_[2]*spacePhasor.i_[2]);

model Electrical.Machines.Losses.DCMachines.Brush

Component | Version 3.2 | Version 3.2.1
heatPort | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
heatPort.Q_flow = -v*i; | lossPower = v*i;

model Electrical.Machines.Losses.DCMachines.StrayLoad

Component | Version 3.2 | Version 3.2.1
heatPort | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
heatPort.Q_flow = tau*w; | lossPower = -tau*w;

model Electrical.Machines.Losses.DCMachines.Core

Component | Version 3.2 | Version 3.2.1
heatPort | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
heatPort.Q_flow = -v*i; | lossPower = v*i;

model Electrical.Machines.Thermal.AsynchronousInductionMachines.ThermalAmbientAIMS

Component | Version 3.2 | Version 3.2.1
thermalCollectorRotor | m=thermalPort.m |
| final m=mr
mr |  | Present

model Electrical.Machines.Interfaces.PartialBasicMachine

Component | Version 3.2 | Version 3.2.1
phiMechanical |  | start=0
wMechanical |  | start=0

model Electrical.Machines.Interfaces.PartialBasicInductionMachine

Component | Version 3.2 | Version 3.2.1
strayLoadParameters | wRef(start=2*pi*fsNominal/p) |
| wRef=2*pi*fsNominal/p
powerBalance | final lossPowerStatorWinding=-sum(rs.heatPort.Q_flow) | final lossPowerStatorWinding=sum(rs.resistor.LossPower)
final lossPowerStatorCore=-statorCore.heatPort.Q_flow | final lossPowerStatorCore=statorCore.lossPower
final lossPowerStrayLoad=-strayLoad.heatPort.Q_flow | final lossPowerStrayLoad=strayLoad.lossPower
final lossPowerFriction=-friction.heatPort.Q_flow | final lossPowerFriction=friction.lossPower
statorCore |  | final useHeatPort=true
| final turnsRatio=1
strayLoad |  | final useHeatPort=true
| final m=m

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(strayLoad.plug_p, plug_sp);
connect(strayLoad.flange, inertiaRotor.flange_b); |
connect(strayLoad.support, internalSupport); ... connect(friction.heatPort, internalThermalPort.heatPortFriction);
| connect(strayLoad.flange, inertiaRotor.flange_b);

connector Electrical.Machines.Interfaces.InductionMachines.PartialThermalPortInductionMachines

Component | Version 3.2 | Version 3.2.1
connector | partial |

model Electrical.Machines.Interfaces.InductionMachines.PartialThermalAmbientInductionMachines

Component | Version 3.2 | Version 3.2.1
model | partial |

record Electrical.Machines.Interfaces.InductionMachines.PartialPowerBalanceInductionMachines

Component | Version 3.2 | Version 3.2.1
record | partial |
powerStator |  | =0
powerMechanical |  | =0
powerInertiaStator |  | =0
powerInertiaRotor |  | =0
lossPowerTotal |  | =0
lossPowerStatorWinding |  | =0
lossPowerStatorCore |  | =0
lossPowerRotorCore |  | =0
lossPowerStrayLoad |  | =0
lossPowerFriction |  | =0

connector Electrical.Machines.Interfaces.InductionMachines.ThermalPortAIMS

Component | Version 3.2 | Version 3.2.1
mr |  | Present

model Electrical.Machines.Interfaces.PartialBasicDCMachine

Component | Version 3.2 | Version 3.2.1
powerBalance | final lossPowerArmature=-ra.heatPort.Q_flow | final lossPowerArmature=ra.LossPower
final lossPowerCore=-core.heatPort.Q_flow | final lossPowerCore=core.lossPower
final lossPowerStrayLoad=-strayLoad.heatPort.Q_flow | final lossPowerStrayLoad=strayLoad.lossPower
final lossPowerFriction=-friction.heatPort.Q_flow | final lossPowerFriction=friction.lossPower
final lossPowerBrush=-brush.heatPort.Q_flow | final lossPowerBrush=brush.lossPower
ia |  | start=0
brush |  | final useHeatPort=true
core |  | final useHeatPort=true
strayLoad |  | final useHeatPort=true

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(strayLoad.n, ra.p);
connect(strayLoad.flange, inertiaRotor.flange_b); |
connect(strayLoad.support, internalSupport); ... connect(ra.heatPort, internalThermalPort.heatPortArmature);
| connect(inertiaRotor.flange_b, strayLoad.flange);

connector Electrical.Machines.Interfaces.DCMachines.PartialThermalPortDCMachines

Component | Version 3.2 | Version 3.2.1
connector | partial |

model Electrical.Machines.Interfaces.DCMachines.PartialThermalAmbientDCMachines

Component | Version 3.2 | Version 3.2.1
model | partial |

record Electrical.Machines.Interfaces.DCMachines.PartialPowerBalanceDCMachines

Component | Version 3.2 | Version 3.2.1
record | partial |
powerArmature |  | =0
powerMechanical |  | =0
powerInertiaStator |  | =0
powerInertiaRotor |  | =0
lossPowerTotal |  | =0
lossPowerArmature |  | =0
lossPowerCore |  | =0
lossPowerStrayLoad |  | =0
lossPowerFriction |  | =0
lossPowerBrush |  | =0

model Electrical.Machines.Interfaces.PartialBasicTransformer

Component | Version 3.2 | Version 3.2.1
powerBalance | final lossPower1=-sum(r1.heatPort.Q_flow) | final lossPower1=sum(r1.resistor.LossPower)
final lossPower2=-sum(r2.heatPort.Q_flow) | final lossPower2=sum(r2.resistor.LossPower)

block Electrical.Machines.Utilities.VfController

Component | Version 3.2 | Version 3.2.1
orientation |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... der(x) = 2*pi*u;
y = {amplitude*sin(x + BasePhase - (k - 1)*2/m*pi) for k in 1:m}; | y = amplitude*sin(fill(x + BasePhase, m) + orientation);

model Electrical.Machines.Utilities.SwitchYD

Component | Version 3.2 | Version 3.2.1
idealCommutingSwitch |  | Ron=fill(1e-5, m)
| Goff=fill(1e-5, m)

model Electrical.Machines.Utilities.SwitchedRheostat

Component | Version 3.2 | Version 3.2.1
idealCommutingSwitch |  | Ron=fill(1e-5, m)
| Goff=fill(1e-5, m)

model Electrical.MultiPhase.Examples.TransformerYY

Component | Version 3.2 | Version 3.2.1
idealTransformer |  | Lm1=fill(Lm, m)
| n=fill(nT, m)
Lm |  | Present
nT |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(starS.pin_n, groundS.p); | initial equation
| transformerL.i[1:m-1]=zeros(m-1) "Y-connection"; equation &nbspconnect(starS.pin_n, groundS.p);
connect(starT1.pin_n,groundT1. p); ...

model Electrical.MultiPhase.Examples.TransformerYD

Component | Version 3.2 | Version 3.2.1
idealTransformer |  | Lm1=fill(Lm, m)
Lm |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(groundS.p, starS.pin_n); | initial equation
| transformerL.i[1:m]=zeros(m) "D-connection"; equation &nbspconnect(groundS.p, starS.pin_n);
connect(groundT.p, starT.pin_n); ...

model Electrical.MultiPhase.Examples.Rectifier

Component | Version 3.2 | Version 3.2.1
idealDiode1 |  | Ron=fill(Ron, m)
| Goff=fill(Goff, m)
| Vknee=fill(Vknee, m)
idealDiode2 |  | Ron=fill(Ron, m)
| Goff=fill(Goff, m)
| Vknee=fill(Vknee, m)
Ron |  | Present
Goff |  | Present
Vknee |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(cDC1.n, cDC2.p); | initial equation
| cDC1.v=0; cDC2.v=0; supplyL.i[1:m-1]=zeros(m-1) "Y-connection"; equation &nbspconnect(cDC1.n, cDC2.p);
connect(cDC1.n, groundDC.p); ...

model Electrical.MultiPhase.Basic.VariableResistor

Component | Version 3.2 | Version 3.2.1
R |  | each unit="Ohm"

model Electrical.MultiPhase.Basic.VariableConductor

Component | Version 3.2 | Version 3.2.1
G |  | each unit="S"

model Electrical.MultiPhase.Basic.VariableCapacitor

Component | Version 3.2 | Version 3.2.1
C |  | each unit="F"

model Electrical.MultiPhase.Basic.VariableInductor

Component | Version 3.2 | Version 3.2.1
L |  | each unit="H"

model Electrical.MultiPhase.Sensors.PowerSensor

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(voltageSensor.plug_n, nv);
| connect(voltageSensor.v, product.u1);
connect(currentSensor.i, product.u2);
connect(product.u1, voltageSensor.v); |
connect(product.y, sum.u); ...

model Electrical.MultiPhase.Sources.SignalVoltage

Component | Version 3.2 | Version 3.2.1
v |  | each unit="V"

model Electrical.MultiPhase.Sources.SineVoltage

Component | Version 3.2 | Version 3.2.1
phase | =-{(j - 1)/m*2*Modelica_3_2.Constants.pi for j in 1:m} | =-Modelica.Electrical.MultiPhase.Functions.symmetricOrientation(m)

model Electrical.MultiPhase.Sources.SignalCurrent

Component | Version 3.2 | Version 3.2.1
i |  | each unit="A"

model Electrical.MultiPhase.Sources.SineCurrent

Component | Version 3.2 | Version 3.2.1
phase | =-{(j - 1)/m*2*Modelica_3_2.Constants.pi for j in 1:m} | =-Modelica.Electrical.MultiPhase.Functions.symmetricOrientation(m)

model Electrical.QuasiStationary.SinglePhase.Examples.SeriesResonance

Equations in Version 3.2 | Equations in Version 3.2.1
connect(f.y, voltageSource.f); | initial equation
| voltageSource.pin_p.reference.gamma=0; equation &nbspconnect(f.y, voltageSource.f);
connect(polarToComplex.y, voltageSource.V); ...

model Electrical.QuasiStationary.SinglePhase.Examples.ParallelResonance

Component | Version 3.2 | Version 3.2.1
I |  | k=1

Equations in Version 3.2 | Equations in Version 3.2.1
connect(currentSource.pin_n, resistor.pin_p); | initial equation
| currentSource.pin_p.reference.gamma=0; equation &nbspconnect(currentSource.pin_n, resistor.pin_p);
connect(currentSource.pin_n, inductor.pin_p); ...

model Electrical.QuasiStationary.SinglePhase.Examples.Rectifier

Component | Version 3.2 | Version 3.2.1
voltageQS |  | phi=0
| i(re(start=0), im(start=0))

Equations in Version 3.2 | Equations in Version 3.2.1
connect(voltageQS.pin_p, resistorQS.pin_p); | initial equation
| voltageQS.pin_p.reference.gamma=0; equation &nbspconnect(voltageQS.pin_p, resistorQS.pin_p);
connect(voltageQS.pin_n, rectifierQS.pin_nQS); ...

model Electrical.QuasiStationary.SinglePhase.Basic.VariableResistor

Component | Version 3.2 | Version 3.2.1
R_ref |  | unit="Ohm"

model Electrical.QuasiStationary.SinglePhase.Basic.VariableConductor

Component | Version 3.2 | Version 3.2.1
G_ref |  | unit="S"

model Electrical.QuasiStationary.SinglePhase.Basic.VariableCapacitor

Component | Version 3.2 | Version 3.2.1
C |  | unit="F"

model Electrical.QuasiStationary.SinglePhase.Basic.VariableInductor

Component | Version 3.2 | Version 3.2.1
L |  | unit="H"

model Electrical.QuasiStationary.SinglePhase.Interfaces.TwoPin

Component | Version 3.2 | Version 3.2.1
omega | =der(pin_p.reference.gamma) |

Equations in Version 3.2 | Equations in Version 3.2.1
... pin_p.reference.gamma = pin_n.reference.gamma;
| omega = der(pin_p.reference.gamma); v = pin_p.v - pin_n.v;
i = pin_p.i;
v = pin_p.v - pin_n.v; |

model Electrical.QuasiStationary.SinglePhase.Interfaces.AbsoluteSensor

Component | Version 3.2 | Version 3.2.1
omega | =der(pin.reference.gamma) |

Equations in Version 3.2 | Equations in Version 3.2.1
| omega = der(pin.reference.gamma);
pin.i = Complex(0);

model Electrical.QuasiStationary.SinglePhase.Utilities.GraetzRectifier

Component | Version 3.2 | Version 3.2.1
idealDiode1 |  | Vknee=0
idealDiode2 |  | Vknee=0
idealDiode3 |  | Vknee=0
idealDiode4 |  | Vknee=0

model Electrical.QuasiStationary.Machines.Examples.TransformerTestbench

Component | Version 3.2 | Version 3.2.1
RL | sizes= 3 | sizes= -1
=fill(1/3, 3) | =fill(1/3, m)
source |  | m=m
starS |  | m=m
electricalPowerSensorS |  | m=m
currentSensorS |  | m=m
polarIS | sizes= 3 | sizes= -1
voltageSensorS |  | m=m
polarVS | sizes= 3 | sizes= -1
deltaS |  | m=m
voltageSensorL |  | m=m
polarVL | sizes= 3 | sizes= -1
deltaL |  | m=m
currentSensorL |  | m=m
polarIL | sizes= 3 | sizes= -1
electricalPowerSensorL |  | m=m
load |  | m=m
starL |  | m=m
transformerData |  | f=50
| V1=100
| V2=100
| SNominal=30E3
| v_sc=0.05
| P_sc=300
transformer |  | T1Ref=293.15
| alpha20_1(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| T2Ref=293.15
| alpha20_2(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Zero
| T1Operational=293.15
| T2Operational=293.15
m |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(starS.pin_n, groundS.pin); | initial equation
| source.voltageSource.pin_p.reference.gamma=zeros(m); equation &nbspconnect(starS.pin_n, groundS.pin);
connect(source.plug_n, starS.plug_p); ...

model Electrical.QuasiStationary.Machines.BasicMachines.Components.PartialCore

Component | Version 3.2 | Version 3.2.1
v1 | =plug_p1.pin.v - plug_n1.pin.v |
i1 | =plug_p1.pin.i |
v2 | =plug_p2.pin.v - plug_n2.pin.v |
i2 | =plug_p2.pin.i |
v3 | =plug_p3.pin.v - plug_n3.pin.v |
i3 | =plug_p3.pin.i |
im | =i1 + i2/n12 + i3/n13 |

Equations in Version 3.2 | Equations in Version 3.2.1
| v1 = plug_p1.pin.v - plug_n1.pin.v; i1 = plug_p1.pin.i; v2 = plug_p2.pin.v - plug_n2.pin.v; i2 = plug_p2.pin.i; v3 = plug_p3.pin.v - plug_n3.pin.v; i3 = plug_p3.pin.i; im = i1 + i2/n12 + i3/n13;
Connections.branch(plug_p1.reference, plug_n1.reference); ...

model Electrical.QuasiStationary.Machines.Interfaces.PartialBasicTransformer

Component | Version 3.2 | Version 3.2.1
powerBalance | final lossPower1=-sum(r1.heatPort.Q_flow) | final lossPower1=-sum(r1.resistor.LossPower)
final lossPower2=-sum(r2.heatPort.Q_flow) | final lossPower2=-sum(r2.resistor.LossPower)

model Electrical.QuasiStationary.MultiPhase.Examples.BalancingStar

Component | Version 3.2 | Version 3.2.1
voltageSource | phi={-(j - 1)*2*Modelica_3_2.Constants.pi/m for j in 1:m} | phi=-Modelica.Electrical.MultiPhase.Functions.symmetricOrientation(m)

Equations in Version 3.2 | Equations in Version 3.2.1
connect(ground.pin, star.pin_n); | initial equation
| voltageSource.voltageSource.pin_p.reference.gamma=zeros(m); equation &nbspconnect(ground.pin, star.pin_n);
connect(star.plug_p, voltageSource.plug_n); ...

model Electrical.QuasiStationary.MultiPhase.Examples.BalancingDelta

Component | Version 3.2 | Version 3.2.1
voltageSource | phi={-(j - 1)*2*Modelica_3_2.Constants.pi/m for j in 1:m} | phi=-Modelica.Electrical.MultiPhase.Functions.symmetricOrientation(m)

Equations in Version 3.2 | Equations in Version 3.2.1
connect(ground.pin, star.pin_n); | initial equation
| voltageSource.voltageSource.pin_p.reference.gamma=zeros(m); equation &nbspconnect(ground.pin, star.pin_n);
connect(star.plug_p, voltageSource.plug_n); ...

model Electrical.QuasiStationary.MultiPhase.Basic.Star

Component | Version 3.2 | Version 3.2.1
plugToPins_p |  | final m=m

model Electrical.QuasiStationary.MultiPhase.Basic.Delta

Component | Version 3.2 | Version 3.2.1
plugToPins_p |  | final m=m
plugToPins_n |  | final m=m

model Electrical.QuasiStationary.MultiPhase.Basic.VariableResistor

Component | Version 3.2 | Version 3.2.1
R_ref |  | each unit="Ohm"

model Electrical.QuasiStationary.MultiPhase.Basic.VariableConductor

Component | Version 3.2 | Version 3.2.1
G_ref |  | each unit="S"

model Electrical.QuasiStationary.MultiPhase.Basic.VariableCapacitor

Component | Version 3.2 | Version 3.2.1
C |  | each unit="F"

model Electrical.QuasiStationary.MultiPhase.Basic.VariableInductor

Component | Version 3.2 | Version 3.2.1
L |  | each unit="H"

model Electrical.QuasiStationary.MultiPhase.Sensors.FrequencySensor

Component | Version 3.2 | Version 3.2.1
potentialSensor | Present |
plugToPins_p | Present |
frequencySensor |  | Present
plugToPin_p |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(plug_p, plugToPins_p.plug_p); | connect(plug_p, plugToPin_p.plug_p);
connect(plugToPins_p.pin_p, potentialSensor.pin); | connect(plugToPin_p.pin_p, frequencySensor.pin);
connect(potentialSensor.y, y); | connect(frequencySensor.y, y);

model Electrical.QuasiStationary.MultiPhase.Sensors.PowerSensor

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(sum.y, y);
connect(currentP, currentP); |

model Electrical.QuasiStationary.MultiPhase.Sources.VoltageSource

Component | Version 3.2 | Version 3.2.1
phi | ={0 - (j - 1)*2*pi/m for j in 1:m} | =-Modelica.Electrical.MultiPhase.Functions.symmetricOrientation(m)

model Electrical.QuasiStationary.MultiPhase.Sources.CurrentSource

Component | Version 3.2 | Version 3.2.1
phi | ={0 - (j - 1)*2*pi/m for j in 1:m} | =-Modelica.Electrical.MultiPhase.Functions.symmetricOrientation(m)

model Electrical.QuasiStationary.MultiPhase.Interfaces.TwoPlug

Component | Version 3.2 | Version 3.2.1
omega | =der(plug_p.reference.gamma) |

Equations in Version 3.2 | Equations in Version 3.2.1
| omega = der(plug_p.reference.gamma);
v = plug_p.pin.v - plug_n.pin.v; ...

model Electrical.QuasiStationary.MultiPhase.Interfaces.OnePort

Component | Version 3.2 | Version 3.2.1
omega | =der(plug_p.reference.gamma) |

Equations in Version 3.2 | Equations in Version 3.2.1
... plug_p.reference.gamma = plug_n.reference.gamma;
| omega = der(plug_p.reference.gamma);
v = plug_p.pin.v - plug_n.pin.v; ...

model Electrical.QuasiStationary.MultiPhase.Interfaces.AbsoluteSensor

Component | Version 3.2 | Version 3.2.1
omega | =der(plug_p.reference.gamma) |

Equations in Version 3.2 | Equations in Version 3.2.1
| omega = der(plug_p.reference.gamma);

model Electrical.Spice3.Examples.Inverter

Component | Version 3.2 | Version 3.2.1
mp |  | Sinternal(start=0)
| IC=-1e40
mn |  | IC=-1e40

model Electrical.Spice3.Examples.InvertersApartRecord

Component | Version 3.2 | Version 3.2.1
MPmos |  | CBD=0
| CBS=0
MNmos |  | CBD=0
| CBS=0
mp1 |  | IC=-1e40
mn1 |  | IC=-1e40
mp2 |  | IC=-1e40
mn2 |  | IC=-1e40
c1 |  | IC=0
| UIC=true
c2 |  | IC=0
| UIC=true

model Electrical.Spice3.Examples.InvertersExtendedModel

Component | Version 3.2 | Version 3.2.1
mp1 |  | IC=-1e40
mn1 |  | IC=-1e40
mp2 |  | IC=-1e40
mn2 |  | IC=-1e40
c1 |  | IC=0
| UIC=true
c2 |  | IC=0
| UIC=true

model Electrical.Spice3.Examples.FourInverters

Component | Version 3.2 | Version 3.2.1
modp |  | CBD=0
| CBS=0
modn |  | CBD=0
| CBS=0
mp1 |  | IC=-1e40
mn1 |  | IC=-1e40
mp2 |  | IC=-1e40
mn2 |  | IC=-1e40
mp3 |  | IC=-1e40
mp4 |  | IC=-1e40
mn3 |  | IC=-1e40
mn4 |  | IC=-1e40
c1 |  | IC=0
| UIC=true
c2 |  | IC=0
| UIC=true
c3 |  | IC=0
| UIC=true
c4 |  | IC=0
| UIC=true

model Electrical.Spice3.Examples.Nand

Component | Version 3.2 | Version 3.2.1
mp1 | modelcard(PHI=0.7) | modelcard(PHI=0.7, CBD=0, CBS=0)
| Sinternal(start=0)
| IC=-1e40
mp2 | modelcard(PHI=0.7) | modelcard(PHI=0.7, CBD=0, CBS=0)
| IC=-1e40
mn2 |  | Dinternal(start=0)
| modelcard(CBD=0, CBS=0)
| IC=-1e40
mn1 |  | modelcard(CBD=0, CBS=0)
| IC=-1e40

model Electrical.Spice3.Examples.Nor

Component | Version 3.2 | Version 3.2.1
mp1 |  | Dinternal(start=0, fixed=true)
| Sinternal(start=0, fixed=true)
| IC=-1e40
mp2 |  | Dinternal(start=0, fixed=true)
| Sinternal(start=0, fixed=true)
| IC=-1e40
mn1 |  | Dinternal(start=0, fixed=true)
| Sinternal(start=0, fixed=true)
| IC=-1e40
mn2 |  | Dinternal(start=0, fixed=true)
| Sinternal(start=0, fixed=true)
| IC=-1e40

model Electrical.Spice3.Examples.Graetz

Component | Version 3.2 | Version 3.2.1
D1 |  | IC=-1e40
| SENS_AREA=false
| pin(start=0, fixed=true)
D3 |  | IC=-1e40
| SENS_AREA=false
| n(v(start=0, fixed=true))
D4 |  | IC=-1e40
| SENS_AREA=false
D2 |  | IC=-1e40
| SENS_AREA=false

model Electrical.Spice3.Examples.Oscillator

Component | Version 3.2 | Version 3.2.1
T1 |  | vbe(start=0, fixed=true)
T2 |  | vbe(start=0, fixed=true)

model Electrical.Spice3.Basic.C_Capacitor

Component | Version 3.2 | Version 3.2.1
vinternal | start=IC |
fixed=UIC |

Equations in Version 3.2 | Equations in Version 3.2.1
vinternal = p.v - n.v; | initial equation
i = C*der(vinternal); | vinternal=IC;
| equation &nbspvinternal = p.v - n.v; i = C*der(vinternal);

model Electrical.Spice3.Basic.L_Inductor

Component | Version 3.2 | Version 3.2.1
iinternal | start=IC |
fixed=UIC |
ICP |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
iinternal = p.i; | initial equation
L*der(iinternal) = v; | if UIC then
| iinternal = IC; else der(iinternal) = 0; end if; equation &nbspiinternal = p.i; L*der(iinternal) = v + ICP.v; ICP.L=L; ICP.di = der(iinternal);

model Electrical.Spice3.Sources.V_pulse

Component | Version 3.2 | Version 3.2.1
counter |  | fixed=true
counter2 |  | fixed=true

model Electrical.Spice3.Sources.V_pwl

Component | Version 3.2 | Version 3.2.1
tab |  | protected
table=table | table=tablenew
x |  | Present
tlast |  | Present
valuelast |  | Present
lastvaluematrix |  | Present
tablenew |  | Present

model Electrical.Spice3.Sources.I_pwl

Component | Version 3.2 | Version 3.2.1
tab |  | protected
table=table | table=tablenew
x |  | Present
tlast |  | Present
valuelast |  | Present
lastvaluematrix |  | Present
tablenew |  | Present

model Electrical.Spice3.Internal.MOS

Component | Version 3.2 | Version 3.2.1
C |  | constant
Dinternal | Real | SIunits.Voltage
Sinternal | Real | SIunits.Voltage
ird | Real | SIunits.Current
irs | Real | SIunits.Current
ibdgmin | Real | SIunits.Current
ibsgmin | Real | SIunits.Current
icBD | Real | SIunits.Current
icBS | Real | SIunits.Current
icGB | Real | SIunits.Current
icGS | Real | SIunits.Current
icGD | Real | SIunits.Current

record Electrical.Spice3.Internal.ModelcardMOS

Component | Version 3.2 | Version 3.2.1
TNOM | =-1e40 | =27

model Electrical.Spice3.Internal.MOS2

Component | Version 3.2 | Version 3.2.1
TEMP | Real | SIunits.Temp_C
p | =Mos2.mos2RenameParameters(modelcard, C) | =Spice3.Internal.Mos2.mos2RenameParametersRevised(modelcard)
m | =Mos2.mos2RenameParametersDev(modelcard, mtype, W, L, AD, AS, PD, PS, NRD, NRS, OFF, IC, TEMP) | =Spice3.Internal.Mosfet.mosfetRenameParametersDev(W, L, AD, AS, PD, PS, NRD, NRS, OFF, IC_VDS, IC_VGS, IC_VBS, UIC, TEMP)
vp | =Mos2.mos2ModelLineParamsInitEquations(p, C, m_type) | =Spice3.Internal.Mos2.mos2ModelLineParamsInitEquations(p, C, m_type)
c1 | =Mos.mos2CalcInitEquations(p, C, vp, m) | =Spice3.Internal.Mos.mos2CalcInitEquations(p, C, vp, m)
c2 | =Mos.mos2CalcCalcTempDependencies(p, C, vp, m, c1, m_type) | =Spice3.Internal.Mos.mos2CalcCalcTempDependencies(p, C, vp, m, c1, m_type)
Dinternal | Real | SIunits.Voltage
Sinternal | Real | SIunits.Voltage
ird | Real | SIunits.Current
irs | Real | SIunits.Current
ibdgmin | Real | SIunits.Current
ibsgmin | Real | SIunits.Current
icBD | Real | SIunits.Current
icBS | Real | SIunits.Current
icGB | Real | SIunits.Current
icGS | Real | SIunits.Current
icGD | Real | SIunits.Current
IC_VDS |  | Present
IC_VGS |  | Present
IC_VBS |  | Present
UIC |  | Present
m1 |  | Present
p1 |  | Present
c11 |  | Present
c22 |  | Present
vBD |  | Present
vBS |  | Present
vGB |  | Present
vGD |  | Present
cc_obsolete |  | Present
p_obsolete |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... assert( NRS <> 0, "NRS, length of source in squares, must not be zero");
| cc = Spice3.Internal.Mos.mos2CalcNoBypassCodeRevised( &nbspm1, &nbspm_type, &nbspc22, &nbspp1, &nbspm_bInit, {G.v,B.v,Dinternal,Sinternal}); vBD = B.v - Dinternal; vBS = B.v - Sinternal; vGB = G.v - B.v; vGD = G.v - Dinternal; vGS = G.v - Sinternal; ird * c11.m_drainResistance = (D.v - Dinternal); irs * c11.m_sourceResistance = (S.v - Sinternal); icBD = cc.cBD * der(vBD); icBS = cc.cBS * der(vBS); icGB = cc.cGB * der(vGB); icGD = cc.cGD * der(vGD); icGS = cc.cGS * der(vGS); ibsgmin = Spice3.Internal.SpiceConstants.CKTgmin*(B.v - &nbspSinternal); ibdgmin = Spice3.Internal.SpiceConstants.CKTgmin*(B.v - &nbspDinternal); G.i = icGB + icGD + icGS; B.i = cc.iBD + cc.iBS+ ibdgmin + ibsgmin -icGB + icBD + icBS; D.i = ird; S.i = irs; 0 = -ird + cc.idrain - cc.iBD - ibdgmin - icGD - icBD; 0 = -irs - cc.idrain - cc.iBS - ibsgmin - icGS - icBS;
vDS = D.v - S.v;
vGS = G.v - S.v; | (cc_obsolete,qm) = Spice3.Internal.Mos.mos2CalcNoBypassCode( m, m_type, c2, p, C, vp, m_bInit, {G.v,B.v,Dinternal,Sinternal});
(cc,qm) = Mos.mos2CalcNoBypassCode( m, m_type, c2, p, C, vp, m_bInit, {G.v,B.v,Dinternal,Sinternal}); | icqmGB = 0;
ird * c1.m_drainResistance = (D.v - Dinternal); | icqmGS = 0;
irs * p.m_sourceResistance = (S.v - Sinternal); | icqmGD = 0;
icBD = cc.cBD * (der(B.v) - der(Dinternal)); icBS = cc.cBS * (der(B.v) - der(Sinternal)); icGB = cc.cGB * (der(G.v) - der(B.v)); icGD = cc.cGD * (der(G.v) - der(Dinternal)); icGS = cc.cGS * (der(G.v) - der(Sinternal)); icqmGB = qm.qm_capgb*(der(G.v) - der(B.v)); icqmGS = qm.qm_capgs*(der(G.v) - der(Sinternal)); icqmGD = qm.qm_capgd*(der(G.v) - der(Dinternal)); ibsgmin = SpiceConstants.CKTgmin*(B.v - Sinternal); ibdgmin = SpiceConstants.CKTgmin*(B.v - Dinternal); G.i = icGB + icGD + icGS + icqmGB + icqmGD + icqmGS; B.i = cc.iBD + cc.iBS+ ibdgmin + ibsgmin -icGB + icBD + icBS - icqmGB; D.i = ird; S.i = irs; 0 = -ird + cc.idrain - cc.iBD - ibdgmin - icGD - icBD - icqmGD; 0 = -irs - cc.idrain - cc.iBS - ibsgmin - icGS - icBS - icqmGS; |

record Electrical.Spice3.Internal.ModelcardMOS2

Component | Version 3.2 | Version 3.2.1
NFS | Real | SIunits.Conversions.NonSIunits.PerArea_cm
XJ | Real | SIunits.Length
UCRIT | Real | Electrical.Spice3.Types.ElectricFieldStrength_cm
VMAX | Real | SIunits.Velocity

model Electrical.Spice3.Internal.BJT

Component | Version 3.2 | Version 3.2.1
p | =Bjt3.bjtRenameParameters(modelcard, Con) | =Spice3.Internal.Bjt3.bjtRenameParameters(modelcard, Con, TBJT)
p1 | =Bjt3.bjtRenameParametersDev(AREA, OFF, IC_VBE, IC_VCE, SENS_AREA) | =Spice3.Internal.Bjt3.bjtRenameParametersDev(AREA, OFF, IC_VBE, IC_VCE, SENS_AREA)
m | =Bjt3.bjtRenameParametersDevTemp(TEMP) | =Spice3.Internal.Bjt3.bjtRenameParametersDevTemp(TEMP)
vl | =Bjt3.bjtModelLineInitEquations(p) | =Spice3.Internal.Bjt3.bjtModelLineInitEquations(p)
c | =Bjt3.bjt3CalcTempDependencies(p1, p, m, vl) | =Spice3.Internal.Bjt3.bjt3CalcTempDependencies(p1, p, m, vl)
v | =Bjt3.bjtInitEquations(p1, p, vl) | =Spice3.Internal.Bjt3.bjtInitEquations(p1, p, vl)
p2 | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
... vBC = B.v - C.v;
(cc,capbe,capbc,capbx) = Bjt3.bjtNoBypassCode( m, p1, p, c, v, vl, {C.v,B.v,E.v,Cinternal,Binternal,Einternal}, m_bInit); | (cc,capbe,capbc,capbx) = Spice3.Internal.Bjt3.bjtNoBypassCode( m, p1, p, c, v, vl, {C.v,B.v,E.v,Cinternal,Binternal,Einternal}, m_bInit);
icapbe = if (m_bInit) then 0.0 else capbe*(der(Binternal) - der(Einternal)); ... irb * p.m_baseResist = (B.v - Binternal);
ibcgmin = SpiceConstants.CKTgmin * (Binternal - Cinternal); | ibcgmin = Spice3.Internal.SpiceConstants.CKTgmin*( Binternal - Cinternal);
ibegmin = SpiceConstants.CKTgmin * (Binternal - Einternal); | ibegmin = Spice3.Internal.SpiceConstants.CKTgmin*( Binternal - Einternal);
C.i = irc; ...

model Electrical.Spice3.Internal.DIODE

Component | Version 3.2 | Version 3.2.1
C |  | constant

model Electrical.Spice3.Internal.R_SEMI

Component | Version 3.2 | Version 3.2.1
C |  | constant

record Electrical.Spice3.Internal.SpiceConstants

Component | Version 3.2 | Version 3.2.1
CONSTboltz |  | Present

function Electrical.Spice3.Internal.Functions.energyGapDepTemp

Component | Version 3.2 | Version 3.2.1
gap0 | Present |
coeff1 | Present |
coeff2 | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
ret := gap0 - (coeff1 * temp * temp) / (temp + coeff2); | ret := Spice3.Internal.MaterialParameters.EnergyGapSi - ( Spice3.Internal.MaterialParameters.FirstBandCorrFactorSi *temp*temp)/(temp + Spice3.Internal.MaterialParameters.SecondBandCorrFactorSi);

function Electrical.Spice3.Internal.Functions.junctionPotDepTemp

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
phibtemp := energyGapDepTemp( temp); | phibtemp := Modelica.Electrical.Spice3.Internal.Functions.energyGapDepTemp(temp);
phibtnom = energyGapDepTemp( tnom); | phibtnom = Modelica.Electrical.Spice3.Internal.Functions.energyGapDepTemp(tnom);
vt = SpiceConstants.CONSTKoverQ * temp; | vt = Spice3.Internal.SpiceConstants.CONSTKoverQ* temp;
ret = (phi0 - phibtnom)*temp/tnom + phibtemp + vt*3* &nbspModelica_3_2.Math.log(tnom/temp); ...

function Electrical.Spice3.Internal.Functions.saturationCurDepTempSPICE3MOSFET

Component | Version 3.2 | Version 3.2.1
ret | SIunits.Current | Real

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
vt := SpiceConstants.CONSTKoverQ * temp; | vt := Spice3.Internal.SpiceConstants.CONSTKoverQ* temp;
vtnom = SpiceConstants.CONSTKoverQ * tnom; | vtnom = Spice3.Internal.SpiceConstants.CONSTKoverQ* tnom;
energygaptnom = energyGapDepTemp( tnom); | energygaptnom = Modelica.Electrical.Spice3.Internal.Functions.energyGapDepTemp(tnom);
energygaptemp = energyGapDepTemp( temp); | energygaptemp = Modelica.Electrical.Spice3.Internal.Functions.energyGapDepTemp(temp);
ret = satcur0 * exp( energygaptnom / vtnom - energygaptemp / vt); ...

function Electrical.Spice3.Internal.Functions.junctionVCrit

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
vte := SpiceConstants.CONSTKoverQ * temp * ncoeff; | vte := Spice3.Internal.SpiceConstants.CONSTKoverQ* temp*ncoeff;
ret = vte*Modelica_3_2.Math.log(vte/(sqrt(2)*satcur)); ...

function Electrical.Spice3.Internal.Functions.junctionParamDepTempSPICE3

Component | Version 3.2 | Version 3.2.1
phi0 | Real | SIunits.Voltage
junctionpot | Real | SIunits.Voltage
phibtemp | Real | SIunits.Voltage
phibtnom | Real | SIunits.Voltage
vt | Real | SIunits.Voltage
vtnom | Real | SIunits.Voltage

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
phibtemp := energyGapDepTemp( temp); | phibtemp := Modelica.Electrical.Spice3.Internal.Functions.energyGapDepTemp(temp);
phibtnom = energyGapDepTemp( tnom); | phibtnom = Modelica.Electrical.Spice3.Internal.Functions.energyGapDepTemp(tnom);
vt = SpiceConstants.CONSTKoverQ * temp; | vt = Spice3.Internal.SpiceConstants.CONSTKoverQ * temp;
vtnom = SpiceConstants.CONSTKoverQ * tnom; | vtnom = Spice3.Internal.SpiceConstants.CONSTKoverQ * tnom;
arg = -phibtemp/(2*Modelica_3_2.Constants.k*temp) + 1.1150877/( Modelica_3_2.Constants.k*(2*SpiceConstants.REFTEMP)); | arg = -phibtemp/(2*Modelica.Constants.k*temp) + 1.1150877/(Modelica.Constants.k*(2*Spice3.Internal.SpiceConstants.REFTEMP));
fact2 = temp/SpiceConstants.REFTEMP; | fact2 = temp/Spice3.Internal.SpiceConstants.REFTEMP;
pbfact = -2*vt*(1.5*Modelica_3_2.Math.log(fact2) + SpiceConstants.CHARGE *arg); | pbfact = -2*vt*(1.5*Modelica.Math.log(fact2)+Spice3.Internal.SpiceConstants.CHARGE*arg);
arg1 = -phibtnom/(Modelica_3_2.Constants.k*2*tnom) + 1.1150877/(2* Modelica_3_2.Constants.k*SpiceConstants.REFTEMP); | arg1 = -phibtnom/(Modelica.Constants.k*2*tnom) + 1.1150877/(2*Modelica.Constants.k*Spice3.Internal.SpiceConstants.REFTEMP);
fact1 = tnom/SpiceConstants.REFTEMP; | fact1 = tnom/Spice3.Internal.SpiceConstants.REFTEMP;
pbfact1 = -2*vtnom*(1.5*Modelica_3_2.Math.log(fact1) + SpiceConstants.CHARGE*arg1); | pbfact1 = -2 * vtnom*(1.5*Modelica.Math.log(fact1)+Spice3.Internal.SpiceConstants.CHARGE*arg1);
pbo = (phi0-pbfact1)/fact1; ... gmanew = (junctionpot-pbo)/pbo;
jucntioncap = cap0 / (1+mcoeff* (400e-6*(tnom-SpiceConstants.REFTEMP)-gmaold)) * (1+mcoeff* (400e-6*(temp-SpiceConstants.REFTEMP)-gmanew)); | jucntioncap = cap0 / (1+mcoeff* (400e-6*(tnom-Spice3.Internal.SpiceConstants.REFTEMP)-gmaold)) * (1+mcoeff* (400e-6*(temp-Spice3.Internal.SpiceConstants.REFTEMP)-gmanew));

function Electrical.Spice3.Internal.Functions.junctionCapCoeffs

Component | Version 3.2 | Version 3.2.1
phij | Real | SIunits.Voltage
f1 | Real | SIunits.Voltage

function Electrical.Spice3.Internal.Functions.junction2SPICE3MOSFET

Equations in Version 3.2 | Equations in Version 3.2.1
... if (satcur > 1e-101) then
vte = SpiceConstants.CONSTKoverQ * temp * ncoeff; | vte = Spice3.Internal.SpiceConstants.CONSTKoverQ* temp*ncoeff;
max_exponent = Modelica_3_2.Math.log(max_current/satcur); ... out_current = out_cond * voltage;
out_cond = out_cond + SpiceConstants.CKTgmin; | out_cond = out_cond + Spice3.Internal.SpiceConstants.CKTgmin;
elseif (voltage >= max_exponent * vte) then ... evbd = exp( voltage / vte);
out_cond = satcur*evbd/vte + SpiceConstants.CKTgmin; | out_cond = satcur*evbd/vte + Spice3.Internal.SpiceConstants.CKTgmin;
out_current = satcur *(evbd-1); ...

function Electrical.Spice3.Internal.Functions.saturationCurDepTempSPICE3

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
vt := SpiceConstants.CONSTKoverQ*temp; | vt := Spice3.Internal.SpiceConstants.CONSTKoverQ* temp;
vte = emissioncoeff * vt; ...

function Electrical.Spice3.Internal.Functions.junctionVoltage23SPICE3

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
vt := SpiceConstants.CONSTKoverQ*temp; | vt := Spice3.Internal.SpiceConstants.CONSTKoverQ* temp;
v23 = vb; ... else
tol = SpiceConstants.CKTreltol*cbv; | tol = Spice3.Internal.SpiceConstants.CKTreltol* cbv;
v23 = vb - vt*Modelica_3_2.Math.log(1 + cbv/satcur); ...

function Electrical.Spice3.Internal.Functions.junction3

Equations in Version 3.2 | Equations in Version 3.2.1
... if (satcur > 1.0e-101) then
vte = SpiceConstants.CONSTKoverQ*temp*ncoeff; | vte = Spice3.Internal.SpiceConstants.CONSTKoverQ* temp*ncoeff;
max_exponent = Modelica_3_2.Math.log(max_current/satcur); ... evd = exp( voltage / vte);
current = satcur*(evd - 1) + SpiceConstants.CKTgmin*voltage; | current = satcur*(evd - 1) + Spice3.Internal.SpiceConstants.CKTgmin *voltage;
cond = satcur*evd/vte + SpiceConstants.CKTgmin; | cond = satcur*evd/vte + Spice3.Internal.SpiceConstants.CKTgmin;
elseif (voltage >= -v23) then
arg = 3*vte/(voltage*SpiceConstants.CONSTe); | arg = 3*vte/(voltage*Spice3.Internal.SpiceConstants.CONSTe);
arg = arg * arg * arg;
current = -1.*satcur*(1 + arg) + SpiceConstants.CKTgmin*voltage; | current = -1.*satcur*(1 + arg) + Spice3.Internal.SpiceConstants.CKTgmin *voltage;
cond = satcur*3*arg/voltage + SpiceConstants.CKTgmin; | cond = satcur*3*arg/voltage + Spice3.Internal.SpiceConstants.CKTgmin;
else ... evrev = exp( vr / vte);
current = -1.*satcur*evrev + SpiceConstants.CKTgmin*voltage; | current = -1.*satcur*evrev + Spice3.Internal.SpiceConstants.CKTgmin *voltage;
cond = satcur*evrev/vte + SpiceConstants.CKTgmin; | cond = satcur*evrev/vte + Spice3.Internal.SpiceConstants.CKTgmin;
end if; ...

function Electrical.Spice3.Internal.Functions.junction2

Equations in Version 3.2 | Equations in Version 3.2.1
... if (satcur > 1.0e-101) then
vte = SpiceConstants.CONSTKoverQ*temp*ncoeff; | vte = Spice3.Internal.SpiceConstants.CONSTKoverQ* temp*ncoeff;
max_exponent = Modelica_3_2.Math.log(max_current/satcur); ... evd = exp( voltage / vte);
current = satcur*(evd - 1) + SpiceConstants.CKTgmin*voltage; | current = satcur*(evd - 1) + Spice3.Internal.SpiceConstants.CKTgmin *voltage;
cond = satcur*evd/vte + SpiceConstants.CKTgmin; | cond = satcur*evd/vte + Spice3.Internal.SpiceConstants.CKTgmin;
else
arg = 3*vte/(voltage*SpiceConstants.CONSTe); | arg = 3*vte/(voltage*Spice3.Internal.SpiceConstants.CONSTe);
arg = arg * arg * arg;
current = -1*satcur*(1 + arg) + SpiceConstants.CKTgmin*voltage; | current = -1*satcur*(1 + arg) + Spice3.Internal.SpiceConstants.CKTgmin *voltage;
cond = satcur*3*arg/voltage + SpiceConstants.CKTgmin; | cond = satcur*3*arg/voltage + Spice3.Internal.SpiceConstants.CKTgmin;
end if; ...

record Electrical.Spice3.Internal.Mosfet.Mosfet

Component | Version 3.2 | Version 3.2.1
m_drainArea | start=SpiceConstants.CKTdefaultMosAD | start=Spice3.Internal.SpiceConstants.CKTdefaultMosAD
m_sourceArea | start=SpiceConstants.CKTdefaultMosAS | start=Spice3.Internal.SpiceConstants.CKTdefaultMosAS
m_drainPerimeter |  | Present
m_sourcePerimeter |  | Present
m_uic |  | Present

record Electrical.Spice3.Internal.Mosfet.MosfetModelLineParams

Component | Version 3.2 | Version 3.2.1
m_bulkJctBotGradingCoeff | Real | SIunits.LinearTemperatureCoefficient
m_bulkJctSideGradingCoeff | Real | SIunits.LinearTemperatureCoefficient
m_mjswIsGiven |  | Present
m_cgsoIsGiven |  | Present
m_cgdoIsGiven |  | Present
m_cgboIsGiven |  | Present
m_pbIsGiven |  | Present

record Electrical.Spice3.Internal.Mosfet.MosfetCalc

Component | Version 3.2 | Version 3.2.1
m_lEff | Real | SIunits.Length

record Electrical.Spice3.Internal.Mos.MosModelLineParams

Component | Version 3.2 | Version 3.2.1
m_surfaceStateDensityIsGiven |  | start=0
m_tnom | start=SpiceConstants.CKTnomTemp | start=Spice3.Internal.SpiceConstants.CKTnomTemp

record Electrical.Spice3.Internal.Mos.MosCalc

Component | Version 3.2 | Version 3.2.1
m_tSurfMob | Real | SIunits.Conversions.NonSIunits.Area_cmPerVoltageSecond
m_tSatCurDens | Real | SIunits.CurrentDensity
m_tCj | Real | SIunits.CapacitancePerArea
m_tCjsw | Real | SIunits.Permittivity
m_tDepCap | Real | SIunits.Voltage
m_f1b | Real | SIunits.Voltage
m_f1s | Real | SIunits.Voltage
m_dVt | Real | SIunits.Voltage

function Electrical.Spice3.Internal.Mos.mosCalcInitEquations

Equations in Version 3.2 | Equations in Version 3.2.1
... out_c.m_capOx = in_vp.m_oxideCapFactor * out_c.m_lEff * in_m.m_width;
| out_c.m_tTransconductance = 0;
| out_c.m_tSurfMob = 0; out_c.m_tPhi = 0.7; out_c.m_tVto = 1.; out_c.m_tSatCurDens = 0; out_c.m_tDrainSatCur = 0; out_c.m_tSourceSatCur = 0; out_c.m_tCBDb = 0; out_c.m_tCBDs = 0; out_c.m_tCBSb = 0; out_c.m_tCBSs = 0; out_c.m_tCj = 0; out_c.m_tCjsw = 0; out_c.m_tBulkPot = 0.7; out_c.m_tDepCap = 0.35; out_c.m_tVbi = 1.; out_c.m_VBScrit = 0.7; out_c.m_VBDcrit = 0.7; out_c.m_f1b = 0; out_c.m_f2b = 0; out_c.m_f3b = 0; out_c.m_f1s = 0; out_c.m_f2s = 0; out_c.m_f3s = 0; out_c.m_dVt = 0; out_c.m_capgd = 0; out_c.m_capgs = 0; out_c.m_capgb = 0; out_c.m_qgs = 0; out_c.m_qgd = 0; out_c.m_qgb = 0; out_c.m_vds = 0; out_c.m_vgs = 0; out_c.m_vbs = 0; out_c.m_cbs = 0; out_c.m_gbs = 0; out_c.m_cbd = 0; out_c.m_gbd = 0; out_c.m_cdrain = 0; out_c.m_gds = 0; out_c.m_gm = 0; out_c.m_gmbs = 0; out_c.m_capbsb = 0; out_c.m_chargebsb = 0; out_c.m_capbss = 0; out_c.m_chargebss = 0; out_c.m_capbdb = 0; out_c.m_chargebdb = 0; out_c.m_capbds = 0; out_c.m_chargebds = 0; out_c.m_Beta = 0; out_c.m_von = 0; out_c.m_vdsat = 0; out_c.m_mode = 1;

function Electrical.Spice3.Internal.Mos.mosCalcCalcTempDependencies

Equations in Version 3.2 | Equations in Version 3.2.1
... out_c.m_tSurfMob = in_p.m_surfaceMobility / ratio4;
out_c.m_tPhi = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionPotDepTemp( in_vp.m_phi, in_m.m_dTemp, in_p.m_tnom); | out_c.m_tPhi = Spice3.Internal.Functions.junctionPotDepTemp( in_vp.m_phi, in_m.m_dTemp, in_p.m_tnom);
out_c.m_tVbi = in_vp.m_vt0 - in_m_type*(in_vp.m_gamma*sqrt(in_vp.m_phi)) + 0.5*( Modelica_3_2.Electrical.Spice3.Internal.Functions.energyGapDepTemp( in_p.m_tnom) - Modelica_3_2.Electrical.Spice3.Internal.Functions.energyGapDepTemp( in_m.m_dTemp)) + in_m_type*0.5*(out_c.m_tPhi - in_vp.m_phi); | out_c.m_tVbi = in_vp.m_vt0 - in_m_type*(in_vp.m_gamma*sqrt(in_vp.m_phi)) + 0.5*(Spice3.Internal.Functions.energyGapDepTemp_old( in_p.m_tnom) - Spice3.Internal.Functions.energyGapDepTemp_old( in_m.m_dTemp)) + in_m_type*0.5*(out_c.m_tPhi - in_vp.m_phi);
out_c.m_tVto = out_c.m_tVbi + in_m_type * in_vp.m_gamma * sqrt(out_c.m_tPhi);
out_c.m_tBulkPot = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionPotDepTemp( in_p.m_bulkJctPotential, in_m.m_dTemp, in_p.m_tnom); | out_c.m_tBulkPot = Spice3.Internal.Functions.junctionPotDepTemp( in_p.m_bulkJctPotential, in_m.m_dTemp, in_p.m_tnom);
out_c.m_tDepCap = in_p.m_fwdCapDepCoeff * out_c.m_tBulkPot;
if (in_p.m_jctSatCurDensity == 0.0 or in_m.m_sourceArea == 0.0 or in_m.m_drainArea == 0.0) then
out_c.m_tDrainSatCur = Modelica_3_2.Electrical.Spice3.Internal.Functions.saturationCurDepTempSPICE3MOSFET( in_p.m_jctSatCur, in_m.m_dTemp, in_p.m_tnom); | out_c.m_tDrainSatCur = Spice3.Internal.Functions.saturationCurDepTempSPICE3MOSFET( in_p.m_jctSatCur, in_m.m_dTemp, in_p.m_tnom);
out_c.m_tSourceSatCur = out_c.m_tDrainSatCur;
out_c.m_VBScrit = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionVCrit( in_m.m_dTemp, 1.0, out_c.m_tSourceSatCur); | out_c.m_VBScrit = Spice3.Internal.Functions.junctionVCrit( in_m.m_dTemp, 1.0, out_c.m_tSourceSatCur);
out_c.m_VBDcrit = out_c.m_VBScrit;
else
out_c.m_tSatCurDens = Modelica_3_2.Electrical.Spice3.Internal.Functions.saturationCurDepTempSPICE3MOSFET( in_p.m_jctSatCurDensity, in_m.m_dTemp, in_p.m_tnom); | out_c.m_tSatCurDens = Spice3.Internal.Functions.saturationCurDepTempSPICE3MOSFET( in_p.m_jctSatCurDensity, in_m.m_dTemp, in_p.m_tnom);
out_c.m_tDrainSatCur = out_c.m_tSatCurDens * in_m.m_drainArea;
out_c.m_tSourceSatCur = out_c.m_tSatCurDens * in_m.m_sourceArea;
out_c.m_VBScrit = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionVCrit( in_m.m_dTemp, 1.0, out_c.m_tSourceSatCur); | out_c.m_VBScrit = Spice3.Internal.Functions.junctionVCrit( in_m.m_dTemp, 1.0, out_c.m_tSourceSatCur);
out_c.m_VBDcrit = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionVCrit( in_m.m_dTemp, 1.0, out_c.m_tDrainSatCur); | out_c.m_VBDcrit = Spice3.Internal.Functions.junctionVCrit( in_m.m_dTemp, 1.0, out_c.m_tDrainSatCur);
end if;
if ( not (in_p.m_capBDIsGiven > 0.5) or not (in_p.m_capBSIsGiven > 0.5)) then
(res,out_c.m_tCj) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_bulkCapFactor, in_p.m_bulkJctBotGradingCoeff, in_m.m_dTemp, in_p.m_tnom); | (res,out_c.m_tCj) = Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_bulkCapFactor, in_p.m_bulkJctBotGradingCoeff, in_m.m_dTemp, in_p.m_tnom);
(res,out_c.m_tCjsw) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_sideWallCapFactor, in_p.m_bulkJctSideGradingCoeff, in_m.m_dTemp, in_p.m_tnom); | (res,out_c.m_tCjsw) = Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_sideWallCapFactor, in_p.m_bulkJctSideGradingCoeff, in_m.m_dTemp, in_p.m_tnom);
(out_c.m_f1s,out_c.m_f2s,out_c.m_f3s) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCapCoeffs( in_p.m_bulkJctSideGradingCoeff, in_p.m_fwdCapDepCoeff, out_c.m_tBulkPot); | (out_c.m_f1s,out_c.m_f2s,out_c.m_f3s) = Spice3.Internal.Functions.junctionCapCoeffs( in_p.m_bulkJctSideGradingCoeff, in_p.m_fwdCapDepCoeff, out_c.m_tBulkPot);
end if;
if (in_p.m_capBDIsGiven > 0.5) then
(res,out_c.m_tCBDb) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_capBD, in_p.m_bulkJctBotGradingCoeff, in_m.m_dTemp, in_p.m_tnom); | (res,out_c.m_tCBDb) = Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_capBD, in_p.m_bulkJctBotGradingCoeff, in_m.m_dTemp, in_p.m_tnom);
out_c.m_tCBDs = 0.0; ... out_c.m_tCBDb = out_c.m_tCj * in_m.m_drainArea;
out_c.m_tCBDs = out_c.m_tCjsw * in_m.m_drainPerimiter; | out_c.m_tCBDs = out_c.m_tCjsw * in_m.m_drainPerimeter;
end if;
if (in_p.m_capBSIsGiven > 0.5) then
(res,out_c.m_tCBSb) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_capBS, in_p.m_bulkJctBotGradingCoeff, in_m.m_dTemp, in_p.m_tnom); | (res,out_c.m_tCBSb) = Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_capBS, in_p.m_bulkJctBotGradingCoeff, in_m.m_dTemp, in_p.m_tnom);
out_c.m_tCBSs = 0.0; ... out_c.m_tCBSb = out_c.m_tCj * in_m.m_sourceArea;
out_c.m_tCBSs = out_c.m_tCjsw * in_m.m_sourcePerimiter; | out_c.m_tCBSs = out_c.m_tCjsw * in_m.m_sourcePerimeter;
end if;
(out_c.m_f1b,out_c.m_f2b,out_c.m_f3b) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCapCoeffs( in_p.m_bulkJctBotGradingCoeff, in_p.m_fwdCapDepCoeff, out_c.m_tBulkPot); | (out_c.m_f1b,out_c.m_f2b,out_c.m_f3b) = Spice3.Internal.Functions.junctionCapCoeffs( in_p.m_bulkJctBotGradingCoeff, in_p.m_fwdCapDepCoeff, out_c.m_tBulkPot);
out_c.m_dVt = in_m.m_dTemp * SpiceConstants.CONSTKoverQ; | out_c.m_dVt = in_m.m_dTemp*Spice3.Internal.SpiceConstants.CONSTKoverQ;

function Electrical.Spice3.Internal.Mos.mosCalcNoBypassCode

Equations in Version 3.2 | Equations in Version 3.2.1
... int_c := in_c;
| out_cc.m_capgd = 0;
int_c.m_vgs = in_m_type * (in_m_pVoltageValues[1] - in_m_pVoltageValues[4]); ... int_c.m_vds = in_m_type * (in_m_pVoltageValues[3] - in_m_pVoltageValues[4]);
if ( SpiceRoot.useInitialConditions()) and (in_m.m_dICVBSIsGiven >0.5) then | if (Spice3.Internal.SpiceRoot.useInitialConditions()) and (in_m.m_dICVBSIsGiven > 0.5) then
int_c.m_vbs = in_m_type * in_m.m_dICVBS;
elseif ( SpiceRoot.initJunctionVoltages()) then | elseif ( Spice3.Internal.SpiceRoot.initJunctionVoltages()) then
int_c.m_vbs = if (in_m.m_off >0.5) then 0. else int_c.m_VBScrit;
end if;
if ( SpiceRoot.useInitialConditions()) and (in_m.m_dICVDSIsGiven > 0.5) then | if (Spice3.Internal.SpiceRoot.useInitialConditions()) and (in_m.m_dICVDSIsGiven > 0.5) then
int_c.m_vds = in_m_type * in_m.m_dICVDS;
elseif ( SpiceRoot.initJunctionVoltages()) then | elseif ( Spice3.Internal.SpiceRoot.initJunctionVoltages()) then
int_c.m_vds = if (in_m.m_off > 0.5) then 0. else (int_c.m_VBDcrit - int_c.m_VBScrit);
end if;
if ( SpiceRoot.useInitialConditions()) and (in_m.m_dICVGSIsGiven > 0.5) then | if (Spice3.Internal.SpiceRoot.useInitialConditions()) and (in_m.m_dICVGSIsGiven > 0.5) then
int_c.m_vgs = in_m_type * in_m.m_dICVGS;
elseif ( SpiceRoot.initJunctionVoltages()) then | elseif ( Spice3.Internal.SpiceRoot.initJunctionVoltages()) then
if ( in_m.m_off > 0.5) then ... vgb = int_c.m_vgs - int_c.m_vbs;
(int_c.m_cbd,int_c.m_gbd) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junction2SPICE3MOSFET( int_c.m_cbd, int_c.m_gbd, vbd, in_m.m_dTemp, 1.0, int_c.m_tDrainSatCur); | (int_c.m_cbd,int_c.m_gbd) = Spice3.Internal.Functions.junction2SPICE3MOSFET( int_c.m_cbd, int_c.m_gbd, vbd, in_m.m_dTemp, 1.0, int_c.m_tDrainSatCur);
out_cc.iBD = in_m_type * int_c.m_cbd;
(int_c.m_cbs,int_c.m_gbs) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junction2SPICE3MOSFET( int_c.m_cbs, int_c.m_gbs, int_c.m_vbs, in_m.m_dTemp, 1.0, int_c.m_tSourceSatCur); | (int_c.m_cbs,int_c.m_gbs) = Spice3.Internal.Functions.junction2SPICE3MOSFET( int_c.m_cbs, int_c.m_gbs, int_c.m_vbs, in_m.m_dTemp, 1.0, int_c.m_tSourceSatCur);
out_cc.iBS = in_m_type * int_c.m_cbs; ... if (int_c.m_mode == 1) then
int_c = Mos1.drainCur( int_c.m_vbs, int_c.m_vgs, int_c.m_vds, int_c, in_p, in_C, in_vp, in_m_type); | int_c = Spice3.Internal.Mos1.drainCur( int_c.m_vbs, int_c.m_vgs, int_c.m_vds, int_c, in_p, in_C, in_vp, in_m_type);
else
int_c = Mos1.drainCur( vbd, vgd, -int_c.m_vds, int_c, in_p, in_C, in_vp, in_m_type); | int_c = Spice3.Internal.Mos1.drainCur( vbd, vgd, -int_c.m_vds, int_c, in_p, in_C, in_vp, in_m_type);
end if; ... int_c.m_chargebds = 0.0;
(int_c.m_capbsb,int_c.m_chargebsb) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCap( int_c.m_tCBSb, int_c.m_vbs, int_c.m_tDepCap, in_p.m_bulkJctBotGradingCoeff, int_c.m_tBulkPot, int_c.m_f1b, int_c.m_f2b, int_c.m_f3b); | (int_c.m_capbsb,int_c.m_chargebsb) = Spice3.Internal.Functions.junctionCap( int_c.m_tCBSb, int_c.m_vbs, int_c.m_tDepCap, in_p.m_bulkJctBotGradingCoeff, int_c.m_tBulkPot, int_c.m_f1b, int_c.m_f2b, int_c.m_f3b);
(int_c.m_capbdb,int_c.m_chargebdb) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCap( int_c.m_tCBDb, vbd, int_c.m_tDepCap, in_p.m_bulkJctBotGradingCoeff, int_c.m_tBulkPot, int_c.m_f1b, int_c.m_f2b, int_c.m_f3b); | (int_c.m_capbdb,int_c.m_chargebdb) = Spice3.Internal.Functions.junctionCap( int_c.m_tCBDb, vbd, int_c.m_tDepCap, in_p.m_bulkJctBotGradingCoeff, int_c.m_tBulkPot, int_c.m_f1b, int_c.m_f2b, int_c.m_f3b);
if ( not (in_p.m_capBSIsGiven > 0.5)) then
(int_c.m_capbss,int_c.m_chargebss) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCap( int_c.m_tCBSs, int_c.m_vbs, int_c.m_tDepCap, in_p.m_bulkJctSideGradingCoeff, int_c.m_tBulkPot, int_c.m_f1s, int_c.m_f2s, int_c.m_f3s); | (int_c.m_capbss,int_c.m_chargebss) = Spice3.Internal.Functions.junctionCap( int_c.m_tCBSs, int_c.m_vbs, int_c.m_tDepCap, in_p.m_bulkJctSideGradingCoeff, int_c.m_tBulkPot, int_c.m_f1s, int_c.m_f2s, int_c.m_f3s);
end if;
if (not (in_p.m_capBDIsGiven > 0.5)) then
(int_c.m_capbds,int_c.m_chargebds) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCap( int_c.m_tCBDs, vbd, int_c.m_tDepCap, in_p.m_bulkJctSideGradingCoeff, int_c.m_tBulkPot, int_c.m_f1s, int_c.m_f2s, int_c.m_f3s); | (int_c.m_capbds,int_c.m_chargebds) = Spice3.Internal.Functions.junctionCap( int_c.m_tCBDs, vbd, int_c.m_tDepCap, in_p.m_bulkJctSideGradingCoeff, int_c.m_tBulkPot, int_c.m_f1s, int_c.m_f2s, int_c.m_f3s);
end if; ...

function Electrical.Spice3.Internal.Mos.mosCalcDEVqmeyer

Component | Version 3.2 | Version 3.2.1
vddif | Real | SIunits.Voltage
vddif1 | Real | SIunits.Voltage
vddif2 | Real | Electrical.Spice3.Types.VoltageSquare

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
| out_qm.qm_qgs = 0.0;
| out_qm.qm_qgb = 0.0; out_qm.qm_qgd = 0.0; out_qm.qm_vgs = 0.0; out_qm.qm_vgb = 0.0; out_qm.qm_vgd = 0.0;

function Electrical.Spice3.Internal.Mos.mos2CalcCalcTempDependencies

Equations in Version 3.2 | Equations in Version 3.2.1
... out_c.m_tSurfMob = in_p.m_surfaceMobility / ratio4;
out_c.m_tPhi = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionPotDepTemp( in_vp.m_phi, in_m.m_dTemp, in_p.m_tnom); | out_c.m_tPhi = Spice3.Internal.Functions.junctionPotDepTemp( in_vp.m_phi, in_m.m_dTemp, in_p.m_tnom);
out_c.m_tVbi = in_vp.m_vt0 - in_m_type*(in_vp.m_gamma*sqrt(in_vp.m_phi)) + 0.5*( Modelica_3_2.Electrical.Spice3.Internal.Functions.energyGapDepTemp( in_p.m_tnom) - Modelica_3_2.Electrical.Spice3.Internal.Functions.energyGapDepTemp( in_m.m_dTemp)) + in_m_type*0.5*(out_c.m_tPhi - in_vp.m_phi); | out_c.m_tVbi = in_vp.m_vt0 - in_m_type*(in_vp.m_gamma*sqrt(in_vp.m_phi)) + 0.5*(Spice3.Internal.Functions.energyGapDepTemp( in_p.m_tnom) - Spice3.Internal.Functions.energyGapDepTemp(in_m.m_dTemp)) + in_m_type*0.5*(out_c.m_tPhi - in_vp.m_phi);
out_c.m_tVto = out_c.m_tVbi + in_m_type * in_vp.m_gamma * sqrt(out_c.m_tPhi);
out_c.m_tBulkPot = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionPotDepTemp( in_p.m_bulkJctPotential, in_m.m_dTemp, in_p.m_tnom); | out_c.m_tBulkPot = Spice3.Internal.Functions.junctionPotDepTemp( in_p.m_bulkJctPotential, in_m.m_dTemp, in_p.m_tnom);
out_c.m_tDepCap = in_p.m_fwdCapDepCoeff * out_c.m_tBulkPot;
if (in_p.m_jctSatCurDensity == 0.0 or in_m.m_sourceArea == 0.0 or in_m.m_drainArea == 0.0) then
out_c.m_tDrainSatCur = Modelica_3_2.Electrical.Spice3.Internal.Functions.saturationCurDepTempSPICE3MOSFET( in_p.m_jctSatCur, in_m.m_dTemp, in_p.m_tnom); | out_c.m_tDrainSatCur = Spice3.Internal.Functions.saturationCurDepTempSPICE3MOSFET( in_p.m_jctSatCur, in_m.m_dTemp, in_p.m_tnom);
out_c.m_tSourceSatCur = out_c.m_tDrainSatCur;
out_c.m_VBScrit = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionVCrit( in_m.m_dTemp, 1.0, out_c.m_tSourceSatCur); | out_c.m_VBScrit = Spice3.Internal.Functions.junctionVCrit( in_m.m_dTemp, 1.0, out_c.m_tSourceSatCur);
out_c.m_VBDcrit = out_c.m_VBScrit;
else
out_c.m_tSatCurDens = Modelica_3_2.Electrical.Spice3.Internal.Functions.saturationCurDepTempSPICE3MOSFET( in_p.m_jctSatCurDensity, in_m.m_dTemp, in_p.m_tnom); | out_c.m_tSatCurDens = Spice3.Internal.Functions.saturationCurDepTempSPICE3MOSFET( in_p.m_jctSatCurDensity, in_m.m_dTemp, in_p.m_tnom);
out_c.m_tDrainSatCur = out_c.m_tSatCurDens * in_m.m_drainArea;
out_c.m_tSourceSatCur = out_c.m_tSatCurDens * in_m.m_sourceArea;
out_c.m_VBScrit = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionVCrit( in_m.m_dTemp, 1.0, out_c.m_tSourceSatCur); | out_c.m_VBScrit = Spice3.Internal.Functions.junctionVCrit( in_m.m_dTemp, 1.0, out_c.m_tSourceSatCur);
out_c.m_VBDcrit = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionVCrit( in_m.m_dTemp, 1.0, out_c.m_tDrainSatCur); | out_c.m_VBDcrit = Spice3.Internal.Functions.junctionVCrit( in_m.m_dTemp, 1.0, out_c.m_tDrainSatCur);
end if;
if ( not (in_p.m_capBDIsGiven > 0.5) or not (in_p.m_capBSIsGiven > 0.5)) then
(out_c.m_tCj) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_bulkCapFactor, in_p.m_bulkJctBotGradingCoeff, in_m.m_dTemp, in_p.m_tnom); | (out_c.m_tCj) = Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_bulkCapFactor, in_p.m_bulkJctBotGradingCoeff, in_m.m_dTemp, in_p.m_tnom);
(out_c.m_tCjsw) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_sideWallCapFactor, in_p.m_bulkJctSideGradingCoeff, in_m.m_dTemp, in_p.m_tnom); | (out_c.m_tCjsw) = Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_sideWallCapFactor, in_p.m_bulkJctSideGradingCoeff, in_m.m_dTemp, in_p.m_tnom);
(out_c.m_f1s,out_c.m_f2s,out_c.m_f3s) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCapCoeffs( in_p.m_bulkJctSideGradingCoeff, in_p.m_fwdCapDepCoeff, out_c.m_tBulkPot); | (out_c.m_f1s,out_c.m_f2s,out_c.m_f3s) = Spice3.Internal.Functions.junctionCapCoeffs( in_p.m_bulkJctSideGradingCoeff, in_p.m_fwdCapDepCoeff, out_c.m_tBulkPot);
end if;
if (in_p.m_capBDIsGiven > 0.5) then
(out_c.m_tCBDb) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_capBD, in_p.m_bulkJctBotGradingCoeff, in_m.m_dTemp, in_p.m_tnom); | (out_c.m_tCBDb) = Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_capBD, in_p.m_bulkJctBotGradingCoeff, in_m.m_dTemp, in_p.m_tnom);
out_c.m_tCBDs = 0.0; ... out_c.m_tCBDb = out_c.m_tCj * in_m.m_drainArea;
out_c.m_tCBDs = out_c.m_tCjsw * in_m.m_drainPerimiter; | out_c.m_tCBDs = out_c.m_tCjsw * in_m.m_drainPerimeter;
end if;
if (in_p.m_capBSIsGiven > 0.5) then
(out_c.m_tCBSb) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_capBS, in_p.m_bulkJctBotGradingCoeff, in_m.m_dTemp, in_p.m_tnom); | (out_c.m_tCBSb) = Spice3.Internal.Functions.junctionParamDepTempSPICE3( in_p.m_bulkJctPotential, in_p.m_capBS, in_p.m_bulkJctBotGradingCoeff, in_m.m_dTemp, in_p.m_tnom);
out_c.m_tCBSs = 0.0; ... out_c.m_tCBSb = out_c.m_tCj * in_m.m_sourceArea;
out_c.m_tCBSs = out_c.m_tCjsw * in_m.m_sourcePerimiter; | out_c.m_tCBSs = out_c.m_tCjsw * in_m.m_sourcePerimeter;
end if;
(out_c.m_f1b,out_c.m_f2b,out_c.m_f3b) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCapCoeffs( in_p.m_bulkJctBotGradingCoeff, in_p.m_fwdCapDepCoeff, out_c.m_tBulkPot); | (out_c.m_f1b,out_c.m_f2b,out_c.m_f3b) = Spice3.Internal.Functions.junctionCapCoeffs( in_p.m_bulkJctBotGradingCoeff, in_p.m_fwdCapDepCoeff, out_c.m_tBulkPot);
out_c.m_dVt = in_m.m_dTemp * SpiceConstants.CONSTKoverQ; | out_c.m_dVt = in_m.m_dTemp*Spice3.Internal.SpiceConstants.CONSTKoverQ;

function Electrical.Spice3.Internal.Mos.mos2CalcNoBypassCode

Equations in Version 3.2 | Equations in Version 3.2.1
... int_c.m_vds = in_m_type * (in_m_pVoltageValues[3] - in_m_pVoltageValues[4]);
if ( SpiceRoot.useInitialConditions()) and (in_m.m_dICVBSIsGiven >0.5) then | if (Spice3.Internal.SpiceRoot.useInitialConditions()) and (in_m.m_dICVBSIsGiven > 0.5) then
int_c.m_vbs = in_m_type * in_m.m_dICVBS;
elseif ( SpiceRoot.initJunctionVoltages()) then | elseif ( Spice3.Internal.SpiceRoot.initJunctionVoltages()) then
int_c.m_vbs = if (in_m.m_off >0.5) then 0. else int_c.m_VBScrit;
end if;
if ( SpiceRoot.useInitialConditions()) and (in_m.m_dICVDSIsGiven > 0.5) then | if (Spice3.Internal.SpiceRoot.useInitialConditions()) and (in_m.m_dICVDSIsGiven > 0.5) then
int_c.m_vds = in_m_type * in_m.m_dICVDS;
elseif ( SpiceRoot.initJunctionVoltages()) then | elseif ( Spice3.Internal.SpiceRoot.initJunctionVoltages()) then
int_c.m_vds = if (in_m.m_off > 0.5) then 0. else (int_c.m_VBDcrit - int_c.m_VBScrit);
end if;
if ( SpiceRoot.useInitialConditions()) and (in_m.m_dICVGSIsGiven > 0.5) then | if (Spice3.Internal.SpiceRoot.useInitialConditions()) and (in_m.m_dICVGSIsGiven > 0.5) then
int_c.m_vgs = in_m_type * in_m.m_dICVGS;
elseif ( SpiceRoot.initJunctionVoltages()) then | elseif ( Spice3.Internal.SpiceRoot.initJunctionVoltages()) then
if ( in_m.m_off > 0.5) then ... end if;
if (int_c.m_vds<>0 and int_c.m_vgs<>0 and int_c.m_vbs<>0 and not (SpiceRoot.useInitialConditions()) and (in_m.m_off<>0)) then | if (int_c.m_vds <> 0 and int_c.m_vgs <> 0 and int_c.m_vbs <> 0 and not ( Spice3.Internal.SpiceRoot.useInitialConditions()) and (in_m.m_off <> 0)) then
int_c.m_vbs = -1; ... if ( int_c.m_vds >= 0) then
int_c.m_vbs = SpiceRoot.limitJunctionVoltage(int_c.m_vbs); | int_c.m_vbs = Spice3.Internal.SpiceRoot.limitJunctionVoltage( int_c.m_vbs);
vbd = int_c.m_vbs - int_c.m_vds;
else
vbd = SpiceRoot.limitJunctionVoltage(vbd); | vbd = Spice3.Internal.SpiceRoot.limitJunctionVoltage( vbd);
int_c.m_vbs = vbd + int_c.m_vds; ... vgb = int_c.m_vgs - int_c.m_vbs;
(int_c.m_cbd,int_c.m_gbd) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junction2SPICE3MOSFET( int_c.m_cbd, int_c.m_gbd, vbd, in_m.m_dTemp, 1.0, int_c.m_tDrainSatCur); | (int_c.m_cbd,int_c.m_gbd) = Spice3.Internal.Functions.junction2SPICE3MOSFET( int_c.m_cbd, int_c.m_gbd, vbd, in_m.m_dTemp, 1.0, int_c.m_tDrainSatCur);
out_cc.iBD = in_m_type * int_c.m_cbd;
(int_c.m_cbs,int_c.m_gbs) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junction2SPICE3MOSFET( int_c.m_cbs, int_c.m_gbs, int_c.m_vbs, in_m.m_dTemp, 1.0, int_c.m_tSourceSatCur); | (int_c.m_cbs,int_c.m_gbs) = Spice3.Internal.Functions.junction2SPICE3MOSFET( int_c.m_cbs, int_c.m_gbs, int_c.m_vbs, in_m.m_dTemp, 1.0, int_c.m_tSourceSatCur);
out_cc.iBS = in_m_type * int_c.m_cbs; ... if (int_c.m_mode == 1) then
int_c = Mos2.drainCur( int_c.m_vbs, int_c.m_vgs, int_c.m_vds,int_m, int_c, in_p, in_C, in_vp, in_m_type); | int_c = Spice3.Internal.Mos2.drainCur( int_c.m_vbs, int_c.m_vgs, int_c.m_vds,int_m, int_c, in_p, in_C, in_vp, in_m_type);
else
int_c = Mos2.drainCur( vbd, vgd, -int_c.m_vds,int_m, int_c, in_p, in_C, in_vp, in_m_type); | int_c = Spice3.Internal.Mos2.drainCur( vbd, vgd, -int_c.m_vds,int_m, int_c, in_p, in_C, in_vp, in_m_type);
end if; ... int_c.m_chargebds = 0.0;
(int_c.m_capbsb,int_c.m_chargebsb) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCap( int_c.m_tCBSb, int_c.m_vbs, int_c.m_tDepCap, in_p.m_bulkJctBotGradingCoeff, int_c.m_tBulkPot, int_c.m_f1b, int_c.m_f2b, int_c.m_f3b); | (int_c.m_capbsb,int_c.m_chargebsb) = Spice3.Internal.Functions.junctionCap( int_c.m_tCBSb, int_c.m_vbs, int_c.m_tDepCap, in_p.m_bulkJctBotGradingCoeff, int_c.m_tBulkPot, int_c.m_f1b, int_c.m_f2b, int_c.m_f3b);
(int_c.m_capbdb,int_c.m_chargebdb) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCap( int_c.m_tCBDb, vbd, int_c.m_tDepCap, in_p.m_bulkJctBotGradingCoeff, int_c.m_tBulkPot, int_c.m_f1b, int_c.m_f2b, int_c.m_f3b); | (int_c.m_capbdb,int_c.m_chargebdb) = Spice3.Internal.Functions.junctionCap( int_c.m_tCBDb, vbd, int_c.m_tDepCap, in_p.m_bulkJctBotGradingCoeff, int_c.m_tBulkPot, int_c.m_f1b, int_c.m_f2b, int_c.m_f3b);
if ( not (in_p.m_capBSIsGiven > 0.5)) then
(int_c.m_capbss,int_c.m_chargebss) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCap( int_c.m_tCBSs, int_c.m_vbs, int_c.m_tDepCap, in_p.m_bulkJctSideGradingCoeff, int_c.m_tBulkPot, int_c.m_f1s, int_c.m_f2s, int_c.m_f3s); | (int_c.m_capbss,int_c.m_chargebss) = Spice3.Internal.Functions.junctionCap( int_c.m_tCBSs, int_c.m_vbs, int_c.m_tDepCap, in_p.m_bulkJctSideGradingCoeff, int_c.m_tBulkPot, int_c.m_f1s, int_c.m_f2s, int_c.m_f3s);
end if;
if (not (in_p.m_capBDIsGiven > 0.5)) then
(int_c.m_capbds,int_c.m_chargebds) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCap( int_c.m_tCBDs, vbd, int_c.m_tDepCap, in_p.m_bulkJctSideGradingCoeff, int_c.m_tBulkPot, int_c.m_f1s, int_c.m_f2s, int_c.m_f3s); | (int_c.m_capbds,int_c.m_chargebds) = Spice3.Internal.Functions.junctionCap( int_c.m_tCBDs, vbd, int_c.m_tDepCap, in_p.m_bulkJctSideGradingCoeff, int_c.m_tBulkPot, int_c.m_f1s, int_c.m_f2s, int_c.m_f3s);
end if; ...

function Electrical.Spice3.Internal.Mos1.mos1RenameParameters

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
intern.m_oxideCapFactor := 0; | intern.m_cgboIsGiven := 0;
| intern.m_cgdoIsGiven = 0; intern.m_cgsoIsGiven = 0; intern.m_mjswIsGiven = 0; intern.m_pbIsGiven = 0; intern.m_surfaceStateDensityIsGiven = 0; intern.m_oxideCapFactor = 0;
intern.m_vtOIsGiven = if (ex.VTO > -1e40) then 1 else 0; ... intern.m_latDiff = ex.LD "In m lateral diffusion (default 0)";
intern.m_jctSatCur = ex.IS "A bulk junction saturation current (defaul 1e-14)"; | intern.m_jctSatCur = ex.IS "A bulk junction saturation current (default 1e-14)";
intern.m_drainResistanceIsGiven = if (ex.RD > -1e40) then 1 else 0; ...

function Electrical.Spice3.Internal.Mos1.mos1RenameParametersDev

Equations in Version 3.2 | Equations in Version 3.2.1
... dev.m_sourceSquares = NRS "NRS, length of source in squares";
dev.m_drainPerimiter = PD "PD, Drain perimeter"; | dev.m_drainPerimeter = PD "PD, Drain perimeter";
dev.m_sourcePerimiter = PS "PS, Source perimeter"; | dev.m_sourcePerimeter = PS "PS, Source perimeter";
dev.m_dICVDSIsGiven = if (IC > -1e40) then 1 else 0 "ICVDS IsGivenValue"; ... dev.m_off = OFF "Non-zero to indicate device is off for dc analysis";
dev.m_bPMOS = mtype "P type MOSfet model"; | dev.m_bPMOS = mtype "P type MOSFET model";
dev.m_nLevel = ex.LEVEL "Level"; ... dev.m_dTemp = TEMP + SpiceConstants.CONSTCtoK "Device temperature";
| dev.m_drainPerimiter = 0;
| dev.m_sourcePerimiter = 0; dev.m_uic = false;

record Electrical.Spice3.Internal.Mos2.Mos2ModelLineParams

Component | Version 3.2 | Version 3.2.1
m_critField | Real | Electrical.Spice3.Types.ElectricFieldStrength_cm
m_maxDriftVel | Real | SIunits.Velocity
m_junctionDepth | Real | SIunits.Length
m_fastSurfaceStateDensity | Real | SIunits.Conversions.NonSIunits.PerArea_cm
m_xd |  | Present

function Electrical.Spice3.Internal.Mos2.mos2RenameParameters

Equations in Version 3.2 | Equations in Version 3.2.1
... intern.m_transconductance = if (ex.KP > -1e40) then ex.KP else 2e-5;
intern.m_tnom = if (ex.TNOM > -1e40) then ex.TNOM + SpiceConstants.CONSTCtoK else 300.15; | intern.m_tnom = if (ex.TNOM > -1e40) then ex.TNOM + Spice3.Internal.SpiceConstants.CONSTCtoK else 300.15;
intern.m_jctSatCurDensity = ex.JS; ...

function Electrical.Spice3.Internal.Mos2.mos2RenameParametersDev

Equations in Version 3.2 | Equations in Version 3.2.1
... assert(ex.LEVEL== 1, "only MOS Level1 implemented");
dev.m_dTemp = TEMP + SpiceConstants.CONSTCtoK; | dev.m_dTemp = TEMP + Spice3.Internal.SpiceConstants.CONSTCtoK;

record Electrical.Spice3.Internal.Diode.DiodeModelLineParams

Component | Version 3.2 | Version 3.2.1
m_gradingCoeff | Real | SIunits.LinearTemperatureCoefficient
m_nomTemp | SIunits.Temp_C | SIunits.Temp_K

function Electrical.Spice3.Internal.Diode.diodeNoBypassCode

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
| m_dCurrent = out_cc.m_dCurrent;
(m_dCap,m_dCharge) = &nbspModelica_3_2.Electrical.Spice3.Internal.Functions.junctionCapTransTime( &nbspin_c.m_tJctCap, &nbspm_dPNVoltage, &nbspin_c.m_tJctPot*in_p.m_depletionCapCoeff, &nbspin_p.m_gradingCoeff, &nbspin_p.m_junctionPot, &nbspin_c.m_tF1, &nbspin_c.m_f2, &nbspin_c.m_f3, &nbspin_p.m_transitTime, &nbspm_dCond, &nbspm_dCurrent); ...

function Electrical.Spice3.Internal.Rsemiconductor.resistorInitEquations

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
out.m_dWidth := in_p.m_dWidth; | out.m_dLength := 0;
| out.m_dConduct = 0; out.m_dCond_dTemp = 0; out.m_dWidth = in_p.m_dWidth;
if ( in_p.m_dResIsGiven < 0.5) then ...

record Electrical.Spice3.Internal.Bjt3.BjtModelLineParams

Component | Version 3.2 | Version 3.2.1
m_tnom | start=SpiceConstants.CKTnomTemp | start=Spice3.Internal.SpiceConstants.CKTnomTemp
m_invRollOffF | Real | Electrical.Spice3.Types.InverseElectricCurrent
m_invRollOffR | Real | Electrical.Spice3.Types.InverseElectricCurrent

record Electrical.Spice3.Internal.Bjt3.Bjt3

Component | Version 3.2 | Version 3.2.1
m_invRollOffF | Real | Electrical.Spice3.Types.InverseElectricCurrent
m_invRollOffR | Real | Electrical.Spice3.Types.InverseElectricCurrent

function Electrical.Spice3.Internal.Bjt3.bjt3CalcTempDependencies

Component | Version 3.2 | Version 3.2.1
arg | Real | Electrical.Spice3.Types.GapEnergyPerEnergy

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
fact1 := in_p.m_tnom/SpiceConstants.REFTEMP; | fact1 := in_p.m_tnom/Spice3.Internal.SpiceConstants.REFTEMP;
vt = m.m_dTemp*SpiceConstants.CONSTKoverQ; | vt = m.m_dTemp*Spice3.Internal.SpiceConstants.CONSTKoverQ;
fact2 = m.m_dTemp/SpiceConstants.REFTEMP; | fact2 = m.m_dTemp/Spice3.Internal.SpiceConstants.REFTEMP;
egfet = 1.16 - (7.02e-4 * m.m_dTemp * m.m_dTemp) / (m.m_dTemp + 1108);
arg = -egfet/(2*Modelica_3_2.Constants.k*m.m_dTemp) + 1.1150877/( Modelica_3_2.Constants.k*(SpiceConstants.REFTEMP + SpiceConstants.REFTEMP)); | arg = -egfet/(2*Modelica.Constants.k*m.m_dTemp) + 1.1150877/(Modelica.Constants.k *(Spice3.Internal.SpiceConstants.REFTEMP + Spice3.Internal.SpiceConstants.REFTEMP));
pbfact = -2*vt*(1.5*Modelica_3_2.Math.log(fact2) + SpiceConstants.CHARGE *arg); | pbfact = -2*vt*(1.5*Modelica.Math.log(fact2) + Spice3.Internal.SpiceConstants.CHARGE *arg);
ratlog = Modelica_3_2.Math.log(m.m_dTemp/in_p.m_tnom); ... out_c.m_tBCleakCur = in_vl.m_leakBCcurrent * exp(factlog / in_p.m_leakBCemissionCoeff) / bfactor * in_p3.m_area;
out_c.m_tBEcap = in_p.m_depletionCapBE/(1 + in_p.m_junctionExpBE*(4e-4 *(in_p.m_tnom - SpiceConstants.REFTEMP) - gmaold)); | out_c.m_tBEcap = in_p.m_depletionCapBE/(1 + in_p.m_junctionExpBE*(4e-4*( in_p.m_tnom - Spice3.Internal.SpiceConstants.REFTEMP) - gmaold));
out_c.m_tBEpot = fact2 * pbo + pbfact;
gmanew = (out_c.m_tBEpot - pbo) / pbo;
out_c.m_tBEcap = out_c.m_tBEcap*(1 + in_p.m_junctionExpBE*(4e-4*(m.m_dTemp - SpiceConstants.REFTEMP) - gmanew)); | out_c.m_tBEcap = out_c.m_tBEcap*(1 + in_p.m_junctionExpBE*(4e-4*(m.m_dTemp - Spice3.Internal.SpiceConstants.REFTEMP) - gmanew));
pbo = (in_p.m_potentialBC - pbfact) / fact1;
gmaold = (in_p.m_potentialBC - pbo) / pbo;
out_c.m_tBCcap = in_p.m_depletionCapBC/(1 + in_p.m_junctionExpBC*(4e-4 *(in_p.m_tnom - SpiceConstants.REFTEMP) - gmaold)); | out_c.m_tBCcap = in_p.m_depletionCapBC/(1 + in_p.m_junctionExpBC*(4e-4*( in_p.m_tnom - Spice3.Internal.SpiceConstants.REFTEMP) - gmaold));
out_c.m_tBCpot = fact2 * pbo + pbfact;
gmanew = (out_c.m_tBCpot - pbo) / pbo;
out_c.m_tBCcap = out_c.m_tBCcap*(1 + in_p.m_junctionExpBC*(4e-4*(m.m_dTemp - SpiceConstants.REFTEMP) - gmanew)); | out_c.m_tBCcap = out_c.m_tBCcap*(1 + in_p.m_junctionExpBC*(4e-4*(m.m_dTemp - Spice3.Internal.SpiceConstants.REFTEMP) - gmanew));
out_c.m_tDepCapBE = in_p.m_depletionCapCoeff * out_c.m_tBEpot; ... xfc = Modelica_3_2.Math.log(1 - in_p.m_depletionCapCoeff);
out_c.m_tVcrit = vt*Modelica_3_2.Math.log(vt/(SpiceConstants.CONSTroot2 *in_p.m_satCur)); | out_c.m_tVcrit = vt*Modelica.Math.log(vt/(Spice3.Internal.SpiceConstants.CONSTroot2 *in_p.m_satCur));
out_c.m_dVt = vt; ... out_c.m_tBCcap = out_c.m_tBCcap * in_p3.m_area;
(out_c.m_tF1c,out_c.m_f2c,out_c.m_f3c) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCapCoeffs( in_p.m_junctionExpBC, in_p.m_depletionCapCoeff, out_c.m_tBCpot); | (out_c.m_tF1c,out_c.m_f2c,out_c.m_f3c) = Spice3.Internal.Functions.junctionCapCoeffs( in_p.m_junctionExpBC, in_p.m_depletionCapCoeff, out_c.m_tBCpot);
(out_c.m_tF1e,out_c.m_f2e,out_c.m_f3e) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCapCoeffs( in_p.m_junctionExpBE, in_p.m_depletionCapCoeff, out_c.m_tBEpot); | (out_c.m_tF1e,out_c.m_f2e,out_c.m_f3e) = Spice3.Internal.Functions.junctionCapCoeffs( in_p.m_junctionExpBE, in_p.m_depletionCapCoeff, out_c.m_tBEpot);

function Electrical.Spice3.Internal.Bjt3.bjt3NoBypassCode

Component | Version 3.2 | Version 3.2.1
temp | SIunits.Temp_K | Real

Equations in Version 3.2 | Equations in Version 3.2.1
... vbx = in_p.m_type * (in_m_pVoltageValues[2] - in_m_pVoltageValues[4]);
if (SpiceRoot.useInitialConditions()) then | if (Spice3.Internal.SpiceRoot.useInitialConditions()) then
if (in_p3.m_bICvbeIsGiven > 0.5) then ... vbx = vbe - vce;
elseif (SpiceRoot.initJunctionVoltages()) then | elseif (Spice3.Internal.SpiceRoot.initJunctionVoltages()) then
if (in_p3.m_bOff) then ... vbc = vbe - vce;
(cbe,gbe) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junction2( vbe, in_m.m_dTemp, in_p.m_emissionCoeffF, in_c.m_tSatCur); | (cbe,gbe) = Spice3.Internal.Functions.junction2( vbe, in_m.m_dTemp, in_p.m_emissionCoeffF, in_c.m_tSatCur);
out_cc.iBE = in_p.m_type * cbe / in_c.m_tBetaF;
(cben,gben) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junction2( vbe, in_m.m_dTemp, in_p.m_leakBEemissionCoeff, in_c.m_tBEleakCur); | (cben,gben) = Spice3.Internal.Functions.junction2( vbe, in_m.m_dTemp, in_p.m_leakBEemissionCoeff, in_c.m_tBEleakCur);
out_cc.iBEN = in_p.m_type * cben;
(cbc,gbc) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junction2( vbc, in_m.m_dTemp, in_p.m_emissionCoeffR, in_c.m_tSatCur); | (cbc,gbc) = Spice3.Internal.Functions.junction2( vbc, in_m.m_dTemp, in_p.m_emissionCoeffR, in_c.m_tSatCur);
out_cc.iBC = in_p.m_type * cbc / in_c.m_tBetaR;
(cbcn,gbcn) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junction2( vbc, in_m.m_dTemp, in_p.m_leakBCemissionCoeff, in_c.m_tBCleakCur); | (cbcn,gbcn) = Spice3.Internal.Functions.junction2( vbc, in_m.m_dTemp, in_p.m_leakBCemissionCoeff, in_c.m_tBCleakCur);
out_cc.iBCN = in_p.m_type * cbcn; ... end if;
(capbe,chargebe) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCapTransTime( in_c.m_tBEcap, vbe, in_c.m_tDepCapBE, in_p.m_junctionExpBE, in_c.m_tBEpot, in_c.m_tF1e, in_c.m_f2e, in_c.m_f3e, in_p.m_transitTimeF, gbe, cbe); | (capbe,chargebe) = Spice3.Internal.Functions.junctionCapTransTime( in_c.m_tBEcap, vbe, in_c.m_tDepCapBE, in_p.m_junctionExpBE, in_c.m_tBEpot, in_c.m_tF1e, in_c.m_f2e, in_c.m_f3e, in_p.m_transitTimeF, gbe, cbe);
out_cc.iXX = 0;
aux1 = in_c.m_tBCcap*in_p.m_baseFractionBCcap;
(capbc,chargebc) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCapTransTime( aux1, vbc, in_c.m_tDepCapBC, in_p.m_junctionExpBC, in_c.m_tBCpot, in_c.m_tF1c, in_c.m_f2c, in_c.m_f3c, in_p.m_transitTimeR, gbc, cbc); | (capbc,chargebc) = Spice3.Internal.Functions.junctionCapTransTime( aux1, vbc, in_c.m_tDepCapBC, in_p.m_junctionExpBC, in_c.m_tBCpot, in_c.m_tF1c, in_c.m_f2c, in_c.m_f3c, in_p.m_transitTimeR, gbc, cbc);
aux2= in_c.m_tBCcap*(1. - in_p.m_baseFractionBCcap);
(capbx,chargebx) = Modelica_3_2.Electrical.Spice3.Internal.Functions.junctionCap( aux2, vbx, in_c.m_tDepCapBC, in_p.m_junctionExpBC, in_c.m_tBCpot, in_c.m_tF1c, in_c.m_f2c, in_c.m_f3c); | (capbx,chargebx) = Spice3.Internal.Functions.junctionCap( aux2, vbx, in_c.m_tDepCapBC, in_p.m_junctionExpBC, in_c.m_tBCpot, in_c.m_tF1c, in_c.m_f2c, in_c.m_f3c);

function Electrical.Spice3.Internal.Bjt3.bjtRenameParameters

Component | Version 3.2 | Version 3.2.1
TBJT |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
intern.m_satCur := ex.IS; | intern.m_type := TBJT;
| intern.m_satCur = ex.IS;
intern.m_betaF = ex.BF; ... intern.m_depletionCapCoeff = ex.FC;
intern.m_tnom = if (ex.TNOM > -1e40) then ex.TNOM + SpiceConstants.CONSTCtoK else 300.15; | intern.m_tnom = if (ex.TNOM > -1e40) then ex.TNOM + Spice3.Internal.SpiceConstants.CONSTCtoK else 300.15;

function Electrical.Spice3.Internal.Bjt3.bjtRenameParametersDevTemp

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
m.m_dTemp :=TEMP + SpiceConstants.CONSTCtoK; | m.m_dTemp := TEMP + Spice3.Internal.SpiceConstants.CONSTCtoK;

model Magnetic.FluxTubes.Examples.SaturatedInductor

Component | Version 3.2 | Version 3.2.1
r_mFe |  | B(start=0)

model Magnetic.FluxTubes.Examples.SolenoidActuator.ComparisonQuasiStationary

Component | Version 3.2 | Version 3.2.1
advancedFeed_x | exact=true | exact=false

model Magnetic.FluxTubes.Examples.SolenoidActuator.Components.AdvancedSolenoid

Component | Version 3.2 | Version 3.2.1
g_mFePole |  | r_i=0

model Magnetic.FluxTubes.Basic.ElectroMagneticConverter

Component | Version 3.2 | Version 3.2.1
N | start=1 |
| =1

model Magnetic.FluxTubes.Basic.ConstantReluctance

Component | Version 3.2 | Version 3.2.1
R_m | start=1 |
| =1

model Magnetic.FluxTubes.Basic.LeakageWithCoefficient

Component | Version 3.2 | Version 3.2.1
c_usefulFlux | start=0.7 |
| =0.7

model Magnetic.FluxTubes.Basic.EddyCurrent

Component | Version 3.2 | Version 3.2.1
rho | start=0.098e-6 |
| =0.098e-6
l | start=1 |
| =1
A | start=1 |
| =1

model Magnetic.FluxTubes.Shapes.FixedShape.HollowCylinderAxialFlux

Component | Version 3.2 | Version 3.2.1
l | start=0.01 |
| =0.01
r_i | start=0 |
| =0
r_o | start=0.01 |
| =0.01

model Magnetic.FluxTubes.Shapes.FixedShape.HollowCylinderRadialFlux

Component | Version 3.2 | Version 3.2.1
l | start=0.01 |
| =0.01
r_i | start=0.01 |
| =0.01
r_o | start=0.02 |
| =0.02

model Magnetic.FluxTubes.Shapes.Force.HollowCylinderAxialFlux

Component | Version 3.2 | Version 3.2.1
r_i | start=0 |
| =0
r_o | start=0.01 |
| =0.01

model Magnetic.FluxTubes.Shapes.Force.HollowCylinderRadialFlux

Component | Version 3.2 | Version 3.2.1
r_i | start=0.01 |
| =0.01
r_o | start=0.015 |
| =0.015

model Magnetic.FluxTubes.Shapes.Force.CuboidParallelFlux

Component | Version 3.2 | Version 3.2.1
a | start=0.01 |
| =0.01
b | start=0.01 |
| =0.01

model Magnetic.FluxTubes.Shapes.Force.CuboidOrthogonalFlux

Component | Version 3.2 | Version 3.2.1
a | start=0.01 |
| =0.01
b | start=0.01 |
| =0.01

model Magnetic.FluxTubes.Shapes.Force.LeakageAroundPoles

Component | Version 3.2 | Version 3.2.1
w | start=0.1 |
| =0.1
r | start=0.01 |
| =0.01

model Magnetic.FluxTubes.Shapes.Leakage.QuarterCylinder

Component | Version 3.2 | Version 3.2.1
l | start=0.1 |
| =0.1

model Magnetic.FluxTubes.Shapes.Leakage.QuarterHollowCylinder

Component | Version 3.2 | Version 3.2.1
l | start=0.1 |
| =0.1

model Magnetic.FluxTubes.Shapes.Leakage.HalfCylinder

Component | Version 3.2 | Version 3.2.1
l | start=0.1 |
| =0.1

model Magnetic.FluxTubes.Shapes.Leakage.HalfHollowCylinder

Component | Version 3.2 | Version 3.2.1
l | start=0.1 |
| =0.1

model Magnetic.FluxTubes.Shapes.Leakage.QuarterSphere

Component | Version 3.2 | Version 3.2.1
r | start=0.005 |
| =0.005

model Magnetic.FluxTubes.Shapes.Leakage.EighthOfSphere

Component | Version 3.2 | Version 3.2.1
r | start=0.01 |
| =0.01

model Magnetic.FluxTubes.Shapes.Leakage.CoaxCylindersEndFaces

Component | Version 3.2 | Version 3.2.1
r_0 | start=10e-3 |
| =10e-3
r_1 | start=17e-3 |
| =17e-3
r_2 | start=20e-3 |
| =20e-3

connector Magnetic.FluxTubes.Interfaces.MagneticPort

Component | Version 3.2 | Version 3.2.1
V_m | SIunits.MagneticPotentialDifference | SIunits.MagneticPotential

model Magnetic.FluxTubes.Interfaces.PartialTwoPorts

Component | Version 3.2 | Version 3.2.1
Phi |  | start=0

model Magnetic.FluxTubes.Sources.SignalMagneticPotentialDifference

Component | Version 3.2 | Version 3.2.1
V_m |  | unit="A"

model Magnetic.FluxTubes.Sources.SignalMagneticFlux

Component | Version 3.2 | Version 3.2.1
Phi |  | unit="Wb"

model Magnetic.FluxTubes.Sensors.MagneticPotentialDifferenceSensor

Component | Version 3.2 | Version 3.2.1
V_m |  | final quantity="MagneticPotential"
| final unit="A"

model Magnetic.FluxTubes.Sensors.MagneticFluxSensor

Component | Version 3.2 | Version 3.2.1
Phi |  | final quantity="MagneticFlux"
| final unit="Wb"

model Magnetic.FundamentalWave.Examples.Components.EddyCurrentLosses

Component | Version 3.2 | Version 3.2.1
star_e |  | m=m
star_m |  | m=m
sineVoltage_e |  | m=m
| V=fill(1, m)
| freqHz=fill(1, m)
sineVoltage_m |  | m=m
| V=fill(1, m)
| freqHz=fill(1, m)
converter_e | orientation=Modelica_3_2.Magnetic.FundamentalWave.BasicMachines.Functions.symmetricOrientation(3) | orientation=Modelica.Electrical.MultiPhase.Functions.symmetricOrientation(m)
m=3 | m=m
effectiveTurns=fill(N, 3) | effectiveTurns=fill(N, m)
converter_m | orientation=Modelica_3_2.Magnetic.FundamentalWave.BasicMachines.Functions.symmetricOrientation(3) | orientation=Modelica.Electrical.MultiPhase.Functions.symmetricOrientation(m)
effectiveTurns=fill(N, 3) | effectiveTurns=fill(N, m)
m=3 | m=m
loss_e | G=fill(Gc, 3) | G=fill(Gc, m)
| m=m
loss_m | G=3*N^2*Gc/2 | G=m*N^2*Gc/2
powerb_e |  | m=m
powerb_m |  | m=m
RLeader | Present |
leader_e | Present |
leader_m | Present |
m |  | Present
R |  | Present
resistor_e |  | Present
resistor_m |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(sineVoltage_e.plug_n, converter_e.plug_n); | initial equation
| reluctance_e.Phi = Complex(0, 0); reluctance_m.Phi = Complex(0, 0); equation &nbspconnect(sineVoltage_e.plug_n, converter_e.plug_n);
connect(sineVoltage_e.plug_n, star_e.plug_p); ... connect(converter_m.port_n, mground_m.port_p);
connect(leader_e.plug_p, sineVoltage_e.plug_p); | connect(resistor_e.plug_p, sineVoltage_e.plug_p);
connect(sineVoltage_m.plug_p, leader_m.plug_p); | connect(sineVoltage_m.plug_p, resistor_m.plug_p);
connect(leader_e.plug_n, powerb_e.pc); | connect(resistor_e.plug_n, powerb_e.pc);
connect(powerb_e.pv, powerb_e.pc); ... connect(powerb_e.nv, sineVoltage_e.plug_n);
connect(leader_m.plug_n, powerb_m.pc); | connect(resistor_m.plug_n, powerb_m.pc);
connect(powerb_m.pc, powerb_m.pv); ...

model Magnetic.FundamentalWave.Examples.BasicMachines.AIMC_DOL

Component | Version 3.2 | Version 3.2.1
sineVoltage | freqHz=fill(fsNominal, m) | freqHz=fill(fNominal, m)
idealCloser |  | Ron=fill(1e-5, m)
| Goff=fill(1e-5, m)
aimcM | p=p | p=aimcData.p
Rs=Rs | Rs=aimcData.Rs
Lssigma=Lssigma | Lssigma=aimcData.Lssigma
Lm=Lm | Lm=aimcData.Lm
Lrsigma=Lrsigma | Lrsigma=aimcData.Lrsigma
Rr=Rr | Rr=aimcData.Rr
alpha20s(displayUnit="1/K") | alpha20s(displayUnit="1/K") = aimcData.alpha20s
alpha20r(displayUnit="1/K") | alpha20r(displayUnit="1/K") = aimcData.alpha20r
| Jr=aimcData.Jr
| Js=aimcData.Js
| fsNominal=aimcData.fsNominal
| TsRef=aimcData.TsRef
| Lszero=aimcData.Lszero
| frictionParameters=aimcData.frictionParameters
| statorCoreParameters=aimcData.statorCoreParameters
| strayLoadParameters=aimcData.strayLoadParameters
| TrRef=aimcData.TrRef
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| TsOperational=293.15
| TrOperational=293.15
aimcE | p=p | p=aimcData.p
Rs=Rs | Rs=aimcData.Rs
Lssigma=Lssigma | Lssigma=aimcData.Lssigma
Lm=Lm | Lm=aimcData.Lm
Lrsigma=Lrsigma | Lrsigma=aimcData.Lrsigma
Rr=Rr | Rr=aimcData.Rr
alpha20s(displayUnit="1/K") | alpha20s(displayUnit="1/K") = aimcData.alpha20s
alpha20r(displayUnit="1/K") | alpha20r(displayUnit="1/K") = aimcData.alpha20r
| fsNominal=aimcData.fsNominal
| TsRef=aimcData.TsRef
| Lszero=aimcData.Lszero
| Jr=aimcData.Jr
| Js=aimcData.Js
| frictionParameters=aimcData.frictionParameters
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| statorCoreParameters=aimcData.statorCoreParameters
| strayLoadParameters=aimcData.strayLoadParameters
| TsOperational=293.15
| TrRef=aimcData.TrRef
| TrOperational=293.15
fsNominal | Present |
Rs | Present |
Lssigma | Present |
Lm | Present |
Lrsigma | Present |
Rr | Present |
fNominal |  | Present
aimcData |  | Present
currentQuasiRMSSensor |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(star.pin_n, ground.p); | initial equation
| aimcE.is = zeros(m); aimcE.ir = zeros(2); aimcM.is = zeros(m); aimcM.ir[1:2] = zeros(2); equation &nbspconnect(star.pin_n, ground.p);
connect(sineVoltage.plug_n, star.plug_p); ... connect(terminalBoxM.plug_sp, aimcM.plug_sp);
connect(terminalBoxM.plugSupply, currentRMSsensorM.plug_n); |
connect(aimcE.flange, loadInertiaE.flange_a); ... connect(currentRMSsensorE.plug_p, idealCloser.plug_n);
| connect(currentRMSsensorM.plug_n, currentQuasiRMSSensor.plug_p); connect(terminalBoxM.plugSupply, currentQuasiRMSSensor.plug_n);

model Magnetic.FundamentalWave.Examples.BasicMachines.AIMS_Start

Component | Version 3.2 | Version 3.2.1
RStart | =0.16 | =0.16/aimsData.turnsRatio^2
sineVoltage | freqHz=fill(fsNominal, m) | freqHz=fill(fNominal, m)
idealCloser |  | Ron=fill(1e-5, m)
| Goff=fill(1e-5, m)
currentRMSsensorM | Electrical.Machines.Sensors.CurrentQuasiRMSSensor | Electrical.MultiPhase.Sensors.CurrentQuasiRMSSensor
aimsM | Rs=Rs | Rs=aimsData.Rs
Lssigma=Lssigma | Lssigma=aimsData.Lssigma
Lm=Lm | Lm=aimsData.Lm
Lrsigma=Lrsigma | Lrsigma=aimsData.Lrsigma
Rr=Rr | Rr=aimsData.Rr
alpha20s(displayUnit="1/K") | alpha20s(displayUnit="1/K") = aimsData.alpha20s
alpha20r(displayUnit="1/K") | alpha20r(displayUnit="1/K") = aimsData.alpha20r
p=p | p=aimsData.p
| Jr=aimsData.Jr
| Js=aimsData.Js
| fsNominal=aimsData.fsNominal
| TsRef=aimsData.TsRef
| Lszero=aimsData.Lszero
| frictionParameters=aimsData.frictionParameters
| statorCoreParameters=aimsData.statorCoreParameters
| strayLoadParameters=aimsData.strayLoadParameters
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| Lrzero=aimsData.Lrzero
| TrRef=aimsData.TrRef
| useTurnsRatio=aimsData.useTurnsRatio
| VsNominal=aimsData.VsNominal
| VrLockedRotor=aimsData.VrLockedRotor
| rotorCoreParameters=aimsData.rotorCoreParameters
| TurnsRatio=aimsData.turnsRatio
| TsOperational=293.15
| TrOperational=293.15
aimsE | p=p | p=aimsData.p
Rs=Rs | Rs=aimsData.Rs
Lssigma=Lssigma | Lssigma=aimsData.Lssigma
Lm=Lm | Lm=aimsData.Lm
Lrsigma=Lrsigma | Lrsigma=aimsData.Lrsigma
Rr=Rr | Rr=aimsData.Rr
alpha20s(displayUnit="1/K") | alpha20s(displayUnit="1/K") = aimsData.alpha20s
alpha20r(displayUnit="1/K") | alpha20r(displayUnit="1/K") = aimsData.alpha20r
| fsNominal=aimsData.fsNominal
| TsRef=aimsData.TsRef
| Lszero=aimsData.Lszero
| Jr=aimsData.Jr
| Js=aimsData.Js
| frictionParameters=aimsData.frictionParameters
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| statorCoreParameters=aimsData.statorCoreParameters
| strayLoadParameters=aimsData.strayLoadParameters
| Lrzero=aimsData.Lrzero
| TrRef=aimsData.TrRef
| useTurnsRatio=aimsData.useTurnsRatio
| VsNominal=aimsData.VsNominal
| VrLockedRotor=aimsData.VrLockedRotor
| rotorCoreParameters=aimsData.rotorCoreParameters
| TsOperational=566.3
| turnsRatio=aimsData.turnsRatio
| TrOperational=566.3
rheostatM |  | m=m
rheostatE |  | m=m
fsNominal | Present |
p | Present |
Rs | Present |
Lssigma | Present |
Lm | Present |
Lrsigma | Present |
Rr | Present |
fNominal |  | Present
aimsData |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(star.pin_n, ground.p); | initial equation
| aimsE.is = zeros(3); aimsE.ir = zeros(3); aimsM.is = zeros(3); aimsM.ir = zeros(3); equation &nbspconnect(star.pin_n, ground.p);
connect(sineVoltage.plug_n, star.plug_p); ...

model Magnetic.FundamentalWave.Examples.BasicMachines.SMPM_Inverter

Component | Version 3.2 | Version 3.2.1
currentRMSsensorM | Electrical.Machines.Sensors.CurrentQuasiRMSSensor | Electrical.MultiPhase.Sensors.CurrentQuasiRMSSensor
smpmM | Rs=Rs | Rs=smpmData.Rs
Lssigma=Lssigma | Lssigma=smpmData.Lssigma
Lmd=Lmd | Lmd=smpmData.Lmd
Lmq=Lmq | Lmq=smpmData.Lmq
Lrsigmad=Lrsigmad | Lrsigmad=smpmData.Lrsigmad
Lrsigmaq=Lrsigmaq | Lrsigmaq=smpmData.Lrsigmaq
Rrd=Rrd | Rrd=smpmData.Rrd
Rrq=Rrq | Rrq=smpmData.Rrq
p=p | p=smpmData.p
alpha20s(displayUnit="1/K") | alpha20s(displayUnit="1/K") = smpmData.alpha20s
alpha20r(displayUnit="1/K") | alpha20r(displayUnit="1/K") = smpmData.alpha20r
| Jr=smpmData.Jr
| Js=smpmData.Js
| fsNominal=smpmData.fsNominal
| TsRef=smpmData.TsRef
| Lszero=smpmData.Lszero
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| useDamperCage=smpmData.useDamperCage
| TrRef=smpmData.TrRef
| VsOpenCircuit=smpmData.VsOpenCircuit
| frictionParameters=smpmData.frictionParameters
| statorCoreParameters=smpmData.statorCoreParameters
| strayLoadParameters=smpmData.strayLoadParameters
| permanentMagnetLossParameters=smpmData.permanentMagnetLossParameters
| TsOperational=293.15
| TrOperational=293.15
| ir(fixed=true)
smpmE | Rs=Rs | Rs=smpmData.Rs
Lssigma=Lssigma | Lssigma=smpmData.Lssigma
Lmd=Lmd | Lmd=smpmData.Lmd
Lmq=Lmq | Lmq=smpmData.Lmq
Lrsigmad=Lrsigmad | Lrsigmad=smpmData.Lrsigmad
Lrsigmaq=Lrsigmaq | Lrsigmaq=smpmData.Lrsigmaq
Rrd=Rrd | Rrd=smpmData.Rrd
Rrq=Rrq | Rrq=smpmData.Rrq
p=p | p=smpmData.p
alpha20s(displayUnit="1/K") | alpha20s(displayUnit="1/K") = smpmData.alpha20s
alpha20r(displayUnit="1/K") | alpha20r(displayUnit="1/K") = smpmData.alpha20r
| fsNominal=smpmData.fsNominal
| TsRef=smpmData.TsRef
| Lszero=smpmData.Lszero
| Jr=smpmData.Jr
| Js=smpmData.Js
| frictionParameters=smpmData.frictionParameters
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| statorCoreParameters=smpmData.statorCoreParameters
| strayLoadParameters=smpmData.strayLoadParameters
| VsOpenCircuit=smpmData.VsOpenCircuit
| useDamperCage=smpmData.useDamperCage
| TrRef=smpmData.TrRef
| permanentMagnetLossParameters=smpmData.permanentMagnetLossParameters
| TsOperational=293.15
| ir(fixed=true)
| TrOperational=293.15
rotorAngleM | p=p | p=smpmM.p
rotorAngleE | p=p | p=smpmE.p
torqueStepM |  | offsetTorque=0
torqueStepE |  | offsetTorque=0
p | Present |
Rs | Present |
Lssigma | Present |
Lmd | Present |
Lmq | Present |
Lrsigmad | Present |
Lrsigmaq | Present |
Rrd | Present |
Rrq | Present |
smpmData |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(signalVoltage.plug_n, star.plug_p); | initial equation
| smpmE.is[1:2] = zeros(2); smpmM.is[1:2] = zeros(2); equation &nbspconnect(signalVoltage.plug_n, star.plug_p);
connect(star.pin_n, ground.p); ...

model Magnetic.FundamentalWave.Examples.BasicMachines.SMEE_Generator

Component | Version 3.2 | Version 3.2.1
smeeM | Rs=Rs | Rs=smeeData.Rs
Lssigma=Lssigma | Lssigma=smeeData.Lssigma
Lmd=Lmd | Lmd=smeeData.Lmd
Lmq=Lmq | Lmq=smeeData.Lmq
Lrsigmad=Lrsigmad | Lrsigmad=smeeData.Lrsigmad
Lrsigmaq=Lrsigmaq | Lrsigmaq=smeeData.Lrsigmaq
Rrd=Rrd | Rrd=smeeData.Rrd
Rrq=Rrq | Rrq=smeeData.Rrq
alpha20s(displayUnit="1/K") | alpha20s(displayUnit="1/K") = smeeData.alpha20s
alpha20r(displayUnit="1/K") | alpha20r(displayUnit="1/K") = smeeData.alpha20r
alpha20e(displayUnit="1/K") | alpha20e(displayUnit="1/K") = smeeData.alpha20e
| Jr=0.29
| Js=0.29
| p=2
| fsNominal=smeeData.fsNominal
| TsRef=smeeData.TsRef
| useDamperCage=true
| TrRef=smeeData.TrRef
| VsNominal=smeeData.VsNominal
| IeOpenCircuit=smeeData.IeOpenCircuit
| Re=smeeData.Re
| TeRef=smeeData.TeRef
| sigmae=smeeData.sigmae
| statorCoreParameters(VRef=100)
| strayLoadParameters(IRef=100)
| brushParameters(ILinear=0.01)
| TsOperational=293.15
| TrOperational=293.15
| TeOperational=293.15
| ir(fixed=true)
smeeE | Rs=Rs | Rs=smeeData.Rs
Lssigma=Lssigma | Lssigma=smeeData.Lssigma
Lmd=Lmd | Lmd=smeeData.Lmd
Lmq=Lmq | Lmq=smeeData.Lmq
Lrsigmad=Lrsigmad | Lrsigmad=smeeData.Lrsigmad
Lrsigmaq=Lrsigmaq | Lrsigmaq=smeeData.Lrsigmaq
Rrd=Rrd | Rrd=smeeData.Rrd
Rrq=Rrq | Rrq=smeeData.Rrq
alpha20s(displayUnit="1/K") | alpha20s(displayUnit="1/K") = smeeData.alpha20s
alpha20r(displayUnit="1/K") | alpha20r(displayUnit="1/K") = smeeData.alpha20r
alpha20e(displayUnit="1/K") | alpha20e(displayUnit="1/K") = smeeData.alpha20e
| p=2
| fsNominal=smeeData.fsNominal
| TsRef=smeeData.TsRef
| Jr=0.29
| Js=0.29
| frictionParameters(PRef=0)
| statorCoreParameters(PRef=0, VRef=100)
| strayLoadParameters(PRef=0, IRef=100)
| useDamperCage=true
| VsNominal=smeeData.VsNominal
| IeOpenCircuit=smeeData.IeOpenCircuit
| Re=smeeData.Re
| TeRef=smeeData.TeRef
| sigmae=smeeData.sigmae
| brushParameters(V=0, ILinear=0.01)
| TrRef=smeeData.TrRef
| TsOperational=293.15
| ir(fixed=true)
| TrOperational=293.15
| TeOperational=293.15
smeeData |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(rotorAngleE.plug_n,smeeE. plug_sn); | initial equation
| smeeE.is[1:2] = zeros(2); smeeM.is[1:2] = zeros(2); equation &nbspconnect(rotorAngleE.plug_n, smeeE.plug_sn);
connect(rotorAngleE.plug_p,smeeE. plug_sp); ...

model Magnetic.FundamentalWave.Examples.BasicMachines.SMR_Inverter

Component | Version 3.2 | Version 3.2.1
currentRMSsensorM | Electrical.Machines.Sensors.CurrentQuasiRMSSensor | Electrical.MultiPhase.Sensors.CurrentQuasiRMSSensor
smrM | p=p | p=smrData.p
Rs=Rs | Rs=smrData.Rs
Lssigma=Lssigma | Lssigma=smrData.Lssigma
Lmd=Lmd | Lmd=smrData.Lmd
Lmq=Lmq | Lmq=smrData.Lmq
Lrsigmad=Lrsigmad | Lrsigmad=smrData.Lrsigmad
Lrsigmaq=Lrsigmaq | Lrsigmaq=smrData.Lrsigmaq
Rrd=Rrd | Rrd=smrData.Rrd
Rrq=Rrq | Rrq=smrData.Rrq
alpha20s(displayUnit="1/K") | alpha20s(displayUnit="1/K") = smrData.alpha20s
alpha20r(displayUnit="1/K") | alpha20r(displayUnit="1/K") = smrData.alpha20r
| Jr=smrData.Jr
| Js=smrData.Js
| fsNominal=smrData.fsNominal
| TsRef=smrData.TsRef
| Lszero=smrData.Lszero
| frictionParameters=smrData.frictionParameters
| statorCoreParameters=smrData.statorCoreParameters
| strayLoadParameters=smrData.strayLoadParameters
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| useDamperCage=smrData.useDamperCage
| TrRef=smrData.TrRef
| TsOperational=293.15
| TrOperational=293.15
| ir(fixed=true)
smrE | p=p | p=smrData.p
Rs=Rs | Rs=smrData.Rs
Lssigma=Lssigma | Lssigma=smrData.Lssigma
Lmd=Lmd | Lmd=smrData.Lmd
Lmq=Lmq | Lmq=smrData.Lmq
Lrsigmad=Lrsigmad | Lrsigmad=smrData.Lrsigmad
Lrsigmaq=Lrsigmaq | Lrsigmaq=smrData.Lrsigmaq
Rrd=Rrd | Rrd=smrData.Rrd
Rrq=Rrq | Rrq=smrData.Rrq
alpha20s(displayUnit="1/K") | alpha20s(displayUnit="1/K") = smrData.alpha20s
alpha20r(displayUnit="1/K") | alpha20r(displayUnit="1/K") = smrData.alpha20r
| fsNominal=smrData.fsNominal
| TsRef=smrData.TsRef
| Lszero=smrData.Lszero
| Jr=smrData.Jr
| Js=smrData.Js
| frictionParameters=smrData.frictionParameters
| phiMechanical(fixed=true)
| wMechanical(fixed=true)
| statorCoreParameters=smrData.statorCoreParameters
| strayLoadParameters=smrData.strayLoadParameters
| useDamperCage=smrData.useDamperCage
| TrRef=smrData.TrRef
| TsOperational=293.15
| ir(fixed=true)
| TrOperational=293.15
rotorAngleM | p=p | p=smrM.p
rotorAngleE | p=p | p=smrE.p
torqueStepM |  | offsetTorque=0
torqueStepE |  | offsetTorque=0
p | Present |
Rs | Present |
Lssigma | Present |
Lmd | Present |
Lmq | Present |
Lrsigmad | Present |
Lrsigmaq | Present |
Rrd | Present |
Rrq | Present |
smrData |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(signalVoltage.plug_n, star.plug_p); | initial equation
| smrE.is[1:2] = zeros(2); smrM.is[1:2] = zeros(2); equation &nbspconnect(signalVoltage.plug_n, star.plug_p);
connect(star.pin_n, ground.p); ...

model Magnetic.FundamentalWave.Components.MultiPhaseElectroMagneticConverter

Component | Version 3.2 | Version 3.2.1
v |  | Present
i |  | Present
V_m |  | Present
Phi |  | Present

model Magnetic.FundamentalWave.BasicMachines.AsynchronousInductionMachines.AIM_SquirrelCage

Component | Version 3.2 | Version 3.2.1
ir |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(airGap.port_rn, rotorCage.port_n); connect(airGap.port_rp, rotorCage.port_p); |
connect(rotorCage.heatPortWinding, internalThermalPort.heatPortRotorWinding);
| connect(airGap.port_rn, rotorCage.port_p); connect(airGap.port_rp, rotorCage.port_n);

model Magnetic.FundamentalWave.BasicMachines.AsynchronousInductionMachines.AIM_SlipRing

Component | Version 3.2 | Version 3.2.1
plug_rn | final m=m | final m=mr
plug_rp | final m=m | final m=mr
rotor | final m=m | final m=mr
mr |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(rotor.plug_n, plug_rn);
connect(airGap.port_rn, rotor.port_n); connect(airGap.port_rp, rotor.port_p); |
connect(rotor.heatPortCore, internalThermalPort.heatPortRotorCore); ... connect(plug_rp, rotor.plug_p);
| connect(airGap.port_rn, rotor.port_p); connect(airGap.port_rp, rotor.port_n);

model Magnetic.FundamentalWave.BasicMachines.SynchronousInductionMachines.SM_PermanentMagnet

Component | Version 3.2 | Version 3.2.1
permanentMagnet | Magnetic.FundamentalWave.Sources.ConstantMagneticPotentialDifference | Magnetic.FundamentalWave.BasicMachines.Components.PermanentMagnet
heatFlowSensorDamperCage | Present |
TpmOperational |  | Present
permanentMagnetLossParameters |  | Present
ir |  | Present
damperCageLossPower |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
| connect(ir, rotorCage.i); connect(damperCageLossPower, rotorCage.lossPower); if not useDamperCage then damperCageLossPower=0; end if;
connect(permanentMagnet.port_p, airGap.port_rn);
connect(permanentMagnet.port_n, short.port_n); | connect(permanentMagnet.support, airGap.support);
connect(permanentMagnet.port_n, rotorCage.port_n); | connect(permanentMagnet.heatPort, internalThermalPort.heatPortPermanentMagnet);
connect(short.port_p, airGap.port_rp); | connect(permanentMagnet.flange, inertiaRotor.flange_b);
connect(rotorCage.port_p, airGap.port_rp); | connect(airGap.port_rp, rotorCage.port_n);
connect(rotorCage.heatPortWinding, heatFlowSensorDamperCage.port_a); | connect(short.port_n, airGap.port_rp);
connect(heatFlowSensorDamperCage.port_b, internalThermalPort.heatPortRotorWinding); | connect(short.port_p, permanentMagnet.port_n);
| connect(rotorCage.port_p, permanentMagnet.port_n); connect(rotorCage.heatPortWinding, internalThermalPort.heatPortRotorWinding);

model Magnetic.FundamentalWave.BasicMachines.SynchronousInductionMachines.SM_ElectricalExcited

Component | Version 3.2 | Version 3.2.1
brush |  | final useHeatPort=true
heatFlowSensorDamperCage | Present |
ir |  | Present
damperCageLossPower |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(short.port_n, rotorCage.port_n); | connect(ir, rotorCage.i);
connect(excitation.port_n, short.port_n); | connect(damperCageLossPower, rotorCage.lossPower);
connect(excitation.port_n, rotorCage.port_n); | if not useDamperCage then
| damperCageLossPower=0; end if;
connect(pin_en, excitation.pin_n);
connect(airGap.port_rn, excitation.port_p);
connect(airGap.port_rp, short.port_p); connect(airGap.port_rp, rotorCage.port_p); |
connect(pin_ep, brush.p); ... connect(excitation.heatPortWinding, internalThermalPort.heatPortExcitation);
connect(rotorCage.heatPortWinding, heatFlowSensorDamperCage.port_a); | connect(airGap.port_rp, rotorCage.port_n);
connect(heatFlowSensorDamperCage.port_b, internalThermalPort.heatPortRotorWinding); | connect(short.port_n, airGap.port_rp);
| connect(rotorCage.port_p, excitation.port_n); connect(short.port_p, excitation.port_n); connect(rotorCage.heatPortWinding, internalThermalPort.heatPortRotorWinding);

model Magnetic.FundamentalWave.BasicMachines.SynchronousInductionMachines.SM_ReluctanceRotor

Component | Version 3.2 | Version 3.2.1
heatFlowSensorDamperCage | Present |
ir |  | Present
damperCageLossPower |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(airGap.port_rn, short.port_n); | connect(ir, rotorCage.i);
connect(airGap.port_rn, rotorCage.port_n); | connect(damperCageLossPower, rotorCage.lossPower);
connect(airGap.port_rp, short.port_p); | if not useDamperCage then
connect(airGap.port_rp, rotorCage.port_p); | damperCageLossPower=0;
connect(rotorCage.heatPortWinding, heatFlowSensorDamperCage.port_a); | end if;
connect(heatFlowSensorDamperCage.port_b, internalThermalPort.heatPortRotorWinding); | connect(rotorCage.port_n, airGap.port_rp);
| connect(short.port_n, airGap.port_rp); connect(rotorCage.port_p, airGap.port_rn); connect(short.port_p, airGap.port_rn); connect(rotorCage.heatPortWinding, internalThermalPort.heatPortRotorWinding);

model Magnetic.FundamentalWave.BasicMachines.Components.SymmetricMultiPhaseWinding

Component | Version 3.2 | Version 3.2.1
electroMagneticConverter | final orientation=Functions.symmetricOrientation(m) | final orientation=Modelica.Electrical.MultiPhase.Functions.symmetricOrientation(m)
core | final G=(m/2)*GcRef/effectiveTurns^2 | final G=(m/2)*GcRef*effectiveTurns^2
strayReluctance | final R_m(d=3*effectiveTurns^2/2/Lsigma, q=3*effectiveTurns^2/2/Lsigma) | final R_m(d=m*effectiveTurns^2/2/Lsigma, q=m*effectiveTurns^2/2/Lsigma)

model Magnetic.FundamentalWave.BasicMachines.Components.SymmetricMultiPhaseCageWinding

Component | Version 3.2 | Version 3.2.1
i | each start=0 |
winding | final orientation={2*pi*(k - 1)/m for k in 1:m} | final orientation=Modelica.Electrical.MultiPhase.Functions.symmetricOrientation(m)

model Magnetic.FundamentalWave.BasicMachines.Components.SaliencyCageWinding

Component | Version 3.2 | Version 3.2.1
i | Magnetic.FundamentalWave.Types.SalientCurrent | Blocks.Interfaces.RealOutput
| sizes= 2
lossPower |  | Present

model Magnetic.FundamentalWave.Interfaces.PartialBasicInductionMachine

Component | Version 3.2 | Version 3.2.1
m | constant | parameter
| min=3
frictionParameters | wRef(start=2*pi*fsNominal/p) |
| wRef=2*pi*fsNominal/p
statorCoreParameters | wRef(start=2*pi*fsNominal/p) |
| wRef=2*pi*fsNominal/p
strayLoadParameters | wRef(start=2*pi*fsNominal/p) |
| wRef=2*pi*fsNominal/p
phiMechanical |  | start=0
wMechanical |  | start=0
powerBalance | final powerStator=Modelica_3_2.Electrical.Machines.SpacePhasors.Functions.activePower(vs, is) | final powerStator=Modelica.Electrical.MultiPhase.Functions.activePower(vs, is)
final lossPowerStatorWinding=-sum(stator.heatPortWinding.Q_flow) | final lossPowerStatorWinding=sum(stator.resistor.resistor.LossPower)
final lossPowerStatorCore=-stator.heatPortCore.Q_flow | final lossPowerStatorCore=stator.core.lossPower
final lossPowerStrayLoad=-strayLoad.heatPort.Q_flow | final lossPowerStrayLoad=strayLoad.lossPower
final lossPowerFriction=-friction.heatPort.Q_flow | final lossPowerFriction=friction.lossPower
thermalAmbient |  | final m=m
thermalPort |  | final m=m
strayLoad |  | final useHeatPort=true
| final m=m
friction |  | final useHeatPort=true
internalThermalPort |  | final m=m

Equations in Version 3.2 | Equations in Version 3.2.1
connect(stator.plug_n, plug_sn); | initial algorithm
| assert(not Modelica.Math.isPowerOf2(m), String(m) + " phases are currently not supported in this version of FundametalWave"); equation &nbspconnect(stator.plug_n, plug_sn);
connect(thermalPort,internalThermalPort); ...

record Magnetic.FundamentalWave.Types.Salient

Component | Version 3.2 | Version 3.2.1
d |  | replaceable
q |  | replaceable

model Mechanics.MultiBody.World

Component | Version 3.2 | Version 3.2.1
ndim_pointGravity | =if enableAnimation and animateGravity and gravityType == 2 then 1 else 0 | =if enableAnimation and animateGravity and gravityType == GravityTypes.UniformGravity then 1 else 0

Equations in Version 3.2 | Equations in Version 3.2.1
Connections.root(frame_b.R);
assert(Modelica_3_2.Math.Vectors.length(n) > 1.e-10, "Parameter n of World object is wrong (length(n) > 0 required)"); | assert(Modelica.Math.Vectors.length( n) > 1.e-10, "Parameter n of World object is wrong (length(n) > 0 required)");
frame_b.r_0 = zeros(3); ...

model Mechanics.MultiBody.Examples.Elementary.FreeBody

Component | Version 3.2 | Version 3.2.1
body | r_0(start={0.2,-0.5,0.1}, fixed=true) | r_0(start={0.2,-0.5,0.1}, each fixed=true)
v_0(fixed=true) |
| v_0(each fixed=true)

model Mechanics.MultiBody.Examples.Elementary.InitSpringConstant

Component | Version 3.2 | Version 3.2.1
spring | c(fixed=false) = 100 | c(fixed=false, start=100)

model Mechanics.MultiBody.Examples.Elementary.PointGravity

Component | Version 3.2 | Version 3.2.1
body1 | r_0(start={0,0.6,0}, fixed=true) | r_0(start={0,0.6,0}, each fixed=true)
v_0(start={1,0,0}, fixed=true) | v_0(start={1,0,0}, each fixed=true)
body2 | r_0(start={0.6,0.6,0}, fixed=true) | r_0(start={0.6,0.6,0}, each fixed=true)
v_0(start={0.6,0,0}, fixed=true) | v_0(start={0.6,0,0}, each fixed=true)

model Mechanics.MultiBody.Examples.Elementary.PointGravityWithPointMasses

Component | Version 3.2 | Version 3.2.1
body1 | r_0(start={0,0.6,0}, fixed=true) | r_0(start={0,0.6,0}, each fixed=true)
v_0(start={1,0,0}, fixed=true) | v_0(start={1,0,0}, each fixed=true)
body2 | r_0(start={0.6,0.6,0}, fixed=true) | r_0(start={0.6,0.6,0}, each fixed=true)
v_0(start={0.6,0,0}, fixed=true) | v_0(start={0.6,0,0}, each fixed=true)
body3 | r_0(start={0,0.8,0}, fixed=true) | r_0(start={0,0.8,0}, each fixed=true)
v_0(start={0.6,0,0}, fixed=true) | v_0(start={0.6,0,0}, each fixed=true)
body4 | r_0(start={0.3,0.8,0}, fixed=true) | r_0(start={0.3,0.8,0}, each fixed=true)
v_0(start={0.6,0,0}, fixed=true) | v_0(start={0.6,0,0}, each fixed=true)

model Mechanics.MultiBody.Examples.Elementary.PointGravityWithPointMasses2

Component | Version 3.2 | Version 3.2.1
pointMass1 | r_0(start={3,0,0}, fixed=true) | r_0(start={3,0,0}, each fixed=true)
v_0(start={0,0,-1}, fixed=true) | v_0(start={0,0,-1}, each fixed=true)
pointMass3 | r_0(start={2,1,0}, fixed=true) | r_0(start={2,1,0}, each fixed=true)
v_0(start={0,0,-1}, fixed=true) | v_0(start={0,0,-1}, each fixed=true)

model Mechanics.MultiBody.Examples.Elementary.SpringDamperSystem

Component | Version 3.2 | Version 3.2.1
body1 | r_0(start={0.3,-0.2,0}, fixed=true) | r_0(start={0.3,-0.2,0}, each fixed=true)
v_0(fixed=true) |
w_0_start(displayUnit="deg/s") = {0,0,0.03490658503988659} |
| v_0(each fixed=true)
| w_0_start(each displayUnit="deg/s") = {0,0,0.03490658503988659}

model Mechanics.MultiBody.Examples.Elementary.SpringWithMass

Component | Version 3.2 | Version 3.2.1
body | r_0(start={0,-0.3,0}, fixed=true) | r_0(start={0,-0.3,0}, each fixed=true)
v_0(fixed=true) |
| v_0(each fixed=true)

model Mechanics.MultiBody.Examples.Elementary.ThreeSprings

Component | Version 3.2 | Version 3.2.1
body1 | r_0(start={0.5,-0.3,0}, fixed=true) | r_0(start={0.5,-0.3,0}, each fixed=true)
v_0(fixed=true) |
| v_0(each fixed=true)

model Mechanics.MultiBody.Examples.Elementary.HeatLosses

Component | Version 3.2 | Version 3.2.1
body1 | r_0(start={0.3,-0.2,0}, fixed=true) | r_0(start={0.3,-0.2,0}, each fixed=true)
v_0(fixed=true) |
w_0_start(displayUnit="deg/s") = {0,0,0.034906585039887} |
| v_0(each fixed=true)
| w_0_start(each displayUnit="deg/s") = {0,0,0.034906585039887}
body2 | r_0(start={0.6,-0.2,0}, fixed=true) | r_0(start={0.6,-0.2,0}, each fixed=true)
v_0(fixed=true) |
w_0_start(displayUnit="deg/s") = {0,0,0.034906585039887} |
| v_0(each fixed=true)
| w_0_start(each displayUnit="deg/s") = {0,0,0.034906585039887}
body3 | r_0(start={0.9,-0.2,0}, fixed=true) | r_0(start={0.9,-0.2,0}, each fixed=true)
v_0(fixed=true) |
w_0_start(displayUnit="deg/s") = {0,0,0.034906585039887} |
| v_0(each fixed=true)
| w_0_start(each displayUnit="deg/s") = {0,0,0.034906585039887}

model Mechanics.MultiBody.Examples.Elementary.UserDefinedGravityField

Component | Version 3.2 | Version 3.2.1
world | redeclare function gravityAcceleration = Modelica.Mechanics.MultiBody.Examples.Elementary.Utilities.theoreticalNormalGravityWGS84 (mue=1, phi=geodeticLatitude) | redeclare function gravityAcceleration = Modelica.Mechanics.MultiBody.Examples.Elementary.Utilities.theoreticalNormalGravityWGS84 (mue=1, phi=geodeticLatitude)

model Mechanics.MultiBody.Examples.Elementary.Surfaces

Component | Version 3.2 | Version 3.2.1
surface | redeclare function surfaceCharacteristic = Modelica.Mechanics.MultiBody.Examples.Elementary.Utilities.sineSurface (x_min=x_min, x_max=x_max, y_min=y_min, y_max=y_max, z_min=z_min, z_max=z_max, wz=wz) | redeclare function surfaceCharacteristic = Modelica.Mechanics.MultiBody.Examples.Elementary.Utilities.sineSurface (x_min=x_min, x_max=x_max, y_min=y_min, y_max=y_max, z_min=z_min, z_max=z_max, wz=wz)

model Mechanics.MultiBody.Examples.Loops.EngineV6_analytic

Component | Version 3.2 | Version 3.2.1
engine | redeclare model Cylinder = Modelica.Mechanics.MultiBody.Examples.Loops.Utilities.Cylinder_analytic_CAD | redeclare model Cylinder = Modelica.Mechanics.MultiBody.Examples.Loops.Utilities.Cylinder_analytic_CAD

model Mechanics.MultiBody.Examples.Loops.Utilities.GasForce2

Equations in Version 3.2 | Equations in Version 3.2.1
... press*V = k*T;
assert(s_rel >= -1.e-12, "flange_b.s - flange_a.s (= " + String(s_rel) + ") >= 0 required for GasForce component.\n" + "Most likely, the component has to be flipped."); | assert(s_rel >= -1.e-12, "flange_b.s - flange_a.s (= " + String(s_rel, significantDigits=14) + ") >= 0 required for GasForce component.\n" + "Most likely, the component has to be flipped.");
assert(s_rel <= L + 1.e-12, " flange_b.s - flange_a.s (= " + String(s_rel) + " <= L (" + String(L) + ") required for GasForce component.\n" + "Most likely, parameter L is not correct."); | assert(s_rel <= L + 1.e-12, " flange_b.s - flange_a.s (= " + String(s_rel, significantDigits=14) + ") <= L (= " + String(L, significantDigits=14) + ") required for GasForce component.\n" + "Most likely, parameter L is not correct.");

model Mechanics.MultiBody.Examples.Loops.Utilities.CylinderBase

Component | Version 3.2 | Version 3.2.1
Rod | shapeType="2" | shapeType="modelica://Modelica/Resources/Data/Shapes/Engine/rod.dxf"
Piston | shapeType="3" | shapeType="modelica://Modelica/Resources/Data/Shapes/Engine/piston.dxf"

model Mechanics.MultiBody.Examples.Loops.Utilities.Cylinder_analytic_CAD

Component | Version 3.2 | Version 3.2.1
CrankShape | shapeType="modelica://Modelica/Resources/Data/CAD/EngineV6/1.dxf" | shapeType="modelica://Modelica/Resources/Data/Shapes/Engine/crank.dxf"

model Mechanics.MultiBody.Examples.Loops.Utilities.EngineV6_analytic

Component | Version 3.2 | Version 3.2.1
crank |  | r={0,0,0}

model Mechanics.MultiBody.Examples.Rotational3DEffects.MovingActuatedDrive

Component | Version 3.2 | Version 3.2.1
position1 |  | w(fixed=true)
position2 |  | w(fixed=true)

model Mechanics.MultiBody.Examples.Rotational3DEffects.GearConstraint

Component | Version 3.2 | Version 3.2.1
gearConstraint |  | phi_b(fixed=true)
| w_b(fixed=true)
inertia1 | phi(fixed=true) | phi(fixed=true, start=0)
w(fixed=true) | w(fixed=true, start=0)

model Mechanics.MultiBody.Examples.Systems.RobotR3.Components.PathPlanning6

Component | Version 3.2 | Version 3.2.1
angleBegDeg | unit="deg" |
| each unit="deg"
angleEndDeg | unit="deg" |
| each unit="deg"

model Mechanics.MultiBody.Examples.Systems.RobotR3.Components.Motor

Component | Version 3.2 | Version 3.2.1
convert1 | k=1 |
| k(unit="V/A") = 1
convert2 | k=1 |
| k(unit="V/A") = 1

model Mechanics.MultiBody.Examples.Systems.RobotR3.Components.MechanicalStructure

Component | Version 3.2 | Version 3.2.1
b0 | shapeType="modelica://Modelica/Resources/Data/CAD/RobotR3/0.dxf" | shapeType="modelica://Modelica/Resources/Data/Shapes/RobotR3/b0.dxf"
b1 | shapeType="modelica://Modelica/Resources/Data/CAD/RobotR3/1.dxf" | shapeType="modelica://Modelica/Resources/Data/Shapes/RobotR3/b1.dxf"
b2 | shapeType="modelica://Modelica/Resources/Data/CAD/RobotR3/2.dxf" | shapeType="modelica://Modelica/Resources/Data/Shapes/RobotR3/b2.dxf"
b3 | shapeType="modelica://Modelica/Resources/Data/CAD/RobotR3/3.dxf" | shapeType="modelica://Modelica/Resources/Data/Shapes/RobotR3/b3.dxf"
b4 | shapeType="modelica://Modelica/Resources/Data/CAD/RobotR3/4.dxf" | shapeType="modelica://Modelica/Resources/Data/Shapes/RobotR3/b4.dxf"
b5 | shapeType="modelica://Modelica/Resources/Data/CAD/RobotR3/5.dxf" | shapeType="modelica://Modelica/Resources/Data/Shapes/RobotR3/b5.dxf"
b6 | shapeType="modelica://Modelica/Resources/Data/CAD/RobotR3/6.dxf" | shapeType="modelica://Modelica/Resources/Data/Shapes/RobotR3/b6.dxf"
load | lengthDirection=rLoad | lengthDirection=to_unit1(rLoad)
| r={0,0,0}

Equations in Version 3.2 | Equations in Version 3.2.1
... qdd = der(qd);
tau = {r1.axis.tau,r2.axis.tau,r3.axis.tau,r4.axis.tau,r5.axis.tau,r6. axis.tau}; | tau = {r1.tau, r2.tau, r3.tau, r4.tau, r5.tau, r6.tau};
connect(load.frame_a, b6.frame_b); ...

model Mechanics.MultiBody.Forces.Force

Component | Version 3.2 | Version 3.2.1
connectionLine | lengthDirection=basicForce.r_0 | lengthDirection=to_unit1(basicForce.r_0)

model Mechanics.MultiBody.Forces.Torque

Component | Version 3.2 | Version 3.2.1
connectionLine | lengthDirection=basicTorque.r_0 | lengthDirection=to_unit1(basicTorque.r_0)

model Mechanics.MultiBody.Forces.ForceAndTorque

Component | Version 3.2 | Version 3.2.1
connectionLine | lengthDirection=basicForce.r_0 | lengthDirection=to_unit1(basicForce.r_0)

model Mechanics.MultiBody.Forces.LineForceWithMass

Component | Version 3.2 | Version 3.2.1
r_CM_0 | stateSelect=StateSelect.avoid |
| each stateSelect=StateSelect.avoid
v_CM_0 | stateSelect=StateSelect.avoid |
| each stateSelect=StateSelect.avoid

Equations in Version 3.2 | Equations in Version 3.2.1
r_rel_0 = frame_b.r_0 - frame_a.r_0; ...

model Mechanics.MultiBody.Forces.LineForceWithTwoMasses

Component | Version 3.2 | Version 3.2.1
r_CM1_0 | stateSelect=StateSelect.avoid |
| each stateSelect=StateSelect.avoid
r_CM2_0 | stateSelect=StateSelect.avoid |
| each stateSelect=StateSelect.avoid
v_CM1_0 | stateSelect=StateSelect.avoid |
| each stateSelect=StateSelect.avoid
v_CM2_0 | stateSelect=StateSelect.avoid |
| each stateSelect=StateSelect.avoid

Equations in Version 3.2 | Equations in Version 3.2.1
r_rel_0 = frame_b.r_0 - frame_a.r_0; ...

function Mechanics.MultiBody.Frames.Internal.maxWithoutEvent

Component | Version 3.2 | Version 3.2.1
dummy | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
... y := if u1 > u2 then u1 else u2;
dummy = 0; |

function Mechanics.MultiBody.Frames.Internal.maxWithoutEvent_d

Component | Version 3.2 | Version 3.2.1
dummy | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
... y_d := if u1 > u2 then u1_d else u2_d;
dummy = 0; |

model Mechanics.MultiBody.Joints.Prismatic

Component | Version 3.2 | Version 3.2.1
e | =Modelica_3_2.Math.Vectors.normalize(n, 0.0) | =Modelica.Math.Vectors.normalizeWithAssert(n)

model Mechanics.MultiBody.Joints.Revolute

Component | Version 3.2 | Version 3.2.1
e | =Modelica_3_2.Math.Vectors.normalize(n, 0.0) | =Modelica.Math.Vectors.normalizeWithAssert(n)

model Mechanics.MultiBody.Joints.RevolutePlanarLoopConstraint

Component | Version 3.2 | Version 3.2.1
e | =Modelica_3_2.Math.Vectors.normalize(n, 0.0) | =Modelica.Math.Vectors.normalizeWithAssert(n)
ey_a | =Modelica_3_2.Math.Vectors.normalize(cross(e, nnx_a), 0.0) | =Modelica.Math.Vectors.normalizeWithAssert(cross(e, nnx_a))

model Mechanics.MultiBody.Joints.FreeMotionScalarInit

Component | Version 3.2 | Version 3.2.1
r_rel_a_1 | SIunits.Position | Blocks.Interfaces.RealOutput
r_rel_a_2 | SIunits.Position | Blocks.Interfaces.RealOutput
r_rel_a_3 | SIunits.Position | Blocks.Interfaces.RealOutput
v_rel_a_1 | SIunits.Velocity | Blocks.Interfaces.RealOutput
v_rel_a_2 | SIunits.Velocity | Blocks.Interfaces.RealOutput
v_rel_a_3 | SIunits.Velocity | Blocks.Interfaces.RealOutput
a_rel_a_1 | SIunits.Acceleration | Blocks.Interfaces.RealOutput
a_rel_a_2 | SIunits.Acceleration | Blocks.Interfaces.RealOutput
a_rel_a_3 | SIunits.Acceleration | Blocks.Interfaces.RealOutput
angle_1 | SIunits.Angle | Blocks.Interfaces.RealOutput
angle_2 | SIunits.Angle | Blocks.Interfaces.RealOutput
angle_3 | SIunits.Angle | Blocks.Interfaces.RealOutput
angle_d_1 | SIunits.AngularVelocity | Blocks.Interfaces.RealOutput
angle_d_2 | SIunits.AngularVelocity | Blocks.Interfaces.RealOutput
angle_d_3 | SIunits.AngularVelocity | Blocks.Interfaces.RealOutput
angle_dd_1 | SIunits.AngularAcceleration | Blocks.Interfaces.RealOutput
angle_dd_2 | SIunits.AngularAcceleration | Blocks.Interfaces.RealOutput
angle_dd_3 | SIunits.AngularAcceleration | Blocks.Interfaces.RealOutput
w_rel_b_1 | SIunits.AngularVelocity | Blocks.Interfaces.RealOutput
w_rel_b_2 | SIunits.AngularVelocity | Blocks.Interfaces.RealOutput
w_rel_b_3 | SIunits.AngularVelocity | Blocks.Interfaces.RealOutput
z_rel_b_1 | SIunits.AngularAcceleration | Blocks.Interfaces.RealOutput
z_rel_b_2 | SIunits.AngularAcceleration | Blocks.Interfaces.RealOutput
z_rel_b_3 | SIunits.AngularAcceleration | Blocks.Interfaces.RealOutput
arrow | Mechanics.MultiBody.Visualizers.Advanced.Arrow | Mechanics.MultiBody.Visualizers.SignalArrow
| graphical
model_r | Present |
model_w | Present |
R_rel | Present |
R_rel_inv | Present |
initPosition |  | Present
initAngle |  | Present
initAngularVelocity |  | Present
derv |  | Present
dera |  | Present
derd |  | Present
derdd |  | Present
derz |  | Present
zeroForceAndTorque1 |  | Present
zeroForceAndTorque2 |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
if use_angle then | connect(initPosition.r_rel_a[1], r_rel_a_1);
Connections.branch(frame_a.R, frame_b.R); | connect(initPosition.r_rel_a[2], r_rel_a_2);
R_rel = Frames.axesRotations(sequence_start, {angle_1, angle_2, angle_3}, {der(angle_1), der(angle_2), der(angle_3)}); | connect(initPosition.r_rel_a[3], r_rel_a_3);
if rooted(frame_a.R) then | connect(derv[1].y, v_rel_a_1);
R_rel_inv = Frames.nullRotation(); | connect(derv[2].y, v_rel_a_2);
frame_b.R = Frames.absoluteRotation(frame_a.R, R_rel); | connect(derv[3].y, v_rel_a_3);
else | connect(dera[1].y, a_rel_a_1);
R_rel_inv = Frames.inverseRotation(R_rel); | connect(dera[2].y, a_rel_a_2);
frame_a.R = Frames.absoluteRotation(frame_b.R, R_rel_inv); | connect(dera[3].y, a_rel_a_3);
end if; | connect(initAngle.angle[1], angle_1);
else | connect(initAngle.angle[2], angle_2);
R_rel = Frames.nullRotation(); | connect(initAngle.angle[3], angle_3);
R_rel_inv = Frames.nullRotation(); | connect(derd[1].y, angle_d_1);
angle_1 = 0; | connect(derd[2].y, angle_d_2);
angle_2 = 0; | connect(derd[3].y, angle_d_3);
angle_3 = 0; | connect(derdd[1].y, angle_dd_1);
end if; | connect(derdd[2].y, angle_dd_2);
frame_a.f = zeros(3); | connect(derdd[3].y, angle_dd_3);
frame_a.t = zeros(3); | connect(initAngularVelocity.w_rel_b[1], w_rel_b_1);
frame_b.f = zeros(3); | connect(initAngularVelocity.w_rel_b[2], w_rel_b_2);
frame_b.t = zeros(3); | connect(initAngularVelocity.w_rel_b[3], w_rel_b_3);
| connect(derz[1].y, z_rel_b_1); connect(derz[2].y, z_rel_b_2); connect(derz[3].y, z_rel_b_3); connect(initPosition.r_rel_a, derv.u); connect(derv.y, dera.u); connect(initAngle.frame_a, frame_a); connect(initAngle.frame_b, frame_b); connect(initAngle.angle, derd.u); connect(derd.y, derdd.u); connect(zeroForceAndTorque1.frame_a, frame_a); connect(zeroForceAndTorque2.frame_a, frame_b); connect(initAngularVelocity.w_rel_b, derz.u); connect(frame_a, arrow.frame_a); connect(initPosition.r_rel_a, arrow.r_head);

model Mechanics.MultiBody.Joints.UniversalSpherical

Component | Version 3.2 | Version 3.2.1
rodLength | fixed=not computeRodLength | fixed=false
=Modelica_3_2.Math.Vectors.length(rRod_ia) |
| start=Modelica.Math.Vectors.length(rRod_ia)
eRod_ia | =Modelica_3_2.Math.Vectors.normalize(rRod_ia, 0.0) | =Modelica.Math.Vectors.normalizeWithAssert(rRod_ia)
length2_n2_a | unit="m2" | unit="1"
length_n2_a | SIunits.Length | Real

Equations in Version 3.2 | Equations in Version 3.2.1
Connections.branch(frame_a.R, frame_ia.R); | initial equation
| if not computeRodLength then rodLength = Modelica.Math.Vectors.length(rRod_ia); end if; equation &nbspConnections.branch(frame_a.R, frame_ia.R);
if kinematicConstraint then ... length2_n2_a = n2_a*n2_a;
length_n2_a = sqrt(length2_n2_a); ...

model Mechanics.MultiBody.Joints.GearConstraint

Component | Version 3.2 | Version 3.2.1
stateSelect |  | Present
phi_b |  | Present
w_b |  | Present
a_b |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
assert(cardinality(bearing) > 0, "Connector bearing of component is not connected");
| phi_b = actuatedRevolute_b.phi; w_b = der(phi_b); a_b = der(w_b);
connect(actuatedRevolute_a.axis, idealGear.flange_a); ...

model Mechanics.MultiBody.Joints.Assemblies.JointUPS

Component | Version 3.2 | Version 3.2.1
eAxis_ia | =Modelica_3_2.Math.Vectors.normalize(nAxis_ia, 0.0) | =Modelica.Math.Vectors.normalizeWithAssert(nAxis_ia)
e2_ia | =Modelica_3_2.Math.Vectors.normalize(cross(n1_a, eAxis_ia), 0.0) | =Modelica.Math.Vectors.normalizeWithAssert(cross(n1_a, eAxis_ia))
length2_n2_a | unit="m2" | unit="1"
length_n2_a | SIunits.Length | Real

Equations in Version 3.2 | Equations in Version 3.2.1
... length2_n2_a = n2_a*n2_a;
length_n2_a = sqrt(length2_n2_a); ...

model Mechanics.MultiBody.Joints.Assemblies.JointRRR

Component | Version 3.2 | Version 3.2.1
n_b | fixed=false |
={0,0,1} |
| each fixed=false
| start={0,0,1}
e_a | =Modelica_3_2.Math.Vectors.normalize(n_a, 0.0) | =Modelica.Math.Vectors.normalizeWithAssert(n_a)
shape_rod1 | lengthDirection=rRod1_ia | lengthDirection=to_unit1(rRod1_ia)
shape_rod2 | lengthDirection=rRod2_ib | lengthDirection=to_unit1(rRod2_ib)

model Mechanics.MultiBody.Joints.Assemblies.JointRRP

Component | Version 3.2 | Version 3.2.1
e_a | =Modelica_3_2.Math.Vectors.normalize(n_a, 0.0) | =Modelica.Math.Vectors.normalizeWithAssert(n_a)
shape_rod1 | lengthDirection=rRod1_ia | lengthDirection=to_unit1(rRod1_ia)
shape_rod2 | lengthDirection=rRod2_ib | lengthDirection=to_unit1(rRod2_ib)

model Mechanics.MultiBody.Joints.Internal.RevoluteWithLengthConstraint

Component | Version 3.2 | Version 3.2.1
position_a | each final quantity="Position" | each final quantity="Length"
position_b | each final quantity="Position" | each final quantity="Length"
e | =Modelica_3_2.Math.Vectors.normalize(n, 0.0) | =Modelica.Math.Vectors.normalizeWithAssert(n)

Equations in Version 3.2 | Equations in Version 3.2.1
... k1a = k1 - C*C;
k1b = Frames.Internal.maxWithoutEvent(k1a, 1.0e-12); ...

model Mechanics.MultiBody.Joints.Internal.PrismaticWithLengthConstraint

Component | Version 3.2 | Version 3.2.1
position_a |  | each final quantity="Length"
| each final unit="m"
position_b |  | each final quantity="Length"
| each final unit="m"
e | =Modelica_3_2.Math.Vectors.normalize(n, 0.0) | =Modelica.Math.Vectors.normalizeWithAssert(n)

Equations in Version 3.2 | Equations in Version 3.2.1
... k1a = k1*k1 - C;
k1b = Frames.Internal.maxWithoutEvent(k1a, 1.0e-12); ...

model Mechanics.MultiBody.Parts.Fixed

Component | Version 3.2 | Version 3.2.1
lengthDirection | SIunits.Position | Mechanics.MultiBody.Types.Axis
sizes= 3 |
widthDirection | SIunits.Position | Mechanics.MultiBody.Types.Axis
sizes= 3 |

model Mechanics.MultiBody.Parts.FixedTranslation

Component | Version 3.2 | Version 3.2.1
lengthDirection | =r - r_shape | =to_unit1(r - r_shape)

model Mechanics.MultiBody.Parts.FixedRotation

Component | Version 3.2 | Version 3.2.1
lengthDirection | =r - r_shape | =to_unit1(r - r_shape)
R_rel | =if rotationType == 1 then Frames.planarRotation(Modelica_3_2.Math.Vectors.normalize(n, 0.0), Cv.from_deg(angle), 0) else if rotationType == 2 then Frames.from_nxy(n_x, n_y) else Frames.axesRotations(sequence, Cv.from_deg(angles), zeros(3)) | =if rotationType == Types.RotationTypes.RotationAxis then Frames.planarRotation(Modelica.Math.Vectors.normalizeWithAssert(n), Cv.from_deg(angle), 0) else if rotationType == Types.RotationTypes.TwoAxesVectors then Frames.from_nxy(n_x, n_y) else Frames.axesRotations(sequence, Cv.from_deg(angles), zeros(3))

model Mechanics.MultiBody.Parts.Body

Component | Version 3.2 | Version 3.2.1
cylinder | lengthDirection=r_CM | lengthDirection=to_unit1(r_CM)

model Mechanics.MultiBody.Parts.BodyShape

Component | Version 3.2 | Version 3.2.1
lengthDirection | =r - r_shape | =to_unit1(r - r_shape)

model Mechanics.MultiBody.Parts.BodyBox

Component | Version 3.2 | Version 3.2.1
lengthDirection | =r - r_shape | =to_unit1(r - r_shape)
r_CM | =r_shape + Modelica_3_2.Math.Vectors.normalize(lengthDirection)*length/2 | =r_shape + normalizeWithAssert(lengthDirection)*length/2

Equations in Version 3.2 | Equations in Version 3.2.1
... a_0 = der(v_0);
assert(innerWidth <= width, "parameter innerWidth is greater as parameter width"); | assert(innerWidth <= width, "parameter innerWidth is greater than parameter width");
assert(innerHeight <= height, "parameter innerHeight is greater as paraemter height"); | assert(innerHeight <= height, "parameter innerHeight is greater than parameter height");
connect(frameTranslation.frame_a, frame_a); ...

model Mechanics.MultiBody.Parts.BodyCylinder

Component | Version 3.2 | Version 3.2.1
lengthDirection | =r - r_shape | =to_unit1(r - r_shape)
r_CM | =r_shape + Modelica_3_2.Math.Vectors.normalize(lengthDirection)*length/2 | =r_shape + normalizeWithAssert(lengthDirection)*length/2

Equations in Version 3.2 | Equations in Version 3.2.1
... a_0 = der(v_0);
assert(innerDiameter < diameter, "parameter innerDiameter is greater as parameter diameter."); | assert(innerDiameter < diameter, "parameter innerDiameter is greater than parameter diameter");
connect(frameTranslation.frame_a, frame_a); ...

model Mechanics.MultiBody.Parts.PointMass

Equations in Version 3.2 | Equations in Version 3.2.1
... if Connections.isRoot(frame_a.R) then
assert(cardinality(frame_a)==0, " A Modelica.Mechanics.MultiBody.Parts.PointMass model is connected in a way, so that no equations are present to compute frame_a.R (the orientation object in the connector). Setting frame_a.R to an arbitrary value in the PointMass model, might lead to a wrong overall model, depending on how the PointMass model is used. You can avoid this message, by providing equations that compute the orientation object, e.g., by using the Modelica.Mechanics.MultiBody.Joints.FreeMotion joint. If a PointMass model is not connected at all, the orientation object is set to a unit rotation. But this is the only case where this is done. "); | assert(cardinality(frame_a) == 0, " A Modelica.Mechanics.MultiBody.Parts.PointMass model is connected in a way, so that no equations are present to compute frame_a.R (the orientation object in the connector). Setting frame_a.R to an arbitrary value in the PointMass model, might lead to a wrong overall model, depending on how the PointMass model is used. You can avoid this message, by providing equations that compute the orientation object, e.g., by using the Modelica.Mechanics.MultiBody.Joints.FreeMotion joint. If a PointMass model is not connected at all, the orientation object is set to a unit rotation. But this is the only case where this is done. ");
frame_a.R = Frames.nullRotation(); ...

model Mechanics.MultiBody.Parts.Rotor1D

Component | Version 3.2 | Version 3.2.1
e | =Modelica_3_2.Math.Vectors.normalize(n, 0.0) | =Modelica.Math.Vectors.normalizeWithAssert(n)
inertia |  | stateSelect=StateSelect.never
rotorWith3DEffects |  | stateSelect=StateSelect.never

model Mechanics.MultiBody.Parts.BevelGear1D

Component | Version 3.2 | Version 3.2.1
e_a | =Modelica_3_2.Math.Vectors.normalize(n_a, 0.0) | =Modelica.Math.Vectors.normalizeWithAssert(n_a)
e_b | =Modelica_3_2.Math.Vectors.normalize(n_b, 0.0) | =Modelica.Math.Vectors.normalizeWithAssert(n_b)

model Mechanics.MultiBody.Parts.RollingWheel

Component | Version 3.2 | Version 3.2.1
angles | fixed=true |
| each fixed=true
der_angles | fixed=true |
| each fixed=true

model Mechanics.MultiBody.Sensors.AbsoluteSensor

Component | Version 3.2 | Version 3.2.1
r | each final quantity="Position" | each final quantity="Length"
angles | each final quantity="Angles" | each final quantity="Angle"
transformVector_a | Mechanics.MultiBody.Sensors.TansformAbsoluteVector | Mechanics.MultiBody.Sensors.TransformAbsoluteVector
transformVector_z | Mechanics.MultiBody.Sensors.TansformAbsoluteVector | Mechanics.MultiBody.Sensors.TransformAbsoluteVector

model Mechanics.MultiBody.Sensors.RelativeSensor

Component | Version 3.2 | Version 3.2.1
r_rel | each final quantity="Position" | each final quantity="Length"
angles | each final quantity="Angles" | each final quantity="Angle"
transformVector_v_rel | Mechanics.MultiBody.Sensors.TansformRelativeVector | Mechanics.MultiBody.Sensors.TransformRelativeVector
transformVector_a_rel | Mechanics.MultiBody.Sensors.TansformRelativeVector | Mechanics.MultiBody.Sensors.TransformRelativeVector
transformVector_z_rel | Mechanics.MultiBody.Sensors.TansformRelativeVector | Mechanics.MultiBody.Sensors.TransformRelativeVector

model Mechanics.MultiBody.Sensors.AbsolutePosition

Component | Version 3.2 | Version 3.2.1
r | each final quantity="Position" | each final quantity="Length"

model Mechanics.MultiBody.Sensors.AbsoluteVelocity

Component | Version 3.2 | Version 3.2.1
tansformAbsoluteVector | Mechanics.MultiBody.Sensors.TansformAbsoluteVector | Mechanics.MultiBody.Sensors.TransformAbsoluteVector

model Mechanics.MultiBody.Sensors.AbsoluteAngles

Component | Version 3.2 | Version 3.2.1
angles | each final quantity="Angles" | each final quantity="Angle"

model Mechanics.MultiBody.Sensors.AbsoluteAngularVelocity

Component | Version 3.2 | Version 3.2.1
w | each final unit="1/s" | each final unit="rad/s"

model Mechanics.MultiBody.Sensors.RelativeVelocity

Component | Version 3.2 | Version 3.2.1
tansformRelativeVector | Mechanics.MultiBody.Sensors.TansformRelativeVector | Mechanics.MultiBody.Sensors.TransformRelativeVector

model Mechanics.MultiBody.Sensors.RelativeAngles

Component | Version 3.2 | Version 3.2.1
angles | each final quantity="Angles" | each final quantity="Angle"
displayUnit="deg" |
| each displayUnit="deg"

model Mechanics.MultiBody.Sensors.RelativeAngularVelocity

Component | Version 3.2 | Version 3.2.1
w_rel | each final unit="1/s" | each final unit="rad/s"

model Mechanics.MultiBody.Sensors.CutForce

Component | Version 3.2 | Version 3.2.1
force | final quantity="Force" |
final unit="N" |
| each final quantity="Force"
| each final unit="N"

model Mechanics.MultiBody.Sensors.CutForceAndTorque

Component | Version 3.2 | Version 3.2.1
force | final quantity="Force" |
final unit="N" |
| each final quantity="Force"
| each final unit="N"

model Mechanics.MultiBody.Sensors.TansformAbsoluteVector

Component | Version 3.2 | Version 3.2.1
frame_a | Present |
frame_resolve | Present |
r_in | Present |
r_out | Present |
frame_r_in | Present |
frame_r_out | Present |
basicTransformVector | Present |
zeroPosition | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
connect(basicTransformVector.frame_a, frame_a); connect(basicTransformVector.frame_resolve, frame_resolve); connect(zeroPosition.frame_resolve, basicTransformVector.frame_resolve); connect(basicTransformVector.r_out, r_out); connect(basicTransformVector.r_in, r_in); |

model Mechanics.MultiBody.Sensors.TansformRelativeVector

Component | Version 3.2 | Version 3.2.1
frame_resolve | Present |
r_in | Present |
r_out | Present |
frame_r_in | Present |
frame_r_out | Present |
basicTransformVector | Present |
zeroPosition | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
connect(basicTransformVector.frame_a, frame_a); connect(basicTransformVector.frame_b, frame_b); connect(basicTransformVector.frame_resolve, frame_resolve); connect(zeroPosition.frame_resolve, basicTransformVector.frame_resolve); connect(basicTransformVector.r_out, r_out); connect(basicTransformVector.r_in, r_in); |

model Mechanics.MultiBody.Sensors.Internal.BasicAbsolutePosition

Component | Version 3.2 | Version 3.2.1
r | each final quantity="Position" | each final quantity="Length"

model Mechanics.MultiBody.Sensors.Internal.BasicAbsoluteAngularVelocity

Component | Version 3.2 | Version 3.2.1
w | final quantity="AngularVelocity" |
final unit="rad/s" |
| each final quantity="AngularVelocity"
| each final unit="rad/s"

model Mechanics.MultiBody.Sensors.Internal.BasicRelativePosition

Component | Version 3.2 | Version 3.2.1
r_rel | each final quantity="Position" | each final quantity="Length"

model Mechanics.MultiBody.Sensors.Internal.BasicRelativeAngularVelocity

Component | Version 3.2 | Version 3.2.1
w_rel | final quantity="AngularVelocity" |
final unit="rad/s" |
| each final quantity="AngularVelocity"
| each final unit="rad/s"

model Mechanics.MultiBody.Sensors.Internal.BasicCutForce

Component | Version 3.2 | Version 3.2.1
force | final quantity="Force" |
final unit="N" |
| each final quantity="Force"
| each final unit="N"

model Mechanics.MultiBody.Sensors.Internal.BasicCutTorque

Component | Version 3.2 | Version 3.2.1
torque | final quantity="Torque" |
final unit="N.m" |
| each final quantity="Torque"
| each final unit="N.m"

model Mechanics.MultiBody.Visualizers.FixedShape2

Component | Version 3.2 | Version 3.2.1
lengthDirection | =r - r_shape | =to_unit1(r - r_shape)

model Mechanics.MultiBody.Visualizers.SignalArrow

Component | Version 3.2 | Version 3.2.1
r_head | each final quantity="Position" | each final quantity="Length"

model Mechanics.MultiBody.Visualizers.Torus

Component | Version 3.2 | Version 3.2.1
surface | redeclare function surfaceCharacteristic = Modelica.Mechanics.MultiBody.Visualizers.Advanced.SurfaceCharacteristics.torus (ri=ri, ro=ro, opening=opening, startAngle=startAngle, stopAngle=stopAngle) | redeclare function surfaceCharacteristic = Modelica.Mechanics.MultiBody.Visualizers.Advanced.SurfaceCharacteristics.torus (ri=ri, ro=ro, opening=opening, startAngle=startAngle, stopAngle=stopAngle)

model Mechanics.MultiBody.Visualizers.VoluminousWheel

Component | Version 3.2 | Version 3.2.1
torus | redeclare function surfaceCharacteristic = Modelica.Mechanics.MultiBody.Visualizers.Advanced.SurfaceCharacteristics.torus (ri=ri, ro=rCurvature2, opening=Modelica_3_2.Constants.pi - Modelica_3_2.Math.asin(rw/rCurvature2)) | redeclare function surfaceCharacteristic = Modelica.Mechanics.MultiBody.Visualizers.Advanced.SurfaceCharacteristics.torus (ri=ri, ro=rCurvature2, opening=Modelica.Constants.pi - Modelica.Math.asin(rw/rCurvature2))

model Mechanics.MultiBody.Visualizers.PipeWithScalarField

Component | Version 3.2 | Version 3.2.1
xsi | min=0 |
max=1 |
| each min=0
| each max=1

function Mechanics.MultiBody.Visualizers.Colors.ColorMaps.jet

Component | Version 3.2 | Version 3.2.1
v1 | =if d >= 0.5 then {1} else if d >= 0.25 then 1 - d:d:1 else 0.5 + d:d:1 | ={1 - (b - i)*d for i in 1:b}
v4 | =1 - d:-d:0.5 | ={0.5 + (c - i)*d for i in 1:c}
b |  | Present
c |  | Present

function Mechanics.MultiBody.Visualizers.Colors.scalarToColor

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
color :=colorMap[integer((size(colorMap, 1) - 1)/(T_max - T_min)* min((max(T,T_min) - T_min), T_max) + 1), :]; | color := colorMap[1 + integer((size(colorMap,1)-1)*(max(T_min,min(T,T_max))-T_min) / (T_max-T_min)), :];

model Mechanics.MultiBody.Visualizers.Advanced.Arrow

Component | Version 3.2 | Version 3.2.1
arrowLine | length=noEvent(max(0, length - diameter*Types.Defaults.ArrowHeadLengthFraction)) | length=arrowLength
lengthDirection=r_head | lengthDirection=to_unit1(r_head)
arrowHead | lengthDirection=r_head | lengthDirection=to_unit1(r_head)
r=rvisobj + rxvisobj*arrowLine.length | r=rvisobj + rxvisobj*arrowLength
arrowLength |  | Present

model Mechanics.MultiBody.Visualizers.Advanced.DoubleArrow

Component | Version 3.2 | Version 3.2.1
arrowLine | length=noEvent(max(0, length - 1.5*diameter*MultiBody.Types.Defaults.ArrowHeadLengthFraction)) | length=arrowLength
lengthDirection=r_head | lengthDirection=to_unit1(r_head)
arrowHead1 | lengthDirection=r_head | lengthDirection=to_unit1(r_head)
r=rvisobj + rxvisobj*arrowLine.length | r=rvisobj + rxvisobj*arrowLength
arrowHead2 | lengthDirection=r_head | lengthDirection=to_unit1(r_head)
r=rvisobj + rxvisobj*(arrowLine.length + 0.5*arrowHead1.length) | r=rvisobj + rxvisobj*(arrowLength + 0.5*headLength)
arrowLength |  | Present

model Mechanics.MultiBody.Visualizers.Advanced.PipeWithScalarField

Component | Version 3.2 | Version 3.2.1
xsi | min=0 |
max=1 |
| each min=0
| each max=1
surface | redeclare function surfaceCharacteristic = Modelica.Mechanics.MultiBody.Visualizers.Advanced.SurfaceCharacteristics.pipeWithScalarField (rOuter=rOuter, length=length, xsi=xsi, T=T, T_min=T_min, T_max=T_max, colorMap=colorMapData) | redeclare function surfaceCharacteristic = Modelica.Mechanics.MultiBody.Visualizers.Advanced.SurfaceCharacteristics.pipeWithScalarField (rOuter=rOuter, length=length, xsi=xsi, T=T, T_min=T_min, T_max=T_max, colorMap=colorMapData)

model Mechanics.Rotational.Examples.First

Component | Version 3.2 | Version 3.2.1
inertia2 | w(fixed=true) | w(fixed=true, start=0)
inertia3 | w(fixed=true) | w(fixed=true, start=0)

model Mechanics.Rotational.Examples.FirstGrounded

Component | Version 3.2 | Version 3.2.1
inertia2 | w(fixed=true) | w(fixed=true, start=0)
inertia3 | w(fixed=true) | w(fixed=true, start=0)

model Mechanics.Rotational.Examples.CoupledClutches

Component | Version 3.2 | Version 3.2.1
J2 | w(fixed=true) | w(fixed=true, start=0)
J3 | w(fixed=true) | w(fixed=true, start=0)
J4 | w(fixed=true) | w(fixed=true, start=0)

model Mechanics.Rotational.Examples.LossyGearDemo1

Component | Version 3.2 | Version 3.2.1
Inertia2 | w(fixed=true) | w(fixed=true, start=0)

model Mechanics.Rotational.Examples.LossyGearDemo2

Component | Version 3.2 | Version 3.2.1
Inertia2 | w(fixed=true) | w(fixed=true, start=0)

model Mechanics.Rotational.Examples.ElasticBearing

Component | Version 3.2 | Version 3.2.1
shaft | w(fixed=true) | w(fixed=true, start=0)
load | w(fixed=true) | w(fixed=true, start=0)
multiSensor |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(idealGear.support, housing.flange_b);
connect(housing.flange_a, springDamper.flange_b); |
connect(ramp.y, torque.tau);
connect(fixed.flange, torque.support);
| connect(housing.flange_a, multiSensor.flange_b); connect(multiSensor.flange_a, springDamper.flange_b);

model Mechanics.Rotational.Examples.RollingWheel

Component | Version 3.2 | Version 3.2.1
inertia |  | phi(fixed=true, start=0)
| w(fixed=true, start=0)

model Mechanics.Rotational.Examples.SimpleGearShift

Component | Version 3.2 | Version 3.2.1
load |  | phi(fixed=true, start=0)
| w(fixed=true, start=0)
clutch |  | phi_rel(fixed=true)
| w_rel(fixed=true)

model Mechanics.Rotational.Components.Clutch

Component | Version 3.2 | Version 3.2.1
a_rel | Present |

model Mechanics.Rotational.Components.InitializeFlange

Component | Version 3.2 | Version 3.2.1
phi_start |  | unit="rad"
w_start |  | unit="rad/s"
a_start |  | unit="rad/s2"

model Mechanics.Rotational.Components.RelativeStates

Component | Version 3.2 | Version 3.2.1
phi_rel |  | nominal=if phi_nominal >= Modelica.Constants.eps then phi_nominal else 1
phi_nominal |  | Present

model Mechanics.Rotational.Sensors.AngleSensor

Component | Version 3.2 | Version 3.2.1
phi |  | unit="rad"
| displayUnit="deg"

model Mechanics.Rotational.Sensors.SpeedSensor

Component | Version 3.2 | Version 3.2.1
w |  | unit="rad/s"

model Mechanics.Rotational.Sensors.AccSensor

Component | Version 3.2 | Version 3.2.1
a |  | unit="rad/s2"

model Mechanics.Rotational.Sensors.RelAngleSensor

Component | Version 3.2 | Version 3.2.1
phi_rel |  | unit="rad"
| displayUnit="deg"

model Mechanics.Rotational.Sensors.RelSpeedSensor

Component | Version 3.2 | Version 3.2.1
w_rel |  | unit="rad/s"

model Mechanics.Rotational.Sensors.RelAccSensor

Component | Version 3.2 | Version 3.2.1
a_rel |  | unit="rad/s2"

model Mechanics.Rotational.Sensors.TorqueSensor

Component | Version 3.2 | Version 3.2.1
tau |  | unit="N.m"

model Mechanics.Rotational.Sensors.PowerSensor

Component | Version 3.2 | Version 3.2.1
power |  | unit="W"

model Mechanics.Rotational.Sources.Speed

Component | Version 3.2 | Version 3.2.1
w_ref |  | unit="rad/s"

model Mechanics.Rotational.Sources.Accelerate

Component | Version 3.2 | Version 3.2.1
a_ref |  | unit="rad/s2"

model Mechanics.Rotational.Sources.Torque

Component | Version 3.2 | Version 3.2.1
tau |  | unit="N.m"

model Mechanics.Rotational.Sources.Torque2

Component | Version 3.2 | Version 3.2.1
tau |  | unit="N.m"

model Mechanics.Rotational.Interfaces.PartialCompliantWithRelativeStates

Component | Version 3.2 | Version 3.2.1
phi_rel | nominal=phi_nominal | nominal=if phi_nominal >= Modelica.Constants.eps then phi_nominal else 1
phi_nominal |  | min=0.0

model Mechanics.Translational.Examples.Sensors

Component | Version 3.2 | Version 3.2.1
multiSensor |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
connect(forceSensor.flange_b, mass.flange_a); |
connect(sineForce.y, force.f); ... connect(mass.flange_b, positionSensor2.flange);
| connect(forceSensor.flange_b, multiSensor.flange_a); connect(multiSensor.flange_b, mass.flange_a);

model Mechanics.Translational.Examples.HeatLosses

Component | Version 3.2 | Version 3.2.1
mass3 | v(fixed=false) | v(fixed=true)
springDamper1 |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(sine2.y, brake.f_normalized);
connect(brake.flange_b, massWithStopAndFriction.flange_a); |
connect(elastoGap.flange_b, mass1.flange_a); ... connect(massWithStopAndFriction.heatPort, convection.solid);
| connect(brake.flange_b, springDamper1.flange_a); connect(springDamper1.flange_b, massWithStopAndFriction.flange_a); connect(springDamper1.heatPort, convection.solid);

model Mechanics.Translational.Components.ElastoGap

Component | Version 3.2 | Version 3.2.1
c | Real | SIunits.TranslationalSpringConstant
d | Real | SIunits.TranslationalDampingConstant

model Mechanics.Translational.Components.SupportFriction

Equations in Version 3.2 | Equations in Version 3.2.1
... free = false;
s = s_a - s_support; | s = flange_a.s - s_support;
s_a = s_b; | flange_a.s = flange_b.s;
v = der(s); ...

model Mechanics.Translational.Components.InitializeFlange

Component | Version 3.2 | Version 3.2.1
s_start |  | unit="m"
v_start |  | unit="m/s"
a_start |  | unit="m/s2"

model Mechanics.Translational.Components.MassWithStopAndFriction

Component | Version 3.2 | Version 3.2.1
stopped | =if s <= smin + L/2 then -1 else if s >= smax - L/2 then +1 else 0 |

Equations in Version 3.2 | Equations in Version 3.2.1
... lossPower = f*v_relfric;
algorithm |
when (initial()) then ... end when;
| stopped = if s <= smin + L/2 then -1 else if s >= smax - L/2 then +1 else 0;
when stopped <> 0 then
reinit(s, if stopped < 0 then smin + L/2 else smax - L/2);
if (not initial() or stopped*v>0) then |
reinit(v, 0);
end if; |
end when;

model Mechanics.Translational.Sensors.PositionSensor

Component | Version 3.2 | Version 3.2.1
s |  | unit="m"

model Mechanics.Translational.Sensors.SpeedSensor

Component | Version 3.2 | Version 3.2.1
v |  | unit="m/s"

model Mechanics.Translational.Sensors.AccSensor

Component | Version 3.2 | Version 3.2.1
a |  | unit="m/s2"

model Mechanics.Translational.Sensors.RelPositionSensor

Component | Version 3.2 | Version 3.2.1
s_rel |  | unit="m"

model Mechanics.Translational.Sensors.RelSpeedSensor

Component | Version 3.2 | Version 3.2.1
v_rel |  | unit="m/s"

model Mechanics.Translational.Sensors.RelAccSensor

Component | Version 3.2 | Version 3.2.1
a_rel |  | unit="m/s2"

model Mechanics.Translational.Sensors.ForceSensor

Component | Version 3.2 | Version 3.2.1
f |  | unit="N"

model Mechanics.Translational.Sensors.PowerSensor

Component | Version 3.2 | Version 3.2.1
power |  | unit="W"

model Mechanics.Translational.Sources.Position

Component | Version 3.2 | Version 3.2.1
s_ref |  | unit="m"

model Mechanics.Translational.Sources.Speed

Component | Version 3.2 | Version 3.2.1
v_ref |  | unit="m/s"

model Mechanics.Translational.Sources.Accelerate

Component | Version 3.2 | Version 3.2.1
a_ref |  | unit="m/s2"

model Mechanics.Translational.Sources.Force

Component | Version 3.2 | Version 3.2.1
f |  | unit="N"

model Mechanics.Translational.Sources.Force2

Component | Version 3.2 | Version 3.2.1
f |  | unit="N"

model Mechanics.Translational.Interfaces.PartialCompliant

Component | Version 3.2 | Version 3.2.1
s_rel | SIunits.Distance | SIunits.Position

model Mechanics.Translational.Interfaces.PartialCompliantWithRelativeStates

Component | Version 3.2 | Version 3.2.1
s_rel | SIunits.Distance | SIunits.Position

model Mechanics.Translational.Interfaces.PartialElementaryOneFlangeAndSupport

Component | Version 3.2 | Version 3.2.1
s | =flange.s - internalSupport.s |

Equations in Version 3.2 | Equations in Version 3.2.1
| s = flange.s - internalSupport.s;
connect(internalSupport.flange, support); ...

model Mechanics.Translational.Interfaces.PartialElementaryOneFlangeAndSupport2

Component | Version 3.2 | Version 3.2.1
s | =flange.s - s_support |

Equations in Version 3.2 | Equations in Version 3.2.1
| s = flange.s - s_support;
if not useSupport then ...

model Mechanics.Translational.Interfaces.PartialElementaryTwoFlangesAndSupport

Component | Version 3.2 | Version 3.2.1
s_a | =flange_a.s - internalSupport.s |
s_b | =flange_b.s - internalSupport.s |

Equations in Version 3.2 | Equations in Version 3.2.1
| s_a = flange_a.s - internalSupport.s; s_b = flange_b.s - internalSupport.s;
connect(internalSupport.flange, support); ...

model Mechanics.Translational.Interfaces.PartialElementaryTwoFlangesAndSupport2

Component | Version 3.2 | Version 3.2.1
s_a | =flange_a.s - s_support |
s_b | =flange_b.s - s_support |

Equations in Version 3.2 | Equations in Version 3.2.1
| s_a = flange_a.s - s_support; s_b = flange_b.s - s_support;
if not useSupport then ...

model Mechanics.Translational.Interfaces.PartialForce

Component | Version 3.2 | Version 3.2.1
f | =flange.f |

Equations in Version 3.2 | Equations in Version 3.2.1
| f = flange.f;

model Fluid.Examples.PumpingSystem

Component | Version 3.2 | Version 3.2.1
source | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Medium
pipe | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Medium
pumps | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Medium
redeclare function flowCharacteristic = Modelica.Fluid.Machines.BaseClasses.PumpCharacteristics.quadraticFlow (V_flow_nominal={0,0.25,0.5}, head_nominal={100,60,0}) | redeclare function flowCharacteristic = Modelica.Fluid.Machines.BaseClasses.PumpCharacteristics.quadraticFlow (V_flow_nominal={0,0.25,0.5}, head_nominal={100,60,0})
energyDynamics=Modelica_3_2.Fluid.Types.Dynamics.DynamicFreeInitial | energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial
massDynamics=Modelica_3_2.Fluid.Types.Dynamics.DynamicFreeInitial | massDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial
V=50/1000 |
T_start=Modelica_3_2.SIunits.Conversions.from_degC(20) |
| V(displayUnit="l") = 0.05
reservoir | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Medium
massDynamics=Modelica_3_2.Fluid.Types.Dynamics.FixedInitial |
userValve | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Medium
sink | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Medium
reservoirPressure | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Medium
system |  | energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial

model Fluid.Examples.HeatingSystem

Component | Version 3.2 | Version 3.2.1
tank | redeclare model HeatTransfer = Modelica.Fluid.Vessels.BaseClasses.HeatTransfer.IdealHeatTransfer (k=10) | redeclare model HeatTransfer = Modelica.Fluid.Vessels.BaseClasses.HeatTransfer.IdealHeatTransfer (k=10)
s(each start=1) |
| T_start=Modelica.SIunits.Conversions.from_degC(20)
valve |  | dp_start=18000
heater | redeclare model HeatTransfer = Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.IdealFlowHeatTransfer | redeclare model HeatTransfer = Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.IdealFlowHeatTransfer
modelStructure=Modelica_3_2.Fluid.Types.ModelStructure.a_vb | modelStructure=Modelica.Fluid.Types.ModelStructure.a_v_b
redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow | redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow
| p_a_start=130000
radiator | redeclare model HeatTransfer = Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.IdealFlowHeatTransfer | redeclare model HeatTransfer = Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.IdealFlowHeatTransfer
redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow | redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow
modelStructure=Modelica_3_2.Fluid.Types.ModelStructure.av_b | modelStructure=Modelica.Fluid.Types.ModelStructure.a_v_b
| p_a_start=110000
pipe | redeclare model HeatTransfer = Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.IdealFlowHeatTransfer | redeclare model HeatTransfer = Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.IdealFlowHeatTransfer
redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow | redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow
| p_a_start=130000

model Fluid.Examples.DrumBoiler.DrumBoiler

Component | Version 3.2 | Version 3.2.1
evaporator | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
sink | p=from_bar(0.5) | p=Cv.from_bar(0.5)
redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase
massFlowRate | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
temperature | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
pressure | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
controller |  | initType=Modelica.Blocks.Types.Init.InitialState
pump | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
SteamValve | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
use_inputs |  | Present
q_F |  | Present
Y_Valve |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(controller.u,feedback.y);
connect(feedback.u2, evaporator.V); connect(levelSetPoint.y,feedback.u1); |
connect(massFlowRate.m_flow, qm_S); ... connect(Y_Valve_Tab.y, SteamValve.opening);
| connect(q_F, MW2W.u); connect(Y_Valve, SteamValve.opening); connect(evaporator.V, feedback.u2); connect(levelSetPoint.y, feedback.u1);

model Fluid.Examples.DrumBoiler.BaseClasses.EquilibriumDrumBoiler

Component | Version 3.2 | Version 3.2.1
cp_D | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
p_start | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
sat |  | Media.Interfaces.Types.SaturationProperties
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h_v | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
h_l | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
rho_v | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
rho_l | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T_D | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h_W | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
h_S | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

model Fluid.Examples.Tanks.TanksWithOverflow

Component | Version 3.2 | Version 3.2.1
upperTank | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
massFlowRate | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
pressure | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
pipe | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
lowerTank | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
overflow | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater

model Fluid.Examples.Tanks.EmptyTanks

Component | Version 3.2 | Version 3.2.1
tank1 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
pipe | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
tank2 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
level_start=0 | level_start=1.0e-10
system |  | energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial

model Fluid.Examples.ControlledTankSystem.ControlledTanks

Component | Version 3.2 | Version 3.2.1
system |  | energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial

model Fluid.Examples.ControlledTankSystem.Utilities.TankController

Component | Version 3.2 | Version 3.2.1
stateGraphRoot |  | Present

block Fluid.Examples.ControlledTankSystem.Utilities.RadioButton

Equations in Version 3.2 | Equations in Version 3.2.1
| initial equation pre(reset) = fill(false, size(reset, 1));
algorithm ...

model Fluid.Examples.AST_BatchPlant.BatchPlant_StandardWater

Component | Version 3.2 | Version 3.2.1
B5 | redeclare model HeatTransfer = Modelica.Fluid.Vessels.BaseClasses.HeatTransfer.IdealHeatTransfer (k=4.9) | redeclare model HeatTransfer = Modelica.Fluid.Vessels.BaseClasses.HeatTransfer.IdealHeatTransfer (k=4.9)
P1 | redeclare function flowCharacteristic = Modelica.Fluid.Machines.BaseClasses.PumpCharacteristics.quadraticFlow (V_flow_nominal={0,0.001,0.0015}, head_nominal={100,50,0}) | redeclare function flowCharacteristic = Modelica.Fluid.Machines.BaseClasses.PumpCharacteristics.quadraticFlow (V_flow_nominal={0,0.1e-3,0.15e-3}, head_nominal={10,5,0})
energyDynamics=Modelica_3_2.Fluid.Types.Dynamics.DynamicFreeInitial | energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial
massDynamics=Modelica_3_2.Fluid.Types.Dynamics.DynamicFreeInitial | massDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial
show_NPSHa=true |
checkValve=true |
| redeclare model Monitoring = Modelica.Fluid.Machines.BaseClasses.PumpMonitoring.PumpMonitoringNPSH
P2 | redeclare function flowCharacteristic = Modelica.Fluid.Machines.BaseClasses.PumpCharacteristics.quadraticFlow (V_flow_nominal={0,0.001,0.0015}, head_nominal={100,50,0}) | redeclare function flowCharacteristic = Modelica.Fluid.Machines.BaseClasses.PumpCharacteristics.quadraticFlow (V_flow_nominal={0,0.1e-3,0.15e-3}, head_nominal={10,5,0})
energyDynamics=Modelica_3_2.Fluid.Types.Dynamics.DynamicFreeInitial | energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial
massDynamics=Modelica_3_2.Fluid.Types.Dynamics.DynamicFreeInitial | massDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial
show_NPSHa=true |
checkValve=true |
| redeclare model Monitoring = Modelica.Fluid.Machines.BaseClasses.PumpMonitoring.PumpMonitoringNPSH
system |  | energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial
P1_on | amplitude=100 | amplitude=200
P2_on | amplitude=50 | amplitude=200
B7 | redeclare model HeatTransfer = Modelica.Fluid.Vessels.BaseClasses.HeatTransfer.IdealHeatTransfer (k=4.9) | redeclare model HeatTransfer = Modelica.Fluid.Vessels.BaseClasses.HeatTransfer.IdealHeatTransfer (k=4.9)
pipeB1B3 | redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow | redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow
pipeB2B3 | redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow | redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow
B6 | redeclare model HeatTransfer = Modelica.Fluid.Vessels.BaseClasses.HeatTransfer.IdealHeatTransfer (k=4.9) | redeclare model HeatTransfer = Modelica.Fluid.Vessels.BaseClasses.HeatTransfer.IdealHeatTransfer (k=4.9)

model Fluid.Examples.AST_BatchPlant.BaseClasses.TankWith3InletOutletArraysWithEvaporatorCondensor

Component | Version 3.2 | Version 3.2.1
T_start | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h_start | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X_start | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
p_ambient | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T_ambient | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties
h_v | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
h_l | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
rho_v | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
rho_l | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
rho | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

model Fluid.Examples.AST_BatchPlant.BaseClasses.InnerTank

Component | Version 3.2 | Version 3.2.1
m_flow_negative |  | fixed=true
Xi | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

model Fluid.Examples.AST_BatchPlant.BaseClasses.Controller

Component | Version 3.2 | Version 3.2.1
stateGraphRoot |  | Present

model Fluid.Examples.AST_BatchPlant.BaseClasses.TankWithTopPorts

Component | Version 3.2 | Version 3.2.1
p_ambient | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T_ambient | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
H_flow_top | Media.Interfaces.PartialMedium.EnthalpyFlowRate | Media.Interfaces.Types.EnthalpyFlowRate
port_b_H_flow_bottom | Media.Interfaces.PartialMedium.EnthalpyFlowRate | Media.Interfaces.Types.EnthalpyFlowRate

model Fluid.Examples.AST_BatchPlant.Test.OneTank

Component | Version 3.2 | Version 3.2.1
tank | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
flowSource | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
ambient_fixed | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
pipe | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater

model Fluid.Examples.AST_BatchPlant.Test.TwoTanks

Component | Version 3.2 | Version 3.2.1
tank1 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
tank2 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
pipe | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater

model Fluid.Examples.AST_BatchPlant.Test.TankWithEmptyingPipe1

Component | Version 3.2 | Version 3.2.1
flowSource | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
ambient_fixed | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
valveDiscrete | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
tank1 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
pipe | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater

model Fluid.Examples.AST_BatchPlant.Test.TankWithEmptyingPipe2

Component | Version 3.2 | Version 3.2.1
ambient_fixed | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
tank1 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
pipe1 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
pipe2 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
ambient_fixed1 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater

model Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1

Component | Version 3.2 | Version 3.2.1
ambient_fixed1 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
tank1 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
pipe1 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
pipe2 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
ambient_fixed2 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
tank2 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
pipe3 | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater

model Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe2

Component | Version 3.2 | Version 3.2.1
ambient_fixed | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater
valveDiscrete | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater | redeclare package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater

model Fluid.Examples.IncompressibleFluidNetwork

Component | Version 3.2 | Version 3.2.1
pipe1 | Fluid.Examples.IncompressibleFluidNetwork.Pipe | Fluid.Pipes.DynamicPipe
pipe2 | Fluid.Examples.IncompressibleFluidNetwork.Pipe | Fluid.Pipes.DynamicPipe
pipe3 | Fluid.Examples.IncompressibleFluidNetwork.Pipe | Fluid.Pipes.DynamicPipe
pipe4 | Fluid.Examples.IncompressibleFluidNetwork.Pipe | Fluid.Pipes.DynamicPipe
pipe6 | Fluid.Examples.IncompressibleFluidNetwork.Pipe | Fluid.Pipes.DynamicPipe
valve1 | CvData=Modelica_3_2.Fluid.Types.CvTypes.OpPoint | CvData=Modelica.Fluid.Types.CvTypes.Av
| Av=2.5e-2^2/4*Modelica.Constants.pi
valve2 | CvData=Modelica_3_2.Fluid.Types.CvTypes.OpPoint | CvData=Modelica.Fluid.Types.CvTypes.Av
| Av=2.5e-2^2/4*Modelica.Constants.pi
pipe7 | Fluid.Examples.IncompressibleFluidNetwork.Pipe | Fluid.Pipes.DynamicPipe
valve3 | CvData=Modelica_3_2.Fluid.Types.CvTypes.OpPoint | CvData=Modelica.Fluid.Types.CvTypes.Av
| Av=2.5e-2^2/4*Modelica.Constants.pi
system |  | massDynamics=systemMassDynamics
| energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial
| use_eps_Re=true
valveOpening1 | height=-0.2 | height=-1
startTime=1 | startTime=50
valveOpening2 | height=-0.2 | height=-0.5
startTime=2 | startTime=100
valveOpening3 | height=-0.2 | height=-0.5
startTime=3 | startTime=150
pipe8 | Fluid.Examples.IncompressibleFluidNetwork.Pipe | Fluid.Pipes.DynamicPipe
pipe9 | Fluid.Examples.IncompressibleFluidNetwork.Pipe | Fluid.Pipes.DynamicPipe
pipe10 | Fluid.Examples.IncompressibleFluidNetwork.Pipe | Fluid.Pipes.DynamicPipe
pipe5 | Fluid.Examples.IncompressibleFluidNetwork.Pipe | Fluid.Pipes.DynamicPipe
pipeModelStructure |  | Present
systemMassDynamics |  | Present
filteredValveOpening |  | Present
heat8 |  | Present
pipe11 |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(valve1.port_b, pipe7.port_a);
connect(pipe6.port_b, valve3.port_a); |
connect(valve3.port_b, sink.ports[1]); ... connect(pipe7.port_b, pipe8.port_a);
connect(pipe9.port_b, valve3.port_a); |
connect(pipe8.port_b, pipe10.port_a);
connect(pipe10.port_b, valve3.port_a); |
connect(pipe4.port_b, pipe6.port_a); ... connect(pipe5.port_a, pipe4.port_b);
connect(pipe5.port_b, valve3.port_a); | connect(heat8.port, pipe8.heatPorts);
| connect(pipe5.port_b, pipe6.port_b); connect(pipe6.port_b, pipe10.port_b); connect(pipe11.port_b, valve3.port_a); connect(pipe9.port_b, pipe11.port_a); connect(pipe10.port_b, pipe11.port_a);

model Fluid.Examples.BranchingDynamicPipes

Component | Version 3.2 | Version 3.2.1
system | momentumDynamics=Modelica_3_2.Fluid.Types.Dynamics.DynamicFreeInitial | momentumDynamics=Modelica.Fluid.Types.Dynamics.SteadyStateInitial
| energyDynamics=Modelica.Fluid.Types.Dynamics.SteadyStateInitial
pipe1 |  | modelStructure=Modelica.Fluid.Types.ModelStructure.a_v_b
pipe2 | redeclare model HeatTransfer = Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.LocalPipeFlowHeatTransfer | redeclare model HeatTransfer = Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.LocalPipeFlowHeatTransfer
| modelStructure=Modelica.Fluid.Types.ModelStructure.av_vb
pipe3 |  | modelStructure=Modelica.Fluid.Types.ModelStructure.a_v_b
pipe4 | modelStructure=Modelica_3_2.Fluid.Types.ModelStructure.av_b | modelStructure=Modelica.Fluid.Types.ModelStructure.a_v_b
heat2 |  | alpha=-1e-2*ones(pipe2.n)

model Fluid.Examples.HeatExchanger.HeatExchangerSimulation

Component | Version 3.2 | Version 3.2.1
HEX | redeclare model HeatTransfer_1 = Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.ConstantFlowHeatTransfer (alpha0=1000) | redeclare model HeatTransfer_1 = Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.LocalPipeFlowHeatTransfer (alpha0=1000)
redeclare model HeatTransfer_2 = Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.ConstantFlowHeatTransfer (alpha0=200) | redeclare model HeatTransfer_2 = Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.ConstantFlowHeatTransfer (alpha0=200)
energyDynamics=Modelica_3_2.Fluid.Types.Dynamics.FixedInitial |
massDynamics=Modelica_3_2.Fluid.Types.Dynamics.SteadyStateInitial |
| modelStructure_1=Modelica.Fluid.Types.ModelStructure.av_b
| modelStructure_2=Modelica.Fluid.Types.ModelStructure.a_vb
system |  | energyDynamics=Modelica.Fluid.Types.Dynamics.SteadyStateInitial
| use_eps_Re=true

model Fluid.Examples.HeatExchanger.BaseClasses.BasicHX

Component | Version 3.2 | Version 3.2.1
use_HeatTransfer | =false | =true
p_a_start1 | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
p_b_start1 | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T_start_1 | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h_start_1 | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X_start_1 | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
p_a_start2 | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
p_b_start2 | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T_start_2 | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h_start_2 | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X_start_2 | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
pipe_1 |  | final modelStructure=modelStructure_1
pipe_2 |  | final modelStructure=modelStructure_2
modelStructure_1 |  | Present
modelStructure_2 |  | Present

model Fluid.Examples.HeatExchanger.BaseClasses.WallConstProps

Component | Version 3.2 | Version 3.2.1
T | stateSelect=StateSelect.prefer |
| each stateSelect=StateSelect.prefer

Equations in Version 3.2 | Equations in Version 3.2.1
initial equation
if energyDynamics == Types.Dynamics.SteadyState then | if energyDynamics == Modelica.Fluid.Types.Dynamics.SteadyStateInitial then
der(T) = zeros(n);
elseif energyDynamics == Types.Dynamics.FixedInitial then | elseif energyDynamics == Modelica.Fluid.Types.Dynamics.FixedInitial then
T = ones(n)*T_start; ... assert(m[i]>0, "Wall has negative dimensions");
if energyDynamics == Types.Dynamics.SteadyState then | if energyDynamics == Modelica.Fluid.Types.Dynamics.SteadyState then
0 = heatPort_a[i].Q_flow + heatPort_b[i].Q_flow; ...

model Fluid.Examples.TraceSubstances.RoomCO2

Component | Version 3.2 | Version 3.2.1
system |  | energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial
pipe | redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow (show_Res=true) | redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow (show_Res=true)

Equations in Version 3.2 | Equations in Version 3.2.1
... connect(traceVolume.port, pipe.port_a);
connect(boundary1.ports[1], volume.ports[1]); | connect(boundary1.ports[2], volume.ports[1]);
connect(boundary1.ports[2], traceSource.port); | connect(boundary1.ports[1], traceSource.port);

model Fluid.Examples.TraceSubstances.RoomCO2WithControls

Component | Version 3.2 | Version 3.2.1
system |  | energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial
| use_eps_Re=true
| m_flow_nominal=0.1
| eps_m_flow=1e-2
ductOut | length=1 | length=5
redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow (show_Res=true) | redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow (show_Res=true)
| modelStructure=Modelica.Fluid.Types.ModelStructure.a_v_b
ductIn | length=1 | length=5
redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow (show_Res=true) | redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow (show_Res=true)
| modelStructure=Modelica.Fluid.Types.ModelStructure.a_v_b

model Fluid.Examples.InverseParameterization

Component | Version 3.2 | Version 3.2.1
pipe1 | redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.NominalTurbulentPipeFlow (m_flow_nominal=1, show_Res=true, dp_nominal=100000) | redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.NominalTurbulentPipeFlow (show_Res=true, m_flow_nominal=1, m_flow_turbulent=eps_m_flow_turbulent*1, dp_nominal=100000)
pipe2 | redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.NominalLaminarFlow (show_Res=true, dp_nominal=100000, m_flow_nominal=1) | redeclare model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.NominalLaminarFlow (show_Res=true, dp_nominal=100000, m_flow_nominal=1)
eps_m_flow_turbulent |  | Present

model Fluid.Examples.Explanatory.MeasuringTemperature

Component | Version 3.2 | Version 3.2.1
T_onePort | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
T_twoPort | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
openTankCold2 | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
openTankCold1 | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
openTankHot1 | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
openTankHot2 | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
mFlow1 | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
mFlow2 | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
T_junction | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
openTankCold3 | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
openTankHot3 | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
mFlow3 | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater
junctionIdeal | redeclare package Medium = Modelica.Media.Water.StandardWater | redeclare package Medium = Modelica.Media.Water.StandardWater

model Fluid.Examples.Explanatory.MomentumBalanceFittings

Component | Version 3.2 | Version 3.2.1
leftBoundary1 | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase
rightBoundary1 | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase
suddenExpansion1 | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase
leftBoundary2 | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase
rightBoundary2 | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase
suddenExpansion2 | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase
leftAdaptor | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase
rightAdaptor | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase | redeclare package Medium = Modelica.Media.Water.StandardWaterOnePhase

model Fluid.System

Component | Version 3.2 | Version 3.2.1
m_flow_small | =0.01 | =1e-2
use_eps_Re |  | Present
m_flow_nominal |  | Present
eps_m_flow |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
| initial equation

model Fluid.Vessels.OpenTank

Component | Version 3.2 | Version 3.2.1
level | start=max(level_start, Modelica_3_2.Constants.eps) | start=level_start_eps
p_ambient | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T_ambient | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
level_start_eps |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... if massDynamics == Types.Dynamics.FixedInitial then
level = level_start; | level = level_start_eps;
elseif massDynamics == Types.Dynamics.SteadyStateInitial then ...

model Fluid.Vessels.BaseClasses.PartialLumpedVessel

Component | Version 3.2 | Version 3.2.1
m_flow_small | =system.m_flow_small | =if system.use_eps_Re then system.eps_m_flow*m_flow_nominal else system.m_flow_small
ports_H_flow | Media.Interfaces.PartialMedium.EnthalpyFlowRate | Media.Interfaces.Types.EnthalpyFlowRate
ports_mC_flow | Media.Interfaces.PartialMedium.ExtraPropertyFlowRate | Media.Interfaces.Types.ExtraPropertyFlowRate
sum_ports_mC_flow | Media.Interfaces.PartialMedium.ExtraPropertyFlowRate | Media.Interfaces.Types.ExtraPropertyFlowRate
vessel_ps_static | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
portDensities | Present |
m_flow_nominal |  | Present
use_Re |  | Present
portInDensities |  | Present
Re_turbulent |  | Present
m_flow_turbulent |  | Present
regularFlow |  | Present
inFlow |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... for i in 1:nPorts loop
| portInDensities[i] = Medium.density(Medium.setState_phX(vessel_ps_static[i], inStream(ports[i].h_outflow), inStream(ports[i].Xi_outflow)));
if use_portsData then
portDensities[i] = noEvent(Medium.density(Medium.setState_phX(vessel_ps_static[i], actualStream(ports[i].h_outflow), actualStream(ports[i].Xi_outflow)))); | portVelocities[i] = smooth(0, ports[i].m_flow/portAreas[i]/Medium.density(Medium.setState_phX(vessel_ps_static[i], actualStream(ports[i].h_outflow), actualStream(ports[i].Xi_outflow))));
portVelocities[i] = smooth(0, ports[i].m_flow/portAreas[i]/portDensities[i]); |
ports_penetration[i] = Utilities.regStep(fluidLevel - portsData_height[i] - 0.1*portsData_diameter[i], 1, 1e-3, 0.1*portsData_diameter[i]);
| m_flow_turbulent[i]=if not use_Re then m_flow_small else &nbspmax(m_flow_small, (Modelica.Constants.pi/8)*portsData_diameter[i] *(Medium.dynamicViscosity(Medium.setState_phX(vessel_ps_static[i], inStream(ports[i].h_outflow), inStream(ports[i].Xi_outflow))) + Medium.dynamicViscosity(medium.state))*Re_turbulent);
else
portDensities[i] = medium.d; |
portVelocities[i] = 0;
ports_penetration[i] = 1;
| m_flow_turbulent[i] = Modelica.Constants.inf;
end if;
if fluidLevel >= portsData_height[i] then | regularFlow[i] = fluidLevel >= portsData_height[i];
| inFlow[i] = not regularFlow[i] and (s[i] > 0 or portsData_height[i] >= fluidLevel_max); if regularFlow[i] then
if use_portsData then
ports[i].p = vessel_ps_static[i] + (0.5/portAreas[i]^2*Utilities.regSquare2(ports[i].m_flow, m_flow_small, (portsData_zeta_in[i] - 1 + portAreas[i]^2/vesselArea^2)/portDensities[i]*ports_penetration[i], (portsData_zeta_out[i] + 1 - portAreas[i]^2/vesselArea^2)/medium.d/ports_penetration[i])); | ports[i].p = homotopy(vessel_ps_static[i] + (0.5/portAreas[i]^2*Utilities.regSquare2(ports[i].m_flow, m_flow_turbulent[i], (portsData_zeta_in[i] - 1 + portAreas[i]^2/vesselArea^2)/portInDensities[i]*ports_penetration[i], (portsData_zeta_out[i] + 1 - portAreas[i]^2/vesselArea^2)/medium.d/ports_penetration[i])), vessel_ps_static[i]);
else ... s[i] = fluidLevel - portsData_height[i];
elseif s[i] > 0 or portsData_height[i] >= fluidLevel_max then | elseif inFlow[i] then
ports[i].p = vessel_ps_static[i]; ...

model Fluid.Pipes.StaticPipe

Component | Version 3.2 | Version 3.2.1
p_a_start | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
p_b_start | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

model Fluid.Pipes.DynamicPipe

Equations in Version 3.2 | Equations in Version 3.2.1
... else
assert(true, "Unknown model structure"); | assert(false, "Unknown model structure");
end if; ...

model Fluid.Pipes.BaseClasses.PartialTwoPortFlow

Component | Version 3.2 | Version 3.2.1
H_flows | Media.Interfaces.PartialMedium.EnthalpyFlowRate | Media.Interfaces.Types.EnthalpyFlowRate

Equations in Version 3.2 | Equations in Version 3.2.1
... else
assert(true, "Unknown model structure"); | assert(false, "Unknown model structure");
end if; ... port_b.p = mediums[n].p;
| vsFM[1] = vs[1:iLumped-1]*lengths[1:iLumped-1]/sum(lengths[1:iLumped-1]); vsFM[2] = vs[iLumped:n]*lengths[iLumped:n]/sum(lengths[iLumped:n]);
elseif modelStructure == ModelStructure.av_b then ... m_flows[n+1] = flowModel.m_flows[1];
| vsFM[1] = vs*lengths/sum(lengths); vsFM[2] = m_flows[n+1]/Medium.density(state_b)/crossAreas[n]/nParallel;
elseif modelStructure == ModelStructure.a_vb then ... port_b.p = mediums[n].p;
| vsFM[1] = m_flows[1]/Medium.density(state_a)/crossAreas[1]/nParallel; vsFM[2] = vs*lengths/sum(lengths);
elseif modelStructure == ModelStructure.a_v_b then ... m_flows[n+1] = flowModel.m_flows[2];
| vsFM[1] = m_flows[1]/Medium.density(state_a)/crossAreas[1]/nParallel; vsFM[2] = vs*lengths/sum(lengths); vsFM[3] = m_flows[n+1]/Medium.density(state_b)/crossAreas[n]/nParallel;
else
assert(true, "Unknown model structure"); | assert(false, "Unknown model structure");
end if;
if modelStructure <> ModelStructure.a_v_b then vsFM[1] = vs[1:iLumped-1]*lengths[1:iLumped-1]/sum(lengths[1:iLumped-1]); vsFM[2] = vs[iLumped:n]*lengths[iLumped:n]/sum(lengths[iLumped:n]); |
else
vsFM[1] = vs[1:iLumped-1]*lengths[1:iLumped-1]/sum(lengths[1:iLumped-1]); vsFM[2] = vs[2:n-1]*lengths[2:n-1]/sum(lengths[2:n-1]); vsFM[3] = vs[iLumped:n]*lengths[iLumped:n]/sum(lengths[iLumped:n]); end if; else |
if modelStructure == ModelStructure.av_vb then ... else
assert(true, "Unknown model structure"); | assert(false, "Unknown model structure");
end if; ...

model Fluid.Pipes.BaseClasses.FlowModels.PartialStaggeredFlowModel

Component | Version 3.2 | Version 3.2.1
p_a_start | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
p_b_start | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
rhos | SIunits.Density | Media.Interfaces.Types.Density
rhos_act | SIunits.Density | Media.Interfaces.Types.Density
mus | SIunits.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
mus_act | SIunits.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity

Equations in Version 3.2 | Equations in Version 3.2.1
... if use_Ib_flows then
Ib_flows = {rhos[i]*vs[i]*vs[i]*crossAreas[i] - rhos[i+1]*vs[i+1]*vs[i+1]*crossAreas[i+1] for i in 1:n-1}; | Ib_flows = nParallel*{rhos[i]*vs[i]*vs[i]*crossAreas[i] - rhos[i+1]*vs[i+1]*vs[i+1]*crossAreas[i+1] for i in 1:n-1};
else ...

model Fluid.Pipes.BaseClasses.FlowModels.PartialGenericPipeFlow

Component | Version 3.2 | Version 3.2.1
dp_small |  | protected
=system.dp_small |
| start=1
| fixed=false
m_flow_small | =system.m_flow_small | =if system.use_eps_Re then system.eps_m_flow*m_flow_nominal else system.m_flow_small
constantPressureLossCoefficient |  | protected
continuousFlowReversal |  | protected
diameters |  | protected
Res_turbulent_internal |  | Present
dp_fric_nominal |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
for i in 1:n-1 loop | initial equation
| if system.use_eps_Re then dp_small = dp_fric_nominal/m_flow_nominal*m_flow_small; else dp_small = system.dp_small; end if; equation &nbspfor i in 1:n-1 loop
assert(m_flows[i] > -m_flow_small or allowFlowReversal, "Reverting flow occurs even though allowFlowReversal is false"); ... if from_dp and not WallFriction.dp_is_zero then
m_flows = WallFriction.massFlowRate_dp( dps_fg - {g*dheights[i]*rhos_act[i] for i in 1:n-1}, rhos_act, rhos_act, mus_act, mus_act, pathLengths_internal, diameters, (roughnesses[1:n-1]+roughnesses[2:n])/2, dp_small)*nParallel; | m_flows = homotopy( actual= WallFriction.massFlowRate_dp( dps_fg - {g*dheights[i]*rhos_act[i] for i in 1:n-1}, rhos_act, rhos_act, mus_act, mus_act, pathLengths_internal, diameters, (roughnesses[1:n-1]+roughnesses[2:n])/2, dp_small/(n-1), Res_turbulent_internal)*nParallel, simplified= m_flow_nominal/dp_nominal*(dps_fg - g*dheights*rho_nominal));
else
dps_fg = WallFriction.pressureLoss_m_flow( m_flows/nParallel, rhos_act, rhos_act, mus_act, mus_act, pathLengths_internal, diameters, (roughnesses[1:n-1]+roughnesses[2:n])/2, m_flow_small/nParallel) + {g*dheights[i]*rhos_act[i] for i in 1:n-1}; | dps_fg = homotopy( actual= WallFriction.pressureLoss_m_flow( m_flows/nParallel, rhos_act, rhos_act, mus_act, mus_act, pathLengths_internal, diameters, (roughnesses[1:n-1]+roughnesses[2:n])/2, m_flow_small/nParallel, Res_turbulent_internal) + {g*dheights[i]*rhos_act[i] for i in 1:n-1}, simplified= dp_nominal/m_flow_nominal*m_flows + g*dheights*rho_nominal);
end if; ... if from_dp and not WallFriction.dp_is_zero then
m_flows = WallFriction.massFlowRate_dp_staticHead( dps_fg, rhos[1:n-1], rhos[2:n], mus[1:n-1], mus[2:n], pathLengths_internal, diameters, g*dheights, (roughnesses[1:n-1]+roughnesses[2:n])/2, dp_small/n)*nParallel; | m_flows = homotopy( actual= WallFriction.massFlowRate_dp_staticHead( dps_fg, rhos[1:n-1], rhos[2:n], mus[1:n-1], mus[2:n], pathLengths_internal, diameters, g*dheights, (roughnesses[1:n-1]+roughnesses[2:n])/2, dp_small/(n-1), Res_turbulent_internal)*nParallel, simplified= m_flow_nominal/dp_nominal*(dps_fg - g*dheights*rho_nominal));
else
dps_fg = WallFriction.pressureLoss_m_flow_staticHead( m_flows/nParallel, rhos[1:n-1], rhos[2:n], mus[1:n-1], mus[2:n], pathLengths_internal, diameters, g*dheights, (roughnesses[1:n-1]+roughnesses[2:n])/2, m_flow_small/nParallel); | dps_fg = homotopy( actual= WallFriction.pressureLoss_m_flow_staticHead( m_flows/nParallel, rhos[1:n-1], rhos[2:n], mus[1:n-1], mus[2:n], pathLengths_internal, diameters, g*dheights, (roughnesses[1:n-1]+roughnesses[2:n])/2, m_flow_small/nParallel, Res_turbulent_internal), simplified= dp_nominal/m_flow_nominal*m_flows + g*dheights*rho_nominal);
end if; ...

model Fluid.Pipes.BaseClasses.FlowModels.NominalTurbulentPipeFlow

Component | Version 3.2 | Version 3.2.1
dps_fg_turbulent | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
m_flow_turbulent |  | Present
Res_turbulent_nominal |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... pathLengths_nominal[i] = zetas[i]*diameters[i]*(2* &nbspModelica_3_2.Math.log10(3.7/((roughnesses[i] + roughnesses[i + &nbsp1])/2/diameters[i])))^2;
| Res_turbulent_nominal[i] = m_flow_turbulent/nParallel / (pi/4*diameters[i]*mus_act[i]);
end for;

model Fluid.Pipes.BaseClasses.FlowModels.TurbulentPipeFlow

Component | Version 3.2 | Version 3.2.1
use_Re |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
| initial equation if system.use_eps_Re then dp_nominal = dp_fric_nominal + g*sum(dheights)*rho_nominal; end if;

model Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow

Equations in Version 3.2 | Equations in Version 3.2.1
| initial equation if system.use_eps_Re then dp_nominal = dp_fric_nominal + g*sum(dheights)*rho_nominal; else dp_nominal = 1e3*dp_small; end if;

model Fluid.Pipes.BaseClasses.HeatTransfer.PartialPipeFlowHeatTransfer

Component | Version 3.2 | Version 3.2.1
ds | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
mus | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
lambdas | Media.Interfaces.PartialMedium.ThermalConductivity | Media.Interfaces.Types.ThermalConductivity

model Fluid.Pipes.BaseClasses.HeatTransfer.LocalPipeFlowHeatTransfer

Equations in Version 3.2 | Equations in Version 3.2.1
... Nus_2[i]=smooth(0,1.077*(abs(Res[i])*Prs[i]*diameters[i]/lengths[i]/(if vs[i]>=0 then (i-0.5) else (n-i+0.5)))^(1/3));
Nus[i]=spliceFunction(Nus_turb[i], Nus_lam[i], Res[i]-6150, 3850); | Nus[i]=Modelica.Media.Air.MoistAir.Utilities.spliceFunction(Nus_turb[i], Nus_lam[i], Res[i]-6150, 3850);
end for;

package Fluid.Pipes.BaseClasses.WallFriction.PartialWallFriction

Component | Version 3.2 | Version 3.2.1
use_Re_turbulent |  | Present

function Fluid.Pipes.BaseClasses.WallFriction.PartialWallFriction.massFlowRate_dp

Component | Version 3.2 | Version 3.2.1
Re_turbulent |  | Present

function Fluid.Pipes.BaseClasses.WallFriction.PartialWallFriction.massFlowRate_dp_staticHead

Component | Version 3.2 | Version 3.2.1
Re_turbulent |  | Present

function Fluid.Pipes.BaseClasses.WallFriction.PartialWallFriction.pressureLoss_m_flow

Component | Version 3.2 | Version 3.2.1
Re_turbulent |  | Present

function Fluid.Pipes.BaseClasses.WallFriction.PartialWallFriction.pressureLoss_m_flow_staticHead

Component | Version 3.2 | Version 3.2.1
Re_turbulent |  | Present

function Fluid.Pipes.BaseClasses.WallFriction.QuadraticTurbulent.massFlowRate_dp

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(roughness > 1.e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic"); | assert(roughness > 1e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic");
zeta = (length/diameter)/(2*Math.log10(3.7 /(roughness/diameter)))^2; ...

function Fluid.Pipes.BaseClasses.WallFriction.QuadraticTurbulent.pressureLoss_m_flow

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(roughness > 1.e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic"); | assert(roughness > 1e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic");
zeta = (length/diameter)/(2*Math.log10(3.7 /(roughness/diameter)))^2; ...

function Fluid.Pipes.BaseClasses.WallFriction.QuadraticTurbulent.massFlowRate_dp_staticHead

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(roughness > 1.e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic"); | assert(roughness > 1e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic");
if dp>=dp_a then ...

function Fluid.Pipes.BaseClasses.WallFriction.QuadraticTurbulent.pressureLoss_m_flow_staticHead

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(roughness > 1.e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic"); | assert(roughness > 1e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic");
if m_flow>=m_flow_a then ...

function Fluid.Pipes.BaseClasses.WallFriction.LaminarAndQuadraticTurbulent.massFlowRate_dp

Component | Version 3.2 | Version 3.2.1
Re_turbulent | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(roughness > 1.e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic"); | assert(roughness > 1e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic");
zeta = (length/diameter)/(2*Math.log10(3.7 /(roughness/diameter)))^2; ... yd0 = (rho_a + rho_b)/(k0*(mu_a + mu_b));
dp_turbulent = ((mu_a + mu_b)*diameter*pi/8)^2*Re_turbulent^2/(k_inv*(rho_a+rho_b)/2); | dp_turbulent = max(((mu_a + mu_b)*diameter*pi/8)^2*Re_turbulent^2/(k_inv*(rho_a+rho_b)/2), dp_small);
m_flow = Modelica_3_2.Fluid.Utilities.regRoot2( &nbspdp, &nbspdp_turbulent, &nbsprho_a*k_inv, &nbsprho_b*k_inv, &nbspuse_yd0=true, &nbspyd0=yd0); ...

function Fluid.Pipes.BaseClasses.WallFriction.LaminarAndQuadraticTurbulent.pressureLoss_m_flow

Component | Version 3.2 | Version 3.2.1
Re_turbulent | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(roughness > 1.e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic"); | assert(roughness > 1e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic");
zeta = (length/diameter)/(2*Math.log10(3.7 /(roughness/diameter)))^2; ... yd0 = k0*(mu_a + mu_b)/(rho_a + rho_b);
m_flow_turbulent = (pi/8)*diameter*(mu_a + mu_b)*Re_turbulent; | m_flow_turbulent = max((pi/8)*diameter*(mu_a + mu_b)*Re_turbulent, m_flow_small);
dp = Modelica_3_2.Fluid.Utilities.regSquare2( &nbspm_flow, &nbspm_flow_turbulent, &nbspk/rho_a, &nbspk/rho_b, &nbspuse_yd0=true, &nbspyd0=yd0); ...

function Fluid.Pipes.BaseClasses.WallFriction.LaminarAndQuadraticTurbulent.massFlowRate_dp_staticHead

Component | Version 3.2 | Version 3.2.1
Re1 | =745*exp(if Delta <= 0.0065 then 1 else 0.0065/Delta) | =min(745*exp(if Delta <= 0.0065 then 1 else 0.0065/Delta), Re_turbulent)
Re2 | constant |
=4000 | =Re_turbulent

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(roughness > 1.e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic"); | assert(roughness > 1e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic");
dp_a = max(dp_grav_a, dp_grav_b)+dp_small; ...

function Fluid.Pipes.BaseClasses.WallFriction.LaminarAndQuadraticTurbulent.pressureLoss_m_flow_staticHead

Component | Version 3.2 | Version 3.2.1
Re1 | =745*exp(if Delta <= 0.0065 then 1 else 0.0065/Delta) | =min(745*exp(if Delta <= 0.0065 then 1 else 0.0065/Delta), Re_turbulent)
Re2 | constant |
=4000 | =Re_turbulent

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(roughness > 1.e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic"); | assert(roughness > 1e-10, "roughness > 0 required for quadratic turbulent wall friction characteristic");
m_flow_a = if dp_grav_a<dp_grav_b then &nbspInternal.m_flow_of_dp_fric(dp_grav_b - dp_grav_a, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta)+m_flow_small else &nbspm_flow_small; ...

function Fluid.Pipes.BaseClasses.WallFriction.Detailed.massFlowRate_dp

Component | Version 3.2 | Version 3.2.1
Re1 | =(745*Math.exp(if Delta <= 0.0065 then 1 else 0.0065/Delta))^0.97 | =min((745*Math.exp(if Delta <= 0.0065 then 1 else 0.0065/Delta))^0.97, Re_turbulent)
Re2 | =4000 | =Re_turbulent

function Fluid.Pipes.BaseClasses.WallFriction.Detailed.pressureLoss_m_flow

Component | Version 3.2 | Version 3.2.1
Re1 | =745*Math.exp(if Delta <= 0.0065 then 1 else 0.0065/Delta) | =min(745*Math.exp(if Delta <= 0.0065 then 1 else 0.0065/Delta), Re_turbulent)
Re2 | =4000 | =Re_turbulent

function Fluid.Pipes.BaseClasses.WallFriction.Detailed.massFlowRate_dp_staticHead

Component | Version 3.2 | Version 3.2.1
Re1 | =(745*exp(if Delta <= 0.0065 then 1 else 0.0065/Delta))^0.97 | =min((745*exp(if Delta <= 0.0065 then 1 else 0.0065/Delta))^0.97, Re_turbulent)
Re2 | constant |
=4000 | =Re_turbulent

function Fluid.Pipes.BaseClasses.WallFriction.Detailed.pressureLoss_m_flow_staticHead

Component | Version 3.2 | Version 3.2.1
Re1 | =745*exp(if Delta <= 0.0065 then 1 else 0.0065/Delta) | =min(745*exp(if Delta <= 0.0065 then 1 else 0.0065/Delta), Re_turbulent)
Re2 | constant |
=4000 | =Re_turbulent

model Fluid.Pipes.BaseClasses.WallFriction.TestWallFrictionAndGravity

Component | Version 3.2 | Version 3.2.1
dp_small | SIunits.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
| protected
m_flow_nominal |  | Present
dp_fric_nominal |  | Present

model Fluid.Machines.ControlledPump

Component | Version 3.2 | Version 3.2.1
p_a_nominal | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
p_b_nominal | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

model Fluid.Machines.BaseClasses.PartialPump

Component | Version 3.2 | Version 3.2.1
p_a_start | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
p_b_start | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
m_flow_start | =1 | =system.m_flow_start
rho_nominal | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
rho | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
V_flow | =m_flow/rho |
V_flow_single | =V_flow/nParallel |
s | start=m_flow_start | start=m_flow_start/unit_m_flow
show_NPSHa | Present |
state_a | Present |
rho_in | Present |
NPSHa | Present |
NPSPa | Present |
NPDPa | Present |
V_flow_single_init |  | Present
delta_head_init |  | Present
unit_m_flow |  | Present
monitoring |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
| V_flow = homotopy(m_flow/rho, &nbspm_flow/rho_nominal); V_flow_single = V_flow/nParallel;
if not checkValve then
head = (N/N_nominal)^2*flowCharacteristic(V_flow_single*(N_nominal/N)); | head = homotopy((N/N_nominal)^2*flowCharacteristic(V_flow_single*N_nominal/N), N/N_nominal*(flowCharacteristic(0)+delta_head_init*V_flow_single));
s = 0;
elseif s > 0 then head = (N/N_nominal)^2*flowCharacteristic(V_flow_single*(N_nominal/N)); V_flow_single = s*unitMassFlowRate/rho; |
else
head = (N/N_nominal)^2*flowCharacteristic(0) - s*unitHead; | head = homotopy(if s > 0 then (N/N_nominal)^2*flowCharacteristic(V_flow_single*N_nominal/N) else (N/N_nominal)^2*flowCharacteristic(0) - s*unitHead, N/N_nominal*(flowCharacteristic(0)+delta_head_init*V_flow_single));
V_flow_single = 0; | V_flow_single = homotopy(if s > 0 then s*unitMassFlowRate/rho else 0, s*unitMassFlowRate/rho_nominal);
end if;
if use_powerCharacteristic then
W_single = (N/N_nominal)^3*(rho/rho_nominal)*powerCharacteristic(V_flow_single*(N_nominal/N)); | W_single = homotopy((N/N_nominal)^3*(rho/rho_nominal)*powerCharacteristic(V_flow_single*N_nominal/N), N/N_nominal*V_flow_single/V_flow_single_init*powerCharacteristic(V_flow_single_init));
eta = dp_pump*V_flow_single/W_single;
else
eta = efficiencyCharacteristic(V_flow_single*(N_nominal/N)); | eta = homotopy(efficiencyCharacteristic(V_flow_single*(N_nominal/N)), efficiencyCharacteristic(V_flow_single_init));
W_single = dp_pump*V_flow_single/eta; | W_single = homotopy(dp_pump*V_flow_single/eta, dp_pump*V_flow_single_init/eta);
end if; ...

function Fluid.Machines.BaseClasses.PumpCharacteristics.linearFlow

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
head := c[1] + V_flow*c[2]; | assert(c[2] <= -Modelica.Constants.small, "Wrong pump curve -- head_nominal must be monotonically decreasing with increasing V_flow_nominal", level=AssertionLevel.warning);
| head = c[1] + V_flow*c[2];

function Fluid.Machines.BaseClasses.PumpCharacteristics.quadraticFlow

Component | Version 3.2 | Version 3.2.1
V_flow_min |  | Present
V_flow_max |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
head := c[1] + V_flow*c[2] + V_flow^2*c[3]; | assert(max(c[2].+2*c[3]*V_flow_nominal) <= -Modelica.Constants.small, "Wrong pump curve -- head_nominal must be monotonically decreasing with increasing V_flow_nominal", level=AssertionLevel.warning);
| if V_flow < V_flow_min then
| head = max(head_nominal) + (V_flow-V_flow_min)*(c[2]+2*c[3]*V_flow_min); elseif V_flow > V_flow_max then head = min(head_nominal) + (V_flow-V_flow_max)*(c[2]+2*c[3]*V_flow_max); else head = c[1] + V_flow*(c[2] + V_flow*c[3]); end if;

function Fluid.Machines.BaseClasses.PumpCharacteristics.polynomialFlow

Component | Version 3.2 | Version 3.2.1
V_flow_nominal_pow | ={{V_flow_nominal[i]^(j - 1) for j in 1:N} for i in 1:N} | ={{if j > 1 then V_flow_nominal[i]^(j - 1) else 1 for j in 1:N} for i in 1:N}
V_flow_min |  | Present
V_flow_max |  | Present
max_dhdV |  | Present
poly |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
head := sum(V_flow^(i-1)*c[i] for i in 1:N); | assert(max_dhdV <= -Modelica.Constants.small, "Wrong pump curve -- head_nominal must be monotonically decreasing with increasing V_flow_nominal", level=AssertionLevel.warning);
| if V_flow < V_flow_min then
| poly = c[N]*(N-1); for i in 1:N-2 loop poly = V_flow_min*poly + c[N-i]*(N-i-1); end for; head = max(head_nominal) + (V_flow-V_flow_min)*poly; elseif V_flow > V_flow_max then poly = c[N]*(N-1); for i in 1:N-2 loop poly = V_flow_max*poly + c[N-i]*(N-i-1); end for; head = min(head_nominal) + (V_flow-V_flow_max)*poly; else poly = c[N]; for i in 1:N-1 loop poly = V_flow*poly + c[N-i]; end for; head = poly; end if;

model Fluid.Valves.ValveIncompressible

Component | Version 3.2 | Version 3.2.1
Re_turbulent |  | Present
use_Re |  | Present
dp_turbulent |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... if checkValve then
m_flow = relativeFlowCoefficient*Av*sqrt(Medium.density(state_a))* Modelica_3_2.Fluid.Utilities.regRoot2( dp, dp_small, 1.0, 0.0, use_yd0=true, yd0=0.0); | m_flow = homotopy(relativeFlowCoefficient*Av*sqrt(Medium.density(state_a))* Utilities.regRoot2(dp,dp_turbulent,1.0,0.0,use_yd0=true,yd0=0.0), relativeFlowCoefficient*m_flow_nominal*dp/dp_nominal);
elseif not allowFlowReversal then
m_flow = relativeFlowCoefficient*Av*sqrt(Medium.density(state_a))* Utilities.regRoot(dp, dp_small); | m_flow = homotopy(relativeFlowCoefficient*Av*sqrt(Medium.density(state_a))* Utilities.regRoot(dp, dp_turbulent), relativeFlowCoefficient*m_flow_nominal*dp/dp_nominal);
else
m_flow = relativeFlowCoefficient*Av* Modelica_3_2.Fluid.Utilities.regRoot2( dp, dp_small, Medium.density(state_a), Medium.density(state_b)); | m_flow = homotopy(relativeFlowCoefficient*Av* Utilities.regRoot2(dp,dp_turbulent,Medium.density(state_a),Medium.density(state_b)), relativeFlowCoefficient*m_flow_nominal*dp/dp_nominal);
end if;

model Fluid.Valves.ValveVaporizing

Component | Version 3.2 | Version 3.2.1
T_in | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
p_sat | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
p_in | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
p_out | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
Re_turbulent |  | Present
use_Re |  | Present
dp_turbulent |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... if checkValve then
m_flow = valveCharacteristic(opening_actual)*Av*sqrt(Medium.density( state_a))*Modelica_3_2.Fluid.Utilities.regRoot2( dpEff, dp_small, 1.0, 0.0, use_yd0=true, yd0=0.0); | m_flow = homotopy(valveCharacteristic(opening_actual)*Av*sqrt(Medium.density(state_a))* Utilities.regRoot2(dpEff,dp_turbulent,1.0,0.0,use_yd0=true,yd0=0.0), valveCharacteristic(opening_actual)*m_flow_nominal*dp/dp_nominal);
elseif not allowFlowReversal then
m_flow = valveCharacteristic(opening_actual)*Av*sqrt(Medium.density(state_a))* Utilities.regRoot(dpEff, dp_small); | m_flow = homotopy(valveCharacteristic(opening_actual)*Av*sqrt(Medium.density(state_a))* Utilities.regRoot(dpEff, dp_turbulent), valveCharacteristic(opening_actual)*m_flow_nominal*dp/dp_nominal);
else
m_flow = valveCharacteristic(opening_actual)*Av* Modelica_3_2.Fluid.Utilities.regRoot2( dpEff, dp_small, Medium.density(state_a), Medium.density(state_b)); | m_flow = homotopy(valveCharacteristic(opening_actual)*Av* Utilities.regRoot2(dpEff,dp_turbulent,Medium.density(state_a),Medium.density(state_b)), valveCharacteristic(opening_actual)*m_flow_nominal*dp/dp_nominal);
end if;

model Fluid.Valves.ValveCompressible

Component | Version 3.2 | Version 3.2.1
p_nominal | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
Re_turbulent |  | Present
use_Re |  | Present
dp_turbulent |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
...
equation p = noEvent(if dp>=0 then port_a.p else port_b.p); | equation p = max(port_a.p, port_b.p);
Fxt = Fxt_full*xtCharacteristic(opening_actual);
x = dp/p;
xs = smooth(0, if x < -Fxt then -Fxt else if x > Fxt then Fxt else x); | xs = max(-Fxt, min(x, Fxt));
Y = 1 - abs(xs)/(3*Fxt);
if checkValve then
m_flow = valveCharacteristic(opening_actual)*Av*Y*sqrt(Medium.density(state_a))* (if xs>=0 then Utilities.regRoot(p*xs, dp_small) else 0); | m_flow = homotopy(valveCharacteristic(opening_actual)*Av*Y*sqrt(Medium.density(state_a))* (if xs>=0 then Utilities.regRoot(p*xs, dp_turbulent) else 0), valveCharacteristic(opening_actual)*m_flow_nominal*dp/dp_nominal);
elseif not allowFlowReversal then
m_flow = valveCharacteristic(opening_actual)*Av*sqrt(Medium.density(state_a))* Utilities.regRoot(p*xs, dp_small); | m_flow = homotopy(valveCharacteristic(opening_actual)*Av*Y*sqrt(Medium.density(state_a))* Utilities.regRoot(p*xs, dp_turbulent), valveCharacteristic(opening_actual)*m_flow_nominal*dp/dp_nominal);
else
m_flow = valveCharacteristic(opening_actual)*Av*Y* smooth(0, Utilities.regRoot(p*xs, dp_small)*(if xs>=0 then sqrt(Medium.density(state_a)) else sqrt(Medium.density(state_b)))); | m_flow = homotopy(valveCharacteristic(opening_actual)*Av*Y* Utilities.regRoot2(p*xs, dp_turbulent, Medium.density(state_a), Medium.density(state_b)), valveCharacteristic(opening_actual)*m_flow_nominal*dp/dp_nominal);
end if;

model Fluid.Valves.ValveDiscrete

Component | Version 3.2 | Version 3.2.1
dp_nominal | SIunits.Pressure | SIunits.AbsolutePressure

model Fluid.Valves.BaseClasses.PartialValve

Component | Version 3.2 | Version 3.2.1
Av | =0 |
rho_nominal | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
dp_small |  | protected
=system.dp_small | =if system.use_eps_Re then dp_nominal/m_flow_nominal*m_flow_small else system.dp_small

model Fluid.Fittings.Bends.CurvedBend

Component | Version 3.2 | Version 3.2.1
dp_small | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

model Fluid.Fittings.Bends.EdgedBend

Component | Version 3.2 | Version 3.2.1
dp_small | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

model Fluid.Fittings.Orifices.ThickEdgedOrifice

Component | Version 3.2 | Version 3.2.1
dp_small | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

model Fluid.Fittings.GenericResistances.VolumeFlowRate

Component | Version 3.2 | Version 3.2.1
dp_small | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
d_a | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
d_b | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

model Fluid.Fittings.SimpleGenericOrifice

Component | Version 3.2 | Version 3.2.1
dp_nominal | SIunits.AbsolutePressure | SIunits.Pressure
m_flow_nominal | =1 | =if system.use_eps_Re then system.m_flow_nominal else 1e2*system.m_flow_small
dp_small | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
| protected
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
use_Re |  | Present
Re_turbulent |  | Present
m_flow_turbulent |  | Present
dp_turbulent |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... if from_dp then
m_flow = Utilities.regRoot2( dp_fg, dp_small, Medium.density(state_a)/BaseClasses.lossConstant_D_zeta(diameter, zeta_nominal), Medium.density(state_b)/BaseClasses.lossConstant_D_zeta(diameter, zeta_nominal)); | m_flow = homotopy(Utilities.regRoot2( dp_fg, dp_turbulent, Medium.density(state_a)/BaseClasses.lossConstant_D_zeta(diameter, zeta_nominal), Medium.density(state_b)/BaseClasses.lossConstant_D_zeta(diameter, zeta_nominal)), m_flow_nominal*dp_fg/dp_nominal);
else
dp_fg = Utilities.regSquare2( m_flow, m_flow_small, BaseClasses.lossConstant_D_zeta(diameter, zeta_nominal)/Medium.density(state_a), BaseClasses.lossConstant_D_zeta(diameter, zeta_nominal)/Medium.density(state_b)); | dp_fg = homotopy(Utilities.regSquare2( m_flow, m_flow_turbulent, BaseClasses.lossConstant_D_zeta(diameter, zeta_nominal)/Medium.density(state_a), BaseClasses.lossConstant_D_zeta(diameter, zeta_nominal)/Medium.density(state_b)), dp_nominal*m_flow/m_flow_nominal);
end if; ...

model Fluid.Fittings.MultiPort

Component | Version 3.2 | Version 3.2.1
ports_b_Xi_inStream | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
ports_b_C_inStream | Media.Interfaces.PartialMedium.ExtraProperty | Media.Interfaces.Types.ExtraProperty

model Fluid.Fittings.BaseClasses.QuadraticTurbulent.BaseModel

Component | Version 3.2 | Version 3.2.1
use_Re | =false | =system.use_eps_Re
dp_small | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
| protected
m_flow_small | Present |
m_flow_nominal |  | Present
state_nominal |  | Present
dp_nominal |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... if from_dp then
m_flow = if use_Re then massFlowRate_dp_and_Re( dp_fg, Medium.density(state_a), Medium.density(state_b), Medium.dynamicViscosity(state_a), Medium.dynamicViscosity(state_b), data) else massFlowRate_dp(dp_fg, Medium.density(state_a), Medium.density(state_b), data, dp_small); | m_flow = homotopy(if use_Re then massFlowRate_dp_and_Re( dp_fg, Medium.density(state_a), Medium.density(state_b), Medium.dynamicViscosity(state_a), Medium.dynamicViscosity(state_b), data) else massFlowRate_dp(dp_fg, Medium.density(state_a), Medium.density(state_b), data, dp_small), m_flow_nominal*dp_fg/dp_nominal);
else
dp_fg = if use_Re then pressureLoss_m_flow_and_Re( m_flow, Medium.density(state_a), Medium.density(state_b), Medium.dynamicViscosity(state_a), Medium.dynamicViscosity(state_b), data) else pressureLoss_m_flow(m_flow, Medium.density(state_a), Medium.density(state_b), data, m_flow_small); | dp_fg = homotopy(if use_Re then pressureLoss_m_flow_and_Re( m_flow, Medium.density(state_a), Medium.density(state_b), Medium.dynamicViscosity(state_a), Medium.dynamicViscosity(state_b), data) else pressureLoss_m_flow(m_flow, Medium.density(state_a), Medium.density(state_b), data, m_flow_small), dp_nominal*m_flow/m_flow_nominal);
end if; ...

model Fluid.Fittings.BaseClasses.QuadraticTurbulent.BaseModelNonconstantCrossSectionArea

Component | Version 3.2 | Version 3.2.1
dp_small | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
| protected
m_flow_small | Present |
m_flow_nominal |  | Present
state_nominal |  | Present
dp_nominal |  | Present

model Fluid.Sources.FixedBoundary

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
C | Media.Interfaces.PartialMedium.ExtraProperty | Media.Interfaces.Types.ExtraProperty

model Fluid.Sources.Boundary_pT

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
C | Media.Interfaces.PartialMedium.ExtraProperty | Media.Interfaces.Types.ExtraProperty

model Fluid.Sources.Boundary_ph

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
C | Media.Interfaces.PartialMedium.ExtraProperty | Media.Interfaces.Types.ExtraProperty

model Fluid.Sources.MassFlowSource_T

Component | Version 3.2 | Version 3.2.1
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
C | Media.Interfaces.PartialMedium.ExtraProperty | Media.Interfaces.Types.ExtraProperty

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
sum(ports.m_flow) = -m_flow_in_internal; | if Medium.ThermoStates == IndependentVariables.ph or Medium.ThermoStates == IndependentVariables.phX then
| medium.h = Medium.specificEnthalpy(Medium.setState_pTX(medium.p, T_in_internal, X_in_internal)); else
medium.T = T_in_internal;
| end if; sum(ports.m_flow) = -m_flow_in_internal;
medium.Xi = X_in_internal[1:Medium.nXi]; ...

model Fluid.Sources.MassFlowSource_h

Component | Version 3.2 | Version 3.2.1
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
C | Media.Interfaces.PartialMedium.ExtraProperty | Media.Interfaces.Types.ExtraProperty

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
sum(ports.m_flow) = -m_flow_in_internal; | if Medium.ThermoStates == IndependentVariables.ph or Medium.ThermoStates == IndependentVariables.phX then
medium.h = h_in_internal;
medium.Xi = X_in_internal[1:Medium.nXi]; | else
ports.C_outflow = fill(C_in_internal, nPorts); | medium.T = Medium.temperature(Medium.setState_phX(medium.p, h_in_internal, X_in_internal));
| end if; sum(ports.m_flow) = -m_flow_in_internal; medium.Xi = X_in_internal[1:Medium.nXi]; ports.C_outflow = fill(C_in_internal, nPorts);

model Fluid.Sensors.DensityTwoPort

Component | Version 3.2 | Version 3.2.1
rho_a_inflow | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
rho_b_inflow | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
m_flow_small | Present |

model Fluid.Sensors.TemperatureTwoPort

Component | Version 3.2 | Version 3.2.1
T_a_inflow | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
T_b_inflow | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
m_flow_small | Present |

model Fluid.Sensors.SpecificEnthalpyTwoPort

Component | Version 3.2 | Version 3.2.1
m_flow_small | Present |

model Fluid.Sensors.SpecificEntropyTwoPort

Component | Version 3.2 | Version 3.2.1
s_a_inflow | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
s_b_inflow | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
m_flow_small | Present |

model Fluid.Sensors.TraceSubstances

Component | Version 3.2 | Version 3.2.1
CVec | Media.Interfaces.PartialMedium.ExtraProperty | Media.Interfaces.Types.ExtraProperty

model Fluid.Sensors.TraceSubstancesTwoPort

Component | Version 3.2 | Version 3.2.1
m_flow_small | Present |

model Fluid.Sensors.VolumeFlowRate

Component | Version 3.2 | Version 3.2.1
rho_a_inflow | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
rho_b_inflow | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
m_flow_small | Present |

model Fluid.Sensors.RelativePressure

Component | Version 3.2 | Version 3.2.1
port_a | Present |
port_b | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
port_a.m_flow = 0; | p_rel = port_a.p - port_b.p;
port_b.m_flow = 0; port_a.h_outflow = 0; port_b.h_outflow = 0; port_a.Xi_outflow = zeros(Medium.nXi); port_b.Xi_outflow = zeros(Medium.nXi); port_a.C_outflow = zeros(Medium.nC); port_b.C_outflow = zeros(Medium.nC); p_rel = port_a.p - port_b.p; |

model Fluid.Sensors.RelativeTemperature

Component | Version 3.2 | Version 3.2.1
port_a | Present |
port_b | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
port_a.m_flow = 0; | T_rel = Medium.temperature(Medium.setState_phX(port_a.p, inStream(port_a.h_outflow), inStream(port_a.Xi_outflow))) - Medium.temperature(Medium.setState_phX(port_b.p, inStream(port_b.h_outflow), inStream(port_b.Xi_outflow)));
port_b.m_flow = 0; port_a.h_outflow = 0; port_b.h_outflow = 0; port_a.Xi_outflow = zeros(Medium.nXi); port_b.Xi_outflow = zeros(Medium.nXi); port_a.C_outflow = zeros(Medium.nC); port_b.C_outflow = zeros(Medium.nC); T_rel = Medium.temperature(Medium.setState_phX(port_a.p, inStream(port_a.h_outflow), inStream(port_a.Xi_outflow))) - &nbspMedium.temperature(Medium.setState_phX(port_b.p, inStream(port_b.h_outflow), inStream(port_b.Xi_outflow))); |

model Fluid.Sensors.BaseClasses.PartialAbsoluteSensor

Equations in Version 3.2 | Equations in Version 3.2.1
port.m_flow = 0;
port.h_outflow = 0; | port.h_outflow = Medium.h_default;
port.Xi_outflow = zeros(Medium.nXi); | port.Xi_outflow = Medium.X_default[1:Medium.nXi];
port.C_outflow = zeros(Medium.nC);

model Fluid.Sensors.BaseClasses.PartialFlowSensor

Component | Version 3.2 | Version 3.2.1
m_flow_nominal |  | Present
m_flow_small |  | Present

connector Fluid.Interfaces.FluidPort

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h_outflow | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
Xi_outflow | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
C_outflow | Media.Interfaces.PartialMedium.ExtraProperty | Media.Interfaces.Types.ExtraProperty

model Fluid.Interfaces.PartialTwoPortTransport

Component | Version 3.2 | Version 3.2.1
dp_start | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
m_flow_small | =system.m_flow_small | =if system.use_eps_Re then system.eps_m_flow*system.m_flow_nominal else system.m_flow_small
port_a_T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
port_b_T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

model Fluid.Interfaces.PartialLumpedVolume

Component | Version 3.2 | Version 3.2.1
p_start | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T_start | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h_start | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X_start | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
C_start | Media.Interfaces.PartialMedium.ExtraProperty | Media.Interfaces.Types.ExtraProperty
C | Media.Interfaces.PartialMedium.ExtraProperty | Media.Interfaces.Types.ExtraProperty
mbC_flow | Media.Interfaces.PartialMedium.ExtraPropertyFlowRate | Media.Interfaces.Types.ExtraPropertyFlowRate

model Fluid.Interfaces.PartialDistributedVolume

Component | Version 3.2 | Version 3.2.1
p_a_start | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
p_b_start | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
ps_start | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T_start | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h_start | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X_start | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
C_start | Media.Interfaces.PartialMedium.ExtraProperty | Media.Interfaces.Types.ExtraProperty
Cs | Media.Interfaces.PartialMedium.ExtraProperty | Media.Interfaces.Types.ExtraProperty
mbC_flows | Media.Interfaces.PartialMedium.ExtraPropertyFlowRate | Media.Interfaces.Types.ExtraPropertyFlowRate

model Fluid.Interfaces.PartialPressureLoss

Component | Version 3.2 | Version 3.2.1
d_a | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
d_b | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
eta_a | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
eta_b | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity

function Fluid.Dissipation.HeatTransfer.General.kc_approxForcedConvection_KC

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
kc := IN_var.lambda/d_hyd*(if IN_con.target == TYP.Rough then 0.023*Re^(4/5)* Pr^IN_con.exp_Pr else if IN_con.target == TYP.Middle then 0.023*Re^(4/5)*Pr ^(1/3)*(IN_var.eta/IN_var.eta_wall)^0.14 else if IN_con.target == 3 and Pr <= 1.5 then 0.0214*max(1, abs(Re^0.8 - 100))*Pr^0.4 else if IN_con.target == TYP.Finest then 0.012*max(1, abs(Re^0.87 - 280))*Pr^0.4 else 0); | kc := IN_var.lambda/d_hyd*(if IN_con.target == TYP.Rough then 0.023*Re^(4/5)* Pr^IN_con.exp_Pr else if IN_con.target == TYP.Middle then 0.023*Re^(4/5)*Pr ^(1/3)*(IN_var.eta/IN_var.eta_wall)^0.14 else if IN_con.target == TYP.Finest and Pr <= 1.5 then 0.0214*max(1, abs(Re^0.8 - 100))*Pr^0.4 else if IN_con.target == TYP.Finest then 0.012*max(1, abs(Re^0.87 - 280))*Pr^0.4 else 0);

function Fluid.Dissipation.HeatTransfer.HelicalPipe.kc_overall

Equations in Version 3.2 | Equations in Version 3.2.1
... Nu = kc*IN_con.d_hyd/max(MIN, IN_var.lambda);
| failureStatus = 0;

function Fluid.Dissipation.HeatTransfer.StraightPipe.kc_overall

Equations in Version 3.2 | Equations in Version 3.2.1
... else
assert(true, "No choice of roughness is selected"); | assert(false, "No choice of roughness is selected");
end if; ...

function Fluid.Dissipation.HeatTransfer.StraightPipe.kc_turbulent

Equations in Version 3.2 | Equations in Version 3.2.1
... else
assert(true, "No choice of roughness is selected"); | assert(false, "No choice of roughness is selected");
end if; ...

function Fluid.Dissipation.PressureLoss.Bend.dp_edgedOverall_MFLOW

Component | Version 3.2 | Version 3.2.1
v_lam | =Re_lam_leave*IN_var.eta/(IN_var.rho*d_hyd) | =(2*(d_hyd/IN_var.eta)^exp/(A*C1*zeta_LOC*B*(IN_var.rho)^(1 - exp)))^(1/pow)*Fluid.Dissipation.Utilities.Functions.General.SmoothPower(abs(dp), dp_min, 1/pow)
v_smooth | =if abs(dp) > dp_lam then (2*abs(dp))^0.5*(A*C1*zeta_LOC*IN_var.rho)^(-0.5) else (2*(d_hyd/IN_var.eta)^exp/(A*C1*zeta_LOC*B*(IN_var.rho)^(1 - exp)))^(1/pow)*Modelica_3_2.Fluid.Dissipation.Utilities.Functions.General.SmoothPower(abs(dp), dp_min, 1/pow) | =if abs(dp) > dp_lam_max then v_turb else if abs(dp) < dp_lam_trans then v_lam else SMOOTH(dp_lam_max, dp_lam_trans, abs(dp))*v_turb + SMOOTH(dp_lam_trans, dp_lam_max, abs(dp))*v_lam
dp_lam | Present |
v_lam_trans |  | Present
v_lam_max |  | Present
dp_lam_trans |  | Present
dp_lam_max |  | Present
v_turb |  | Present

function Fluid.Dissipation.PressureLoss.Orifice.dp_thickEdgedOverall_DP

Component | Version 3.2 | Version 3.2.1
l_bar | SIunits.Length | Real

function Fluid.Dissipation.PressureLoss.Orifice.dp_thickEdgedOverall_MFLOW

Component | Version 3.2 | Version 3.2.1
l_bar | SIunits.Length | Real

function Fluid.Dissipation.PressureLoss.StraightPipe.dp_overall_MFLOW

Component | Version 3.2 | Version 3.2.1
Re_turb | =if IN_con.roughness == 1 then (max(MIN, lambda_FRI_calc)/0.3164)^(1/1.75) else -2*sqrt(max(lambda_FRI_calc, MIN))*Modelica_3_2.Math.log10(2.51/sqrt(max(lambda_FRI_calc, MIN)) + k/3.7) | =if IN_con.roughness == Roughness.Neglected then (max(MIN, lambda_FRI_calc)/0.3164)^(1/1.75) else -2*sqrt(max(lambda_FRI_calc, MIN))*Modelica.Math.log10(2.51/sqrt(max(lambda_FRI_calc, MIN)) + k/3.7)

record Fluid.Dissipation.PressureLoss.StraightPipe.dp_twoPhaseOverall_IN_con

Component | Version 3.2 | Version 3.2.1
voidFractionApproach | Fluid.Dissipation.Utilities.Types.Roughness | Fluid.Dissipation.Utilities.Types.VoidFractionApproach

function Fluid.Dissipation.Utilities.Functions.PressureLoss.TwoPhase.dp_twoPhaseGeodetic_DP

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
DP_geo := (eps*rho_g + (1 - eps)*rho_l)*9.81*length*sin(min(PI/2, max(0, abs( phi)))); | DP_geo := (eps*rho_g + (1 - eps)*rho_l)*9.81*length*sin(phi);

function Fluid.Dissipation.Utilities.Functions.PressureLoss.TwoPhase.dp_twoPhaseMomentum_DP

Component | Version 3.2 | Version 3.2.1
voidFractionApproach | Fluid.Dissipation.Utilities.Types.Roughness | Fluid.Dissipation.Utilities.Types.VoidFractionApproach
A_cross | Real | SIunits.Area
dp_mom_cor | =SMOOTH(delta_xflow, 0.05, 0)*abs(mdot_A*meanVelEnd + mdotCorEnd*deltaVelEnd/Across) - abs(mdot_A*meanVelEnd + mdotCorEnd*deltaVelEnd/Across) | =SMOOTH(delta_xflow, 0.05, 0)*abs(mdot_A*meanVelEnd + mdotCorEnd*deltaVelEnd/Across) - abs(mdot_A*meanVelSta + mdotCorEnd*deltaVelSta/Across)

function Fluid.Dissipation.Utilities.Functions.PressureLoss.TwoPhase.TwoPhaseDensity

Component | Version 3.2 | Version 3.2.1
voidFractionApproach | Fluid.Dissipation.Utilities.Types.Roughness | Fluid.Dissipation.Utilities.Types.VoidFractionApproach

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
rho_2ph := if massFlowRateCorrection then rho_hom else if voidFractionApproach == Modelica_3_2.Fluid.Dissipation.Utilities.Types.VoidFractionApproach.Homogeneous then rho_hom else if voidFractionApproach == Modelica_3_2.Fluid.Dissipation.Utilities.Types.VoidFractionApproach.Momentum then rho_mom else if voidFractionApproach == Modelica_3_2.Fluid.Dissipation.Utilities.Types.VoidFractionApproach.Energy then rho_kin else MIN; | rho_2ph := if not massFlowRateCorrection then rho_hom else if voidFractionApproach == Modelica.Fluid.Dissipation.Utilities.Types.VoidFractionApproach.Homogeneous then rho_hom else if voidFractionApproach == Modelica.Fluid.Dissipation.Utilities.Types.VoidFractionApproach.Momentum then rho_mom else if voidFractionApproach == Modelica.Fluid.Dissipation.Utilities.Types.VoidFractionApproach.Energy then rho_kin else MIN;

function Fluid.Dissipation.Utilities.Functions.General.LambertW

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
assert(y > -1/Modelica_3_2.Math.exp(1), "Lambert-w-function is only valid for inputs y > -1/Modelica.Math.exp(1)!"); | assert(y > -1/Modelica.Math.exp(1), "Lambert-w-function is only valid for inputs y > -1/Modelica.Math.exp(1)!");

function Fluid.Dissipation.Utilities.Functions.General.Stepsmoother_der

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
dresult := if x >= 0.999*(func - nofunc) + nofunc and func > nofunc or x <= 0.999*(func - nofunc) + nofunc and nofunc > func or x <= 0.001*(func - nofunc) + nofunc and func > nofunc or x >= 0.001*(func - nofunc) + nofunc and nofunc > func then 0 else (1 - Modelica_3_2.Math.tanh(Modelica_3_2.Math.tan(m*x + b)) ^2)*(1 + Modelica_3_2.Math.tan(m*x + b)^2)*m*dx; | dresult := if x >= 0.999*(func - nofunc) + nofunc and func > nofunc or x <= 0.999*(func - nofunc) + nofunc and nofunc > func or x <= 0.001*(func - nofunc) + nofunc and func > nofunc or x >= 0.001*(func - nofunc) + nofunc and nofunc > func then 0 else (1 - Modelica.Math.tanh(Modelica.Math.tan(m* x + b))^2)*(1 + Modelica.Math.tan(m*x + b)^2)*m*dx/2;

record Fluid.Dissipation.Utilities.Records.HeatTransfer.TwoPhaseFlowHT_IN_con

Component | Version 3.2 | Version 3.2.1
MM | SIunits.MolarMass | Fluid.Dissipation.Utilities.Types.MolarMass_gpmol

function Fluid.Utilities.regFun3

Equations in Version 3.2 | Equations in Version 3.2.1
... assert(x0<x1, "regFun3(): Data points not sorted appropriately (x0 = "+String(x0)+" > x1 = "+String(x1)+"). Please flip arguments.");
| if y0d*y1d >= 0 then else assert(abs(y0d)<Modelica.Constants.eps or abs(y1d)<Modelica.Constants.eps, "regFun3(): Derivatives at data points do not allow co-monotone interpolation, as both are non-zero, of opposite sign and have an absolute value larger than machine eps (y0d = " + &nbspString(y0d) + ", y1d = " + String(y1d) + "). Please correct arguments."); end if;
h0 = x1 - x0; ... if abs(Delta0)<=0 then
y = y0; | y = y0 + Delta0*(x-x0);
| c = 0;
elseif abs(y1d + y0d - 2*Delta0) < 100*Modelica_3_2.Constants.eps then
y = (y0d+y1d-2*Delta0)*(x-x0)^3/h0^2+(-2*y0d-y1d+3*Delta0)*(x-x0)^2/h0+y0d*(x-x0)+y0; | y = y0 + (x-x0)*(y0d + (x-x0)/h0*( (-2*y0d-y1d+3*Delta0) + (x-x0)*(y0d+y1d-2*Delta0)/h0));
aux01 = (x0+x1)/2; ... else
y = (y0d+y1d-2*Delta0)*(x-x0)^3/h0^2+(-2*y0d-y1d+3*Delta0)*(x-x0)^2/h0+y0d*(x-x0)+y0; | y = y0 + (x-x0)*(y0d + (x-x0)/h0*( (-2*y0d-y1d+3*Delta0) + (x-x0)*(y0d+y1d-2*Delta0)/h0));
aux01 = (x0+x1)/2; ...

model Media.Examples.SimpleLiquidWater

Component | Version 3.2 | Version 3.2.1
eta | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
cv | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity

model Media.Examples.IdealGasH2O

Component | Version 3.2 | Version 3.2.1
cp | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
cv | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
k | Media.Interfaces.PartialMedium.IsentropicExponent | Media.Interfaces.Types.IsentropicExponent
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
a | Media.Interfaces.PartialMedium.VelocityOfSound | Media.Interfaces.Types.VelocityOfSound
h_is | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

model Media.Examples.WaterIF97

Component | Version 3.2 | Version 3.2.1
medium | p(start=1.e5, stateSelect=StateSelect.prefer) | p(start=1.e5, fixed=true, stateSelect=StateSelect.prefer)
h(start=1.0e5, stateSelect=StateSelect.prefer) | h(start=1.0e5, fixed=true, stateSelect=StateSelect.prefer)
V |  | fixed=true
H_flow_ext | Media.Interfaces.PartialMedium.EnthalpyFlowRate | Media.Interfaces.Types.EnthalpyFlowRate

model Media.Examples.MixtureGases

Component | Version 3.2 | Version 3.2.1
medium1 | p(start=1.e5, stateSelect=StateSelect.prefer) | p(start=1.e5, fixed=true, stateSelect=StateSelect.prefer)
T(start=300, stateSelect=StateSelect.prefer) | T(start=300, fixed=true, stateSelect=StateSelect.prefer)
cp1 | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
eta1 | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
lambda1 | Media.Interfaces.PartialMedium.ThermalConductivity | Media.Interfaces.Types.ThermalConductivity
medium2 | p(start=1.e5, stateSelect=StateSelect.prefer) | p(start=1.e5, fixed=true, stateSelect=StateSelect.prefer)
T(start=300, stateSelect=StateSelect.prefer) | T(start=300, fixed=true, stateSelect=StateSelect.prefer)
cp2 | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
eta2 | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
lambda2 | Media.Interfaces.PartialMedium.ThermalConductivity | Media.Interfaces.Types.ThermalConductivity

model Media.Examples.MoistAir

Component | Version 3.2 | Version 3.2.1
medium | T(start=274.0) | T(start=274.0, fixed=true)
p(start=1.0e5) | p(start=1.0e5, fixed=true)
MMx | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass
MM | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass
unitTime |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... state1.T = 300 + 10*time;
state1.X = {time, 1-time}; | state1.X = {time,1 - time}/unitTime;
state2.p = 1.e5*(1+time/2);
state2.T = 340 - 20*time;
state2.X = {0.5*time, 1-0.5*time}; | state2.X = {0.5*time,1 - 0.5*time}/unitTime;
smoothState = Medium.setSmoothState(m_flow_ext, state1, state2, 0.2); ...

model Media.Examples.TwoPhaseWater.ExtendedProperties

Component | Version 3.2 | Version 3.2.1
eta | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
eta_d | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
eta_b | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
lambda_d | Media.Interfaces.PartialMedium.ThermalConductivity | Media.Interfaces.Types.ThermalConductivity
lambda_b | Media.Interfaces.PartialMedium.ThermalConductivity | Media.Interfaces.Types.ThermalConductivity
cp_d | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
cp_b | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
x | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
s_b | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
s_d | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy

model Media.Examples.TwoPhaseWater.TestTwoPhaseStates

Component | Version 3.2 | Version 3.2.1
medium | p(start=700.0) | p(start=2000.0, fixed=true)
h(start=8.0e5) | h(start=8.0e5, fixed=true)

model Media.Examples.TestOnly.MixIdealGasAir

Component | Version 3.2 | Version 3.2.1
medium | T(start=200.0) | T(start=200.0, fixed=true)
p(start=1.0e5) | p(start=1.0e5, fixed=true)
medium2 | T(start=300.0) | T(start=300.0, fixed=true)
X(start={0.2,0.8}) | X(start={0.2,0.8}, fixed=true)
p(start=2.0e5) | p(start=2.0e5, fixed=true)
cp | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
cv | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
gamma | Media.Interfaces.PartialMedium.IsentropicExponent | Media.Interfaces.Types.IsentropicExponent
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
s2 | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
a | Media.Interfaces.PartialMedium.VelocityOfSound | Media.Interfaces.Types.VelocityOfSound
eta | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
lambda | Media.Interfaces.PartialMedium.ThermalConductivity | Media.Interfaces.Types.ThermalConductivity
h_is | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

model Media.Examples.TestOnly.FlueGas

Component | Version 3.2 | Version 3.2.1
state | T(start=200.0) | T(start=200.0, fixed=true)
p(start=1.0e5) | p(start=1.0e5, fixed=true)
medium2 | T(start=300.0) | T(start=300.0, fixed=true)
X(start={0.2,0.1,0.3,0.4}) | X(start={0.2,0.1,0.3,0.4}, fixed=true)
p(start=2.0e5) | p(start=2.0e5, fixed=true)
cp | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
cv | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
gamma | Media.Interfaces.PartialMedium.IsentropicExponent | Media.Interfaces.Types.IsentropicExponent
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
s2 | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
a | Media.Interfaces.PartialMedium.VelocityOfSound | Media.Interfaces.Types.VelocityOfSound
h_is | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
MMx | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass
MM | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass

model Media.Examples.TestOnly.IdealGasN2

Component | Version 3.2 | Version 3.2.1
H_flow_ext | Media.Interfaces.PartialMedium.EnthalpyFlowRate | Media.Interfaces.Types.EnthalpyFlowRate
medium | p(start=1.e5) | p(start=1.e5, fixed=true)
T(start=300) | T(start=300, fixed=true)
cp | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
cv | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
gamma | Media.Interfaces.PartialMedium.IsentropicExponent | Media.Interfaces.Types.IsentropicExponent
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
a | Media.Interfaces.PartialMedium.VelocityOfSound | Media.Interfaces.Types.VelocityOfSound

model Media.Examples.TestOnly.IdealGasN2Mix

Component | Version 3.2 | Version 3.2.1
H_flow_ext | Media.Interfaces.PartialMedium.EnthalpyFlowRate | Media.Interfaces.Types.EnthalpyFlowRate
medium | p(start=1.e5) | p(start=1.e5, fixed=true)
T(start=300) | T(start=300, fixed=true)
cp | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
cv | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
gamma | Media.Interfaces.PartialMedium.IsentropicExponent | Media.Interfaces.Types.IsentropicExponent
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
a | Media.Interfaces.PartialMedium.VelocityOfSound | Media.Interfaces.Types.VelocityOfSound

connector Media.Examples.Tests.Components.FluidPort

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
H_flow | Media.Interfaces.PartialMedium.EnthalpyFlowRate | Media.Interfaces.Types.EnthalpyFlowRate
Xi | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
C | Media.Interfaces.PartialMedium.ExtraProperty | Media.Interfaces.Types.ExtraProperty
mC_flow | Media.Interfaces.PartialMedium.ExtraPropertyFlowRate | Media.Interfaces.Types.ExtraPropertyFlowRate

model Media.Examples.Tests.Components.PortVolume

Component | Version 3.2 | Version 3.2.1
p_start | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
d_start | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T_start | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h_start | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X_start | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

model Media.Examples.Tests.Components.FixedMassFlowRate

Component | Version 3.2 | Version 3.2.1
T_ambient | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h_ambient | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X_ambient | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

model Media.Examples.Tests.Components.FixedAmbient

Component | Version 3.2 | Version 3.2.1
p_ambient | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
d_ambient | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T_ambient | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h_ambient | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X_ambient | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

model Media.Examples.Tests.Components.ShortPipe

Component | Version 3.2 | Version 3.2.1
dp_nominal | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

model Media.Examples.SolveOneNonlinearEquation.Inverse_sh_T

Component | Version 3.2 | Version 3.2.1
h_min | =Medium.h_T(Medium.data, T_min) | =Medium.specificEnthalpy(Medium.setState_pT(p, T_min))
h_max | =Medium.h_T(Medium.data, T_max) | =Medium.specificEnthalpy(Medium.setState_pT(p, T_max))
h1 |  | start=h_min
| fixed=true
s1 |  | start=s_min
| fixed=true

Equations in Version 3.2 | Equations in Version 3.2.1
h1 = if time < 0 then h_min else if time > 1 then h_max else h_min + time/timeUnit*(h_max - h_min); | der(h1) = if time < 1.0 then 1/timeUnit*(h_max - h_min) else 0.0;
s1 = if time < 0 then s_min else if time > 1 then s_max else s_min + time/timeUnit*(s_max - s_min); | der(s1) = if time < 1.0 then 1/timeUnit*(s_max - s_min) else 0.0;
Th = Medium.temperature_phX(p, h1, fill(0.0,0)); ...

model Media.Examples.SolveOneNonlinearEquation.InverseIncompressible_sh_T

Component | Version 3.2 | Version 3.2.1
h1 |  | start=h_min
| fixed=true
s1 |  | start=s_min
| fixed=true

Equations in Version 3.2 | Equations in Version 3.2.1
h1 = if time < 0 then h_min else if time > 1 then h_max else h_min + time/timeUnit*(h_max - h_min); | der(h1) = if time < 1.0 then 1/timeUnit*(h_max - h_min) else 0.0;
s1 = if time < 0 then s_min else if time > 1 then s_max else s_min + time/timeUnit*(s_max - s_min); | der(s1) = if time < 1.0 then 1/timeUnit*(s_max - s_min) else 0.0;
Th = Medium.temperature_phX(p, h1, fill(0.0,0)); ...

model Media.Examples.SolveOneNonlinearEquation.Inverse_sh_TX

Component | Version 3.2 | Version 3.2.1
h_min |  | parameter
h_max |  | parameter
s_min |  | parameter
s_max |  | parameter
h1 |  | start=h_min
| fixed=true
s1 |  | start=s_min
| fixed=true
X |  | parameter
| =Medium.reference_X

Equations in Version 3.2 | Equations in Version 3.2.1
X = Medium.reference_X; | der(h1) = if time < 1.0 then 1/timeUnit*(h_max - h_min) else 0.0;
h1 = if time < 0 then h_min else if time > 1 then h_max else h_min + time/timeUnit*(h_max - h_min); | der(s1) = if time < 1.0 then 1/timeUnit*(s_max - s_min) else 0.0;
s1 = if time < 0 then s_min else &nbspif time > 1 then s_max else &nbsps_min + time/timeUnit*(s_max - s_min); |
Th = Medium.temperature_phX(p, h1, X); ...

package Media.Interfaces.TemplateMedium

Component | Version 3.2 | Version 3.2.1
cp_const | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity

record Media.Interfaces.TemplateMedium.ThermodynamicState

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

package Media.Interfaces.PartialMedium

Component | Version 3.2 | Version 3.2.1
ThermoStates | Media.Interfaces.PartialMedium.Choices.IndependentVariables | Media.Interfaces.Choices.IndependentVariables
reference_p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
reference_T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
reference_X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
p_default | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T_default | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h_default | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X_default | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

record Media.Interfaces.PartialMedium.FluidConstants

Component | Version 3.2 | Version 3.2.1
record |  | shortClass
iupacName | Present |
casRegistryNumber | Present |
chemicalFormula | Present |
structureFormula | Present |
molarMass | Present |

model Media.Interfaces.PartialMedium.BaseProperties

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
u | Media.Interfaces.PartialMedium.SpecificInternalEnergy | Media.Interfaces.Types.SpecificInternalEnergy
R | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
MM | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass

function Media.Interfaces.PartialMedium.setState_pTX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Interfaces.PartialMedium.setState_phX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Interfaces.PartialMedium.setState_psX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Interfaces.PartialMedium.setState_dTX

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Interfaces.PartialMedium.dynamicViscosity

Component | Version 3.2 | Version 3.2.1
eta | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity

function Media.Interfaces.PartialMedium.thermalConductivity

Component | Version 3.2 | Version 3.2.1
lambda | Media.Interfaces.PartialMedium.ThermalConductivity | Media.Interfaces.Types.ThermalConductivity

function Media.Interfaces.PartialMedium.prandtlNumber

Component | Version 3.2 | Version 3.2.1
Pr | Media.Interfaces.PartialMedium.PrandtlNumber | Media.Interfaces.Types.PrandtlNumber

function Media.Interfaces.PartialMedium.pressure

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

function Media.Interfaces.PartialMedium.temperature

Component | Version 3.2 | Version 3.2.1
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialMedium.density

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Interfaces.PartialMedium.specificEnthalpy

Component | Version 3.2 | Version 3.2.1
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialMedium.specificInternalEnergy

Component | Version 3.2 | Version 3.2.1
u | Media.Interfaces.PartialMedium.SpecificEnergy | Media.Interfaces.Types.SpecificEnergy

function Media.Interfaces.PartialMedium.specificEntropy

Component | Version 3.2 | Version 3.2.1
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy

function Media.Interfaces.PartialMedium.specificGibbsEnergy

Component | Version 3.2 | Version 3.2.1
g | Media.Interfaces.PartialMedium.SpecificEnergy | Media.Interfaces.Types.SpecificEnergy

function Media.Interfaces.PartialMedium.specificHelmholtzEnergy

Component | Version 3.2 | Version 3.2.1
f | Media.Interfaces.PartialMedium.SpecificEnergy | Media.Interfaces.Types.SpecificEnergy

function Media.Interfaces.PartialMedium.specificHeatCapacityCp

Component | Version 3.2 | Version 3.2.1
cp | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity

function Media.Interfaces.PartialMedium.specificHeatCapacityCv

Component | Version 3.2 | Version 3.2.1
cv | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity

function Media.Interfaces.PartialMedium.isentropicExponent

Component | Version 3.2 | Version 3.2.1
gamma | Media.Interfaces.PartialMedium.IsentropicExponent | Media.Interfaces.Types.IsentropicExponent

function Media.Interfaces.PartialMedium.isentropicEnthalpy

Component | Version 3.2 | Version 3.2.1
p_downstream | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h_is | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialMedium.velocityOfSound

Component | Version 3.2 | Version 3.2.1
a | Media.Interfaces.PartialMedium.VelocityOfSound | Media.Interfaces.Types.VelocityOfSound

function Media.Interfaces.PartialMedium.isobaricExpansionCoefficient

Component | Version 3.2 | Version 3.2.1
beta | Media.Interfaces.PartialMedium.IsobaricExpansionCoefficient | Media.Interfaces.Types.IsobaricExpansionCoefficient

function Media.Interfaces.PartialMedium.density_derp_h

Component | Version 3.2 | Version 3.2.1
ddph | Media.Interfaces.PartialMedium.DerDensityByPressure | Media.Interfaces.Types.DerDensityByPressure

function Media.Interfaces.PartialMedium.density_derh_p

Component | Version 3.2 | Version 3.2.1
ddhp | Media.Interfaces.PartialMedium.DerDensityByEnthalpy | Media.Interfaces.Types.DerDensityByEnthalpy

function Media.Interfaces.PartialMedium.density_derp_T

Component | Version 3.2 | Version 3.2.1
ddpT | Media.Interfaces.PartialMedium.DerDensityByPressure | Media.Interfaces.Types.DerDensityByPressure

function Media.Interfaces.PartialMedium.density_derT_p

Component | Version 3.2 | Version 3.2.1
ddTp | Media.Interfaces.PartialMedium.DerDensityByTemperature | Media.Interfaces.Types.DerDensityByTemperature

function Media.Interfaces.PartialMedium.density_derX

Component | Version 3.2 | Version 3.2.1
dddX | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Interfaces.PartialMedium.molarMass

Component | Version 3.2 | Version 3.2.1
MM | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass

function Media.Interfaces.PartialMedium.specificEnthalpy_pTX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialMedium.specificEntropy_pTX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy

function Media.Interfaces.PartialMedium.density_pTX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Interfaces.PartialMedium.temperature_phX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialMedium.density_phX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Interfaces.PartialMedium.temperature_psX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialMedium.density_psX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Interfaces.PartialMedium.specificEnthalpy_psX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

package Media.Interfaces.PartialMedium.Choices

Component | Version 3.2 | Version 3.2.1
package |  | shortClass

function Media.Interfaces.PartialPureSubstance.setState_pT

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialPureSubstance.setState_ph

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialPureSubstance.setState_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy

function Media.Interfaces.PartialPureSubstance.setState_dT

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialPureSubstance.density_ph

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Interfaces.PartialPureSubstance.temperature_ph

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialPureSubstance.pressure_dT

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

function Media.Interfaces.PartialPureSubstance.specificEnthalpy_dT

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialPureSubstance.specificEnthalpy_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialPureSubstance.temperature_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialPureSubstance.density_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Interfaces.PartialPureSubstance.specificEnthalpy_pT

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialPureSubstance.density_pT

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

package Media.Interfaces.PartialLinearFluid

Component | Version 3.2 | Version 3.2.1
cp_const | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
beta_const | Media.Interfaces.PartialMedium.IsobaricExpansionCoefficient | Media.Interfaces.Types.IsobaricExpansionCoefficient
MM_const | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass
reference_d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
reference_h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
reference_s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy

record Media.Interfaces.PartialLinearFluid.ThermodynamicState

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialLinearFluid.T_ph

Component | Version 3.2 | Version 3.2.1
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialLinearFluid.T_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

package Media.Interfaces.PartialMixtureMedium

Component | Version 3.2 | Version 3.2.1
fluidConstants | Media.Interfaces.PartialMixtureMedium.FluidConstants | Media.Interfaces.PartialMedium.FluidConstants

record Media.Interfaces.PartialMixtureMedium.ThermodynamicState

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Interfaces.PartialMixtureMedium.moleToMassFractions

Component | Version 3.2 | Version 3.2.1
MMX | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass
Mmix | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass

function Media.Interfaces.PartialCondensingGases.saturationPressure

Component | Version 3.2 | Version 3.2.1
Tsat | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
psat | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

function Media.Interfaces.PartialCondensingGases.enthalpyOfVaporization

Component | Version 3.2 | Version 3.2.1
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
r0 | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialCondensingGases.enthalpyOfLiquid

Component | Version 3.2 | Version 3.2.1
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialCondensingGases.enthalpyOfGas

Component | Version 3.2 | Version 3.2.1
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialCondensingGases.enthalpyOfCondensingGas

Component | Version 3.2 | Version 3.2.1
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialCondensingGases.enthalpyOfNonCondensingGas

Component | Version 3.2 | Version 3.2.1
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

package Media.Interfaces.PartialTwoPhaseMedium

Component | Version 3.2 | Version 3.2.1
smoothModel |  | =false
onePhase |  | =false
fluidConstants | Media.Interfaces.PartialTwoPhaseMedium.FluidConstants | Media.Interfaces.PartialMedium.FluidConstants

record Media.Interfaces.PartialTwoPhaseMedium.ThermodynamicState

Component | Version 3.2 | Version 3.2.1
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase

model Media.Interfaces.PartialTwoPhaseMedium.BaseProperties

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties

function Media.Interfaces.PartialTwoPhaseMedium.setDewState

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase

function Media.Interfaces.PartialTwoPhaseMedium.setBubbleState

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase

function Media.Interfaces.PartialTwoPhaseMedium.setState_dTX

Component | Version 3.2 | Version 3.2.1
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase

function Media.Interfaces.PartialTwoPhaseMedium.setState_phX

Component | Version 3.2 | Version 3.2.1
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase

function Media.Interfaces.PartialTwoPhaseMedium.setState_psX

Component | Version 3.2 | Version 3.2.1
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase

function Media.Interfaces.PartialTwoPhaseMedium.setState_pTX

Component | Version 3.2 | Version 3.2.1
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase

function Media.Interfaces.PartialTwoPhaseMedium.setSat_T

Component | Version 3.2 | Version 3.2.1
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties

function Media.Interfaces.PartialTwoPhaseMedium.setSat_p

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties

function Media.Interfaces.PartialTwoPhaseMedium.bubbleEnthalpy

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties

function Media.Interfaces.PartialTwoPhaseMedium.dewEnthalpy

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties

function Media.Interfaces.PartialTwoPhaseMedium.bubbleEntropy

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties

function Media.Interfaces.PartialTwoPhaseMedium.dewEntropy

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties

function Media.Interfaces.PartialTwoPhaseMedium.bubbleDensity

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties
dl | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Interfaces.PartialTwoPhaseMedium.dewDensity

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties
dv | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Interfaces.PartialTwoPhaseMedium.saturationPressure

Component | Version 3.2 | Version 3.2.1
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

function Media.Interfaces.PartialTwoPhaseMedium.saturationTemperature

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialTwoPhaseMedium.saturationPressure_sat

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

function Media.Interfaces.PartialTwoPhaseMedium.saturationTemperature_sat

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialTwoPhaseMedium.saturationTemperature_derp

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
dTp | Real | Media.Interfaces.Types.DerTemperatureByPressure

function Media.Interfaces.PartialTwoPhaseMedium.saturationTemperature_derp_sat

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties
dTp | Real | Media.Interfaces.Types.DerTemperatureByPressure

function Media.Interfaces.PartialTwoPhaseMedium.surfaceTension

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties
sigma | Media.Interfaces.PartialMedium.SurfaceTension | Media.Interfaces.Types.SurfaceTension

function Media.Interfaces.PartialTwoPhaseMedium.molarMass

Component | Version 3.2 | Version 3.2.1
function | partial |

function Media.Interfaces.PartialTwoPhaseMedium.dBubbleDensity_dPressure

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties
ddldp | Media.Interfaces.PartialMedium.DerDensityByPressure | Media.Interfaces.Types.DerDensityByPressure

function Media.Interfaces.PartialTwoPhaseMedium.dDewDensity_dPressure

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties
ddvdp | Media.Interfaces.PartialMedium.DerDensityByPressure | Media.Interfaces.Types.DerDensityByPressure

function Media.Interfaces.PartialTwoPhaseMedium.dBubbleEnthalpy_dPressure

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties
dhldp | Media.Interfaces.PartialMedium.DerEnthalpyByPressure | Media.Interfaces.Types.DerEnthalpyByPressure

function Media.Interfaces.PartialTwoPhaseMedium.dDewEnthalpy_dPressure

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties
dhvdp | Media.Interfaces.PartialMedium.DerEnthalpyByPressure | Media.Interfaces.Types.DerEnthalpyByPressure

function Media.Interfaces.PartialTwoPhaseMedium.specificEnthalpy_pTX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialTwoPhaseMedium.temperature_phX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialTwoPhaseMedium.density_phX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Interfaces.PartialTwoPhaseMedium.temperature_psX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialTwoPhaseMedium.density_psX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Interfaces.PartialTwoPhaseMedium.specificEnthalpy_psX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialTwoPhaseMedium.setState_pT

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase

function Media.Interfaces.PartialTwoPhaseMedium.setState_ph

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase

function Media.Interfaces.PartialTwoPhaseMedium.setState_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase

function Media.Interfaces.PartialTwoPhaseMedium.setState_dT

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase

function Media.Interfaces.PartialTwoPhaseMedium.setState_px

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
x | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Interfaces.PartialTwoPhaseMedium.setState_Tx

Component | Version 3.2 | Version 3.2.1
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
x | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Interfaces.PartialTwoPhaseMedium.vapourQuality

Component | Version 3.2 | Version 3.2.1
x | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
eps | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialTwoPhaseMedium.density_ph

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Interfaces.PartialTwoPhaseMedium.temperature_ph

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialTwoPhaseMedium.pressure_dT

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

function Media.Interfaces.PartialTwoPhaseMedium.specificEnthalpy_dT

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialTwoPhaseMedium.specificEnthalpy_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialTwoPhaseMedium.temperature_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialTwoPhaseMedium.density_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Interfaces.PartialTwoPhaseMedium.specificEnthalpy_pT

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialTwoPhaseMedium.density_pT

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

package Media.Interfaces.PartialSimpleMedium

Component | Version 3.2 | Version 3.2.1
cp_const | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
cv_const | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
d_const | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
eta_const | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
lambda_const | Media.Interfaces.PartialMedium.ThermalConductivity | Media.Interfaces.Types.ThermalConductivity
a_const | Media.Interfaces.PartialMedium.VelocityOfSound | Media.Interfaces.Types.VelocityOfSound
T_min | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
T_max | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
T0 | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
MM_const | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass

record Media.Interfaces.PartialSimpleMedium.ThermodynamicState

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialSimpleMedium.setState_pTX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Interfaces.PartialSimpleMedium.setState_phX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Interfaces.PartialSimpleMedium.setState_psX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
state := ThermodynamicState(p=p, T=Modelica_3_2.Math.exp(s/cp_const + Modelica_3_2.Math.log(reference_T))) "here the incompressible limit is used, with cp as heat capacity"; | state := ThermodynamicState(p=p, T=Modelica.Math.exp(s/cp_const + Modelica.Math.log(reference_T))) "Here the incompressible limit is used, with cp as heat capacity";

function Media.Interfaces.PartialSimpleMedium.setState_dTX

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(false,"pressure can not be computed from temperature and density for an incompressible fluid!"); | assert(false, "Pressure can not be computed from temperature and density for an incompressible fluid!");

function Media.Interfaces.PartialSimpleMedium.specificEnthalpy_pTX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialSimpleMedium.temperature_phX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialSimpleMedium.density_phX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

package Media.Interfaces.PartialSimpleIdealGasMedium

Component | Version 3.2 | Version 3.2.1
cp_const | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
cv_const | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
R_gas | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
MM_const | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass
eta_const | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
lambda_const | Media.Interfaces.PartialMedium.ThermalConductivity | Media.Interfaces.Types.ThermalConductivity
T_min | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
T_max | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
T0 | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
fluidConstants |  | Present

record Media.Interfaces.PartialSimpleIdealGasMedium.ThermodynamicState

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialSimpleIdealGasMedium.setState_pTX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Interfaces.PartialSimpleIdealGasMedium.setState_phX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Interfaces.PartialSimpleIdealGasMedium.setState_psX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Interfaces.PartialSimpleIdealGasMedium.setState_dTX

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Interfaces.PartialSimpleIdealGasMedium.specificInternalEnergy

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
u := cp_const*(state.T-T0) - R_gas*state.T; | u := (cp_const - R_gas)*(state.T - T0);

function Media.Interfaces.PartialSimpleIdealGasMedium.specificEnthalpy_pTX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Interfaces.PartialSimpleIdealGasMedium.temperature_phX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Interfaces.PartialSimpleIdealGasMedium.density_phX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

package Media.Common

Component | Version 3.2 | Version 3.2.1
MINPOS | protected |
AMIN | protected |
AMAX | protected |
ANOM | protected |
MOLMIN | protected |
MOLMAX | protected |
MOLNOM | protected |
DMIN | protected |
=MINPOS | =1e-6
DMAX | protected |
=1.0e5 | =30.0e3
DNOM | protected |
LAMMIN | protected |
LAMNOM | protected |
LAMMAX | protected |
ETAMIN | protected |
ETAMAX | protected |
ETANOM | protected |
EMIN | protected |
EMAX | protected |
ENOM | protected |
SMIN | protected |
SMAX | protected |
SNOM | protected |
MDOTMIN | protected |
MDOTMAX | protected |
MDOTNOM | protected |
MASSXMIN | protected |
MASSXMAX | protected |
MASSXNOM | protected |
MMIN | protected |
MMAX | protected |
MNOM | protected |
MMMIN | protected |
MMMAX | protected |
MMNOM | protected |
MOLEYMIN | protected |
MOLEYMAX | protected |
MOLEYNOM | protected |
GMIN | protected |
GMAX | protected |
GNOM | protected |
POWMIN | protected |
POWMAX | protected |
POWNOM | protected |
PMIN | protected |
PMAX | protected |
PNOM | protected |
COMPPMIN | protected |
COMPPMAX | protected |
COMPPNOM | protected |
KAPPAMIN | protected |
KAPPAMAX | protected |
KAPPANOM | protected |
SEMIN | protected |
SEMAX | protected |
SENOM | protected |
SHMIN | protected |
SHMAX | protected |
SHNOM | protected |
SSMIN | protected |
SSMAX | protected |
SSNOM | protected |
CPMIN | protected |
CPMAX | protected |
CPNOM | protected |
TMIN | protected |
=MINPOS | =1.0
TMAX | protected |
=1.0e5 | =6000.0
TNOM | protected |
LMIN | protected |
LMAX | protected |
LNOM | protected |
VELMIN | protected |
VELMAX | protected |
VELNOM | protected |
VMIN | protected |
VMAX | protected |
VNOM | protected |

type Media.Common.Rate

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.MolarFlowRate

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.MolarReactionRate

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.MolarEnthalpy

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.DerDensityByEntropy

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.DerEnergyByPressure

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.DerEnergyByMoles

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.DerEntropyByTemperature

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.DerEntropyByPressure

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.DerEntropyByMoles

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.DerPressureByDensity

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.DerPressureBySpecificVolume

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.DerPressureByTemperature

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.DerVolumeByTemperature

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.DerVolumeByPressure

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.DerVolumeByMoles

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.IsenthalpicExponent

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.IsentropicExponent

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.IsobaricVolumeExpansionCoefficient

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.IsochoricPressureCoefficient

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.IsothermalCompressibility

Component | Version 3.2 | Version 3.2.1
type | protected |

type Media.Common.JouleThomsonCoefficient

Component | Version 3.2 | Version 3.2.1
type | protected |

package Media.Common.ThermoFluidSpecial

Component | Version 3.2 | Version 3.2.1
package | protected |

package Media.Air.SimpleAir

Component | Version 3.2 | Version 3.2.1
fluidConstants | Present |
airConstants |  | Present

function Media.Air.DryAirNasa.dynamicViscosity

Component | Version 3.2 | Version 3.2.1
eta | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
eta := Incompressible.TableBased.Polynomials_Temp.evaluate({(-4.96717436974791E-011), 5.06626785714286E-008, 1.72937731092437E-005}, Cv.to_degC(state.T)); | eta := 1e-6*Polynomials_Temp.evaluateWithRange( {9.7391102886305869E-15,-3.1353724870333906E-11,4.3004876595642225E-08, -3.8228016291758240E-05,5.0427874367180762E-02,1.7239260139242528E+01}, Cv.to_degC(123.15), Cv.to_degC(1273.15), Cv.to_degC(state.T));

function Media.Air.DryAirNasa.thermalConductivity

Component | Version 3.2 | Version 3.2.1
lambda | Media.Interfaces.PartialMedium.ThermalConductivity | Media.Interfaces.Types.ThermalConductivity

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
lambda := Incompressible.TableBased.Polynomials_Temp.evaluate({(-4.8737307422969E-008), 7.67803133753502E-005, 0.0241814385504202},Cv.to_degC(state.T)); | lambda := 1e-3*Polynomials_Temp.evaluateWithRange( {6.5691470817717812E-15,-3.4025961923050509E-11,5.3279284846303157E-08, -4.5340839289219472E-05,7.6129675309037664E-02,2.4169481088097051E+01}, Cv.to_degC(123.15), Cv.to_degC(1273.15), Cv.to_degC(state.T));

model Media.Air.MoistAir.BaseProperties

Component | Version 3.2 | Version 3.2.1
x_water | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
X_liquid | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
X_steam | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
X_air | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
X_sat | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
x_sat | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
p_steam_sat | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

Equations in Version 3.2 | Equations in Version 3.2.1
assert(T >= 200.0 and T <= 423.15, " Temperature T is not in the allowed range 200.0 K <= (T =" + String(T) + " K) <= 423.15 K required from medium model \"" + mediumName + "\"."); | assert(T >= 190 and T <= 647, " Temperature T is not in the allowed range 190.0 K <= (T =" + String(T) + " K) <= 647.0 K required from medium model \"" + mediumName + "\".");
MM = 1/(Xi[Water]/MMX[Water]+(1.0-Xi[Water])/MMX[Air]); ...

function Media.Air.MoistAir.setState_pTX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Air.MoistAir.setState_phX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Air.MoistAir.setState_dTX

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Air.MoistAir.Xsaturation

Component | Version 3.2 | Version 3.2.1
X_sat | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Air.MoistAir.xsaturation

Component | Version 3.2 | Version 3.2.1
x_sat | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Air.MoistAir.xsaturation_pT

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
x_sat | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.Air.MoistAir.massFraction_pTphi

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X_steam | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
psat | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

function Media.Air.MoistAir.saturationPressureLiquid

Component | Version 3.2 | Version 3.2.1
Tcritical |  | Present
pcritical |  | Present
r1 |  | Present
a |  | Present
n |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
psat := 611.657*Math.exp(17.2799 - 4102.99/(Tsat - 35.719)); | psat := exp(((a[1]*r1^n[1] + a[2]*r1^n[2] + a[3]*r1^n[3] + a[4]*r1^n[4] + a[5]*r1^n[5] + a[6]*r1^n[6])*Tcritical)/Tsat)*pcritical;

function Media.Air.MoistAir.saturationPressureLiquid_der

Component | Version 3.2 | Version 3.2.1
Tcritical |  | Present
pcritical |  | Present
r1 |  | Present
r1_der |  | Present
a |  | Present
n |  | Present
r2 |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
psat_der:=611.657*Math.exp(17.2799 - 4102.99/(Tsat - 35.719))*4102.99*dTsat/(Tsat - 35.719)/(Tsat - 35.719); | psat_der := exp((r2*Tcritical)/Tsat)*pcritical*((a[1]*(r1^(n[1] - 1)*n[1] *r1_der) + a[2]*(r1^(n[2] - 1)*n[2]*r1_der) + a[3]*(r1^(n[3] - 1)*n[3]* r1_der) + a[4]*(r1^(n[4] - 1)*n[4]*r1_der) + a[5]*(r1^(n[5] - 1)*n[5]* r1_der) + a[6]*(r1^(n[6] - 1)*n[6]*r1_der))*Tcritical/Tsat - r2* Tcritical*dTsat/Tsat^2);

function Media.Air.MoistAir.sublimationPressureIce

Component | Version 3.2 | Version 3.2.1
Ttriple |  | Present
ptriple |  | Present
r1 |  | Present
a |  | Present
n |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
psat := 611.657*Math.exp(22.5159*(1.0 - 273.16/Tsat)); | psat := exp(a[1] - a[1]*r1^n[1] + a[2] - a[2]*r1^n[2])*ptriple;

function Media.Air.MoistAir.sublimationPressureIce_der

Component | Version 3.2 | Version 3.2.1
Ttriple |  | Present
ptriple |  | Present
r1 |  | Present
r1_der |  | Present
a |  | Present
n |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
psat_der:=611.657*Math.exp(22.5159*(1.0 - 273.16/Tsat))*22.5159*273.16*dTsat/Tsat/Tsat; | psat_der := exp(a[1] - a[1]*r1^n[1] + a[2] - a[2]*r1^n[2])*ptriple*(-(a[1] *(r1^(n[1] - 1)*n[1]*r1_der)) - (a[2]*(r1^(n[2] - 1)*n[2]*r1_der)));

function Media.Air.MoistAir.saturationPressure_der

Component | Version 3.2 | Version 3.2.1
Tsat | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Air.MoistAir.saturationTemperature

Component | Version 3.2 | Version 3.2.1
T_min | =200 | =190
T_max | =400 | =647

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
T:=Internal.solve(p, T_min, T_max); | T := Internal.solve( p, T_min, T_max, f_nonlinear_data=Internal.f_nonlinear_Data());

function Media.Air.MoistAir.enthalpyOfVaporization

Component | Version 3.2 | Version 3.2.1
Tcritical |  | Present
dcritical |  | Present
pcritical |  | Present
n |  | Present
a |  | Present
m |  | Present
b |  | Present
o |  | Present
c |  | Present
tau |  | Present
r1 |  | Present
r2 |  | Present
dp |  | Present
dpp |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
r0:=(2405900-2500500)/(40-0)*(T-273.16)+2500500; | r0 := -(((dp - dpp)*exp(r1)*pcritical*(r2 + r1*tau))/(dp*dpp*tau)) "Difference of equations (7) and (6)";

function Media.Air.MoistAir.HeatCapacityOfWater

Component | Version 3.2 | Version 3.2.1
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
cp_fl | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity

function Media.Air.MoistAir.enthalpyOfGas

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
h := SingleGasNasa.h_Tlow(data=steam, T=T, refChoice=3, h_off=46479.819+2501014.5)*X[Water] + SingleGasNasa.h_Tlow(data=dryair, T=T, refChoice=3, h_off=25104.684)*(1.0-X[Water]); | h := Modelica.Media.IdealGases.Common.Functions.h_Tlow( data=steam, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=46479.819 + 2501014.5)*X[Water] + Modelica.Media.IdealGases.Common.Functions.h_Tlow( data=dryair, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=25104.684)*(1.0 - X[Water]);

function Media.Air.MoistAir.enthalpyOfCondensingGas

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
h := SingleGasNasa.h_Tlow(data=steam, T=T, refChoice=3, h_off=46479.819+2501014.5); | h := Modelica.Media.IdealGases.Common.Functions.h_Tlow( data=steam, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=46479.819 + 2501014.5);

function Media.Air.MoistAir.enthalpyOfNonCondensingGas

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
h := SingleGasNasa.h_Tlow(data=dryair, T=T, refChoice=3, h_off=25104.684); | h := Modelica.Media.IdealGases.Common.Functions.h_Tlow( data=dryair, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=25104.684);

function Media.Air.MoistAir.T_phX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
T := Internal.solve(h, 240, 400, p, X[1:nXi], steam); | T := Internal.solve( h, 190, 647, p, X[1:nXi], steam);

function Media.Air.MoistAir.h_pTX

Equations in Version 3.2 | Equations in Version 3.2.1
... X_air = 1 - X[Water];
h = {SingleGasNasa.h_Tlow(data=steam, T=T, refChoice=3, h_off=46479.819+2501014.5), SingleGasNasa.h_Tlow(data=dryair, T=T, refChoice=3, h_off=25104.684)}* {X_steam, X_air} + enthalpyOfWater(T)*X_liquid; | h = {Modelica.Media.IdealGases.Common.Functions.h_Tlow( data=steam, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=46479.819 + 2501014.5), Modelica.Media.IdealGases.Common.Functions.h_Tlow( data=dryair, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=25104.684)}*{X_steam,X_air} + enthalpyOfWater(T)*X_liquid;

function Media.Air.MoistAir.h_pTX_der

Equations in Version 3.2 | Equations in Version 3.2.1
... X_sat= min(x_sat*(1 - X[Water]), 1.0);
X_liquid = Utilities.spliceFunction(X[Water] - X_sat, 0.0, X[Water] - X_sat,1e-6); | X_liquid = Utilities.smoothMax( X[Water] - X_sat, 0.0, 1e-5);
X_steam = X[Water] - X_liquid; ... dx_sat= k_mair*(dps*(p-p_steam_sat)-p_steam_sat*(dp-dps))/(p-p_steam_sat)/(p-p_steam_sat);
dX_liq= Utilities.spliceFunction_der(X[Water] - X_sat, 0.0, X[Water] - X_sat,1e-6,(1+x_sat)*dX[Water]-(1-X[Water])*dx_sat,0.0,(1+x_sat)*dX[Water]-(1-X[Water])*dx_sat,0.0); | dX_liq = Utilities.smoothMax_der( X[Water] - X_sat, 0.0, 1e-5, (1 + x_sat)*dX[Water] - (1 - X[Water])*dx_sat, 0, 0);
dX_steam= dX[Water]-dX_liq;
h_der = X_steam* Modelica_3_2.Media.IdealGases.Common.SingleGasNasa.h_Tlow_der( data=steam, T=T, refChoice=3, h_off=46479.819 + 2501014.5, dT=dT) + dX_steam* Modelica_3_2.Media.IdealGases.Common.SingleGasNasa.h_Tlow( data=steam, T=T, refChoice=3, h_off=46479.819 + 2501014.5) + X_air* Modelica_3_2.Media.IdealGases.Common.SingleGasNasa.h_Tlow_der( data=dryair, T=T, refChoice=3, h_off=25104.684, dT=dT) + dX_air* Modelica_3_2.Media.IdealGases.Common.SingleGasNasa.h_Tlow( data=dryair, T=T, refChoice=3, h_off=25104.684) + X_liquid*enthalpyOfWater_der(T=T, dT=dT) + dX_liq*enthalpyOfWater(T); | h_der = X_steam*Modelica.Media.IdealGases.Common.Functions.h_Tlow_der( data=steam, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=46479.819 + 2501014.5, dT=dT) + dX_steam*Modelica.Media.IdealGases.Common.Functions.h_Tlow( data=steam, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=46479.819 + 2501014.5) + X_air* Modelica.Media.IdealGases.Common.Functions.h_Tlow_der( data=dryair, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=25104.684, dT=dT) + dX_air*Modelica.Media.IdealGases.Common.Functions.h_Tlow( data=dryair, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=25104.684) + X_liquid*enthalpyOfWater_der(T=T, dT=dT) + dX_liq*enthalpyOfWater(T);

function Media.Air.MoistAir.isentropicEnthalpyApproximation

Component | Version 3.2 | Version 3.2.1
p2 | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h_is | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
gamma | Media.Interfaces.PartialMedium.IsentropicExponent | Media.Interfaces.Types.IsentropicExponent
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
X := if reducedX then cat(1,state.X,{1-sum(state.X)}) else state.X; | X := state.X;
h = {SingleGasNasa.h_Tlow(data=steam, T=state.T, refChoice=3, h_off=46479.819+2501014.5), SingleGasNasa.h_Tlow(data=dryair, T=state.T, refChoice=3, h_off=25104.684)}*X; | h = {Modelica.Media.IdealGases.Common.Functions.h_Tlow( data=steam, T=state.T, refChoice=ReferenceEnthalpy.UserDefined, h_off=46479.819 + 2501014.5), Modelica.Media.IdealGases.Common.Functions.h_Tlow( data=dryair, T=state.T, refChoice=ReferenceEnthalpy.UserDefined, h_off=25104.684)}*X;
h_is = h + gamma/(gamma - 1.0)*(state.T*gasConstant(state))* ((p2/state.p)^((gamma - 1)/gamma) - 1.0); ...

function Media.Air.MoistAir.specificInternalEnergy_pTX

Equations in Version 3.2 | Equations in Version 3.2.1
... R_gas= dryair.R*X_air/(1-X_liquid)+steam.R* X_steam/(1-X_liquid);
u = X_steam*SingleGasNasa.h_Tlow(data=steam, T=T, refChoice=3, h_off=46479.819+2501014.5)+ X_air*SingleGasNasa.h_Tlow(data=dryair, T=T, refChoice=3, h_off=25104.684) + enthalpyOfWater(T)*X_liquid-R_gas*T; | u = X_steam*Modelica.Media.IdealGases.Common.Functions.h_Tlow( data=steam, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=46479.819 + 2501014.5) + X_air* Modelica.Media.IdealGases.Common.Functions.h_Tlow( data=dryair, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=25104.684) + enthalpyOfWater(T)*X_liquid - R_gas*T;

function Media.Air.MoistAir.specificInternalEnergy_pTX_der

Equations in Version 3.2 | Equations in Version 3.2.1
... dR_gas= (steam.R*(dX_steam*(1-X_liquid)+dX_liq*X_steam)+dryair.R*(dX_air*(1-X_liquid)+dX_liq*X_air))/(1-X_liquid)/(1-X_liquid);
u_der= X_steam*SingleGasNasa.h_Tlow_der(data=steam, T=T, refChoice=3, h_off=46479.819+2501014.5, dT=dT)+ dX_steam*SingleGasNasa.h_Tlow(data=steam, T=T, refChoice=3, h_off=46479.819+2501014.5) + X_air*SingleGasNasa.h_Tlow_der(data=dryair, T=T, refChoice=3, h_off=25104.684, dT=dT) + dX_air*SingleGasNasa.h_Tlow(data=dryair, T=T, refChoice=3, h_off=25104.684) + X_liquid*enthalpyOfWater_der(T=T, dT=dT) + dX_liq*enthalpyOfWater(T) - dR_gas*T-R_gas*dT; | u_der = X_steam*Modelica.Media.IdealGases.Common.Functions.h_Tlow_der( data=steam, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=46479.819 + 2501014.5, dT=dT) + dX_steam*Modelica.Media.IdealGases.Common.Functions.h_Tlow( data=steam, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=46479.819 + 2501014.5) + X_air* Modelica.Media.IdealGases.Common.Functions.h_Tlow_der( data=dryair, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=25104.684, dT=dT) + dX_air*Modelica.Media.IdealGases.Common.Functions.h_Tlow( data=dryair, T=T, refChoice=ReferenceEnthalpy.UserDefined, h_off=25104.684) + X_liquid*enthalpyOfWater_der(T=T, dT=dT) + dX_liq*enthalpyOfWater(T) - dR_gas*T - R_gas*dT;

function Media.Air.MoistAir.specificEntropy

Component | Version 3.2 | Version 3.2.1
Y | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
s := SingleGasNasa.s0_Tlow(dryair, state.T)*(1 - state.X[Water]) + SingleGasNasa.s0_Tlow(steam, state.T)*state.X[Water] - (state.X[ Water]*Modelica_3_2.Constants.R/MMX[Water]*(if state.X[Water] < Modelica_3_2.Constants.eps then state.X[Water] else Modelica_3_2.Math.log(Y[Water]*state.p/reference_p)) + (1 - state.X[ Water])*Modelica_3_2.Constants.R/MMX[Air]*(if (1 - state.X[Water]) < Modelica_3_2.Constants.eps then (1 - state.X[Water]) else Modelica_3_2.Math.log(Y[Air]*state.p/reference_p))); | s := s_pTX( state.p, state.T, state.X);

function Media.Air.MoistAir.specificHeatCapacityCv

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
cv:= SingleGasNasa.cp_Tlow(dryair, state.T)*(1-state.X[Water]) + SingleGasNasa.cp_Tlow(steam, state.T)*state.X[Water] - gasConstant(state); | cv := Modelica.Media.IdealGases.Common.Functions.cp_Tlow(dryair, state.T) *(1 - state.X[Water]) + Modelica.Media.IdealGases.Common.Functions.cp_Tlow(steam, state.T)* state.X[Water] - gasConstant(state);

function Media.Air.MoistAir.dynamicViscosity

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
eta := Polynomials_Temp.evaluate({(-4.96717436974791E-011), 5.06626785714286E-008, 1.72937731092437E-005}, Cv.to_degC(state.T)); | eta := 1e-6*Polynomials_Temp.evaluateWithRange( {9.7391102886305869E-15,-3.1353724870333906E-11,4.3004876595642225E-08, -3.8228016291758240E-05,5.0427874367180762E-02,1.7239260139242528E+01}, Cv.to_degC(123.15), Cv.to_degC(1273.15), Cv.to_degC(state.T));

function Media.Air.MoistAir.thermalConductivity

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
lambda := Polynomials_Temp.evaluate({(-4.8737307422969E-008), 7.67803133753502E-005, 0.0241814385504202}, Cv.to_degC(state.T)); | lambda := 1e-3*Polynomials_Temp.evaluateWithRange( {6.5691470817717812E-15,-3.4025961923050509E-11,5.3279284846303157E-08, -4.5340839289219472E-05,7.6129675309037664E-02,2.4169481088097051E+01}, Cv.to_degC(123.15), Cv.to_degC(1273.15), Cv.to_degC(state.T));

package Media.IdealGases.Common.SingleGasNasa

Component | Version 3.2 | Version 3.2.1
fluidConstants | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.PartialMedium.FluidConstants
excludeEnthalpyOfFormation | Present |
referenceChoice | Present |
h_offset | Present |

record Media.IdealGases.Common.SingleGasNasa.ThermodynamicState

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

model Media.IdealGases.Common.SingleGasNasa.BaseProperties

Equations in Version 3.2 | Equations in Version 3.2.1
... R = data.R;
h = h_T(data, T, excludeEnthalpyOfFormation, referenceChoice, h_offset); | h = Modelica.Media.IdealGases.Common.Functions.h_T( data, T, Modelica.Media.IdealGases.Common.Functions.excludeEnthalpyOfFormation, Modelica.Media.IdealGases.Common.Functions.referenceChoice, Modelica.Media.IdealGases.Common.Functions.h_offset);
u = h - R*T; ...

function Media.IdealGases.Common.SingleGasNasa.setState_pTX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.IdealGases.Common.SingleGasNasa.setState_phX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.IdealGases.Common.SingleGasNasa.setState_psX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.IdealGases.Common.SingleGasNasa.setState_dTX

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.IdealGases.Common.SingleGasNasa.specificEnthalpy

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
h := h_T(data,state.T); | h := Modelica.Media.IdealGases.Common.Functions.h_T( data,state.T);

function Media.IdealGases.Common.SingleGasNasa.specificInternalEnergy

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
u := h_T(data,state.T) - data.R*state.T; | u := Modelica.Media.IdealGases.Common.Functions.h_T( data,state.T) - data.R*state.T;

function Media.IdealGases.Common.SingleGasNasa.specificEntropy

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
s := s0_T(data, state.T) - data.R*Modelica_3_2.Math.log(state.p/ reference_p); | s := Modelica.Media.IdealGases.Common.Functions.s0_T( data, state.T) - data.R*Modelica.Math.log(state.p/reference_p);

function Media.IdealGases.Common.SingleGasNasa.specificGibbsEnergy

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
g := h_T(data,state.T) - state.T*specificEntropy(state); | g := Modelica.Media.IdealGases.Common.Functions.h_T( data,state.T) - state.T*specificEntropy(state);

function Media.IdealGases.Common.SingleGasNasa.specificHelmholtzEnergy

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
f := h_T(data,state.T) - data.R*state.T - state.T*specificEntropy(state); | f := Modelica.Media.IdealGases.Common.Functions.h_T( data,state.T) - data.R*state.T - state.T*specificEntropy(state);

function Media.IdealGases.Common.SingleGasNasa.specificHeatCapacityCp

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
cp := cp_T(data, state.T); | cp := Modelica.Media.IdealGases.Common.Functions.cp_T( data, state.T);

function Media.IdealGases.Common.SingleGasNasa.specificHeatCapacityCv

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
cv := cp_T(data, state.T) - data.R; | cv := Modelica.Media.IdealGases.Common.Functions.cp_T( data, state.T) - data.R;

function Media.IdealGases.Common.SingleGasNasa.velocityOfSound

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
a := sqrt(max(0,data.R*state.T*cp_T(data, state.T)/specificHeatCapacityCv(state))); | a := sqrt(max(0,data.R*state.T*Modelica.Media.IdealGases.Common.Functions.cp_T( data, state.T)/specificHeatCapacityCv(state)));

function Media.IdealGases.Common.SingleGasNasa.isentropicEnthalpyApproximation

Component | Version 3.2 | Version 3.2.1
exclEnthForm | =excludeEnthalpyOfFormation | =Functions.excludeEnthalpyOfFormation
refChoice | Media.Interfaces.PartialMedium.Choices.ReferenceEnthalpy | Media.Interfaces.Choices.ReferenceEnthalpy
h_off | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
gamma | Media.Interfaces.PartialMedium.IsentropicExponent | Media.Interfaces.Types.IsentropicExponent

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
h_is := h_T(data,state.T,exclEnthForm,refChoice,h_off) + gamma/(gamma - 1.0)*state.p/density(state)*((p2/state.p)^((gamma - 1)/gamma) - 1.0); | h_is := Modelica.Media.IdealGases.Common.Functions.h_T( data,state.T,exclEnthForm,refChoice,h_off) + gamma/(gamma - 1.0)*state.p/density(state)*((p2/state.p)^((gamma - 1)/gamma) - 1.0);

function Media.IdealGases.Common.SingleGasNasa.isentropicEnthalpy

Component | Version 3.2 | Version 3.2.1
exclEnthForm | =excludeEnthalpyOfFormation | =Functions.excludeEnthalpyOfFormation
refChoice | Media.Interfaces.PartialMedium.Choices.ReferenceEnthalpy | Media.Interfaces.Choices.ReferenceEnthalpy
h_off | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.IdealGases.Common.SingleGasNasa.dynamicViscosityLowPressure

Component | Version 3.2 | Version 3.2.1
mu | Media.Interfaces.PartialMedium.DipoleMoment | Media.Interfaces.Types.DipoleMoment

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
Tstar := 1.2593*T/Tc; | eta := Functions.dynamicViscosityLowPressure(T,Tc,M,Vc,w,mu,k);
Ov = 1.16145*Tstar^(-0.14874) + 0.52487*exp(-0.7732*Tstar) + 2.16178*exp(-2.43787 *Tstar); |
eta = Const1_SI*Fc*sqrt(M*T)/(Vc^(2/3)*Ov); |

function Media.IdealGases.Common.SingleGasNasa.dynamicViscosity

Equations in Version 3.2 | Equations in Version 3.2.1
... assert(fluidConstants[1].hasDipoleMoment, "Failed to compute dynamicViscosity: For the species \"" + mediumName + "\" no critical data is available.");
eta = dynamicViscosityLowPressure(state.T, fluidConstants[1].criticalTemperature, fluidConstants[1].molarMass, fluidConstants[1].criticalMolarVolume, fluidConstants[1].acentricFactor, fluidConstants[1].dipoleMoment); | eta = Modelica.Media.IdealGases.Common.Functions.dynamicViscosityLowPressure( state.T, fluidConstants[1].criticalTemperature, fluidConstants[1].molarMass, fluidConstants[1].criticalMolarVolume, fluidConstants[1].acentricFactor, fluidConstants[1].dipoleMoment);

function Media.IdealGases.Common.SingleGasNasa.thermalConductivityEstimate

Component | Version 3.2 | Version 3.2.1
Cp | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
eta | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
lambda | Media.Interfaces.PartialMedium.ThermalConductivity | Media.Interfaces.Types.ThermalConductivity
data |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
lambda := if method == 1 then eta*(Cp - data.R + (9/4)*data.R) else eta*(Cp - data.R)*(1.32 + 1.77/((Cp/Modelica_3_2.Constants.R) - 1.0)); | lambda := Functions.thermalConductivityEstimate(Cp,eta,method,data);

function Media.IdealGases.Common.SingleGasNasa.thermalConductivity

Component | Version 3.2 | Version 3.2.1
method | =1 | =Functions.methodForThermalConductivity

Equations in Version 3.2 | Equations in Version 3.2.1
... assert(fluidConstants[1].hasCriticalData, "Failed to compute thermalConductivity: For the species \"" + mediumName + "\" no critical data is available.");
lambda = thermalConductivityEstimate(specificHeatCapacityCp(state), dynamicViscosity(state), method=method); | lambda = Modelica.Media.IdealGases.Common.Functions.thermalConductivityEstimate( specificHeatCapacityCp(state), dynamicViscosity(state), method=method,data=data);

function Media.IdealGases.Common.SingleGasNasa.T_h

Component | Version 3.2 | Version 3.2.1
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.IdealGases.Common.SingleGasNasa.T_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

package Media.IdealGases.Common.MixtureGasNasa

Component | Version 3.2 | Version 3.2.1
referenceChoice | Media.Interfaces.PartialMedium.Choices.ReferenceEnthalpy | Media.Interfaces.Choices.ReferenceEnthalpy
h_offset | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
MMX | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass
methodForThermalConductivity |  | Present

function Media.IdealGases.Common.MixtureGasNasa.setState_pTX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
state := if size(X,1) == nX then ThermodynamicState(p=p,T=T, X=X) else ThermodynamicState(p=p,T=T, X=cat(1,X,{1-sum(X)})); | state := if size(X,1) == 0 then ThermodynamicState(p=p,T=T,X=reference_X) else if size(X,1) == nX then ThermodynamicState(p=p,T=T, X=X) else ThermodynamicState(p=p,T=T, X=cat(1,X,{1-sum(X)}));

function Media.IdealGases.Common.MixtureGasNasa.setState_phX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
state := if size(X,1) == nX then ThermodynamicState(p=p,T=T_hX(h,X),X=X) else ThermodynamicState(p=p,T=T_hX(h,X), X=cat(1,X,{1-sum(X)})); | state := if size(X,1) == 0 then ThermodynamicState(p=p,T=T_hX(h,reference_X),X=reference_X) else if size(X,1) == nX then ThermodynamicState(p=p,T=T_hX(h,X),X=X) else ThermodynamicState(p=p,T=T_hX(h,X), X=cat(1,X,{1-sum(X)}));

function Media.IdealGases.Common.MixtureGasNasa.setState_psX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
state := if size(X,1) == nX then ThermodynamicState(p=p,T=T_psX(p,s,X),X=X) else ThermodynamicState(p=p,T=T_psX(p,s,X), X=cat(1,X,{1-sum(X)})); | state := if size(X,1) == 0 then ThermodynamicState(p=p,T=T_psX(p,s,reference_X),X=reference_X) else if size(X,1) == nX then ThermodynamicState(p=p,T=T_psX(p,s,X),X=X) else ThermodynamicState(p=p,T=T_psX(p,s,X), X=cat(1,X,{1-sum(X)}));

function Media.IdealGases.Common.MixtureGasNasa.setState_dTX

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
state := if size(X,1) == nX then ThermodynamicState(p=d*(data.R*X)*T,T=T,X=X) else ThermodynamicState(p=d*(data.R*cat(1,X,{1-sum(X)}))*T,T=T, X=cat(1,X,{1-sum(X)})); | state := if size(X,1) == 0 then ThermodynamicState(p=d*(data.R*reference_X)*T,T=T,X=reference_X) else if size(X,1) == nX then ThermodynamicState(p=d*(data.R*X)*T,T=T,X=X) else ThermodynamicState(p=d*(data.R*cat(1,X,{1-sum(X)}))*T,T=T, X=cat(1,X,{1-sum(X)}));

function Media.IdealGases.Common.MixtureGasNasa.h_TX

Component | Version 3.2 | Version 3.2.1
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
refChoice | Media.Interfaces.PartialMedium.Choices.ReferenceEnthalpy | Media.Interfaces.Choices.ReferenceEnthalpy

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
h :=(if fixedX then reference_X else X)* {SingleGasNasa.h_T(data[i], T, exclEnthForm, refChoice, h_off) for i in 1:nX}; | h :=(if fixedX then reference_X else X)* {Modelica.Media.IdealGases.Common.Functions.h_T( data[i], T, exclEnthForm, refChoice, h_off) for i in 1:nX};

function Media.IdealGases.Common.MixtureGasNasa.h_TX_der

Component | Version 3.2 | Version 3.2.1
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
refChoice | Media.Interfaces.PartialMedium.Choices.ReferenceEnthalpy | Media.Interfaces.Choices.ReferenceEnthalpy

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
h_der := if fixedX then dT*sum((SingleGasNasa.cp_T(data[i], T)*reference_X[i]) for i in 1:nX) else dT*sum((SingleGasNasa.cp_T(data[i], T)*X[i]) for i in 1:nX)+ sum((SingleGasNasa.h_T(data[i], T)*dX[i]) for i in 1:nX); | h_der := if fixedX then dT*sum((Modelica.Media.IdealGases.Common.Functions.cp_T( data[i], T)*reference_X[i]) for i in 1:nX) else dT*sum((Modelica.Media.IdealGases.Common.Functions.cp_T( data[i], T)*X[i]) for i in 1:nX)+ sum((Modelica.Media.IdealGases.Common.Functions.h_T( data[i], T)*dX[i]) for i in 1:nX);

function Media.IdealGases.Common.MixtureGasNasa.specificHeatCapacityCp

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
cp := {SingleGasNasa.cp_T(data[i], state.T) for i in 1:nX}*state.X; | cp := {Modelica.Media.IdealGases.Common.Functions.cp_T( data[i], state.T) for i in 1:nX}*state.X;

function Media.IdealGases.Common.MixtureGasNasa.specificHeatCapacityCv

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
cv := {SingleGasNasa.cp_T(data[i], state.T) for i in 1:nX}*state.X -data.R*state.X; | cv := {Modelica.Media.IdealGases.Common.Functions.cp_T( data[i], state.T) for i in 1:nX}*state.X -data.R*state.X;

function Media.IdealGases.Common.MixtureGasNasa.s_TX

Component | Version 3.2 | Version 3.2.1
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
s := sum(SingleGasNasa.s0_T(data[i], T)*X[i] for i in 1:size(X,1)); | s := sum(Modelica.Media.IdealGases.Common.Functions.s0_T( data[i], T)*X[i] for i in 1:size(X,1));

function Media.IdealGases.Common.MixtureGasNasa.isentropicEnthalpyApproximation

Component | Version 3.2 | Version 3.2.1
p2 | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h_is | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
h_component | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
gamma | Media.Interfaces.PartialMedium.IsentropicExponent | Media.Interfaces.Types.IsentropicExponent
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

Equations in Version 3.2 | Equations in Version 3.2.1
... X := if reducedX then cat(1,state.X,{1-sum(state.X)}) else state.X;
h_component = {SingleGasNasa.h_T(data[i], state.T, excludeEnthalpyOfFormation, referenceChoice, h_offset) for i in 1:nX}; | h_component = {Modelica.Media.IdealGases.Common.Functions.h_T( data[i], state.T, excludeEnthalpyOfFormation, referenceChoice, h_offset) for i in 1:nX};
h = h_component*X; ...

function Media.IdealGases.Common.MixtureGasNasa.gasMixtureViscosity

Component | Version 3.2 | Version 3.2.1
yi | Media.Interfaces.PartialMedium.MoleFraction | Media.Interfaces.Types.MoleFraction
M | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass
eta | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
etam | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity

function Media.IdealGases.Common.MixtureGasNasa.dynamicViscosity

Component | Version 3.2 | Version 3.2.1
etaX | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity

Equations in Version 3.2 | Equations in Version 3.2.1
... for i in 1:nX loop
etaX[i] = SingleGasNasa.dynamicViscosityLowPressure(state.T, fluidConstants[i].criticalTemperature, fluidConstants[i].molarMass, fluidConstants[i].criticalMolarVolume, fluidConstants[i].acentricFactor, fluidConstants[i].dipoleMoment); | etaX[i] = Modelica.Media.IdealGases.Common.Functions.dynamicViscosityLowPressure( state.T, fluidConstants[i].criticalTemperature, fluidConstants[i].molarMass, fluidConstants[i].criticalMolarVolume, fluidConstants[i].acentricFactor, fluidConstants[i].dipoleMoment);
end for; ...

function Media.IdealGases.Common.MixtureGasNasa.mixtureViscosityChung

Component | Version 3.2 | Version 3.2.1
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
Tc | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
Vcrit | Media.Interfaces.PartialMedium.MolarVolume | Media.Interfaces.Types.MolarVolume
MolecularWeights | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass
y | Media.Interfaces.PartialMedium.MoleFraction | Media.Interfaces.Types.MoleFraction
etaMixture | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity

function Media.IdealGases.Common.MixtureGasNasa.lowPressureThermalConductivity

Component | Version 3.2 | Version 3.2.1
y | Media.Interfaces.PartialMedium.MoleFraction | Media.Interfaces.Types.MoleFraction
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
Tc | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
Pc | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
M | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass
lambda | Media.Interfaces.PartialMedium.ThermalConductivity | Media.Interfaces.Types.ThermalConductivity
lambdam | Media.Interfaces.PartialMedium.ThermalConductivity | Media.Interfaces.Types.ThermalConductivity
gamma | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass

function Media.IdealGases.Common.MixtureGasNasa.thermalConductivity

Component | Version 3.2 | Version 3.2.1
method | =1 | =methodForThermalConductivity
lambdaX | Media.Interfaces.PartialMedium.ThermalConductivity | Media.Interfaces.Types.ThermalConductivity
eta | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
cp | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity

Equations in Version 3.2 | Equations in Version 3.2.1
... assert(fluidConstants[i].hasCriticalData, "Critical data for "+ fluidConstants[i].chemicalFormula + " not known. Can not compute thermal conductivity.");
eta[i] = SingleGasNasa.dynamicViscosityLowPressure(state.T, fluidConstants[i].criticalTemperature, fluidConstants[i].molarMass, fluidConstants[i].criticalMolarVolume, fluidConstants[i].acentricFactor, fluidConstants[i].dipoleMoment); | eta[i] = Modelica.Media.IdealGases.Common.Functions.dynamicViscosityLowPressure( state.T, fluidConstants[i].criticalTemperature, fluidConstants[i].molarMass, fluidConstants[i].criticalMolarVolume, fluidConstants[i].acentricFactor, fluidConstants[i].dipoleMoment);
cp[i] = SingleGasNasa.cp_T(data[i],state.T); | cp[i] = Modelica.Media.IdealGases.Common.Functions.cp_T( data[i],state.T);
lambdaX[i] = SingleGasNasa.thermalConductivityEstimate(Cp=cp[i], eta= eta[i], method=method); | lambdaX[i] = Modelica.Media.IdealGases.Common.Functions.thermalConductivityEstimate( Cp=cp[i], eta= eta[i], method=method,data=data[i]);
end for; ...

function Media.IdealGases.Common.MixtureGasNasa.density_derX

Component | Version 3.2 | Version 3.2.1
dddX | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.IdealGases.Common.MixtureGasNasa.T_hX

Component | Version 3.2 | Version 3.2.1
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
refChoice | Media.Interfaces.PartialMedium.Choices.ReferenceEnthalpy | Media.Interfaces.Choices.ReferenceEnthalpy
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
Xfull | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

function Media.IdealGases.Common.MixtureGasNasa.T_psX

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
X | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
Xfull | Media.Interfaces.PartialMedium.MassFraction | Media.Interfaces.Types.MassFraction

package Media.IdealGases.Common.FluidData

Component | Version 3.2 | Version 3.2.1
N2 | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
O2 | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
CL2 | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
F2 | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
CO2 | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
CO | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
H2 | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
H2O | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
N2O | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
NO | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
NO2 | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
NH3 | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
SO2 | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
SO3 | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
Ar | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
He | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
Ne | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
CH4 | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C2H6 | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C3H8 | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C4H10_n_butane | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C5H12_n_pentane | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C6H14_n_hexane | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C7H16_n_heptane | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C2H4 | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C3H6_propylene | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C4H8_1_butene | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C5H10_1_pentene | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C6H12_1_hexene | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C7H14_1_heptene | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C2H2_vinylidene | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C6H6 | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C8H18_n_octane | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C8H10_ethylbenz | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
CH3OH | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C2H5OH | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C3H7OH | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants
C4H9OH | Media.IdealGases.Common.SingleGasNasa.FluidConstants | Media.Interfaces.Types.IdealGas.FluidConstants

model Media.Incompressible.Examples.TestGlycol

Component | Version 3.2 | Version 3.2.1
eta | Media.Interfaces.PartialMedium.DynamicViscosity | Media.Interfaces.Types.DynamicViscosity
lambda | Media.Interfaces.PartialMedium.ThermalConductivity | Media.Interfaces.Types.ThermalConductivity
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
cv | Media.Interfaces.PartialMedium.SpecificHeatCapacity | Media.Interfaces.Types.SpecificHeatCapacity
u |  | Present
h |  | Present
d |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
medium.p = 1e5; | medium.p = 1.013e5;
medium.T = Medium.T_min + time/timeUnit*Ta;

package Media.Incompressible.TableBased

Component | Version 3.2 | Version 3.2.1
T_min | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
T_max | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
T0 | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
h0 | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
s0 | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
MM_const | Media.Interfaces.PartialMedium.MolarMass | Media.Interfaces.Types.MolarMass
invTK | =if size(tableViscosity, 1) > 0 then invertTemp(tableViscosity[:, 1], TinK) else fill(0, 0) | =if size(tableViscosity, 1) > 0 then (if TinK then 1 ./ tableViscosity[:, 1] else 1 ./ Cv.from_degC(tableViscosity[:, 1])) else fill(0, neta)
poly_rho | =if hasDensity then Poly.fitting(tableDensity[:, 1], tableDensity[:, 2], npol) else zeros(npol + 1) | =if hasDensity then Poly.fitting(tableDensity[:, 1], tableDensity[:, 2], npolDensity) else zeros(npolDensity + 1)
poly_Cp | =if hasHeatCapacity then Poly.fitting(tableHeatCapacity[:, 1], tableHeatCapacity[:, 2], npol) else zeros(npol + 1) | =if hasHeatCapacity then Poly.fitting(tableHeatCapacity[:, 1], tableHeatCapacity[:, 2], npolHeatCapacity) else zeros(npolHeatCapacity + 1)
poly_eta | =if hasViscosity then Poly.fitting(invTK, Math.log(tableViscosity[:, 2]), npol) else zeros(npol + 1) | =if hasViscosity then Poly.fitting(invTK, Math.log(tableViscosity[:, 2]), npolViscosity) else zeros(npolViscosity + 1)
poly_pVap | =if hasVaporPressure then Poly.fitting(tableVaporPressure[:, 1], tableVaporPressure[:, 2], npol) else zeros(npol + 1) | =if hasVaporPressure then Poly.fitting(tableVaporPressure[:, 1], tableVaporPressure[:, 2], npolVaporPressure) else zeros(npolVaporPressure + 1)
poly_lam | =if size(tableConductivity, 1) > 0 then Poly.fitting(tableConductivity[:, 1], tableConductivity[:, 2], npol) else zeros(npol + 1) | =if size(tableConductivity, 1) > 0 then Poly.fitting(tableConductivity[:, 1], tableConductivity[:, 2], npolConductivity) else zeros(npolConductivity + 1)
npolDensity |  | Present
npolHeatCapacity |  | Present
npolViscosity |  | Present
npolVaporPressure |  | Present
npolConductivity |  | Present

model Media.Incompressible.TableBased.BaseProperties

Equations in Version 3.2 | Equations in Version 3.2.1
... h = if enthalpyOfT then h_T(T) else h_pT(p,T,densityOfT);
if singleState then | u = h - (if singleState then reference_p/d else state.p/d);
u = h_T(T) - reference_p/d; else u = h - p/d; end if; |
d = Poly.evaluate(poly_rho,if TinK then T else T_degC); ...

function Media.Incompressible.TableBased.setState_dTX

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(false, "for incompressible media with d(T) only, state can not be set from density and temperature"); | assert(false, "For incompressible media with d(T) only, state can not be set from density and temperature");

function Media.Incompressible.TableBased.setState_pT

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Incompressible.TableBased.setState_ph

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Incompressible.TableBased.setState_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy

function Media.Incompressible.TableBased.s_T

Component | Version 3.2 | Version 3.2.1
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy

function Media.Incompressible.TableBased.density_T

Component | Version 3.2 | Version 3.2.1
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Incompressible.TableBased.specificInternalEnergy

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
u := if enthalpyOfT then h_T(state.T) else h_pT(state.p,state.T) - (if singleState then reference_p/density(state) else state.p/density(state)); | u := (if enthalpyOfT then h_T(state.T) else h_pT(state.p,state.T)) - (if singleState then reference_p else state.p)/density(state);

function Media.Incompressible.TableBased.T_ph

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Incompressible.TableBased.T_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

package Media.Water

Component | Version 3.2 | Version 3.2.1
waterConstants | Media.Interfaces.PartialTwoPhaseMedium.FluidConstants | Media.Interfaces.Types.TwoPhase.FluidConstants
simpleWaterConstants | Present |

package Media.Water.ConstantPropertyLiquidWater

Component | Version 3.2 | Version 3.2.1
simpleWaterConstants |  | Present

record Media.Water.WaterIF97_base.ThermodynamicState

Component | Version 3.2 | Version 3.2.1
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

model Media.Water.WaterIF97_base.BaseProperties

Component | Version 3.2 | Version 3.2.1
sat | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
... assert(not ((d < bubbleDensity(sat) and d > dewDensity(sat)) and T < &nbspfluidConstants[1].criticalTemperature), "With onePhase=true this model may only be called with one-phase states d > dl or d < dv!" + "(d = " + String(d) + ", T = " + String(T) + ")");
| end if; end if;
else
assert(true,"no events for pT-model"); end if; end if; else |
phase = 0; ...

function Media.Water.WaterIF97_base.density_ph

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Water.WaterIF97_base.temperature_ph

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Water.WaterIF97_base.temperature_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Water.WaterIF97_base.density_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Water.WaterIF97_base.pressure_dT

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

function Media.Water.WaterIF97_base.specificEnthalpy_dT

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Water.WaterIF97_base.specificEnthalpy_pT

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Water.WaterIF97_base.specificEnthalpy_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Water.WaterIF97_base.density_pT

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Water.WaterIF97_base.specificEntropy

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if dT_explicit then | s := if dT_explicit then IF97_Utilities.s_dT( state.d, state.T, state.phase) else if pT_explicit then IF97_Utilities.s_pT(state.p, state.T) else IF97_Utilities.s_ph( state.p, state.h, state.phase);
s = IF97_Utilities.s_dT(state.d, state.T, state.phase); |
elseif pT_explicit then s = IF97_Utilities.s_pT(state.p, state.T); else s = IF97_Utilities.s_ph(state.p, state.h, state.phase); end if; |

function Media.Water.WaterIF97_base.specificHeatCapacityCp

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if dT_explicit then | cp := if dT_explicit then IF97_Utilities.cp_dT( state.d, state.T, state.phase) else if pT_explicit then IF97_Utilities.cp_pT(state.p, state.T) else IF97_Utilities.cp_ph( state.p, state.h, state.phase);
cp = IF97_Utilities.cp_dT(state.d, state.T, state.phase); |
elseif pT_explicit then cp = IF97_Utilities.cp_pT(state.p, state.T); else cp = IF97_Utilities.cp_ph(state.p, state.h, state.phase); end if; |

function Media.Water.WaterIF97_base.specificHeatCapacityCv

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if dT_explicit then | cv := if dT_explicit then IF97_Utilities.cv_dT( state.d, state.T, state.phase) else if pT_explicit then IF97_Utilities.cv_pT(state.p, state.T) else IF97_Utilities.cv_ph( state.p, state.h, state.phase);
cv = IF97_Utilities.cv_dT(state.d, state.T, state.phase); |
elseif pT_explicit then cv = IF97_Utilities.cv_pT(state.p, state.T); else cv = IF97_Utilities.cv_ph(state.p, state.h, state.phase); end if; |

function Media.Water.WaterIF97_base.isentropicExponent

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if dT_explicit then | gamma := if dT_explicit then IF97_Utilities.isentropicExponent_dT( state.d, state.T, state.phase) else if pT_explicit then IF97_Utilities.isentropicExponent_pT(state.p, state.T) else IF97_Utilities.isentropicExponent_ph( state.p, state.h, state.phase);
gamma = IF97_Utilities.isentropicExponent_dT(state.d, state.T, state. phase); |
elseif pT_explicit then gamma = IF97_Utilities.isentropicExponent_pT(state.p, state.T); else gamma = IF97_Utilities.isentropicExponent_ph(state.p, state.h, state. &nbspphase); end if; |

function Media.Water.WaterIF97_base.isothermalCompressibility

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if dT_explicit then | kappa := if dT_explicit then IF97_Utilities.kappa_dT( state.d, state.T, state.phase) else if pT_explicit then IF97_Utilities.kappa_pT(state.p, state.T) else IF97_Utilities.kappa_ph( state.p, state.h, state.phase);
kappa = IF97_Utilities.kappa_dT(state.d, state.T, state.phase); |
elseif pT_explicit then kappa = IF97_Utilities.kappa_pT(state.p, state.T); else kappa = IF97_Utilities.kappa_ph(state.p, state.h, state.phase); end if; |

function Media.Water.WaterIF97_base.isobaricExpansionCoefficient

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if dT_explicit then | beta := if dT_explicit then IF97_Utilities.beta_dT( state.d, state.T, state.phase) else if pT_explicit then IF97_Utilities.beta_pT(state.p, state.T) else IF97_Utilities.beta_ph( state.p, state.h, state.phase);
beta = IF97_Utilities.beta_dT(state.d, state.T, state.phase); |
elseif pT_explicit then beta = IF97_Utilities.beta_pT(state.p, state.T); else beta = IF97_Utilities.beta_ph(state.p, state.h, state.phase); end if; |

function Media.Water.WaterIF97_base.velocityOfSound

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if dT_explicit then | a := if dT_explicit then IF97_Utilities.velocityOfSound_dT( state.d, state.T, state.phase) else if pT_explicit then IF97_Utilities.velocityOfSound_pT(state.p, state.T) else IF97_Utilities.velocityOfSound_ph( state.p, state.h, state.phase);
a = IF97_Utilities.velocityOfSound_dT(state.d, state.T, state.phase); |
elseif pT_explicit then a = IF97_Utilities.velocityOfSound_pT(state.p, state.T); else a = IF97_Utilities.velocityOfSound_ph(state.p, state.h, state.phase); end if; |

function Media.Water.WaterIF97_base.bubbleDensity

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if ph_explicit or pT_explicit then | dl := if ph_explicit then IF97_Utilities.BaseIF97.Regions.rhol_p(sat.psat) else IF97_Utilities.BaseIF97.Regions.rhol_T(sat.Tsat);
dl = IF97_Utilities.BaseIF97.Regions.rhol_p(sat.psat); |
else dl = IF97_Utilities.BaseIF97.Regions.rhol_T(sat.Tsat); end if; |

function Media.Water.WaterIF97_base.dewDensity

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if ph_explicit or pT_explicit then | dv := if ph_explicit or pT_explicit then IF97_Utilities.BaseIF97.Regions.rhov_p(sat.psat) else IF97_Utilities.BaseIF97.Regions.rhov_T(sat.Tsat);
dv = IF97_Utilities.BaseIF97.Regions.rhov_p(sat.psat); |
else dv = IF97_Utilities.BaseIF97.Regions.rhov_T(sat.Tsat); end if; |

record Media.Water.WaterIF97_fixedregion.ThermodynamicState

Component | Version 3.2 | Version 3.2.1
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

model Media.Water.WaterIF97_fixedregion.BaseProperties

Component | Version 3.2 | Version 3.2.1
sat | Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Media.Interfaces.Types.SaturationProperties

function Media.Water.WaterIF97_fixedregion.density_ph

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Water.WaterIF97_fixedregion.temperature_ph

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Water.WaterIF97_fixedregion.temperature_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature

function Media.Water.WaterIF97_fixedregion.density_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Water.WaterIF97_fixedregion.pressure_dT

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure

function Media.Water.WaterIF97_fixedregion.specificEnthalpy_dT

Component | Version 3.2 | Version 3.2.1
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Water.WaterIF97_fixedregion.specificEnthalpy_pT

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Water.WaterIF97_fixedregion.specificEnthalpy_ps

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
s | Media.Interfaces.PartialMedium.SpecificEntropy | Media.Interfaces.Types.SpecificEntropy
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
h | Media.Interfaces.PartialMedium.SpecificEnthalpy | Media.Interfaces.Types.SpecificEnthalpy

function Media.Water.WaterIF97_fixedregion.density_pT

Component | Version 3.2 | Version 3.2.1
p | Media.Interfaces.PartialMedium.AbsolutePressure | Media.Interfaces.Types.AbsolutePressure
T | Media.Interfaces.PartialMedium.Temperature | Media.Interfaces.Types.Temperature
phase | Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Media.Interfaces.Types.FixedPhase
d | Media.Interfaces.PartialMedium.Density | Media.Interfaces.Types.Density

function Media.Water.WaterIF97_fixedregion.setDewState

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
state.phase := phase; | state := ThermodynamicState( phase=phase, p=sat.psat, T=sat.Tsat, h=dewEnthalpy(sat), d=dewDensity(sat));
state.p = sat.psat; |
state.T = sat.Tsat; state.h = dewEnthalpy(sat); state.d = dewDensity(sat); |

function Media.Water.WaterIF97_fixedregion.setBubbleState

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
state.phase := phase; | state := ThermodynamicState( phase=phase, p=sat.psat, T=sat.Tsat, h=bubbleEnthalpy(sat), d=bubbleDensity(sat));
state.p = sat.psat; |
state.T = sat.Tsat; state.h = bubbleEnthalpy(sat); state.d = bubbleDensity(sat); |

function Media.Water.WaterIF97_fixedregion.specificEntropy

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if dT_explicit then | s := if dT_explicit then IF97_Utilities.s_dT( state.d, state.T, state.phase, Region) else if pT_explicit then IF97_Utilities.s_pT( state.p, state.T, Region) else IF97_Utilities.s_ph( state.p, state.h, state.phase, Region);
s = IF97_Utilities.s_dT(state.d, state.T, state.phase, Region); |
elseif pT_explicit then s = IF97_Utilities.s_pT(state.p, state.T, Region); else s = IF97_Utilities.s_ph(state.p, state.h, state.phase, Region); end if; |

function Media.Water.WaterIF97_fixedregion.specificHeatCapacityCp

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if dT_explicit then | cp := if dT_explicit then IF97_Utilities.cp_dT( state.d, state.T, Region) else if pT_explicit then IF97_Utilities.cp_pT( state.p, state.T, Region) else IF97_Utilities.cp_ph( state.p, state.h, Region);
cp = IF97_Utilities.cp_dT(state.d, state.T, Region); |
elseif pT_explicit then cp = IF97_Utilities.cp_pT(state.p, state.T, Region); else cp = IF97_Utilities.cp_ph(state.p, state.h, Region); end if; |

function Media.Water.WaterIF97_fixedregion.specificHeatCapacityCv

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if dT_explicit then | cv := if dT_explicit then IF97_Utilities.cv_dT( state.d, state.T, state.phase, Region) else if pT_explicit then IF97_Utilities.cv_pT( state.p, state.T, Region) else IF97_Utilities.cv_ph( state.p, state.h, state.phase, Region);
cv = IF97_Utilities.cv_dT(state.d, state.T, state.phase, Region); |
elseif pT_explicit then cv = IF97_Utilities.cv_pT(state.p, state.T, Region); else cv = IF97_Utilities.cv_ph(state.p, state.h, state.phase, Region); end if; |

function Media.Water.WaterIF97_fixedregion.isentropicExponent

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if dT_explicit then | gamma := if dT_explicit then IF97_Utilities.isentropicExponent_dT( state.d, state.T, state.phase, Region) else if pT_explicit then IF97_Utilities.isentropicExponent_pT( state.p, state.T, Region) else IF97_Utilities.isentropicExponent_ph( state.p, state.h, state.phase, Region);
gamma = IF97_Utilities.isentropicExponent_dT(state.d, state.T, state.phase, Region); |
elseif pT_explicit then gamma = IF97_Utilities.isentropicExponent_pT(state.p, state.T, Region); else gamma = IF97_Utilities.isentropicExponent_ph(state.p, state.h, &nbspstate.phase, Region); end if; |

function Media.Water.WaterIF97_fixedregion.isothermalCompressibility

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if dT_explicit then | kappa := if dT_explicit then IF97_Utilities.kappa_dT( state.d, state.T, state.phase, Region) else if pT_explicit then IF97_Utilities.kappa_pT( state.p, state.T, Region) else IF97_Utilities.kappa_ph( state.p, state.h, state.phase, Region);
kappa = IF97_Utilities.kappa_dT(state.d, state.T, state.phase, Region); |
elseif pT_explicit then kappa = IF97_Utilities.kappa_pT(state.p, state.T, Region); else kappa = IF97_Utilities.kappa_ph(state.p, state.h, state.phase, Region); end if; |

function Media.Water.WaterIF97_fixedregion.isobaricExpansionCoefficient

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if dT_explicit then | beta := if dT_explicit then IF97_Utilities.beta_dT( state.d, state.T, state.phase, Region) else if pT_explicit then IF97_Utilities.beta_pT( state.p, state.T, Region) else IF97_Utilities.beta_ph( state.p, state.h, state.phase, Region);
beta = IF97_Utilities.beta_dT(state.d, state.T, state.phase, Region); |
elseif pT_explicit then beta = IF97_Utilities.beta_pT(state.p, state.T, Region); else beta = IF97_Utilities.beta_ph(state.p, state.h, state.phase, Region); end if; |

function Media.Water.WaterIF97_fixedregion.velocityOfSound

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if dT_explicit then | a := if dT_explicit then IF97_Utilities.velocityOfSound_dT( state.d, state.T, state.phase, Region) else if pT_explicit then IF97_Utilities.velocityOfSound_pT( state.p, state.T, Region) else IF97_Utilities.velocityOfSound_ph( state.p, state.h, state.phase, Region);
a = IF97_Utilities.velocityOfSound_dT(state.d, state.T, state.phase, Region); |
elseif pT_explicit then a = IF97_Utilities.velocityOfSound_pT(state.p, state.T, Region); else a = IF97_Utilities.velocityOfSound_ph(state.p, state.h, state.phase, &nbspRegion); end if; |

function Media.Water.WaterIF97_fixedregion.bubbleDensity

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if ph_explicit or pT_explicit then | dl := if ph_explicit or pT_explicit then IF97_Utilities.BaseIF97.Regions.rhol_p(sat.psat) else IF97_Utilities.BaseIF97.Regions.rhol_T(sat.Tsat);
dl = IF97_Utilities.BaseIF97.Regions.rhol_p(sat.psat); |
else dl = IF97_Utilities.BaseIF97.Regions.rhol_T(sat.Tsat); end if; |

function Media.Water.WaterIF97_fixedregion.dewDensity

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if ph_explicit or pT_explicit then | dv := if ph_explicit or pT_explicit then IF97_Utilities.BaseIF97.Regions.rhov_p(sat.psat) else IF97_Utilities.BaseIF97.Regions.rhov_T(sat.Tsat);
dv = IF97_Utilities.BaseIF97.Regions.rhov_p(sat.psat); |
else dv = IF97_Utilities.BaseIF97.Regions.rhov_T(sat.Tsat); end if; |

function Media.Water.IF97_Utilities.BaseIF97.Regions.region_ps

Equations in Version 3.2 | Equations in Version 3.2.1
... if region < 0 then
assert(false, "region computation from p and s failed: function called outside the legal region"); | assert(false, "Region computation from p and s failed: function called outside the legal region");
else ...

function Media.Water.IF97_Utilities.BaseIF97.Regions.region_dT

Equations in Version 3.2 | Equations in Version 3.2.1
... else
assert(false,"out of valid region for IF97, pressure above region 5!"); | assert(false, "Out of valid region for IF97, pressure above region 5!");
end if; ...

function Media.Water.IF97_Utilities.BaseIF97.Basic.g2

Equations in Version 3.2 | Equations in Version 3.2.1
... g.R = data.RH2O;
assert(p > triple.ptriple, "IF97 medium function g2 called with too low pressure\n" + "p = " + String(p) + " Pa <= " + String(triple.ptriple) + " Pa (triple point pressure)"); | assert(p > 0.0, "IF97 medium function g2 called with too low pressure\n" + "p = " + String(p) + " Pa <= 0.0 Pa");
assert(p <= 100.0e6, "IF97 medium function g2: the input pressure (= " + String(p) + " Pa) is higher than 100 Mpa"); ...

function Media.Water.IF97_Utilities.BaseIF97.Basic.g2metastable

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(p > triple.ptriple, "IF97 medium function g2metastable called with too low pressure\n" + "p = " + String(p) + " Pa <= " + String(triple.ptriple) + " Pa (triple point pressure)"); | assert(p > 0.0, "IF97 medium function g2metastable called with too low pressure\n" + "p = " + String(p) + " Pa <= 0.0 Pa");
assert(p <= 100.0e6, "IF97 medium function g2metastable: the input pressure (= " + String(p) + " Pa) is higher than 100 Mpa"); ...

function Media.Water.IF97_Utilities.BaseIF97.Basic.g5

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(p > triple.ptriple, "IF97 medium function g5 called with too low pressure\n" + "p = " + String(p) + " Pa <= " + String(triple.ptriple) + " Pa (triple point pressure)"); | assert(p > 0.0, "IF97 medium function g5 called with too low pressure\n" + "p = " + String(p) + " Pa <= 0.0 Pa");
assert(p <= data.PLIMIT5, "IF97 medium function g5: input pressure (= " + String(p) + " Pa) is higher than 10 Mpa in region 5"); ...

function Media.Water.IF97_Utilities.BaseIF97.Basic.g2pitau

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(p > triple.ptriple, "IF97 medium function g2pitau called with too low pressure\n" + "p = " + String(p) + " Pa <= " + String(triple.ptriple) + " Pa (triple point pressure)"); | assert(p > 0.0, "IF97 medium function g2pitau called with too low pressure\n" + "p = " + String(p) + " Pa <= " + String(triple.ptriple) + " Pa (triple point pressure)");
assert(p <= 100.0e6, "IF97 medium function g2pitau: the input pressure (= " + String(p) + " Pa) is higher than 100 Mpa"); ...

function Media.Water.IF97_Utilities.BaseIF97.Basic.g5pitau

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(p > triple.ptriple, "IF97 medium function g5pitau called with too low pressure\n" + "p = " + String(p) + " Pa <= " + String(triple.ptriple) + " Pa (triple point pressure)"); | assert(p > 0.0, "IF97 medium function g5pitau called with too low pressure\n" + "p = " + String(p) + " Pa <= " + String(triple.ptriple) + " Pa (triple point pressure)");
assert(p <= data.PLIMIT5, "IF97 medium function g5pitau: input pressure (= " + String(p) + " Pa) is higher than 10 Mpa in region 5"); ...

function Media.Water.IF97_Utilities.BaseIF97.Transport.cond_dTp

Equations in Version 3.2 | Equations in Version 3.2.1
... else
assert(false, "the scientific method works only for temperature up to 623.15 K"); | assert(false, "The scientific method works only for temperature up to 623.15 K");
end if; ... else
assert(false, "thermal conductivity can only be called in the one-phase regions below 623.15 K\n" + "(p = " + String(p) + " Pa, T = " + String(T) + " K, region = " + String(region) + ")"); | assert(false, "Thermal conductivity can only be called in the one-phase regions below 623.15 K\n" + "(p = " + String(p) + " Pa, T = " + String(T) + " K, region = " + String(region) + ")");
end if; ...

function Media.Water.IF97_Utilities.BaseIF97.Inverses.dofpt3

Component | Version 3.2 | Version 3.2.1
damping |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
| found := false;
assert(p >= data.PLIMIT4A, "BaseIF97.dofpt3: function called outside of region 3! p too low\n" + "p = " + String(p) + " Pa < " + String(data.PLIMIT4A) + " Pa"); ... supercritical = p > data.PCRIT;
| damping = if supercritical then 1.0 else 1.0; Tmax = Regions.boundary23ofp(p); if supercritical then
dmax = dofp13(p);
dmin = dofp23(p);
Tmax = Regions.boundary23ofp(p); | dguess = dmax - (T - data.TLIMIT1)/(data.TLIMIT1 - Tmax)*(dmax - dmin);
if supercritical then dguess = dmin + (T - data.TLIMIT1)/(data.TLIMIT1 - Tmax)*(dmax - &nbspdmin); |
else ... if liquid then
dguess = 0.5*(Regions.rhol_p_R4b(p) + dmax); | dmax = dofp13(p);
| dmin = Regions.rhol_p_R4b(p); dguess = 1.1*Regions.rhol_T(T) "Guess: 10 percent more than on the phase boundary for same T";
else
dguess = 0.5*(Regions.rhov_p_R4b(p) + dmin); | dmax = Regions.rhov_p_R4b(p);
| dmin = dofp23(p); dguess = 0.9*Regions.rhov_T(T) "Guess: 10% less than on the phase boundary for same T";
end if; ... end if;
deld = dp/nDerivs.pd; | deld = dp/nDerivs.pd*damping;
d = d - deld; ... end if;
assert(error <> 1, "error in inverse function dofpt3: iteration failed"); | assert(error <> 1, "Error in inverse function dofpt3: iteration failed");

function Media.Water.IF97_Utilities.BaseIF97.Inverses.dtofph3

Component | Version 3.2 | Version 3.2.1
found |  | =false

Equations in Version 3.2 | Equations in Version 3.2.1
... subregion = if h < (Regions.hl_p(p) + 10.0) then 1 else &nbspif h > (Regions.hv_p(p) - 10.0) then 2 else 0;
assert(subregion <> 0,"inverse iteration of dt from ph called in 2 phase region: this can not work"); | assert(subregion <> 0, "Inverse iteration of dt from ph called in 2 phase region: this can not work");
else ... end if;
assert(error <> 1, "error in inverse function dtofph3: iteration failed"); | assert(error <> 1, "Error in inverse function dtofph3: iteration failed");

function Media.Water.IF97_Utilities.BaseIF97.Inverses.dtofps3

Equations in Version 3.2 | Equations in Version 3.2.1
... subregion = if s < (Regions.sl_p(p) + 10.0) then 1 else &nbspif s > (Regions.sv_p(p) - 10.0) then 2 else 0;
assert(subregion <> 0,"inverse iteration of dt from ps called in 2 phase region: this is illegal!"); | assert(subregion <> 0, "Inverse iteration of dt from ps called in 2 phase region: this is illegal!");
else ... end if;
assert(error <> 1, "error in inverse function dtofps3: iteration failed"); | assert(error <> 1, "Error in inverse function dtofps3: iteration failed");

function Media.Water.IF97_Utilities.BaseIF97.Inverses.dtofpsdt3

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
assert(error <> 1, "error in inverse function dtofpsdt3: iteration failed"); | assert(error <> 1, "Error in inverse function dtofpsdt3: iteration failed");

function Media.Water.IF97_Utilities.BaseIF97.Inverses.pofdt125

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
assert(error <> 1, "error in inverse function pofdt125: iteration failed"); | assert(error <> 1, "Error in inverse function pofdt125: iteration failed");

function Media.Water.IF97_Utilities.BaseIF97.Inverses.tofph5

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
assert(error <> 1, "error in inverse function tofph5: iteration failed"); | assert(error <> 1, "Error in inverse function tofph5: iteration failed");

function Media.Water.IF97_Utilities.BaseIF97.Inverses.tofps5

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
assert(error <> 1, "error in inverse function tofps5: iteration failed"); | assert(error <> 1, "Error in inverse function tofps5: iteration failed");

function Media.Water.IF97_Utilities.BaseIF97.Inverses.tofpst5

Equations in Version 3.2 | Equations in Version 3.2.1
... end if;
assert(error <> 1, "error in inverse function tofpst5: iteration failed"); | assert(error <> 1, "Error in inverse function tofpst5: iteration failed");

function Media.Water.IF97_Utilities.BaseIF97.extraDerivs_ph

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(phase ==1, "extraDerivs_ph: properties are not implemented in 2 phase region"); | assert(phase == 1, "ExtraDerivs_ph: properties are not implemented in 2 phase region");
region = Regions.region_ph(p=p,h= h,phase= phase); ...

function Media.Water.IF97_Utilities.waterBaseProp_ph

Equations in Version 3.2 | Equations in Version 3.2.1
... aux.pt = aux.R*aux.rho*f.delta*(f.fdelta - f.tau*f.fdeltatau);
aux.cv = abs(aux.R*(-f.tau*f.tau*f.ftautau)) "can be close to neg. infinity near critical point"; | aux.cv = abs(aux.R*(-f.tau*f.tau*f.ftautau)) "Can be close to neg. infinity near critical point";
aux.cp = (aux.rho*aux.rho*aux.pd*aux.cv + aux.T*aux.pt*aux.pt)/(aux.rho*aux.rho*aux.pd); ... (aux.T,error) = BaseIF97.Inverses.tofph5(p=aux.p,h= aux.h,reldh= 1.0e-7);
assert(error == 0, "error in inverse iteration of steam tables"); | assert(error == 0, "Error in inverse iteration of steam tables");
g = BaseIF97.Basic.g5(aux.p, aux.T); ... else
assert(false, "error in region computation of IF97 steam tables" + "(p = " + String(p) + ", h = " + String(h) + ")"); | assert(false, "Error in region computation of IF97 steam tables" + "(p = " + String(p) + ", h = " + String(h) + ")");
end if; ...

function Media.Water.IF97_Utilities.waterBaseProp_ps

Equations in Version 3.2 | Equations in Version 3.2.1
... aux.x = 0.0;
| aux.dpT = -aux.vt/aux.vp;
elseif (aux.region == 2) then ... aux.x = 1.0;
| aux.dpT = -aux.vt/aux.vp;
elseif (aux.region == 3) then ... aux.x = 0.0;
| aux.dpT = aux.pt;
elseif (aux.region == 4) then ... (aux.T,error) = BaseIF97.Inverses.tofps5(p=p,s=s,relds= 1.0e-7);
assert(error == 0, "error in inverse iteration of steam tables"); | assert(error == 0, "Error in inverse iteration of steam tables");
g = BaseIF97.Basic.g5(p, aux.T); ... aux.cv = aux.R*(-g.tau*g.tau*g.gtautau + ((g.gpi - g.tau*g.gtaupi)*(g.gpi - g.tau*g.gtaupi)/g.gpipi));
| aux.dpT = -aux.vt/aux.vp; aux.x = 1.0;
else
assert(false, "error in region computation of IF97 steam tables" + "(p = " + String(p) + ", s = " + String(s) + ")"); | assert(false, "Error in region computation of IF97 steam tables" + "(p = " + String(p) + ", s = " + String(s) + ")");
end if; ...

function Media.Water.IF97_Utilities.regionAssertReal

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(check, "this function can not be called with two-phase inputs!"); | assert(check, "This function can not be called with two-phase inputs!");

function Media.Water.IF97_Utilities.waterBaseProp_pT

Equations in Version 3.2 | Equations in Version 3.2.1
... aux.x = 0.0;
| aux.dpT = -aux.vt/aux.vp;
elseif (aux.region == 2) then ... aux.x = 1.0;
| aux.dpT = -aux.vt/aux.vp;
elseif (aux.region == 3) then ... aux.x = 0.0;
| aux.dpT = aux.pt;
elseif (aux.region == 5) then ... aux.cv = aux.R*(-g.tau*g.tau*g.gtautau + ((g.gpi - g.tau*g.gtaupi)*(g.gpi - g.tau*g.gtaupi)/g.gpipi));
| aux.x = 1.0; aux.dpT = -aux.vt/aux.vp;
else
assert(false, "error in region computation of IF97 steam tables" + "(p = " + String(p) + ", T = " + String(T) + ")"); | assert(false, "Error in region computation of IF97 steam tables" + "(p = " + String(p) + ", T = " + String(T) + ")");
end if; ...

function Media.Water.IF97_Utilities.waterBaseProp_dT

Equations in Version 3.2 | Equations in Version 3.2.1
... else
assert(false, "error in region computation of IF97 steam tables" + "(rho = " + String(rho) + ", T = " + String(T) + ")"); | assert(false, "Error in region computation of IF97 steam tables" + "(rho = " + String(rho) + ", T = " + String(T) + ")");
end if; ...

model Thermal.FluidHeatFlow.Examples.SimpleCooling

Component | Version 3.2 | Version 3.2.1
ambient1 |  | constantAmbientPressure=0
pump |  | constantVolumeFlow=1
pipe |  | V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| h_g=0
| T0fixed=true
ambient2 |  | constantAmbientPressure=0
heatCapacitor | T(start=TAmb) | T(start=TAmb, fixed=true)

model Thermal.FluidHeatFlow.Examples.ParallelCooling

Component | Version 3.2 | Version 3.2.1
ambient1 |  | constantAmbientPressure=0
pump |  | constantVolumeFlow=1
pipe1 |  | V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| h_g=0
| V_flow(start=0)
| T0fixed=true
pipe2 |  | V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| h_g=0
| V_flow(start=0)
| T0fixed=true
pipe3 |  | V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| h_g=0
| T0fixed=true
ambient2 |  | constantAmbientPressure=0
heatCapacitor1 | T(start=TAmb) | T(start=TAmb, fixed=true)
heatCapacitor2 | T(start=TAmb) | T(start=TAmb, fixed=true)

model Thermal.FluidHeatFlow.Examples.IndirectCooling

Component | Version 3.2 | Version 3.2.1
ambient1 |  | constantAmbientPressure=0
outerPump |  | constantVolumeFlow=1
ambient2 |  | constantAmbientPressure=0
heatCapacitor | T(start=TAmb) | T(start=TAmb, fixed=true)
pipe1 |  | h_g=0
| T0fixed=true
innerPump |  | constantVolumeFlow=1
outerPipe |  | V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| h_g=0
| T0fixed=true
innerPipe |  | V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| h_g=0
| T0fixed=true

model Thermal.FluidHeatFlow.Examples.PumpAndValve

Component | Version 3.2 | Version 3.2.1
ambient1 |  | constantAmbientPressure=0
idealPump |  | V_flow0=2
| V_flow(start=0)
| wNominal(displayUnit="rad/s") = 1
| dp0(displayUnit="Pa") = 2
valve |  | m=0
| y1=1
| Kv1=1
| kv0=0.01
| dp0(displayUnit="Pa") = 1
| rho0=10
| frictionLoss=0
pipe |  | V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| h_g=0
| T0fixed=true
ambient2 |  | constantAmbientPressure=0
heatCapacitor | T(start=TAmb) | T(start=TAmb, fixed=true)

model Thermal.FluidHeatFlow.Examples.PumpDropOut

Component | Version 3.2 | Version 3.2.1
ambient1 |  | constantAmbientPressure=0
pump |  | constantVolumeFlow=1
pipe |  | V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| h_g=0
| T0fixed=true
ambient2 |  | constantAmbientPressure=0
heatCapacitor | T(start=TAmb) | T(start=TAmb, fixed=true)

model Thermal.FluidHeatFlow.Examples.ParallelPumpDropOut

Component | Version 3.2 | Version 3.2.1
ambient1 |  | constantAmbientPressure=0
pump |  | constantVolumeFlow=1
pipe1 |  | V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| h_g=0
| V_flow(start=0)
| T0fixed=true
pipe2 |  | V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| h_g=0
| V_flow(start=0)
| T0fixed=true
pipe3 |  | V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| h_g=0
| T0fixed=true
ambient2 |  | constantAmbientPressure=0
heatCapacitor1 | T(start=TAmb) | T(start=TAmb, fixed=true)
heatCapacitor2 | T(start=TAmb) | T(start=TAmb, fixed=true)

model Thermal.FluidHeatFlow.Examples.OneMass

Component | Version 3.2 | Version 3.2.1
ambient1 |  | constantAmbientPressure=0
pump |  | constantVolumeFlow=1
pipe |  | V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| h_g=0
| T0fixed=true
ambient2 |  | constantAmbientPressure=0
heatCapacitor | T(start=TMass) | T(start=TMass, fixed=true)

model Thermal.FluidHeatFlow.Examples.TwoMass

Component | Version 3.2 | Version 3.2.1
ambient1 |  | constantAmbientPressure=0
pump |  | constantVolumeFlow=1
pipe1 |  | V_flow(start=0)
| V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| h_g=0
| T0fixed=true
pipe2 |  | V_flow(start=0)
| V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| h_g=0
| T0fixed=true
pipe3 |  | V_flowLaminar=0.1
| dpLaminar(displayUnit="Pa") = 0.1
| V_flowNominal=1
| dpNominal(displayUnit="Pa") = 1
| h_g=0
| T0fixed=true
ambient2 |  | constantAmbientPressure=0
heatCapacitor1 | T(start=TMass1) | T(start=TMass1, fixed=true)
heatCapacitor2 | T(start=TMass2) | T(start=TMass2, fixed=true)

model Thermal.FluidHeatFlow.Examples.Utilities.DoubleRamp

Component | Version 3.2 | Version 3.2.1
offset | start=1 |
| =1
startTime | start=0.2 |
| =0.2
interval | start=0.2 |
| =0.2
height_1 | start=-1 |
| =-1
duration_1 | start=0.2 |
| =0.2
height_2 | start=1 |
| =1
duration_2 | start=0.2 |
| =0.2

model Thermal.FluidHeatFlow.Interfaces.Partials.TwoPort

Component | Version 3.2 | Version 3.2.1
dp | =flowPort_a.p - flowPort_b.p |
V_flow | =flowPort_a.m_flow/medium.rho |
T |  | fixed=T0fixed
T_a | =flowPort_a.h/medium.cp |
T_b | =flowPort_b.h/medium.cp |
dT | =if noEvent(V_flow >= 0) then T - T_a else T_b - T |
h | =medium.cp*T |
T_q | =T - noEvent(sign(V_flow))*(1 - tapT)*dT |
T0fixed |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
| dp=flowPort_a.p - flowPort_b.p; V_flow=flowPort_a.m_flow/medium.rho; T_a=flowPort_a.h/medium.cp; T_b=flowPort_b.h/medium.cp; dT=if noEvent(V_flow>=0) then T-T_a else T_b-T; h = medium.cp*T; T_q = T - noEvent(sign(V_flow))*(1 - tapT)*dT;
flowPort_a.m_flow + flowPort_b.m_flow = 0; ...

model Thermal.FluidHeatFlow.Interfaces.Partials.Ambient

Component | Version 3.2 | Version 3.2.1
T_port | =flowPort.h/medium.cp |
h | =medium.cp*T |

Equations in Version 3.2 | Equations in Version 3.2.1
flowPort.H_flow = semiLinear(flowPort.m_flow,flowPort.h,h); | T_port=flowPort.h/medium.cp;
| h = medium.cp*T; flowPort.H_flow = semiLinear(flowPort.m_flow,flowPort.h,h);

model Thermal.HeatTransfer.Examples.ControlledTemperature

Component | Version 3.2 | Version 3.2.1
TRes | =heatingResistor.heatPort.T | =heatingResistor.T_heatPort
heatingResistor | T_ref=from_degC(20) | T_ref=293.15
alpha=1/(235 + 20) | alpha=1/255

model Thermal.HeatTransfer.Examples.Motor

Component | Version 3.2 | Version 3.2.1
windingLosses | T_ref=from_degC(95) | T_ref=368.15

model Thermal.HeatTransfer.Components.Convection

Component | Version 3.2 | Version 3.2.1
Gc |  | unit="W/K"

model Thermal.HeatTransfer.Sensors.TemperatureSensor

Component | Version 3.2 | Version 3.2.1
T |  | unit="K"

model Thermal.HeatTransfer.Sensors.RelTemperatureSensor

Component | Version 3.2 | Version 3.2.1
T_rel |  | unit="K"
| displayUnit="K"

model Thermal.HeatTransfer.Sensors.HeatFlowSensor

Component | Version 3.2 | Version 3.2.1
Q_flow |  | unit="W"

model Thermal.HeatTransfer.Sensors.ConditionalFixedHeatFlowSensor

Component | Version 3.2 | Version 3.2.1
Q_flow |  | unit="W"

model Thermal.HeatTransfer.Sources.PrescribedTemperature

Component | Version 3.2 | Version 3.2.1
T |  | unit="K"

model Thermal.HeatTransfer.Sources.PrescribedHeatFlow

Component | Version 3.2 | Version 3.2.1
Q_flow |  | unit="W"

model Thermal.HeatTransfer.Celsius.ToKelvin

Component | Version 3.2 | Version 3.2.1
Celsius |  | unit="degC"
Kelvin |  | unit="K"

Equations in Version 3.2 | Equations in Version 3.2.1
Kelvin = from_degC(Celsius); | Kelvin = Modelica.SIunits.Conversions.from_degC(Celsius);

model Thermal.HeatTransfer.Celsius.FromKelvin

Component | Version 3.2 | Version 3.2.1
Kelvin |  | unit="K"
Celsius |  | unit="degC"

Equations in Version 3.2 | Equations in Version 3.2.1
Celsius = to_degC(Kelvin); | Celsius = Modelica.SIunits.Conversions.to_degC(Kelvin);

model Thermal.HeatTransfer.Celsius.FixedTemperature

Equations in Version 3.2 | Equations in Version 3.2.1
port.T = from_degC(T); | port.T = Modelica.SIunits.Conversions.from_degC(T);

model Thermal.HeatTransfer.Celsius.PrescribedTemperature

Component | Version 3.2 | Version 3.2.1
T |  | unit="degC"

Equations in Version 3.2 | Equations in Version 3.2.1
port.T = from_degC(T); | port.T = Modelica.SIunits.Conversions.from_degC(T);

model Thermal.HeatTransfer.Celsius.TemperatureSensor

Component | Version 3.2 | Version 3.2.1
T |  | unit="degC"

Equations in Version 3.2 | Equations in Version 3.2.1
T = to_degC(port.T); | T = Modelica.SIunits.Conversions.to_degC(port.T);
port.Q_flow = 0;

model Thermal.HeatTransfer.Fahrenheit.ToKelvin

Component | Version 3.2 | Version 3.2.1
Fahrenheit |  | unit="degF"
Kelvin |  | unit="K"

Equations in Version 3.2 | Equations in Version 3.2.1
Kelvin = from_degF(Fahrenheit); | Kelvin = Modelica.SIunits.Conversions.from_degF(Fahrenheit);

model Thermal.HeatTransfer.Fahrenheit.FromKelvin

Component | Version 3.2 | Version 3.2.1
Kelvin |  | unit="K"
Fahrenheit |  | unit="degF"

Equations in Version 3.2 | Equations in Version 3.2.1
Fahrenheit = to_degF(Kelvin); | Fahrenheit = Modelica.SIunits.Conversions.to_degF(Kelvin);

model Thermal.HeatTransfer.Fahrenheit.FixedTemperature

Equations in Version 3.2 | Equations in Version 3.2.1
port.T = from_degF(T); | port.T = Modelica.SIunits.Conversions.from_degF(T);

model Thermal.HeatTransfer.Fahrenheit.PrescribedTemperature

Component | Version 3.2 | Version 3.2.1
T |  | unit="degF"

Equations in Version 3.2 | Equations in Version 3.2.1
port.T = from_degF(T); | port.T = Modelica.SIunits.Conversions.from_degF(T);

model Thermal.HeatTransfer.Fahrenheit.TemperatureSensor

Equations in Version 3.2 | Equations in Version 3.2.1
T = to_degF(port.T); | T = Modelica.SIunits.Conversions.to_degF(port.T);
port.Q_flow = 0;

model Thermal.HeatTransfer.Rankine.ToKelvin

Component | Version 3.2 | Version 3.2.1
Rankine |  | unit="degRk"
Kelvin |  | unit="K"

Equations in Version 3.2 | Equations in Version 3.2.1
Kelvin = from_degRk(Rankine); | Kelvin = Modelica.SIunits.Conversions.from_degRk(Rankine);

model Thermal.HeatTransfer.Rankine.FromKelvin

Component | Version 3.2 | Version 3.2.1
Kelvin |  | unit="K"
Rankine |  | unit="degRk"

Equations in Version 3.2 | Equations in Version 3.2.1
Rankine = to_degRk(Kelvin); | Rankine = Modelica.SIunits.Conversions.to_degRk(Kelvin);

model Thermal.HeatTransfer.Rankine.FixedTemperature

Equations in Version 3.2 | Equations in Version 3.2.1
port.T = from_degRk(T); | port.T = Modelica.SIunits.Conversions.from_degRk(T);

model Thermal.HeatTransfer.Rankine.PrescribedTemperature

Component | Version 3.2 | Version 3.2.1
T |  | unit="degRk"

Equations in Version 3.2 | Equations in Version 3.2.1
port.T = from_degRk(T); | port.T = Modelica.SIunits.Conversions.from_degRk(T);

model Thermal.HeatTransfer.Rankine.TemperatureSensor

Equations in Version 3.2 | Equations in Version 3.2.1
T = to_degRk(port.T); | T = Modelica.SIunits.Conversions.to_degRk(port.T);
port.Q_flow = 0;

function Math.Vectors.norm

Component | Version 3.2 | Version 3.2.1
result |  | =0.0
eps |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if p == 2 then | if size(v,1) > 0 then
| if p >= 2-eps and p <= 2+eps then
result= sqrt(v*v);
elseif p == Modelica_3_2.Constants.inf then | elseif p >= Modelica.Constants.inf then
result= max(abs(v));
elseif p == 1 then | elseif p >= 1-eps and p <= 1+eps then
result= sum(abs(v));
| elseif p >= 1 then result = (sum(abs(v[i])^p for i in 1:size(v, 1)))^(1/p);
else
result= (sum(abs(v[i])^p for i in 1:size(v, 1)))^(1/p); | assert(false, "Optional argument \"p\" (= " + String(p) + ") of function \"norm\" >= 1 required");
end if;
| end if;

function Math.Vectors.normalize

Component | Version 3.2 | Version 3.2.1
eps |  | min=0.0

function Math.Vectors.interpolate

Equations in Version 3.2 | Equations in Version 3.2.1
... y2 = y[i+1];
assert(x2 > x1, "Abszissa table vector values must be increasing"); | assert(x2 > x1, "Abscissa table vector values must be increasing");
yi = y1 + (y2 - y1)*(xi - x1)/(x2 - x1); ...

function Math.Vectors.Utilities.householderVector

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(norm_b > 0, "Vector b in function housholderVector is zero vector, but at least one element should be different from zero"); | assert(norm_b > 0, "Vector b in function householderVector is zero vector, but at least one element should be different from zero");
assert(norm_a > 0, "Vector a in function housholderVector is zero vector, but at least one element should be different from zero"); | assert(norm_a > 0, "Vector a in function householderVector is zero vector, but at least one element should be different from zero");
alpha = if norm(a + norm_a/norm_b*b,2) > norm(a - norm_a/norm_b*b,2) then norm_a/norm_b else -norm_a/norm_b; ...

function Math.Vectors.Utilities.roots

Equations in Version 3.2 | Equations in Version 3.2.1
... if n > 0 then
assert(abs(p[1]) > 0, "Computing the roots of a polynomial with function \"Modelica.Math.Vectors.Utilities.roots\"\n" + "failed because the first element of the coefficient vector is zero, but should not be."); | assert(abs(p[1]) > 0, "Computing the roots of a polynomial with function \"Modelica.Math.Vectors.Utilities.roots\"\n" + "failed because the first element of the coefficient vector is zero, but should not be.");
A[1, :] = -p[2:np]/p[1]; ...

function Math.Matrices.QR

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
assert(nrow >= ncol, "\nInput matrix A[" + String(nrow) + "," + String(ncol) + "] has more columns as rows. This is not allowed when calling Modelica.Matrices.QR(A)."); | assert(nrow >= ncol, "\nInput matrix A[" + String(nrow) + "," + String(ncol) + "] has more columns as rows. This is not allowed when calling Modelica.Matrices.QR(A).");
if pivoting then ...

function Math.Matrices.realSchur

Equations in Version 3.2 | Equations in Version 3.2.1
... if size(A, 1) > 1 then
(S,QZ,alphaReal,alphaImag) = Matrices.LAPACK.dgees(A); | (S,QZ,alphaReal,alphaImag,info) = Matrices.LAPACK.dgees(A);
assert(info == 0, "The output info of LAPACK.dgees should be zero, else if\n &nbspinfo < 0: if info = -i, the i-th argument of dgees had an illegal value\n &nbspinfo > 0: if INFO = i, and i is <= N: the QR algorithm failed to compute all the &nbspeigenvalues; elements 1:ILO-1 and i+1:N of WR and WI &nbspcontain those eigenvalues which have converged; if &nbspJOBVS = 'V', VS contains the matrix which reduces A &nbspto its partially converged Schur form.\n"); ... S = A;
if size(A, 1) > 0 then | QZ = fill(1, size(A, 1), size(A, 2));
QZ = [1]; | alphaReal = fill(1, size(A, 1));
alphaReal = {1}; | alphaImag = fill(0, size(A, 1));
alphaImag = {0}; | end if;
else |
QZ = fill(1, 0, 0); alphaReal = fill(1, 0); alphaImag = fill(0, 0); end if; end if; |

function Math.Matrices.conditionNumber

Component | Version 3.2 | Version 3.2.1
eps2 |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... if min(size(A)) > 0 then
if p == 2 then | if p >= 2-eps2 and p <= 2+eps2 then
s = Modelica_3_2.Math.Matrices.singularValues(A); ...

function Math.Matrices.norm

Component | Version 3.2 | Version 3.2.1
eps |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
if p == 1 then | if min(size(A)) > 0 then
| if p >= 1-eps and p <= 1+eps then
for i in 1:size(A, 2) loop ... end for;
elseif p == 2 then | elseif p >= 2-eps and p <= 2+eps then
result = max(singularValues(A));
elseif p == Modelica_3_2.Constants.inf then | elseif p >= Modelica.Constants.inf then
for i in 1:size(A, 1) loop ... else
assert(false, "Optional argument \"p\" of function \"norm\" must be 1, 2 or Modelica.Constants.inf"); | assert(false, "Optional argument \"p\" (= " + String(p) + ") of function \"norm\" must be 1, 2 or Modelica.Constants.inf");
end if;
| end if;

function Math.Matrices.frobeniusNorm

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
result := if min(size(A))>0 then sqrt(sum(A.*A)) else -1e100; | result := if min(size(A)) > 0 then sqrt(sum(A .* A)) else 0.0;

function Math.Matrices.continuousSylvester

Equations in Version 3.2 | Equations in Version 3.2.1
... (X,scale,info) = Matrices.LAPACK.dtrsyl(S, T, Chat);
assert(info == 0, "Solving of Sylvester equation with Matrices.continuousSylvester was not successful.\n The value of info is " + String(info) + ", but should be zero. A value unequal to zero means:\n < 0: if INFO = -i, the i-th argument had an illegal value\n = 1: A and B have common or very close eigenvalues; perturbed values were used to solve the equation (but the matrices A and B are unchanged)."); | assert(info == 0, "Solving of Sylvester equation with Matrices.continuousSylvester was not successful.\n The value of info is " + String(info) + ", but should be zero. A value unequal to zero means:\n < 0: if INFO = -i, the i-th argument had an illegal value\n = 1: A and B have common or very close eigenvalues; perturbed values were used to solve the equation (but the matrices A and B are unchanged).");
X = if AisSchur and BisSchur then scale*X else if AisSchur then scale*X* &nbsptranspose(V) else if BisSchur then scale*U*X else scale*U*X*transpose(V); ...

function Math.Matrices.LAPACK.dgeev

Component | Version 3.2 | Version 3.2.1
dummy |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
external "Fortran 77" dgeev("N", "V", n, Awork, n, eigenReal, eigenImag, eigenVectors, n, eigenVectors, n, work, size(work, 1), info); | external "Fortran 77" dgeev( "N", "V", n, Awork, n, eigenReal, eigenImag, dummy, 1, eigenVectors, n, work, size(work, 1), info);

function Math.Matrices.LAPACK.dgees

Component | Version 3.2 | Version 3.2.1
dummyFunctionPointerNotUsed |  | Present
lwork |  | Present
work |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
external "FORTRAN 77" c_inter_dgees("V", "N", n, T, lda, sdim, eval_real, eval_imag, Z, lda, bwork, info); | external"FORTRAN 77" dgees("V","N",dummyFunctionPointerNotUsed,n,T,lda,sdim,eval_real,eval_imag,Z,lda,work,lwork,bwork,info);

function Math.Matrices.LAPACK.dlange

Component | Version 3.2 | Version 3.2.1
lda | =max(1, m) | =max(1, size(A, 1))

Equations in Version 3.2 | Equations in Version 3.2.1
external "Fortran 77" dlange2(norm, m, n, A, lda, work, anorm); | external "Fortran 77" anorm = dlange( norm, m, n, A, lda, work);

function Math.Matrices.LAPACK.dgeevx

Component | Version 3.2 | Version 3.2.1
iwork |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
external "Fortran 77" dgeevx( "B", "V", "V", "E", n, AS, n, alphaReal, alphaImag, lEigenVectors, n, rEigenVectors, n, ilo, ihi, scale, abnrm, rconde, rcondv, work, lwork, info); | external "Fortran 77" dgeevx( "B", "V", "V", "E", n, AS, n, alphaReal, alphaImag, lEigenVectors, n, rEigenVectors, n, ilo, ihi, scale, abnrm, rconde, rcondv, work, lwork, iwork, info);

function Math.Matrices.Utilities.eigenvaluesHessenberg

Component | Version 3.2 | Version 3.2.1
n | Present |
ilo | Present |
ihi | Present |
Z | Present |

function Math.Nonlinear.Examples.quadratureLobatto1

Equations in Version 3.2 | Equations in Version 3.2.1
... I_err = abs(I_numerical - I_analytical);
print("Function 1 ( integral(sin(x)*dx) from x=0 to x=1): "); ...

function Math.Nonlinear.Examples.quadratureLobatto2

Equations in Version 3.2 | Equations in Version 3.2.1
... I[3] = Modelica_3_2.Math.Nonlinear.quadratureLobatto( &nbspfunction &nbspModelica_3_2.Math.Nonlinear.Examples.UtilityFunctions.fun6(k=k), &nbspa3, &nbspb3, &nbspTolerance);
print("Function 1 (integral(sin(x)*dx)): "); ...

function Math.Nonlinear.Examples.solveNonlinearEquations1

Equations in Version 3.2 | Equations in Version 3.2.1
... u_err = abs(u_numerical - u_analytical);
print("Solve 3 nonlinear equations with relative tolerance = " + String(tolerance) +"\n"); ...

function Math.Nonlinear.Examples.solveNonlinearEquations2

Equations in Version 3.2 | Equations in Version 3.2.1
... u[3] = Modelica_3_2.Math.Nonlinear.solveOneNonlinearEquation( &nbspfunction &nbspModelica_3_2.Math.Nonlinear.Examples.UtilityFunctions.fun3(p=p, m= &nbspm), u_min3, &nbspu_max3, &nbsptolerance);
print("Solve 3 nonlinear equations with relative tolerance = " + String(tolerance) +"\n"); ...

function Math.Nonlinear.solveOneNonlinearEquation

Equations in Version 3.2 | Equations in Version 3.2.1
... if fa > 0.0 and fb > 0.0 or fa < 0.0 and fb < 0.0 then
error( "The arguments u_min and u_max to solveOneNonlinearEquation(..)\n" + "do not bracket the root of the single non-linear equation:\n" + " u_min = " + String(u_min) + "\n" + " u_max = " + String(u_max) + "\n" + " fa = f(u_min) = " + String(fa) + "\n" + " fb = f(u_max) = " + String(fb) + "\n" + "fa and fb must have opposite sign which is not the case"); | error( "The arguments u_min and u_max provided in the function call\n"+ " solveOneNonlinearEquation(f,u_min,u_max)\n" + "do not bracket the root of the single non-linear equation 0=f(u):\n" + " u_min = " + String(u_min) + "\n" + " u_max = " + String(u_max) + "\n" + " fa = f(u_min) = " + String(fa) + "\n" + " fb = f(u_max) = " + String(fb) + "\n" + "fa and fb must have opposite sign which is not the case");
end if; ...

function Math.BooleanVectors.oneTrue

Component | Version 3.2 | Version 3.2.1
count | Present |

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
for i in 1:size(b,1) loop | result := countTrue(b) == 1;
count = if b[i] then count+1 else count; |
end for; result = count == 1; |

function Math.atan3

Component | Version 3.2 | Version 3.2.1
pi |  | constant
pi2 |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
... w :=Math.atan2(u1, u2);
y = w + 2*pi*div(abs(w-y0)+pi,2*pi)*(if y0 > w then +1 else -1); | if y0 == 0 then
| y = w;
| else y = w + pi2*integer((pi+y0-w)/pi2); end if;

model Utilities.Examples.readRealParameterModel

Component | Version 3.2 | Version 3.2.1
file | ="Modelica/Resources/Data/Utilities/Examples_readRealParameters.txt" | =Modelica.Utilities.Files.loadResource("modelica://Modelica/Resources/Data/Utilities/Examples_readRealParameters.txt")

function Utilities.Strings.findLast

Component | Version 3.2 | Version 3.2.1
iMax |  | Present

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
i := if startIndex == 0 then lenString-lenSearchString+1 else startIndex; | i := if startIndex == 0 or startIndex > iMax then iMax else startIndex;
index = 0; ...

package Utilities.Internal.FileSystem

Component | Version 3.2 | Version 3.2.1
package | protected |

package Constants

Component | Version 3.2 | Version 3.2.1
eps | =1.e-15 | =ModelicaServices.Machine.eps
small | =1.e-60 | =ModelicaServices.Machine.small
inf | =1.e+60 | =ModelicaServices.Machine.inf
Integer_inf | =2147483647 | =ModelicaServices.Machine.Integer_inf

function SIunits.Conversions.to_cm2

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
cm2 := 0.0001*m2; | cm2 := 10000*m2;

function SIunits.Conversions.from_cm2

Equations in Version 3.2 | Equations in Version 3.2.1
algorithm
m2 :=10000*cm2; | m2 := 0.0001*cm2;

Class | Version 3.2 | Version 3.2.1
Modelica_3_2.Blocks.Logical.And | model | block
Modelica_3_2.Blocks.Logical.Or | model | block
Modelica_3_2.Blocks.Logical.Xor | model | block
Modelica_3_2.Blocks.Logical.Nor | model | block
Modelica_3_2.Blocks.Logical.Nand | model | block
Modelica_3_2.Blocks.Logical.Not | model | block
Modelica_3_2.Blocks.Logical.Pre | model | block
Modelica_3_2.Blocks.Logical.Edge | model | block
Modelica_3_2.Blocks.Logical.FallingEdge | model | block
Modelica_3_2.Blocks.Logical.Change | model | block
Modelica_3_2.Blocks.Sources.CombiTimeTable | model | block
Modelica_3_2.Blocks.Tables.CombiTable1D | model | block
Modelica_3_2.Blocks.Tables.CombiTable1Ds | model | block
Modelica_3_2.Blocks.Tables.CombiTable2D | model | block
Modelica_3_2.Icons.TypeComplex | record | operator | record
Modelica_3_2.Icons.SignalBus | connector | expandable | connector
Modelica_3_2.Icons.SignalSubBus | connector | expandable | connector
Modelica_3_2.SIunits.ComplexCurrent | record | operator | record
Modelica_3_2.SIunits.ComplexCurrentSlope | record | operator | record
Modelica_3_2.SIunits.ComplexCurrentDensity | record | operator | record
Modelica_3_2.SIunits.ComplexElectricPotential | record | operator | record
Modelica_3_2.SIunits.ComplexPotentialDifference | record | operator | record
Modelica_3_2.SIunits.ComplexVoltage | record | operator | record
Modelica_3_2.SIunits.ComplexVoltageSlope | record | operator | record
Modelica_3_2.SIunits.ComplexElectricFieldStrength | record | operator | record
Modelica_3_2.SIunits.ComplexElectricFluxDensity | record | operator | record
Modelica_3_2.SIunits.ComplexElectricFlux | record | operator | record
Modelica_3_2.SIunits.ComplexMagneticFieldStrength | record | operator | record
Modelica_3_2.SIunits.ComplexMagneticPotential | record | operator | record
Modelica_3_2.SIunits.ComplexMagneticPotentialDifference | record | operator | record
Modelica_3_2.SIunits.ComplexMagnetomotiveForce | record | operator | record
Modelica_3_2.SIunits.ComplexMagneticFluxDensity | record | operator | record
Modelica_3_2.SIunits.ComplexMagneticFlux | record | operator | record
Modelica_3_2.SIunits.ComplexReluctance | record | operator | record
Modelica_3_2.SIunits.ComplexImpedance | record | operator | record
Modelica_3_2.SIunits.ComplexAdmittance | record | operator | record
Modelica_3_2.SIunits.ComplexPower | record | operator | record
package Modelica_3_2.UsersGuide.Conventions.ModelicaCode | Present |
class Modelica_3_2.UsersGuide.ReleaseNotes.Version_3_2_BugFixes | Present |
class Modelica_3_2.UsersGuide.ModelicaLicense2 | Present |
connector Modelica_3_2.StateGraph.Examples.Utilities.inflow1 | Present |
connector Modelica_3_2.StateGraph.Examples.Utilities.inflow2 | Present |
connector Modelica_3_2.StateGraph.Examples.Utilities.outflow1 | Present |
connector Modelica_3_2.StateGraph.Examples.Utilities.outflow2 | Present |
package Modelica_3_2.Magnetic.FundamentalWave.BasicMachines.Functions | Present |
block Modelica_3_2.Fluid.Examples.AST_BatchPlant.BaseClasses.TriggeredTrapezoid | Present |
function Modelica_3_2.Fluid.Machines.BaseClasses.assertPositiveDifference | Present |
package Modelica_3_2.Media.Examples.TestOnly.TestMedia | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.Choices.IndependentVariables | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.Choices.Init | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.Choices.ReferenceEnthalpy | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.Choices.ReferenceEntropy | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.Choices.pd | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.Choices.Th | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.AbsolutePressure | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.Density | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.DynamicViscosity | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.EnthalpyFlowRate | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.MassFraction | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.MoleFraction | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.MolarMass | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.MolarVolume | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.IsentropicExponent | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.SpecificEnergy | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.SpecificInternalEnergy | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.SpecificEnthalpy | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.SpecificEntropy | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.SpecificHeatCapacity | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.SurfaceTension | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.Temperature | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.ThermalConductivity | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.PrandtlNumber | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.VelocityOfSound | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.ExtraProperty | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.CumulativeExtraProperty | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.ExtraPropertyFlowRate | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.IsobaricExpansionCoefficient | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.DipoleMoment | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.DerDensityByPressure | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.DerDensityByEnthalpy | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.DerEnthalpyByPressure | Present |
type Modelica_3_2.Media.Interfaces.PartialMedium.DerDensityByTemperature | Present |
record Modelica_3_2.Media.Interfaces.PartialMixtureMedium.FluidConstants | Present |
record Modelica_3_2.Media.Interfaces.PartialTwoPhaseMedium.FluidLimits | Present |
record Modelica_3_2.Media.Interfaces.PartialTwoPhaseMedium.FluidConstants | Present |
record Modelica_3_2.Media.Interfaces.PartialTwoPhaseMedium.SaturationProperties | Present |
type Modelica_3_2.Media.Interfaces.PartialTwoPhaseMedium.FixedPhase | Present |
record Modelica_3_2.Media.Interfaces.PartialSimpleIdealGasMedium.FluidConstants | Present |
record Modelica_3_2.Media.IdealGases.Common.SingleGasNasa.FluidConstants | Present |
function Modelica_3_2.Media.IdealGases.Common.SingleGasNasa.cp_T | Present |
function Modelica_3_2.Media.IdealGases.Common.SingleGasNasa.cp_Tlow | Present |
function Modelica_3_2.Media.IdealGases.Common.SingleGasNasa.cp_Tlow_der | Present |
function Modelica_3_2.Media.IdealGases.Common.SingleGasNasa.h_T | Present |
function Modelica_3_2.Media.IdealGases.Common.SingleGasNasa.h_T_der | Present |
function Modelica_3_2.Media.IdealGases.Common.SingleGasNasa.h_Tlow | Present |
function Modelica_3_2.Media.IdealGases.Common.SingleGasNasa.h_Tlow_der | Present |
function Modelica_3_2.Media.IdealGases.Common.SingleGasNasa.s0_T | Present |
function Modelica_3_2.Media.IdealGases.Common.SingleGasNasa.s0_Tlow | Present |
record Modelica_3_2.Media.IdealGases.Common.MixtureGasNasa.FluidConstants | Present |
package Modelica_3_2.Utilities.Internal.PartialModelicaServices | Present |
package Modelica.UsersGuide.Conventions.ModelicaCode |  | Present
class Modelica.UsersGuide.ReleaseNotes.Version_3_2_1 |  | Present
class Modelica.UsersGuide.ModelicaLicense2 |  | Present
block Modelica.Blocks.Logical.RSFlipFlop |  | Present
block Modelica.Blocks.Math.MinMax |  | Present
block Modelica.Blocks.Math.LinearDependency |  | Present
block Modelica.Blocks.Nonlinear.SlewRateLimiter |  | Present
block Modelica.Blocks.Sources.Cosine |  | Present
class Modelica.Blocks.Types.ExternalCombiTimeTable |  | Present
class Modelica.Blocks.Types.ExternalCombiTable1D |  | Present
class Modelica.Blocks.Types.ExternalCombiTable2D |  | Present
package Modelica.Blocks.Icons |  | Present
connector Modelica.StateGraph.Examples.Utilities.Inflow1 |  | Present
connector Modelica.StateGraph.Examples.Utilities.Inflow2 |  | Present
connector Modelica.StateGraph.Examples.Utilities.Outflow1 |  | Present
connector Modelica.StateGraph.Examples.Utilities.Outflow2 |  | Present
model Modelica.Electrical.Analog.Sources.CosineVoltage |  | Present
model Modelica.Electrical.Analog.Sources.CosineCurrent |  | Present
model Modelica.Electrical.Digital.Examples.MUX2x1 |  | Present
model Modelica.Electrical.Digital.Examples.RAM |  | Present
block Modelica.Electrical.Digital.Converters.LogicToX01 |  | Present
block Modelica.Electrical.Digital.Converters.LogicToX01Z |  | Present
package Modelica.Electrical.Digital.Memories |  | Present
package Modelica.Electrical.Digital.Multiplexers |  | Present
model Modelica.Electrical.Machines.Examples.AsynchronousInductionMachines.AIMC_Initialize |  | Present
model Modelica.Electrical.Machines.Examples.SynchronousInductionMachines.SMPM_VoltageSource |  | Present
model Modelica.Electrical.Machines.Examples.SynchronousInductionMachines.SMEE_Rectifier |  | Present
model Modelica.Electrical.Machines.BasicMachines.Components.PermanentMagnetWithLosses |  | Present
model Modelica.Electrical.Machines.Losses.InductionMachines.PermanentMagnetLosses |  | Present
record Modelica.Electrical.Machines.Losses.PermanentMagnetLossParameters |  | Present
package Modelica.Electrical.Machines.Utilities.ParameterRecords |  | Present
model Modelica.Electrical.Machines.Utilities.VoltageController |  | Present
block Modelica.Electrical.Machines.Utilities.ToDQ |  | Present
block Modelica.Electrical.Machines.Utilities.FromDQ |  | Present
model Modelica.Electrical.MultiPhase.Examples.TestSensors |  | Present
model Modelica.Electrical.MultiPhase.Sensors.VoltageQuasiRMSSensor |  | Present
model Modelica.Electrical.MultiPhase.Sensors.CurrentQuasiRMSSensor |  | Present
model Modelica.Electrical.MultiPhase.Sources.CosineVoltage |  | Present
model Modelica.Electrical.MultiPhase.Sources.CosineCurrent |  | Present
package Modelica.Electrical.MultiPhase.Blocks |  | Present
package Modelica.Electrical.MultiPhase.Functions |  | Present
model Modelica.Electrical.Spice3.Examples.CoupledInductors |  | Present
model Modelica.Electrical.Spice3.Examples.CascodeCircuit |  | Present
model Modelica.Electrical.Spice3.Examples.Spice3BenchmarkDifferentialPair |  | Present
model Modelica.Electrical.Spice3.Examples.Spice3BenchmarkMosfetCharacterization |  | Present
model Modelica.Electrical.Spice3.Examples.Spice3BenchmarkRtlInverter |  | Present
model Modelica.Electrical.Spice3.Examples.Spice3BenchmarkFourBitBinaryAdder |  | Present
model Modelica.Electrical.Spice3.Basic.K_CoupledInductors |  | Present
model Modelica.Electrical.Spice3.Semiconductors.M_NMOS2 |  | Present
model Modelica.Electrical.Spice3.Semiconductors.M_PMOS2 |  | Present
record Modelica.Electrical.Spice3.Semiconductors.ModelcardMOS2 |  | Present
model Modelica.Electrical.Spice3.Semiconductors.J_PJFJFET |  | Present
model Modelica.Electrical.Spice3.Semiconductors.J_NJFJFET |  | Present
record Modelica.Electrical.Spice3.Semiconductors.ModelcardJFET |  | Present
model Modelica.Electrical.Spice3.Semiconductors.C_Capacitor |  | Present
record Modelica.Electrical.Spice3.Semiconductors.ModelcardCAPACITOR |  | Present
connector Modelica.Electrical.Spice3.Interfaces.InductiveCouplePinIn |  | Present
connector Modelica.Electrical.Spice3.Interfaces.InductiveCouplePinOut |  | Present
model Modelica.Electrical.Spice3.Interfaces.ConditionalSubstrate |  | Present
function Modelica.Electrical.Spice3.Internal.Functions.junction2SPICE3MOSFETRevised |  | Present
function Modelica.Electrical.Spice3.Internal.Functions.junctionCapRevised |  | Present
function Modelica.Electrical.Spice3.Internal.Functions.saturationCurDepTempSPICE3JFET |  | Present
function Modelica.Electrical.Spice3.Internal.Functions.capDepGeom |  | Present
function Modelica.Electrical.Spice3.Internal.Functions.junction2SPICE3BJT |  | Present
function Modelica.Electrical.Spice3.Internal.Functions.energyGapDepTemp_old |  | Present
function Modelica.Electrical.Spice3.Internal.SpiceRoot.limitJunctionVoltageRevised |  | Present
function Modelica.Electrical.Spice3.Internal.SpiceRoot.initJunctionVoltagesRevised |  | Present
function Modelica.Electrical.Spice3.Internal.Mosfet.mosfetRenameParametersDev |  | Present
function Modelica.Electrical.Spice3.Internal.Mos.mos2CalcInitEquationsRevised |  | Present
function Modelica.Electrical.Spice3.Internal.Mos.mos2CalcCalcTempDependenciesRevised |  | Present
function Modelica.Electrical.Spice3.Internal.Mos.mos2CalcNoBypassCodeRevised |  | Present
function Modelica.Electrical.Spice3.Internal.Mos2.mos2ModelLineParamsInitEquationsRevised |  | Present
function Modelica.Electrical.Spice3.Internal.Mos2.drainCurRevised |  | Present
function Modelica.Electrical.Spice3.Internal.Mos2.mos2RenameParametersRevised |  | Present
model Modelica.Electrical.Spice3.Internal.BJT2 |  | Present
record Modelica.Electrical.Spice3.Internal.ModelcardBJT2 |  | Present
model Modelica.Electrical.Spice3.Internal.JFET |  | Present
record Modelica.Electrical.Spice3.Internal.ModelcardJFET |  | Present
model Modelica.Electrical.Spice3.Internal.C_SEMI |  | Present
record Modelica.Electrical.Spice3.Internal.ModelcardC |  | Present
record Modelica.Electrical.Spice3.Internal.MaterialParameters |  | Present
package Modelica.Electrical.Spice3.Internal.Bjt |  | Present
package Modelica.Electrical.Spice3.Internal.Fet |  | Present
package Modelica.Electrical.Spice3.Internal.Jfet |  | Present
package Modelica.Electrical.Spice3.Internal.Csemiconductor |  | Present
package Modelica.Electrical.Spice3.Types |  | Present
class Modelica.Magnetic.FundamentalWave.UsersGuide.MultiPhase |  | Present
class Modelica.Magnetic.FundamentalWave.UsersGuide.Parameters |  | Present
model Modelica.Magnetic.FundamentalWave.Examples.Components.SinglePhaseInductance |  | Present
model Modelica.Magnetic.FundamentalWave.Examples.Components.MultiPhaseInductance |  | Present
model Modelica.Magnetic.FundamentalWave.Examples.BasicMachines.AIMC_DOL_MultiPhase |  | Present
model Modelica.Magnetic.FundamentalWave.Examples.BasicMachines.AIMS_Start_MultiPhase |  | Present
model Modelica.Magnetic.FundamentalWave.Examples.BasicMachines.SMPM_Inverter_MultiPhase |  | Present
model Modelica.Magnetic.FundamentalWave.Examples.BasicMachines.SMEE_Generator_MultiPhase |  | Present
model Modelica.Magnetic.FundamentalWave.Examples.BasicMachines.SMR_Inverter_MultiPhase |  | Present
model Modelica.Magnetic.FundamentalWave.BasicMachines.Components.PermanentMagnet |  | Present
package Modelica.Mechanics.MultiBody.Examples.Constraints |  | Present
model Modelica.Mechanics.MultiBody.Joints.Internal.InitPosition |  | Present
model Modelica.Mechanics.MultiBody.Joints.Internal.InitAngle |  | Present
model Modelica.Mechanics.MultiBody.Joints.Internal.InitAngularVelocity |  | Present
package Modelica.Mechanics.MultiBody.Joints.Constraints |  | Present
model Modelica.Mechanics.MultiBody.Sensors.TransformAbsoluteVector |  | Present
model Modelica.Mechanics.MultiBody.Sensors.TransformRelativeVector |  | Present
class Modelica.Mechanics.MultiBody.Icons.MotorIcon |  | Present
class Modelica.Mechanics.Rotational.UsersGuide.StateSelection |  | Present
model Modelica.Mechanics.Rotational.Examples.GenerationOfFMUs |  | Present
package Modelica.Mechanics.Rotational.Examples.Utilities |  | Present
model Modelica.Mechanics.Rotational.Components.TorqueToAngleAdaptor |  | Present
model Modelica.Mechanics.Rotational.Components.AngleToTorqueAdaptor |  | Present
model Modelica.Mechanics.Rotational.Sensors.MultiSensor |  | Present
model Modelica.Mechanics.Translational.Sensors.MultiSensor |  | Present
package Modelica.Fluid.Machines.BaseClasses.PumpMonitoring |  | Present
model Modelica.Fluid.Sources.BaseClasses.PartialFlowSource |  | Present
model Modelica.Fluid.Sensors.BaseClasses.PartialRelativeSensor |  | Present
model Modelica.Fluid.Sensors.MassFractions |  | Present
model Modelica.Fluid.Sensors.MassFractionsTwoPort |  | Present
type Modelica.Fluid.Dissipation.Utilities.Types.MolarMass_gpmol |  | Present
package Modelica.Media.Examples.ReferenceAir |  | Present
package Modelica.Media.Examples.R134a |  | Present
package Modelica.Media.Interfaces.PartialRealCondensingGases |  | Present
package Modelica.Media.Interfaces.Choices |  | Present
package Modelica.Media.Interfaces.Types |  | Present
record Modelica.Media.Common.FundamentalConstants |  | Present
record Modelica.Media.Common.AuxiliaryProperties |  | Present
record Modelica.Media.Common.GibbsDerivs2 |  | Present
record Modelica.Media.Common.NewtonDerivatives_dT |  | Present
function Modelica.Media.Common.Gibbs2_ph |  | Present
function Modelica.Media.Common.Gibbs2_dT |  | Present
function Modelica.Media.Common.Gibbs2_ps |  | Present
function Modelica.Media.Air.MoistAir.Utilities.smoothMax |  | Present
function Modelica.Media.Air.MoistAir.Utilities.smoothMax_der |  | Present
function Modelica.Media.Air.MoistAir.velocityOfSound |  | Present
function Modelica.Media.Air.MoistAir.isobaricExpansionCoefficient |  | Present
function Modelica.Media.Air.MoistAir.isothermalCompressibility |  | Present
function Modelica.Media.Air.MoistAir.density_derp_h |  | Present
function Modelica.Media.Air.MoistAir.density_derh_p |  | Present
function Modelica.Media.Air.MoistAir.density_derp_T |  | Present
function Modelica.Media.Air.MoistAir.density_derT_p |  | Present
function Modelica.Media.Air.MoistAir.density_derX |  | Present
function Modelica.Media.Air.MoistAir.molarMass |  | Present
function Modelica.Media.Air.MoistAir.T_psX |  | Present
function Modelica.Media.Air.MoistAir.setState_psX |  | Present
function Modelica.Media.Air.MoistAir.s_pTX |  | Present
function Modelica.Media.Air.MoistAir.s_pTX_der |  | Present
function Modelica.Media.Air.MoistAir.isentropicEnthalpy |  | Present
package Modelica.Media.Air.ReferenceAir |  | Present
package Modelica.Media.Air.ReferenceMoistAir |  | Present
package Modelica.Media.IdealGases.Common.Functions |  | Present
function Modelica.Media.Incompressible.TableBased.Polynomials_Temp.evaluateWithRange |  | Present
function Modelica.Media.Incompressible.TableBased.Polynomials_Temp.evaluateWithRange_der |  | Present
package Modelica.Media.R134a |  | Present
model Modelica.Thermal.HeatTransfer.Components.ThermalResistor |  | Present
model Modelica.Thermal.HeatTransfer.Components.ConvectiveResistor |  | Present
function Modelica.Math.Vectors.normalizeWithAssert |  | Present
function Modelica.Math.BooleanVectors.countTrue |  | Present
function Modelica.Math.BooleanVectors.enumerate |  | Present
function Modelica.Math.BooleanVectors.index |  | Present
package Modelica.Math.Icons |  | Present
function Modelica.Math.isPowerOf2 |  | Present
function Modelica.Utilities.Files.loadResource |  | Present
function Modelica.Utilities.Strings.isEmpty |  | Present
package Modelica.Utilities.Internal.PartialModelicaServices |  | Present
package Modelica.Icons.UtilitiesPackage |  | Present
package Modelica.Icons.TypesPackage |  | Present
package Modelica.Icons.IconsPackage |  | Present
package Modelica.Icons.InternalPackage |  | Present
function Modelica.SIunits.Conversions.to_unit1 |  | Present
package Modelica.SIunits.Icons |  | Present
type Modelica.SIunits.PressureDifference |  | Present
type Modelica.SIunits.DerPressureByDensity |  | Present
type Modelica.SIunits.DerPressureByTemperature |  | Present
type Modelica.SIunits.LoudnessLevel |  | Present
type Modelica.SIunits.Loudness |  | Present
type Modelica.SIunits.MolarDensity |  | Present
type Modelica.SIunits.MolarEnergy |  | Present
type Modelica.SIunits.MolarEnthalpy |  | Present
type Modelica.SIunits.TimeAging |  | Present
type Modelica.SIunits.ChargeAging |  | Present
type Modelica.SIunits.PerUnit |  | Present