Comparison Summary

Modelica with alias name: Modelica 3.2.1 Build 2 Modelica_3_2_1_Build_3 with alias name: Modelica 3.2.1 Build 3
Version: 3.2.1 Build 2 Version: 3.2.1 Build 3
Version date: 2013-08-14 Version date: 2015-06-26


block Blocks.Interfaces.PartialBooleanMISO



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
initial equation

pre(u) = fill(false, nu);





block Blocks.Math.RectifiedMean

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
mean

final x0=x0
x0

Present



block Blocks.Math.RootMeanSquare

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
mean

final x0=x0
x0

Present



block Blocks.Math.Harmonic

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
mean1

final x0=x0Cos
mean2

final x0=x0Sin
x0Cos

Present
x0Sin

Present



block Blocks.Nonlinear.SlewRateLimiter

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
Falling
min=-small


max=-small



model Electrical.Analog.Examples.CharacteristicThyristors

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
IdealThyristor1
off(start=true, fixed=true)
off(start=true,fixed=true)
IdealGTOThyristor1
off(fixed=true, start=true)
off(fixed=true,start=true)
IdealThyristor2
off(start=true, fixed=true)
off(start=true,fixed=true)
IdealGTOThyristor2
off(fixed=true, start=true)
off(fixed=true,start=true)



model Electrical.Analog.Ideal.IdealThyristor

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
Vknee
start=0


=0



model Electrical.Analog.Ideal.IdealGTOThyristor

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
Vknee
start=0


=0



model Electrical.Analog.Ideal.IdealDiode

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
Vknee
start=0


=0



model Electrical.Analog.Ideal.IdealOpeningSwitch

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
Ron
graphical

Goff
graphical




model Electrical.Analog.Ideal.IdealClosingSwitch

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
Ron
graphical

Goff
graphical




model Electrical.Analog.Ideal.ControlledIdealOpeningSwitch

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
level
graphical

Ron
graphical

Goff
graphical




model Electrical.Analog.Ideal.ControlledIdealClosingSwitch

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
level
graphical

Ron
graphical

Goff
graphical




model Electrical.Analog.Ideal.OpenerWithArc

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
tSwitch

fixed=true



model Electrical.Analog.Ideal.CloserWithArc

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
tSwitch

fixed=true



model Electrical.Analog.Ideal.ControlledOpenerWithArc

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
level
graphical

Ron
graphical

Goff
graphical

tSwitch

fixed=true



model Electrical.Analog.Ideal.ControlledCloserWithArc

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
level
graphical

Ron
graphical

Goff
graphical

tSwitch

fixed=true



model Electrical.Analog.Ideal.AD_Converter

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
z

start=0

fixed=true



model Electrical.Analog.Ideal.DA_Converter

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
vout

start=0

fixed=true
y

fixed=true



model Electrical.Digital.Sources.Pulse

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
T0

fixed=true



model Electrical.Digital.Sources.Clock

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
t_i

fixed=true



model Electrical.Machines.Examples.AsynchronousInductionMachines.AIMC_withLosses

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
w_meas
SIunits.Current
SIunits.AngularVelocity
pf_meas
SIunits.Current
Real
eff_meas
SIunits.Current
Real



model Electrical.Machines.Examples.SynchronousInductionMachines.SMR_Inverter

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
smr
ir(fixed=true)


ir(each fixed=true)



model Electrical.Machines.Examples.SynchronousInductionMachines.SMPM_Inverter

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
smpm
ir(fixed=true)


ir(each fixed=true)



model Electrical.Machines.Examples.SynchronousInductionMachines.SMEE_Generator

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
smee
ir(fixed=true)


ir(each fixed=true)



model Electrical.Machines.Examples.SynchronousInductionMachines.SMEE_LoadDump

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
smee
ir(fixed=true)




model Electrical.Machines.Examples.SynchronousInductionMachines.SMEE_Rectifier

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
smee
ir(fixed=true)


ir(each fixed=true)



model Electrical.Machines.BasicMachines.Transformers.Yy.Yy00



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_n2, core.plug_p3);
connect(core.plug_p2, l2sigma.plug_p); connect(core.plug_p2, l2sigma.plug_n);
connect(core.plug_n3, star2.plug_p);



model Electrical.Machines.BasicMachines.Transformers.Yy.Yy02



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(star2.pin_n, starpoint2);
connect(l2sigma.plug_p, Rot2.plug_p); connect(l2sigma.plug_n, Rot2.plug_p);
connect(l1sigma.plug_n, core.plug_p1);
...



model Electrical.Machines.BasicMachines.Transformers.Yy.Yy04



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(star2.pin_n, starpoint2);
connect(Rot2.plug_n, l2sigma.plug_p); connect(Rot2.plug_n, l2sigma.plug_n);
connect(l1sigma.plug_n, core.plug_p1);
...



model Electrical.Machines.BasicMachines.Transformers.Yy.Yy06



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_n2, core.plug_p3);
connect(l2sigma.plug_p, core.plug_n3); connect(l2sigma.plug_n, core.plug_n3);
connect(core.plug_p2, star2.plug_p);



model Electrical.Machines.BasicMachines.Transformers.Yy.Yy08



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(star2.pin_n, starpoint2);
connect(Rot2.plug_p, l2sigma.plug_p); connect(Rot2.plug_p, l2sigma.plug_n);
connect(l1sigma.plug_n, core.plug_p1);
...



model Electrical.Machines.BasicMachines.Transformers.Yy.Yy10



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(star2.pin_n, starpoint2);
connect(l2sigma.plug_p, Rot2.plug_n); connect(l2sigma.plug_n, Rot2.plug_n);
connect(l1sigma.plug_n, core.plug_p1);
...



model Electrical.Machines.BasicMachines.Transformers.Yd.Yd01



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
connect(star1.pin_n, starpoint1);
connect(Delta2.plug_p, r2.plug_n); connect(Delta2.plug_p, r2.plug_p);
connect(l1sigma.plug_n, core.plug_p1);
...
connect(core.plug_n3, Delta2.plug_n);
connect(core.plug_p2, l2sigma.plug_p); connect(core.plug_p2, l2sigma.plug_n);



model Electrical.Machines.BasicMachines.Transformers.Yd.Yd03



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
connect(star1.pin_n, starpoint1);
connect(Delta2.plug_n, r2.plug_n); connect(Delta2.plug_n, r2.plug_p);
connect(l2sigma.plug_p, Rot2.plug_p); connect(l2sigma.plug_n, Rot2.plug_p);
connect(l1sigma.plug_n, core.plug_p1);
...



model Electrical.Machines.BasicMachines.Transformers.Yd.Yd05



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
connect(star1.pin_n, starpoint1);
connect(Delta2.plug_n, r2.plug_n); connect(Delta2.plug_n, r2.plug_p);
connect(l1sigma.plug_n, core.plug_p1);
...
connect(core.plug_n2, core.plug_p3);
connect(core.plug_n3, l2sigma.plug_p); connect(core.plug_n3, l2sigma.plug_n);
connect(core.plug_p2, Delta2.plug_p);



model Electrical.Machines.BasicMachines.Transformers.Yd.Yd07



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
connect(star1.pin_n, starpoint1);
connect(Delta2.plug_p, r2.plug_n); connect(Delta2.plug_p, r2.plug_p);
connect(l1sigma.plug_n, core.plug_p1);
...
connect(core.plug_p2, Delta2.plug_n);
connect(l2sigma.plug_p, core.plug_n3); connect(l2sigma.plug_n, core.plug_n3);



model Electrical.Machines.BasicMachines.Transformers.Yd.Yd09



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
connect(star1.pin_n, starpoint1);
connect(Rot2.plug_p, l2sigma.plug_p); connect(Rot2.plug_p, l2sigma.plug_n);
connect(Delta2.plug_n, r2.plug_n); connect(Delta2.plug_n, r2.plug_p);
connect(l1sigma.plug_n, core.plug_p1);
...



model Electrical.Machines.BasicMachines.Transformers.Yd.Yd11



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
connect(star1.pin_n, starpoint1);
connect(Delta2.plug_n, r2.plug_n); connect(Delta2.plug_n, r2.plug_p);
connect(l1sigma.plug_n, core.plug_p1);
...
connect(core.plug_n3, Delta2.plug_p);
connect(core.plug_p2, l2sigma.plug_p); connect(core.plug_p2, l2sigma.plug_n);



model Electrical.Machines.BasicMachines.Transformers.Yz.Yz01



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_p3, Rot21.plug_p);
connect(l2sigma.plug_p, Rot22.plug_p); connect(l2sigma.plug_n, Rot22.plug_p);
connect(Rot22.plug_n, core.plug_n2);
...



model Electrical.Machines.BasicMachines.Transformers.Yz.Yz03



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_p3, Rot21.plug_n);
connect(l2sigma.plug_p, Rot22.plug_p); connect(l2sigma.plug_n, Rot22.plug_p);
connect(Rot22.plug_n, core.plug_n2);
...



model Electrical.Machines.BasicMachines.Transformers.Yz.Yz05



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_n3, star2.plug_p);
connect(l2sigma.plug_p, core.plug_n2); connect(l2sigma.plug_n, core.plug_n2);



