diff --git a/OpenHPL/ElectroMech/Turbines/EmpiricalTurbine.mo b/OpenHPL/ElectroMech/Turbines/EmpiricalTurbine.mo
new file mode 100644
index 00000000..e44b289a
--- /dev/null
+++ b/OpenHPL/ElectroMech/Turbines/EmpiricalTurbine.mo
@@ -0,0 +1,28 @@
+within OpenHPL.ElectroMech.Turbines;
+model EmpiricalTurbine
+ extends OpenHPL.ElectroMech.BaseClasses.TorqueEquation;
+ extends OpenHPL.Interfaces.TurbineContacts;
+ extends OpenHPL.Icons.Turbine;
+
+ parameter OpenHPL.Types.TurbineCharacteristics turbineCharacteristics;
+ parameter OpenHPL.Types.TurbineData turbineData;
+ SI.Length Ht(start=100) "Turbine head";
+ SI.VolumeFlowRate Qt "Turbine flow rate";
+
+ SI.Torque Tt "Turbine torque";
+ Modelica.Blocks.Sources.RealExpression realExpression(y=Tt) annotation (Placement(transformation(extent={{-70,-10},{-50,10}})));
+protected
+ Real opening=u_t;
+ SI.Frequency nrps=speedSensor.w/(2*C.pi) "Rotational speed (in revolutions per seconds)";
+equation
+ Ht = abs(i.p - o.p)/(data.rho*data.g);
+ i.mdot + o.mdot = 0;
+ i.mdot = Qt*data.rho;
+ (Qt, Tt) = OpenHPL.Functions.TurbineLookUp(Ht, nrps, opening, turbineData, turbineCharacteristics);
+ connect(realExpression.y, torque.tau) annotation (Line(points={{-49,0},{-37.2,0}}, color={0,0,127}));
+annotation (
+ Documentation(info = "
+
Turbine model based on normalized, empirical turbine characteristics and turbine data for the best efficiency point.
+In this intial release, the turbine characteristics and tubine data must be constructed separately passed to the model. This may change in future releases.
+"));
+end EmpiricalTurbine;
diff --git a/OpenHPL/ElectroMech/Turbines/package.order b/OpenHPL/ElectroMech/Turbines/package.order
index 66a526c9..82b07e82 100644
--- a/OpenHPL/ElectroMech/Turbines/package.order
+++ b/OpenHPL/ElectroMech/Turbines/package.order
@@ -1,3 +1,4 @@
Turbine
Francis
Pelton
+EmpiricalTurbine
diff --git a/OpenHPL/Functions/TurbineLookUp.mo b/OpenHPL/Functions/TurbineLookUp.mo
new file mode 100644
index 00000000..02dab4ed
--- /dev/null
+++ b/OpenHPL/Functions/TurbineLookUp.mo
@@ -0,0 +1,81 @@
+within OpenHPL.Functions;
+function TurbineLookUp
+ extends Modelica.Icons.Function;
+ //
+ input SI.Length Ht;
+ input SI.Frequency nrps;
+ input Real opening;
+ input OpenHPL.Types.TurbineData td "Turbine data";
+ input OpenHPL.Types.TurbineCharacteristics hc "Turbine characteristics";
+ output SI.VolumeFlowRate Qt "Discharge";
+ output SI.Torque Tt "Hydraulic torque";
+protected
+ constant Real phi = (1 + sqrt(5))/2 "Golden ratio";
+ constant Real resphi = 2 - phi "Reciprocal of golden ratio (0.618...)";
+ constant Real eps = 1.0e-08;
+ constant Integer nitr = 99;
+ Real a "Current left bound";
+ Real b "Current right bound";
+ Real t1 "First interior point";
+ Real t2 "Second interior point";
+ Real f1 "Function value at x1";
+ Real f2 "Function value at x2";
+ Real x_min "Current estimate of minimum location";
+ Real f_min "Current estimate of minimum value";
+ Real controlPoints[hc.nPoints, hc.nDim];
+ Real[hc.nDim] cP1;
+ Real[hc.nDim] cP2;
+ Real target;
+ Real err;
+ Integer itr;
+algorithm
+ controlPoints:=WeightedControlPoints(opening,hc);
+ // Added the: max(abs(Ht),eps) due to errors when initializing the model.
+ target:=((nrps*td.Dn)/sqrt(max(abs(Ht),eps)*td.g))/((td.nrps*td.Dn)/sqrt(td.Hbep*td.g));
+ a:=0;
+ b:=1;
+ itr:=0;
+ err:=1.e+10;
+ t1 := a + resphi*(b - a);
+ cP1 := deCasteljau(t1, hc.nDim, controlPoints);
+ f1 := sqrt((cP1[1] - target)^2);
+ t2 := b - resphi*(b - a);
+ cP2 := deCasteljau(t2, hc.nDim, controlPoints);
+ f2 := sqrt((cP2[1] - target)^2);
+ while ((err > eps) and (itr < nitr)) loop
+ if f1 < f2 then
+// Minimum is in [a, x2]
+ b := t2;
+ t2 := t1;
+ f2 := f1;
+ t1 := a + resphi*(b - a);
+ cP1 :=deCasteljau(t1, hc.nDim, controlPoints);
+ f1 := sqrt((cP1[1] - target)^2);
+ else
+// Minimum is in [x1, b]
+ a := t1;
+ t1 := t2;
+ f1 := f2;
+ t2 := b - resphi*(b - a);
+ cP2 := deCasteljau(t2, hc.nDim, controlPoints);
+ f2 := sqrt((cP2[1] - target)^2);
+ end if;
+ itr := itr + 1;
+ err := min(f1, f2);
+ end while;
+ Qt := (cP1[2] + cP2[2])*0.5*(td.Qbep*sqrt(Ht/td.Hbep));
+ Tt := (cP1[3] + cP2[3])*0.5*(td.Tbep*(Ht/td.Hbep));
+
+annotation(
+ Documentation(info="
+Compute the physical discharge (Q) and torque (T) based on the turbine speed [nrps],
+turbine head [Ht] and opening. The algorithm is briely summarized below.
+
+- Find the actual charateristic curve by weighted interpolation of the two closest curves
+- Use golden section search to find the correct position along the speed curve
+- Compute physcal discharge and torque based on normalized unit data and the turbine information
+
+At the moment the algorithm assumes that \\(n_{ED}\\) is monotonously increasing as function of the
+parametric value and is not able to handle s-shaped curves.
+"));
+end TurbineLookUp;
diff --git a/OpenHPL/Functions/WeightedControlPoints.mo b/OpenHPL/Functions/WeightedControlPoints.mo
new file mode 100644
index 00000000..6447c2e3
--- /dev/null
+++ b/OpenHPL/Functions/WeightedControlPoints.mo
@@ -0,0 +1,48 @@
+within OpenHPL.Functions;
+function WeightedControlPoints
+extends Modelica.Icons.Function;
+ /*
+ */
+ input Real opening;
+ input OpenHPL.Types.TurbineCharacteristics hc "Turbine characteristics";
+ output Real data[hc.nPoints, hc.nDim];
+protected
+ Real td[hc.nPoints, hc.nDim];
+ Real beta;
+ Integer i;
+
+algorithm
+//if (opening >= hc.opening[1] and opening <= hc.opening[hc.nPoints]) then
+ i:=1;
+ while (i < hc.nCurves) loop
+ if (opening < hc.opening[i]) then
+// Defined as closed guide vanes
+ for j in 1:hc.nPoints loop
+ td[j,1] := hc.data[1, j, 1];
+ td[j,2] := 0.0;
+// Torque set to zero. Must be corrected in the future
+ td[j,3] := 0.0;
+ end for;
+ break;
+ elseif ( (hc.opening[i] <= opening) and (opening <= hc.opening[i+1])) then
+ beta:=(opening-hc.opening[i])/(hc.opening[i+1]-hc.opening[i]);
+ for j in 1:hc.nPoints loop
+ for k in 1:hc.nDim loop
+ td[j,k] := (1.-beta)*hc.data[i, j, k]+ beta*hc.data[i+1, j, k];
+ end for;
+ end for;
+ break;
+ else
+ i:=i+1;
+ end if;
+ end while;
+
+ data:=td;
+annotation(
+ Documentation(info="
+Compute an intermediate turbine characteristics based on linear interpolation of the two closest curves.
+The turbine opening is used as argument for finding the closest curves. Assumes that the opening in the HillChart data is monotonously increasing.
+If data at small opening is missing, the flow and speed data for the first curve is used and the torque is set to zero.
+"));
+
+end WeightedControlPoints;
diff --git a/OpenHPL/Functions/deCasteljau.mo b/OpenHPL/Functions/deCasteljau.mo
new file mode 100644
index 00000000..d573e69b
--- /dev/null
+++ b/OpenHPL/Functions/deCasteljau.mo
@@ -0,0 +1,34 @@
+within OpenHPL.Functions;
+function deCasteljau
+ extends Modelica.Icons.Function;
+ input Real t "Parameter between 0 and 1";
+ input Integer ndim "Dimensional space";
+ input Real[:, ndim] controlPoints "Array of control points [n,ndim]";
+ output Real[ndim] point "Computed point on the curve";
+protected
+ Integer n = size(controlPoints, 1);
+ Real temp[n, ndim];
+algorithm
+// Initialize temp with control points
+ temp := controlPoints;
+// Perform De Casteljau iterations
+ for r in 1:n - 1 loop
+ for i in 1:n - r loop
+ for k in 1:ndim loop
+ temp[i, k] := (1 - t)*temp[i, k] + t*temp[i + 1, k];
+ end for;
+ end for;
+ end for;
+// The first element now contains the point on the curve
+for k in 1:ndim loop
+ point[k] := temp[1, k];
+end for;
+annotation(
+Documentation(info = "
+
+Implementation of Bezier curve evaluation using the deCasteljau algorithm.
+At the moment only one single Bezier curve per parameter dimension is assumed,
+but the order of the curve is arbritray, but define by the number of control points
+(e.g., curve order = number of control points - 1).
+"));
+end deCasteljau;
diff --git a/OpenHPL/Functions/package.order b/OpenHPL/Functions/package.order
index 13c1d019..cafba8e8 100644
--- a/OpenHPL/Functions/package.order
+++ b/OpenHPL/Functions/package.order
@@ -1,3 +1,6 @@
Fitting
DarcyFriction
KP07
+deCasteljau
+WeightedControlPoints
+TurbineLookUp
diff --git a/OpenHPL/Types/ReactionTurbines.mo b/OpenHPL/Types/ReactionTurbines.mo
new file mode 100644
index 00000000..90bccdbe
--- /dev/null
+++ b/OpenHPL/Types/ReactionTurbines.mo
@@ -0,0 +1,13 @@
+within OpenHPL.Types;
+
+record ReactionTurbines "Collection of empirical turbine characteristics for use together with the EmpiricalTurbine model"
+ extends Modelica.Icons.Record;
+ protected
+ parameter Real oA[5]={0.10,0.25,0.50,0.75,1.00};
+ parameter Real cP1[5,4,3]={{{ 0.00,0.27,0.45 },{ 0.58,0.33,0.42 },{ 1.04,0.16,0.11 },{ 1.43,-0.13,-0.42 }},{{ 0.00,0.64,1.17 },{ 0.70,0.74,1.04 },{ 1.13,0.31,0.13 },{ 1.43,-0.17,-0.50 }},{{ 0.00,1.25,2.27 },{ 0.90,1.30,1.71 },{ 1.29,0.53,-0.05 },{ 1.43,-0.18,-0.52 }},{{ 0.00,1.71,2.95 },{ 1.05,1.71,1.99 },{ 1.31,0.63,-0.17 },{ 1.44,-0.16,-0.53 }},{{ 0.00,2.10,3.41 },{ 1.15,1.98,2.04 },{ 1.31,0.76,-0.18 },{ 1.45,-0.13,-0.54 }}};
+
+ parameter Real cP2[5,4,3]={{{ 0.00,0.18,0.26 },{ 0.41,0.10,0.17 },{ 1.04,0.31,0.25 },{ 1.32,-0.04,-0.21 }},{{ 0.00,0.44,0.73 },{ 0.43,0.37,0.67 },{ 1.27,0.55,0.29 },{ 1.38,0.00,-0.19 }},{{ 0.00,0.91,1.55 },{ 0.59,0.89,1.33 },{ 1.57,0.79,0.19 },{ 1.51,0.00,-0.29 }},{{ 0.00,1.30,2.11 },{ 0.78,1.33,1.77 },{ 1.72,0.92,-0.12 },{ 1.58,0.00,-0.28 }},{{ 0.00,1.57,2.41 },{ 0.92,1.63,1.91 },{ 1.82,1.02,-0.30 },{ 1.63,0.00,-0.35 }}};
+ public
+ TurbineCharacteristics turbine1(nCurves = 5, nDim = 3, nPoints = 4, opening = oA, data = cPoints) "N_QE=0.07";
+ TurbineCharacteristics turbine2(nCurves = 5, nDim = 3, nPoints = 4, opening = oA, data = cPoints) "N_EQ=0.20";
+end ReactionTurbines;
diff --git a/OpenHPL/Types/TurbineCharacteristics.mo b/OpenHPL/Types/TurbineCharacteristics.mo
new file mode 100644
index 00000000..a06a69d0
--- /dev/null
+++ b/OpenHPL/Types/TurbineCharacteristics.mo
@@ -0,0 +1,27 @@
+within OpenHPL.Types;
+record TurbineCharacteristics
+ extends Modelica.Icons.Record;
+ parameter Integer nCurves;
+ parameter Integer nPoints;
+ parameter Integer nDim "parameter space, currently 3";
+ parameter Real opening[nCurves];
+ parameter Real data[nCurves, nPoints, nDim];
+
+ annotation(
+ Documentation(info="
+This data record is based on the first version of the empirical turbine model, where normalized data for nED, QED and TED are given for
+a number of normalized openings.
+The HillChart record contains three integer values:
+
+- nCurves - number of Bezier curves
+- nPoints - number of Bezier control points (order of curve +1)
+- nDim - parameter space (currently assumed to be 3. (Model may/will (?) fail for other values).
+
+The data itself is contained in two multidimensional arrays:
+
+- opening[nCurves] - gives the opening \\(\\in [0,1]\\) for each curve. It is assumed that the array is sorted from smallest to larges value.
+- data[nCurves, nPoints, nDim] - gives the Bezier control points for each curve and each parameter (nED,QED,TED).
+
+"));
+
+end TurbineCharacteristics;
diff --git a/OpenHPL/Types/TurbineData.mo b/OpenHPL/Types/TurbineData.mo
new file mode 100644
index 00000000..bfac7d09
--- /dev/null
+++ b/OpenHPL/Types/TurbineData.mo
@@ -0,0 +1,31 @@
+within OpenHPL.Types;
+record TurbineData
+ extends Modelica.Icons.Record;
+ //
+ parameter SI.Length Dn "Nominal diameter";
+ parameter SI.Frequency nrps "Best efficiency rotational speed";
+ parameter SI.Length Hbep "Best efficiency head";
+ parameter SI.VolumeFlowRate Qbep "Best efficiency discharge";
+ parameter SI.Torque Tbep "Best efficiency shaft torque";
+ parameter Real openingBep "Best efficiency opening";
+ parameter SI.Acceleration g;
+ parameter SI.Density rho;
+
+ annotation(
+ Documentation(info = "
+Data record with key turbine information. Used together with the normalized turbine characteristics to calculate physical values.
+
+
+| Variable | Description |
+
+
+| Dn [m] | Nominal diameter |
+| nrps [1/s] | Best efficiency rotational speed |
+| Hbep [m] | Best efficiency head |
+| Qbep [m³/s] | Best efficiency discharge |
+| Tbep [Nm] | Best efficiency torque |
+| openingBep [-] | Normalize best efficiency opening (must be between 0 and 1) |
+
+
"));
+
+end TurbineData;
diff --git a/OpenHPL/Types/package.order b/OpenHPL/Types/package.order
index d23f790b..553b604d 100644
--- a/OpenHPL/Types/package.order
+++ b/OpenHPL/Types/package.order
@@ -4,3 +4,6 @@ Fitting
FrictionMethod
Lambda
SurgeTank
+TurbineData
+TurbineCharacteristics
+ReactionTurbines
diff --git a/OpenHPLTest/CaseStudingValentynasCase.mo b/OpenHPLTest/Archive/CaseStudingValentynasCase.mo
similarity index 99%
rename from OpenHPLTest/CaseStudingValentynasCase.mo
rename to OpenHPLTest/Archive/CaseStudingValentynasCase.mo
index 7ecbc23e..390702c1 100644
--- a/OpenHPLTest/CaseStudingValentynasCase.mo
+++ b/OpenHPLTest/Archive/CaseStudingValentynasCase.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model CaseStudingValentynasCase "HP system model for Valentyna's Master case"
extends Modelica.Icons.Example;
Real coef2, coef3;
diff --git a/OpenHPLTest/HPAllTypeFittingsTest.mo b/OpenHPLTest/Archive/HPAllTypeFittingsTest.mo
similarity index 99%
rename from OpenHPLTest/HPAllTypeFittingsTest.mo
rename to OpenHPLTest/Archive/HPAllTypeFittingsTest.mo
index 88cd7d59..7dc303bf 100644
--- a/OpenHPLTest/HPAllTypeFittingsTest.mo
+++ b/OpenHPLTest/Archive/HPAllTypeFittingsTest.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPAllTypeFittingsTest "Test for comparing fitting behaviour"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir headWater(h_0=10) annotation (Placement(transformation(extent={{-100,-10},{-80,10}})));
diff --git a/OpenHPLTest/HPBjarneBorresen.mo b/OpenHPLTest/Archive/HPBjarneBorresen.mo
similarity index 99%
rename from OpenHPLTest/HPBjarneBorresen.mo
rename to OpenHPLTest/Archive/HPBjarneBorresen.mo
index 95f2c922..63cd8674 100644
--- a/OpenHPLTest/HPBjarneBorresen.mo
+++ b/OpenHPLTest/Archive/HPBjarneBorresen.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPBjarneBorresen "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=503 - 499.5) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HPDraftTube.mo b/OpenHPLTest/Archive/HPDraftTube.mo
similarity index 99%
rename from OpenHPLTest/HPDraftTube.mo
rename to OpenHPLTest/Archive/HPDraftTube.mo
index 8755ca8c..872c83d1 100644
--- a/OpenHPLTest/HPDraftTube.mo
+++ b/OpenHPLTest/Archive/HPDraftTube.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPDraftTube "Testing the draft tube models."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=48) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HPElasticKPPenstock.mo b/OpenHPLTest/Archive/HPElasticKPPenstock.mo
similarity index 99%
rename from OpenHPLTest/HPElasticKPPenstock.mo
rename to OpenHPLTest/Archive/HPElasticKPPenstock.mo
index 09254060..1d679479 100644
--- a/OpenHPLTest/HPElasticKPPenstock.mo
+++ b/OpenHPLTest/Archive/HPElasticKPPenstock.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPElasticKPPenstock "Model of HP system with elastic penctock (KP), but simplified models for turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=48) annotation (Placement(transformation(origin={-92,66}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPElasticKPPenstockANDIntake.mo b/OpenHPLTest/Archive/HPElasticKPPenstockANDIntake.mo
similarity index 98%
rename from OpenHPLTest/HPElasticKPPenstockANDIntake.mo
rename to OpenHPLTest/Archive/HPElasticKPPenstockANDIntake.mo
index 8be46e7f..2035172c 100644
--- a/OpenHPLTest/HPElasticKPPenstockANDIntake.mo
+++ b/OpenHPLTest/Archive/HPElasticKPPenstockANDIntake.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPElasticKPPenstockANDIntake "Model of HP system with elastic penctock and intake (KP), but simplified models for turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=48) annotation (Placement(transformation(origin={-92,66}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPElasticKPPenstockCompres.mo b/OpenHPLTest/Archive/HPElasticKPPenstockCompres.mo
similarity index 99%
rename from OpenHPLTest/HPElasticKPPenstockCompres.mo
rename to OpenHPLTest/Archive/HPElasticKPPenstockCompres.mo
index abd0a97d..ff017de4 100644
--- a/OpenHPLTest/HPElasticKPPenstockCompres.mo
+++ b/OpenHPLTest/Archive/HPElasticKPPenstockCompres.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPElasticKPPenstockCompres "Model of HP system with elastic penctock (KP), but simplified models for turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=48) annotation (Placement(transformation(origin={-92,66}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPElasticKPPenstockFrancis.mo b/OpenHPLTest/Archive/HPElasticKPPenstockFrancis.mo
similarity index 99%
rename from OpenHPLTest/HPElasticKPPenstockFrancis.mo
rename to OpenHPLTest/Archive/HPElasticKPPenstockFrancis.mo
index 4efb54b0..043b82c3 100644
--- a/OpenHPLTest/HPElasticKPPenstockFrancis.mo
+++ b/OpenHPLTest/Archive/HPElasticKPPenstockFrancis.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPElasticKPPenstockFrancis "HP system model with Francis turbine and elastic penstock"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=48) annotation (Placement(transformation(origin={-92,66}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPElasticKPPenstockFrancisGov.mo b/OpenHPLTest/Archive/HPElasticKPPenstockFrancisGov.mo
similarity index 99%
rename from OpenHPLTest/HPElasticKPPenstockFrancisGov.mo
rename to OpenHPLTest/Archive/HPElasticKPPenstockFrancisGov.mo
index 3a015b89..ac90399d 100644
--- a/OpenHPLTest/HPElasticKPPenstockFrancisGov.mo
+++ b/OpenHPLTest/Archive/HPElasticKPPenstockFrancisGov.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPElasticKPPenstockFrancisGov "HP system model with Francis turbine and elastic penstock and governor"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=48) annotation (Placement(transformation(origin={-92,66}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPElasticKPPenstockHalfSurgeD.mo b/OpenHPLTest/Archive/HPElasticKPPenstockHalfSurgeD.mo
similarity index 99%
rename from OpenHPLTest/HPElasticKPPenstockHalfSurgeD.mo
rename to OpenHPLTest/Archive/HPElasticKPPenstockHalfSurgeD.mo
index 06ab2333..6531026d 100644
--- a/OpenHPLTest/HPElasticKPPenstockHalfSurgeD.mo
+++ b/OpenHPLTest/Archive/HPElasticKPPenstockHalfSurgeD.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPElasticKPPenstockHalfSurgeD "Similar to previous HP system, but with twice reduced surge tank diameter"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir annotation (Placement(transformation(origin={-92,66}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPElasticKPPenstockWithoutSurge.mo b/OpenHPLTest/Archive/HPElasticKPPenstockWithoutSurge.mo
similarity index 99%
rename from OpenHPLTest/HPElasticKPPenstockWithoutSurge.mo
rename to OpenHPLTest/Archive/HPElasticKPPenstockWithoutSurge.mo
index 336cf0db..a330329f 100644
--- a/OpenHPLTest/HPElasticKPPenstockWithoutSurge.mo
+++ b/OpenHPLTest/Archive/HPElasticKPPenstockWithoutSurge.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPElasticKPPenstockWithoutSurge "Model of HP system without surge tank and with elastic penctock (KP), but simplified models for turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=48) annotation (Placement(transformation(origin={-90,62}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPLinTest.mo b/OpenHPLTest/Archive/HPLinTest.mo
similarity index 89%
rename from OpenHPLTest/HPLinTest.mo
rename to OpenHPLTest/Archive/HPLinTest.mo
index 98f0b135..1898ab44 100644
--- a/OpenHPLTest/HPLinTest.mo
+++ b/OpenHPLTest/Archive/HPLinTest.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPLinTest
extends Modelica.Icons.Example;
OpenHPLTest.HPLiniarizationKPFran hpl;
diff --git a/OpenHPLTest/HPLiniarization.mo b/OpenHPLTest/Archive/HPLiniarization.mo
similarity index 98%
rename from OpenHPLTest/HPLiniarization.mo
rename to OpenHPLTest/Archive/HPLiniarization.mo
index 495e5d2d..60ac7873 100644
--- a/OpenHPLTest/HPLiniarization.mo
+++ b/OpenHPLTest/Archive/HPLiniarization.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPLiniarization "Simple HP system model for liniarization"
extends Modelica.Icons.Example;
input Real u(start = 0.7493);
diff --git a/OpenHPLTest/HPLiniarization2.mo b/OpenHPLTest/Archive/HPLiniarization2.mo
similarity index 98%
rename from OpenHPLTest/HPLiniarization2.mo
rename to OpenHPLTest/Archive/HPLiniarization2.mo
index 2e054e60..fdef2e97 100644
--- a/OpenHPLTest/HPLiniarization2.mo
+++ b/OpenHPLTest/Archive/HPLiniarization2.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPLiniarization2 "Simple HP system model for liniarization"
extends Modelica.Icons.Example;
input Real u(start = 0.7493);
diff --git a/OpenHPLTest/HPLiniarization3.mo b/OpenHPLTest/Archive/HPLiniarization3.mo
similarity index 98%
rename from OpenHPLTest/HPLiniarization3.mo
rename to OpenHPLTest/Archive/HPLiniarization3.mo
index ff54ef46..f6da8719 100644
--- a/OpenHPLTest/HPLiniarization3.mo
+++ b/OpenHPLTest/Archive/HPLiniarization3.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPLiniarization3 "Simple HP system model for liniarization"
extends Modelica.Icons.Example;
input Real u(start = 0.7493);
diff --git a/OpenHPLTest/HPLiniarization4.mo b/OpenHPLTest/Archive/HPLiniarization4.mo
similarity index 98%
rename from OpenHPLTest/HPLiniarization4.mo
rename to OpenHPLTest/Archive/HPLiniarization4.mo
index 479564ac..1c0b5bf1 100644
--- a/OpenHPLTest/HPLiniarization4.mo
+++ b/OpenHPLTest/Archive/HPLiniarization4.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPLiniarization4 "Simple HP system model for liniarization"
extends Modelica.Icons.Example;
input Real u(start = 0.7493);
diff --git a/OpenHPLTest/HPLiniarizationFranGen.mo b/OpenHPLTest/Archive/HPLiniarizationFranGen.mo
similarity index 99%
rename from OpenHPLTest/HPLiniarizationFranGen.mo
rename to OpenHPLTest/Archive/HPLiniarizationFranGen.mo
index 9a8b9587..952ad3af 100644
--- a/OpenHPLTest/HPLiniarizationFranGen.mo
+++ b/OpenHPLTest/Archive/HPLiniarizationFranGen.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPLiniarizationFranGen "HP system model for liniarization with Francis turbine + generator"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Pipe intake(H=23, Vdot_0=18.5952) annotation (Placement(transformation(extent={{-72,50},{-52,70}})));
diff --git a/OpenHPLTest/HPLiniarizationGenIPSL.mo b/OpenHPLTest/Archive/HPLiniarizationGenIPSL.mo
similarity index 99%
rename from OpenHPLTest/HPLiniarizationGenIPSL.mo
rename to OpenHPLTest/Archive/HPLiniarizationGenIPSL.mo
index 07592790..6fa548c1 100644
--- a/OpenHPLTest/HPLiniarizationGenIPSL.mo
+++ b/OpenHPLTest/Archive/HPLiniarizationGenIPSL.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPLiniarizationGenIPSL "Synergy with OpenIPSL library(generator + governor)"
extends Modelica.Icons.Example;
input Real u = 0.574;
diff --git a/OpenHPLTest/HPLiniarizationGenIPSLKP.mo b/OpenHPLTest/Archive/HPLiniarizationGenIPSLKP.mo
similarity index 99%
rename from OpenHPLTest/HPLiniarizationGenIPSLKP.mo
rename to OpenHPLTest/Archive/HPLiniarizationGenIPSLKP.mo
index 20e1ebbb..51c28f36 100644
--- a/OpenHPLTest/HPLiniarizationGenIPSLKP.mo
+++ b/OpenHPLTest/Archive/HPLiniarizationGenIPSLKP.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPLiniarizationGenIPSLKP "Synergy with OpenIPSL library(generator + governor)"
extends Modelica.Icons.Example;
input Real u = 0.574;
diff --git a/OpenHPLTest/HPLiniarizationKP.mo b/OpenHPLTest/Archive/HPLiniarizationKP.mo
similarity index 98%
rename from OpenHPLTest/HPLiniarizationKP.mo
rename to OpenHPLTest/Archive/HPLiniarizationKP.mo
index ea5b4c19..01bb6f88 100644
--- a/OpenHPLTest/HPLiniarizationKP.mo
+++ b/OpenHPLTest/Archive/HPLiniarizationKP.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPLiniarizationKP "HP system model for liniarization with elastic penstock (KP)"
extends Modelica.Icons.Example;
input Real u(start = 0.7493);
diff --git a/OpenHPLTest/HPLiniarizationKPFran.mo b/OpenHPLTest/Archive/HPLiniarizationKPFran.mo
similarity index 99%
rename from OpenHPLTest/HPLiniarizationKPFran.mo
rename to OpenHPLTest/Archive/HPLiniarizationKPFran.mo
index f3ce3f4e..6c5bf64f 100644
--- a/OpenHPLTest/HPLiniarizationKPFran.mo
+++ b/OpenHPLTest/Archive/HPLiniarizationKPFran.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPLiniarizationKPFran "HP system model for liniarization with elastic penstock (KP) + Francis turbine + generator"
extends Modelica.Icons.Example;
input Real u;
diff --git a/OpenHPLTest/HPModel.mo b/OpenHPLTest/Archive/HPModel.mo
similarity index 98%
rename from OpenHPLTest/HPModel.mo
rename to OpenHPLTest/Archive/HPModel.mo
index 8a919861..9019ac5d 100644
--- a/OpenHPLTest/HPModel.mo
+++ b/OpenHPLTest/Archive/HPModel.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPModel
inner OpenHPL.Data data;
import Modelica.Constants.pi;
diff --git a/OpenHPLTest/HPModelDEA.mo b/OpenHPLTest/Archive/HPModelDEA.mo
similarity index 98%
rename from OpenHPLTest/HPModelDEA.mo
rename to OpenHPLTest/Archive/HPModelDEA.mo
index 783195e9..b3807100 100644
--- a/OpenHPLTest/HPModelDEA.mo
+++ b/OpenHPLTest/Archive/HPModelDEA.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPModelDEA
inner OpenHPL.Data data;
import Modelica.Constants.pi;
diff --git a/OpenHPLTest/HPModelKPLin.mo b/OpenHPLTest/Archive/HPModelKPLin.mo
similarity index 99%
rename from OpenHPLTest/HPModelKPLin.mo
rename to OpenHPLTest/Archive/HPModelKPLin.mo
index 38d595fb..339b634f 100644
--- a/OpenHPLTest/HPModelKPLin.mo
+++ b/OpenHPLTest/Archive/HPModelKPLin.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPModelKPLin
parameter Integer n = 24;
// states
diff --git a/OpenHPLTest/HPModelKPLinPI.mo b/OpenHPLTest/Archive/HPModelKPLinPI.mo
similarity index 94%
rename from OpenHPLTest/HPModelKPLinPI.mo
rename to OpenHPLTest/Archive/HPModelKPLinPI.mo
index 4d615265..bb64ebc2 100644
--- a/OpenHPLTest/HPModelKPLinPI.mo
+++ b/OpenHPLTest/Archive/HPModelKPLinPI.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPModelKPLinPI
HPLiniarizationKP hpKP;
parameter Real Kp = 0.1;
diff --git a/OpenHPLTest/HPModelLin.mo b/OpenHPLTest/Archive/HPModelLin.mo
similarity index 97%
rename from OpenHPLTest/HPModelLin.mo
rename to OpenHPLTest/Archive/HPModelLin.mo
index 3c9b2192..f1a15071 100644
--- a/OpenHPLTest/HPModelLin.mo
+++ b/OpenHPLTest/Archive/HPModelLin.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPModelLin
parameter Integer n = 5;
// states
diff --git a/OpenHPLTest/HPModelLinPI.mo b/OpenHPLTest/Archive/HPModelLinPI.mo
similarity index 96%
rename from OpenHPLTest/HPModelLinPI.mo
rename to OpenHPLTest/Archive/HPModelLinPI.mo
index 27e738f1..732479fe 100644
--- a/OpenHPLTest/HPModelLinPI.mo
+++ b/OpenHPLTest/Archive/HPModelLinPI.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPModelLinPI
HPModelLin hplin;
HPLiniarization hp;
diff --git a/OpenHPLTest/HPModelManLin.mo b/OpenHPLTest/Archive/HPModelManLin.mo
similarity index 99%
rename from OpenHPLTest/HPModelManLin.mo
rename to OpenHPLTest/Archive/HPModelManLin.mo
index 8ab8ee30..db5d9c15 100644
--- a/OpenHPLTest/HPModelManLin.mo
+++ b/OpenHPLTest/Archive/HPModelManLin.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPModelManLin
inner OpenHPL.Data data;
import Modelica.Constants.pi;
diff --git a/OpenHPLTest/HPModelObserv.mo b/OpenHPLTest/Archive/HPModelObserv.mo
similarity index 98%
rename from OpenHPLTest/HPModelObserv.mo
rename to OpenHPLTest/Archive/HPModelObserv.mo
index b206326f..e4343237 100644
--- a/OpenHPLTest/HPModelObserv.mo
+++ b/OpenHPLTest/Archive/HPModelObserv.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPModelObserv
inner OpenHPL.Data data;
import Modelica.Constants.pi;
diff --git a/OpenHPLTest/HPModelObservSim.mo b/OpenHPLTest/Archive/HPModelObservSim.mo
similarity index 99%
rename from OpenHPLTest/HPModelObservSim.mo
rename to OpenHPLTest/Archive/HPModelObservSim.mo
index e35742a2..97281c1c 100644
--- a/OpenHPLTest/HPModelObservSim.mo
+++ b/OpenHPLTest/Archive/HPModelObservSim.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPModelObservSim
inner OpenHPL.Data data;
//HPModel hpmod;
diff --git a/OpenHPLTest/HPSTAirCushion.mo b/OpenHPLTest/Archive/HPSTAirCushion.mo
similarity index 98%
rename from OpenHPLTest/HPSTAirCushion.mo
rename to OpenHPLTest/Archive/HPSTAirCushion.mo
index 6f06f2fd..b1fd143c 100644
--- a/OpenHPLTest/HPSTAirCushion.mo
+++ b/OpenHPLTest/Archive/HPSTAirCushion.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSTAirCushion
"Model of waterway of the HP system with simplified models for conduits, turbine, etc."
extends Modelica.Icons.Example;
diff --git a/OpenHPLTest/HPSTSharpOrifice.mo b/OpenHPLTest/Archive/HPSTSharpOrifice.mo
similarity index 98%
rename from OpenHPLTest/HPSTSharpOrifice.mo
rename to OpenHPLTest/Archive/HPSTSharpOrifice.mo
index 4061be79..691faa43 100644
--- a/OpenHPLTest/HPSTSharpOrifice.mo
+++ b/OpenHPLTest/Archive/HPSTSharpOrifice.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSTSharpOrifice
"Model of waterway of the HP system with simplified models for conduits, turbine, etc."
extends Modelica.Icons.Example;
diff --git a/OpenHPLTest/HPSTSimple.mo b/OpenHPLTest/Archive/HPSTSimple.mo
similarity index 98%
rename from OpenHPLTest/HPSTSimple.mo
rename to OpenHPLTest/Archive/HPSTSimple.mo
index 44d3b62d..92c2ef30 100644
--- a/OpenHPLTest/HPSTSimple.mo
+++ b/OpenHPLTest/Archive/HPSTSimple.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSTSimple
"Model of waterway of the HP system with simplified models for conduits, turbine, etc."
extends Modelica.Icons.Example;
diff --git a/OpenHPLTest/HPSTThrottleValve.mo b/OpenHPLTest/Archive/HPSTThrottleValve.mo
similarity index 98%
rename from OpenHPLTest/HPSTThrottleValve.mo
rename to OpenHPLTest/Archive/HPSTThrottleValve.mo
index 0c1eafa3..d0410e27 100644
--- a/OpenHPLTest/HPSTThrottleValve.mo
+++ b/OpenHPLTest/Archive/HPSTThrottleValve.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSTThrottleValve
"Model of waterway of the HP system with simplified models for conduits, turbine, etc."
extends Modelica.Icons.Example;
diff --git a/OpenHPLTest/HPSimpleElasticPenstock.mo b/OpenHPLTest/Archive/HPSimpleElasticPenstock.mo
similarity index 99%
rename from OpenHPLTest/HPSimpleElasticPenstock.mo
rename to OpenHPLTest/Archive/HPSimpleElasticPenstock.mo
index d3bb7b36..e8e57fa9 100644
--- a/OpenHPLTest/HPSimpleElasticPenstock.mo
+++ b/OpenHPLTest/Archive/HPSimpleElasticPenstock.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSimpleElasticPenstock "Model of HP system with elastic penctock (StagardGrid), but simplified models for turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=48) annotation (Placement(transformation(origin={-90,62}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPSimpleElasticPenstockWithoutSurge.mo b/OpenHPLTest/Archive/HPSimpleElasticPenstockWithoutSurge.mo
similarity index 99%
rename from OpenHPLTest/HPSimpleElasticPenstockWithoutSurge.mo
rename to OpenHPLTest/Archive/HPSimpleElasticPenstockWithoutSurge.mo
index bbdb6a1a..d98e4031 100644
--- a/OpenHPLTest/HPSimpleElasticPenstockWithoutSurge.mo
+++ b/OpenHPLTest/Archive/HPSimpleElasticPenstockWithoutSurge.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSimpleElasticPenstockWithoutSurge "Model of HP system without surge tank and with elastic penctock (StagardGrid), but simplified models for turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir annotation (Placement(transformation(origin={-90,62}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPSimplePenstockAutoRefGate.mo b/OpenHPLTest/Archive/HPSimplePenstockAutoRefGate.mo
similarity index 99%
rename from OpenHPLTest/HPSimplePenstockAutoRefGate.mo
rename to OpenHPLTest/Archive/HPSimplePenstockAutoRefGate.mo
index 044a05e8..4e8cb1bf 100644
--- a/OpenHPLTest/HPSimplePenstockAutoRefGate.mo
+++ b/OpenHPLTest/Archive/HPSimplePenstockAutoRefGate.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSimplePenstockAutoRefGate
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir annotation (Placement(transformation(origin={-92,62}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPSimplePenstockControl.mo b/OpenHPLTest/Archive/HPSimplePenstockControl.mo
similarity index 99%
rename from OpenHPLTest/HPSimplePenstockControl.mo
rename to OpenHPLTest/Archive/HPSimplePenstockControl.mo
index 42429447..09960d14 100644
--- a/OpenHPLTest/HPSimplePenstockControl.mo
+++ b/OpenHPLTest/Archive/HPSimplePenstockControl.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSimplePenstockControl "Model of HP system with governor"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir annotation (Placement(transformation(origin={-92,62}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPSimplePenstockFrancis.mo b/OpenHPLTest/Archive/HPSimplePenstockFrancis.mo
similarity index 99%
rename from OpenHPLTest/HPSimplePenstockFrancis.mo
rename to OpenHPLTest/Archive/HPSimplePenstockFrancis.mo
index 58048617..2b7595f9 100644
--- a/OpenHPLTest/HPSimplePenstockFrancis.mo
+++ b/OpenHPLTest/Archive/HPSimplePenstockFrancis.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSimplePenstockFrancis "HP system model with Francis turbine"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir annotation (Placement(transformation(origin={-92,62}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPSimplePenstockFrancis2.mo b/OpenHPLTest/Archive/HPSimplePenstockFrancis2.mo
similarity index 99%
rename from OpenHPLTest/HPSimplePenstockFrancis2.mo
rename to OpenHPLTest/Archive/HPSimplePenstockFrancis2.mo
index 349da0eb..a64de900 100644
--- a/OpenHPLTest/HPSimplePenstockFrancis2.mo
+++ b/OpenHPLTest/Archive/HPSimplePenstockFrancis2.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSimplePenstockFrancis2 "HP system model with Francis turbine and generator"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=48) annotation (Placement(transformation(origin={-92,62}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPSimplePenstockFrancisGenIPSL.mo b/OpenHPLTest/Archive/HPSimplePenstockFrancisGenIPSL.mo
similarity index 99%
rename from OpenHPLTest/HPSimplePenstockFrancisGenIPSL.mo
rename to OpenHPLTest/Archive/HPSimplePenstockFrancisGenIPSL.mo
index 502ff3e0..0b09cce1 100644
--- a/OpenHPLTest/HPSimplePenstockFrancisGenIPSL.mo
+++ b/OpenHPLTest/Archive/HPSimplePenstockFrancisGenIPSL.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSimplePenstockFrancisGenIPSL "Synergy with OpenIPSL library(generator)"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=48) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HPSimplePenstockFrancisGenIPSLGov.mo b/OpenHPLTest/Archive/HPSimplePenstockFrancisGenIPSLGov.mo
similarity index 99%
rename from OpenHPLTest/HPSimplePenstockFrancisGenIPSLGov.mo
rename to OpenHPLTest/Archive/HPSimplePenstockFrancisGenIPSLGov.mo
index 14ff923e..b5802f39 100644
--- a/OpenHPLTest/HPSimplePenstockFrancisGenIPSLGov.mo
+++ b/OpenHPLTest/Archive/HPSimplePenstockFrancisGenIPSLGov.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSimplePenstockFrancisGenIPSLGov "Synergy with OpenIPSL library(generator + governor)"
//input Real u;
extends Modelica.Icons.Example;
diff --git a/OpenHPLTest/HPSimplePenstockFrancisGenIPSLInfBus.mo b/OpenHPLTest/Archive/HPSimplePenstockFrancisGenIPSLInfBus.mo
similarity index 99%
rename from OpenHPLTest/HPSimplePenstockFrancisGenIPSLInfBus.mo
rename to OpenHPLTest/Archive/HPSimplePenstockFrancisGenIPSLInfBus.mo
index 279c8eac..43fd7c08 100644
--- a/OpenHPLTest/HPSimplePenstockFrancisGenIPSLInfBus.mo
+++ b/OpenHPLTest/Archive/HPSimplePenstockFrancisGenIPSLInfBus.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSimplePenstockFrancisGenIPSLInfBus "Synergy with OpenIPSL library(generator + infinitBus)"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=48) annotation (Placement(transformation(origin={-92,62}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPSimplePenstockFrancisGener.mo b/OpenHPLTest/Archive/HPSimplePenstockFrancisGener.mo
similarity index 99%
rename from OpenHPLTest/HPSimplePenstockFrancisGener.mo
rename to OpenHPLTest/Archive/HPSimplePenstockFrancisGener.mo
index fb7615aa..e8742f41 100644
--- a/OpenHPLTest/HPSimplePenstockFrancisGener.mo
+++ b/OpenHPLTest/Archive/HPSimplePenstockFrancisGener.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSimplePenstockFrancisGener "HP system model with Francis turbine and generator"
extends Modelica.Icons.Example;
Real coef;
diff --git a/OpenHPLTest/HPSimplePenstockGeneratorTest.mo b/OpenHPLTest/Archive/HPSimplePenstockGeneratorTest.mo
similarity index 99%
rename from OpenHPLTest/HPSimplePenstockGeneratorTest.mo
rename to OpenHPLTest/Archive/HPSimplePenstockGeneratorTest.mo
index bf592de2..1df4d921 100644
--- a/OpenHPLTest/HPSimplePenstockGeneratorTest.mo
+++ b/OpenHPLTest/Archive/HPSimplePenstockGeneratorTest.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSimplePenstockGeneratorTest "Generator testing for HP"
extends Modelica.Icons.Example;
import Modelica.Constants.pi;
diff --git a/OpenHPLTest/HPSimplePenstockOpenChannel.mo b/OpenHPLTest/Archive/HPSimplePenstockOpenChannel.mo
similarity index 99%
rename from OpenHPLTest/HPSimplePenstockOpenChannel.mo
rename to OpenHPLTest/Archive/HPSimplePenstockOpenChannel.mo
index f4a73bd4..ce087571 100644
--- a/OpenHPLTest/HPSimplePenstockOpenChannel.mo
+++ b/OpenHPLTest/Archive/HPSimplePenstockOpenChannel.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSimplePenstockOpenChannel "testing open channel"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir annotation (Placement(transformation(origin={-90,44}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPSimplePenstockPelton.mo b/OpenHPLTest/Archive/HPSimplePenstockPelton.mo
similarity index 99%
rename from OpenHPLTest/HPSimplePenstockPelton.mo
rename to OpenHPLTest/Archive/HPSimplePenstockPelton.mo
index fe009b57..59a1c995 100644
--- a/OpenHPLTest/HPSimplePenstockPelton.mo
+++ b/OpenHPLTest/Archive/HPSimplePenstockPelton.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSimplePenstockPelton "HP system model with Pelton turbine"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=48) annotation (Placement(transformation(origin={-92,62}, extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/HPSimplePenstockResKP.mo b/OpenHPLTest/Archive/HPSimplePenstockResKP.mo
similarity index 99%
rename from OpenHPLTest/HPSimplePenstockResKP.mo
rename to OpenHPLTest/Archive/HPSimplePenstockResKP.mo
index 6a4b43c4..86804900 100644
--- a/OpenHPLTest/HPSimplePenstockResKP.mo
+++ b/OpenHPLTest/Archive/HPSimplePenstockResKP.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSimplePenstockResKP "Model of HP system with using reservoir model based on open channel"
extends Modelica.Icons.Example;
Modelica.Blocks.Sources.Ramp control(duration = 1, height = -0.04615, offset = 0.7493, startTime = 600) annotation (
diff --git a/OpenHPLTest/HPSquareFittingsTest.mo b/OpenHPLTest/Archive/HPSquareFittingsTest.mo
similarity index 99%
rename from OpenHPLTest/HPSquareFittingsTest.mo
rename to OpenHPLTest/Archive/HPSquareFittingsTest.mo
index 33c36554..dd68655f 100644
--- a/OpenHPLTest/HPSquareFittingsTest.mo
+++ b/OpenHPLTest/Archive/HPSquareFittingsTest.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPSquareFittingsTest "Test for comparing fitting behaviour"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir headWater(h_0=10) annotation (Placement(transformation(extent={{-100,-10},{-80,10}})));
diff --git a/OpenHPLTest/HPTaperedFittingsTest.mo b/OpenHPLTest/Archive/HPTaperedFittingsTest.mo
similarity index 99%
rename from OpenHPLTest/HPTaperedFittingsTest.mo
rename to OpenHPLTest/Archive/HPTaperedFittingsTest.mo
index d006658f..6c915891 100644
--- a/OpenHPLTest/HPTaperedFittingsTest.mo
+++ b/OpenHPLTest/Archive/HPTaperedFittingsTest.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HPTaperedFittingsTest "Test for comparing fitting behaviour"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir headWater(h_0=10) annotation (Placement(transformation(extent={{-100,-10},{-80,10}})));
diff --git a/OpenHPLTest/HydroCordModeKPlFrancisDraftTube.mo b/OpenHPLTest/Archive/HydroCordModeKPlFrancisDraftTube.mo
similarity index 99%
rename from OpenHPLTest/HydroCordModeKPlFrancisDraftTube.mo
rename to OpenHPLTest/Archive/HydroCordModeKPlFrancisDraftTube.mo
index 97c781c0..1be28e9e 100644
--- a/OpenHPLTest/HydroCordModeKPlFrancisDraftTube.mo
+++ b/OpenHPLTest/Archive/HydroCordModeKPlFrancisDraftTube.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HydroCordModeKPlFrancisDraftTube "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=46.5, UseInFlow=false) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HydroCordModel.mo b/OpenHPLTest/Archive/HydroCordModel.mo
similarity index 99%
rename from OpenHPLTest/HydroCordModel.mo
rename to OpenHPLTest/Archive/HydroCordModel.mo
index f4f1d2be..9a95090b 100644
--- a/OpenHPLTest/HydroCordModel.mo
+++ b/OpenHPLTest/Archive/HydroCordModel.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HydroCordModel "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=418.5 - 372, UseInFlow=false) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HydroCordModel2.mo b/OpenHPLTest/Archive/HydroCordModel2.mo
similarity index 99%
rename from OpenHPLTest/HydroCordModel2.mo
rename to OpenHPLTest/Archive/HydroCordModel2.mo
index d99c27c1..e8cdeb31 100644
--- a/OpenHPLTest/HydroCordModel2.mo
+++ b/OpenHPLTest/Archive/HydroCordModel2.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HydroCordModel2 "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=418.5 - 372, UseInFlow=false) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HydroCordModelDraftTube.mo b/OpenHPLTest/Archive/HydroCordModelDraftTube.mo
similarity index 99%
rename from OpenHPLTest/HydroCordModelDraftTube.mo
rename to OpenHPLTest/Archive/HydroCordModelDraftTube.mo
index 0de73552..efc25d2b 100644
--- a/OpenHPLTest/HydroCordModelDraftTube.mo
+++ b/OpenHPLTest/Archive/HydroCordModelDraftTube.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HydroCordModelDraftTube "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=418.5 - 372, UseInFlow=false) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HydroCordModelDraftTube2.mo b/OpenHPLTest/Archive/HydroCordModelDraftTube2.mo
similarity index 99%
rename from OpenHPLTest/HydroCordModelDraftTube2.mo
rename to OpenHPLTest/Archive/HydroCordModelDraftTube2.mo
index 42eca688..b3b46f33 100644
--- a/OpenHPLTest/HydroCordModelDraftTube2.mo
+++ b/OpenHPLTest/Archive/HydroCordModelDraftTube2.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HydroCordModelDraftTube2 "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=418.5 - 372, UseInFlow=false) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HydroCordModelDraftTube3.mo b/OpenHPLTest/Archive/HydroCordModelDraftTube3.mo
similarity index 99%
rename from OpenHPLTest/HydroCordModelDraftTube3.mo
rename to OpenHPLTest/Archive/HydroCordModelDraftTube3.mo
index 0b5d7d3c..064e3cab 100644
--- a/OpenHPLTest/HydroCordModelDraftTube3.mo
+++ b/OpenHPLTest/Archive/HydroCordModelDraftTube3.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HydroCordModelDraftTube3 "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=418.5 - 372, UseInFlow=false) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HydroCordModelFrancis.mo b/OpenHPLTest/Archive/HydroCordModelFrancis.mo
similarity index 99%
rename from OpenHPLTest/HydroCordModelFrancis.mo
rename to OpenHPLTest/Archive/HydroCordModelFrancis.mo
index b2c3e2a3..d19ceecc 100644
--- a/OpenHPLTest/HydroCordModelFrancis.mo
+++ b/OpenHPLTest/Archive/HydroCordModelFrancis.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HydroCordModelFrancis "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=46.5, UseInFlow=false) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HydroCordModelFrancis2.mo b/OpenHPLTest/Archive/HydroCordModelFrancis2.mo
similarity index 99%
rename from OpenHPLTest/HydroCordModelFrancis2.mo
rename to OpenHPLTest/Archive/HydroCordModelFrancis2.mo
index 652ac883..12945b86 100644
--- a/OpenHPLTest/HydroCordModelFrancis2.mo
+++ b/OpenHPLTest/Archive/HydroCordModelFrancis2.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HydroCordModelFrancis2 "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=46.5, UseInFlow=false) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HydroCordModelFrancisDraftTube.mo b/OpenHPLTest/Archive/HydroCordModelFrancisDraftTube.mo
similarity index 99%
rename from OpenHPLTest/HydroCordModelFrancisDraftTube.mo
rename to OpenHPLTest/Archive/HydroCordModelFrancisDraftTube.mo
index 0fa4c107..881125f7 100644
--- a/OpenHPLTest/HydroCordModelFrancisDraftTube.mo
+++ b/OpenHPLTest/Archive/HydroCordModelFrancisDraftTube.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HydroCordModelFrancisDraftTube "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=46.5, UseInFlow=false) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HydroCordModelKP.mo b/OpenHPLTest/Archive/HydroCordModelKP.mo
similarity index 99%
rename from OpenHPLTest/HydroCordModelKP.mo
rename to OpenHPLTest/Archive/HydroCordModelKP.mo
index b0098b0f..e1c156c8 100644
--- a/OpenHPLTest/HydroCordModelKP.mo
+++ b/OpenHPLTest/Archive/HydroCordModelKP.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HydroCordModelKP "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=46.5, UseInFlow=false) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HydroCordModelKP2.mo b/OpenHPLTest/Archive/HydroCordModelKP2.mo
similarity index 99%
rename from OpenHPLTest/HydroCordModelKP2.mo
rename to OpenHPLTest/Archive/HydroCordModelKP2.mo
index 1f59bc93..078061e1 100644
--- a/OpenHPLTest/HydroCordModelKP2.mo
+++ b/OpenHPLTest/Archive/HydroCordModelKP2.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HydroCordModelKP2 "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=46.5, UseInFlow=false) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HydroCordModelKPDraftTube.mo b/OpenHPLTest/Archive/HydroCordModelKPDraftTube.mo
similarity index 99%
rename from OpenHPLTest/HydroCordModelKPDraftTube.mo
rename to OpenHPLTest/Archive/HydroCordModelKPDraftTube.mo
index be2c542b..041bf70f 100644
--- a/OpenHPLTest/HydroCordModelKPDraftTube.mo
+++ b/OpenHPLTest/Archive/HydroCordModelKPDraftTube.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HydroCordModelKPDraftTube "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=46.5, UseInFlow=false) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HydroCordModelKPFran.mo b/OpenHPLTest/Archive/HydroCordModelKPFran.mo
similarity index 99%
rename from OpenHPLTest/HydroCordModelKPFran.mo
rename to OpenHPLTest/Archive/HydroCordModelKPFran.mo
index 9bcb478e..ec9782c7 100644
--- a/OpenHPLTest/HydroCordModelKPFran.mo
+++ b/OpenHPLTest/Archive/HydroCordModelKPFran.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HydroCordModelKPFran "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=46.5, UseInFlow=false) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HydroCordModelKPFran2.mo b/OpenHPLTest/Archive/HydroCordModelKPFran2.mo
similarity index 99%
rename from OpenHPLTest/HydroCordModelKPFran2.mo
rename to OpenHPLTest/Archive/HydroCordModelKPFran2.mo
index 801e69b5..a8e597d3 100644
--- a/OpenHPLTest/HydroCordModelKPFran2.mo
+++ b/OpenHPLTest/Archive/HydroCordModelKPFran2.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HydroCordModelKPFran2 "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=46.5, UseInFlow=false) annotation (Placement(transformation(
diff --git a/OpenHPLTest/HydroCordModelKPall.mo b/OpenHPLTest/Archive/HydroCordModelKPall.mo
similarity index 99%
rename from OpenHPLTest/HydroCordModelKPall.mo
rename to OpenHPLTest/Archive/HydroCordModelKPall.mo
index 350211c0..10476fe0 100644
--- a/OpenHPLTest/HydroCordModelKPall.mo
+++ b/OpenHPLTest/Archive/HydroCordModelKPall.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model HydroCordModelKPall "Model of HP system with simplified models for penstock, turbine, etc."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(
diff --git a/OpenHPLTest/OpenChannel.mo b/OpenHPLTest/Archive/OpenChannel.mo
similarity index 98%
rename from OpenHPLTest/OpenChannel.mo
rename to OpenHPLTest/Archive/OpenChannel.mo
index ce3f8f55..8ed75877 100644
--- a/OpenHPLTest/OpenChannel.mo
+++ b/OpenHPLTest/Archive/OpenChannel.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model OpenChannel "Model of a hydropower system with open channel model"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=5) annotation (Placement(transformation(
diff --git a/OpenHPLTest/Reservoir.mo b/OpenHPLTest/Archive/Reservoir.mo
similarity index 98%
rename from OpenHPLTest/Reservoir.mo
rename to OpenHPLTest/Archive/Reservoir.mo
index 79567fb6..40c92c8e 100644
--- a/OpenHPLTest/Reservoir.mo
+++ b/OpenHPLTest/Archive/Reservoir.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model Reservoir
extends Modelica.Icons.Example;
diff --git a/OpenHPLTest/TestFitingSimpleHP.mo b/OpenHPLTest/Archive/TestFitingSimpleHP.mo
similarity index 99%
rename from OpenHPLTest/TestFitingSimpleHP.mo
rename to OpenHPLTest/Archive/TestFitingSimpleHP.mo
index c4bc0f69..4159b96b 100644
--- a/OpenHPLTest/TestFitingSimpleHP.mo
+++ b/OpenHPLTest/Archive/TestFitingSimpleHP.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model TestFitingSimpleHP "Model of HP system with pipe fitting"
extends Modelica.Icons.Example;
OpenHPL.Waterway.Pipe conduit(
diff --git a/OpenHPLTest/TestMCB.mo b/OpenHPLTest/Archive/TestMCB.mo
similarity index 98%
rename from OpenHPLTest/TestMCB.mo
rename to OpenHPLTest/Archive/TestMCB.mo
index 815e545f..a1a8c4c3 100644
--- a/OpenHPLTest/TestMCB.mo
+++ b/OpenHPLTest/Archive/TestMCB.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model TestMCB "Testing the operation of the MCB"
extends Modelica.Icons.Example;
OpenHPL.ElectroMech.PowerSystem.MCB mCB(deltaSpeed=0.01) annotation (Placement(transformation(extent={{-10,-10},{10,10}})));
diff --git a/OpenHPLTest/TestRunoff.mo b/OpenHPLTest/Archive/TestRunoff.mo
similarity index 98%
rename from OpenHPLTest/TestRunoff.mo
rename to OpenHPLTest/Archive/TestRunoff.mo
index 8b0d168a..6675db71 100644
--- a/OpenHPLTest/TestRunoff.mo
+++ b/OpenHPLTest/Archive/TestRunoff.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model TestRunoff
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir1(
diff --git a/OpenHPLTest/TorpaHPPAirCushionTest.mo b/OpenHPLTest/Archive/TorpaHPPAirCushionTest.mo
similarity index 98%
rename from OpenHPLTest/TorpaHPPAirCushionTest.mo
rename to OpenHPLTest/Archive/TorpaHPPAirCushionTest.mo
index c812d939..7441c461 100644
--- a/OpenHPLTest/TorpaHPPAirCushionTest.mo
+++ b/OpenHPLTest/Archive/TorpaHPPAirCushionTest.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model TorpaHPPAirCushionTest "Test case for air cushion surge tank from Torpa hydro power plant."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=200)
diff --git a/OpenHPLTest/TorpaHPPAirCushionTest2.mo b/OpenHPLTest/Archive/TorpaHPPAirCushionTest2.mo
similarity index 98%
rename from OpenHPLTest/TorpaHPPAirCushionTest2.mo
rename to OpenHPLTest/Archive/TorpaHPPAirCushionTest2.mo
index e7f6ac35..7e911e68 100644
--- a/OpenHPLTest/TorpaHPPAirCushionTest2.mo
+++ b/OpenHPLTest/Archive/TorpaHPPAirCushionTest2.mo
@@ -1,4 +1,4 @@
-within OpenHPLTest;
+within OpenHPLTest.Archive;
model TorpaHPPAirCushionTest2 "Test case for air cushion surge tank from Torpa hydro power plant."
extends Modelica.Icons.Example;
OpenHPL.Waterway.Reservoir reservoir(h_0=48) annotation (Placement(transformation(
diff --git a/OpenHPLTest/Archive/package.mo b/OpenHPLTest/Archive/package.mo
new file mode 100644
index 00000000..501102de
--- /dev/null
+++ b/OpenHPLTest/Archive/package.mo
@@ -0,0 +1,6 @@
+within OpenHPLTest;
+package Archive
+ extends Modelica.Icons.ExamplesPackage;
+
+ extends Modelica.Icons.ObsoleteModel;
+end Archive;
diff --git a/OpenHPLTest/Archive/package.order b/OpenHPLTest/Archive/package.order
new file mode 100644
index 00000000..8aaed842
--- /dev/null
+++ b/OpenHPLTest/Archive/package.order
@@ -0,0 +1,72 @@
+CaseStudingValentynasCase
+HPAllTypeFittingsTest
+HPBjarneBorresen
+HPDraftTube
+HPElasticKPPenstock
+HPElasticKPPenstockANDIntake
+HPElasticKPPenstockCompres
+HPElasticKPPenstockFrancis
+HPElasticKPPenstockFrancisGov
+HPElasticKPPenstockHalfSurgeD
+HPElasticKPPenstockWithoutSurge
+HPLiniarization
+HPLiniarization2
+HPLiniarization3
+HPLiniarization4
+HPLiniarizationFranGen
+HPLiniarizationGenIPSL
+HPLiniarizationGenIPSLKP
+HPLiniarizationKP
+HPLiniarizationKPFran
+HPLinTest
+HPModel
+HPModelDEA
+HPModelKPLin
+HPModelKPLinPI
+HPModelLin
+HPModelLinPI
+HPModelManLin
+HPModelObserv
+HPModelObservSim
+HPSimpleElasticPenstock
+HPSimpleElasticPenstockWithoutSurge
+HPSimplePenstockAutoRefGate
+HPSimplePenstockControl
+HPSimplePenstockFrancis
+HPSimplePenstockFrancis2
+HPSimplePenstockFrancisGener
+HPSimplePenstockFrancisGenIPSL
+HPSimplePenstockFrancisGenIPSLGov
+HPSimplePenstockFrancisGenIPSLInfBus
+HPSimplePenstockGeneratorTest
+HPSimplePenstockOpenChannel
+HPSimplePenstockPelton
+HPSimplePenstockResKP
+HPSquareFittingsTest
+HPSTAirCushion
+HPSTSharpOrifice
+HPSTSimple
+HPSTThrottleValve
+HPTaperedFittingsTest
+HydroCordModeKPlFrancisDraftTube
+HydroCordModel
+HydroCordModel2
+HydroCordModelDraftTube
+HydroCordModelDraftTube2
+HydroCordModelDraftTube3
+HydroCordModelFrancis
+HydroCordModelFrancis2
+HydroCordModelFrancisDraftTube
+HydroCordModelKP
+HydroCordModelKP2
+HydroCordModelKPall
+HydroCordModelKPDraftTube
+HydroCordModelKPFran
+HydroCordModelKPFran2
+OpenChannel
+Reservoir
+TestFitingSimpleHP
+TestMCB
+TestRunoff
+TorpaHPPAirCushionTest
+TorpaHPPAirCushionTest2
diff --git a/OpenHPLTest/EmpiricalTurbine/Information.mo b/OpenHPLTest/EmpiricalTurbine/Information.mo
new file mode 100644
index 00000000..cf1e5a60
--- /dev/null
+++ b/OpenHPLTest/EmpiricalTurbine/Information.mo
@@ -0,0 +1,6 @@
+within OpenHPLTest.EmpiricalTurbine;
+class Information
+extends Modelica.Icons.Information;
+ annotation (
+ Documentation(info = "The EmpiricalTurbine test package contains a series of test models for documeting and validating the implementation of the EmpiricalTurbine model.There are two sub-packages:
- TestBasicFunctions - testing of the Bezier spline algorithm, the search algorithm and the blening function (to find intermediate curves)
- TurbineTetst - collection of gradually more complex test cases using the EmpiricalTurbine model
At the moment there are som robustness issues with the model. In the default configuration Test03_Turbine have issues with convergens at time t=0.34 with the message
Homotopy solver Newton iteration: Maximum number of iterations reached at time 0.340000, but no root found.
The following documents testing and investigations to resovle this.
In particular it is important to understand some of the following topics and how different implementations may impact the robustness of the models.
Some observations:- Turbine model with only upstream and downstream reservoir and constant opening works fine (Test02).
- Turbine model with upstream and downstream reservoir and ramping opening works fine (Test04).
- Turbine model with rigid water pipe and constant opening works shows clear convergence issues (Test03).
Additional comments:
In general convergence issues can either be related to \"stiff\" problems or singularities or discontinuous functions (or gradients). Running Test03 with the dassl solver, with startTime=0 and stopTime=1 and varying time step gives the following result.
| Time step | Comments |
|---|
| 0.005 | Convergence issues from t=0.26500 (nonlinear system 82) |
| 0.01 | Convergence issues from t=0.34000 |
| 0.02 | Convergence issues from t=0.34000 |
| 0.05 | Convergence issues from t=0.683162 |
| 0.10 | Convergence issues from t=0.683162 |
| 0.20 | Convergence issues from t=0.683162 |
Normally, for stiff problems, reducing the time step should improve the convergence. This seems not to be the case here."));
+end Information;
diff --git a/OpenHPLTest/EmpiricalTurbine/TestBasicFunctions/Test01_BezierCurve.mo b/OpenHPLTest/EmpiricalTurbine/TestBasicFunctions/Test01_BezierCurve.mo
new file mode 100644
index 00000000..1bccb13c
--- /dev/null
+++ b/OpenHPLTest/EmpiricalTurbine/TestBasicFunctions/Test01_BezierCurve.mo
@@ -0,0 +1,13 @@
+within OpenHPLTest.EmpiricalTurbine.TestBasicFunctions;
+model Test01_BezierCurve
+ extends Modelica.Icons.Example;
+ Real[ndim] curvePoint;
+protected
+ constant Integer ndim = 3;
+ parameter Real controlPoints[6, ndim] = {{0.00, 1.46, 2.60}, {0.53, 1.45, 2.33}, {0.77, 1.19, 1.80}, {1.63, 0.86, -0.58}, {1.13, 0.24, 0.31}, {1.43, -0.17, -0.52}};
+equation
+ curvePoint = OpenHPL.Functions.deCasteljau(time, ndim, controlPoints);
+ annotation (
+ experiment(StartTime = 0, StopTime = 1, Tolerance = 1e-06, Interval = 0.001),
+ Documentation(info = "Basic test of evaluation of Bezier curve using deCasteljau algorithm.Parametric curve plot of curvePoint[1] againts curvPoint[2] should show a smooth trajectory of QED vs nED.
"));
+end Test01_BezierCurve;
diff --git a/OpenHPLTest/EmpiricalTurbine/TestBasicFunctions/Test02_ControlPoints.mo b/OpenHPLTest/EmpiricalTurbine/TestBasicFunctions/Test02_ControlPoints.mo
new file mode 100644
index 00000000..754e3356
--- /dev/null
+++ b/OpenHPLTest/EmpiricalTurbine/TestBasicFunctions/Test02_ControlPoints.mo
@@ -0,0 +1,27 @@
+within OpenHPLTest.EmpiricalTurbine.TestBasicFunctions;
+model Test02_ControlPoints
+ extends Modelica.Icons.Example;
+ //
+protected
+ constant Integer NC = 5;
+ constant Integer NP = 4;
+ constant Integer ND = 3;
+ parameter Real openingArray[NC] = {0.10, 0.25, 0.50, 0.75, 1.00};
+ parameter Real controlPoints[NC, NP, ND] = {{{0.00, 0.18, 0.26}, {0.41, 0.10, 0.17}, {1.04, 0.31, 0.25}, {1.32, -0.04, -0.21}}, {{0.00, 0.44, 0.73}, {0.43, 0.37, 0.67}, {1.27, 0.55, 0.29}, {1.38, 0.00, -0.19}}, {{0.00, 0.91, 1.55}, {0.59, 0.89, 1.33}, {1.57, 0.79, 0.19}, {1.51, 0.00, -0.29}}, {{0.00, 1.30, 2.11}, {0.78, 1.33, 1.77}, {1.72, 0.92, -0.12}, {1.58, 0.00, -0.28}}, {{0.00, 1.57, 2.41}, {0.92, 1.63, 1.91}, {1.82, 1.02, -0.30}, {1.63, 0.00, -0.35}}};
+ parameter OpenHPL.Types.TurbineCharacteristics tc(nCurves = NC, nPoints = NP, nDim = ND, opening = openingArray, data = controlPoints);
+public
+ Real cPoints1[NP, ND], cPoints2[NP, ND], cPoints3[NP, ND];
+ Real[ND] curvePoint1;
+ Real[ND] curvePoint2;
+ Real[ND] curvePoint3;
+equation
+ cPoints1 = OpenHPL.Functions.WeightedControlPoints(0.3, tc);
+ curvePoint1 = OpenHPL.Functions.deCasteljau(time, ND, cPoints1);
+ cPoints2 = OpenHPL.Functions.WeightedControlPoints(0.5, tc);
+ curvePoint2 = OpenHPL.Functions.deCasteljau(time, ND, cPoints2);
+ cPoints3 = OpenHPL.Functions.WeightedControlPoints(0.67, tc);
+ curvePoint3 = OpenHPL.Functions.deCasteljau(time, ND, cPoints3);
+ annotation (
+ Documentation(info = "Test basic functions for finding intermediate control points and evaluate Bezier curve.Computes three curve trajectories as weighted intermediate curves. Parametrci curve plot of curvePoints1[1] against curvePoints1[2] and similar for curvePonts2 and curvePoints3 should show smooth curves 2D curves.
"),
+ experiment(StartTime = 0, StopTime = 1, Tolerance = 1e-06, Interval = 0.002));
+end Test02_ControlPoints;
diff --git a/OpenHPLTest/EmpiricalTurbine/TestBasicFunctions/package.mo b/OpenHPLTest/EmpiricalTurbine/TestBasicFunctions/package.mo
new file mode 100644
index 00000000..2d071fd9
--- /dev/null
+++ b/OpenHPLTest/EmpiricalTurbine/TestBasicFunctions/package.mo
@@ -0,0 +1,9 @@
+within OpenHPLTest.EmpiricalTurbine;
+package TestBasicFunctions
+ extends Modelica.Icons.ExamplesPackage;
+ //
+
+
+ //
+
+end TestBasicFunctions;
diff --git a/OpenHPLTest/EmpiricalTurbine/TestBasicFunctions/package.order b/OpenHPLTest/EmpiricalTurbine/TestBasicFunctions/package.order
new file mode 100644
index 00000000..9aa35a04
--- /dev/null
+++ b/OpenHPLTest/EmpiricalTurbine/TestBasicFunctions/package.order
@@ -0,0 +1,2 @@
+Test01_BezierCurve
+Test02_ControlPoints
diff --git a/OpenHPLTest/EmpiricalTurbine/TurbineTest/AbstractTurbineTest.mo b/OpenHPLTest/EmpiricalTurbine/TurbineTest/AbstractTurbineTest.mo
new file mode 100644
index 00000000..f4f675bc
--- /dev/null
+++ b/OpenHPLTest/EmpiricalTurbine/TurbineTest/AbstractTurbineTest.mo
@@ -0,0 +1,24 @@
+within OpenHPLTest.EmpiricalTurbine.TurbineTest;
+partial model AbstractTurbineTest
+ extends Modelica.Icons.Example;
+ inner OpenHPL.Data data annotation (
+ Placement(transformation(origin = {-84, 82}, extent = {{-10, -10}, {10, 10}})));
+protected
+ constant Integer NC = 11;
+ constant Integer NP = 6;
+ constant Integer ND = 3;
+ parameter Real openingArray[NC] = {0.014, 0.030, 0.050, 0.100, 0.200, 0.300, 0.400, 0.500, 0.601, 0.800, 1.000};
+ parameter Real controlPoints[NC, NP, ND] = {{{0.00, 0.07, 0.07}, {0.30, 0.10, 0.07}, {0.54, -0.07, -0.03}, {0.92, 0.25, 0.13}, {1.13, -0.11, -0.17}, {1.43, -0.06, -0.31}}, {{0.00, 0.11, 0.15}, {0.32, 0.15, 0.17}, {0.51, -0.06, -0.09}, {1.00, 0.35, 0.35}, {1.11, -0.12, -0.30}, {1.43, -0.09, -0.31}}, {{0.00, 0.15, 0.23}, {0.34, 0.21, 0.24}, {0.47, -0.08, -0.01}, {1.07, 0.46, 0.35}, {1.09, -0.15, -0.24}, {1.43, -0.11, -0.37}}, {{0.00, 0.27, 0.45}, {0.37, 0.30, 0.40}, {0.40, 0.05, 0.30}, {1.38, 0.60, 0.26}, {0.97, -0.19, -0.17}, {1.43, -0.13, -0.42}}, {{0.00, 0.51, 0.92}, {0.40, 0.53, 0.80}, {0.45, 0.31, 0.83}, {1.48, 0.75, 0.14}, {0.99, -0.14, -0.06}, {1.44, -0.17, -0.49}}, {{0.00, 0.77, 1.41}, {0.44, 0.79, 1.23}, {0.51, 0.56, 1.29}, {1.62, 0.82, -0.14}, {0.99, -0.05, 0.11}, {1.43, -0.18, -0.51}}, {{0.00, 1.01, 1.87}, {0.48, 1.05, 1.70}, {0.56, 0.74, 1.46}, {1.68, 0.84, -0.35}, {1.03, 0.06, 0.23}, {1.43, -0.19, -0.53}}, {{0.00, 1.25, 2.27}, {0.52, 1.26, 1.99}, {0.63, 1.00, 1.84}, {1.70, 0.83, -0.64}, {1.08, 0.17, 0.35}, {1.43, -0.18, -0.52}}, {{0.00, 1.46, 2.60}, {0.53, 1.45, 2.33}, {0.77, 1.19, 1.80}, {1.63, 0.86, -0.58}, {1.13, 0.24, 0.31}, {1.43, -0.17, -0.52}}, {{0.00, 1.79, 3.06}, {0.55, 1.78, 2.77}, {0.99, 1.43, 1.67}, {1.53, 0.94, -0.59}, {1.20, 0.31, 0.28}, {1.45, -0.16, -0.54}}, {{0.00, 2.10, 3.41}, {0.59, 2.02, 2.99}, {1.05, 1.63, 1.56}, {1.53, 1.04, -0.47}, {1.22, 0.40, 0.24}, {1.45, -0.13, -0.54}}};
+ /*
+ constant Integer NC = 5;
+ constant Integer NP = 4;
+ constant Integer ND = 3;
+ parameter Real openingArray[NC] = {0.10, 0.25, 0.50, 0.75, 1.00};
+ parameter Real controlPoints[NC, NP, ND] = {{{0.00, 0.18, 0.26}, {0.41, 0.10, 0.17}, {1.04, 0.31, 0.25}, {1.32, -0.04, -0.21}}, {{0.00, 0.44, 0.73}, {0.43, 0.37, 0.67}, {1.27, 0.55, 0.29}, {1.38, 0.00, -0.19}}, {{0.00, 0.91, 1.55}, {0.59, 0.89, 1.33}, {1.57, 0.79, 0.19}, {1.51, 0.00, -0.29}}, {{0.00, 1.30, 2.11}, {0.78, 1.33, 1.77}, {1.72, 0.92, -0.12}, {1.58, 0.00, -0.28}}, {{0.00, 1.57, 2.41}, {0.92, 1.63, 1.91}, {1.82, 1.02, -0.30}, {1.63, 0.00, -0.35}}};
+ */
+ parameter OpenHPL.Types.TurbineCharacteristics tc(nCurves = NC, nPoints = NP, nDim = ND, opening = openingArray, data = controlPoints);
+public
+ parameter OpenHPL.Types.TurbineData turbineData(Dn = 1.59, nrps = 8.33, Hbep = 425.0, Qbep = 23.95, Tbep = 1.718E+06, openingBep = 0.601, g = data.g, rho = data.rho) annotation (
+ Placement(transformation(origin = {-82, 54}, extent = {{-10, -10}, {10, 10}})));
+
+end AbstractTurbineTest;
diff --git a/OpenHPLTest/EmpiricalTurbine/TurbineTest/Test01_TurbineLookUp.mo b/OpenHPLTest/EmpiricalTurbine/TurbineTest/Test01_TurbineLookUp.mo
new file mode 100644
index 00000000..7d03fe4f
--- /dev/null
+++ b/OpenHPLTest/EmpiricalTurbine/TurbineTest/Test01_TurbineLookUp.mo
@@ -0,0 +1,18 @@
+within OpenHPLTest.EmpiricalTurbine.TurbineTest;
+model Test01_TurbineLookUp
+ extends AbstractTurbineTest;
+public
+ Real opening;
+ SI.Length Ht "Turbine head";
+ SI.VolumeFlowRate Qt "Turbine flow rate";
+ SI.Frequency nrps "Rotational speed";
+ SI.Torque Tt "Turbine torque";
+equation
+ Ht = 425.0;
+ nrps = 1.0e-03 + 8.33*time*1.4;
+ opening = 0.6;
+ (Qt, Tt) = OpenHPL.Functions.TurbineLookUp(Ht, nrps, opening, turbineData, tc);
+ annotation (
+ experiment(StartTime = 0, StopTime = 1, Tolerance = 1e-06, Interval = 0.001),
+ Documentation(info = "Basic test of the turbine lookup function. The head is kept constant, the speed is a linear function of time, and the flow and torque is computed from the model.Running the model the turbine flow Qt or turbine torque Tt can be ploted as function of time.
"));
+end Test01_TurbineLookUp;
diff --git a/OpenHPLTest/EmpiricalTurbine/TurbineTest/Test02_Turbine.mo b/OpenHPLTest/EmpiricalTurbine/TurbineTest/Test02_Turbine.mo
new file mode 100644
index 00000000..e165044e
--- /dev/null
+++ b/OpenHPLTest/EmpiricalTurbine/TurbineTest/Test02_Turbine.mo
@@ -0,0 +1,22 @@
+within OpenHPLTest.EmpiricalTurbine.TurbineTest;
+model Test02_Turbine
+extends AbstractTurbineTest;
+ OpenHPL.Waterway.Reservoir overvann(h_0 = 425.0, constantLevel = true) annotation (
+ Placement(transformation(origin = {-46, 28}, extent = {{-10, -10}, {10, 10}})));
+ OpenHPL.Waterway.Reservoir undervann(h_0 = 0.0, constantLevel = true) annotation (
+ Placement(transformation(origin = {72, -16}, extent = {{10, -10}, {-10, 10}}, rotation = -0)));
+ OpenHPL.ElectroMech.Turbines.EmpiricalTurbine turbine(turbineData = turbineData, turbineCharacteristics = tc, enable_nomSpeed = false, f_0 = 0.2, enable_f = true) annotation (
+ Placement(transformation(origin = {12, 12}, extent = {{-10, -10}, {10, 10}})));
+ Modelica.Blocks.Sources.Constant const(k = 0.603) annotation (
+ Placement(transformation(origin = {52, 72}, extent = {{10, -10}, {-10, 10}}, rotation = -0)));
+equation
+ connect(overvann.o, turbine.i) annotation (
+ Line(points = {{-36, 28}, {-20, 28}, {-20, 12}, {2, 12}}, color = {0, 128, 255}));
+ connect(turbine.o, undervann.o) annotation (
+ Line(points = {{22, 12}, {28, 12}, {28, -16}, {62, -16}}, color = {0, 128, 255}));
+ connect(const.y, turbine.u_t) annotation (
+ Line(points = {{41, 72}, {4, 72}, {4, 24}}, color = {0, 0, 127}));
+ annotation (
+ Documentation(info = "Basic test of EpiricalTurbine model. Opening is kept constant.Initial speed f_0 is set to 0.2 and the turbine is permitted to speed up as function of computed turbine torque Tt.
"),
+ experiment(StartTime = 0, StopTime = 20, Tolerance = 1e-06, Interval = 0.001));
+end Test02_Turbine;
diff --git a/OpenHPLTest/EmpiricalTurbine/TurbineTest/Test03_Turbine.mo b/OpenHPLTest/EmpiricalTurbine/TurbineTest/Test03_Turbine.mo
new file mode 100644
index 00000000..4669eee6
--- /dev/null
+++ b/OpenHPLTest/EmpiricalTurbine/TurbineTest/Test03_Turbine.mo
@@ -0,0 +1,37 @@
+within OpenHPLTest.EmpiricalTurbine.TurbineTest;
+model Test03_Turbine
+ extends AbstractTurbineTest;
+
+public
+ OpenHPL.Waterway.Pipe tunnel(H = 0, L = 2000, p_eps_input(displayUnit = "mm") = 1e-4, D_i = 4.6, SteadyState = true, Vdot_0 = 20.5) annotation (
+ Placement(transformation(origin = {-44, 32}, extent = {{-10, -10}, {10, 10}})));
+
+ OpenHPL.Waterway.Reservoir overvann(h_0 = 425.0, constantLevel = true) annotation (
+ Placement(transformation(origin = {-80, 32}, extent = {{-10, -10}, {10, 10}})));
+ OpenHPL.Waterway.Reservoir undervann(h_0 = 0.0, constantLevel = true) annotation (
+ Placement(transformation(origin = {72, -16}, extent = {{10, -10}, {-10, 10}}, rotation = -0)));
+ OpenHPL.ElectroMech.Turbines.EmpiricalTurbine turbine(turbineData = turbineData, turbineCharacteristics = tc, enable_nomSpeed = false, enable_f = true, f_0 = 0.2) annotation (
+ Placement(transformation(origin = {12, 12}, extent = {{-10, -10}, {10, 10}})));
+ Modelica.Blocks.Sources.Constant const(k = 0.603) annotation (
+ Placement(transformation(origin = {52, 72}, extent = {{10, -10}, {-10, 10}}, rotation = -0)));
+equation
+ connect(turbine.o, undervann.o) annotation (
+ Line(points = {{22, 12}, {28, 12}, {28, -16}, {62, -16}}, color = {0, 128, 255}));
+ connect(const.y, turbine.u_t) annotation (
+ Line(points = {{41, 72}, {4, 72}, {4, 24}}, color = {0, 0, 127}));
+ connect(overvann.o, tunnel.i) annotation (
+ Line(points = {{-70, 32}, {-54, 32}}, color = {0, 128, 255}));
+ connect(tunnel.o, turbine.i) annotation (
+ Line(points = {{-34, 32}, {-24, 32}, {-24, 12}, {2, 12}}, color = {0, 128, 255}));
+ annotation (
+ experiment(StartTime = 0, StopTime = 10.0, Tolerance = 1e-06, Interval = 0.2000),
+ Documentation(info = "Generic test with penstock and emprical turbine model. The opening is kept fixed and the unit is allowed to speed up to runaway."),
+ __OpenModelica_commandLineOptions="--matchingAlgorithm=PFPlusExt --indexReductionMethod=dynamicStateSelection -d=initialization,NLSanalyticJacobian",
+ __OpenModelica_simulationFlags(
+ lv="LOG_STDOUT,LOG_ASSERT,LOG_STATS",
+ s="dassl",
+ noHomotopyOnFirstTry="()",
+ homMaxNewtonSteps="50",
+ homMaxTries="30",
+ variableFilter=".*"));
+end Test03_Turbine;
diff --git a/OpenHPLTest/EmpiricalTurbine/TurbineTest/Test04_Turbine.mo b/OpenHPLTest/EmpiricalTurbine/TurbineTest/Test04_Turbine.mo
new file mode 100644
index 00000000..be9643b7
--- /dev/null
+++ b/OpenHPLTest/EmpiricalTurbine/TurbineTest/Test04_Turbine.mo
@@ -0,0 +1,24 @@
+within OpenHPLTest.EmpiricalTurbine.TurbineTest;
+model Test04_Turbine
+ extends AbstractTurbineTest;
+public
+ OpenHPL.Waterway.Reservoir overvann(h_0 = 425.0, constantLevel = true) annotation (
+ Placement(transformation(origin = {-46, 28}, extent = {{-10, -10}, {10, 10}})));
+ OpenHPL.Waterway.Reservoir undervann(h_0 = 0.0, constantLevel = true) annotation (
+ Placement(transformation(origin = {72, -16}, extent = {{10, -10}, {-10, 10}}, rotation = -0)));
+ OpenHPL.ElectroMech.Turbines.EmpiricalTurbine turbine(turbineData = turbineData, turbineCharacteristics = tc, enable_nomSpeed = false, f_0 = 1.0, enable_f = true) annotation (
+ Placement(transformation(origin = {12, 12}, extent = {{-10, -10}, {10, 10}})));
+ Modelica.Blocks.Sources.Ramp ramp(height = -1, duration = 10, offset = 1, startTime = 2) annotation (
+ Placement(transformation(origin = {52, 72}, extent = {{10, -10}, {-10, 10}}, rotation = -0)));
+ parameter OpenHPL.Types.TurbineData turbineData(Dn = 1.59, nrps = 8.33, Hbep = 425.0, Qbep = 23.95, Tbep = 1.718E+06, openingBep = 0.601, g = data.g, rho = data.rho) annotation (
+ Placement(transformation(origin = {-80, 44}, extent = {{-12, 24}, {6, 6}})));
+equation
+ connect(overvann.o, turbine.i) annotation (
+ Line(points = {{-36, 28}, {-20, 28}, {-20, 12}, {2, 12}}, color = {0, 128, 255}));
+ connect(turbine.o, undervann.o) annotation (
+ Line(points = {{22, 12}, {28, 12}, {28, -16}, {62, -16}}, color = {0, 128, 255}));
+ connect(ramp.y, turbine.u_t) annotation (
+ Line(points = {{41, 72}, {4, 72}, {4, 24}}, color = {0, 0, 127}));
+annotation (
+ experiment(StartTime = 0, StopTime = 15, Tolerance = 1e-06, Interval = 0.01));
+end Test04_Turbine;
diff --git a/OpenHPLTest/EmpiricalTurbine/TurbineTest/Test05_Turbine.mo b/OpenHPLTest/EmpiricalTurbine/TurbineTest/Test05_Turbine.mo
new file mode 100644
index 00000000..c864abdc
--- /dev/null
+++ b/OpenHPLTest/EmpiricalTurbine/TurbineTest/Test05_Turbine.mo
@@ -0,0 +1,26 @@
+within OpenHPLTest.EmpiricalTurbine.TurbineTest;
+model Test05_Turbine
+ extends AbstractTurbineTest;
+ //
+public
+ OpenHPL.Waterway.Reservoir overvann(h_0 = 425.0, constantLevel = true) annotation (
+ Placement(transformation(origin = {-82, 12}, extent = {{-10, -10}, {10, 10}})));
+ OpenHPL.Waterway.Reservoir undervann(h_0 = 0.0, constantLevel = true) annotation (
+ Placement(transformation(origin = {72, -16}, extent = {{10, -10}, {-10, 10}}, rotation = -0)));
+ OpenHPL.ElectroMech.Turbines.EmpiricalTurbine turbine(turbineData = turbineData, turbineCharacteristics = tc, enable_nomSpeed = true) annotation (
+ Placement(transformation(origin = {12, 12}, extent = {{-10, -10}, {10, 10}})));
+ OpenHPL.Waterway.Pipe tunnel(H = 0, L = 2000, p_eps_input(displayUnit = "mm") = 1e-4, D_i = 4.6, SteadyState = true, Vdot_0 = 20.5) annotation (
+ Placement(transformation(origin = {-42, 12}, extent = {{-10, -10}, {10, 10}})));
+
+ Modelica.Blocks.Sources.Ramp ramp(height = 1, duration = 10, offset = 0, startTime = 0.1) annotation (
+ Placement(transformation(origin = {52, 72}, extent = {{10, -10}, {-10, 10}}, rotation = -0)));
+equation
+ connect(turbine.o, undervann.o) annotation (
+ Line(points = {{22, 12}, {28, 12}, {28, -16}, {62, -16}}, color = {0, 128, 255}));
+ connect(ramp.y, turbine.u_t) annotation (
+ Line(points = {{41, 72}, {4, 72}, {4, 24}}, color = {0, 0, 127}));
+connect(overvann.o, tunnel.i) annotation (
+ Line(points = {{-72, 12}, {-52, 12}}, color = {0, 128, 255}));
+connect(tunnel.o, turbine.i) annotation (
+ Line(points = {{-32, 12}, {2, 12}}, color = {0, 128, 255}));
+end Test05_Turbine;
diff --git a/OpenHPLTest/EmpiricalTurbine/TurbineTest/package.mo b/OpenHPLTest/EmpiricalTurbine/TurbineTest/package.mo
new file mode 100644
index 00000000..d8210d6b
--- /dev/null
+++ b/OpenHPLTest/EmpiricalTurbine/TurbineTest/package.mo
@@ -0,0 +1,17 @@
+within OpenHPLTest.EmpiricalTurbine;
+package TurbineTest
+ extends Modelica.Icons.ExamplesPackage;
+ import Modelica.Units.SI;
+
+
+
+ //
+
+
+ //
+
+
+ //
+
+ //
+end TurbineTest;
diff --git a/OpenHPLTest/EmpiricalTurbine/TurbineTest/package.order b/OpenHPLTest/EmpiricalTurbine/TurbineTest/package.order
new file mode 100644
index 00000000..871b47d9
--- /dev/null
+++ b/OpenHPLTest/EmpiricalTurbine/TurbineTest/package.order
@@ -0,0 +1,6 @@
+AbstractTurbineTest
+Test01_TurbineLookUp
+Test02_Turbine
+Test03_Turbine
+Test04_Turbine
+Test05_Turbine
diff --git a/OpenHPLTest/EmpiricalTurbine/package.mo b/OpenHPLTest/EmpiricalTurbine/package.mo
new file mode 100644
index 00000000..c186e192
--- /dev/null
+++ b/OpenHPLTest/EmpiricalTurbine/package.mo
@@ -0,0 +1,7 @@
+within OpenHPLTest;
+package EmpiricalTurbine
+ extends Modelica.Icons.ExamplesPackage;
+
+
+
+end EmpiricalTurbine;
diff --git a/OpenHPLTest/EmpiricalTurbine/package.order b/OpenHPLTest/EmpiricalTurbine/package.order
new file mode 100644
index 00000000..dc6141d7
--- /dev/null
+++ b/OpenHPLTest/EmpiricalTurbine/package.order
@@ -0,0 +1,3 @@
+Information
+TestBasicFunctions
+TurbineTest
diff --git a/OpenHPLTest/TestPipe.mo b/OpenHPLTest/TestPipe.mo
deleted file mode 100644
index 1148e236..00000000
--- a/OpenHPLTest/TestPipe.mo
+++ /dev/null
@@ -1,105 +0,0 @@
-within OpenHPLTest;
-
-package TestPipe
- extends Modelica.Icons.ExamplesPackage;
-
- partial model AbstractTest
- extends Modelica.Icons.Example;
- //
- inner OpenHPL.Data data(Vdot_0 = 0.0, p_a = 0.0, p_eps = 0.0) annotation(
- Placement(transformation(origin = {-70, 70}, extent = {{-10, -10}, {10, 10}})));
- //
- parameter Modelica.Units.SI.Length Ln = 1000.;
- parameter Modelica.Units.SI.Length Dn = sqrt(A*4/Modelica.Constants.pi);
- Real error;
- OpenHPL.Waterway.Reservoir Upstream(h_0 = 100, constantLevel = true) annotation(
- Placement(transformation(origin = {-50, 30}, extent = {{-10, -10}, {10, 10}})));
- OpenHPL.Waterway.Reservoir Downstream(constantLevel = true, h_0 = 0) annotation(
- Placement(transformation(origin = {70, 10}, extent = {{10, -10}, {-10, 10}})));
- protected
- constant Modelica.Units.SI.Area A = 0.1;
- end AbstractTest;
-
- model Test01
- extends AbstractTest;
- OpenHPL.Waterway.Pipe pipe1(H = 0, L = Ln, D_i = 0.8*Dn, D_o = 1.2*Dn) annotation(
- Placement(transformation(origin = {0, 60}, extent = {{-10, -10}, {10, 10}})));
- OpenHPL.Waterway.Pipe pipe2(H = 0, L = Ln, D_i = Dn, D_o = Dn) annotation(
- Placement(transformation(origin = {0, 30}, extent = {{-10, -10}, {10, 10}})));
- OpenHPL.Waterway.Pipe pipe3(H = 0, L = Ln, D_i = 1.2*Dn, D_o = 0.8*Dn) annotation(
- Placement(transformation(extent = {{-10, -10}, {10, 10}})));
- equation
- error=sqrt((pipe1.mdot-pipe2.mdot)^2 + (pipe2.mdot-pipe3.mdot)^2 + (pipe3.mdot-pipe1.mdot)^2);
- connect(Upstream.o, pipe1.i) annotation(
- Line(points = {{-40, 30}, {-20, 30}, {-20, 60}, {-10, 60}}, color = {0, 128, 255}));
- connect(pipe2.i, Upstream.o) annotation(
- Line(points = {{-10, 30}, {-40, 30}}, color = {0, 128, 255}));
- connect(Upstream.o, pipe3.i) annotation(
- Line(points = {{-40, 30}, {-20, 30}, {-20, 0}, {-10, 0}}, color = {0, 128, 255}));
- connect(pipe1.o, Downstream.o) annotation(
- Line(points = {{10, 60}, {50, 60}, {50, 10}, {60, 10}}, color = {0, 128, 255}));
- connect(pipe2.o, Downstream.o) annotation(
- Line(points = {{10, 30}, {50, 30}, {50, 10}, {60, 10}}, color = {0, 128, 255}));
- connect(pipe3.o, Downstream.o) annotation(
- Line(points = {{10, 0}, {50, 0}, {50, 10}, {60, 10}}, color = {0, 128, 255}));
- annotation(
- experiment(StartTime = 0, StopTime = 1, Tolerance = 1e-06, Interval = 0.002));
-end Test01;
-
- model Test02
- extends OpenHPLTest.TestPipe.Test01(data(SteadyState = true));
- equation
-
- end Test02;
-
- model Test03
- extends AbstractTest(data(SteadyState = true));
-
- OpenHPL.Waterway.Pipe pipe1(H = 0, L = Ln, D_i = Dn) annotation(
- Placement(transformation(origin = {0, 60}, extent = {{-10, -10}, {10, 10}})));
- OpenHPL.Waterway.Pipe pipe2(H = 0, L = Ln, D_i = Dn) annotation(
- Placement(transformation(origin = {0, 30}, extent = {{-10, -10}, {10, 10}})));
- OpenHPL.Waterway.Pipe pipe3(H = 0, L = Ln, D_i = Dn) annotation( Placement(transformation(extent = {{-10, -10}, {10, 10}})));
- OpenHPL.Waterway.Valve valve1(ValveCapacity = false, H_n = 100, Vdot_n = 1) annotation(
- Placement(transformation(origin = {30, 60}, extent = {{-10, -10}, {10, 10}})));
- OpenHPL.Waterway.Valve valve2(ValveCapacity = false, H_n = 100, Vdot_n = 1) annotation(
- Placement(transformation(origin = {30, 30}, extent = {{-10, -10}, {10, 10}})));
- OpenHPL.Waterway.Valve valve3(ValveCapacity = false, H_n = 100, Vdot_n = 1) annotation(
- Placement(transformation(origin = {30, 0}, extent = {{-10, 10}, {10, -10}})));
- Modelica.Blocks.Sources.Ramp ramp1(height = 1, duration = 5, offset = 0, startTime = 2) annotation(
- Placement(transformation(origin = {80, 80}, extent = {{10, -10}, {-10, 10}}, rotation = -0)));
- Modelica.Blocks.Sources.Ramp ramp2(duration = 5, height = 0.5, offset = 0.5, startTime = 2) annotation(
- Placement(transformation(origin = {80, 50}, extent = {{10, -10}, {-10, 10}})));
- Modelica.Blocks.Sources.Ramp ramp3(duration = 5, height = -1, offset = 1, startTime = 2) annotation(
- Placement(transformation(origin = {80, -20}, extent = {{10, -10}, {-10, 10}})));
- equation
- error=sqrt((pipe1.mdot-pipe2.mdot)^2 + (pipe2.mdot-pipe3.mdot)^2 + (pipe3.mdot-pipe1.mdot)^2);
- connect(pipe1.o, valve1.i) annotation(
- Line(points = {{10, 60}, {20, 60}}, color = {0, 128, 255}));
- connect(pipe2.o, valve2.i) annotation(
- Line(points = {{10, 30}, {20, 30}}, color = {0, 128, 255}));
- connect(pipe3.o, valve3.i) annotation(
- Line(points = {{10, 0}, {20, 0}}, color = {0, 128, 255}));
- connect(ramp1.y, valve1.opening) annotation(
- Line(points = {{69, 80}, {30, 80}, {30, 68}}, color = {0, 0, 127}));
- connect(valve1.o, Downstream.o) annotation(
- Line(points = {{40, 60}, {52, 60}, {52, 10}, {62, 10}}, color = {0, 128, 255}));
- connect(valve2.o, Downstream.o) annotation(
- Line(points = {{40, 30}, {52, 30}, {52, 10}, {62, 10}}, color = {0, 128, 255}));
- connect(ramp3.y, valve3.opening) annotation(
- Line(points = {{69, -20}, {30, -20}, {30, -8}}, color = {0, 0, 127}));
- connect(valve3.o, Downstream.o) annotation(
- Line(points = {{40, 0}, {52, 0}, {52, 10}, {62, 10}}, color = {0, 128, 255}));
- connect(valve2.opening, ramp2.y) annotation(
- Line(points = {{30, 38}, {30, 50}, {70, 50}}, color = {0, 0, 127}));
- connect(Upstream.o, pipe2.i) annotation(
- Line(points = {{-40, 30}, {-10, 30}}, color = {0, 128, 255}));
- connect(Upstream.o, pipe1.i) annotation(
- Line(points = {{-40, 30}, {-20, 30}, {-20, 60}, {-10, 60}}, color = {0, 128, 255}));
- connect(Upstream.o, pipe3.i) annotation(
- Line(points = {{-40, 30}, {-20, 30}, {-20, 0}, {-10, 0}}, color = {0, 128, 255}));
- annotation(
- experiment(StartTime = 0, StopTime = 30, Tolerance = 1e-06, Interval = 0.001));
-end Test03;
-
-end TestPipe;
\ No newline at end of file
diff --git a/OpenHPLTest/TestPipe/AbstractTest.mo b/OpenHPLTest/TestPipe/AbstractTest.mo
new file mode 100644
index 00000000..1f0f7c18
--- /dev/null
+++ b/OpenHPLTest/TestPipe/AbstractTest.mo
@@ -0,0 +1,17 @@
+within OpenHPLTest.TestPipe;
+partial model AbstractTest
+ extends Modelica.Icons.Example;
+ //
+ inner OpenHPL.Data data(Vdot_0 = 0.0, p_a = 0.0, p_eps = 0.0) annotation (
+ Placement(transformation(origin = {-70, 70}, extent = {{-10, -10}, {10, 10}})));
+ //
+ parameter Modelica.Units.SI.Length Ln = 1000.;
+ parameter Modelica.Units.SI.Length Dn = sqrt(A*4/Modelica.Constants.pi);
+ Real error;
+ OpenHPL.Waterway.Reservoir Upstream(h_0 = 100, constantLevel = true) annotation (
+ Placement(transformation(origin = {-50, 30}, extent = {{-10, -10}, {10, 10}})));
+ OpenHPL.Waterway.Reservoir Downstream(constantLevel = true, h_0 = 0) annotation (
+ Placement(transformation(origin = {70, 10}, extent = {{10, -10}, {-10, 10}})));
+protected
+ constant Modelica.Units.SI.Area A = 0.1;
+end AbstractTest;
diff --git a/OpenHPLTest/TestPipe/Test01.mo b/OpenHPLTest/TestPipe/Test01.mo
new file mode 100644
index 00000000..76af1da9
--- /dev/null
+++ b/OpenHPLTest/TestPipe/Test01.mo
@@ -0,0 +1,26 @@
+within OpenHPLTest.TestPipe;
+model Test01
+ extends AbstractTest;
+ OpenHPL.Waterway.Pipe pipe1(H = 0, L = Ln, D_i = 0.8*Dn, D_o = 1.2*Dn) annotation (
+ Placement(transformation(origin = {0, 60}, extent = {{-10, -10}, {10, 10}})));
+ OpenHPL.Waterway.Pipe pipe2(H = 0, L = Ln, D_i = Dn, D_o = Dn) annotation (
+ Placement(transformation(origin = {0, 30}, extent = {{-10, -10}, {10, 10}})));
+ OpenHPL.Waterway.Pipe pipe3(H = 0, L = Ln, D_i = 1.2*Dn, D_o = 0.8*Dn) annotation (
+ Placement(transformation(extent = {{-10, -10}, {10, 10}})));
+equation
+ error=sqrt((pipe1.mdot-pipe2.mdot)^2 + (pipe2.mdot-pipe3.mdot)^2 + (pipe3.mdot-pipe1.mdot)^2);
+connect(Upstream.o, pipe1.i) annotation (
+ Line(points = {{-40, 30}, {-20, 30}, {-20, 60}, {-10, 60}}, color = {0, 128, 255}));
+connect(pipe2.i, Upstream.o) annotation (
+ Line(points = {{-10, 30}, {-40, 30}}, color = {0, 128, 255}));
+connect(Upstream.o, pipe3.i) annotation (
+ Line(points = {{-40, 30}, {-20, 30}, {-20, 0}, {-10, 0}}, color = {0, 128, 255}));
+connect(pipe1.o, Downstream.o) annotation (
+ Line(points = {{10, 60}, {50, 60}, {50, 10}, {60, 10}}, color = {0, 128, 255}));
+connect(pipe2.o, Downstream.o) annotation (
+ Line(points = {{10, 30}, {50, 30}, {50, 10}, {60, 10}}, color = {0, 128, 255}));
+connect(pipe3.o, Downstream.o) annotation (
+ Line(points = {{10, 0}, {50, 0}, {50, 10}, {60, 10}}, color = {0, 128, 255}));
+annotation (
+ experiment(StartTime = 0, StopTime = 1, Tolerance = 1e-06, Interval = 0.002));
+end Test01;
diff --git a/OpenHPLTest/TestPipe/Test02.mo b/OpenHPLTest/TestPipe/Test02.mo
new file mode 100644
index 00000000..024ff015
--- /dev/null
+++ b/OpenHPLTest/TestPipe/Test02.mo
@@ -0,0 +1,6 @@
+within OpenHPLTest.TestPipe;
+model Test02
+ extends OpenHPLTest.TestPipe.Test01(data(SteadyState=true));
+equation
+
+end Test02;
diff --git a/OpenHPLTest/TestPipe/Test03.mo b/OpenHPLTest/TestPipe/Test03.mo
new file mode 100644
index 00000000..cd4bb21f
--- /dev/null
+++ b/OpenHPLTest/TestPipe/Test03.mo
@@ -0,0 +1,50 @@
+within OpenHPLTest.TestPipe;
+model Test03
+ extends AbstractTest(data(SteadyState = true));
+
+ OpenHPL.Waterway.Pipe pipe1(H = 0, L = Ln, D_i = Dn) annotation (
+ Placement(transformation(origin = {0, 60}, extent = {{-10, -10}, {10, 10}})));
+ OpenHPL.Waterway.Pipe pipe2(H = 0, L = Ln, D_i = Dn) annotation (
+ Placement(transformation(origin = {0, 30}, extent = {{-10, -10}, {10, 10}})));
+ OpenHPL.Waterway.Pipe pipe3(H = 0, L = Ln, D_i = Dn) annotation ( Placement(transformation(extent = {{-10, -10}, {10, 10}})));
+ OpenHPL.Waterway.Valve valve1(ValveCapacity = false, H_n = 100, Vdot_n = 1) annotation (
+ Placement(transformation(origin = {30, 60}, extent = {{-10, -10}, {10, 10}})));
+ OpenHPL.Waterway.Valve valve2(ValveCapacity = false, H_n = 100, Vdot_n = 1) annotation (
+ Placement(transformation(origin = {30, 30}, extent = {{-10, -10}, {10, 10}})));
+ OpenHPL.Waterway.Valve valve3(ValveCapacity = false, H_n = 100, Vdot_n = 1) annotation (
+ Placement(transformation(origin = {30, 0}, extent = {{-10, 10}, {10, -10}})));
+ Modelica.Blocks.Sources.Ramp ramp1(height = 1, duration = 5, offset = 0, startTime = 2) annotation (
+ Placement(transformation(origin = {80, 80}, extent = {{10, -10}, {-10, 10}}, rotation = -0)));
+ Modelica.Blocks.Sources.Ramp ramp2(duration = 5, height = 0.5, offset = 0.5, startTime = 2) annotation (
+ Placement(transformation(origin = {80, 50}, extent = {{10, -10}, {-10, 10}})));
+ Modelica.Blocks.Sources.Ramp ramp3(duration = 5, height = -1, offset = 1, startTime = 2) annotation (
+ Placement(transformation(origin = {80, -20}, extent = {{10, -10}, {-10, 10}})));
+equation
+error=sqrt((pipe1.mdot-pipe2.mdot)^2 + (pipe2.mdot-pipe3.mdot)^2 + (pipe3.mdot-pipe1.mdot)^2);
+connect(pipe1.o, valve1.i) annotation (
+ Line(points = {{10, 60}, {20, 60}}, color = {0, 128, 255}));
+connect(pipe2.o, valve2.i) annotation (
+ Line(points = {{10, 30}, {20, 30}}, color = {0, 128, 255}));
+connect(pipe3.o, valve3.i) annotation (
+ Line(points = {{10, 0}, {20, 0}}, color = {0, 128, 255}));
+connect(ramp1.y, valve1.opening) annotation (
+ Line(points = {{69, 80}, {30, 80}, {30, 68}}, color = {0, 0, 127}));
+connect(valve1.o, Downstream.o) annotation (
+ Line(points = {{40, 60}, {52, 60}, {52, 10}, {62, 10}}, color = {0, 128, 255}));
+connect(valve2.o, Downstream.o) annotation (
+ Line(points = {{40, 30}, {52, 30}, {52, 10}, {62, 10}}, color = {0, 128, 255}));
+connect(ramp3.y, valve3.opening) annotation (
+ Line(points = {{69, -20}, {30, -20}, {30, -8}}, color = {0, 0, 127}));
+connect(valve3.o, Downstream.o) annotation (
+ Line(points = {{40, 0}, {52, 0}, {52, 10}, {62, 10}}, color = {0, 128, 255}));
+connect(valve2.opening, ramp2.y) annotation (
+ Line(points = {{30, 38}, {30, 50}, {70, 50}}, color = {0, 0, 127}));
+connect(Upstream.o, pipe2.i) annotation (
+ Line(points = {{-40, 30}, {-10, 30}}, color = {0, 128, 255}));
+connect(Upstream.o, pipe1.i) annotation (
+ Line(points = {{-40, 30}, {-20, 30}, {-20, 60}, {-10, 60}}, color = {0, 128, 255}));
+connect(Upstream.o, pipe3.i) annotation (
+ Line(points = {{-40, 30}, {-20, 30}, {-20, 0}, {-10, 0}}, color = {0, 128, 255}));
+annotation (
+ experiment(StartTime = 0, StopTime = 30, Tolerance = 1e-06, Interval = 0.001));
+end Test03;
diff --git a/OpenHPLTest/TestPipe/package.mo b/OpenHPLTest/TestPipe/package.mo
new file mode 100644
index 00000000..36e1c480
--- /dev/null
+++ b/OpenHPLTest/TestPipe/package.mo
@@ -0,0 +1,9 @@
+within OpenHPLTest;
+package TestPipe
+ extends Modelica.Icons.ExamplesPackage;
+
+
+
+
+
+end TestPipe;
diff --git a/OpenHPLTest/TestPipe/package.order b/OpenHPLTest/TestPipe/package.order
new file mode 100644
index 00000000..fcf8ae36
--- /dev/null
+++ b/OpenHPLTest/TestPipe/package.order
@@ -0,0 +1,4 @@
+AbstractTest
+Test01
+Test02
+Test03
diff --git a/OpenHPLTest/TorqueEquation.mo b/OpenHPLTest/TorqueEquation.mo
deleted file mode 100644
index ed03c8b1..00000000
--- a/OpenHPLTest/TorqueEquation.mo
+++ /dev/null
@@ -1,37 +0,0 @@
-within OpenHPLTest;
-
-package TorqueEquation
- extends Modelica.Icons.ExamplesPackage;
- import SI = Modelica.Units.SI;
- //
-
- model TorqueElement
- extends OpenHPL.Icons.ElectroMech;
- extends OpenHPL.ElectroMech.BaseClasses.TorqueEquation;
- equation
-
- end TorqueElement;
-
- model TorqueTest
- extends Modelica.Icons.Example;
- //
- parameter SI.Torque shaftTorque0 = 1.e+03;
- SI.Torque shaftTorque;
- inner OpenHPL.Data data annotation(
- Placement(transformation(origin = {-52, 74}, extent = {{-10, -10}, {10, 10}})));
- TorqueElement te1(J = 10, f_0 = 0, torque(y = shaftTorque), enable_f = true, p = 10) annotation(
- Placement(transformation(origin = {-30, 52}, extent = {{-10, -10}, {10, 10}})));
- TorqueElement te2(J = 10, f_0 = 0, torque(y = shaftTorque), enable_f = true, p = 22) annotation(
- Placement(transformation(origin = {-30, 24}, extent = {{-10, -10}, {10, 10}})));
- equation
- if (time > 0.1 and time < 0.4) then
- shaftTorque = shaftTorque0;
- elseif (time > 0.5 and time < 0.8) then
- shaftTorque = -shaftTorque0;
- else
- shaftTorque = 0.0;
- end if;
- annotation(
- Diagram(coordinateSystem(extent = {{-80, 80}, {-20, 0}})));
-end TorqueTest;
-end TorqueEquation;
diff --git a/OpenHPLTest/TorqueEquation/TorqueElement.mo b/OpenHPLTest/TorqueEquation/TorqueElement.mo
new file mode 100644
index 00000000..5b247266
--- /dev/null
+++ b/OpenHPLTest/TorqueEquation/TorqueElement.mo
@@ -0,0 +1,7 @@
+within OpenHPLTest.TorqueEquation;
+model TorqueElement
+ extends OpenHPL.Icons.ElectroMech;
+ extends OpenHPL.ElectroMech.BaseClasses.TorqueEquation;
+equation
+
+end TorqueElement;
diff --git a/OpenHPLTest/TorqueEquation/TorqueTest.mo b/OpenHPLTest/TorqueEquation/TorqueTest.mo
new file mode 100644
index 00000000..b364afb2
--- /dev/null
+++ b/OpenHPLTest/TorqueEquation/TorqueTest.mo
@@ -0,0 +1,23 @@
+within OpenHPLTest.TorqueEquation;
+model TorqueTest
+ extends Modelica.Icons.Example;
+ //
+ parameter SI.Torque shaftTorque0 = 1.e+03;
+ SI.Torque shaftTorque;
+ inner OpenHPL.Data data annotation (
+ Placement(transformation(origin = {-52, 74}, extent = {{-10, -10}, {10, 10}})));
+ TorqueElement te1(J = 10, f_0 = 0, torque(y = shaftTorque), enable_f = true, p = 10) annotation (
+ Placement(transformation(origin = {-30, 52}, extent = {{-10, -10}, {10, 10}})));
+ TorqueElement te2(J = 10, f_0 = 0, torque(y = shaftTorque), enable_f = true, p = 22) annotation (
+ Placement(transformation(origin = {-30, 24}, extent = {{-10, -10}, {10, 10}})));
+equation
+ if (time > 0.1 and time < 0.4) then
+ shaftTorque = shaftTorque0;
+ elseif (time > 0.5 and time < 0.8) then
+ shaftTorque = -shaftTorque0;
+ else
+ shaftTorque = 0.0;
+ end if;
+annotation (
+ Diagram(coordinateSystem(extent = {{-80, 80}, {-20, 0}})));
+end TorqueTest;
diff --git a/OpenHPLTest/TorqueEquation/package.mo b/OpenHPLTest/TorqueEquation/package.mo
new file mode 100644
index 00000000..d6edd2d7
--- /dev/null
+++ b/OpenHPLTest/TorqueEquation/package.mo
@@ -0,0 +1,8 @@
+within OpenHPLTest;
+package TorqueEquation
+ extends Modelica.Icons.ExamplesPackage;
+ import Modelica.Units.SI;
+ //
+
+
+end TorqueEquation;
diff --git a/OpenHPLTest/TorqueEquation/package.order b/OpenHPLTest/TorqueEquation/package.order
new file mode 100644
index 00000000..cad0b912
--- /dev/null
+++ b/OpenHPLTest/TorqueEquation/package.order
@@ -0,0 +1,2 @@
+TorqueElement
+TorqueTest
diff --git a/OpenHPLTest/package.mo b/OpenHPLTest/package.mo
index bf26e7bd..e9099d6e 100644
--- a/OpenHPLTest/package.mo
+++ b/OpenHPLTest/package.mo
@@ -3,6 +3,7 @@ package OpenHPLTest "Test library for OpenHPL"
extends Modelica.Icons.ExamplesPackage;
extends Modelica.Icons.UnderConstruction;
+
annotation (uses(
Modelica(version="4.0.0"),
OpenHPL(version="3.0.0"),
diff --git a/OpenHPLTest/package.order b/OpenHPLTest/package.order
index e2e7c76f..24d43dbb 100644
--- a/OpenHPLTest/package.order
+++ b/OpenHPLTest/package.order
@@ -1,74 +1,4 @@
+EmpiricalTurbine
TestPipe
TorqueEquation
-OpenChannel
-Reservoir
-TestMCB
-TorpaHPPAirCushionTest
-TorpaHPPAirCushionTest2
-HPTaperedFittingsTest
-HPSquareFittingsTest
-HPAllTypeFittingsTest
-HPSimpleElasticPenstock
-HPSimpleElasticPenstockWithoutSurge
-HPElasticKPPenstock
-HPElasticKPPenstockCompres
-HPElasticKPPenstockWithoutSurge
-HPElasticKPPenstockANDIntake
-HPElasticKPPenstockHalfSurgeD
-TestFitingSimpleHP
-HPSimplePenstockControl
-HPSimplePenstockAutoRefGate
-HPSimplePenstockResKP
-HPSimplePenstockOpenChannel
-HPSimplePenstockGeneratorTest
-HPSimplePenstockFrancis
-HPSimplePenstockFrancisGener
-HPSimplePenstockFrancis2
-CaseStudingValentynasCase
-HPSimplePenstockPelton
-TestRunoff
-HPElasticKPPenstockFrancis
-HPElasticKPPenstockFrancisGov
-HPLiniarization
-HPLiniarizationKP
-HPLiniarizationFranGen
-HPLiniarizationKPFran
-HPLinTest
-HPSimplePenstockFrancisGenIPSL
-HPSimplePenstockFrancisGenIPSLGov
-HPSimplePenstockFrancisGenIPSLInfBus
-HPLiniarizationGenIPSL
-HPLiniarizationGenIPSLKP
-HPModel
-HPModelDEA
-HPBjarneBorresen
-HPModelLin
-HPModelLinPI
-HPModelKPLin
-HPModelObserv
-HPModelKPLinPI
-HPModelObservSim
-HPLiniarization2
-HPModelManLin
-HPLiniarization3
-HPLiniarization4
-HydroCordModel
-HydroCordModelKP
-HydroCordModelFrancis
-HydroCordModelKPall
-HydroCordModelFrancis2
-HydroCordModelKP2
-HydroCordModel2
-HydroCordModelKPFran
-HydroCordModelKPFran2
-HydroCordModelDraftTube
-HydroCordModelDraftTube2
-HydroCordModelKPDraftTube
-HydroCordModelFrancisDraftTube
-HydroCordModeKPlFrancisDraftTube
-HydroCordModelDraftTube3
-HPDraftTube
-HPSTSimple
-HPSTAirCushion
-HPSTSharpOrifice
-HPSTThrottleValve
+Archive