Comparison Summary

Modelica 3.2.2 with alias name: Version 1 | Modelica 3 2 1 Build 4 with alias name: Version 2
| Version: 3.2.2 | Version: 3.2.1
Version date: 2016-03-06 | Version date: 2015-09-30

model Blocks.Examples.FilterWithRiseTime

Component | Version 1 | Version 2
pi |  | Present

block Blocks.Continuous.LimPID

Equations in Version 1 | Equations in Version 2
...
equation if initType == InitPID.InitialOutput and (y_start < yMin or y_start > yMax) then | equation assert(yMax >= yMin, "LimPID: Limits must be consistent. However, yMax (=" + String(yMax) + ") < yMin (=" + String(yMin) + ")");
| if initType == InitPID.InitialOutput and (y_start < yMin or y_start > yMax) then
Modelica.Utilities.Streams.error("LimPID: Start value y_start (=" + String(y_start) + ") is outside of the limits of yMin (=" + String(yMin) +") and yMax (=" + String(yMax) + ")");
end if;
| assert(limitsAtInit or not limitsAtInit and y >= yMin and y <= yMax, "LimPID: During initialization the limits have been switched off.\n" + "After initialization, the output y (=" + String(y) + ") is outside of the limits of yMin (=" + String(yMin) +") and yMax (=" + String(yMax) + ")");
connect(u_s, addP.u1); ...

block Blocks.Continuous.LowpassButterworth

Component | Version 1 | Version 2
pi |  | Present

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

Component | Version 1 | Version 2
pi |  | Present

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

Component | Version 1 | Version 2
pi |  | Present

function Blocks.Continuous.Internal.Filter.coefficients.lowPass

Component | Version 1 | Version 2
pi |  | Present

function Blocks.Continuous.Internal.Filter.coefficients.highPass

Component | Version 1 | Version 2
pi |  | Present

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

Component | Version 1 | Version 2
pi |  | Present

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

Component | Version 1 | Version 2
pi |  | Present

block Blocks.Discrete.TransferFunction

Component | Version 1 | Version 2
x1 | start=0 |
fixed=true |
xext | each start=0 |
each fixed=true |

block Blocks.Interfaces.DiscreteBlock

Component | Version 1 | Version 2
firstTrigger | start=false |
fixed=true |

block Blocks.Logical.Hysteresis

Equations in Version 1 | Equations in Version 2
...
equation assert(uHigh > uLow,"Hysteresis limits wrong (uHigh <= uLow)"); | equation y = u > uHigh or pre(y) and u >= uLow;
y = not pre(y) and u > uHigh or pre(y) and u >= uLow; |

block Blocks.Nonlinear.Limiter