model Electrical.Machines.BasicMachines.Transformers.Yz.Yz07



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_p3, Rot21.plug_n);
connect(l2sigma.plug_p, core.plug_n2); connect(l2sigma.plug_n, core.plug_n2);
connect(core.plug_n3, star2.plug_p);



model Electrical.Machines.BasicMachines.Transformers.Yz.Yz09



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_n3, star2.plug_p);
connect(l2sigma.plug_p, Rot22.plug_n); connect(l2sigma.plug_n, Rot22.plug_n);
connect(Rot22.plug_p, core.plug_n2);



model Electrical.Machines.BasicMachines.Transformers.Yz.Yz11



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_p3, Rot21.plug_n);
connect(l2sigma.plug_p, Rot22.plug_n); connect(l2sigma.plug_n, Rot22.plug_n);
connect(Rot22.plug_p, core.plug_n2);
...



model Electrical.Machines.BasicMachines.Transformers.Dy.Dy01



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
connect(star2.pin_n, starpoint2);
connect(l2sigma.plug_p, Rot2.plug_p); connect(l2sigma.plug_n, Rot2.plug_p);
connect(Delta1.plug_p, r1.plug_p);
...



model Electrical.Machines.BasicMachines.Transformers.Dy.Dy03



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
connect(star2.pin_n, starpoint2);
connect(Rot2.plug_n, l2sigma.plug_p); connect(Rot2.plug_n, l2sigma.plug_n);
connect(Delta1.plug_p, r1.plug_p);
...



model Electrical.Machines.BasicMachines.Transformers.Dy.Dy05



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_n2, core.plug_p3);
connect(l2sigma.plug_p, core.plug_n3); connect(l2sigma.plug_n, core.plug_n3);
connect(core.plug_p2, star2.plug_p);



model Electrical.Machines.BasicMachines.Transformers.Dy.Dy07



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(r1.plug_p, Delta1.plug_p);
connect(Rot2.plug_p, l2sigma.plug_p); connect(Rot2.plug_p, l2sigma.plug_n);
connect(l1sigma.plug_n, core.plug_p1);
...



model Electrical.Machines.BasicMachines.Transformers.Dy.Dy09



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(r1.plug_p, Delta1.plug_p);
connect(l2sigma.plug_p, Rot2.plug_n); connect(l2sigma.plug_n, Rot2.plug_n);
connect(l1sigma.plug_n, core.plug_p1);
...



model Electrical.Machines.BasicMachines.Transformers.Dy.Dy11



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_n3, star2.plug_p);
connect(core.plug_p2, l2sigma.plug_p); connect(core.plug_p2, l2sigma.plug_n);



model Electrical.Machines.BasicMachines.Transformers.Dd.Dd00



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
connect(r1.plug_p, Delta1.plug_p);
connect(Delta2.plug_p, r2.plug_n); connect(Delta2.plug_p, r2.plug_p);
connect(l1sigma.plug_n, core.plug_p1);
...
connect(core.plug_n2, core.plug_p3);
connect(core.plug_p2, l2sigma.plug_p); connect(core.plug_p2, l2sigma.plug_n);
connect(core.plug_n3, Delta2.plug_n);



model Electrical.Machines.BasicMachines.Transformers.Dd.Dd02



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
connect(r1.plug_p, Delta1.plug_p);
connect(Delta2.plug_n, r2.plug_n); connect(Delta2.plug_n, r2.plug_p);
connect(l2sigma.plug_p, Rot2.plug_p); connect(l2sigma.plug_n, Rot2.plug_p);
connect(l1sigma.plug_n, core.plug_p1);
...



model Electrical.Machines.BasicMachines.Transformers.Dd.Dd04



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
connect(r1.plug_p, Delta1.plug_p);
connect(Delta2.plug_n, r2.plug_n); connect(Delta2.plug_n, r2.plug_p);
connect(l1sigma.plug_n, core.plug_p1);
...
connect(core.plug_p2, Delta2.plug_p);
connect(core.plug_n3, l2sigma.plug_p); connect(core.plug_n3, l2sigma.plug_n);



model Electrical.Machines.BasicMachines.Transformers.Dd.Dd06



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
connect(Delta2.plug_p, r2.plug_n); connect(Delta2.plug_p, r2.plug_p);
connect(Delta1.plug_p, r1.plug_p);
...
connect(Delta2.plug_n, core.plug_p2);
connect(core.plug_n3, l2sigma.plug_p); connect(core.plug_n3, l2sigma.plug_n);



model Electrical.Machines.BasicMachines.Transformers.Dd.Dd08



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
connect(r1.plug_p, Delta1.plug_p);
connect(Delta2.plug_n, r2.plug_n); connect(Delta2.plug_n, r2.plug_p);
connect(Rot2.plug_p, l2sigma.plug_p); connect(Rot2.plug_p, l2sigma.plug_n);
connect(l1sigma.plug_n, core.plug_p1);
...



model Electrical.Machines.BasicMachines.Transformers.Dd.Dd10



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
connect(r1.plug_p, Delta1.plug_p);
connect(Delta2.plug_n, r2.plug_n); connect(Delta2.plug_n, r2.plug_p);
connect(l1sigma.plug_n, core.plug_p1);
...
connect(core.plug_n2, core.plug_p3);
connect(core.plug_p2, l2sigma.plug_p); connect(core.plug_p2, l2sigma.plug_n);
connect(core.plug_n3, Delta2.plug_p);



model Electrical.Machines.BasicMachines.Transformers.Dz.Dz00



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_p3, Rot21.plug_p);
connect(l2sigma.plug_p, Rot22.plug_p); connect(l2sigma.plug_n, Rot22.plug_p);
connect(Rot22.plug_n, core.plug_n2);
...



model Electrical.Machines.BasicMachines.Transformers.Dz.Dz02



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_p3, Rot21.plug_n);
connect(l2sigma.plug_p, Rot22.plug_p); connect(l2sigma.plug_n, Rot22.plug_p);
connect(Rot22.plug_n, core.plug_n2);
...



model Electrical.Machines.BasicMachines.Transformers.Dz.Dz04



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_p3, Rot21.plug_p);
connect(l2sigma.plug_p, core.plug_n2); connect(l2sigma.plug_n, core.plug_n2);
connect(core.plug_n3, star2.plug_p);



model Electrical.Machines.BasicMachines.Transformers.Dz.Dz06



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_n3, star2.plug_p);
connect(l2sigma.plug_p, core.plug_n2); connect(l2sigma.plug_n, core.plug_n2);



model Electrical.Machines.BasicMachines.Transformers.Dz.Dz08



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_n3, star2.plug_p);
connect(l2sigma.plug_p, Rot22.plug_n); connect(l2sigma.plug_n, Rot22.plug_n);
connect(Rot22.plug_p, core.plug_n2);



model Electrical.Machines.BasicMachines.Transformers.Dz.Dz10



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(core.plug_n3, star2.plug_p);
connect(l2sigma.plug_p, Rot22.plug_n); connect(l2sigma.plug_n, Rot22.plug_n);
connect(Rot22.plug_p, core.plug_n2);



model Electrical.Machines.Thermal.ThermalAmbientTransformer

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
constT2
final k=T1
final k=T2



model Electrical.Machines.Interfaces.PartialBasicTransformer

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
powerBalance
final power1=Machines.SpacePhasors.Functions.activePower(v1, +i1)
final power1=Machines.SpacePhasors.Functions.activePower(v1, i1)
final power2=Machines.SpacePhasors.Functions.activePower(v2, -i2)
final power2=Machines.SpacePhasors.Functions.activePower(v2, i2)


Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
connect(r1.plug_n,l1sigma.plug_p);
connect(l2sigma.plug_n,r2.plug_p);

connect(plug1, r1.plug_p);
connect(r2.plug_n, plug2);

connect(thermalPort, internalThermalPort);
...
connect(r2.heatPort, internalThermalPort.heatPort2);

connect(r2.plug_p, plug2);
connect(l2sigma.plug_p, r2.plug_n);



model Electrical.MultiPhase.Ideal.IdealThyristor

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
off

Present


Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

off = idealThyristor.off;
connect(plug_p.pin, idealThyristor.p);
...



model Electrical.MultiPhase.Ideal.IdealDiode



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
connect(idealDiode.n, plug_n.pin);

connect(idealDiode.heatPort, heatPort);



model Electrical.QuasiStationary.MultiPhase.Basic.Delta



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
if j<m then
connect(plugToPins_p.pin_p[j], plugToPins_n.pin_n[j+1]); connect(plugToPins_n.pin_n[j], plugToPins_p.pin_p[j + 1]);
else
connect(plugToPins_p.pin_p[j], plugToPins_n.pin_n[1]); connect(plugToPins_n.pin_n[j], plugToPins_p.pin_p[1]);
end if;
...



model Electrical.QuasiStationary.MultiPhase.Sensors.PowerSensor

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
currentP

final m=m
currentN

final m=m
voltageP

final m=m
voltageN

final m=m



