Model that computes the flow coefficients of valves. This base class allows the following modeling options, which have been adapted from the valve implementation in Modelica.Fluid to specify the valve flow coefficient in fully open conditions:
CvData = Annex60.Fluid.Types.CvTypes.Av
: the flow coefficient is given by the metric Av
coefficient (m^2).CvData = Annex60.Fluid.Types.CvTypes.Kv
: the flow coefficient is given by the metric Kv
coefficient (m^3/h).CvData = Annex60.Fluid.Types.CvTypes.Cv
: the flow coefficient is given by the US Cv
coefficient (USG/min).CvData = Annex60.Fluid.Types.CvTypes.OpPoint
: the flow is computed from the nominal operating point specified by dp_nominal
and m_flow_nominal
.
The treatment of parameters Kv
and Cv
is
explained in detail in the
Users Guide.
In contrast to the model in
Modelica.Fluid, this model uses the protected parameter Kv_SI
,
which is the flow coefficient in SI units, i.e.,
it is the ratio between mass flow rate in kg/s
and square root
of pressure drop in Pa
.
The value of Kv_SI
is computed based on the parameters
Av
,
Kv
,
Cv
, or, if
CvData = Annex60.Fluid.Types.CvTypes.OpPoint
, based on
m_flow_nominal
and dpValve_nominal
.
Conversely, if
CvData <> Annex60.Fluid.Types.CvTypes.OpPoint
, then
dpValve_nominal
is computed based on
Av
,
Kv
, or
Cv
, and the nominal mass flow rate m_flow_nominal
.
Therefore, if
CvData <> Annex60.Fluid.Types.CvTypes.OpPoint
,
then specifying a value for dpValve_nominal
is a syntax error.
min
of dpValve_nominal
to 0
.
This is needed as for example in
Annex60.Fluid.Actuators.Valves.Examples.TwoWayValveTable,
dpValve_nominal=0
.
initial algorithm
to an initial equation
section. Otherwise, OpenModelica attempts to solve for the parameter
values using numerical iteration, and fails in doing so.
Evaluate=true
.
Kv_SI
as
a public parameter because it is always computed based on other parameters.
This change avoids a translation error in Dymola 2014 beta1 in
the pedantic mode, and a translation warning otherwise.