0% found this document useful (0 votes)
89 views22 pages

Algorithms 13 00053 v2 PDF

Uploaded by

John Doe
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
89 views22 pages

Algorithms 13 00053 v2 PDF

Uploaded by

John Doe
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 22

algorithms

Article
Uncertainty Propagation through a Point Model for
Steady-State Two-Phase Pipe Flow
Andreas Strand 1,∗ , Ivar Eskerud Smith 2 , Tor Erling Unander 2 , Ingelin Steinsland 3 and
Leif Rune Hellevik 1
1 Department of Structural Engineering, Faculty of Engineering, Norwegian University of Science and
Technology, 7491 Trondheim, Norway; [email protected]
2 SINTEF Multiphase Flow Laboratory, 7491 Trondheim, Norway; [email protected] (I.E.S.);
[email protected] (T.E.U.)
3 Department of Mathematical Sciences, Faculty of Information Technology and Electrical Engineering,
Norwegian University of Science and Technology, 7491 Trondheim, Norway; [email protected]
* Correspondence: [email protected]; Tel.: +47-90681168

Received: 31 January 2020; Accepted: 25 February 2020; Published: 28 February 2020 

Abstract: Uncertainty propagation is used to quantify the uncertainty in model predictions in the
presence of uncertain input variables. In this study, we analyze a steady-state point-model for
two-phase gas-liquid flow. We present prediction intervals for holdup and pressure drop that
are obtained from knowledge of the measurement error in the variables provided to the model.
The analysis also uncovers which variables the predictions are most sensitive to. Sensitivity indices
and prediction intervals are calculated by two different methods, Monte Carlo and polynomial
chaos. The methods give similar prediction intervals, and they agree that the predictions are most
sensitive to the pipe diameter and the liquid viscosity. However, the Monte Carlo simulations require
fewer model evaluations and less computational time. The model predictions are also compared to
experiments while accounting for uncertainty, and the holdup predictions are accurate, but there is
bias in the pressure drop estimates.

Keywords: two-phase flow; unit cell; uncertainty quantification; sensitivity analysis; Monte Carlo;
polynomial chaos

1. Introduction
Multiphase flow models are used in a range of applications, such as petroleum transport, nuclear
energy and biomechanics. Accuracy in the model output is required to ensure the models to be useful
decision support tools. Consequently, there is a rapid development in methods for quantifying the
uncertainty in these models.
Lee and Chen [1] compared several types of uncertainty propagation methods, including
Monte Carlo methods (MC), polynomial chaos expansions (PC), full-factorial numerical integration
(FFNI) and univariate dimension reduction (UDR). They explain the relative strengths of each
method, and one conclusion is that PC is most viable in comparison to FFNI and UDR when input
distributions are normal but output distributions are not. This is the situation in our analysis.
Later, Cremaschi et al. [2] discussed applications of the methods discussed in Lee and Chen [1] to
multiphase flows. Furthermore, they asked in the short-term that vendors of multiphase simulators
implement tools for propagating uncertainty and yield sensitivities and prediction intervals. It was also
requested that the simulators incorporate uncertainty in closure laws and that researchers accompany
experimental data with uncertainty estimates. In the long term, Cremaschi et al. [2] recommended
producing scale-up data to improve extrapolation in multiphase models. A case study is presented

Algorithms 2020, 13, 53; doi:10.3390/a13030053 www.mdpi.com/journal/algorithms


Algorithms 2020, 13, 53 2 of 22

in Holm et al. [3,4], where they demonstrated how uncertainty propagation may be used for flow
assurance on the Shtokman gas and condensate field. Their analysis included pressure drop and
liquid holdup predictions using a one-dimensional model in the software OLGA. They determined
probability distributions for a selection of input variables and closure laws and they propagated
these uncertainties through the multiflow model using a Monte Carlo method. The result is the 10th,
50th, and 90th output percentiles for pressure drop and liquid holdup predictions and measures of
sensitivity to the input variables. Hoyer et al. [5] used Monte Carlo simulations with OLGA in order to
identify influential variables and closure laws in several groups of data with different flow conditions.
They are only able to construct satisfactory probability distributions for each closure law when using a
group of data where the closure law is significant.
Klavetter et al. [6] modeled liquid holdup and pressure drop in two-phase pipe flow using the
TUFFP Unified Model for two-phase flow. They assumed an uncertainty range for each input variable
and compared perturbation, Taylor series approximations and Monte Carlo methods for uncertainty
propagation. They concluded that Taylor series approximations overestimate the output uncertainty
while the other methods perform well. Keinath et al. [7] also demonstrated the importance of selecting
an appropriate framework when handling uncertainty in multiphase modeling and highlighted the
value of quantitative information about the input uncertainty distributions for decision making.
Just recently, in Liu et al. [8], a Gaussian process and principal component analysis were applied to a
complex two-phase flow model in order to explore the uncertainty and reduce the complexity of the
model. Picchi and Poesio [9] considered a one-dimensional model for two-phase pipe flow. Known
distributions for input variables are propagated through the model using Monte Carlo methods
to obtain first-order and total sensitivity indices as well as output distributions. In the thesis of
Klinkert [10], a similar method was applied to the point model Shell Flow Correlations and the
one-dimensional model PIPESIM by Schlumberger. Polynomial chaos expansions were also applied,
and both analyses were implemented in the open-source software UQLab [11].
In this work, we compare uncertainty estimates obtained by Monte Carlo simulations with those
of polynomial chaos for the two-phase point model presented in Smith et al. [12]. The analyses include
quantifying the uncertainty in the model output and estimating the sensitivity to each input variable.
Furthermore, we explicitly compare the computational cost of MC to that of PC. These comparisons
are important for practical use but uncommon in the literature.
The flow model predicts average holdup and pressure drop based on mass rates, viscosities,
densities, pipe diameter, hydraulic roughness, surface tension and pipe inclination. The uncertainty
framework provides prediction intervals and the sensitivity to each input variable. We use 240
experiments of stratified flow or slug flow from the SINTEF Multiphase Flow Laboratory as reference.
These experiments were also studied in Smith et al. [12]. The comparison of prediction intervals
to measurement intervals provides high-quality information about any bias in the physical model
because the uncertainty is handled in a careful manner.
Section 2 contains details on the flow model and the uncertainty quantification framework.
The results are presented in Section 3 and discussed in Section 4.

2. Materials and Methods

2.1. Flow Model


We analyzed the model developed in Smith et al. [12], only with a small change to turbulent
interpolation. This section briefly outlines their model, which considers two-phase flow in a circular
pipe and predicts liquid holdup H and pressure drop − p0 = −∂p/∂x in the longitudinal direction
x. The model predictions are based on ten measured input variables listed in Table 1. In contrast to
the presented approach, system identification with a backward elimination method [13,14], forward
selection [15] or stepwise regression [16] can be used for the same purpose. This would raise the model
Algorithms 2020, 13, 53 3 of 22

quality, but also increase the experiment cost and computational time significantly, and is not applied
in this paper.

Table 1. Input to the flow model. The index p refers to phase, where g is gas and l is liquid.
Symbol Description Unit
ṁ p Mass rate kg/s
µp Viscosity Pa s
ρp Density Pa s
D Pipe diameter m
ε Hydraulic roughness m
σ Surface tension N/m
θ Pipe inclination rad

The flow is categorized as either stratified, bubbly or slug flow. All cases are covered by a unit-cell
model, as introduced in Dukler and Hubbard [17]. The holdup is the weighted average