Equations in Version 1 | Equations in Version 2
assert(uMax >= uMin, "Limiter: Limits must be consistent. However, uMax (=" + String(uMax) + ") < uMin (=" + String(uMin) + ")");
if strict then | if initial() and not limitsAtInit then
y = homotopy(actual = smooth(0, noEvent(if u > uMax then uMax else if u < uMin then uMin else u)), simplified=u); | y = u;
| assert(u >= uMin - 0.01*abs(uMin) and u <= 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
y = homotopy(actual = smooth(0,if u > uMax then uMax else if u < uMin then uMin else u), simplified=u); | y = smooth(0,if u > uMax then uMax else if u < uMin then uMin else u);
end if;

block Blocks.Nonlinear.VariableLimiter

Component | Version 1 | Version 2
uMax |  | Present
uMin |  | Present

Equations in Version 1 | Equations in Version 2
assert(limit1 >= limit2, "Input signals are not consistent: limit1 < limit2"); |
if strict then
y = homotopy(actual = smooth(0, noEvent(if u > limit1 then limit1 else if u < limit2 then limit2 else u)), simplified=u); | uMax = noEvent(max(limit1, limit2));
| uMin = noEvent(min(limit1, limit2));
else
y = homotopy(actual = smooth(0,if u > limit1 then limit1 else if u < limit2 then limit2 else u), simplified=u); | uMax = max(limit1, limit2);
| uMin = min(limit1, limit2);
end if;
| if initial() and not limitsAtInit then y = u; assert(u >= uMin - 0.01*abs(uMin) and u <= 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 y = smooth(0,if u > uMax then uMax else if u < uMin then uMin else u); end if;

block Blocks.Nonlinear.SlewRateLimiter

Component | Version 1 | Version 2
val | Present |

Equations in Version 1 | Equations in Version 2
... equation if strict then
der(y) = smooth(1,noEvent(if val<Falling then Falling else if val>Rising then Rising else val)); | der(y) = smooth(1, noEvent(min(max((u - y)/Td, Falling), Rising)));
else
der(y) = if val<Falling then Falling else if val>Rising then Rising else val; | der(y) = smooth(1, min(max((u - y)/Td, Falling), Rising));
end if;

block Blocks.Nonlinear.DeadZone

Equations in Version 1 | Equations in Version 2
assert(uMax >= uMin, "DeadZone: Limits must be consistent. However, uMax (=" + String(uMax) + ") < uMin (=" + String(uMin) + ")");
y = homotopy(actual=smooth(0,if u > uMax then u - uMax else if u < uMin then u - uMin else 0), simplified=u); | if initial() and not deadZoneAtInit then
| y = u; else y = smooth(0,if u > uMax then u - uMax else if u < uMin then u - uMin else 0); end if;

block Blocks.Nonlinear.PadeDelay

Component | Version 1 | Version 2
balance | Present |
a1 | Present |
b11 | Present |
c | Present |
d | Present |
s | Present |
x1dot |  | Present
xn |  | Present
a |  | Present
b |  | Present

Equations in Version 1 | Equations in Version 2
der(x[1]) = a1*x + b11*u; | (b,a) = padeCoefficients(delayTime, n, m);
if n > 1 then | [der(x); xn] = [x1dot; x];
der(x[2:n]) = s.*x[1:n-1]; | [u] = transpose([a])*[x1dot; x];
end if; | [y] = transpose([zeros(n - m, 1); b])*[x1dot; x];
y = c*x + d*u; |
initial equation
(a1,b11,c,d,s) = padeCoefficients2(delayTime, n, m, balance); | x[n] = u;
if balance then |
der(x) = zeros(n); else x[n] = u; end if; |

model Blocks.Routing.RealPassThrough

Component | Version 1 | Version 2
u |  | Present
y |  | Present

model Blocks.Routing.BooleanPassThrough

Component | Version 1 | Version 2
u |  | Present
y |  | Present

block Blocks.Sources.Sine

Component | Version 1 | Version 2
pi |  | Present

block Blocks.Sources.Cosine

Component | Version 1 | Version 2
pi |  | Present

block Blocks.Sources.ExpSine

Component | Version 1 | Version 2
pi |  | Present

block Blocks.Sources.TimeTable

Component | Version 1 | Version 2
timeScale | Present |
nextEventScaled | Present |
timeScaled | Present |

Equations in Version 1 | Equations in Version 2
algorithm
timeScaled := time/timeScale; |
when {time >= pre(nextEvent),initial()} then
(a,b,nextEventScaled,last) = getInterpolationCoefficients( table, offset, startTime/timeScale, timeScaled, last, 100*Modelica.Constants.eps); | (a,b,nextEvent,last) = getInterpolationCoefficients( table, offset, startTime, time, last, 100*Modelica_3_2_1_Build_4.Constants.eps);
nextEvent = nextEventScaled*timeScale; |
end when;
equation y = a*timeScaled + b; | equation y = a*time + b;

block Blocks.Sources.CombiTimeTable

Component | Version 1 | Version 2
tableID | =Modelica.Blocks.Types.ExternalCombiTimeTable(if tableOnFile then tableName else "NoName", if tableOnFile and fileName <> "NoName" and not Modelica.Utilities.Strings.isEmpty(fileName) then fileName else "NoName", table, startTime/timeScale, columns, smoothness, extrapolation) | =Modelica_3_2_1_Build_4.Blocks.Types.ExternalCombiTimeTable(if tableOnFile then tableName else "NoName", if tableOnFile and fileName <> "NoName" and not Modelica_3_2_1_Build_4.Utilities.Strings.isEmpty(fileName) then fileName else "NoName", table, startTime, columns, smoothness, extrapolation)
timeScale | Present |
t_minScaled | Present |
t_maxScaled | Present |
nextTimeEventScaled | Present |
DBL_MAX | Present |
timeScaled | Present |

Equations in Version 1 | Equations in Version 2
... end if;
t_minScaled = getTableTimeTmin(tableID, tableOnFileRead); | t_min = getTableTimeTmin(tableID, tableOnFileRead);
t_maxScaled = getTableTimeTmax(tableID, tableOnFileRead); | t_max = getTableTimeTmax(tableID, tableOnFileRead);
t_min = t_minScaled*timeScale; t_max = t_maxScaled*timeScale; |
... end if;
timeScaled = time/timeScale; |
when {time >= pre(nextTimeEvent),initial()} then
nextTimeEventScaled = getNextTimeEvent(tableID, timeScaled, tableOnFileRead); | nextTimeEvent = getNextTimeEvent(tableID, time, tableOnFileRead);
if (nextTimeEventScaled < DBL_MAX) then nextTimeEvent = nextTimeEventScaled*timeScale; else nextTimeEvent = DBL_MAX; end if; |
end when; ... for i in 1:nout loop
y[i] = p_offset[i] + getTableValueNoDer(tableID, i, timeScaled, nextTimeEventScaled, pre(nextTimeEventScaled), tableOnFileRead); | y[i] = p_offset[i] + getTableValueNoDer(tableID, i, time, nextTimeEvent, pre(nextTimeEvent), tableOnFileRead);
end for; ... for i in 1:nout loop
y[i] = p_offset[i] + getTableValue(tableID, i, timeScaled, nextTimeEventScaled, pre(nextTimeEventScaled), tableOnFileRead); | y[i] = p_offset[i] + getTableValue(tableID, i, time, nextTimeEvent, pre(nextTimeEvent), tableOnFileRead);
end for; ...

block ComplexBlocks.Interfaces.ComplexSISO

Component | Version 1 | Version 2
useConjugateInput | Present |
uInternal | Present |

block ComplexBlocks.Interfaces.ComplexSI2SO

Component | Version 1 | Version 2
useConjugateInput1 | Present |
useConjugateInput2 | Present |
u1Internal | Present |
u2Internal | Present |

block ComplexBlocks.Interfaces.ComplexSIMO

Component | Version 1 | Version 2
useConjugateInput | Present |
uInternal | Present |

block ComplexBlocks.Interfaces.ComplexMISO

Component | Version 1 | Version 2
useConjugateInput | Present |
uInternal | Present |

block ComplexBlocks.Interfaces.ComplexMIMO

Component | Version 1 | Version 2
useConjugateInput | Present |
uInternal | Present |

block ComplexBlocks.Interfaces.ComplexMIMOs

Component | Version 1 | Version 2
useConjugateInput | Present |
uInternal | Present |

block ComplexBlocks.Interfaces.ComplexMI2MO

Component | Version 1 | Version 2
useConjugateInput1 | Present |
useConjugateInput2 | Present |
u1Internal | Present |
u2Internal | Present |

block ComplexBlocks.ComplexMath.Gain

Component | Version 1 | Version 2
useConjugateInput | Present |

Equations in Version 1 | Equations in Version 2
y = k*(if useConjugateInput then Modelica.ComplexMath.conj(u) else u); | y = k*u;

block ComplexBlocks.ComplexMath.Sum

Equations in Version 1 | Equations in Version 2
y = k*uInternal; | y = k*u;

block ComplexBlocks.ComplexMath.Feedback

Component | Version 1 | Version 2
useConjugateInput1 | Present |
useConjugateInput2 | Present |

Equations in Version 1 | Equations in Version 2
y = (if useConjugateInput1 then Modelica.ComplexMath.conj(u1) else u1) - (if useConjugateInput1 then Modelica.ComplexMath.conj(u2) else u2); | y = u1 - u2;

block ComplexBlocks.ComplexMath.Add

Equations in Version 1 | Equations in Version 2
y = k1*u1Internal + k2*u2Internal; | y = k1*u1 + k2*u2;

block ComplexBlocks.ComplexMath.Add3

Component | Version 1 | Version 2
useConjugateInput1 | Present |
useConjugateInput2 | Present |
useConjugateInput3 | Present |

Equations in Version 1 | Equations in Version 2
y = k1*(if useConjugateInput1 then Modelica.ComplexMath.conj(u1) else u1) + k2*(if useConjugateInput2 then Modelica.ComplexMath.conj(u2) else u2) + k3*(if useConjugateInput3 then Modelica.ComplexMath.conj(u3) else u3); | y = k1*u1 + k2*u2 + k3*u3;

block ComplexBlocks.ComplexMath.Product

Equations in Version 1 | Equations in Version 2
y = u1Internal*u2Internal; | y = u1*u2;

block ComplexBlocks.ComplexMath.Division

Component | Version 1 | Version 2
useConjugateInput1 | Present |
useConjugateInput2 | Present |

Equations in Version 1 | Equations in Version 2
y = (if useConjugateInput1 then Modelica.ComplexMath.conj(u1) else u1)/( if useConjugateInput2 then Modelica.ComplexMath.conj(u2) else u2); | y = u1/u2;

block ComplexBlocks.ComplexMath.Sqrt

Equations in Version 1 | Equations in Version 2
y = Modelica.ComplexMath.'sqrt'(uInternal); | y = Modelica_3_2_1_Build_4.ComplexMath.'sqrt'(u);

block ComplexBlocks.ComplexMath.Sin

Equations in Version 1 | Equations in Version 2
y = Modelica.ComplexMath.sin(uInternal); | y = Modelica_3_2_1_Build_4.ComplexMath.sin(u);

block ComplexBlocks.ComplexMath.Cos

Equations in Version 1 | Equations in Version 2
y = Modelica.ComplexMath.cos(uInternal); | y = Modelica_3_2_1_Build_4.ComplexMath.cos(u);

block ComplexBlocks.ComplexMath.Tan

Equations in Version 1 | Equations in Version 2
y = Modelica.ComplexMath.tan(uInternal); | y = Modelica_3_2_1_Build_4.ComplexMath.tan(u);

block ComplexBlocks.ComplexMath.Asin

Equations in Version 1 | Equations in Version 2
y = Modelica.ComplexMath.asin(uInternal); | y = Modelica_3_2_1_Build_4.ComplexMath.asin(u);

block ComplexBlocks.ComplexMath.Acos

Equations in Version 1 | Equations in Version 2
y = Modelica.ComplexMath.acos(uInternal); | y = Modelica_3_2_1_Build_4.ComplexMath.acos(u);

block ComplexBlocks.ComplexMath.Atan

Equations in Version 1 | Equations in Version 2
y = Modelica.ComplexMath.atan(uInternal); | y = Modelica_3_2_1_Build_4.ComplexMath.atan(u);

block ComplexBlocks.ComplexMath.Sinh

Equations in Version 1 | Equations in Version 2
y = Modelica.ComplexMath.sinh(uInternal); | y = Modelica_3_2_1_Build_4.ComplexMath.sinh(u);

block ComplexBlocks.ComplexMath.Cosh

Equations in Version 1 | Equations in Version 2
y = Modelica.ComplexMath.cosh(uInternal); | y = Modelica_3_2_1_Build_4.ComplexMath.cosh(u);

block ComplexBlocks.ComplexMath.Tanh

Equations in Version 1 | Equations in Version 2
y = Modelica.ComplexMath.tanh(uInternal); | y = Modelica_3_2_1_Build_4.ComplexMath.tanh(u);

block ComplexBlocks.ComplexMath.Exp

Equations in Version 1 | Equations in Version 2
y = Modelica.ComplexMath.exp(uInternal); | y = Modelica_3_2_1_Build_4.ComplexMath.exp(u);

block ComplexBlocks.ComplexMath.Log

Equations in Version 1 | Equations in Version 2
y = Modelica.ComplexMath.log(uInternal); | y = Modelica_3_2_1_Build_4.ComplexMath.log(u);

block ComplexBlocks.ComplexMath.ComplexToReal

Component | Version 1 | Version 2
useConjugateInput | Present |

Equations in Version 1 | Equations in Version 2
re = u.re;
im = (if useConjugateInput then -u.im else u.im); | im=u.im;

block ComplexBlocks.ComplexMath.ComplexToPolar

Component | Version 1 | Version 2
useConjugateInput | Present |

Equations in Version 1 | Equations in Version 2
len = (u.re^2 + u.im^2)^0.5;
phi = (if useConjugateInput then Modelica.Math.atan2(-u.im, u.re) else Modelica.Math.atan2(u.im, u.re)); | phi = Modelica_3_2_1_Build_4.Math.atan2(u.im, u.re);

model Electrical.Analog.Examples.CauerLowPassAnalog

Equations in Version 1 | Equations in Version 2
... connect(C1.n,G.p);
| connect(R1.n,C2. p);
connect(L1.p,C2.p); ... connect(C2.n,C4.p);
| connect(L1.n,C3. p); connect(L1.n,C4. p); connect(L2.p,C4. p);
connect(C2.n,L2.p);
| connect(C3.p,L2. p);
connect(L2.n,C4.n);
| connect(L2.n,C5. p); connect(L2.n,R2. p); connect(R2.n,G. p);
connect(C4.n,C5.p);
connect(C4.n,R2.p);
| connect(C3.n,G. p); connect(C5.n,G. p);
connect(C1.n,C3.n);
connect(C1.n,C5.n);
| connect(R2.n,C5. n); connect(R2.n,C3. n);
connect(R2.n,C1.n);
| connect(C5.p,R2. p);
connect(R1.p,V.p); ...

model Electrical.Analog.Examples.ShowSaturatingInductor

Component | Version 1 | Version 2
SaturatingInductance1 | i(fixed=true) |
| i(start=0)
Inductance1 | i(fixed=true) |
| i(start=0, fixed=true)

model Electrical.Analog.Examples.SwitchWithArc

Component | Version 1 | Version 2
switch2 | off(fixed=true) |

model Electrical.Analog.Examples.CompareTransformers

Component | Version 1 | Version 2
pi |  | Present

model Electrical.Analog.Examples.ControlledSwitchWithArc

Component | Version 1 | Version 2
inductor1 | i(fixed=true, start=0) |
inductor2 | i(fixed=true, start=0) |
switch2 | off(fixed=true) |

Equations in Version 1 | Equations in Version 2
connect(inductor1.n,resistor1. p); | initial equation
| inductor1.i = 0; inductor2.i = 0; equation connect(inductor1.n,resistor1. p);
connect(resistor1.n,ground1. p); ...

model Electrical.Analog.Basic.SaturatingInductor

Component | Version 1 | Version 2
Psi |  | start=0
| fixed=true

model Electrical.Analog.Basic.M_Transformer

Equations in Version 1 | Equations in Version 2
... for s in 1:N loop
Lm[s,s] = L[(s - 1)*N - div((s - 1)*s, 2) + s]; | for z in 1:N loop
for z in s + 1:N loop | Lm[z,s]= if (z>=s) then L[(s-1)*N+z-div((s-1)*s,2)] else Lm[s,z];
Lm[s,z] = L[(s - 1)*N - div((s - 1)*s, 2) + z]; Lm[z,s] = L[(s - 1)*N - div((s - 1)*s, 2) + z]; |
end for; ...

model Electrical.Analog.Ideal.IdealDiode

Component | Version 1 | Version 2
Ron |  | Present
Goff |  | Present
Vknee |  | Present
off |  | Present
s |  | Present
unitVoltage |  | Present
unitCurrent |  | Present

Equations in Version 1 | Equations in Version 2
off = s < 0;
| v = (s*unitCurrent)*(if off then 1 else Ron) + Vknee; i = (s*unitVoltage)*(if off then Goff else 1) + Goff*Vknee; LossPower = v*i;

model Electrical.Analog.Ideal.IdealThyristor

Component | Version 1 | Version 2
Ron |  | Present
Goff |  | Present
Vknee |  | Present
off |  | Present
s |  | Present
unitVoltage |  | Present
unitCurrent |  | Present

Equations in Version 1 | Equations in Version 2
off = s < 0 or pre(off) and not fire;
| v = (s*unitCurrent)*(if off then 1 else Ron) + Vknee; i = (s*unitVoltage)*(if off then Goff else 1) + Goff*Vknee; LossPower = v*i;

model Electrical.Analog.Ideal.IdealGTOThyristor

Component | Version 1 | Version 2
Ron |  | Present
Goff |  | Present
Vknee |  | Present
off |  | Present
s |  | Present
unitVoltage |  | Present
unitCurrent |  | Present

Equations in Version 1 | Equations in Version 2
off = s < 0 or not fire;
| v = (s*unitCurrent)*(if off then 1 else Ron) + Vknee; i = (s*unitVoltage)*(if off then Goff else 1) + Goff*Vknee; LossPower = v*i;

model Electrical.Analog.Ideal.IdealOpeningSwitch

Component | Version 1 | Version 2
Ron |  | Present
Goff |  | Present
s |  | Present
unitVoltage |  | Present
unitCurrent |  | Present

Equations in Version 1 | Equations in Version 2
off = control; | v = (s*unitCurrent)*(if control then 1 else Ron);
| i = (s*unitVoltage)*(if control then Goff else 1); LossPower = v*i;

model Electrical.Analog.Ideal.IdealClosingSwitch

Component | Version 1 | Version 2
Ron |  | Present
Goff |  | Present
s |  | Present
unitVoltage |  | Present
unitCurrent |  | Present

Equations in Version 1 | Equations in Version 2
off = not control; | v = (s*unitCurrent)*(if control then Ron else 1);
| i = (s*unitVoltage)*(if control then 1 else Goff); LossPower = v*i;

model Electrical.Analog.Ideal.ControlledIdealOpeningSwitch

Component | Version 1 | Version 2
Ron |  | Present
Goff |  | Present
p |  | Present
n |  | Present
s |  | Present
unitVoltage |  | Present
unitCurrent |  | Present

Equations in Version 1 | Equations in Version 2
off = control.v > level; |
control.i = 0;
| 0 = p.i + n.i; p.v - n.v = (s*unitCurrent)*(if (control.v > level) then 1 else Ron); p.i = (s*unitVoltage)*(if (control.v > level) then Goff else 1); LossPower = (p.v - n.v)*p.i;

model Electrical.Analog.Ideal.ControlledIdealClosingSwitch

Component | Version 1 | Version 2
Ron |  | Present
Goff |  | Present
p |  | Present
n |  | Present
s |  | Present
unitVoltage |  | Present
unitCurrent |  | Present

Equations in Version 1 | Equations in Version 2
off = control.v < level; |
control.i = 0;
| 0 = p.i + n.i; p.v - n.v = (s*unitCurrent)*(if (control.v > level) then Ron else 1); p.i = (s*unitVoltage)*(if (control.v > level) then 1 else Goff); LossPower = (p.v - n.v)*p.i;

model Electrical.Analog.Ideal.OpenerWithArc

Component | Version 1 | Version 2
Ron |  | Present
Goff |  | Present
V0 |  | Present
dVdt |  | Present
Vmax |  | Present
off |  | Present
on |  | Present
tSwitch |  | Present
quenched |  | Present

Equations in Version 1 | Equations in Version 2
off = control; | when edge(off) then
| tSwitch = time; end when; quenched = off and (abs(i) <= abs(v)*Goff or pre(quenched)); if on then v = Ron*i; else if quenched then i = Goff*v; else v = min(Vmax, V0 + dVdt*(time - tSwitch))*sign(i); end if; end if; LossPower = v*i;

model Electrical.Analog.Ideal.CloserWithArc

Component | Version 1 | Version 2
Ron |  | Present
Goff |  | Present
V0 |  | Present
dVdt |  | Present
Vmax |  | Present
on |  | Present
off |  | Present
tSwitch |  | Present
quenched |  | Present

Equations in Version 1 | Equations in Version 2
off = not control; | off = not on;
| when edge(off) then tSwitch = time; end when; quenched = off and (abs(i) <= abs(v)*Goff or pre(quenched)); if on then v = Ron*i; else if quenched then i = Goff*v; else v = min(Vmax, V0 + dVdt*(time - tSwitch))*sign(i); end if; end if; LossPower = v*i;

model Electrical.Analog.Ideal.ControlledOpenerWithArc

Component | Version 1 | Version 2
Ron |  | Present
Goff |  | Present
V0 |  | Present
dVdt |  | Present
Vmax |  | Present
p |  | Present
n |  | Present
i |  | Present
v |  | Present
unitVoltage |  | Present
unitCurrent |  | Present
off |  | Present
on |  | Present
tSwitch |  | Present
quenched |  | Present

Equations in Version 1 | Equations in Version 2
off = control.v > level; |
control.i = 0;
| 0 = p.i + n.i; i = p.i; p.v - n.v = v; when edge(off) then tSwitch = time; end when; quenched = off and (abs(i) <= abs(v)*Goff or pre(quenched)); if on then v = Ron*i; else if quenched then i = Goff*v; else v = min(Vmax, V0 + dVdt*(time - tSwitch))*sign(i); end if; end if; LossPower = v*i;

model Electrical.Analog.Ideal.ControlledCloserWithArc

Component | Version 1 | Version 2
Ron |  | Present
Goff |  | Present
V0 |  | Present
dVdt |  | Present
Vmax |  | Present
p |  | Present
n |  | Present
i |  | Present
v |  | Present
unitVoltage |  | Present
unitCurrent |  | Present
off |  | Present
on |  | Present
tSwitch |  | Present
quenched |  | Present

Equations in Version 1 | Equations in Version 2
off = control.v < level; | off = (control.v < level);
control.i = 0;
| 0 = p.i + n.i; i = p.i; p.v - n.v = v; when edge(off) then tSwitch = time; end when; quenched = off and (abs(i) <= abs(v)*Goff or pre(quenched)); if on then v = Ron*i; else if quenched then i = Goff*v; else v = min(Vmax, V0 + dVdt*(time - tSwitch))*sign(i); end if; end if; LossPower = v*i;

model Electrical.Analog.Semiconductors.HeatingDiode

Component | Version 1 | Version 2
q | SIunits.ElectricCharge | Real
constant |
k |  | Present

model Electrical.Analog.Semiconductors.HeatingNPN

Component | Version 1 | Version 2
q | SIunits.ElectricCharge | Real
constant | parameter
protected |
K |  | Present

Equations in Version 1 | Equations in Version 2
... bf_t = Bf*pow((T_heatPort/Tnom), XTB);
vt_t = (k/q)*T_heatPort; | vt_t = (K/q)*T_heatPort;
ibc = smooth(1,(if (vbc/(NR*vt_t) < EMin) then is_t*(ExMin*(vbc/(NR*vt_t) - EMin + 1) - 1) + vbc*Gbc else if (vbc/(NR*vt_t) > EMax) then is_t*( ExMax*(vbc/(NR*vt_t) - EMax + 1) - 1) + vbc*Gbc else is_t*(exp(vbc/ (NR*vt_t)) - 1) + vbc*Gbc)); ...

model Electrical.Analog.Semiconductors.HeatingPNP

Component | Version 1 | Version 2
q | SIunits.ElectricCharge | Real
constant | parameter
protected |
K |  | Present

Equations in Version 1 | Equations in Version 2
... bf_t = Bf*pow((T_heatPort/Tnom), XTB);
vt_t = (k/q)*T_heatPort; | vt_t = (K/q)*T_heatPort;
icb = smooth(1,(if (vcb/(NR*vt_t) < EMin) then is_t*(ExMin*(vcb/(NR*vt_t) - EMin + 1) - 1) + vcb*Gbc else if (vcb/(NR*vt_t) > EMax) then is_t*( ExMax*(vcb/(NR*vt_t) - EMax + 1) - 1) + vcb*Gbc else is_t*(exp(vcb/ (NR*vt_t)) - 1) + vcb*Gbc)); ...

package Electrical.Digital.Tables

Component | Version 1 | Version 2
UX01Conv | Present |

model Electrical.Digital.Registers.DFFR

Component | Version 1 | Version 2
ResetMap | sizes= -1 | sizes= 9

model Electrical.Digital.Registers.DFFREG

Component | Version 1 | Version 2
ResetMap | sizes= -1 | sizes= 9

model Electrical.Digital.Registers.DFFSR

Component | Version 1 | Version 2
ResetSetMap | sizes=, -1-1 | sizes=, 99

model Electrical.Digital.Registers.DFFREGSRH

Component | Version 1 | Version 2
ResetSetMap | sizes=, -1-1 | sizes=, 99

model Electrical.Digital.Registers.DLATR

Component | Version 1 | Version 2
ResetMap | sizes= -1 | sizes= 9

model Electrical.Digital.Registers.DLATREG

Component | Version 1 | Version 2
ResetMap | sizes= -1 | sizes= 9

model Electrical.Digital.Registers.DLATSR

Component | Version 1 | Version 2
ResetSetMap | sizes=, -1-1 | sizes=, 99

model Electrical.Digital.Registers.DLATREGSRH

Component | Version 1 | Version 2
ResetSetMap | sizes=, -1-1 | sizes=, 99

model Electrical.Digital.Tristates.BUF3S

Equations in Version 1 | Equations in Version 2
algorithm
nextstate := T.Buf3sTable[strength, T.UX01Conv[enable], T.UX01Conv[x]]; | nextstate := T.Buf3sTable[strength, T.UX01Table[enable], T.UX01Table[x]];
yy = nextstate; ...

model Electrical.Digital.Tristates.BUF3SL

Equations in Version 1 | Equations in Version 2
algorithm
nextstate := T.Buf3slTable[strength, T.UX01Conv[enable], T.UX01Conv[x]]; | nextstate := T.Buf3slTable[strength, T.UX01Table[enable], T.UX01Table[x]];
yy = nextstate; ...

model Electrical.Digital.Tristates.INV3S

Equations in Version 1 | Equations in Version 2
algorithm
nextstate := T.Buf3sTable[strength, T.UX01Conv[enable], T.UX01Conv[T.NotTable[x]]]; | nextstate := T.Buf3sTable[strength, T.UX01Table[enable], T.NotTable[x]];
yy = nextstate; ...

model Electrical.Digital.Tristates.INV3SL

Equations in Version 1 | Equations in Version 2
algorithm
nextstate := T.Buf3sTable[strength, T.UX01Conv[T.NotTable[enable]], T.UX01Conv[T.NotTable[x]]]; | nextstate := T.Buf3sTable[strength, T.NotTable[enable], T.NotTable[x]];
yy = nextstate; ...

model Electrical.Digital.Multiplexers.MUX2x1

Equations in Version 1 | Equations in Version 2
algorithm
nextstate := T.MUX2x1Table[T.UX01Conv[in1], T.UX01Conv[sel], T.UX01Conv[in0]]; | nextstate := T.MUX2x1Table[T.UX01Table[in1], T.UX01Table[sel], T.UX01Table[in0]];
nextstate = T.StrengthMap[nextstate, strength]; ...

model Electrical.Machines.Examples.AsynchronousInductionMachines.AIMC_DOL

Component | Version 1 | Version 2
wLoad | displayUnit="rev/min" | displayUnit="1/min"

model Electrical.Machines.Examples.AsynchronousInductionMachines.AIMC_YD

Component | Version 1 | Version 2
wLoad | displayUnit="rev/min" | displayUnit="1/min"

model Electrical.Machines.Examples.AsynchronousInductionMachines.AIMC_Transformer

Component | Version 1 | Version 2
wLoad | displayUnit="rev/min" | displayUnit="1/min"

model Electrical.Machines.Examples.AsynchronousInductionMachines.AIMS_Start

Component | Version 1 | Version 2
wLoad | displayUnit="rev/min" | displayUnit="1/min"

model Electrical.Machines.Examples.AsynchronousInductionMachines.AIMC_Steinmetz

Component | Version 1 | Version 2
wSwitch | displayUnit="rev/min" | displayUnit="1/min"
wLoad | displayUnit="rev/min" | displayUnit="1/min"

model Electrical.Machines.Examples.AsynchronousInductionMachines.AIMC_withLosses

Component | Version 1 | Version 2
w_sim | displayUnit="rev/min" | displayUnit="1/min"

model Electrical.Machines.Examples.AsynchronousInductionMachines.AIMC_Initialize

Component | Version 1 | Version 2
wLoad | displayUnit="rev/min" | displayUnit="1/min"

model Electrical.Machines.Examples.SynchronousInductionMachines.SMPM_CurrentSource

Component | Version 1 | Version 2
iq | k=Idq[2] | k=84.6
id | k=Idq[1] | k=-53.5
inertiaLoad | J=JLoad | J=0.29
quadraticSpeedDependentTorque | tau_nominal=-TLoad | tau_nominal=-181.4
w_nominal(displayUnit="rad/s") = wNominal | w_nominal(displayUnit="rpm") = 157.07963267949
Idq | Present |
wNominal | Present |
VNominal |  | Present
fNominal |  | Present
f |  | Present
tRamp |  | Present
tStep |  | Present

model Electrical.Machines.Examples.SynchronousInductionMachines.SMPM_VoltageSource

Component | Version 1 | Version 2
iq | k=Idq[2] | k=84.6
id | k=Idq[1] | k=-53.5
inertiaLoad | J=JLoad | J=0.29
quadraticSpeedDependentTorque | tau_nominal=-TLoad | tau_nominal=-181.4
w_nominal(displayUnit="rad/s") = wNominal | w_nominal(displayUnit="rpm") = 157.07963267949
Idq | Present |
wNominal | Present |
VNominal |  | Present
fNominal |  | Present
f |  | Present
tRamp |  | Present
tStep |  | Present

model Electrical.Machines.Examples.SynchronousInductionMachines.SMEE_Generator

Component | Version 1 | Version 2
wActual | displayUnit="rev/min" | displayUnit="1/min"

model Electrical.Machines.Examples.SynchronousInductionMachines.SMEE_LoadDump

Component | Version 1 | Version 2
switch | closerWithArc(off(start=fill(true, m), fixed=fill(true, m))) |

model Electrical.Machines.Examples.DCMachines.DCSE_Start

Component | Version 1 | Version 2
wLoad | displayUnit="rev/min" | displayUnit="1/min"

model Electrical.Machines.Examples.DCMachines.DCSE_SinglePhase

Component | Version 1 | Version 2
wLoad | displayUnit="rev/min" | displayUnit="1/min"

model Electrical.Machines.Examples.DCMachines.DCPM_Cooling

Equations in Version 1 | Equations in Version 2
... connect(volumeFlow.flowPort_b, cooling.flowPort_a);
| connect(dcpm.thermalPort, thermalPort);
connect(armature.port, thermalPort.heatPortArmature); ... connect(fixedTemperature.port, thermalPort.heatPortPermanentMagnet);
connect(dcpm.thermalPort, thermalPort); |

model Electrical.Machines.BasicMachines.AsynchronousInductionMachines.AIM_SquirrelCage

Component | Version 1 | Version 2
ir | =squirrelCageR.i | =-squirrelCageR.spacePhasor_r.i_

model Electrical.Machines.BasicMachines.Components.SquirrelCage

Component | Version 1 | Version 2
i | Present |

model Electrical.Machines.Sensors.VoltageQuasiRMSSensor

Component | Version 1 | Version 2
ToSpacePhasor1 | m=m |

model Electrical.Machines.Sensors.CurrentQuasiRMSSensor

Component | Version 1 | Version 2
ToSpacePhasor1 | m=m |

model Electrical.Machines.Sensors.RotorDisplacementAngle

Component | Version 1 | Version 2
m | parameter | constant
ToSpacePhasorVS | final m=m |
deMultiplex2 |  | Present

Equations in Version 1 | Equations in Version 2
... connect(add.y, rotatorVS2R.angle);
connect(ToPolarVSR.y[2], rotorDisplacementAngle); | connect(ToPolarVSR.y, deMultiplex2.u);
| connect(deMultiplex2.y2[1], rotorDisplacementAngle);

model Electrical.Machines.SpacePhasors.Components.SpacePhasor

Component | Version 1 | Version 2
pi |  | Present

model Electrical.Machines.SpacePhasors.Components.Rotator

Component | Version 1 | Version 2
pi |  | Present

block Electrical.Machines.SpacePhasors.Blocks.ToSpacePhasor

Component | Version 1 | Version 2
m | parameter | constant
min=1 |
TransformationMatrix | =2/m*{+cos(+phi),+sin(+phi)} | =2/m*{{cos(+(k - 1)/m*2*pi) for k in 1:m},{+sin(+(k - 1)/m*2*pi) for k in 1:m}}
InverseTransformation | ={{+cos(-phi[k]),-sin(-phi[k])} for k in 1:m} | ={{cos(-(k - 1)/m*2*pi),-sin(-(k - 1)/m*2*pi)} for k in 1:m}
phi | Present |
pi |  | Present

block Electrical.Machines.SpacePhasors.Blocks.FromSpacePhasor

Component | Version 1 | Version 2
m | parameter | constant
min=1 |
TransformationMatrix | =2/m*{+cos(+phi),+sin(+phi)} | =2/m*{{cos(+(k - 1)/m*2*pi) for k in 1:m},{+sin(+(k - 1)/m*2*pi) for k in 1:m}}
InverseTransformation | ={{+cos(-phi[k]),-sin(-phi[k])} for k in 1:m} | ={{cos(-(k - 1)/m*2*pi),-sin(-(k - 1)/m*2*pi)} for k in 1:m}
phi | Present |
pi |  | Present

function Electrical.Machines.SpacePhasors.Functions.ToSpacePhasor

Component | Version 1 | Version 2
x | sizes= -1 | sizes= 3
m | parameter | constant
=size(x, 1) | =3
phi | Present |
TransformationMatrix | Present |
InverseTransformation | Present |
pi |  | Present

Equations in Version 1 | Equations in Version 2
algorithm
y := TransformationMatrix*x; | y := zeros(2);
y0 = 1/m*sum(x); | for k in 1:m loop
| y = y + 2/m*{+cos((k - 1)/m*2*pi),+sin(+(k - 1)/m*2*pi)}*x[k];
| end for; y0 = 1/m*sum(x);

function Electrical.Machines.SpacePhasors.Functions.FromSpacePhasor

Component | Version 1 | Version 2
m |  | constant
| protected
input |
| =3
y | sizes= -1 | sizes= 3
phi | Present |
TransformationMatrix | Present |
InverseTransformation | Present |
pi |  | Present

Equations in Version 1 | Equations in Version 2
algorithm
y := fill(x0, m) + InverseTransformation*x; | for k in 1:m loop
| y[k] = x0 + {cos(-(k - 1)/m*2*pi),-sin(-(k - 1)/m*2*pi)}*x;
| end for;

function Electrical.Machines.SpacePhasors.Functions.FromPolar

Component | Version 1 | Version 2
pi |  | Present

function Electrical.Machines.SpacePhasors.Functions.quasiRMS

Component | Version 1 | Version 2
m |  | constant
=size(x, 1) | =3
h | =TransformationMatrix*x |
phi | Present |
TransformationMatrix | Present |
pi |  | Present

Equations in Version 1 | Equations in Version 2
algorithm
y := sqrt(h[1]^2 + h[2]^2)/sqrt(2); | h := zeros(2);
| for k in 1:m loop
| h = h + 2/m*{+cos((k - 1)/m*2*pi),+sin(+(k - 1)/m*2*pi)}*x[k]; end for; y = sqrt(h[1]^2 + h[2]^2)/sqrt(2);

function Electrical.Machines.SpacePhasors.Functions.activePower

Component | Version 1 | Version 2
pi |  | Present

record Electrical.Machines.Losses.FrictionParameters

Component | Version 1 | Version 2
wRef | displayUnit="rev/min" | displayUnit="1/min"

record Electrical.Machines.Losses.StrayLoadParameters

Component | Version 1 | Version 2
wRef | displayUnit="rev/min" | displayUnit="1/min"

record Electrical.Machines.Losses.PermanentMagnetLossParameters

Component | Version 1 | Version 2
wRef | displayUnit="rev/min" | displayUnit="1/min"

model Electrical.Machines.Interfaces.PartialBasicMachine

Component | Version 1 | Version 2
Js | =Jr |
| start=Jr
wMechanical | displayUnit="rev/min" | displayUnit="1/min"
pi |  | Present

model Electrical.Machines.Interfaces.PartialBasicInductionMachine

Component | Version 1 | Version 2
pi | Present |

Equations in Version 1 | Equations in Version 2
connect(spacePhasorS.plug_n, plug_sn);
| connect(thermalPort, internalThermalPort); connect(thermalAmbient.thermalPort, internalThermalPort);
connect(strayLoad.plug_n, rs.plug_p); ... connect(strayLoad.flange, inertiaRotor.flange_b);
connect(internalThermalPort, thermalPort); connect(thermalAmbient.thermalPort, internalThermalPort); |

model Electrical.Machines.Interfaces.PartialBasicDCMachine

Component | Version 1 | Version 2
wNominal | displayUnit="rev/min" | displayUnit="1/min"
pi | Present |

Equations in Version 1 | Equations in Version 2
... connect(la.p, ra.n);
| connect(thermalPort, internalThermalPort); connect(thermalAmbient.thermalPort, internalThermalPort);
connect(brush.n, pin_an); ... connect(inertiaRotor.flange_b, strayLoad.flange);
connect(thermalAmbient.thermalPort, internalThermalPort); connect(internalThermalPort, thermalPort); |

record Electrical.Machines.Utilities.ParameterRecords.DcPermanentMagnetData

Component | Version 1 | Version 2
wNominal | displayUnit="rev/min" | displayUnit="1/min"

block Electrical.Machines.Utilities.VfController

Component | Version 1 | Version 2
pi |  | Present

block Electrical.Machines.Utilities.ToDQ

Component | Version 1 | Version 2
toSpacePhasor | final m=m |
m | Present |
rotator | Present |
rotator2 |  | Present
y |  | Present
u |  | Present

Equations in Version 1 | Equations in Version 2
connect(phi, toGamma.u);
connect(rotator.angle, toGamma.y); | connect(rotator2.angle, toGamma.y);
connect(toSpacePhasor.y, rotator.u); | connect(rotator2.y, y);
connect(u, toSpacePhasor.u);
connect(rotator.y, y); | connect(toSpacePhasor.y, rotator2.u);

block Electrical.Machines.Utilities.FromDQ

Component | Version 1 | Version 2
fromSpacePhasor | final m=m |
m | Present |
rotator | Present |
rotator2 |  | Present
y |  | Present
u |  | Present

Equations in Version 1 | Equations in Version 2
connect(phi, toGamma.u);
connect(rotator.angle, toGamma.y); | connect(rotator2.angle, toGamma.y);
connect(rotator.y, fromSpacePhasor.u); | connect(rotator2.y, fromSpacePhasor.u);
connect(i0.y, fromSpacePhasor.zero);
connect(u, rotator.u); |
connect(fromSpacePhasor.y, y);
| connect(rotator2.u, u);

model Electrical.MultiPhase.Ideal.IdealThyristor

Component | Version 1 | Version 2
off | =idealThyristor.off |
| start=fill(true, m)

Equations in Version 1 | Equations in Version 2
| off = idealThyristor.off;
connect(plug_p.pin, idealThyristor.p); ...

model Electrical.QuasiStationary.SinglePhase.Examples.SeriesResonance

Component | Version 1 | Version 2
voltageSource | gamma(fixed=true, start=0) |
I_abs | Present |
I_arg | Present |

Equations in Version 1 | Equations in Version 2
connect(f.y, voltageSource.f); | initial equation
| voltageSource.pin_p.reference.gamma = 0; equation connect(f.y, voltageSource.f);
connect(polarToComplex.y, voltageSource.V); ...

model Electrical.QuasiStationary.SinglePhase.Examples.ParallelResonance

Component | Version 1 | Version 2
currentSource | gamma(fixed=true, start=0) |
V_abs | Present |
V_arg | Present |

Equations in Version 1 | Equations in Version 2
connect(currentSource.pin_n, resistor.pin_p); | initial equation
| currentSource.pin_p.reference.gamma = 0; equation connect(currentSource.pin_n, resistor.pin_p);
connect(currentSource.pin_n, inductor.pin_p); ...

model Electrical.QuasiStationary.SinglePhase.Examples.Rectifier

Component | Version 1 | Version 2
voltageQS | gamma(fixed=true, start=0) |
Itr | Present |
Iqs | Present |

Equations in Version 1 | Equations in Version 2
connect(voltageQS.pin_p, resistorQS.pin_p); | initial equation
| voltageQS.pin_p.reference.gamma = 0; equation connect(voltageQS.pin_p, resistorQS.pin_p);
connect(voltageQS.pin_n, rectifierQS.pin_nQS); ...

model Electrical.QuasiStationary.SinglePhase.Sensors.PotentialSensor

Component | Version 1 | Version 2
abs_y | Present |
arg_y | Present |

model Electrical.QuasiStationary.SinglePhase.Sensors.VoltageSensor

Component | Version 1 | Version 2
abs_y | Present |
arg_y | Present |

model Electrical.QuasiStationary.SinglePhase.Sensors.CurrentSensor

Component | Version 1 | Version 2
abs_y | Present |
arg_y | Present |

model Electrical.QuasiStationary.SinglePhase.Sensors.PowerSensor

Component | Version 1 | Version 2
abs_y | Present |
arg_y | Present |

model Electrical.QuasiStationary.SinglePhase.Interfaces.TwoPin

Component | Version 1 | Version 2
abs_v | Present |
arg_v | Present |
abs_i | Present |
arg_i | Present |
P | Present |
Q | Present |
S | Present |
pf | Present |

model Electrical.QuasiStationary.SinglePhase.Interfaces.Source

Component | Version 1 | Version 2
gamma | Present |

model Electrical.QuasiStationary.Machines.Examples.TransformerTestbench

Component | Version 1 | Version 2
source | gamma(fixed=true, start=0) |
polarIS |  | sizes= -1
polarVS |  | sizes= -1
polarVL |  | sizes= -1
polarIL |  | sizes= -1
VS | Present |
phiS | Present |
VL | Present |
phiL | Present |
symmetricalComponentsIS | Present |
symmetricalComponentsIL | Present |
symmetricalComponentsVS | Present |
symmetricalComponentsVL | Present |

Equations in Version 1 | Equations in Version 2
connect(starS.pin_n, groundS.pin); | initial equation
| source.voltageSource.pin_p.reference.gamma=zeros(m); equation connect(starS.pin_n, groundS.pin);
connect(source.plug_n, starS.plug_p); ... connect(currentSensorL.plug_p, deltaL.plug_n);
connect(symmetricalComponentsIS.u, currentSensorS.y); | connect(polarIS.u, currentSensorS.y);
connect(symmetricalComponentsIL.u, currentSensorL.y); | connect(polarIL.u, currentSensorL.y);
connect(symmetricalComponentsIS.y[1], polarIS.u); | connect(voltageSensorS.y, polarVS.u);
connect(symmetricalComponentsIL.y[1], polarIL.u); | connect(voltageSensorL.y, polarVL.u);
connect(voltageSensorS.y, symmetricalComponentsVS.u); connect(symmetricalComponentsVS.y[1], polarVS.u); connect(voltageSensorL.y, symmetricalComponentsVL.u); connect(symmetricalComponentsVL.y[1], polarVL.u); |

model Electrical.QuasiStationary.MultiPhase.Examples.BalancingStar

Component | Version 1 | Version 2
m | constant | parameter
voltageSource | gamma(fixed=true, start=0) |
i | Present |
complexToPolar | Present |

Equations in Version 1 | Equations in Version 2
connect(ground.pin, star.pin_n); | initial equation
| voltageSource.voltageSource.pin_p.reference.gamma = zeros(m); equation connect(ground.pin, star.pin_n);
connect(star.plug_p, voltageSource.plug_n); ... connect(currentSensor0.pin_n, star.pin_n);
connect(currentSensor.y, complexToPolar.u); |

model Electrical.QuasiStationary.MultiPhase.Examples.BalancingDelta

Component | Version 1 | Version 2
voltageSource | gamma(fixed=true, start=0) |
i | Present |

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

model Electrical.QuasiStationary.MultiPhase.Sensors.PotentialSensor

Component | Version 1 | Version 2
abs_y | Present |
arg_y | Present |

model Electrical.QuasiStationary.MultiPhase.Sensors.VoltageSensor

Component | Version 1 | Version 2
abs_y | Present |
arg_y | Present |

model Electrical.QuasiStationary.MultiPhase.Sensors.CurrentSensor

Component | Version 1 | Version 2
abs_y | Present |
arg_y | Present |

model Electrical.QuasiStationary.MultiPhase.Sensors.PowerSensor

Component | Version 1 | Version 2
abs_y | Present |
arg_y | Present |

model Electrical.QuasiStationary.MultiPhase.Sources.VoltageSource

Component | Version 1 | Version 2
voltageSource |  | Present

Equations in Version 1 | Equations in Version 2
omega = 2*Modelica.Constants.pi*f; | connect(plugToPins_p.pin_p, voltageSource.pin_p);
v = {V[k]*exp(j*phi[k]) for k in 1:m}; | connect(voltageSource.pin_n, plugToPins_n.pin_n);

model Electrical.QuasiStationary.MultiPhase.Sources.VariableVoltageSource

Component | Version 1 | Version 2
variableVoltageSource |  | Present

Equations in Version 1 | Equations in Version 2
omega = 2*Modelica.Constants.pi*f; | for j in 1:m loop
v = V; | connect(f, variableVoltageSource[j].f);
| end for; connect(plugToPins_p.pin_p, variableVoltageSource.pin_p); connect(variableVoltageSource.pin_n, plugToPins_n.pin_n); connect(V, variableVoltageSource.V);

model Electrical.QuasiStationary.MultiPhase.Sources.CurrentSource

Component | Version 1 | Version 2
currentSource |  | Present

Equations in Version 1 | Equations in Version 2
omega = 2*Modelica.Constants.pi*f; | connect(plugToPins_p.pin_p, currentSource.pin_p);
i = {I[k]*exp(j*phi[k]) for k in 1:m}; | connect(currentSource.pin_n, plugToPins_n.pin_n);

model Electrical.QuasiStationary.MultiPhase.Sources.VariableCurrentSource

Component | Version 1 | Version 2
variableCurrentSource |  | Present

Equations in Version 1 | Equations in Version 2
omega = 2*Modelica.Constants.pi*f; | for j in 1:m loop
i = I; | connect(f, variableCurrentSource[j].f);
| end for; connect(plugToPins_p.pin_p, variableCurrentSource.pin_p); connect(variableCurrentSource.pin_n, plugToPins_n.pin_n); connect(I, variableCurrentSource.I);

model Electrical.QuasiStationary.MultiPhase.Interfaces.TwoPlug

Component | Version 1 | Version 2
abs_v | Present |
arg_v | Present |
abs_i | Present |
arg_i | Present |
P | Present |
P_total | Present |
Q | Present |
Q_total | Present |
S | Present |
S_total | Present |
pf | Present |

model Electrical.QuasiStationary.MultiPhase.Interfaces.OnePort

Component | Version 1 | Version 2
abs_v | Present |
arg_v | Present |
abs_i | Present |
arg_i | Present |
P | Present |
P_total | Present |
Q | Present |
Q_total | Present |
S | Present |
S_total | Present |
pf | Present |

model Electrical.QuasiStationary.MultiPhase.Interfaces.Source

Component | Version 1 | Version 2
gamma | Present |

Equations in Version 1 | Equations in Version 2
Connections.root(plug_p.reference); |

model Electrical.Spice3.Sources.V_sin

Component | Version 1 | Version 2
pi |  | Present

model Electrical.Spice3.Sources.V_sffm

Component | Version 1 | Version 2
pi |  | Present

model Electrical.Spice3.Sources.I_sin

Component | Version 1 | Version 2
pi |  | Present

model Electrical.Spice3.Sources.I_sffm

Component | Version 1 | Version 2
pi |  | Present

model Electrical.Spice3.Internal.MOS

Equations in Version 1 | Equations in Version 2
assert( NRD > 0, "NRD, length of drain in squares, must be greater than zero"); | assert( NRD <> 0, "NRD, length of drain in squares, must not be zero");
assert( NRS > 0, "NRS, length of source in squares, must be greater than zero"); | assert( NRS <> 0, "NRS, length of source in squares, must not be zero");
vDS = D.v - S.v; ...

model Electrical.Spice3.Internal.MOS2

Equations in Version 1 | Equations in Version 2
assert( NRD > 0, "NRD, length of drain in squares, must be greater than zero"); | assert( NRD <> 0, "NRD, length of drain in squares, must not be zero");
assert( NRS > 0, "NRS, length of source in squares, must be greater than zero"); | assert( NRS <> 0, "NRS, length of source in squares, must not be zero");
cc = Spice3.Internal.Mos.mos2CalcNoBypassCodeRevised( m1, m_type, c22, p1, m_bInit, {G.v,B.v,Dinternal,Sinternal}); ...

model Electrical.Spice3.Internal.C_SEMI

Equations in Version 1 | Equations in Version 2
... if (cp.m_dCapIsGiven < 0.5) then
assert( L > 0, "Length of capacitor must be greater than zero"); | assert( L > 0, "Length of capacitor must be greater then zero");
end if; ...

record Electrical.Spice3.Internal.SpiceConstants

Component | Version 1 | Version 2
CONSTvt0 | =Modelica.Constants.k*SI.Conversions.from_degC(27)/CHARGE | =Modelica_3_2_1_Build_4.Constants.k*Modelica_3_2_1_Build_4.SIunits.Conversions.from_degC(27)/CHARGE

model Magnetic.FluxTubes.Examples.SaturatedInductor

Component | Version 1 | Version 2
r_mFe | material=Material.SoftMagnetic.ElectricSheet.M350_50A() | material=Modelica_3_2_1_Build_4.Magnetic.FluxTubes.Material.SoftMagnetic.ElectricSheet.M350_50A()

model Magnetic.FluxTubes.Examples.MovingCoilActuator.ForceCurrentBehaviour

Component | Version 1 | Version 2
pmActuator | material=Material.HardMagnetic.PlasticNdFeB() | material=Modelica_3_2_1_Build_4.Magnetic.FluxTubes.Material.HardMagnetic.PlasticNdFeB()

model Magnetic.FluxTubes.Examples.MovingCoilActuator.ForceStrokeBehaviour

Component | Version 1 | Version 2
actuator | material=Material.HardMagnetic.PlasticNdFeB() | material=Modelica_3_2_1_Build_4.Magnetic.FluxTubes.Material.HardMagnetic.PlasticNdFeB()

model Magnetic.FluxTubes.Examples.MovingCoilActuator.ArmatureStroke

Component | Version 1 | Version 2
pmActuator | material=Material.HardMagnetic.PlasticNdFeB() | material=Modelica_3_2_1_Build_4.Magnetic.FluxTubes.Material.HardMagnetic.PlasticNdFeB()

model Magnetic.FluxTubes.Examples.MovingCoilActuator.Components.PermeanceActuator

Component | Version 1 | Version 2
material | =Material.HardMagnetic.BaseData() | =Modelica_3_2_1_Build_4.Magnetic.FluxTubes.Material.HardMagnetic.BaseData()

model Magnetic.FluxTubes.Examples.SolenoidActuator.Components.SimpleSolenoid

Component | Version 1 | Version 2
material | =Material.SoftMagnetic.Steel.Steel_9SMnPb28() | =Modelica_3_2_1_Build_4.Magnetic.FluxTubes.Material.SoftMagnetic.Steel.Steel_9SMnPb28()

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

Component | Version 1 | Version 2
material | =Material.SoftMagnetic.Steel.Steel_9SMnPb28() | =Modelica_3_2_1_Build_4.Magnetic.FluxTubes.Material.SoftMagnetic.Steel.Steel_9SMnPb28()

model Magnetic.FluxTubes.Basic.EddyCurrent

Component | Version 1 | Version 2
useConductance | Present |
G | Present |

Equations in Version 1 | Equations in Version 2
LossPower = V_m*der(Phi);
V_m =(if useConductance then G else 1/R) * der(Phi); | V_m = 1/R*der(Phi);

model Magnetic.FluxTubes.Interfaces.PartialFixedShape

Component | Version 1 | Version 2
material | =Material.SoftMagnetic.BaseData() | =Modelica_3_2_1_Build_4.Magnetic.FluxTubes.Material.SoftMagnetic.BaseData()
B_N | Present |

Equations in Version 1 | Equations in Version 2
B_N = abs(B/material.B_myMax); | mu_r = if nonLinearPermeability then Modelica_3_2_1_Build_4.Magnetic.FluxTubes.Material.SoftMagnetic.mu_rApprox( B, material.mu_i, material.B_myMax, material.c_a, material.c_b, material.n) else mu_rConst;
mu_r = if nonLinearPermeability then 1 + (material.mu_i - 1 + material.c_a*B_N)/(1 + material.c_b*B_N + B_N^material.n) else mu_rConst; |
R_m = 1/G_m; ...

model Magnetic.FundamentalWave.Examples.BasicMachines.AIMC_DOL

Component | Version 1 | Version 2
w_Load | displayUnit="rev/min" | displayUnit="1/min"

Equations in Version 1 | Equations in Version 2
... aimcM.is = zeros(m);
aimcM.rotorCage.electroMagneticConverter.Phi = Complex(0, 0); | aimcM.ir[1:2] = zeros(2);
...

model Magnetic.FundamentalWave.Examples.BasicMachines.AIMC_DOL_MultiPhase

Component | Version 1 | Version 2
w_Load | displayUnit="rev/min" | displayUnit="1/min"

Equations in Version 1 | Equations in Version 2
... aimcM.is[1:2] = zeros(2);
aimcM.rotorCage.electroMagneticConverter.Phi = Complex(0, 0); | aimcM.ir[1:m - 1] = zeros(m - 1);
...

model Magnetic.FundamentalWave.Examples.BasicMachines.AIMS_Start

Component | Version 1 | Version 2
w_Load | displayUnit="rev/min" | displayUnit="1/min"

model Magnetic.FundamentalWave.Examples.BasicMachines.AIMS_Start_MultiPhase

Component | Version 1 | Version 2
w_Load | displayUnit="rev/min" | displayUnit="1/min"

model Magnetic.FundamentalWave.Examples.BasicMachines.SMPM_Inverter

Component | Version 1 | Version 2
smpmM | ir(fixed=true) |
| ir(each fixed=true)
smpmE | ir(fixed=true) |
| ir(each fixed=true)

model Magnetic.FundamentalWave.Examples.BasicMachines.SMPM_Inverter_MultiPhase

Component | Version 1 | Version 2
smpmM | ir(fixed=true) |
| ir(each fixed=true)
smpm3 | ir(fixed=true) |
| ir(each fixed=true)

model Magnetic.FundamentalWave.Examples.BasicMachines.SMEE_Generator_MultiPhase

Component | Version 1 | Version 2
smeeM | ir(fixed=true) |
| ir(each fixed=true)
smee3 | ir(fixed=true) |
| ir(each fixed=true)

model Magnetic.FundamentalWave.Examples.BasicMachines.SMR_Inverter

Component | Version 1 | Version 2
smrM | ir(fixed=true) |
| ir(each fixed=true)
smrE | ir(fixed=true) |
| ir(each fixed=true)

model Magnetic.FundamentalWave.Examples.BasicMachines.SMR_Inverter_MultiPhase

Component | Version 1 | Version 2
smrM | ir(fixed=true) |
| ir(each fixed=true)
smr3 | ir(fixed=true) |
| ir(each fixed=true)

model Magnetic.FundamentalWave.Components.SinglePhaseElectroMagneticConverter

Component | Version 1 | Version 2
abs_V_m | Present |
arg_V_m | Present |
abs_Phi | Present |
arg_Phi | Present |

model Magnetic.FundamentalWave.Components.MultiPhaseElectroMagneticConverter

Component | Version 1 | Version 2
abs_V_m | Present |
arg_V_m | Present |
abs_Phi | Present |
arg_Phi | Present |

model Magnetic.FundamentalWave.BasicMachines.AsynchronousInductionMachines.AIM_SquirrelCage

Component | Version 1 | Version 2
ir | =rotorCage.i | =rotorCage.winding.plug_p.pin.i

model Magnetic.FundamentalWave.BasicMachines.Components.SinglePhaseWinding

Component | Version 1 | Version 2
v | Present |
i | Present |
V_m | Present |
abs_V_m | Present |
arg_V_m | Present |
Phi | Present |
abs_Phi | Present |
arg_Phi | Present |

model Magnetic.FundamentalWave.BasicMachines.Components.SymmetricMultiPhaseWinding

Component | Version 1 | Version 2
v | Present |
i | Present |
V_m | Present |
abs_V_m | Present |
arg_V_m | Present |
Phi | Present |
abs_Phi | Present |
arg_Phi | Present |

model Magnetic.FundamentalWave.BasicMachines.Components.SymmetricMultiPhaseCageWinding

Component | Version 1 | Version 2
i | =electroMagneticConverter.i | =strayInductor.i
electroMagneticConverter | Present |
strayReluctance | Present |
winding |  | Present
strayInductor |  | Present

Equations in Version 1 | Equations in Version 2
connect(port_p, electroMagneticConverter.port_p); | connect(port_p, winding.port_p);
connect(electroMagneticConverter.port_n, port_n); | connect(winding.port_n, port_n);
connect(ground.p, star.pin_n);
connect(star.plug_p, electroMagneticConverter.plug_n); | connect(strayInductor.plug_n, resistor.plug_p);
| connect(strayInductor.plug_p, winding.plug_p); connect(star.plug_p, winding.plug_n);
connect(thermalCollector.port_a, resistor.heatPort); ... connect(resistor.plug_n, starAuxiliary.plug_p);
connect(strayReluctance.port_p, port_p); connect(strayReluctance.port_n, port_n); connect(electroMagneticConverter.plug_p, resistor.plug_p); |

model Magnetic.FundamentalWave.BasicMachines.Components.SaliencyCageWinding

Component | Version 1 | Version 2
i | =electroMagneticConverter.i | =-strayInductor.i
electroMagneticConverter | Present |
strayReluctance | Present |
winding |  | Present
strayInductor |  | Present

Equations in Version 1 | Equations in Version 2
connect(port_p, electroMagneticConverter.port_p); | connect(port_p, winding.port_p);
connect(electroMagneticConverter.port_n, port_n); | connect(winding.port_n, port_n);
connect(ground.p, star.pin_n);
connect(electroMagneticConverter.plug_n, resistor.plug_n); | connect(strayInductor.plug_n, resistor.plug_p);
connect(star.plug_p, electroMagneticConverter.plug_n); | connect(winding.plug_n, resistor.plug_n);
| connect(star.plug_p, winding.plug_n); connect(strayInductor.plug_p, winding.plug_p);
connect(thermalCollector.port_b, heatPortWinding);
connect(resistor.heatPort, thermalCollector.port_a);
connect(electroMagneticConverter.plug_p, resistor.plug_p); connect(strayReluctance.port_p, port_p); connect(strayReluctance.port_n, port_n); |

model Magnetic.FundamentalWave.Sources.ConstantMagneticPotentialDifference

Component | Version 1 | Version 2
abs_V_m | Present |
arg_V_m | Present |
abs_Phi | Present |
arg_Phi | Present |

model Magnetic.FundamentalWave.Sources.SignalMagneticPotentialDifference

Component | Version 1 | Version 2
abs_V_m | Present |
arg_V_m | Present |
abs_Phi | Present |
arg_Phi | Present |

model Magnetic.FundamentalWave.Sources.ConstantFlux

Component | Version 1 | Version 2
abs_V_m | Present |
arg_V_m | Present |
abs_Phi | Present |
arg_Phi | Present |

model Magnetic.FundamentalWave.Sources.SignalFlux

Component | Version 1 | Version 2
abs_V_m | Present |
arg_V_m | Present |
abs_Phi | Present |
arg_Phi | Present |

model Magnetic.FundamentalWave.Interfaces.PartialTwoPortElementary

Component | Version 1 | Version 2
abs_V_m | Present |
arg_V_m | Present |
abs_Phi | Present |
arg_Phi | Present |

model Magnetic.FundamentalWave.Interfaces.PartialBasicInductionMachine

Component | Version 1 | Version 2
wMechanical | displayUnit="rev/min" | displayUnit="1/min"
pi | Real | SIunits.Angle
protected |

Equations in Version 1 | Equations in Version 2
... equation connect(stator.plug_n, plug_sn);
| connect(thermalPort, internalThermalPort); connect(thermalAmbient.thermalPort, internalThermalPort);
connect(inertiaRotor.flange_b, flange); ... connect(stator.heatPortCore, internalThermalPort.heatPortStatorCore);
connect(thermalAmbient.thermalPort, internalThermalPort); connect(internalThermalPort, thermalPort); |

model Mechanics.MultiBody.Examples.Loops.Utilities.GasForce

Component | Version 1 | Version 2
pi |  | Present

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

Component | Version 1 | Version 2
pi |  | Present

model Mechanics.MultiBody.Examples.Rotational3DEffects.MovingActuatedDrive

Component | Version 1 | Version 2
mounting1D1 | n={0,1,0} |
mounting1D2 | n={0,1,0} |

model Mechanics.MultiBody.Examples.Rotational3DEffects.GearConstraint

Component | Version 1 | Version 2
gearConstraint | checkTotalPower=true |

model Mechanics.MultiBody.Joints.GearConstraint

Component | Version 1 | Version 2
checkTotalPower | Present |
totalPower | Present |

Equations in Version 1 | Equations in Version 2
... a_b = der(w_b);
if checkTotalPower then totalPower = frame_a.f*Frames.resolve2(frame_a.R, der(frame_a.r_0)) + frame_b.f*Frames.resolve2(frame_b.R, der(frame_b.r_0)) + bearing.f*Frames.resolve2(bearing.R, der(bearing.r_0)) + frame_a.t*Frames.angularVelocity2(frame_a.R) + frame_b.t*Frames.angularVelocity2(frame_b.R) + bearing.t*Frames.angularVelocity2(bearing.R); else totalPower = 0; end if; |
connect(actuatedRevolute_a.axis, idealGear.flange_a); ...

model Mechanics.MultiBody.Parts.BodyCylinder

Component | Version 1 | Version 2
pi |  | Present

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

Component | Version 1 | Version 2
b | Integer | Real
c | Integer | Real

model Mechanics.Rotational.Examples.LossyGearDemo1

Component | Version 1 | Version 2
Inertia2 | phi(fixed=true, start=0, nominal=0.001) | phi(fixed=true, start=0)
w(fixed=true, start=0, nominal=0.01) | w(fixed=true, start=0)

model Mechanics.Rotational.Examples.LossyGearDemo2

Component | Version 1 | Version 2
Inertia2 | phi(fixed=true, start=0, nominal=1e-4) | phi(fixed=true, start=0)
w(fixed=true, start=0, nominal=0.001) | w(fixed=true, start=0)

model Mechanics.Rotational.Examples.ElasticBearing

Component | Version 1 | Version 2
springDamper | w_rel(fixed=true, nominal=1e-4) | w_rel(fixed=true)

model Mechanics.Rotational.Examples.Backlash

Component | Version 1 | Version 2
fixed3 | Present |
elastoBacklash2 | Present |
inertia3 | Present |

Equations in Version 1 | Equations in Version 2
... connect(fixed2.flange, elastoBacklash.flange_a);
connect(elastoBacklash2.flange_b, inertia3.flange_a); connect(fixed3.flange, elastoBacklash2.flange_a); |

model Mechanics.Rotational.Examples.Utilities.InverseInertia

Component | Version 1 | Version 2
J |  | min=0

model Mechanics.Rotational.Components.BearingFriction

Equations in Version 1 | Equations in Version 2
tau0 = Modelica.Math.Vectors.interpolate(tau_pos[:,1], tau_pos[:,2], 0, 1); | tau0 = Modelica_3_2_1_Build_4.Math.tempInterpol1( 0, tau_pos, 2);
tau0_max = peak*tau0; ... flange_a.tau + flange_b.tau - tau = 0;
tau = if locked then sa*unitTorque else ( if startForward then Modelica.Math.Vectors.interpolate(tau_pos[:,1], tau_pos[:,2], w, 1) else if startBackward then -Modelica.Math.Vectors.interpolate(tau_pos[:,1], tau_pos[:,2], -w, 1) else if pre(mode) == Forward then Modelica.Math.Vectors.interpolate(tau_pos[:,1], tau_pos[:,2], w, 1) else -Modelica.Math.Vectors.interpolate(tau_pos[:,1], tau_pos[:,2], -w, 1)); | tau = if locked then sa*unitTorque else (if startForward then Modelica_3_2_1_Build_4.Math.tempInterpol1( w, tau_pos, 2) else if startBackward then -Modelica_3_2_1_Build_4.Math.tempInterpol1( -w, tau_pos, 2) else if pre(mode) == Forward then Modelica_3_2_1_Build_4.Math.tempInterpol1( w, tau_pos, 2) else -Modelica_3_2_1_Build_4.Math.tempInterpol1( -w, tau_pos, 2));
lossPower = tau*w_relfric;

model Mechanics.Rotational.Components.Brake

Equations in Version 1 | Equations in Version 2
mue0 = Modelica.Math.Vectors.interpolate(mue_pos[:,1], mue_pos[:,2], 0, 1); | mue0 = Modelica_3_2_1_Build_4.Math.tempInterpol1( 0, mue_pos, 2);
phi = flange_a.phi - phi_support; ... free = fn <= 0;
tau = if locked then sa*unitTorque else if free then 0 else cgeo*fn*( if startForward then Modelica.Math.Vectors.interpolate(mue_pos[:,1], mue_pos[:,2], w, 1) else if startBackward then -Modelica.Math.Vectors.interpolate(mue_pos[:,1], mue_pos[:,2], -w, 1) else if pre(mode) == Forward then Modelica.Math.Vectors.interpolate(mue_pos[:,1], mue_pos[:,2], w, 1) else -Modelica.Math.Vectors.interpolate(mue_pos[:,1], mue_pos[:,2], -w, 1)); | tau = if locked then sa*unitTorque else if free then 0 else cgeo*fn*(if startForward then Modelica_3_2_1_Build_4.Math.tempInterpol1( w, mue_pos, 2) else if startBackward then -Modelica_3_2_1_Build_4.Math.tempInterpol1( -w, mue_pos, 2) else if pre(mode) == Forward then Modelica_3_2_1_Build_4.Math.tempInterpol1( w, mue_pos, 2) else -Modelica_3_2_1_Build_4.Math.tempInterpol1( -w, mue_pos, 2));
lossPower = tau*w_relfric;

model Mechanics.Rotational.Components.Clutch

Equations in Version 1 | Equations in Version 2
mue0 = Modelica.Math.Vectors.interpolate(mue_pos[:,1], mue_pos[:,2], 0, 1); | mue0 = Modelica_3_2_1_Build_4.Math.tempInterpol1( 0, mue_pos, 2);
w_relfric = w_rel; ... tau0_max = peak*tau0;
tau = if locked then sa*unitTorque else if free then 0 else cgeo*fn*( if startForward then Modelica.Math.Vectors.interpolate(mue_pos[:,1], mue_pos[:,2], w_rel, 1) else if startBackward then -Modelica.Math.Vectors.interpolate(mue_pos[:,1], mue_pos[:,2], w_rel, 1) else if pre(mode) == Forward then Modelica.Math.Vectors.interpolate(mue_pos[:,1], mue_pos[:,2], w_rel, 1) else -Modelica.Math.Vectors.interpolate(mue_pos[:,1], mue_pos[:,2], -w_rel, 1)); | tau = if locked then sa*unitTorque else if free then 0 else cgeo*fn*(if startForward then Modelica_3_2_1_Build_4.Math.tempInterpol1( w_rel, mue_pos, 2) else if startBackward then -Modelica_3_2_1_Build_4.Math.tempInterpol1( -w_rel, mue_pos, 2) else if pre(mode) == Forward then Modelica_3_2_1_Build_4.Math.tempInterpol1( w_rel, mue_pos, 2) else -Modelica_3_2_1_Build_4.Math.tempInterpol1( -w_rel, mue_pos, 2));
lossPower = tau*w_relfric;

model Mechanics.Rotational.Components.OneWayClutch

Equations in Version 1 | Equations in Version 2
mue0 = Modelica.Math.Vectors.interpolate(mue_pos[:,1], mue_pos[:,2], 0, 1); | mue0 = Modelica_3_2_1_Build_4.Math.tempInterpol1( 0, mue_pos, 2);
tau0_max_low = eps0*mue0*cgeo*fn_max; ... a_rel = unitAngularAcceleration*(if locked then 0 else sa - tau0/ unitTorque);
tau = if locked then sa*unitTorque else (if free then 0 else cgeo*fn* Modelica.Math.Vectors.interpolate(mue_pos[:,1], mue_pos[:,2], w_rel, 1)); | tau = if locked then sa*unitTorque else (if free then 0 else cgeo*fn* Modelica_3_2_1_Build_4.Math.tempInterpol1( w_rel, mue_pos, 2));
stuck = locked or w_rel <= 0; ...

model Mechanics.Rotational.Sources.ConstantTorque

Component | Version 1 | Version 2
w | Present |

Equations in Version 1 | Equations in Version 2
w = der(phi); |
tau = -flange.tau; ...

model Mechanics.Translational.Components.SupportFriction

Equations in Version 1 | Equations in Version 2
f0 = Modelica.Math.Vectors.interpolate( f_pos[:, 1], f_pos[:, 2], 0, 1); | f0 = Modelica_3_2_1_Build_4.Math.tempInterpol1( 0, f_pos, 2);
f0_max = peak*f0; ... flange_a.f + flange_b.f - f = 0;
f = if locked then sa*unitForce else (if startForward then Modelica.Math.Vectors.interpolate( f_pos[:, 1], f_pos[:, 2], v, 1) else if startBackward then -Modelica.Math.Vectors.interpolate( f_pos[:, 1], f_pos[:, 2], -v, 1) else if pre(mode) == Forward then Modelica.Math.Vectors.interpolate( f_pos[:, 1], f_pos[:, 2], v, 1) else -Modelica.Math.Vectors.interpolate( f_pos[:, 1], f_pos[:, 2], -v, 1)); | f = if locked then sa*unitForce else (if startForward then Modelica_3_2_1_Build_4.Math.tempInterpol1( v, f_pos, 2) else if startBackward then -Modelica_3_2_1_Build_4.Math.tempInterpol1( -v, f_pos, 2) else if pre(mode) == Forward then Modelica_3_2_1_Build_4.Math.tempInterpol1( v, f_pos, 2) else -Modelica_3_2_1_Build_4.Math.tempInterpol1( -v, f_pos, 2));
lossPower = f*v_relfric;

model Mechanics.Translational.Components.Brake

Equations in Version 1 | Equations in Version 2
mue0 = Modelica.Math.Vectors.interpolate( mue_pos[:, 1], mue_pos[:, 2], 0, 1); | mue0 = Modelica_3_2_1_Build_4.Math.tempInterpol1( 0, mue_pos, 2);
s = s_a; ... free = fn <= 0;
f = if locked then sa*unitForce else if free then 0 else cgeo*fn*(if startForward then Modelica.Math.Vectors.interpolate( mue_pos[:, 1], mue_pos[:, 2], v, 1) else if startBackward then -Modelica.Math.Vectors.interpolate( mue_pos[:, 1], mue_pos[:, 2], -v, 1) else if pre(mode) == Forward then Modelica.Math.Vectors.interpolate( mue_pos[:, 1], mue_pos[:, 2], v, 1) else -Modelica.Math.Vectors.interpolate( mue_pos[:, 1], mue_pos[:, 2], -v, 1)); | f = if locked then sa*unitForce else if free then 0 else cgeo*fn*(if startForward then Modelica_3_2_1_Build_4.Math.tempInterpol1( v, mue_pos, 2) else if startBackward then -Modelica_3_2_1_Build_4.Math.tempInterpol1( -v, mue_pos, 2) else if pre(mode) == Forward then Modelica_3_2_1_Build_4.Math.tempInterpol1( v, mue_pos, 2) else -Modelica_3_2_1_Build_4.Math.tempInterpol1( -v, mue_pos, 2));
lossPower = f*v_relfric;

model Fluid.Examples.PumpingSystem

Component | Version 1 | Version 2
pumps | p_b_start=600000 |
T_start=system.T_start |

model Fluid.Examples.HeatingSystem

Component | Version 1 | Version 2
radiator | state_a(p(start=110000)) |
state_b(p(start=110000)) |

model Fluid.Examples.Tanks.TanksWithOverflow

Component | Version 1 | Version 2
upperTank | redeclare package Medium = Modelica.Media.CompressibleLiquids.LinearColdWater | redeclare package Medium = Modelica.Media.Water.StandardWater
massFlowRate | redeclare package Medium = Modelica.Media.CompressibleLiquids.LinearColdWater | redeclare package Medium = Modelica.Media.Water.StandardWater
pressure | redeclare package Medium = Modelica.Media.CompressibleLiquids.LinearColdWater | redeclare package Medium = Modelica.Media.Water.StandardWater
pipe | redeclare package Medium = Modelica.Media.CompressibleLiquids.LinearColdWater | redeclare package Medium = Modelica.Media.Water.StandardWater
lowerTank | redeclare package Medium = Modelica.Media.CompressibleLiquids.LinearColdWater | redeclare package Medium = Modelica.Media.Water.StandardWater
overflow | redeclare package Medium = Modelica.Media.CompressibleLiquids.LinearColdWater | redeclare package Medium = Modelica.Media.Water.StandardWater

model Fluid.Examples.TraceSubstances.RoomCO2WithControls

Component | Version 1 | Version 2
volume | medium(Xi(nominal=0.01)) |
ductOut | mCs_scaled(each nominal=0.01) |
mediums(each Xi(nominal=0.01)) |
ductIn | mCs_scaled(each nominal=0.01) |
mediums(each Xi(nominal=0.01)) |

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

Component | Version 1 | Version 2
pi |  | Present

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

Component | Version 1 | Version 2
pi |  | Present

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

Component | Version 1 | Version 2
pi |  | Present

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

Component | Version 1 | Version 2
pi |  | Present

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

Component | Version 1 | Version 2
pi |  | Present

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

Component | Version 1 | Version 2
pi |  | Present

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

Component | Version 1 | Version 2
pi |  | Present

model Fluid.Machines.PrescribedPump

Component | Version 1 | Version 2
N_in | unit="rev/min" | unit="1/min"
N_in_internal | unit="rev/min" | unit="1/min"

function Fluid.Machines.BaseClasses.PumpCharacteristics.polynomialFlow

Component | Version 1 | Version 2
max_dhdV | =c[2] + max(sum((i - 1)*V_flow_nominal .^ (i - 2)*c[i] for i in 3:N)) | =max({c[2] .+ sum((i - 1)*V_flow_nominal .^ (i - 2)*c[i] for i in 3:N)})

function Fluid.Fittings.BaseClasses.QuadraticTurbulent.massFlowRate_dp_and_Re

Component | Version 1 | Version 2
pi |  | Present

function Fluid.Fittings.BaseClasses.QuadraticTurbulent.pressureLoss_m_flow_and_Re

Component | Version 1 | Version 2
pi |  | Present

model Fluid.Sources.FixedBoundary

Component | Version 1 | Version 2
d | =(if use_T then Medium.density_pTX(Medium.p_default, Medium.T_default, Medium.X_default) else Medium.density_phX(Medium.p_default, Medium.h_default, Medium.X_default)) | =Medium.density_pTX(Medium.p_default, Medium.T_default, Medium.X_default)

function Fluid.Dissipation.Utilities.Functions.General.SmoothPower_der

Equations in Version 1 | Equations in Version 2
... adeltax := abs(deltax);
if x >= adeltax then | if noEvent(x >= adeltax) then
dy = dx*pow*x^(pow - 1);
elseif x <= -adeltax then | elseif noEvent(x <= -adeltax) then
dy = dx*pow*(-x)^(pow - 1); ...

model Media.Examples.TestOnly.MixIdealGasAir

Component | Version 1 | Version 2
medium2 | X(start={0.2,0.8}, fixed=true) | X(start={0.2,0.8}, each fixed=true)

model Media.Examples.TestOnly.FlueGas

Component | Version 1 | Version 2
medium2 | X(start={0.2,0.1,0.3,0.4}, fixed=true) | X(start={0.2,0.1,0.3,0.4}, each fixed=true)

function Media.Interfaces.PartialLinearFluid.setState_dTX

Equations in Version 1 | Equations in Version 2
algorithm
state := ThermodynamicState(p=((d - reference_d) + (T - reference_T) *beta_const*reference_d)/(reference_d*kappa_const) + reference_p, T=T); | state := ThermodynamicState(p=((d - reference_d) + (state.T - reference_T) *beta_const*reference_d)/(reference_d*kappa_const) + reference_p, T=T);

record Media.Interfaces.PartialMixtureMedium.ThermodynamicState

Component | Version 1 | Version 2
X | start=reference_X |

package Media.Air.ReferenceAir

Component | Version 1 | Version 2
airConstants | chemicalFormula="N2+O2+Ar" |
structureFormula="N2+O2+Ar" |
casRegistryNumber="1" |
iupacName="air" |
molarMass=0.02896546 |
criticalTemperature=132.5306 |
criticalPressure=3.786e6 |
criticalMolarVolume=0.02896546/342.68 |
triplePointTemperature=63.05 "From N2" |
triplePointPressure=0.1253e5 "From N2" |
normalBoilingPoint=78.903 |
meltingPoint=0 |
acentricFactor=0.0335 |
dipoleMoment=0.0 |
hasCriticalData=true |
hasFundamentalEquation=true |
hasAccurateViscosityData=true |
hasAcentricFactor=true |
| each chemicalFormula="N2+O2+Ar"
| each structureFormula="N2+O2+Ar"
| each casRegistryNumber="1"
| each iupacName="air"
| each molarMass=0.02896546
| each criticalTemperature=132.5306
| each criticalPressure=3.786e6
| each criticalMolarVolume=0.02896546/342.68
| each triplePointTemperature=63.05 "From N2"
| each triplePointPressure=0.1253e5 "From N2"
| each normalBoilingPoint=78.903
| each meltingPoint=0
| each acentricFactor=0.0335
| each dipoleMoment=0.0
| each hasCriticalData=true
| each hasFundamentalEquation=true
| each hasAccurateViscosityData=true
| each hasAcentricFactor=true

package Media.Air.ReferenceMoistAir.Utilities.Water95_Utilities

Component | Version 1 | Version 2
waterConstants | chemicalFormula="H2O" |
structureFormula="H2O" |
casRegistryNumber="7732-18-5" |
iupacName="oxidane" |
molarMass=0.018015268 |
criticalTemperature=647.096 |
criticalPressure=22064.0e3 |
criticalMolarVolume=1/322.0*0.018015268 |
triplePointTemperature=273.16 |
triplePointPressure=611.657 |
normalBoilingPoint=373.124 |
meltingPoint=273.15 |
acentricFactor=0.344 |
dipoleMoment=1.8 |
hasCriticalData=true |
hasIdealGasHeatCapacity=false |
hasDipoleMoment=true |
hasFundamentalEquation=true |
hasLiquidHeatCapacity=true |
hasSolidHeatCapacity=false |
hasAccurateViscosityData=true |
hasAccurateConductivityData=true |
hasVapourPressureCurve=false |
hasAcentricFactor=true |
HCRIT0=0.0 |
SCRIT0=0.0 |
deltah=0.0 |
deltas=0.0 |
| each chemicalFormula="H2O"
| each structureFormula="H2O"
| each casRegistryNumber="7732-18-5"
| each iupacName="oxidane"
| each molarMass=0.018015268
| each criticalTemperature=647.096
| each criticalPressure=22064.0e3
| each criticalMolarVolume=1/322.0*0.018015268
| each triplePointTemperature=273.16
| each triplePointPressure=611.657
| each normalBoilingPoint=373.124
| each meltingPoint=273.15
| each acentricFactor=0.344
| each dipoleMoment=1.8
| each hasCriticalData=true
| each hasIdealGasHeatCapacity=false
| each hasDipoleMoment=true
| each hasFundamentalEquation=true
| each hasLiquidHeatCapacity=true
| each hasSolidHeatCapacity=false
| each hasAccurateViscosityData=true
| each hasAccurateConductivityData=true
| each hasVapourPressureCurve=false
| each hasAcentricFactor=true
| each HCRIT0=0.0
| each SCRIT0=0.0
| each deltah=0.0
| each deltas=0.0

function Media.IdealGases.Common.SingleGasNasa.dynamicViscosityLowPressure

Component | Version 1 | Version 2
eta | Media.Interfaces.Types.DynamicViscosity | SIunits.DynamicViscosity

function Media.R134a.R134a_ph.setState_pTX

Component | Version 1 | Version 2
delp | Present |

Equations in Version 1 | Equations in Version 2
algorithm
Modelica.Media.R134a.R134a_ph.phaseBoundaryAssert(p, T); | assert(false, "A calculation of two-phase properties with input of pressure and temperature is not possible.\n" + "Please use setState_dTX or setState_phX instead.");
state = ThermodynamicState( d=dofpT(p, T, delp), T=T, h=hofpT(p, T, delp), p=p, phase=1); |

package Media.Water.WaterIF97_base

Component | Version 1 | Version 2
Region | Present |

model Media.Water.WaterIF97_base.BaseProperties

Equations in Version 1 | Equations in Version 2
MM = fluidConstants[1].molarMass;
if Region > 0 then | if smoothModel then
phase = (if Region == 4 then 2 else 1); elseif smoothModel then |
if onePhase then ... if dT_explicit then
p = pressure_dT( d, T, phase, Region); | p = pressure_dT( d, T, phase);
h = specificEnthalpy_dT( d, T, phase, Region); | h = specificEnthalpy_dT( d, T, phase);
sat.Tsat = T; ... elseif ph_explicit then
d = density_ph( p, h, phase, Region); | d = density_ph( p, h, phase);
T = temperature_ph( p, h, phase, Region); | T = temperature_ph( p, h, phase);
sat.Tsat = saturationTemperature(p); ... else
h = specificEnthalpy_pT( p, T, Region); | h = specificEnthalpy_pT(p, T);
d = density_pT( p, T, Region); | d = density_pT(p, T);
sat.psat = p; ...

function Media.Water.WaterIF97_base.density_ph

Component | Version 1 | Version 2
region | Present |

Equations in Version 1 | Equations in Version 2
algorithm
d := IF97_Utilities.rho_ph( p, h, phase, region); | d := IF97_Utilities.rho_ph( p, h, phase);

function Media.Water.WaterIF97_base.temperature_ph

Component | Version 1 | Version 2
region | Present |

Equations in Version 1 | Equations in Version 2
algorithm
T := IF97_Utilities.T_ph( p, h, phase, region); | T := IF97_Utilities.T_ph( p, h, phase);

function Media.Water.WaterIF97_base.temperature_ps

Component | Version 1 | Version 2
region | Present |

Equations in Version 1 | Equations in Version 2
algorithm
T := IF97_Utilities.T_ps( p, s, phase, region); | T := IF97_Utilities.T_ps( p, s, phase);

function Media.Water.WaterIF97_base.density_ps

Component | Version 1 | Version 2
region | Present |

Equations in Version 1 | Equations in Version 2
algorithm
d := IF97_Utilities.rho_ps( p, s, phase, region); | d := IF97_Utilities.rho_ps( p, s, phase);

function Media.Water.WaterIF97_base.pressure_dT

Component | Version 1 | Version 2
region | Present |

Equations in Version 1 | Equations in Version 2
algorithm
p := IF97_Utilities.p_dT( d, T, phase, region); | p := IF97_Utilities.p_dT( d, T, phase);

function Media.Water.WaterIF97_base.specificEnthalpy_dT

Component | Version 1 | Version 2
region | Present |

Equations in Version 1 | Equations in Version 2
algorithm
h := IF97_Utilities.h_dT( d, T, phase, region); | h := IF97_Utilities.h_dT( d, T, phase);

function Media.Water.WaterIF97_base.specificEnthalpy_pT

Component | Version 1 | Version 2
region | Present |

Equations in Version 1 | Equations in Version 2
algorithm
h := IF97_Utilities.h_pT( p, T, region); | h := IF97_Utilities.h_pT(p, T);

function Media.Water.WaterIF97_base.specificEnthalpy_ps

Component | Version 1 | Version 2
region | Present |

Equations in Version 1 | Equations in Version 2
algorithm
h := IF97_Utilities.h_ps( p, s, phase, region); | h := IF97_Utilities.h_ps( p, s, phase);

function Media.Water.WaterIF97_base.density_pT

Component | Version 1 | Version 2
region | Present |

Equations in Version 1 | Equations in Version 2
algorithm
d := IF97_Utilities.rho_pT( p, T, region); | d := IF97_Utilities.rho_pT(p, T);

function Media.Water.WaterIF97_base.specificEntropy

Equations in Version 1 | Equations in Version 2
algorithm
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 := 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);

function Media.Water.WaterIF97_base.specificHeatCapacityCp

Equations in Version 1 | Equations in Version 2
algorithm
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 := 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);

