- Timestamp:
- 10/08/2007 01:13:42 PM (15 months ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
Modelica/branches/maintenance/2.2.2/Modelica/Thermal/FluidHeatFlow.mo
r588 r656 1 1 within Modelica.Thermal; 2 2 3 package FluidHeatFlow 3 4 "Simple components for 1-dimensional incompressible thermo-fluid flow models" 4 5 extends Modelica.Icons.Library2; 5 6 annotation ( 6 version="1.6.3 ", versionDate="2007-08-21",7 version="1.6.3a", versionDate="2007-10-08", 7 8 preferedView="info",Documentation(info="<HTML> 8 9 This package contains very simple-to-use components to model coolant flows as needed to simulate cooling e.g. of electric machines: … … 106 107 <li> v1.6.3 2007/08/21 Anton Haumer<br> 107 108 improved documentation</li> 109 <li> v1.6.3a 2007/10/08 Anton Haumer<br> 110 changes to avoid unit conflicts</li> 108 111 </ul> 109 112 </HTML> … … 1391 1394 protected 1392 1395 constant Real small = Modelica.Constants.small; 1396 constant Modelica.SIunits.VolumeFlowRate smallVolumeFlowRate = eps; 1393 1397 constant Real eps = Modelica.Constants.eps; 1394 1398 Real yLim = max(min(y,y1),0) "Limited valve opening"; … … 1399 1403 initial algorithm 1400 1404 assert(y1>small, "Valve characteristic: y1 has to be > 0 !"); 1401 assert(Kv1>small , "Valve characteristic: Kv1 has to be > 0 !");1405 assert(Kv1>smallVolumeFlowRate, "Valve characteristic: Kv1 has to be > 0 !"); 1402 1406 assert(kv0>small, "Valve characteristic: kv0 has to be > 0 !"); 1403 1407 assert(kv0<1-eps, "Valve characteristic: kv0 has to be < 1 !"); … … 1671 1675 Modelica.SIunits.Power Q_friction; 1672 1676 protected 1673 parameter Real k(fi xed=false);1677 parameter Real k(final unit="Pa.s2/m6", fixed=false); 1674 1678 initial algorithm 1675 1679 assert(V_flowNominal>V_flowLaminar, 1676 1680 "SimpleFriction: V_flowNominal has to be > V_flowLaminar!"); 1677 k:=dpLaminar/V_flowLaminar*V_flowNominal; 1678 assert(dpNominal>=k, 1679 "SimpleFriction: dpNominal has to be > dpLaminar*V_flowNominal/V_flowLaminar!"); 1680 k:=(dpNominal - k)/(V_flowNominal - V_flowLaminar)^2; 1681 assert(dpNominal>=dpLaminar/V_flowLaminar*V_flowNominal, 1682 "SimpleFriction: dpNominal has to be > dpLaminar/V_flowLaminar*V_flowNominal!"); 1683 k:=(dpNominal - dpLaminar/V_flowLaminar*V_flowNominal)/(V_flowNominal - V_flowLaminar)^2; 1681 1684 equation 1682 1685 if VolumeFlow > +V_flowLaminar then