model Electrical.Spice3.Examples.Spice3BenchmarkFourBitBinaryAdder

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
X1
X1(X1(X1(Q1(vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbc(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0))), X2(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true))), X3(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbe(start=0, fixed=true))), X4(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbe(start=0, fixed=true))), X5(Q1(vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbc(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbe(start=0, fixed=true))), X6(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0))), X7(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbe(start=0, fixed=true), vbc(start=0, fixed=true)), RC(v(start=0))), X8(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true))), X9(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), RC(v(start=0)))), X2(X1(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbc(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true))), X2(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), RC(v(start=0))), X3(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbe(start=0, fixed=true)), RC(v(start=0))), X4(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true))), X5(Q1(vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbe(start=0, fixed=true))), X6(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbe(start=0, fixed=true))), X7(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), RC(v(start=0))), X8(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true))), X9(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), RC(v(start=0)))))
X1(X1(X1(Q1(vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbc(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0))), X2(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true))), X3(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbe(start=0, fixed=true))), X4(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbe(start=0, fixed=true))), X5(Q1(vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbc(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbe(start=0, fixed=true))), X6(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0))), X7(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbe(start=0, fixed=true), vbc(start=0, fixed=true)), RC(v(start=0))), X8(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true))), X9(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), RC(v(start=0)))), X2(X1(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=false)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbc(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true))), X2(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), RC(v(start=0))), X3(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbe(start=0, fixed=true)), RC(v(start=0))), X4(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true))), X5(Q1(vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbe(start=0, fixed=true))), X6(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbe(start=0, fixed=true))), X7(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), RC(v(start=0))), X8(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true))), X9(Q1(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q2(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q3(Binternal(start=0), icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q4(icapbe(start=0), vbc(start=0, fixed=true), vbe(start=0, fixed=true)), Q5(vbc(start=0, fixed=true), vbe(start=0, fixed=true)), RC(v(start=0)))))



model Electrical.Spice3.Sources.V_pulse

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
T0

fixed=true



model Electrical.Spice3.Sources.I_pulse

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
T0

fixed=true



function Electrical.Spice3.Internal.Mos.mos2CalcInitEquations

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
in_vp
Electrical.Spice3.Internal.Mos.MosModelLineVariables
Electrical.Spice3.Internal.Mos2.Mos2ModelLineVariables



function Electrical.Spice3.Internal.Mos.mos2CalcCalcTempDependencies

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
in_vp
Electrical.Spice3.Internal.Mos.MosModelLineVariables
Electrical.Spice3.Internal.Mos2.Mos2ModelLineVariables



function Electrical.Spice3.Internal.Mos.mos2CalcNoBypassCode

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
in_qm

qm_capgb=0

qm_capgs=0

qm_capgd=0

qm_qgs=0

qm_qgb=0

qm_qgd=0

qm_vgs=0

qm_vgb=0

qm_vgd=0
int_m

m_len=1e-4

m_width=1e-4

m_drainArea=Spice3.Internal.SpiceConstants.CKTdefaultMosAD

m_sourceArea=Spice3.Internal.SpiceConstants.CKTdefaultMosAS

m_drainSquares=1.0

m_sourceSquares=1.0

m_drainPerimeter=0.0

m_sourcePerimeter=0.0

m_dICVDS=0.0

m_dICVDSIsGiven=0.0

m_dICVGS=0.0

m_dICVGSIsGiven=0.0

m_dICVBS=0.0

m_dICVBSIsGiven=0.0

m_off=0

m_bPMOS=0

m_nLevel=1

m_drainPerimiter=0.0

m_sourcePerimiter=0.0

m_uic=false



function Electrical.Spice3.Internal.Bjt.bjtNoBypassCode

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
temp
SIunits.Temp_K
Real


Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
algorithm
vce := in_p.m_type * (in_m_pVoltageValues[4] - in_m_pVoltageValues[6]); temp := 0;

vce = in_p.m_type * (in_m_pVoltageValues[4] - in_m_pVoltageValues[6]);
vbe = in_p.m_type * (in_m_pVoltageValues[5] - in_m_pVoltageValues[6]);
...
if (in_p.m_transitTimeHighCurrentF <> 0) then
cbe = cbe / (cbe + in_p.m_transitTimeHighCurrentF); temp = cbe / (cbe + in_p.m_transitTimeHighCurrentF);
argtf = argtf * temp * temp;
...



model Magnetic.FundamentalWave.Examples.BasicMachines.SMPM_Inverter

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
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
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
smpmM
ir(fixed=true)


ir(each fixed=true)
smpm3
ir(fixed=true)


ir(each fixed=true)



model Magnetic.FundamentalWave.Examples.BasicMachines.SMEE_Generator

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
smeeM
ir(fixed=true)


ir(each fixed=true)
smeeE
ir(fixed=true)


ir(each fixed=true)



model Magnetic.FundamentalWave.Examples.BasicMachines.SMEE_Generator_MultiPhase

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
smeeM
ir(fixed=true)


ir(each fixed=true)
smee3
ir(fixed=true)


ir(each fixed=true)



model Magnetic.FundamentalWave.Examples.BasicMachines.SMR_Inverter

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
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
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
smrM
ir(fixed=true)


ir(each fixed=true)
smr3
ir(fixed=true)


ir(each fixed=true)



model Mechanics.MultiBody.Examples.Elementary.PointGravityWithPointMasses2

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
world

gravitySphereDiameter=0.1



model Mechanics.MultiBody.Examples.Elementary.UserDefinedGravityField

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
world
redeclare function gravityAcceleration = Modelica.Mechanics.MultiBody.Examples.Elementary.Utilities.theoreticalNormalGravityWGS84 (mue=1, phi=geodeticLatitude)
redeclare function gravityAcceleration = Modelica.Mechanics.MultiBody.Examples.Elementary.Utilities.theoreticalNormalGravityWGS84 (phi=geodeticLatitude)



model Mechanics.MultiBody.Joints.Revolute



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
frame_b.r_0 = frame_a.r_0;
if rooted(frame_a.R) then if Connections.rooted(frame_a.R) then
R_rel = Frames.planarRotation(e, phi_offset + phi, w);
...



model Mechanics.MultiBody.Joints.Spherical



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
frame_b.r_0 = frame_a.r_0;
if rooted(frame_a.R) then if Connections.rooted(frame_a.R) then
R_rel_inv = Frames.nullRotation();
...



model Mechanics.MultiBody.Joints.FreeMotion



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
Connections.branch(frame_a.R, frame_b.R);
if rooted(frame_a.R) then if Connections.rooted(frame_a.R) then
R_rel_inv = Frames.nullRotation();
...



model Mechanics.MultiBody.Joints.Internal.InitAngle



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
R_rel = Frames.axesRotations(sequence_start,
                               {angle[1], angle[2], angle[3]},
                               {der(angle[1]), der(angle[2]), der(angle[3])});
if rooted(frame_a.R) then if Connections.rooted(frame_a.R) then
R_rel_inv = Frames.nullRotation();
...



model Mechanics.MultiBody.Parts.FixedRotation



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
frame_b.r_0 = frame_a.r_0 + Frames.resolve1(frame_a.R, r);
if rooted(frame_a.R) then if Connections.rooted(frame_a.R) then
frame_b.R = Frames.absoluteRotation(frame_a.R, R_rel);
...



model Mechanics.Rotational.Examples.Utilities.DirectInertia

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
J

min=0

=1



model Mechanics.Rotational.Examples.Utilities.InverseInertia

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
J

min=0

=1



model Mechanics.Rotational.Examples.Utilities.SpringDamper

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
springDamper
Mechanics.Rotational.Components.SpringDamper
Mechanics.Rotational.Examples.Utilities.SpringDamperNoRelativeStates
c

=1e4
d

=1



model Mechanics.Rotational.Examples.Utilities.Spring

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
c

=1e4



model Mechanics.Rotational.Components.LossyGear

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
interpolation_result
sizes=, 1-1
sizes=, 14
eta_mf1

unit="1"
eta_mf2

unit="1"
tau_bf_a
Real
SIunits.Torque
tau_eta
Real
SIunits.Torque
tau_bf1
Real
SIunits.Torque
tau_bf2
Real
SIunits.Torque
quadrant1
Real
SIunits.Torque
quadrant2
Real
SIunits.Torque
quadrant3
Real
SIunits.Torque
quadrant4
Real
SIunits.Torque
quadrant1_p
Real
SIunits.Torque
quadrant2_p
Real
SIunits.Torque
quadrant3_m
Real
SIunits.Torque
quadrant4_m
Real
SIunits.Torque
eta_mf1_0
=interpolation_result_0[1, 1]
=Modelica_3_2_1_Build_3.Math.Vectors.interpolate(lossTable[:, 1], lossTable[:, 2], 0, 1)

unit="1"
eta_mf2_0
=interpolation_result_0[1, 2]
=Modelica_3_2_1_Build_3.Math.Vectors.interpolate(lossTable[:, 1], lossTable[:, 3], 0, 1)

unit="1"
tau_bf1_0
Real
SIunits.Torque
tau_bf2_0
Real
SIunits.Torque
tau_bf_a_0
Real
SIunits.Torque
interpolation_result_0
Present



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
ideal = Modelica.Math.Matrices.isEqual(
        lossTable,
        [0, 1, 1, 0, 0],
        Modelica.Constants.eps);
interpolation_result = if ideal then [1, 1, 0, 0] else
Modelica.Math.tempInterpol2(
noEvent(abs(w_a)),
lossTable,
{2,3,4,5});
if ideal then

interpolation_result = [1, 1, 0, 0];
eta_mf1 = 1;
eta_mf2 = 1;
tau_bf1 = 0;
tau_bf2 = 0;
else
interpolation_result = [Modelica_3_2_1_Build_3.Math.Vectors.interpolate(
        lossTable[:, 1],
        lossTable[:, 2],
        noEvent(abs(w_a)),
        1),Modelica_3_2_1_Build_3.Math.Vectors.interpolate(
        lossTable[:, 1],
        lossTable[:, 3],
        noEvent(abs(w_a)),
        1),Modelica_3_2_1_Build_3.Math.Vectors.interpolate(
        lossTable[:, 1],
        lossTable[:, 4],
        noEvent(abs(w_a)),
        1),Modelica_3_2_1_Build_3.Math.Vectors.interpolate(
        lossTable[:, 1],
        lossTable[:, 5],
        noEvent(abs(w_a)),
        1)];
eta_mf1 = interpolation_result[1, 1];
...
tau_bf2 = noEvent(abs(interpolation_result[1, 4]));

end if;
if Modelica.Math.isEqual(
          eta_mf1,
          1.0,
          Modelica.Constants.eps) and Modelica.Math.isEqual(
          eta_mf2,
          1.0,
          Modelica.Constants.eps) then
...



model Mechanics.Translational.Examples.InitialConditions

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
s1
s_rel(start=1, fixed=true)
s_rel(start=0.5, fixed=true)



model Fluid.Examples.AST_BatchPlant.BaseClasses.TankWith3InletOutletArraysWithEvaporatorCondensor

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
m
quantity=Medium.mediumName

mXi
quantity=Medium.substanceNames




model Fluid.Examples.AST_BatchPlant.BaseClasses.TankWithTopPorts

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
level
SIunits.Height
SIunits.Length



model Fluid.Examples.AST_BatchPlant.Test.OneTank

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
tank
level_start=0
level_start=0.8

stiffCharacteristicForEmptyPort=false

hysteresisFactor=0.01



model Fluid.Examples.AST_BatchPlant.Test.TwoTanks

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
system

energyDynamics=Modelica_3_2_1_Build_3.Fluid.Types.Dynamics.FixedInitial

massDynamics=Modelica_3_2_1_Build_3.Fluid.Types.Dynamics.FixedInitial



model Fluid.Examples.AST_BatchPlant.Test.TankWithEmptyingPipe1

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
system

energyDynamics=Modelica_3_2_1_Build_3.Fluid.Types.Dynamics.FixedInitial

massDynamics=Modelica_3_2_1_Build_3.Fluid.Types.Dynamics.FixedInitial



model Fluid.Examples.AST_BatchPlant.Test.TankWithEmptyingPipe2

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
system

energyDynamics=Modelica_3_2_1_Build_3.Fluid.Types.Dynamics.FixedInitial

massDynamics=Modelica_3_2_1_Build_3.Fluid.Types.Dynamics.FixedInitial



model Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
system

energyDynamics=Modelica_3_2_1_Build_3.Fluid.Types.Dynamics.FixedInitial

massDynamics=Modelica_3_2_1_Build_3.Fluid.Types.Dynamics.FixedInitial



model Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe2

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
system

energyDynamics=Modelica_3_2_1_Build_3.Fluid.Types.Dynamics.FixedInitial

massDynamics=Modelica_3_2_1_Build_3.Fluid.Types.Dynamics.FixedInitial



model Fluid.Examples.HeatExchanger.HeatExchangerSimulation

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
HEX
length=2
length=20
area_h_1=0.075*2*20
area_h_1=0.075*20
area_h_2=0.075*2*20
area_h_2=0.075*20
redeclare model HeatTransfer_2 = Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.ConstantFlowHeatTransfer (alpha0=200)
redeclare model HeatTransfer_2 = Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.ConstantFlowHeatTransfer (alpha0=2000)
massFlowRate1
m_flow=0.5
m_flow=0.2
Ramp1
height=-1
height=0.4
offset=0.5
offset=-0.2



model Fluid.Examples.HeatExchanger.BaseClasses.BasicHX

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
wall
area_h=(crossArea_1 + crossArea_2)/2
area_h=area_h
pipe_1

final p_a_start=p_a_start1

final p_b_start=p_b_start1
pipe_2
final p_a_start=p_a_start1
final p_a_start=p_a_start2



model Fluid.Examples.HeatExchanger.BaseClasses.WallConstProps



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
end if;
heatPort_a[i].Q_flow=k_wall/s*(Ta[i]-T[i])*area_h/n; heatPort_a[i].Q_flow=2*k_wall/s*(Ta[i]-T[i])*area_h/n;
heatPort_b[i].Q_flow=k_wall/s*(Tb[i]-T[i])*area_h/n; heatPort_b[i].Q_flow=2*k_wall/s*(Tb[i]-T[i])*area_h/n;
end for;
...



model Fluid.Pipes.DynamicPipe

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
heatTransfer
redeclare each final package Medium = Medium


redeclare final package Medium = Medium



model Fluid.Pipes.BaseClasses.FlowModels.PartialStaggeredFlowModel

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
m_flows_turbulent
={nParallel*(Modelica.Constants.pi/4)*0.5*(dimensions[i] + dimensions[i + 1])*mus_act[i]*Re_turbulent for i in 1:n - 1}
={nParallel*(crossAreas[i] + crossAreas[i + 1])/(dimensions[i] + dimensions[i + 1])*mus_act[i]*Re_turbulent for i in 1:n - 1}



model Fluid.Pipes.BaseClasses.FlowModels.PartialGenericPipeFlow

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
dp_fric_nominal
=sum(WallFriction.pressureLoss_m_flow(m_flow_nominal/nParallel, rho_nominal, rho_nominal, mu_nominal, mu_nominal, pathLengths_internal, diameters, (roughnesses[1:n - 1] + roughnesses[2:n])/2, m_flow_small/nParallel, Res_turbulent_internal))
=sum(WallFriction.pressureLoss_m_flow(m_flow_nominal/nParallel, rho_nominal, rho_nominal, mu_nominal, mu_nominal, pathLengths_internal, diameters, (crossAreas[1:n - 1] + crossAreas[2:n])/2, (roughnesses[1:n - 1] + roughnesses[2:n])/2, m_flow_small/nParallel, Res_turbulent_internal))


Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
if from_dp and not WallFriction.dp_is_zero then
m_flows = homotopy(
actual= WallFriction.massFlowRate_dp(
dps_fg - {g*dheights[i]*rhos_act[i] for i in 1:n-1},
rhos_act,
rhos_act,
mus_act,
mus_act,
pathLengths_internal,
diameters,
(roughnesses[1:n-1]+roughnesses[2:n])/2,
dp_small/(n-1),
Res_turbulent_internal)*nParallel,
simplified= m_flow_nominal/dp_nominal*(dps_fg - g*dheights*rho_nominal));
m_flows = homotopy(
actual= WallFriction.massFlowRate_dp(
dps_fg - {g*dheights[i]*rhos_act[i] for i in 1:n-1},
rhos_act,
rhos_act,
mus_act,
mus_act,
pathLengths_internal,
diameters,
(crossAreas[1:n-1]+crossAreas[2:n])/2,
(roughnesses[1:n-1]+roughnesses[2:n])/2,
dp_small/(n-1),
Res_turbulent_internal)*nParallel,
simplified= m_flow_nominal/dp_nominal*(dps_fg - g*dheights*rho_nominal));
else
dps_fg = homotopy(
actual= WallFriction.pressureLoss_m_flow(
m_flows/nParallel,
rhos_act,
rhos_act,
mus_act,
mus_act,
pathLengths_internal,
diameters,
(roughnesses[1:n-1]+roughnesses[2:n])/2,
m_flow_small/nParallel,
Res_turbulent_internal) + {g*dheights[i]*rhos_act[i] for i in 1:n-1},
simplified= dp_nominal/m_flow_nominal*m_flows + g*dheights*rho_nominal);
dps_fg = homotopy(
actual= WallFriction.pressureLoss_m_flow(
m_flows/nParallel,
rhos_act,
rhos_act,
mus_act,
mus_act,
pathLengths_internal,
diameters,
(crossAreas[1:n-1]+crossAreas[2:n])/2,
(roughnesses[1:n-1]+roughnesses[2:n])/2,
m_flow_small/nParallel,
Res_turbulent_internal) + {g*dheights[i]*rhos_act[i] for i in 1:n-1},
simplified= dp_nominal/m_flow_nominal*m_flows + g*dheights*rho_nominal);
end if;
...
if from_dp and not WallFriction.dp_is_zero then
m_flows = homotopy(
actual= WallFriction.massFlowRate_dp_staticHead(
dps_fg,
rhos[1:n-1],
rhos[2:n],
mus[1:n-1],
mus[2:n],
pathLengths_internal,
diameters,
g*dheights,
(roughnesses[1:n-1]+roughnesses[2:n])/2,
dp_small/(n-1),
Res_turbulent_internal)*nParallel,
simplified= m_flow_nominal/dp_nominal*(dps_fg - g*dheights*rho_nominal));
m_flows = homotopy(
actual= WallFriction.massFlowRate_dp_staticHead(
dps_fg,
rhos[1:n-1],
rhos[2:n],
mus[1:n-1],
mus[2:n],
pathLengths_internal,
diameters,
g*dheights,
(crossAreas[1:n-1]+crossAreas[2:n])/2,
(roughnesses[1:n-1]+roughnesses[2:n])/2,
dp_small/(n-1),
Res_turbulent_internal)*nParallel,
simplified= m_flow_nominal/dp_nominal*(dps_fg - g*dheights*rho_nominal));
else
dps_fg = homotopy(
actual= WallFriction.pressureLoss_m_flow_staticHead(
m_flows/nParallel,
rhos[1:n-1],
rhos[2:n],
mus[1:n-1],
mus[2:n],
pathLengths_internal,
diameters,
g*dheights,
(roughnesses[1:n-1]+roughnesses[2:n])/2,
m_flow_small/nParallel,
Res_turbulent_internal),
simplified= dp_nominal/m_flow_nominal*m_flows + g*dheights*rho_nominal);
dps_fg = homotopy(
actual= WallFriction.pressureLoss_m_flow_staticHead(
m_flows/nParallel,
rhos[1:n-1],
rhos[2:n],
mus[1:n-1],
mus[2:n],
pathLengths_internal,
diameters,
g*dheights,
(crossAreas[1:n-1]+crossAreas[2:n])/2,
(roughnesses[1:n-1]+roughnesses[2:n])/2,
m_flow_small/nParallel,
Res_turbulent_internal),
simplified= dp_nominal/m_flow_nominal*m_flows + g*dheights*rho_nominal);
end if;
...



model Fluid.Pipes.BaseClasses.FlowModels.NominalTurbulentPipeFlow



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
for i in 1:n-1 loop initial equation

for i in 1:n loop
assert(abs(crossAreas[i] - pi/4*dimensions[i]^2) < 1e-10*crossAreas[i],
             "NominalTurbulentPipeFlow model requires circular tubes");
end for;

equation
  for i in 1:n-1 loop
ks_inv[i] = (m_flow_nominal/nParallel)^2/((dp_nominal/(n-1)-g*dheights[i]*rhos_act[i]))/rhos_act[i];
...



model Fluid.Pipes.BaseClasses.FlowModels.TurbulentPipeFlow



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
initial equation

for i in 1:n loop
assert(abs(crossAreas[i] - pi/4*dimensions[i]^2) < 1e-10*crossAreas[i],
             "NominalTurbulentPipeFlow model requires circular tubes");
end for;
if system.use_eps_Re then
...



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

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
crossArea

Present



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

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
crossArea

Present



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

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
crossArea

Present



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

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
crossArea

Present



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



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
if dp>=dp_a then
m_flow = Internal.m_flow_of_dp_fric(dp - dp_grav_a, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta); m_flow = Internal.m_flow_of_dp_fric(dp - dp_grav_a, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta);
elseif dp<=dp_b then
m_flow = Internal.m_flow_of_dp_fric(dp-dp_grav_b, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta); m_flow = Internal.m_flow_of_dp_fric(dp-dp_grav_b, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta);
else
(m_flow_a, dm_flow_ddp_fric_a) = Internal.m_flow_of_dp_fric(dp_a-dp_grav_a, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta); (m_flow_a, dm_flow_ddp_fric_a) = Internal.m_flow_of_dp_fric(dp_a-dp_grav_a, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta);
(m_flow_b, dm_flow_ddp_fric_b) = Internal.m_flow_of_dp_fric(dp_b-dp_grav_b, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta); (m_flow_b, dm_flow_ddp_fric_b) = Internal.m_flow_of_dp_fric(dp_b-dp_grav_b, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta);
(m_flow, dm_flow_ddp_fric_zero) = Utilities.regFun3(dp_zero, dp_b, dp_a, m_flow_b, m_flow_a, dm_flow_ddp_fric_b, dm_flow_ddp_fric_a);
...



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



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
assert(roughness > 1e-10,
    "roughness > 0 required for quadratic turbulent wall friction characteristic");
m_flow_a = if dp_grav_a<dp_grav_b then
Internal.m_flow_of_dp_fric(dp_grav_b - dp_grav_a, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta)+m_flow_small else
m_flow_small;
m_flow_a = if dp_grav_a<dp_grav_b then
Internal.m_flow_of_dp_fric(dp_grav_b - dp_grav_a, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta)+m_flow_small else
m_flow_small;
m_flow_b = if dp_grav_a<dp_grav_b then
Internal.m_flow_of_dp_fric(dp_grav_a - dp_grav_b, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta)-m_flow_small else
-m_flow_small;
m_flow_b = if dp_grav_a<dp_grav_b then
Internal.m_flow_of_dp_fric(dp_grav_a - dp_grav_b, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta)-m_flow_small else
-m_flow_small;
if m_flow>=m_flow_a then
dp = Internal.dp_fric_of_m_flow(m_flow, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta) + dp_grav_a; dp = Internal.dp_fric_of_m_flow(m_flow, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta) + dp_grav_a;
elseif m_flow<=m_flow_b then
dp = Internal.dp_fric_of_m_flow(m_flow, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta) + dp_grav_b; dp = Internal.dp_fric_of_m_flow(m_flow, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta) + dp_grav_b;
else
(dp_a, ddp_dm_flow_a) = Internal.dp_fric_of_m_flow(m_flow_a, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta); (dp_a, ddp_dm_flow_a) = Internal.dp_fric_of_m_flow(m_flow_a, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta);
dp_a = dp_a + dp_grav_a "Adding dp_grav to dp_fric to get dp";
(dp_b, ddp_dm_flow_b) = Internal.dp_fric_of_m_flow(m_flow_b, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta); (dp_b, ddp_dm_flow_b) = Internal.dp_fric_of_m_flow(m_flow_b, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta);
dp_b = dp_b + dp_grav_b "Adding dp_grav to dp_fric to get dp";
...



function Fluid.Pipes.BaseClasses.WallFriction.LaminarAndQuadraticTurbulent.Internal.m_flow_of_dp_fric

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
crossArea

Present



function Fluid.Pipes.BaseClasses.WallFriction.LaminarAndQuadraticTurbulent.Internal.dp_fric_of_m_flow

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
crossArea

Present



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

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
pi
Present



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
end if;
m_flow = (pi*diameter/4)*mu*(if dp >= 0 then Re else -Re); m_flow = crossArea/diameter*mu*(if dp >= 0 then Re else -Re);



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



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
mu = if m_flow >= 0 then mu_a else mu_b;
Re = (4/pi)*abs(m_flow)/(diameter*mu); Re = diameter*abs(m_flow)/(crossArea*mu);
lambda2 = if Re <= Re1 then 64*Re else
            (if Re >= Re2 then 0.25*(Re/Math.log10(Delta/3.7 + 5.74/Re^0.9))^2 else
             interpolateInRegion2(Re, Re1, Re2, Delta));
...



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



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
if dp>=dp_a then
m_flow = Internal.m_flow_of_dp_fric(dp-dp_grav_a, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta); m_flow = Internal.m_flow_of_dp_fric(dp-dp_grav_a, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta);
elseif dp<=dp_b then
m_flow = Internal.m_flow_of_dp_fric(dp-dp_grav_b, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta); m_flow = Internal.m_flow_of_dp_fric(dp-dp_grav_b, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta);
else
(m_flow_a, dm_flow_ddp_fric_a) = Internal.m_flow_of_dp_fric(dp_a-dp_grav_a, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta); (m_flow_a, dm_flow_ddp_fric_a) = Internal.m_flow_of_dp_fric(dp_a-dp_grav_a, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta);
(m_flow_b, dm_flow_ddp_fric_b) = Internal.m_flow_of_dp_fric(dp_b-dp_grav_b, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta); (m_flow_b, dm_flow_ddp_fric_b) = Internal.m_flow_of_dp_fric(dp_b-dp_grav_b, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta);
(m_flow, dm_flow_ddp_fric_zero) = Utilities.regFun3(dp_zero, dp_b, dp_a, m_flow_b, m_flow_a, dm_flow_ddp_fric_b, dm_flow_ddp_fric_a);
...



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



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
algorithm
m_flow_a := if dp_grav_a<dp_grav_b then
Internal.m_flow_of_dp_fric(dp_grav_b - dp_grav_a, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta)+m_flow_small else
m_flow_small;
m_flow_a := if dp_grav_a<dp_grav_b then
Internal.m_flow_of_dp_fric(dp_grav_b - dp_grav_a, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta)+m_flow_small else
m_flow_small;
m_flow_b = if dp_grav_a<dp_grav_b then
Internal.m_flow_of_dp_fric(dp_grav_a - dp_grav_b, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta)-m_flow_small else
-m_flow_small;
m_flow_b = if dp_grav_a<dp_grav_b then
Internal.m_flow_of_dp_fric(dp_grav_a - dp_grav_b, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta)-m_flow_small else
-m_flow_small;
if m_flow>=m_flow_a then
dp = Internal.dp_fric_of_m_flow(m_flow, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta) + dp_grav_a; dp = Internal.dp_fric_of_m_flow(m_flow, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta) + dp_grav_a;
elseif m_flow<=m_flow_b then
dp = Internal.dp_fric_of_m_flow(m_flow, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta) + dp_grav_b; dp = Internal.dp_fric_of_m_flow(m_flow, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta) + dp_grav_b;
else
(dp_a, ddp_dm_flow_a) = Internal.dp_fric_of_m_flow(m_flow_a, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta); (dp_a, ddp_dm_flow_a) = Internal.dp_fric_of_m_flow(m_flow_a, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta);
dp_a = dp_a + dp_grav_a "Adding dp_grav to dp_fric to get dp";
(dp_b, ddp_dm_flow_b) = Internal.dp_fric_of_m_flow(m_flow_b, rho_a, rho_b, mu_a, mu_b, length, diameter, Re1, Re2, Delta); (dp_b, ddp_dm_flow_b) = Internal.dp_fric_of_m_flow(m_flow_b, rho_a, rho_b, mu_a, mu_b, length, diameter, crossArea, Re1, Re2, Delta);
dp_b = dp_b + dp_grav_b "Adding dp_grav to dp_fric to get dp";
...



function Fluid.Pipes.BaseClasses.WallFriction.Detailed.Internal.m_flow_of_dp_fric

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
crossArea

Present


Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
end if;
m_flow = (pi*diameter/4)*mu*(if dp_fric >= 0 then Re else -Re); m_flow = crossArea/diameter*mu*(if dp_fric >= 0 then Re else -Re);
dm_flow_ddp_fric = (pi*diameter*mu)/4*dRe_ddp; dm_flow_ddp_fric = crossArea/diameter*mu*dRe_ddp;



function Fluid.Pipes.BaseClasses.WallFriction.Detailed.Internal.dp_fric_of_m_flow

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
crossArea

Present


Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
end if;
Re = (4/pi)*abs(m_flow)/(diameter*mu); Re = abs(m_flow)*diameter/(crossArea*mu);
aux1 = 4/(pi*diameter*mu); aux1 = diameter/(crossArea*mu);
if Re <= Re1 then
...



model Fluid.Pipes.BaseClasses.WallFriction.TestWallFrictionAndGravity

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
dp_fric_nominal
=WallFriction.pressureLoss_m_flow(m_flow_nominal, rho_nominal, rho_nominal, mu_nominal, mu_nominal, length, diameter, roughness, m_flow_small)
=WallFriction.pressureLoss_m_flow(m_flow_nominal, rho_nominal, rho_nominal, mu_nominal, mu_nominal, length, diameter, crossArea, roughness, m_flow_small)
crossArea

Present


Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
if from_dp and not WallFriction.dp_is_zero then
m_flow = WallFriction.massFlowRate_dp_staticHead(dp, rho_a, rho_b, mu_a, mu_b, length, diameter,
g_times_height_ab, roughness, if use_x_small_staticHead then dp_small_staticHead else dp_small);
m_flow = WallFriction.massFlowRate_dp_staticHead(dp, rho_a, rho_b, mu_a, mu_b, length, diameter,
g_times_height_ab, crossArea, roughness, if use_x_small_staticHead then dp_small_staticHead else dp_small);
else
dp = WallFriction.pressureLoss_m_flow_staticHead(m_flow, rho_a, rho_b, mu_a, mu_b, length, diameter,
g_times_height_ab, roughness, if use_x_small_staticHead then m_flow_small_staticHead else m_flow_small);
dp = WallFriction.pressureLoss_m_flow_staticHead(m_flow, rho_a, rho_b, mu_a, mu_b, length, diameter,
g_times_height_ab, crossArea, roughness, if use_x_small_staticHead then m_flow_small_staticHead else m_flow_small);
end if;
...



model Fluid.Machines.BaseClasses.PartialPump

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
show_NPSHa

Present



function Fluid.Dissipation.HeatTransfer.Channel.kc_evenGapOverall_KC

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
IN_con_turb

Present


Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
algorithm
kc := SMOOTH(
laminar,
turbulent,
Re)*Dissipation.HeatTransfer.Channel.kc_evenGapLaminar_KC(
IN_con, IN_var) + SMOOTH(
turbulent,
laminar,
Re)*Dissipation.HeatTransfer.Channel.kc_evenGapTurbulent_KC(
IN_con, IN_var);
kc := SMOOTH(
laminar,
turbulent,
Re)*Dissipation.HeatTransfer.Channel.kc_evenGapLaminar_KC(
IN_con, IN_var) + SMOOTH(
turbulent,
laminar,
Re)*Dissipation.HeatTransfer.Channel.kc_evenGapTurbulent_KC(
IN_con_turb, IN_var);



function Fluid.Dissipation.HeatTransfer.StraightPipe.kc_laminar_KC

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
Nu3
=if IN_con.target == TYP.UWTuUFF then (2/(1 + 22*Pr))^(1/6)*(Re*Pr*IN_con.d_hyd/IN_con.L)^0.5 else if IN_con.target == TYP.UHFuUFF then 1.953*(Re*Pr*IN_con.d_hyd/IN_con.L)^(1/3) else 0
=if IN_con.target == TYP.UWTuUFF then (2/(1 + 22*Pr))^(1/6)*(Re*Pr*IN_con.d_hyd/IN_con.L)^0.5 else if IN_con.target == TYP.UHFuUFF then 0.924*(Pr^(1/3))*(Re*IN_con.d_hyd/IN_con.L)^(1/2) else 0



function Fluid.Dissipation.HeatTransfer.StraightPipe.kc_overall_KC

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
IN_con_turb

Present
IN_con_lam

Present


Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
algorithm
kc := SMOOTH(
laminar,
turbulent,
Re)*Dissipation.HeatTransfer.StraightPipe.kc_laminar_KC(IN_con,
IN_var) + SMOOTH(
turbulent,
laminar,
Re)*Dissipation.HeatTransfer.StraightPipe.kc_turbulent_KC(
IN_con, IN_var);
kc := SMOOTH(
laminar,
turbulent,
Re)*Dissipation.HeatTransfer.StraightPipe.kc_laminar_KC(IN_con_lam,
IN_var) + SMOOTH(
turbulent,
laminar,
Re)*Dissipation.HeatTransfer.StraightPipe.kc_turbulent_KC(
IN_con_turb, IN_var);



function Fluid.Dissipation.PressureLoss.Bend.dp_curvedOverall_DP

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
A2
=if frac_RD > 2.0 then 6e2 else if frac_RD <= 2.0 and frac_RD >= 0.7 then (if frac_RD > 1.0 then 1e3 else if frac_RD <= 1.0 and frac_RD > 0.7 then 3e3 else 6e3) else 4e3
=if frac_RD > 2.0 then 6e2 else if frac_RD <= 2.0 and frac_RD > 0.55 then (if frac_RD > 1.0 then 1e3 else if frac_RD <= 1.0 and frac_RD > 0.7 then 3e3 else 6e3) else 4e3



function Fluid.Dissipation.PressureLoss.Bend.dp_curvedOverall_MFLOW

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
A2
=if frac_RD > 2.0 then 6e2 else if frac_RD <= 2.0 and frac_RD >= 0.7 then (if frac_RD > 1.0 then 1e3 else if frac_RD <= 1.0 and frac_RD > 0.7 then 3e3 else 6e3) else 4e3
=if frac_RD > 2.0 then 6e2 else if frac_RD <= 2.0 and frac_RD > 0.55 then (if frac_RD > 1.0 then 1e3 else if frac_RD <= 1.0 and frac_RD > 0.7 then 3e3 else 6e3) else 4e3
v_lam
=(-A2/2*IN_var.eta + 0.5*sqrt(max(MIN, (A2*IN_var.eta)^2 + 8*zeta_LOC_sharp_turb*abs(dp)*IN_var.rho*d_hyd^2)))/zeta_LOC_sharp_turb/IN_var.rho/d_hyd
=if 1e7*sqrt(abs(zeta_LOC_sharp_turb*abs(dp)*IN_var.rho*d_hyd^2)) < abs(A2*IN_var.eta) then 2*abs(dp)*d_hyd/A2/IN_var.eta else (-A2/2*IN_var.eta + 0.5*sqrt(max(MIN, (A2*IN_var.eta)^2 + 8*zeta_LOC_sharp_turb*abs(dp)*IN_var.rho*d_hyd^2)))/zeta_LOC_sharp_turb/IN_var.rho/d_hyd
v_tra
=(-A2/2*IN_var.eta + 0.5*sqrt(max(MIN, (A2*IN_var.eta)^2 + 8*zeta_LOC_sharp_turb*abs(dp_lam_max)*IN_var.rho*d_hyd^2)))/zeta_LOC_sharp_turb/IN_var.rho/d_hyd
=if 1e7*sqrt(abs(zeta_LOC_sharp_turb*abs(dp_lam_max)*IN_var.rho*d_hyd^2)) < abs(A2*IN_var.eta) then 2*abs(dp_lam_max)*d_hyd/A2/IN_var.eta else (-A2/2*IN_var.eta + 0.5*sqrt(max(MIN, (A2*IN_var.eta)^2 + 8*zeta_LOC_sharp_turb*abs(dp_lam_max)*IN_var.rho*d_hyd^2)))/zeta_LOC_sharp_turb/IN_var.rho/d_hyd



function Fluid.Dissipation.PressureLoss.Bend.dp_edgedOverall_DP

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
Re_lam_min
=1e3
=5e2
Re_lam_max
=4e4
=1e4
Re_turb_max
=3e5
=2e5
B
=0.0292*(delta)^2 + 1.1995*delta
=24.8
exp
=1
=0.263
lambda_FRI_rough
=0.25/(Modelica.Math.log10(k/(3.7*IN_con.d_hyd) + 5.74/min(Re_turb_const, max(Re_lam_leave, Re))^0.9))^2
=0.25/(Modelica_3_2_1_Build_3.Math.log10(k/(3.7*IN_con.d_hyd) + 5.74/max(Re_lam_min, Re)^0.9))^2
lambda_FRI_smooth
=0.25/(Modelica.Math.log10(5.74/min(Re_turb_const, max(Re_lam_leave, Re))^0.9))^2
=0.25/(Modelica_3_2_1_Build_3.Math.log10(5.74/max(Re_lam_min, Re)^0.9))^2
CF_fri
=if delta <= 45 then max(1, min(1.4, (lambda_FRI_rough/lambda_FRI_smooth))) else 1
=SMOOTH(Re_lam_leave, Re_lam_min, Re)*max(1, min(1.4, (lambda_FRI_rough/lambda_FRI_smooth))) + SMOOTH(Re_lam_min, Re_lam_leave, Re)
CF_Re
=SMOOTH(Re_min, Re_lam_leave, Re)*B/Re^exp + SMOOTH(Re_lam_leave, Re_min, Re)
=SMOOTH(Re_turb_min, Re_turb_max, Re)*B/Re^exp + SMOOTH(Re_turb_max, Re_turb_min, Re)
zeta_TOT
=A*C1*zeta_LOC*CF_fri*CF_Re
=A*C1*zeta_LOC*CF_Re*CF_fri



function Fluid.Dissipation.PressureLoss.Bend.dp_edgedOverall_MFLOW

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
Re_lam_min
=1e3
=500
Re_lam_max
=4e4
=1e4
Re_turb_max
=3e5
=2e5
B
=0.0292*(delta)^2 + 1.1995*delta
=24.8
exp
=1
=0.263
dp_min
=1
=A*C1*zeta_LOC*(B/2)*(d_hyd/IN_var.eta)^(-exp)*IN_var.rho^(1 - exp)*v_min^(pow)
v_turb
=(2*abs(dp))^0.5*(A*C1*zeta_LOC*IN_var.rho)^(-0.5)
=(A*C1*zeta_LOC*IN_var.rho/2)^(-0.5)*Modelica_3_2_1_Build_3.Fluid.Dissipation.Utilities.Functions.General.SmoothPower(abs(dp), dp_min, 0.5)
v_lam
=(2*(d_hyd/IN_var.eta)^exp/(A*C1*zeta_LOC*B*(IN_var.rho)^(1 - exp)))^(1/pow)*Fluid.Dissipation.Utilities.Functions.General.SmoothPower(abs(dp), dp_min, 1/pow)
=(2*(d_hyd/IN_var.eta)^exp/(A*C1*zeta_LOC*B*(IN_var.rho)^(1 - exp)))^(1/pow)*Modelica_3_2_1_Build_3.Fluid.Dissipation.Utilities.Functions.General.SmoothPower(abs(dp), dp_min, 1/pow)
v_smooth
=if abs(dp) > dp_lam_max then v_turb else if abs(dp) < dp_lam_trans then v_lam else SMOOTH(dp_lam_max, dp_lam_trans, abs(dp))*v_turb + SMOOTH(dp_lam_trans, dp_lam_max, abs(dp))*v_lam
=if abs(dp) > dp_turb_max then v_turb else if abs(dp) < dp_turb_min then v_lam else SMOOTH(dp_turb_max, dp_turb_min, abs(dp))*v_turb + SMOOTH(dp_turb_min, dp_turb_max, abs(dp))*v_lam
lambda_FRI_rough
=0.25/(Modelica.Math.log10(k/(3.7*IN_con.d_hyd) + 5.74/min(Re_turb_const, max(Re_lam_leave, Re_smooth))^0.9))^2
=0.25/(Modelica_3_2_1_Build_3.Math.log10(k/(3.7*IN_con.d_hyd) + 5.74/max(Re_lam_min, Re_smooth)^0.9))^2
lambda_FRI_smooth
=0.25/(Modelica.Math.log10(5.74/min(Re_turb_const, max(Re_lam_leave, Re_smooth))^0.9))^2
=0.25/(Modelica_3_2_1_Build_3.Math.log10(5.74/max(Re_lam_min, Re_smooth)^0.9))^2
CF_fri
=if delta <= 45 then max(1, min(1.4, (lambda_FRI_rough/lambda_FRI_smooth))) else 1
=SMOOTH(dp_lam_leave, dp_lam_min, abs(dp))*max(1, min(1.4, (lambda_FRI_rough/lambda_FRI_smooth))) + SMOOTH(dp_lam_min, dp_lam_leave, abs(dp))
v_lam_trans
Present

v_lam_max
Present

dp_lam_trans
Present

dp_lam_max
Present

v_min

Present
v_lam_min

Present
v_lam_leave

Present
dp_lam_min

Present
lambda_lam_leave_rough

Present
lambda_lam_leave_smooth

Present
dp_lam_leave

Present
lambda_turb_min_rough

Present
lambda_turb_min_smooth

Present
lambda_turb_max_rough

Present
lambda_turb_max_smooth

Present
v_turb_min

Present
v_turb_max

Present
dp_turb_min

Present
dp_turb_max

Present



function Fluid.Dissipation.PressureLoss.StraightPipe.dp_overall_DP

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
IN_con_lam

Present


Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
algorithm
DP := SMOOTH(
Re_lam_min,
Re_lam_max,
Re)*Dissipation.PressureLoss.StraightPipe.dp_laminar_DP(
IN_con,
IN_var,
m_flow) + SMOOTH(
Re_lam_max,
Re_lam_min,
Re)*Dissipation.PressureLoss.StraightPipe.dp_turbulent_DP(
IN_con,
IN_var,
m_flow);
DP := SMOOTH(
Re_lam_min,
Re_lam_max,
Re)*Dissipation.PressureLoss.StraightPipe.dp_laminar_DP(
IN_con_lam,
IN_var,
m_flow) + SMOOTH(
Re_lam_max,
Re_lam_min,
Re)*Dissipation.PressureLoss.StraightPipe.dp_turbulent_DP(
IN_con,
IN_var,
m_flow);



function Fluid.Dissipation.PressureLoss.StraightPipe.dp_overall_MFLOW

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
IN_con_lam

Present


Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
algorithm
M_FLOW := SMOOTH(
Re_lam_min,
Re_turb,
Re)*Dissipation.PressureLoss.StraightPipe.dp_laminar_MFLOW(
IN_con,
IN_var,
dp) + SMOOTH(
Re_turb,
Re_lam_min,
Re)*Dissipation.PressureLoss.StraightPipe.dp_turbulent_MFLOW(
IN_con,
IN_var,
dp);
M_FLOW := SMOOTH(
Re_lam_min,
Re_turb,
Re)*Dissipation.PressureLoss.StraightPipe.dp_laminar_MFLOW(
IN_con_lam,
IN_var,
dp) + SMOOTH(
Re_turb,
Re_lam_min,
Re)*Dissipation.PressureLoss.StraightPipe.dp_turbulent_MFLOW(
IN_con,
IN_var,
dp);



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

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
ddeltax
Present

dpow
Present



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
elseif noEvent(x <= -adeltax) then
dy = -dx*pow*(-x)^(pow - 1); dy = dx*pow*(-x)^(pow - 1);
else
...



function Fluid.Dissipation.Utilities.Functions.General.Stepsmoother

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
r_1
Present



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
algorithm
result := if x >= 0.999999*(func - nofunc) + nofunc and func > nofunc or x
<= 0.999999*(func - nofunc) + nofunc and nofunc > func then 1 else if x
<= 0.000001*(func - nofunc) + nofunc and func > nofunc or x >= 0.000001*(
func - nofunc) +
nofunc and nofunc > func then 0 else ((0.5*(exp(r_1) - exp(
-r_1))/(0.5*(exp(r_1)
+ exp(-r_1))) + 1)/2);
result := if x >= func and func > nofunc or x <= func and nofunc > func then
1 else if x <= nofunc and func > nofunc or x >= nofunc and nofunc > func
then 0 else (1 + Modelica_3_2_1_Build_3.Math.tanh(
Modelica_3_2_1_Build_3.Math.tan(m*x + b)))/2;



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



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
algorithm
dresult := if x >= 0.999*(func - nofunc) + nofunc and func > nofunc or x <=
0.999*(func - nofunc) + nofunc and nofunc > func or x <= 0.001*(func -
nofunc) + nofunc and func > nofunc or x >= 0.001*(func - nofunc) + nofunc
and nofunc > func then 0 else (1 - Modelica.Math.tanh(Modelica.Math.tan(m*
x +
b))^2)*(1 + Modelica.Math.tan(m*x + b)^2)*m*dx/2;
dresult := if x >= func and func > nofunc or x <= func and nofunc > func or x
<= nofunc and func > nofunc or x >= nofunc and nofunc > func then 0 else (
1 - Modelica_3_2_1_Build_3.Math.tanh(Modelica_3_2_1_Build_3.Math.tan(m*x +
b))^2)*(1 + Modelica_3_2_1_Build_3.Math.tan(m*x + b)^2)*(-m^2/
Modelica_3_2_1_Build_3.Constants.pi*(dfunc - dnofunc)*x + m*dx + m^2/
Modelica_3_2_1_Build_3.Constants.pi*(dfunc - dnofunc)*nofunc - m*dnofunc)/2;



model Media.Examples.TestOnly.MixIdealGasAir

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
medium2
X(start={0.2,0.8}, fixed=true)
X(start={0.2,0.8}, each fixed=true)



model Media.Examples.TestOnly.FlueGas

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
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.PartialSimpleIdealGasMedium.setState_psX



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
algorithm
state := ThermodynamicState(p=p, T=Modelica.Math.exp(s/cp_const +
Modelica.Math.log(reference_T)) + R_gas*Modelica.Math.log(p/reference_p));
state := ThermodynamicState(p=p, T=Modelica_3_2_1_Build_3.Math.exp(s/cp_const
+ Modelica_3_2_1_Build_3.Math.log(reference_T) + R_gas*
Modelica_3_2_1_Build_3.Math.log(p/reference_p)));



function Media.Interfaces.PartialSimpleIdealGasMedium.specificInternalEnergy



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
algorithm
u := (cp_const - R_gas)*(state.T - T0); u := cp_const*(state.T - T0) - R_gas*state.T;



function Media.Interfaces.PartialSimpleIdealGasMedium.specificHelmholtzEnergy



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
algorithm
f := (cp_const - R_gas)*(state.T - T0) - state.T*specificEntropy(state); f := specificInternalEnergy(state) - state.T*specificEntropy(state);



record Media.Common.IF97BaseTwoPhase

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
phase
=0


start=0



package Media.Incompressible.TableBased

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
T_min
Media.Interfaces.Types.Temperature
SIunits.Temperature
T_max
Media.Interfaces.Types.Temperature
SIunits.Temperature



function Media.Incompressible.TableBased.Polynomials_Temp.integral



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
end for;

p2[n] = 0.0;



function Media.Water.IF97_Utilities.BaseIF97.Transport.cond_dTp

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
TREL
parameter

rhoREL
parameter




function Media.Water.IF97_Utilities.rho_ph_der

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
aux
Present

properties

Present


Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
algorithm
if (aux.region == 4) then if (properties.region == 4) then
rho_der = (aux.rho*(aux.rho*aux.cv/aux.dpT + 1.0)/(aux.dpT*aux.T))*p_der
+ (-aux.rho*aux.rho/(aux.dpT*aux.T))*h_der;
rho_der = (properties.rho*(properties.rho*properties.cv/properties.dpT + 1.0)/(properties.dpT*properties.T))*p_der
+ (-properties.rho*properties.rho/(properties.dpT*properties.T))*h_der;
elseif (aux.region == 3) then elseif (properties.region == 3) then
rho_der = ((aux.rho*(aux.cv*aux.rho + aux.pt))/(aux.rho*aux.rho*aux.pd*
aux.cv + aux.T*aux.pt*aux.pt))*p_der + (-aux.rho*aux.rho*aux.pt/(aux.rho
*aux.rho*aux.pd*aux.cv + aux.T*aux.pt*aux.pt))*h_der;
rho_der = ((properties.rho*(properties.cv*properties.rho + properties.pt))/(properties.rho*properties.rho*properties.pd*
properties.cv + properties.T*properties.pt*properties.pt))*p_der + (-properties.rho*properties.rho*properties.pt/(properties.rho
*properties.rho*properties.pd*properties.cv + properties.T*properties.pt*properties.pt))*h_der;
else
rho_der = (-aux.rho*aux.rho*(aux.vp*aux.cp - aux.vt/aux.rho + aux.T*aux.vt
*aux.vt)/aux.cp)*p_der + (-aux.rho*aux.rho*aux.vt/(aux.cp))*h_der;
rho_der = (-properties.rho*properties.rho*(properties.vp*properties.cp - properties.vt/properties.rho + properties.T*properties.vt
*properties.vt)/properties.cp)*p_der + (-properties.rho*properties.rho*properties.vt/(properties.cp))*h_der;
end if;
...



function Media.Water.IF97_Utilities.T_ph_der

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
aux
Present

properties

Present


Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
algorithm
if (aux.region == 4) then if (properties.region == 4) then
T_der = 1/aux.dpT*p_der; T_der = 1/properties.dpT*p_der;
elseif (aux.region == 3) then elseif (properties.region == 3) then
T_der = ((-aux.rho*aux.pd + aux.T*aux.pt)/(aux.rho*aux.rho*aux.pd*aux.cv
+ aux.T*aux.pt*aux.pt))*p_der + ((aux.rho*aux.rho*aux.pd)/(aux.rho*aux.rho
*aux.pd*aux.cv + aux.T*aux.pt*aux.pt))*h_der;
T_der = ((-properties.rho*properties.pd + properties.T*properties.pt)/(properties.rho*properties.rho*properties.pd*properties.cv
+ properties.T*properties.pt*properties.pt))*p_der + ((properties.rho*properties.rho*properties.pd)/(properties.rho*properties.rho
*properties.pd*properties.cv + properties.T*properties.pt*properties.pt))*h_der;
else
T_der = ((-1/aux.rho + aux.T*aux.vt)/aux.cp)*p_der + (1/aux.cp)*h_der; T_der = ((-1/properties.rho + properties.T*properties.vt)/properties.cp)*p_der + (1/properties.cp)*h_der;
end if;
...



function Media.Water.IF97_Utilities.s_ph_der

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
aux
Present

properties

Present


Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
algorithm
s_der := -1/(aux.rho*aux.T)*p_der + 1/aux.T*h_der; s_der := -1/(properties.rho*properties.T)*p_der + 1/properties.T*h_der;



function Media.Water.IF97_Utilities.waterBaseProp_dT



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
aux.pt = aux.R*rho*f.delta*(f.fdelta - f.tau*f.fdeltatau);

aux.cv = aux.R*(-f.tau*f.tau*f.ftautau);
aux.cp = (aux.rho*aux.rho*aux.pd*aux.cv + aux.T*aux.pt*aux.pt)/(aux.rho*
        aux.rho*aux.pd);
aux.cv = aux.R*(-f.tau*f.tau*f.ftautau);

aux.x = 0.0;
...



function Math.Matrices.LU_solve2



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3

...
for i in 1:size(LU, 1) loop
assert(LU[i, i] <> 0, "Solving a linear system of equations with function
\"Matrices.LU_solve\" is not possible, since the LU decomposition
is singular, i.e., no unique solution exists.");
assert(LU[i, i] <> 0, "Solving a linear system of equations with function
\"Matrices.LU_solve2\" is not possible, since the LU decomposition
is singular, i.e., no unique solution exists.");
end for;
...



function Math.Matrices.LAPACK.dgelsx

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
lwork
Present



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
external
"FORTRAN 77" dgelsx(
nrow,
ncol,
nrhs,
Awork,
nrow,
X,
nx,
jpvt,
rcond,
rank,
work,
lwork,
info);
external
"FORTRAN 77" dgelsx(
nrow,
ncol,
nrhs,
Awork,
nrow,
X,
nx,
jpvt,
rcond,
rank,
work,
info);



function Math.Matrices.LAPACK.dgelsx_vec

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
lwork
Present



Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
external
"FORTRAN 77" dgelsx(
nrow,
ncol,
1,
Awork,
nrow,
x,
nx,
jpvt,
rcond,
rank,
work,
lwork,
info);
external
"FORTRAN 77" dgelsx(
nrow,
ncol,
1,
Awork,
nrow,
x,
nx,
jpvt,
rcond,
rank,
work,
info);



function Math.Matrices.LAPACK.dgesvx

Component
Modelica 3.2.1 Build 2
Modelica 3.2.1 Build 3
equed

Present


Equations in Modelica 3.2.1 Build 2 Equations in Modelica 3.2.1 Build 3
external
"FORTRAN 77" dgesvx(
"N",
transA,
size(A, 1),
size(B, 2),
Awork,
lda,
AF,
lda,
ipiv,
"N",
R,
C,
B,
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);



Class Modelica 3.2.1 Build 2Modelica 3.2.1 Build 3
model Modelica.Media.Air.MoistAir.PsychrometricData Present
class Modelica_3_2_1_Build_3.UsersGuide.ReleaseNotes.Version_3_2_1_build_3
Present
model Modelica_3_2_1_Build_3.Mechanics.Rotational.Examples.Utilities.SpringDamperNoRelativeStates
Present
model Modelica_3_2_1_Build_3.Fluid.Examples.NonCircularPipes
Present
model Modelica_3_2_1_Build_3.Media.Examples.PsychrometricData
Present