function Media.Water.WaterIF97_base.specificHeatCapacityCv

Equations in Version 1 | Equations in Version 2
algorithm
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 := 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);

function Media.Water.WaterIF97_base.isentropicExponent

Equations in Version 1 | Equations in Version 2
algorithm
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 := 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);

function Media.Water.WaterIF97_base.isothermalCompressibility

Equations in Version 1 | Equations in Version 2
algorithm
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 := 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);

function Media.Water.WaterIF97_base.isobaricExpansionCoefficient

Equations in Version 1 | Equations in Version 2
algorithm
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 := 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);

function Media.Water.WaterIF97_base.velocityOfSound

Equations in Version 1 | Equations in Version 2
algorithm
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 := 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);

function Media.Water.WaterIF97_base.density_derh_p

Equations in Version 1 | Equations in Version 2
algorithm
ddhp := IF97_Utilities.ddhp( state.p, state.h, state.phase, Region); | ddhp := IF97_Utilities.ddhp( state.p, state.h, state.phase);

function Media.Water.WaterIF97_base.density_derp_h

Equations in Version 1 | Equations in Version 2
algorithm
ddph := IF97_Utilities.ddph( state.p, state.h, state.phase, Region); | ddph := IF97_Utilities.ddph( state.p, state.h, state.phase);