H = sHs + (1 − s) Hl , (1)

where s is slug fraction, Hs is the slug zone holdup and Hl is the bubble zone holdup. Slug flow is
illustrated in Figure 1. The model allows for gas bubbles in the slug. Note that s ≤ 0 is stratified flow
and s ≥ 1 is bubbly flow, and s is then limited to 0 and 1, respectively, in the weighting.

Figure 1. Slug flow. Gas bubbles are separated by liquid slugs. At the near end of the pipe, we have
illustrated the gas–wall perimeter Sg (black dashed line), liquid–wall perimeter Sl (black line) and the
interface perimeter Si (white line).

The estimation procedure consists of two main steps, deciding the flow regime and computing
the holdup conditional on that regime. In general, we need the conditional holdups in order to decide
on the regime.

2.1.1. Slug Zone


The slug zone holdup is computed first. We apply Gregory et al. [18] for low liquid viscosities and
Kora et al. [19] for higher ones. It is convenient to introduce average superficial velocities, defined as

4ṁ p
Up = , (2)
πD2 ρ p
Algorithms 2020, 13, 53 4 of 22

where the index p refers to phase, with g for gas and l for liquid. The slug zone holdup is

1
, µl < 0.02

1+0.05{Um }1.39




1, µl ≥ 0.02, k ≤ 0.15


Hs = (3)


 1.012 · e−0.085k , µl ≥ 0.02, 0.15 < k < 1.5


0.9473 · e−0.041k ,

µl ≥ 0.02, k ≥ 1.5

where k = Um 1.2 D −0.9 g−0.7 µ0.2 ρ0.5 ( ρ − ρ )−0.7 and U = U + U is the mix velocity with the numerical
l l l g m g l
value denoted as {Um }. Using the slug zone holdup, we can easily check for bubbly flow. The holdup
for bubbly flow is

Ul
H= if Ul > Um Hs . (4)
Um

The requirement corresponds to a slug fraction greater than 1. In order to find the average holdup
in slug flow, we need the bubble nose velocity, which is also empirical. Smith et al. [12] used a modified
version of the function proposed in Bendiksen [20]. The bubble nose velocity is assumed linear in the
mix velocity with an intercept determined by the experiments conveyed in Jeyachandra et al. [21]. The
slope C0 is interpolated from a laminar value and a turbulent value, as proposed in Nuland [22], with
some additional restrictions. Details are given in Section 2.1.5. The laminar and turbulent values are

C0l = 2 (5a)
q
C0t = 1 + 2.5871 f st + 1.4874 f st , (5b)

where f st is the slug friction factor defined later. The turbulent value is as reported in Hinze [23]. Using
this approach, the bubble nose velocity is

U0 F
 
ub = U0 ( F + 0.351 tan θ ) + Um · max C0 + 0.15 sin2 θ, 1.05 + 0.15 sin2 θ, 1.2 − , (6)
Um
q
where U0 = cos θ Dg(ρl − ρg )/ρl and F = 0.53 exp(−13.7 D −0.89 ( gρl )−0.33 (ρl − ρg )−0.23 µ0.46
l σ0.1 ).

2.1.2. Bubble Zone


Let Hg = 1 − Hl be the gas fraction in the bubble zone. The liquid holdup in the bubble zone is
the solution to the momentum balance for both phases, that is Hl such that

ρg f g Sg u2g Hg3 − ρl f l Sl u2l Hl3 + ρg f i Si (ul Hl − ug Hg )|ul Hl − ug Hg | + (ρl − ρg ) π4 D2 Hg3 Hl3 g sin θ = 0, (7)

where the perimeters S p and Si are defined in Figure 1, and the friction factors f p and f i are defined
below. The superficial velocities u p must be chosen according to the flow regime. The superficial
velocities equal the average superficial velocities in Equation (2) for stratified flow, while they are
functions of the bubble zone holdup for slug flow, namely

Stratified flow: u p = Up (8a)


