.AixLib.Fluid.Examples.Performance.Example2

Information

This example demonstrates that the use of the parameter from_dp can be important for reducing the size of algebraic loops in hydraulic circuits with many pressure drop components connected in series and a pump setting the pressure head.

If from_dp=true, we obtain:
Sizes of nonlinear systems of equations: {7}
Sizes after manipulation of the nonlinear systems: {5}
If from_dp=false, we obtain:
Sizes of nonlinear systems of equations: {7}
Sizes after manipulation of the nonlinear systems: {1}

This can have a large impact on computational speed.

Following script can be used in Dymola to compare the CPU times.

cpuOld=OutputCPUtime;
evaluateOld=Evaluate;
OutputCPUtime:=true;
simulateModel("AixLib.Fluid.Examples.Performance.Example2(from_dp.k=false)", stopTime=10000, numberOfIntervals=10, method="dassl", resultFile="Example2");
simulateModel("AixLib.Fluid.Examples.Performance.Example2(from_dp.k=true)", stopTime=10000, numberOfIntervals=10, method="dassl", resultFile="Example2");
createPlot(id=1, position={15, 10, 592, 421}, range={0.0, 10000.0, -0.01, 25}, autoscale=false, grid=true);
plotExpression(apply(Example2[end-1].CPUtime), false, "from_dp=false", 1);
plotExpression(apply(Example2[end].CPUtime), false, "from_dp=true", 1);
OutputCPUtime=cpuOld;
Evaluate=evaluateOld;

See Jorissen et al. (2015) for a discussion.

References

Contents

NameDescription
 Medium

Revisions


Generated at 2024-11-24T19:25:44Z by OpenModelicaOpenModelica 1.24.2 using GenerateDoc.mos