function Media.Water.WaterIF97_base.bubbleDensity

Equations in Version 1 | Equations in Version 2
algorithm
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 := if ph_explicit then IF97_Utilities.BaseIF97.Regions.rhol_p(sat.psat) else IF97_Utilities.BaseIF97.Regions.rhol_T(sat.Tsat);

function Media.Water.WaterIF97_base.setState_dTX

Component | Version 1 | Version 2
region | Present |

Equations in Version 1 | Equations in Version 2
algorithm
state := ThermodynamicState( d=d, T=T, phase=if region == 0 then 0 else if region == 4 then 2 else 1, h=specificEnthalpy_dT( d, T, region=region), p=pressure_dT( d, T, region=region)); | state := ThermodynamicState( d=d, T=T, phase=0, h=specificEnthalpy_dT(d, T), p=pressure_dT(d, T));

function Media.Water.WaterIF97_base.setState_phX

Component | Version 1 | Version 2
region | Present |

Equations in Version 1 | Equations in Version 2
algorithm
state := ThermodynamicState( d=density_ph( p, h, region=region), T=temperature_ph( p, h, region=region), phase=if region == 0 then 0 else if region==4 then 2 else 1, h=h, p=p); | state := ThermodynamicState( d=density_ph(p, h), T=temperature_ph(p, h), phase=0, h=h, p=p);