(
ug = Ug + ∆
Slug flow: (8b)
ul = Ul − ∆.
Algorithms 2020, 13, 53 5 of 22

where ∆ = ( Hs − Hl )ub + (1 − Hs )Ul − Hs Ug . Furthermore, the interface friction factor is a modified


version of the expression proposed in Andreussi and Persen [24] and is given by
 s !0.67 
2ug Si ρ g
f i = f i0 1 + 10h − 0.36 , (9)
Hg D πHg g(ρl − ρg ) cos θ

where h is the line fraction approximated by


1 !
1 3π 3 2 1 1
  
h = 1 − cos + + π− Hl + Hl + Hg
3 3
(10)
3 2 3

and we impose a minimum of f i0 = f g (ε = 0). The friction factors f i0 , f g , f l and f s are interpolated
from laminar and turbulent values, as described in Section 2.1.5. We use the Hagen-Poiseuille and
Haaland formulas found in White [25] given as

f pl = 16Re−
p
1
(11a)
  ε 1.11 
−2
f pt = 0.07716 · log10 6.9Re−
p
1
+ 0.234 , (11b)
D

where

 µ g ( Sg + Si ) ,

p=g

 πD2 ρg |ug |




µ l Sl

1
Re−
p = , p=l (12)
2 ρ |u |
πD l l




 sl
µ
, p=s



Dρm Um
p
and ρm = (1 − H p )ρg + H p ρl is the mix density where p is l or s for bubble zone or slug
zone, respectively. The comparative study in Brkić and Praks [26] suggests a more accurate and
computationally efficient approximation than Equation (11b) for the Colebrook turbulent friction
factor. However, model tuning is not the main objective for this work. Instead, we use the Haaland
approximation to allow for comparison to Smith et al. [12]. The friction factor is a small contributor
to the computational cost of the point model. Thus, it is not essential to find the most efficient
approximation.

2.1.3. Slug Fraction


The fraction of the unit-cell covered by the slug is called the slug fraction, and it may be
computed as

(1 − Hs )Ul − Hs Ug
s = 1+ . (13)
( Hs − Hl )ub

Figure 2 shows a flowchart of the steady-state point model solution procedure. The first step is
to compute the slug zone holdup from (3). Next, we determine the correct flow regime and average
liquid holdup. Finally, the pressure drop is computed.
Algorithms 2020, 13, 53 6 of 22

Compute Hs (3)

Solve momentum
no balance (7) with
Ul > Um Hs strat
(8a) → Hl
slug
(8b) → Hl

slug
yes Hl < Hlstrat

yes no

Bubbly flow Slug flow Stratified flow


H = UUml slug
H = sHs + (1 − s) Hl H = Hlstrat

Pressure drop (14)

Figure 2. Flowchart of the point model. First holdup is computed, then pressure drop.

2.1.4. Pressure Gradient


The pressure gradient is the weighted average

p0 = sps0 + (1 − s) pl0 , (14)

where the slug zone and bubble zone pressure gradients are

2 s 2
ps0 = − ρ f s Um − ρsm g sin θ (15a)
D m
ρg f g Sg u2g ρl f l Sl u2l
!
2
0
pl = − + − ρlm g sin θ, (15b)
πD2 Hg2 Hl2

where Hg and Hl is the solution to Equation (7).

2.1.5. Interpolation by Reynolds Number


Several dimensionless numbers g in the model are computed as gl for laminar cases and as gt for
turbulent cases. By interpolation, we ensure continuity in g(Re p ), also in the transition from laminar to
turbulent. Let the laminar region be Re p < a, the transitional region be a < Re p < b and the turbulent
region be b < Re p . A natural interpolation is

g(Re p ) = wgl + (1 − w) gt (16a)


b − Re p
w= . (16b)
b−a

We chose a = 1700 and b = 4000 for the friction factors in Equation (11) except for f s . For f s and the
slopes in Equation (5), we use b = 3000 and a such that f l (Re = a) = f t (Re = a).
However, using weights w will not produce a smooth function g. In fact, the derivative of g with
respect to Re is discontinuous at a and b. This far, we have outlined the model given by Smith et al. [12],
Algorithms 2020, 13, 53 7 of 22

but we suggest replacing the weights by w0 = sin2 (πw/2). These weights provide continuity in the
derivative of g. The change is demonstrated in Figure 3. The histograms in the left panel show the
distribution of holdup estimates obtained by perturbation of a certain set of inputs with a Reynolds
number close to 3000. Blue gives the holdup estimates using the original model with weights w,
while orange gives the estimates obtained using the new weights w0 . The right panel shows C0 (Re) in
the transition from laminar to turbulent Reynolds numbers. We prefer the modified model because
the distribution with small changes in input is more straightened out. However, the distribution of
pressure drop is nearly unchanged.

2.0
Original Original
800 Modified Modified
1.9

1.8
Frequency (#)

600
1.7
C0 (-)
400 1.6

1.5

200
1.4

1.3
0
0.48 0.49 0.50 0.51 0.52 0.53 1000 2000 3000
H (-) Re (-)
Figure 3. Comparison of two methods of interpolation by Reynolds number. (Left) Histograms of
holdup for small perturbation of input around Re ≈ 3000 for the original model (blue) and the modified
model (orange). (Right) The bubble nose variable C0 (Re) in the transition from laminar to turbulent
for the original model (blue line) and the modified model (orange dashed line).

2.2. Uncertainty Quantification


Section 2.1 describes how we can predict holdup or pressure drop from measured inputs.
In this section, we explain how to compute the effect of measurement error in input variables
on the predictions. First, we will discuss the measurement error in each input and output. The
uncertainties are attained from Table 2 in Smith et al. [12] and follow-up discussion with the laboratory
staff. Additional details regarding the uncertainty estimates can be found in Khaledi et al. [27].
The uncertainties should be understood as defined by the Guide to the Expression of Uncertainty in
Measurement [28], and the uncertainties are quantified as one standard deviation. Next, we have
summarized the discussion on measurement error in each input variable. We refer to Section 2.3 in
Smith et al. [12] for details on the uncertainty in output measurements.
Algorithms 2020, 13, 53 8 of 22

Table 2. Uncertainty in the model variables given as one standard deviation.


(a) Input
Variable Unit Uncertainty
ṁg kg/s ṁg · 0.4%
ṁl kg/s ṁl · 0.05%
µg Pa s µg · 2%
µl Pa s µl · 3%
ρg kg/m3 0.2 kg/m3
ρl kg/m3 1 kg/m3
D m D · 1%
ε m 1 · 10−6 m
σ N/m σ · 30%
θ rad 2 · 10−4 rad
(b) Output
Variable Unit Uncertainty
H − 0.03
−∂p/∂x Pa/m max(3 Pa/m, −∂p/∂x · 0.5%)

2.2.1. Measurement error


Mass rate. The devices used to measure the mass rates have uncertainties relative to the measured
value. The uncertainties are reported as 0.05% of the measured value for liquid and 0.4% of the
measured value for gas.
Viscosity. The gas viscosity is found from reference data, and the value for various gases are
in the range 1 · 10−5 Pa s to 2 · 10−5 Pa s, and the viscosity has only a slight dependence on pressure
and temperature. The uncertainty in the reference data is quoted as 2%, and it is reasonable to use
this value for the uncertainty in gas viscosity. Liquid viscosity is difficult to measure under relevant
conditions and is significantly affected by temperature. If the viscosity of a hydrocarbon fluid is
measured, a typical uncertainty will be 3% of the reading. The viscosity of a single-compound fluid
such as water can be obtained from reference data. The uncertainty in water reference data in the
relevant range is 0.5%.
Density. For well-known gas compositions, the gas density can be calculated accurately from
reference data. Alternatively, the density can be measured by weighing. In both cases, the uncertainty
will typically be 0.2 kg/m3 . This value also includes the effect of various degrees of saturation of
vapors from the liquid present in the loop. Liquid density can be measured using Coriolis meters and
a reasonable uncertainty in such measurements is 1 kg/m3 .
Pipe diameter. If the pipe diameter is obtained from the nominal diameter, the production tolerance
must be used to infer the uncertainty. Typically, such an analysis will yield an uncertainty in diameter
of 1%. If the diameter is measured by filling experiments, an uncertainty in diameter of 0.2% can be
obtained. Note that the pipe diameter enters into many calculated quantities, and usually to a high
degree. This includes the superficial velocities and hydraulic roughness. In the evaluation of the
uncertainty in these quantities, the contribution from the uncertainty in pipe diameter is not included.
The contribution from error in pipe diameter is unique because it will be the same for all experiments
carried out in one particular test section.
Hydraulic roughness. The hydraulic roughness is inferred from single phase liquid flow
experiments, and the uncertainty in roughness in the current case is 1 µm.
Surface tension. Surface tension is a parameter that can only be measured off-line. The actual
value of the surface tension in situ is hardly known due to contamination and dynamic effects. The
uncertainty in surface tension is set to 30%.
Pipe inclination. The uncertainty in pipe inclination is estimated based on how the pipes are
mounted. By inspection of the setup, we believe that the pipe can deviate 6 mm in the vertical direction
over a section of 30 m. This corresponds to an uncertainty in the pipe inclination of 2 · 10−4 rad.
Algorithms 2020, 13, 53 9 of 22

2.2.2. Uncertainty Propagation


Uncertainty propagation is a term for how the measurement error in each input is propagated
through the model; for instance, whether the measurement error in the mass rates results in uncertainty
in the estimated holdup. We can write the model as

Y = y(ṁg , ṁl , ρg , ρl , µg , µl , D, ε, σ, θ ) = y(Z), (17)

where Y is either holdup or pressure drop. Our model is represented as a function y, which takes the
vector Z of random variables as input. The uncertainties of Z are propagated through the model y to
produce a new random variable Y.
We can simulate the effect of measurement error by changing the inputs slightly and observe
the change in the output. If we do this many times, we will get a distribution for the output. The
change in input represents the measurement error. We sample the measurement errors based on the
uncertainties presented in the previous section and Table 2a. We assume independent measurement
errors from normal distributions with standard deviations given in the table. All the variables except
pipe inclination are truncated at zero.

2.2.3. Input Sampling


The measurement error is sufficiently simulated without true randomness. Instead, we use a
n
classical pseudo-random sequence denoted z( j) j=1 , where n is the sample size. The error in the


estimated statistics decays by 1/n, while the rate is only 1/ n for truly random sampling. Furthermore,
the pseudo-random sequence cover the input space almost uniformly, while a random sequence may
have clusters and holes.
Pseudo-random normal samples of input are generated by applying a copula to the sequence,
which is a transformation function for uniform sequences. A dependency between the measurement
errors in the inputs could easily be simulated by the use of a different copula.

2.2.4. Statistics
The uncertainty analysis can be summarized by some key figures. We have a good overview of
the propagated uncertainty if we know the mean E [Y ], variance Var [Y ] and the quantiles y0.025 , y0.05 ,
y0.95 and y0.975 . Furthermore, we can list the contribution to Var [Y ] from each input. If the input Zi
contributes much to Var [Y ], we have much to gain from reducing the measurement error in Zi . The
reduction in Var [Y ], if we could eliminate the measurement error in Zi , is equal to VarZi EZ∼i [Y | Zi ] ,
 

where Z∼i are all inputs except Zi . The relative reduction in output uncertainty is

VarZi EZ∼i [Y | Zi ]
 
Si = , (18)
Var [Y ]

which is known as the first-order sensitivity index proposed in Sobol [29]. The same article defines
the total sensitivity index STi which also includes the interaction effect with other variables. The total
index is the remaining output variance when we fix all inputs but Zi . That is

VarZ∼i EZi [Y | Z∼i ]


 
STi = 1− . (19)
Var [Y ]

Sections 2.3 and 2.4 each provide a simulation method. When we talk about sensitivity indices for
multiple cases, ASi is the average index weighted by Var [Y ] for each case. That is

∑c Sic Var [Yc ]


ASi = , (20)
∑c Var [Yc ]
Algorithms 2020, 13, 53 10 of 22

where Sic is the first-order sensitivity index of input Zi for case c, and Var [Yc ] is the output variance for
case c.

2.3. Monte Carlo Methods


Monte Carlo methods treat the model as a black box. We get estimates for sensitivities by
computing changes in the output for systematic changes to the input. This is done by dividing
the samples into two parts. Let the first half of the sample be the matrix A and the second half B.
(i )
Denote A B a matrix equal to A but with column i from B. The preferred estimators for the mean
output and output variance are the sample average and the unbiased sample variance. We will use
estimators for the sensitivity indices based on the best practices discussed in Saltelli et al. [30]. Since
the work in Sobol [29], improvements have been proposed in Saltelli [31] and Sobol et al. [32]. Further
improvements for the first-order indices are suggested in Saltelli et al. [30]. The total indices are
estimated as proposed in Jansen [33]. The estimators are
n
1 
( j)

Ȳ =
n ∑ y z , (21a)
j =1
n
1    2
σ̄Y2 = ∑ y z( j) − Ȳ , (21b)
n−1 j =1
n/2
2
  
(i )

S̄i =
σ̄Y2 n
∑ y ( B ) j y A B − y ( A ) j ,
j
(21c)
j =1
n/2  2
1 
(i )

S̄Ti =
σ̄Y2 n
∑ y AB
j
− y( A) j , (21d)
j =1

ȳα/2 = Fn−1 (α/2), (21e)


ȳ1−α/2 = Fn−1 (1 − α/2), (21f)

where Fn is the empirical distribution of y z( j) and 1 − α is the confidence level. The number of

(i )
model evaluations with ten inputs is 5n for A B and n/2 each for A and B. Thus, a total number of 6n
evaluations is required.

2.4. Polynomial Chaos


When the model y is not on a simple explicit form, directly computing the distribution
of y(Z) is not feasible. However, we can first approximate the model by a simplified version,
namely a polynomial expansion. This is known as the general polynomial chaos (gPC) expansion.
An introduction of gPC is found in the book of Xiu [34]. Let the polynomial expansion be
p
Yp = ∑ a j Φ j ( Z ), (22)
j =1

where a j are coefficients found by regression and Φ j (Z) are orthonormal polynomials constructed
from three terms recursion. Orthonormality is not required but simplifies estimators. We terminate the
recursion when it reaches the desired polynomial order. A high polynomial order corresponds to a
close approximation, but note that the number of polynomials p = (10 + order)!/(10!order!) grows
Algorithms 2020, 13, 53 11 of 22

fast with the order. Next, we draw an input sample of size n as described in Section 2.2.3. Let e be the
differences in output between the model and the expansion, that is
       
y z (1) Φ 1 z (1) ··· Φ p z (1)
 a1
   
e1
.. .. .. ..   ..   .. 
  
. = .  + . . (23)
   .  .  .
  

 
y z(n) Φ1 z ( n ) ··· Φp z ( n ) ap en

Ordinary least squares provides estimates â1 , . . . , â p . These inserted in Equation (22) gives an
explicit representation of the flow model. Furthermore, estimates for the statistics in Section 2.2.4 are

Ỹ = â1 , (24a)
p
σ̃Y2 = ∑ â2j , (24b)
j =2
1
S̃i =
σ̃Y2
∑ â2j , (24c)
j∈Ai
1
S̃i = 1 −
σ̃Y2
∑ â2j , (24d)
j/
∈ Ai

ỹα/2 = Fp−1 (α/2), (24e)


ỹ1−α/2 = Fp−1 (1 − α/2), (24f)

where Ai = { j|Φ j (z) = Φ j (zi )} is the set of polynomials depending solely on zi , and Fp is the
empirical distribution of Yp for ten thousand Monte Carlo samples and 1 − α is the confidence level.

2.5. Simulations
The Monte Carlo simulations are initialized at 6000 samples and expanded by 30% for each
iteration until estimates of Equation (21) converge. For both MC and PC, we define convergence as a
change from previous iteration less than 0.01 for sensitivity indices and a relative change less than 0.01
for the mean, the variance and the quantiles.
For polynomial chaos, we first use order two and increase the order until estimates of Equation (24)
converge. For each order, we increase the sample size repeatedly by p + 1 until the fit on a test set
does not longer improve. The test set consists of 6006 combinations of input, and we deem the fit
satisfactory when the mean absolute deviation in the fitted output for consecutive iterations changes
less than 20%. This indicates that we have enough evaluations of the model for an accurate polynomial
approximation.
The pseudo-random sampling is most efficient if we first construct a large sample matrix and
evaluate the point model for an incrementally larger subset when required. For PC, we construct a
sample of size ten times the number of polynomials in the three terms recursion of order five. A sample
size of 300,000 seems to suffice for the MC method.

3. Results
The input variables to the pipe flow model are listed in Table 1. From these variables, the point
model predicts the liquid holdup (volume fraction) in the pipe and the pressure drop per meter. The input
variables are taken from 240 gas-liquid experiments in a horizontal pipe from the SINTEF Multiphase
Flow Laboratory. We compare the measured holdup and pressure drop with the results from the fluid
model. The presented approach is implemented in Python 3.6, and the uncertainty analysis is based
on the Python module Chaospy presented in Feinberg and Langtangen [35]. The uncertainty in each
experiment is computed with Monte Carlo (MC) simulations and polynomial chaos (PC) expansions.
The details on the uncertainty methods are given in Section 2.2.
Algorithms 2020, 13, 53 12 of 22

3.1. Holdup
Figure 4 shows the estimated average sensitivity for the holdup predictions. The sensitivities
quantify how sensitive the holdup predictions are to each input variable. In other words, it is the
contribution of the uncertainty in each input to the uncertainty in holdup predictions. The estimated
total sensitivity index and the estimated first-order index never differ more than 0.02. Thus, we use
first-order indices in plots and refer to them simply as sensitivities. In the left panel, we see the
averages weighted by the variance in each experiment. The right panel gives the plain averages with
standard errors. The combined effect of liquid viscosity, pipe diameter and gas density account for
ninety percent of the uncertainty in the holdup predictions. We have removed 7 out of the 240 cases
from the results because the polynomial chaos expansions for pressure drop do not converge with
polynomial order. The criteria for convergence is a change in estimates for the sensitivities, the output
mean and the output variance from one order to the next less than 0.01. For the output mean and
variance, we use the relative change. The criteria must be reached the latest at order 5. Table 3 contains
information about the pressure drop statistics for the seven cases that do not converge. The holdup
statistics actually change less than the threshold of 0.01, but we still exclude these results because we
treat the pressure drop and the holdup as a joint variable in the simulations. For each case, we show
the variable with the largest change from order 4 to 5 and the values of that variable for order 3, 4 and
5. All seven cases are on the border between two regimes, meaning that the model changes regime
based on the sampled measurement error. The regimes assigned by the flow model are listed in the
last column of the table.

0.6 Monte Carlo 0.6

Poly. chaos
0.5 0.5
Sensitivity index

Sensitivity index

0.4 0.4

0.3 0.3

0.2 0.2

0.1 0.1

0.0 0.0
ṁg ṁl µg µl ρg ρl D ε σ θ ṁg ṁl µg µl ρg ρl D ε σ θ

Figure 4. Holdup sensitivity estimates averaged over 233 experiments. (Left) Weighted by the variance
in each experiment. (Right) Plain averages with standard error bars.

Figure 5 provides a more refined view of the holdup sensitivities. Each panel gives the histogram
of sensitivity to one input based on the 233 cases. We plot separate histograms for slug flow (blue) and
stratified flow (red). Furthermore, we compare MC (solid lines) to PC (dotted). There are only small
deviations between the two methods. Half of the input variables have sensitivities consistently under
2%. The gas mass rate and density are moderately sensitive, while the diameter and liquid viscosity
are in some cases highly sensitive, but not for all cases.
Algorithms 2020, 13, 53 13 of 22

Table 3. Seven cases where the polynomial chaos expansions for pressure drop do not converge with
polynomial order. The first column denotes the variable with the maximal change in the last iteration
(absolute change for the sensitivities and relative change for the mean and the variance). The values of
that variable for polynomial orders 3–5 are given in the next columns, and the last column gives the
regime assigned by the flow model.
Polynomial Order
Variable Unit Flow Regime
3 4 5
SD 0.9961 0.9518 0.9882 − Bubbly/slug
ST, µl 0.4814 0.5044 0.5215 − Slug/stratified
Var [∂p/∂x ] 24.214 24.906 25.196 Pa2 /m2 Slug/stratified
Var [∂p/∂x ] 28.301 29.042 31.399 Pa2 /m2 Slug/stratified
Var [∂p/∂x ] 217.10 291.76 269.55 Pa2 /m2 Slug/stratified
Var [∂p/∂x ] 514.15 528.26 521.32 Pa2 /m2 Slug/stratified
Var [∂p/∂x ] 5833.6 6555.0 6980.1 Pa2 /m2 Bubbly/slug

We compare predicted holdup to measured holdup in Figure 6. Only cases with converging
prediction intervals from both MC and PC are included. In the left panel, each experiment is drawn
as a cross. The horizontal part represents measurement error, and the vertical part (much smaller)
represents prediction uncertainty. To be more precise, the crosses are the measured holdup with
two standard deviations either way and the predicted mean and interval from MC simulations.
The standard deviation in holdup measurements is set to 0.03. Furthermore, the diagonal line is
where measurements and predictions are equal, and cases where the uncertainty box does not cover
this line are highlighted. All cases with over-predicted holdup are observed slug flow. Conversely,
under-predicted cases are stratified. The 90% intervals do not cover the observations in 20 (10.3%) out
of 194 cases, while the 95% intervals are off in 12 (11.4%) out of 105 cases.
The right panels of Figure 6 show the relative difference in the PC predictions and MC predictions.
The mean holdup (solid line) is very similar, the upper quantile (dashed) is slightly larger, and the
lower quantile (dash-dotted) is slightly smaller with PC. Thus, the PC predictions are overall similar to
those of MC, but the intervals are wider.

60
Frequency (#)

Slug, MC
100
40 Slug, PC
Stratified, MC
50
20 Stratified, PC

0 0
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
Sṁg (-) Sṁl (-)
60
Frequency (#)

100
40

50
20

0 0
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
Sµg (-) Sµl (-)
60 Figure 5. Cont.
Frequency (#)

100
40

50
20

0 0
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
Sρg (-) Sρl (-)
40

Frequenc
50
20

0
Algorithms 2020, 13, 53 0 14 of 22
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
Sµg (-) Sµl (-)
Frequency (#) 60
100
40

50
20

0 0
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
Sρg (-) Sρl (-)
Frequency (#)

40 100

20 50

0 0
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
SD (-) Sε (-)
Frequency (#)

100
100

50 50

0 0
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
Sσ (-) Sθ (-)

Figure 5. Frequency histograms of the holdup sensitivity estimates across 233 experiments.
The sensitivity distribution for one input variable is given in each panel. The experiments are
categorized as slug (blue) or stratified (red) and we compare estimates from Monte Carlo (solid
lines) and PC (dotted).

3.2. Pressure drop


As for holdup, we summarize the pressure drop results in terms of sensitivity and prediction. The
averaged sensitivities are given in Figure 7. The weighted average is similar to the plain average. The
uncertainty in the diameter measurement is responsible for 90 percent of the uncertainty in pressure
drop predictions. The liquid viscosity also contributes, and in some low-variance cases, the pipe
inclination. Figure 8 shows the sensitivities by regime. The distributions of sensitivities are similar for
stratified flow and slug flow.
Pressure drop predictions are compared to measurements in Figure 9. Only converged cases are
included. The prediction uncertainty is much larger than the measurement uncertainty and increases
with the pressure drop. The model under-predicts the pressure drop for small values and over-predicts
for large values. The pressure drop predictions are much less accurate than the holdup predictions.
The 90% intervals are off in 126 (64.9%) out of 194 cases, while the 95% intervals are off in 62 (59.0%)
out of 105 cases.
Algorithms 2020, 13, 53 15 of 22

Slug ỹ0.95 − ȳ0.95 Ỹ − Ȳ ỹ0.05 − ȳ0.05


1.0
Stratied ȳ0.95 Ȳ ȳ0.05
0.010
MC prediction for holdup (-)

PC predictions relative to MC (-)


0.8
0.005

0.6 0.000

−0.005

0.4
−0.010

0.2 −0.015

0.2 0.4 0.6 0.8 1.0 0.4 0.6 0.8


Measured holdup (-) Measured holdup (-)

(a) 90% prediction intervals.

Slug ỹ0.975 − ȳ0.975 Ỹ − Ȳ ỹ0.025 − ȳ0.025


1.0
Stratied ȳ0.975 Ȳ ȳ0.025
MC prediction for holdup (-)

PC predictions relative to MC (-)

0.02
0.8

0.00

0.6
−0.02

0.4 −0.04

−0.06
0.2
0.4 0.6 0.8 1.0 0.4 0.6 0.8
Measured holdup (-) Measured holdup (-)

(b) 95% prediction intervals.


Figure 6. (Left) Predicted versus measured holdup for 194 experiments. The diagonal line is where the
coordinates are equal, and cases with a discrepancy between prediction and observation are highlighted.
The first axis gives measured value with two standard errors either way. The second axis is predicted
mean, lower quantile and upper quantile. Slug experiments are blue and stratified ones are red. (Right)
The relative difference in PC predictions compared to MC predictions with respect to measured holdup.
Upper quantiles (dashed), means (solid) and lower quantiles (dash-dotted).
Algorithms 2020, 13, 53 16 of 22

Monte Carlo
0.8
Poly. chaos 0.8
Sensitivity index

Sensitivity index
0.6 0.6

0.4 0.4

0.2 0.2

0.0 0.0
ṁg ṁl µg µl ρg ρl D ε σ θ ṁg ṁl µg µl ρg ρl D ε σ θ

Figure 7. Pressure drop sensitivity estimates averaged over 233 experiments. (Left) Weighted by the
variance in each experiment. (Right) Plain averages with standard error bars.

3.3. Computational Cost


The computational cost of the Monte Carlo simulations is mainly from evaluating the model
many times. The polynomial chaos expansion requires fewer model evaluations but also involves
large regressions to obtain expansion coefficients. In Figure 10, the computation time (left) and number
of model evaluations (right) required for convergence are compared between MC and PC. The colors
represent the criteria used for convergence. Blue is only convergence in sensitivities while orange
and green is the cost if we also want convergence in prediction intervals on confidence level 90% and
95%, respectively. All cases converge for MC while some do not for PC. The number of cases without
convergence is given as an entry on the right hand side. Notice the different scales on the axes for MC
and PC.
The computation time is obtained from timing python scripts on the Norwegian HPC
infrastructure. We run one MC script and one PC script for each of the 240 cases for each of the
three convergence criteria. We terminate each uncertainty analysis at convergence or after 15 h. Thus,
the maximum total computation time is 2 · 240 · 3 · 15 h = 900 days. However, because we can run
hundreds of scripts in parallel and many cases finish soon, the results are available after one day. We
have also implemented the option of parallel evaluations of the model within each script, but chose
serial evaluation for this comparison.

4. Discussion
The sensitivity estimates are similar using Monte Carlo or polynomial chaos. The averages ASi
gives the clearest picture as they measure how much uncertainty each input brings to the output
estimates across all cases. From the first panels of Figures 4 and 7, we see that the pipe diameter
and liquid viscosity are important for both pressure drop and holdup, while the gas mass rate, gas
density and pipe inclination only matters for the holdup estimates. We can utilize the sensitivity
indices for efficiently reducing the uncertainty in the output estimates. The focus should be on
reducing the measurement error of the most sensitive variables; in this case, the pipe diameter and
the liquid viscosity. Reducing uncertainty in measurements of these variables will efficiently improve
predictions. Keep in mind that sensitivity indices are not general but depend on the flow conditions.
See Smith et al. [12] for a description of the experiments. The results can not directly be extrapolated
to different experiments. A new analysis is required, but the methods described in Section 2 may
be applied.
Algorithms 2020, 13, 53 17 of 22

Frequency (#)
Slug, MC
100 100
Slug, PC
Stratified, MC
50 50
Stratified, PC

0 0
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
Sṁg (-) Sṁl (-)
30
Frequency (#)

100
20

50
10

0 0
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
Sµg (-) Sµl (-)
Frequency (#)

100 100

50 50

0 0
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
Sρg (-) Sρl (-)
Frequency (#)

100
20

10 50

0 0
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
SD (-) Sε (-)
Frequency (#)

100
100

50
50

0 0
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
Sσ (-) Sθ (-)

Figure 8. Frequency histograms of the pressure drop sensitivity estimates across 233 experiments.
The sensitivity distribution for one input variable is given in each panel. The experiments are
categorized as slug (blue) or stratified (red), and we compare estimates from Monte Carlo (solid
lines) and PC (dotted).
Algorithms 2020, 13, 53 18 of 22

4000 Slug ỹ0.95 − ȳ0.95 Ỹ − Ȳ ỹ0.05 − ȳ0.05


MC prediction for pressure drop (Pa/m)

Stratied ȳ0.95 Ȳ ȳ0.05

0.075

PC predictions relative to MC (-)


3000
0.050

0.025
2000
0.000

1000 −0.025

−0.050

0 −0.075

0 1000 2000 3000 0 1000 2000 3000


Measured pressure drop (Pa/m) Measured pressure drop (Pa/m)

(a) 90% prediction intervals.

Slug ỹ0.975 − ȳ0.975 Ỹ − Ȳ ỹ0.025 − ȳ0.025


2500
MC prediction for pressure drop (Pa/m)

Stratied ȳ0.975 Ȳ ȳ0.025


0.4
PC predictions relative to MC (-)

2000
0.3

1500 0.2

0.1
1000

0.0
500
−0.1

0 −0.2

0 500 1000 1500 2000 0 500 1000 1500 2000


Measured pressure drop (Pa/m) Measured pressure drop (Pa/m)

(b) 95% prediction intervals.


Figure 9. (Left) Predicted versus measured pressure drop for 194 experiments. The diagonal line is
where the coordinates are equal. The first axis gives measured value with two standard errors either
way. The second axis is predicted mean, lower quantile and upper quantile. Slug experiments are
blue, and stratified ones are red. (Right) The relative difference in PC predictions compared to MC
predictions with respect to measured pressure drop. Upper quantiles (dashed), means (solid) and
lower quantiles (dash-dotted).
Algorithms 2020, xx, 5 20 of 24
Algorithms 2020,
Algorithms 13, 53
2020, xx, 5 1920ofof2224

Sensitivities
Sensitivities
Sens.
Sens. and
and 90%
90% pred.
pred.
200
200 Sens. and 95% pred.
Sens. and 95% pred.
(#)
cases(#)

150
Numberofofcases

150
Number

100
100

50
50

00
22 44 66 88 10
10 100
100 150
150 200
200 250
250 300
300
Computation
Computation time
time (minutes)
(minutes) Model
Model evaluations
evaluations (thousands)
(thousands)

(a) Monte
(a) Monte Carlo.
Carlo.

200
200
Sensitivities
Sensitivities
Sens.
Sens. and
and 90%
90% pred.
pred.
175
175 Sens. and 95% pred.
Sens. and 95% pred.
150
(#)

150
cases(#)

135
135 135
135
Numberofofcases

125
125

100
100
Number

75
75

50 46
46 46
46
50

25
25
77 77
00
00 200
200 400
400 600
600 800
800 No
No conv.
conv. 00 22 55 77 10
10 No
No conv.
conv.
Computation
Computation time
time (minutes)
(minutes) Model
Model evaluations
evaluations (thousands)
(thousands)

(b) Polynomial
(b) Polynomial chaos.
chaos.
Figure
Figure 10.
10. Frequency
Frequency histogram
histogram of
of computational
computational cost
cost across
across 240
240 experiments.
experiments. Each
Each color
colorisis one
isone type
onetype
type
Figure 10. Frequency histogram of computational cost across 240 experiments. Each color
of simulation
of simulation criterion,
criterion, namely
namely only
only convergence
convergence in sensitivities (blue) or also 90 % prediction intervals
of simulation criterion, namely only convergence in in sensitivities
sensitivities (blue)
(blue) ororalso
also90%
90 % predictionintervals
prediction intervals
(orange)
(orange) or
or 95
95 %
% (green).
(green). The
The number
number of
of cases
cases that
that did
did not
not converge
converge is
is given
given as
as an
an entry
entry on
on the
the right.
right.
(orange) or 95% (green). The number of cases that did not converge is given as an entry on the right.
Left:
Left: Computation
Computation time.
time. Right:
Right: Number
Number of
of model
model evaluations.
evaluations.
(Left) Computation time. (Right) Number of model evaluations.
The computation
Thenote
computation time is
is obtained
time first-order
obtainedandfrom
from timing
timing python
python scripts
scripts onon the Norwegian
the are
Norwegian HPC
HPC
Also that because total indices are similar, there no decisive
infrastructure.
infrastructure. We
We run
run one
one MC
MC script
script and
and one
one PC
PC script
script for
for each
each of
of the
the 240
240 cases
cases for
for each
each of
of the
the
uncertainty interactions. Furthermore, we cannot conclude that the flow regime is important for
three
three convergence
convergence criteria.
criteria. We
We terminate
terminate each
each uncertainty
uncertainty analysis
analysis at
at convergence
convergence or
or after
after 15
15 hours.
hours.
sensitivity estimates.
Thus,
Thus, the
the maximum
maximum total computation time is
is 22 ·· 240 ·· 33 ·· 15
15 hhthe
= 900
= days.
days. However, because
because we can
The sensitivities aretotal computation
similar across eachtime
regime. 240
However, 900
moments However,
of the polynomial we can
chaos
expansions do not converge with order for some cases on the boundary between regimes. Two cases
Algorithms 2020, 13, 53 20 of 22

are on the boundary bubbly/slug and neither converge with PC. Among 24 cases on the boundary
slug/stratified, five cases do not converge with PC. Thus, the current implementation of PC expansions
is unreliable on the regime boundaries. The expansions do not capture the behavior of the flow model
well on the boundaries because the model is not smooth there. Adding higher-order terms to the
expansion would make the expansion better resemble non-smooth behavior, but this is not immediately
possible due to computational expense. It is possible to construct high-order approximations with low
complexity by applying variable selection, but this approach is less applicable.
We have also explored the technical details in the uncertainty computations, specifically the
performance of Monte Carlo simulations compared to that of polynomial chaos methods. For the
fluid model in question, we clearly prefer MC because this method provides uncertainty estimates
for all cases, and it does so in the least amount of time. In contrast, PC fails in many cases and has
a larger computation cost. The strength of PC lies in the low number of required model evaluations.
Compared to MC, polynomial chaos is likely to perform better if the fluid model required more time
for each evaluation.
We have compared measured holdup with predicted holdup accounting for uncertainty in both.
The equivalent comparison was applied to the pressure drop. The holdup prediction matches the
measured values well. We can observe that over-predicted cases are slug flow and under-predicted
cases are stratified. The predictions of pressure drops are less accurate, with under-prediction for
small values and over-prediction for large pressure drops. There is a clear bias in the estimates, which
suggests there are physics that are not captured by the model. The authors of Smith et al. [36] pointed to
the over-prediction of the slug velocity variable C0 . The claim is supported by follow-up experiments,
which they discuss in their Section 3.3.
In summary, estimates for sensitivities and output predictions using MC are similar to those of PC,
and the pipe diameter and the liquid viscosity have the largest sensitivity indices. The Monte Carlo
method is preferred because it is more robust and requires less time. This conclusion applies to the
flow model used and the implementation of each uncertainty method. The uncertainty analysis also
provides evidence that holdup predictions are accurate, while pressure drop predictions are biased.

Future Research
We have seen that half of the input variables contribute less than 2% to the output uncertainty in
all cases. For polynomial chaos, it is possible to construct the polynomial approximation by attempting
to prioritize the important variables. One idea is to iteratively introduce higher order polynomials in
significant variables. This way, we can reach a sufficiently high polynomial order without introducing
too many regressors.
Applying the methods of Hoyer et al. [5] to create probability distributions for closure laws will
make the analysis of the uncertainty in the flow model more complete. Currently, the closure laws are
treated as known. We think it is possible to tune the closure law distributions by comparing the output
predictions with measurements. An applicable tuning method is the minimum continuous ranked
probability score (CRPS) estimation, as demonstrated in Gneiting et al. [37].
Author Contributions: Conceptualization, A.S., I.S. and L.R.H.; methodology, A.S., I.E.S., T.E.U., I.S. and L.R.H.;
software, A.S. and I.E.S.; validation, A.S.; formal analysis, A.S.; investigation, I.E.S. and T.E.U.; resources, A.S.,
I.E.S. and T.E.U.; data curation, A.S.; writing—original draft preparation, A.S.; writing—review and editing, A.S.,
I.E.S., T.E.U., I.S. and L.R.H.; visualization, A.S.; supervision, A.S., I.S. and L.R.H.; project administration, A.S.;
funding acquisition, I.S. and L.R.H. All authors have read and agreed to the published version of the manuscript.
Funding: This work is part of the project SUM (Scaling and Uncertainties in Multiphase Flow), which is
supported by the Norwegian Research Council grant number 267620 and industrial partners from SINTEF,
IFE and MULTIFLOW JIP (Schlumberger Information Solution, Equinor, Lundin Norway, LedaFlow Technologies
DA, Gassco, ENI Norge and TechnipFMC).
Acknowledgments: Computational resources in Norwegian HPC infrastructure were granted by the Research
Council of Norway project nr. NN9545K. Dept. of Process Technology at SINTEF Industry and Dept. of Flow
Technology at Institute for Energy Technology have supported the discussion on multiphase flow. SINTEF Industry
Algorithms 2020, 13, 53 21 of 22

and Equinor made the data available. The colleagues at the Division of Biomechanics have been important in the
scientific discussion, and Fredrik E. Fossan contributed in preparing the manuscript for publication.
Conflicts of Interest: The authors declare no conflict of interest.

References
1. Lee, S.H.; Chen, W. A comparative study of uncertainty propagation methods for black-box-type problems.
Struct. Multidiscipl. Optim. 2009, 37, 239. [CrossRef]
2. Cremaschi, S.; Kouba, G.E.; Subramani, H.J. Characterization of confidence in multiphase flow predictions.
Energ. Fuel. 2012, 26, 4034–4045. [CrossRef]
3. Holm, H.; Saha, P.; Suleymanov, V.; Vanvik, T.; Hoyer, N. Shtokman flow assurance challenges—A
systematic approach to analyze uncertainties–Part 1. In Proceedings of the 15th International Conference
on Multiphase Production Technology, Cannes, France, 15–17 June 2011.
4. Holm, H.; Saha, P.; Suleymanov, V.; Vanvik, T.; Hoyer, N. Shtokman flow assurance challenges—A
systematic approach to analyze uncertainties–Part 2. In Proceedings of the 15th International Conference
on Multiphase Production Technology, Cannes, France, 15–17 June 2011.
5. Hoyer, N.; Kirkedelen, M.; Biberg, D.; Johnson, G.; Valle, A.; Johansson, P.; Nossen, J. A structured approach
for the evaluation of uncertainties in flow assurance systems. In Proceedings of the 16th International
Conference on Multiphase Production Technology, Cannes, France, 12–14 June 2013.
6. Klavetter, K.; Posluszny, D.; Warr, J.; Cremaschi, S.; Sarica, C.; Subramani, H. Uncertainty analysis of
multiphase flow models: a comparison of three propagation approaches. In Proceedings of the 8th North
American Conference on Multiphase Technology, Banff, Canada, 20–22 June 2012.
7. Keinath, B.. Decision analysis in multiphase flow: uncertainty, risk and application. In Proceedings of the
18th International Conference on Multiphase Production Technology, Cannes, France, 7–9 June 2017.
8. Liu, Y.; Dinh, N.T.; Smith, R.C.; Sun, X. Uncertainty quantification of two-phase flow and boiling heat
transfer simulations through a data-driven modular Bayesian approach. Int. J. Heat. Mass. Tran. 2019,
138, 1096–1116. [CrossRef]
9. Picchi, D.; Poesio, P. Uncertainty quantification and global sensitivity analysis of mechanistic
one-dimensional models and flow pattern transition boundaries predictions for two-phase pipe flows. Int.
J. Multiphas. Flow 2017, 90, 64–78. [CrossRef]
10. Klinkert, J. The characterization of Uncertainty for Steady State Multiphase Flow Models in Pipelines.
Master’s Thesis, Delft University of Technology, Delft, The Netherlands, 19 January 2018.
11. Lataniotis, C.; Marelli, S.; Sudret, B. Uqlab User Manual—The Input Module. 2015. Available
online: https://www.researchgate.net/profile/Bruno_Sudret/publication/281232688_UQLab_user_
manual_-_the_INPUT_module/links/55dc1df708ae9d6594937608.pdf (accessed on 26 February 2020).
12. Smith, I.E.; Nossen, J.; Unander, T.E. Improved holdup and pressure drop predictions for multiphase
flow with gas and high viscosity oil. In Proceedings of the 16th International Conference on Multiphase
Production Technology, Cannes, France, 12–14 June 2013.
13. Lichota, P.; Szulczyk, J.; Tischler, M.B.; Berger, T. Frequency Responses Identification from Multi-Axis
Maneuver with Simultaneous Multisine Inputs. J. Guid. Contr. Dynam. 2019, 42, 2550–2556. [CrossRef]
14. Lichota, P.; Noreña, D.A. A priori model inclusion in the multisine maneuver design. In Proceedings of the
17th International Carpathian Control Conference (ICCC), Tatranska Lomnica, Slovakia, 29 May–1 June
2016; pp. 440–445.
15. Chen, S.; Wang, X.; Harris, C.J. NARX-based nonlinear system identification using orthogonal least squares
basis hunting. IEEE Trans. Contr. Syst. Tech. 2007, 16, 78–84. [CrossRef]
16. Efremov, A. System Identification Based on Stepwise Regression for Dynamic Market Representation. In
Proceedings of the International Conference on Data Mining and Knowledge Engineering, Rome, Italy, 29
April 2010; Volume 4, pp. 28–30.
17. Dukler, A.E.; Hubbard, M.G. A model for gas-liquid slug flow in horizontal and near horizontal tubes.
Ind. Eng. Chem. Fund. 1975, 14, 337–347. [CrossRef]
18. Gregory, G.; Nicholson, M.; Aziz, K. Correlation of the liquid volume fraction in the slug for horizontal
gas-liquid slug flow. Int. J. Multiphas. Flow 1978, 4, 33–39. [CrossRef]
Algorithms 2020, 13, 53 22 of 22

19. Kora, C.; Sarica, C.; Zhang, H.q.; Al-Sarkhi, A.; Al-Safran, E. Effects of high oil viscosity on slug liquid
holdup in horizontal pipes. In Proceedings of the Canadian Unconventional Resources Conference.
Calgary, Canada, 15–17 November 2011.
20. Bendiksen, K.H. An experimental investigation of the motion of long bubbles in inclined tubes. Int. J.
Multiphas. Flow 1984, 10, 467–483. [CrossRef]
21. Jeyachandra, B.; Gokcal, B.; Al-Sarkhi, A.; Sarica, C.; Sharma, A. Drift-velocity closure relationships for
slug two-phase high-viscosity oil flow in pipes. SPE J. 2012, 17, 593–601. [CrossRef]
22. Nuland, S. Bubble front velocity in horizontal slug flow with viscous Newtonian, shear thinning and
Bingham fluids. In Proceedings of the 3rd International Conference on Multiphase Flow (ICMF’98), Lyon,
France, 8–12 June 1998.
23. Hinze, J.O. Turbulence; McGraw-Hill: New York, NY, USA, 1975; Volume 2.
24. Andreussi, P.; Persen, L. Stratified gas-liquid flow in downwardly inclined pipes. Int. J. Multiphas. Flow
1987, 13, 565–575. [CrossRef]
25. White, F.M. Fluid Mechanics; McGraw-Hill: New York, NY, USA, 2011.
26. Brkić, D.; Praks, P. Accurate and efficient explicit approximations of the Colebrook flow friction equation
based on the Wright ω-function. Mathematics 2019, 7, 34. [CrossRef]
27. Khaledi, H.A.; Smith, I.E.; Unander, T.E.; Nossen, J. Investigation of two-phase flow pattern, liquid holdup
and pressure drop in viscous oil–gas flow. Int. J. Multiphas. Flow 2014, 67, 37–51. [CrossRef]
28. ISO, I.; OIML, B. Guide to the Expression of Uncertainty in Measurement. 1995. Available online: https://
www.bipm.org/utils/common/documents/jcgm/JCGM_100_2008_E.pdf (accessed on 26 February 2020).
29. Sobol, I.M. Sensitivity estimates for nonlinear mathematical models. Math. Model. Comput. Exp. 1993,
1, 407–414.
30. Saltelli, A.; Annoni, P.; Azzini, I.; Campolongo, F.; Ratto, M.; Tarantola, S. Variance based sensitivity
analysis of model output. Design and estimator for the total sensitivity index. Comput. Phys. Comm. 2010,
181, 259–270. [CrossRef]
31. Saltelli, A. Making best use of model evaluations to compute sensitivity indices. Comput. Phys. Comm.
2002, 145, 280–297. [CrossRef]
32. Sobol, I.M.; Tarantola, S.; Gatelli, D.; Kucherenko, S.; Mauntz, W. Estimating the approximation error when
fixing unessential factors in global sensitivity analysis. Reliab. Eng. Syst. Saf. 2007, 92, 957–960. [CrossRef]
33. Jansen, M.J. Analysis of variance designs for model output. Comput. Phys. Comm. 1999, 117, 35–43.
[CrossRef]
34. Xiu, D. Numerical Methods for Stochastic Computations: A Spectral Method Approach; Princeton university
press: Princeton, NJ, USA, 2010.
35. Feinberg, J.; Langtangen, H.P. Chaospy: An open source tool for designing methods of uncertainty
quantification. J. Comput. Sci. 2015, 11, 46–57. [CrossRef]
36. Smith, I.E.; Nossen, J.; Kjølaas, J.; Lund, B. Development of a Steady-State Point Model for Prediction of
Gas/Oil and Water/Oil Pipe Flow. J. Dispers. Sci. Technol. 2015, 36, 1394–1406. [CrossRef]
37. Gneiting, T.; Raftery, A.E.; Westveld III, A.H.; Goldman, T. Calibrated probabilistic forecasting using
ensemble model output statistics and minimum CRPS estimation. Mon. Weather Rev. 2005, 133, 1098–1118.
[CrossRef]

Sample Availability: Code and data are available online: https://dataverse.no/dataset.xhtml?persistentId=doi:


10.18710/OWKABR.

© 2020 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access
article distributed under the terms and conditions of the Creative Commons Attribution
(CC BY) license (http://creativecommons.org/licenses/by/4.0/).

You might also like