function Media.Water.WaterIF97_base.setState_psX

Component | Version 1 | Version 2
region | Present |

Equations in Version 1 | Equations in Version 2
algorithm
state := ThermodynamicState( d=density_ps( p, s, region=region), T=temperature_ps( p, s, region=region), phase=if region == 0 then 0 else if region==4 then 2 else 1, h=specificEnthalpy_ps( p, s, region=region), p=p); | state := ThermodynamicState( d=density_ps(p, s), T=temperature_ps(p, s), phase=0, h=specificEnthalpy_ps(p, s), p=p);

function Media.Water.WaterIF97_base.setState_pTX

Component | Version 1 | Version 2
region | Present |

Equations in Version 1 | Equations in Version 2
algorithm
state := ThermodynamicState( d=density_pT( p, T, region=region), T=T, phase=1, h=specificEnthalpy_pT( p, T, region=region), p=p); | state := ThermodynamicState( d=density_pT(p, T), T=T, phase=1, h=specificEnthalpy_pT(p, T), p=p);

package Media.Water.WaterIF97_fixedregion

Component | Version 1 | Version 2
Region |  | Present
ph_explicit |  | Present
dT_explicit |  | Present
pT_explicit |  | Present

function Media.Water.IF97_Utilities.BaseIF97.Isentropic.hofps4

Equations in Version 1 | Equations in Version 2
... hv = Regions.hv_p_R4b(p);
else | end if;
sl = Regions.sl_p_R4b(data.PCRIT); | x = max(min(if sl <> sv then (s - sl)/(sv - sl) else 1.0, 1.0), 0.0);
sv = Regions.sv_p_R4b(data.PCRIT); | h = hl + x*(hv - hl);
hl = Regions.hl_p_R4b(data.PCRIT); |
hv = Regions.hv_p_R4b(data.PCRIT); end if; x = max(min(if sl <> sv then (s - sl)/(sv - sl) else 1.0, 1.0), 0.0); h = hl + x*(hv - hl); |

function Media.Water.IF97_Utilities.waterBaseProp_ph

Equations in Version 1 | Equations in Version 2
... aux.R = BaseIF97.data.RH2O;
aux.vt = 0.0 "initialized in case it is not needed"; aux.vp = 0.0 "initialized in case it is not needed"; |
if (aux.region == 1) then ... aux.vt = aux.R/p*(g.pi*g.gpi - g.tau*g.pi*g.gtaupi);
aux.pt = -g.p/g.T*(g.gpi - g.tau*g.gtaupi)/(g.gpipi*g.pi); aux.pd = -g.R*g.T*g.gpi*g.gpi/(g.gpipi); |
aux.vp = aux.R*aux.T/(p*p)*g.pi*g.pi*g.gpipi; ... aux.vp = aux.R*aux.T/(p*p)*g.pi*g.pi*g.gpipi;
aux.pt = -g.p/g.T*(g.gpi - g.tau*g.gtaupi)/(g.gpipi*g.pi); aux.pd = -g.R*g.T*g.gpi*g.gpi/(g.gpipi); |
aux.cp = -aux.R*g.tau*g.tau*g.gtautau; ... aux.vp = aux.R*aux.T/(p*p)*g.pi*g.pi*g.gpipi;
aux.pt = -g.p/g.T*(g.gpi - g.tau*g.gtaupi)/(g.gpipi*g.pi); aux.pd = -g.R*g.T*g.gpi*g.gpi/(g.gpipi); |
aux.cp = -aux.R*g.tau*g.tau*g.gtautau; ...

function Media.Water.IF97_Utilities.waterBaseProp_ps

Equations in Version 1 | Equations in Version 2
... aux.R = BaseIF97.data.RH2O;
aux.vt = 0.0 "initialized in case it is not needed"; aux.vp = 0.0 "initialized in case it is not needed"; |
if (aux.region == 1) then ... aux.vp = aux.R*aux.T/(p*p)*g.pi*g.pi*g.gpipi;
aux.pt = -g.p/g.T*(g.gpi - g.tau*g.gtaupi)/(g.gpipi*g.pi); aux.pd = -g.R*g.T*g.gpi*g.gpi/(g.gpipi); |
aux.cp = -aux.R*g.tau*g.tau*g.gtautau; ... aux.vp = aux.R*aux.T/(p*p)*g.pi*g.pi*g.gpipi;
aux.pt = -g.p/g.T*(g.gpi - g.tau*g.gtaupi)/(g.gpipi*g.pi); aux.pd = -g.R*g.T*g.gpi*g.gpi/(g.gpipi); |
aux.cp = -aux.R*g.tau*g.tau*g.gtautau; ... aux.vp = aux.R*aux.T/(p*p)*g.pi*g.pi*g.gpipi;
aux.pt = -g.p/g.T*(g.gpi - g.tau*g.gtaupi)/(g.gpipi*g.pi); aux.pd = -g.R*g.T*g.gpi*g.gpi/(g.gpipi); |
aux.cp = -aux.R*g.tau*g.tau*g.gtautau; ...

function Media.Water.IF97_Utilities.waterBaseProp_pT

Equations in Version 1 | Equations in Version 2
... aux.T = T;
aux.vt = 0.0 "initialized in case it is not needed"; aux.vp = 0.0 "initialized in case it is not needed"; |
if (aux.region == 1) then ... aux.dpT = -aux.vt/aux.vp;
aux.pt = -g.p/g.T*(g.gpi - g.tau*g.gtaupi)/(g.gpipi*g.pi); aux.pd = -g.R*g.T*g.gpi*g.gpi/(g.gpipi); |
elseif (aux.region == 2) then ... aux.vp = aux.R*T/(p*p)*g.pi*g.pi*g.gpipi;
aux.pt = -g.p/g.T*(g.gpi - g.tau*g.gtaupi)/(g.gpipi*g.pi); aux.pd = -g.R*g.T*g.gpi*g.gpi/(g.gpipi); |
aux.cp = -aux.R*g.tau*g.tau*g.gtautau; ... aux.vp = aux.R*T/(p*p)*g.pi*g.pi*g.gpipi;
aux.pt = -g.p/g.T*(g.gpi - g.tau*g.gtaupi)/(g.gpipi*g.pi); aux.pd = -g.R*g.T*g.gpi*g.gpi/(g.gpipi); |
aux.cp = -aux.R*g.tau*g.tau*g.gtautau; ...

function Media.Water.IF97_Utilities.waterBaseProp_dT

Equations in Version 1 | Equations in Version 2
... aux.T = T;
aux.vt = 0.0 "initialized in case it is not needed"; aux.vp = 0.0 "initialized in case it is not needed"; |
if (aux.region == 1) then ... aux.vp = aux.R*T/(aux.p*aux.p)*g.pi*g.pi*g.gpipi;
aux.pt = -g.p/g.T*(g.gpi - g.tau*g.gtaupi)/(g.gpipi*g.pi); aux.pd = -g.R*g.T*g.gpi*g.gpi/(g.gpipi); |
aux.cp = -aux.R*g.tau*g.tau*g.gtautau; ... aux.vp = aux.R*T/(aux.p*aux.p)*g.pi*g.pi*g.gpipi;
aux.pt = -g.p/g.T*(g.gpi - g.tau*g.gtaupi)/(g.gpipi*g.pi); aux.pd = -g.R*g.T*g.gpi*g.gpi/(g.gpipi); |
aux.cp = -aux.R*g.tau*g.tau*g.gtautau; ... aux.vp = aux.R*T/(aux.p*aux.p)*g.pi*g.pi*g.gpipi;
aux.pt = -g.p/g.T*(g.gpi - g.tau*g.gtaupi)/(g.gpipi*g.pi); aux.pd = -g.R*g.T*g.gpi*g.gpi/(g.gpipi); |
aux.cp = -aux.R*g.tau*g.tau*g.gtautau; ...

model Thermal.FluidHeatFlow.Sources.IdealPump

Component | Version 1 | Version 2
wNominal | displayUnit="rev/min" | displayUnit="1/min"

model Thermal.HeatTransfer.Examples.Motor

Component | Version 1 | Version 2
lossTable | table=[0, 100, 500; 360, 1000, 500; 600, 100, 500] | table=[0, 100, 500; 360, 100, 500; 360, 1000, 500; 600, 1000, 500]
smoothness=Modelica.Blocks.Types.Smoothness.ConstantSegments |

function Math.Vectors.normalize

Equations in Version 1 | Equations in Version 2
algorithm
result := smooth(0, if length(v) >= eps then v/length(v) else v/eps); | result := smooth(0, noEvent(if length(v) >= eps then v/length(v) else v/eps));

function Math.Matrices.leastSquares

Equations in Version 1 | Equations in Version 2
... if min(size(A)) > 0 then
(xx,info,rank) = LAPACK.dgelsy_vec( A, b, rcond); | (xx,info,rank) = LAPACK.dgelsx_vec( A, b, rcond);
x = xx[1:size(A, 2)]; ...

function Math.Matrices.leastSquares2

Equations in Version 1 | Equations in Version 2
algorithm
(XX,info,rank) := LAPACK.dgelsy( A, B, rcond); | (XX,info,rank) := LAPACK.dgelsx( A, B, rcond);
X = XX[1:size(A, 2), :]; ...

function Math.Matrices.LAPACK.dgeev

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dgeev( "N", "V", n, Awork, n, eigenReal, eigenImag, dummy, 1, 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.dgeev_eigenValues

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dgeev( "N", "N", size(A, 1), Awork, size(A, 1), EigenReal, EigenImag, EigenvectorsL, size(EigenvectorsL, 1), EigenvectorsL, size(EigenvectorsL, 1), work, size(work, 1), info); | external "Fortran 77" dgeev( "N", "N", size(A, 1), Awork, size(A, 1), EigenReal, EigenImag, EigenvectorsL, size(EigenvectorsL, 1), EigenvectorsL, size(EigenvectorsL, 1), work, size(work, 1), info);

function Math.Matrices.LAPACK.dgegv

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dgegv( "N", "N", n, Awork, n, Bwork, n, alphaReal, alphaImag, beta, dummy1, 1, dummy2, 1, work, size(work, 1), info); | external "Fortran 77" dgegv( "N", "N", n, Awork, n, Bwork, n, alphaReal, alphaImag, beta, dummy1, 1, dummy2, 1, work, size(work, 1), info);

function Math.Matrices.LAPACK.dgesvd

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dgesvd( "A", "A", size(A, 1), size(A, 2), Awork, size(A, 1), sigma, U, size(A, 1), VT, size(A, 2), work, lwork, info); | external "Fortran 77" dgesvd( "A", "A", size(A, 1), size(A, 2), Awork, size(A, 1), sigma, U, size(A, 1), VT, size(A, 2), work, lwork, info);

function Math.Matrices.LAPACK.dgesvd_sigma

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dgesvd( "N", "N", size(A, 1), size(A, 2), Awork, size(A, 1), sigma, U, size(A, 1), VT, size(A, 2), work, lwork, info); | external "Fortran 77" dgesvd( "N", "N", size(A, 1), size(A, 2), Awork, size(A, 1), sigma, U, size(A, 1), VT, size(A, 2), work, lwork, info);

function Math.Matrices.LAPACK.dtrsen

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dtrsen( job, compq, select, n, To, ldt, Qo, ldq, wr, wi, m, s, sep, work, lwork, iwork, liwork, info); | external "Fortran 77" dtrsen( job, compq, select, n, To, ldt, Qo, ldq, wr, wi, m, s, sep, work, lwork, iwork, liwork, info);

function Math.Matrices.LAPACK.dgesvx

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dgesvx( "N", transA, size(A, 1), size(B, 2), Awork, lda, AF, lda, ipiv, equed, R, C, Bwork, lda, X, lda, rcond, ferr, berr, work, iwork, info); | external "FORTRAN 77" dgesvx( "N", transA, size(A, 1), size(B, 2), Awork, lda, AF, lda, ipiv, equed, R, C, B, lda, X, lda, rcond, ferr, berr, work, iwork, info);

function Math.Matrices.LAPACK.dtrsyl

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dtrsyl( trana, tranb, isgn, m, n, A, lda, B, ldb, X, lda, scale, info); | external "Fortran 77" dtrsyl( trana, tranb, isgn, m, n, A, lda, B, ldb, X, lda, scale, info);

function Math.Matrices.LAPACK.dhseqr

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dhseqr( job, compz, n, ilo, ihi, Ho, ldh, alphaReal, alphaImag, Zo, ldh, work, lwork, info); | external "Fortran 77" dhseqr( job, compz, n, ilo, ihi, Ho, ldh, alphaReal, alphaImag, Zo, ldh, work, lwork, info);

function Math.Matrices.LAPACK.dlange

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" anorm = dlange( norm, m, n, A, lda, work); | external "Fortran 77" anorm = dlange( norm, m, n, A, lda, work);

function Math.Matrices.LAPACK.dgecon

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dgecon( norm, n, LU_of_A, lda, anorm, rcond, work, iwork, info); | external "Fortran 77" dgecon( norm, n, LU_of_A, lda, anorm, rcond, work, iwork, info);

function Math.Matrices.LAPACK.dgehrd

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dgehrd( n, ilo, ihi, Aout, lda, tau, work, lwork, info); | external "Fortran 77" dgehrd( n, ilo, ihi, Aout, lda, tau, work, lwork, info);

function Math.Matrices.LAPACK.dgeqrf

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dgeqrf( m, n, Aout, lda, tau, work, lwork, info); | external "Fortran 77" dgeqrf( m, n, Aout, lda, tau, work, lwork, info);

function Math.Matrices.LAPACK.dgeevx

Equations in Version 1 | Equations in Version 2
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); | 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.LAPACK.dgesdd

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dgesdd( "A", size(A, 1), size(A, 2), Awork, lda, sigma, U, ldu, VT, ldvt, work, lwork, iwork, info); | external "Fortran 77" dgesdd( "A", size(A, 1), size(A, 2), Awork, lda, sigma, U, ldu, VT, ldvt, work, lwork, iwork, info);

function Math.Matrices.LAPACK.dggev

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dggev( "V", "V", nA, Awork, lda, Bwork, lda, alphaReal, alphaImag, beta, lEigenVectors, lda, rEigenVectors, lda, work, lwork, info); | external "Fortran 77" dggev( "V", "V", nA, Awork, lda, Bwork, lda, alphaReal, alphaImag, beta, lEigenVectors, lda, rEigenVectors, lda, work, lwork, info);

function Math.Matrices.LAPACK.dggevx

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dggevx( "B", "V", "V", "B", n, A, lda, B, lda, alphaReal, alphaImag, beta, lEigenVectors, lda, rEigenVectors, lda, ilo, ihi, lscale, rscale, abnrm, bbnrm, rconde, rcondv, work, lwork, iwork, bwork, info); | external "Fortran 77" dggevx( "B", "V", "V", "B", n, A, lda, B, lda, alphaReal, alphaImag, beta, lEigenVectors, lda, rEigenVectors, lda, ilo, ihi, lscale, rscale, abnrm, bbnrm, rconde, rcondv, work, lwork, iwork, bwork, info);

function Math.Matrices.LAPACK.dhgeqz

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dhgeqz( "E", "N", "N", n, ilo, ihi, Awork, lda, Bwork, lda, alphaReal, alphaImag, beta, Q, 1, Q, 1, work, lwork, info); | external "Fortran 77" dhgeqz( "E", "N", "N", n, ilo, ihi, Awork, lda, Bwork, lda, alphaReal, alphaImag, beta, Q, 1, Q, 1, work, lwork, info);

function Math.Matrices.LAPACK.dormhr

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dormhr( side, trans, m, n, ilo, ihi, A, lda, tau, Cout, ldc, work, lwork, info); | external "Fortran 77" dormhr( side, trans, m, n, ilo, ihi, A, lda, tau, Cout, ldc, work, lwork, info);

function Math.Matrices.LAPACK.dormqr

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dormqr( side, trans, m, n, k, A, lda, tau, Cout, ldc, work, lwork, info); | external "Fortran 77" dormqr( side, trans, m, n, k, A, lda, tau, Cout, ldc, work, lwork, info);

function Math.Matrices.LAPACK.dtrevc

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dtrevc( side, howmny, select, n, T, ldt, lEigenVectors, ldvl, rEigenVectors, ldvr, n, n, work, info); | external "Fortran 77" dtrevc( side, howmny, select, n, T, ldt, lEigenVectors, ldvl, rEigenVectors, ldvr, n, n, work, info);

function Math.Matrices.LAPACK.dtrsm

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dtrsm( side, uplo, transA, diag, m, n, alpha, A, lda, X, ldb); | external "Fortran 77" dtrsm( side, uplo, transA, diag, m, n, alpha, A, lda, X, ldb);

function Math.Matrices.LAPACK.dorghr

Equations in Version 1 | Equations in Version 2
external "FORTRAN 77" dorghr( n, ilo, ihi, Aout, lda, tau, work, lwork, info); | external "Fortran 77" dorghr( n, ilo, ihi, Aout, lda, tau, work, lwork, info);

function Math.atan3

Component | Version 1 | Version 2
pi |  | Present

function ComplexMath.'sum'

Equations in Version 1 | Equations in Version 2
algorithm
result:=Complex(sum(v[:].re), sum(v[:].im)); | result:=Complex(0);
| for i in 1:size(v,1) loop
| result= result + v[i]; end for;

model Utilities.Examples.readRealParameterModel

Equations in Version 1 | Equations in Version 2
when terminal() then Streams.close(file); end when; |

function Utilities.Files.move

Equations in Version 1 | Equations in Version 2
... if Strings.find(oldName,"/") == 0 and Strings.find(newName,"/") == 0 then
if replace then | Modelica_3_2_1_Build_4.Utilities.Internal.FileSystem.rename(oldName, newName);
Files.remove(newName); end if; Internal.FileSystem.rename(oldName, newName); |
else ...

function Utilities.Files.remove

Component | Version 1 | Version 2
fullName |  | =Files.fullPathName(name)
fileType | =Modelica.Utilities.Internal.FileSystem.stat(name) | =Modelica_3_2_1_Build_4.Utilities.Internal.FileSystem.stat(fullName)

Equations in Version 1 | Equations in Version 2
... if fileType == Types.FileType.RegularFile or fileType == Types.FileType.SpecialFile then
Modelica.Utilities.Internal.FileSystem.removeFile(name); | Modelica_3_2_1_Build_4.Utilities.Internal.FileSystem.removeFile(fullName);
elseif fileType == Types.FileType.Directory then
fullName = Files.fullPathName(name); |
removeDirectory(fullName); ...

function Utilities.Files.removeFile

Equations in Version 1 | Equations in Version 2
... if fileType == Types.FileType.RegularFile then
Streams.close(fileName); |
Modelica.Utilities.Internal.FileSystem.removeFile( fileName); ...

function Utilities.Streams.readFile

Equations in Version 1 | Equations in Version 2
external "C" ModelicaInternal_readFile(fileName,stringVector,size(stringVector,1)); | algorithm
| for i in 1:size(stringVector, 1) loop stringVector[i] = readLine(fileName, i); end for; Streams.close(fileName);

function Utilities.System.exit

Equations in Version 1 | Equations in Version 2
external "C" exit(status); | external "C" ModelicaInternal_exit(status);

package Constants

Component | Version 1 | Version 2
G | =6.67408e-11 | =6.6742e-11
F | =9.648533289e4 | =9.64853399e4
h | =6.626070040e-34 | =6.6260693e-34
k | =1.38064852e-23 | =1.3806505e-23
R | =8.3144598 | =8.314472
sigma | =5.670367e-8 | =5.670400e-8
N_A | =6.022140857e23 | =6.0221415e23

Class | Version 1 | Version 2
class Modelica.UsersGuide.ReleaseNotes.Version_3_2_2 | Present |
package Modelica.Blocks.Examples.NoiseExamples | Present |
block Modelica.Blocks.Interfaces.PartialNoise | Present |
block Modelica.Blocks.Math.ContinuousMean | Present |
block Modelica.Blocks.Math.Variance | Present |
block Modelica.Blocks.Math.StandardDeviation | Present |
block Modelica.Blocks.Routing.IntegerReplicator | Present |
block Modelica.Blocks.Routing.BooleanReplicator | Present |
type Modelica.Blocks.Types.Regularization | Present |
package Modelica.Blocks.Noise | Present |
model Modelica.ComplexBlocks.Examples.ShowTransferFunction | Present |
block Modelica.ComplexBlocks.ComplexMath.Conj | Present |
block Modelica.ComplexBlocks.ComplexMath.TransferFunction | Present |
block Modelica.ComplexBlocks.Sources.LogFrequencySweep | Present |
package Modelica.ComplexBlocks.UsersGuide | Present |
package Modelica.Electrical.Analog.Examples.OpAmps | Present |
model Modelica.Electrical.Analog.Basic.Potentiometer | Present |
model Modelica.Electrical.Analog.Ideal.IdealizedOpAmpLimted | Present |
model Modelica.Electrical.Analog.Interfaces.IdealSemiconductor | Present |
model Modelica.Electrical.Analog.Interfaces.IdealSwitch | Present |
model Modelica.Electrical.Analog.Interfaces.IdealSwitchWithArc | Present |
model Modelica.Electrical.Analog.Semiconductors.Diode2 | Present |
model Modelica.Electrical.Analog.Sources.SupplyVoltage | Present |
model Modelica.Electrical.Machines.Examples.AsynchronousInductionMachines.AIMC_Conveyor | Present |
model Modelica.Electrical.Machines.Examples.SynchronousInductionMachines.SMPM_Braking | Present |
block Modelica.Electrical.Machines.SpacePhasors.Blocks.QuasiRMS | Present |
model Modelica.Electrical.Machines.Icons.QuasiStaticFundamentalWaveMachine | Present |
model Modelica.Electrical.Machines.Utilities.MultiTerminalBox | Present |
package Modelica.Electrical.Machines.UsersGuide | Present |
model Modelica.Electrical.MultiPhase.Basic.MultiStar | Present |
model Modelica.Electrical.MultiPhase.Basic.MultiDelta | Present |
model Modelica.Electrical.MultiPhase.Basic.MultiStarResistance | Present |
function Modelica.Electrical.MultiPhase.Functions.symmetricOrientationMatrix | Present |
function Modelica.Electrical.MultiPhase.Functions.symmetricTransformationMatrix | Present |
function Modelica.Electrical.MultiPhase.Functions.numberOfSymmetricBaseSystems | Present |
function Modelica.Electrical.MultiPhase.Functions.factorY2D | Present |
function Modelica.Electrical.MultiPhase.Functions.factorY2DC | Present |
function Modelica.Electrical.MultiPhase.Functions.indexPositiveSequence | Present |
function Modelica.Electrical.MultiPhase.Functions.indexNonPositiveSequence | Present |
package Modelica.Electrical.MultiPhase.UsersGuide | Present |
model Modelica.Electrical.QuasiStationary.SinglePhase.Examples.Transformer | Present |
model Modelica.Electrical.QuasiStationary.SinglePhase.Basic.Impedance | Present |
model Modelica.Electrical.QuasiStationary.SinglePhase.Basic.Admittance | Present |
model Modelica.Electrical.QuasiStationary.SinglePhase.Basic.VariableImpedance | Present |
model Modelica.Electrical.QuasiStationary.SinglePhase.Basic.VariableAdmittance | Present |
model Modelica.Electrical.QuasiStationary.SinglePhase.Ideal.IdealTransformer | Present |
model Modelica.Electrical.QuasiStationary.SinglePhase.Sensors.ReferenceSensor | Present |
package Modelica.Electrical.QuasiStationary.Machines.SpacePhasors | Present |
model Modelica.Electrical.QuasiStationary.MultiPhase.Basic.MultiStar | Present |
model Modelica.Electrical.QuasiStationary.MultiPhase.Basic.MultiDelta | Present |
model Modelica.Electrical.QuasiStationary.MultiPhase.Basic.MultiStarResistance | Present |
model Modelica.Electrical.QuasiStationary.MultiPhase.Basic.Impedance | Present |
model Modelica.Electrical.QuasiStationary.MultiPhase.Basic.Admittance | Present |
model Modelica.Electrical.QuasiStationary.MultiPhase.Basic.VariableImpedance | Present |
model Modelica.Electrical.QuasiStationary.MultiPhase.Basic.VariableAdmittance | Present |
model Modelica.Electrical.QuasiStationary.MultiPhase.Sensors.ReferenceSensor | Present |
model Modelica.Electrical.QuasiStationary.MultiPhase.Sensors.VoltageQuasiRMSSensor | Present |
model Modelica.Electrical.QuasiStationary.MultiPhase.Sensors.CurrentQuasiRMSSensor | Present |
model Modelica.Electrical.QuasiStationary.MultiPhase.Sources.ReferenceVoltageSource | Present |
model Modelica.Electrical.QuasiStationary.MultiPhase.Sources.ReferenceCurrentSource | Present |
model Modelica.Electrical.QuasiStationary.MultiPhase.Interfaces.ReferenceSource | Present |
package Modelica.Electrical.QuasiStationary.MultiPhase.Blocks | Present |
package Modelica.Electrical.QuasiStationary.MultiPhase.Functions | Present |
package Modelica.Electrical.PowerConverters | Present |
package Modelica.Magnetic.FluxTubes.UsersGuide.Hysteresis | Present |
class Modelica.Magnetic.FluxTubes.UsersGuide.ReleaseNotes | Present |
package Modelica.Magnetic.FluxTubes.Examples.Hysteresis | Present |
model Modelica.Magnetic.FluxTubes.Basic.ElectroMagneticConverterWithLeakageInductance | Present |
model Modelica.Magnetic.FluxTubes.Basic.ConstantPermeance | Present |
model Modelica.Magnetic.FluxTubes.Basic.Idle | Present |
model Modelica.Magnetic.FluxTubes.Basic.Short | Present |
model Modelica.Magnetic.FluxTubes.Basic.Crossing | Present |
model Modelica.Magnetic.FluxTubes.Shapes.FixedShape.GenericFluxTube | Present |
package Modelica.Magnetic.FluxTubes.Shapes.HysteresisAndMagnets | Present |
package Modelica.Magnetic.FluxTubes.Material.HysteresisEverettParameter | Present |
package Modelica.Magnetic.FluxTubes.Material.HysteresisTableData | Present |
model Modelica.Magnetic.FluxTubes.Interfaces.PartialGeneric | Present |
model Modelica.Magnetic.FluxTubes.Interfaces.ConditionalHeatPort | Present |
model Modelica.Magnetic.FluxTubes.Interfaces.PartialGenericHysteresis | Present |
model Modelica.Magnetic.FluxTubes.Interfaces.PartialGenericHysteresisTellinen | Present |
package Modelica.Magnetic.FluxTubes.Utilities | Present |
model Modelica.Magnetic.FundamentalWave.Components.Permeance | Present |
model Modelica.Magnetic.FundamentalWave.Components.Crossing | Present |
model Modelica.Magnetic.FundamentalWave.BasicMachines.Components.SymmetricMultiPhaseCageWinding_obsolete | Present |
model Modelica.Magnetic.FundamentalWave.BasicMachines.Components.SaliencyCageWinding_obsolete | Present |
model Modelica.Magnetic.FundamentalWave.Interfaces.PartialTwoPortExtended | Present |
model Modelica.Magnetic.FundamentalWave.Interfaces.PositivePortInterface | Present |
model Modelica.Magnetic.FundamentalWave.Interfaces.NegativePortInterface | Present |
record Modelica.Magnetic.FundamentalWave.Types.SalientPermeance | Present |
package Modelica.Magnetic.QuasiStatic | Present |
model Modelica.Mechanics.MultiBody.Examples.Rotational3DEffects.BevelGear1D | Present |
class Modelica.Mechanics.Rotational.UsersGuide.ModelingOfFriction | Present |
model Modelica.Mechanics.Rotational.Components.ElastoBacklash2 | Present |
model Modelica.Mechanics.Rotational.Sources.SignTorque | Present |
model Modelica.Mechanics.Translational.Sources.SignForce | Present |
package Modelica.Mechanics.Translational.UsersGuide | Present |
function Modelica.Media.R134a.R134a_ph.dofpT | Present |
function Modelica.Media.R134a.R134a_ph.hofpT | Present |
function Modelica.Media.R134a.R134a_ph.phaseBoundaryAssert | Present |
package Modelica.Thermal.FluidHeatFlow.UsersGuide | Present |
function Modelica.Math.Matrices.LAPACK.dgelsy | Present |
function Modelica.Math.Matrices.LAPACK.dgelsy_vec | Present |
function Modelica.Math.Matrices.balanceABC | Present |
package Modelica.Math.Random | Present |
package Modelica.Math.Distributions | Present |
package Modelica.Math.Special | Present |
package Modelica.Math.FastFourierTransform | Present |
model Modelica.Utilities.Examples.WriteRealMatrixToFile | Present |
model Modelica.Utilities.Examples.ReadRealMatrixFromFile | Present |
function Modelica.Utilities.Streams.readMatrixSize | Present |
function Modelica.Utilities.Streams.readRealMatrix | Present |
function Modelica.Utilities.Streams.writeRealMatrix | Present |
function Modelica.Utilities.Strings.hashString | Present |
function Modelica.Utilities.System.getTime | Present |
function Modelica.Utilities.System.getPid | Present |
type Modelica.SIunits.DimensionlessRatio | Present |
class Modelica_3_2_1_Build_4.UsersGuide.ReleaseNotes.Version_3_2_1_build_4 |  | Present
class Modelica_3_2_1_Build_4.UsersGuide.ReleaseNotes.Version_3_2_1_build_3 |  | Present