1 Introduction

The upward movement of air in the form of bubble plumes through large pools of liquid describes a flow of wide interest for the modern engineering. Bubble plumes are functional mechanisms to provide, for instance, artificial aeration of tanks and reservoirs [1, 2], management of water quality [3, 4], destratification of lakes and rivers [5, 6], mitigation of oil spills [7, 8], whilst also promoting enhanced mass transfer mixing in sundry chemical-related processes [9]. Despite of the dominance of turbulent regimes in most of the applications in which flows stirred by bubble plumes are expected, papers devoted to studying the characteristics of buoyant plumes rising in stagnant medium have mostly focused on ranges of low to moderate Reynolds numbers. Regarding the pursued goals in such investigations, the knowledge of the local interactions among neighboring bubbles, as well as the estimation of buoyancy, drag and inertial forces is of principal importance, especially when viscous liquids surround the bubbles.

A general model for unconfined bubble plumes in which the plume was considered to have a virtual origin, regardless of its initial development or injection geometry, is discussed in [10], where experimental results of tests at low velocities were included. Synoptic comments on bubbles rising in line organized as one-dimensional arrays are stated in [11], stressing the minor contribution of knowledge about the hydrodynamic effects at intermediate Reynolds ranges. Therein, equal-sized spherical gas bubbles are studied by considering configurations of two kinds: free-end and fixed-end.

Computationally, bubble plumes were tackled by different models [1215]. As explained in [16] and references therein, single-phase simulations deal with bubbles rising in an axisymmetrically bounded domain so as to form a confined plume whose surrounding fluid is excited by application of a buoyant force. On the other hand, two-phase simulations do not impose such constraint, but combine methodologies that rely on Eulerian and/or Lagrangian approaches to track the bubbles.

This paper introduces a hybrid approach based on the arbitrary Lagrangian–Eulerian/finite element (ALE/FE, in short) [17, 18] to simulate the hydrodynamic effects of an unconfined air bubble plume immersed into a liquid solution inside a periodic domain. Periodic boundary conditions (PBCs, henceforth) are imposed at the computational mesh to mimic the ascent motion of the plume as well as to minimize computational efforts by considering the analysis of the hydrodynamic field in the surroundings of a unique bubble placed in a periodic cell. An additional transformation of the pressure field is included into the model by means of a linear decomposition [19]. Allied to the highly adaptive ALE/FE technique presented, the main features emphasized are the capability of employing fair cost-effective simulations along with the ability of reproducing a zero-thickness interface with accuracy, thus providing a powerful method for two-phase flow simulations. Furthermore, an analysis of bubble shape, as well as of its oscillatory path, is performed for different physical properties to compare the numerical data to known experimental results.

The paper is organized as follows: Sect. 2 brings forth the mathematical formulation and model’s hypotheses; Sect. 3 describes the technical aspects, singling out details of computational implementation and meshing design; Sect. 5 presents the numerical results extracted from the full three-dimensional simulations; and finally the conclusions are presented.

2 Mathematical formulation

2.1 Periodic array of in-line rising bubbles

Let \(\Omega \subset \mathbb {R}^3\) be the domain depicted in Fig. 1 and \(\Gamma\) its boundary defined as \(\Omega = \Omega ^1 \cup \Omega ^2\) and \(\Gamma = \Gamma ^1 \cup \Gamma ^2\), with \(\Gamma ^2 = \Gamma ^{\infty } \cup \Gamma ^P\), where the subscripts \(1,2\) indicate, respectively, the dispersed phase and continuous phase of the flow, \(\Gamma ^{\infty }\) the Dirichlet portion of \(\Gamma ^2\), and \(\Gamma ^P\) its supplementary periodic portion. Here, \(\Gamma ^{\infty }\) is placed far from the bubble plume to account for the bulk liquid region where the local interactions are mitigated. This boundary receives a moving wall condition to ensure the well-known technique of moving-frame reference (MFR), while periodic boundary conditions are assigned to \(\Gamma ^P = \Gamma ^T \cup \Gamma ^B\). The surfaces \(\Gamma ^T\) and \(\Gamma ^B\) satisfy \(\Gamma ^T \equiv \mathbf{x} + L\mathbf{e}, \, \forall \mathbf{x} \in \Gamma ^B\) for a unit vector \(\mathbf{e}\) as depicted by the element patches in light gray, i.e. the upper boundary \(\Gamma ^T\) is topologically equivalent to \(\Gamma ^B\) by a displacement \(L\). The extended plume model consists of an arrangement containing spherical bubbles of diameter \(D_{\text{b}}\) equally spaced from above and below (relative to the poles) by a gap length \(s = D_{\text{b}}\) and immersed into a cylinder of diameter \(D \gg D_{\text{b}}\), whereas the periodic cell considers a slice of this configuration. To take into account the effect of the periodic boundaries on the bubble wake region as well as minimize the effects of the lateral wall, we set \(L = s + D_{\text{b}}\) and \(D = 10 D_{\text{b}}\) for the cell’s period and diameter, respectively.

Fig. 1
figure 1

Arrangement of the unconfined in-line bubble plume: a extended plume model; b detail of the periodic cell

2.2 ALE governing equations

2.2.1 Dimensionless variables

To obtain dimensionless equations for the presented formulation, let us introduce the following set of dimensionless variables by means of reference quantities (with subscript \(0\))

$$\begin{aligned} {\mathbf {u} }^{*}&= \frac{{\mathbf {u}}}{u_0}, \quad p^{*} = \frac{p}{\rho _0 u_0^2} , \quad \mu ^{*} = \frac{\mu }{\mu _0}, \\ \rho ^{*}&= \frac{\rho }{\rho _0}, \quad {\mathbf {g}}^{*} = \frac{{\mathbf {g}}}{g_0}, \quad \kappa ^{*} = L_0 \kappa _0, \\ \sigma ^{*}&= \frac{\sigma }{\sigma _0}, \quad {\mathbf {x}}^{*} = \frac{\mathbf {x}}{L_0}, \quad t^{*} = \frac{u_0}{L_0} t_0, \end{aligned}$$

which, in the order from top-left to bottom-right, are: velocity, pressure, viscosity, density, gravity, curvature, surface tension, position and time. The two-phase flow under investigation is governed by the incompressible Navier–Stokes equations written according to the ALE frame of reference evolving within the time interval \(t^{*} = [0,t_\mathrm{max}^{*}]\). Because of the so-called one-fluid formulation, which uses a unique set of equations to model both the continuous and dispersed phases, the imposition of interface boundary conditions is hereupon replaced with an equivalent formulation by adding a force term associated with the surface tension. Thereby, the equations are solved over a sole domain [20] and their dimensionless version, valid for both phases separately, are written in the differential form as

$$\begin{aligned} \rho ^{*} \left( \frac{ \hat{D} \mathbf{u} }{Dt} \right) ^{*}&= - \nabla p^{*} + \frac{1}{Ar^{1/2}} \nabla \cdot \left[ \mu ^{*} \left( \nabla \mathbf{u^{*}} + \nabla \mathbf{u^{*}}^T \right) \right] \nonumber \\&\qquad + \rho \mathbf{g}^{*} + \frac{1}{Eo} \mathbf{f_{\sigma }^{*}} \end{aligned}$$
(1a)
$$\begin{aligned} \nabla \cdot \mathbf{u}^{*}&= 0 , \quad \quad \text {in} \quad \Omega \times t^{*}, \end{aligned}$$
(1b)

The dimensionless parameters \(Ar\) and \(Eo\) are the Archimedes and Eötvös numbers, respectively, defined by

$$\begin{aligned} Ar = \frac{ g_0 D_\mathrm{b}^3 \rho _0^2}{ {\mu _0}^2 } \quad \quad Eo = \frac{ \rho _0 g_0 D_\mathrm{b}^2 }{ \sigma _0}. \end{aligned}$$
(2)

To follow a consistent notation for the material derivative, we briefly recall the following representations for any physical quantity \(\phi\) in different movement configurations:

$$\begin{aligned} \phi (\mathbf{x}^{*},t^{*})&\quad \text {(spatial configuration)} \\ \phi (\mathbf{\chi }^{*},t^{*})&\quad \text {(referential configuration)} \\ \phi (\mathbf{X}^{*},t^{*})&\quad \text {(material configuration)}, \end{aligned}$$

(For details of the theory describing the ALE kinematics, see, e.g., [21, 22]). For convenience of notation, we define

$$\begin{aligned} \left( \frac{ \hat{D} \mathbf{u} }{Dt} \right) ^{*} = \left( { \frac{\partial \mathbf{u}}{\partial t} }\Bigg |_\mathbf{\chi } \right) ^{*} + \mathbf{c}^{*} \cdot \nabla \mathbf{u}^{*} = \left( { \frac{\partial \mathbf{u}}{\partial t} }\Bigg |_\mathbf{\chi } \right) ^{*} + (\mathbf{u^{*}} - {\hat{\mathbf{u}}}^{*} ) \cdot \nabla \mathbf{u^{*}}, \end{aligned}$$
(3)

with \({ \mathbf c^{*}} = \mathbf{u^{*}}- {\hat{\mathbf{u}}}^{*}\) the ALE convective velocity. This relation engenders the arbitrary nature of the ALE formulation concerning the flow motion. Such flexibility compensates drawbacks yielded either by a purely Lagrangian or completely Eulerian description [23]. Since \(\mathbf{c}^{*}\) relates the material velocity of the fluid \(\mathbf{u}^{*}\) and the mesh velocity \({\hat{\mathbf {{u}}} }^{*}\), the first description aforementioned is obtained if \({\hat{\mathbf {{u}}}}^{*} = {\mathbf {u}}^{*}\), whereas the second is achieved if \({\hat{\mathbf {{u}}}}^{*} = \mathbf{0}\).

The force term localized at the interface, also discussed forth in Sect. 2.2.3, is given by

$$\begin{aligned} \mathbf{f}_{\sigma }^{*} = \sigma ^{*} \kappa ^{*} (\nabla H)^{*}, \end{aligned}$$
(4)

where \(\sigma ^{*}\) is assumed constant, \(\kappa ^{*}\) locally evaluated at the interface, and \((\nabla H)^{*}\) defined for discrete purposes in Sect. 2.3.1 as the gradient of the Heaviside function.

2.2.2 Periodic decomposition of pressure

By virtue of the periodic array, the pressure field should be treated differently than the velocity field. For instance, inasmuch as the formulation presented proposes to evaluate the flow hydrodynamics in a fully developed stage, it turns out that, while the velocity experiences a pure periodicity, the pressure gradient exhibits a periodic behavior, but the pressure itself is not periodic. Hence, following a transformed variable approach [19], the dimensional original pressure is replaced with

$$\begin{aligned} p = - \beta _0 (\mathbf{x} \cdot \mathbf{e} ) + \tilde{p} , \end{aligned}$$
(5)

where \(\beta _0 \approx {\Delta p}_0/ L_0\) is the value of a reference constant pressure gradient toward the streamwise direction of the flow determined by the unit vector \(\mathbf{e}\) and \(\tilde{p}\) is a periodic pressure field satisfying \(\int _{\Omega } \tilde{p} \, d\Omega = 0\). This decomposition segregates the pressure field into a part related to the global mass flow and a periodic parcel related to the local motion of the fluid. To keep the dimensionless setup of the equations, the term \(\beta _0\) should also assume a dimensionless format which may vary according to the problem (see, e.g. [24]). For this study, it is convenient to divide Eq. (5) by \(\rho _0 g_0 D_{\text{b}}\)—whose expression stems from the dynamic pressure and the scaling of the reference velocity by \(\sqrt{g_0 D_{\text{b}}}\). Thenceforth, using the periodic cell’s length \(L\) as reference for the direction given by \(\mathbf{e }\), Eq. (5) takes the dimensionless form

$$\begin{aligned} p^{*} = - \left( \frac{\beta _0}{\rho _0 g_0} \right) \left( \frac{L}{D_\mathrm{b}} \right) (\mathbf{x}^{*} \cdot \mathbf{e}{*} ) + \tilde{p}^{*}. \end{aligned}$$
(6)

The first term inside parentheses on the r.h.s. of Eq. (6) is a modified Euler number associated with the pressure gradient and the second is the aspect ratio relating the influence of the periodic length over the bubble’s surroundings and wake effects. Therefore, Eq. (6) is finally written as

$$\begin{aligned} p^{*} = - \lambda Eu_{\beta ^{*}} (\mathbf{x}^{*} \cdot \mathbf{e}^{*} ) + \tilde{p}^{*}, \end{aligned}$$
(7)

with

$$\begin{aligned} Eu_{\beta ^{*}} = \frac{\beta _0}{\rho _0 g_0},\quad \lambda = \frac{L}{D_\mathrm{b}}. \end{aligned}$$
(8)

Since \(\rho _0\) is taken to be the liquid density \(\rho ^2\), \(Eu_{\beta ^{*}}\) can be interpreted as the ratio of the upward body force to the gravitational force, which acts to balance the liquid mass contained in the periodic cell.

2.2.3 Final form of the governing equations

By inserting Eq. (7) into Eq. (1a), and dropping out the asterisk signs for clarity, the new governing equations of the problem are given by

$$\begin{aligned} \rho \frac{ \hat{D} \mathbf{u}}{Dt}&= \lambda Eu_{\beta }\mathbf{e} - \nabla \tilde{p} + \frac{1}{ Ar^{1/2} } \nabla \cdot \left[ \mu \left( \nabla \mathbf{u} + \nabla \mathbf{u}^T \right) \right] \nonumber \\&\quad + \rho \mathbf{g} + \frac{1}{Eo} \mathbf{f}_{\sigma } \end{aligned}$$
(9a)
$$\begin{aligned} \nabla \cdot \mathbf{u}&= 0, \quad \quad \text {in} \quad \Omega \times t, \end{aligned}$$
(9b)

being now (\(\mathbf{u}, \tilde{p}\)) the pair of unknowns to be determined. Taking this modified version of the one-fluid formulation into account, it can be observed that according to [25], \(\mathbf{f}_{\sigma }\) is interpreted as a volume reformulation of the surface tension. That is to say, for a small volume \(\Omega _S\) crossing the interface, the integration of Eq. (1a) over this volume reduces to

$$\begin{aligned} \int _{\Omega _S} \nabla p \, \mathrm{d}\Omega _S = \dfrac{1}{Eo} \int _{\Omega _S} \mathbf{f}_{\sigma } \, \mathrm{d}\Omega _S. \end{aligned}$$
(10)

Taking the scalar product with the unit normal vector \(\mathbf{n}\) to the interface, defining \(\mathrm{d} \Omega _S = \mathrm{d}I \mathrm{d}n\) and using Eqs. (4), (10) is rewritten as

$$\begin{aligned} \int _{I} \int _{n_{-}}^{n_{+}} \nabla p \cdot \mathbf{n} \, \mathrm{d}\Gamma ^1 \, \mathrm{d}n = \dfrac{1}{Eo} \int _{I} \int _{n_{-}}^{n_{+}} \sigma \kappa \nabla H \cdot \mathbf{n} \, \mathrm{d}\Gamma ^1 \, \mathrm{d}n, \end{aligned}$$
(11)

where \(n_{-} \in \Omega ^1\) and \(n_{+} \in \Omega ^2\) are normal coordinates to the interface as depicted in Fig. 2. Since

$$\begin{aligned} \int _{n_{-}}^{n_{+}} \nabla H \cdot \mathbf{n} \, \mathrm{d}n = 1, \end{aligned}$$
(12)

the pressure gradient along the normal direction leads to the pressure jump across the interface \(\Delta p = p_{+} - p_{-}\). Hence,

$$\begin{aligned} \Delta p = \dfrac{1}{Eo} \kappa \sigma , \end{aligned}$$
(13)

which is a dimensionless form of the Young–Laplace equation.

Fig. 2
figure 2

Small volume \(\Omega _S\) crossing the interface surface

2.3 Finite element procedures

This section describes concisely the fundamental steps behind the finite element method used here by exposing the procedures of discretization, variational formulation and solution of the resulting system of equations.

2.3.1 Domain discretization

Given a tessellation  \({\mathcal T}_h\) of \(\Omega\), each simplex \(T \in {\mathcal T}_h\) here either is a triangle (in 2D), or a tetrahedron (in 3D) with vertices \(\mathbf{x }_j, \, 2 \le j \le 3,4\), obeying the classical requirements for a finite element space [26]. Rich definitions as to discretization of interfaces through finite elements for two-phase flows were brought out by [27] regarding a level-set approach. Similarly, we introduce some concepts suitable to the process explained here. By separating \(h\)-families of discrete regions as mesh subsets, we define

$$\begin{aligned} \mathcal {T}_{h_{1}}^{\Gamma ^1}&:= \left\{ T \in \mathcal {T}_h; \, T \in \text {interface} \right\} , \\ \mathcal {T}_{h_{2}}^{\Gamma ^2}&:= \left\{ T \in \mathcal {T}_h; \, T \in \text {convex hull} \right\} , \\ \mathcal {T}_{h_{c}}&:= \left\{ T \in \mathcal {T}_h; \, T \in \text {cylindrical wrap} \right\} , \\ \mathcal {T}_{h_{\Gamma }}^{\Gamma }&:= \mathcal {T}_{h_{1}}^{\Gamma ^1} \cup \mathcal {T}_{h_{2}}^{\Gamma ^2}, \\ \mathcal {T}_h^{\Omega ^1}&:= \left\{ T \in \mathcal {T}_h; \, \text {int}(T) \subset \Omega ^1 \right\} , \\ \mathcal {T}_h^{\Omega ^2}&:= \left\{ T \in \mathcal {T}_h; \, \text {int}(T) \subset \Omega ^2 \right\} \,\,\text {and} \\ \mathcal {T}_h^{\Omega }&:= \mathcal {T}_h^{\Omega ^1} \cup \mathcal {T}_h^{\Omega ^2}, \end{aligned}$$

and the Heaviside function

$$\begin{aligned} H(\mathbf{x}):= \left\{ \begin{array}{rl} 0, &\quad\text {if }\, \mathbf{x} \in \mathcal {T}_h^{\Omega ^2} \cup \mathcal {T}_{h_{2}}^{\Gamma ^2} \\ 0.5, & \quad\text {if }\, \mathbf{x} \in \mathcal {T}_{h_{1}}^{\Gamma ^1} \\ 1, & \quad\text {if }\, \mathbf{x} \in \Omega ^1, \end{array} \right. \end{aligned}$$
(14)

For computational purposes, the mesh is stored into two data structures: the area/volume mesh \(\mathcal {T}_h^{\Omega }\), which accounts for an interior discretization and the line/surface mesh \(\mathcal {T}_{h_{\Gamma }}^{\Gamma }\), which discretizes the convex hull and the interface. Different levels of adaptive refinement (element sizes) \(h_1, h_2, h_c\) can be chosen separately for the mesh regions as desired. Since the bubble’s interface is traced by faces of their own mesh elements, desirable sharp interfaces are obtained. Therefore, this construction produces a kind of front-tracking method, with the function \(H(\mathbf{x})\) playing a particular role over the elements belonging to the discrete interfaces.

2.3.2 Variational formulation

The strong form of the Eq. (9a9b) seeks the solution of the problem

$$\begin{aligned} \mathcal {B}(\mathbf{u}, \tilde{p}, \mathbf{f}_{\sigma }; \hat{\mathbf{u}},\rho ,\mu ,\mathbf{g})&= 0 \end{aligned}$$
(15a)
$$\begin{aligned} \nabla \cdot \mathbf{u}&= 0 \end{aligned}$$
(15b)
$$\begin{aligned} \mathbf{f}_{\sigma }&= \sigma \kappa \nabla H \end{aligned}$$
(15c)

(where \(\mathcal {B}\) is a compact notation for Eq. (9a)) subject to specified initial and boundary conditions, among which the following are required in the discussed formulation:

$$\begin{aligned} \mathbf{u}|_{\Gamma ^B}&= \mathbf{u}|_{\Gamma ^T} \quad \text{ in } \, (0,t_{\mathrm{max}}] \end{aligned}$$
(16)
$$\begin{aligned} \mathbf{n} \cdot { \nabla \mathbf{u} }|_{\Gamma ^B}&= - \mathbf{n} \cdot { \nabla \mathbf{u} }|_{\Gamma ^T} \quad \text{ in } \, (0,t_\mathrm{max}] \end{aligned}$$
(17)
$$\begin{aligned} {\tilde{p}}|_{\Gamma ^B}&= {\tilde{p}}|_{\Gamma ^T} \quad \text{ in } \, (0,t_\mathrm{max}] \end{aligned}$$
(18)
$$\begin{aligned} \mathbf{n} \cdot \nabla {\tilde{p}}|_{\Gamma ^B}&= - \mathbf{n} \cdot \nabla {\tilde{p}}|_{\Gamma ^T} \quad \text{ in } \, (0,t_\mathrm{max}]. \end{aligned}$$
(19)

Above, Eqs. (1619) enforce the PBC for the velocity and pressure fields, imposed in the FE formulation by means of a variationally consistent form, as explained below.

To set forth the variational formulation of Eq. (15a15b), the following function spaces are defined:

$$\begin{aligned} \mathcal {V}_P&= \{ \mathbf{v} \in \mathcal {H}_0^1(\Omega ); \mathbf{v}(\mathbf{x}) = \mathbf{v}(\mathbf{x} + L\mathbf{e} ), \mathbf{x} \in \Gamma ^B \} \\ \mathcal {Q}_P&= \{ q \in \mathcal {L}^2(\Omega ); \, q(\mathbf{x}) = q(\mathbf{x} + L\mathbf{e} ), \mathbf{x} \in \Gamma ^B \}, \end{aligned}$$

where \(\mathcal {H}_0^1(\Omega )\) is a solenoidal standard Sobolev space and \(\mathcal {L}^2(\Omega )\) the Lebesgue space of square-integrable functions. Both \(\mathcal {V}_P\) and \(\mathcal {Q}_P\) are vector spaces gathering periodic functions used to comply with the PBC [28]. Thenceforward, the derivation of the weak form for two-phase flows is followed by weighting

$$\begin{aligned} \int _{\Omega } \left\{ \mathcal {B}( \mathbf{u}, \tilde{p}, \mathbf{f}_{\sigma }; \hat{\mathbf{v}},\rho ,\mu ,\mathbf{g}) \right\} \cdot \mathbf{v} \, \mathrm{d}\Omega&= 0, \quad \forall \mathbf{v} \in \mathcal {V}_P \end{aligned}$$
(20a)
$$\begin{aligned} \int _{\Omega } \left\{ \nabla \cdot \mathbf{u} \right\} q \, \mathrm{d}\Omega&= 0, \quad \forall q \in \mathcal {Q}_P \end{aligned}$$
(20b)

When assigning usual bilinear forms as inner products, the terms in \(\mathcal {B}\) and the divergence constraint can be written, term by term, as

$$\begin{aligned} m_{\rho }\left( \rho ; \frac{\hat{D} \mathbf{u}}{Dt}, \mathbf{v} \right)&= \int _{\Omega } \rho \frac{\hat{D} \mathbf{u}}{Dt} \cdot \mathbf{v} \, \mathrm{d}\Omega \end{aligned}$$
(21a)
$$\begin{aligned} m( \psi _{u} \mathbf{e}, \mathbf{v} )&= \int _{\Omega } \psi _{u}\mathbf{e} \cdot \mathbf{v} \, \mathrm{d}\Omega ,\quad u = 1, 2, \ldots , \mathrm{NV} \end{aligned}$$
(21b)
$$\begin{aligned} g( \tilde{p}; \nabla \cdot \mathbf{v} )&= \int _{\Omega } \tilde{p} ( \nabla \cdot \mathbf{v} ) \, \mathrm{d}\Omega \end{aligned}$$
(21c)
$$\begin{aligned} k( \mu ; \nabla \mathbf{u}, \nabla \mathbf{v} )&= \int _{\Omega } \mu ( \nabla \mathbf{u} + \nabla \mathbf{u}^T ) : \nabla \mathbf{v}^T \, \mathrm{d}\Omega \end{aligned}$$
(21d)
$$\begin{aligned} m_{\rho }( \rho ; \mathbf{g}, \mathbf{v} )&= \int _{\Omega } \rho \mathbf{g} \cdot \mathbf{v} \, \mathrm{d}\Omega \end{aligned}$$
(21e)
$$\begin{aligned} m( \mathbf{f}_{\sigma }, \mathbf{v} )&= \int _{\Omega } \mathbf{f}_{\sigma } \cdot \mathbf{v} \, \mathrm{d}\Omega \end{aligned}$$
(21f)
$$\begin{aligned} d(\nabla \cdot \mathbf{u}, q)&= \int _{\Omega } ( \nabla \cdot \mathbf{u} ) q \, \mathrm{d}\Omega \end{aligned}$$
(21g)

where \(\psi _{u}\) are shape functions associated with the velocity field and NV is the number of degrees of freedom at which they are evaluated. Following the chosen notation, \(\psi _{u} \mathbf{e} \in \mathcal {V}_P\).

Then, the bilinear forms lead us to the equations

$$\begin{aligned} & m_{\rho } \left( {\rho ;\frac{{\hat{D}{\mathbf{u}}}}{{Dt}},{\mathbf{v}}} \right) + \lambda Eu_{\beta } m(\psi _{u} \widehat{{\mathbf{i}}},{\mathbf{v}}) + g(\tilde{p},\nabla \cdot{\mathbf{v}}) \\ & \quad\quad\quad \quad \quad - \frac{1}{{Ar^{{1/2}} }}k(\mu ;\nabla {\mathbf{u}},\nabla {\mathbf{v}}) - m_{\rho } (\rho ;{\mathbf{g}},{\mathbf{v}}) \\ & \quad \quad\quad \quad \quad \quad \quad \quad \quad \quad \quad \quad \quad \quad \quad - \frac{1}{{Eo}}m({\mathbf{f}}_{\sigma } ,{\mathbf{v}}) = {\mathbf{0}} \\ \end{aligned}$$
(22a)
$$\begin{aligned} d(\nabla \cdot \mathbf{u}, \quad q )= 0 , \end{aligned}$$
(22b)

which declares the weak form of the original problem. The term \(m_{\rho }( \rho ; \frac{\hat{D} \mathbf{u}}{Dt}, \mathbf{v} )\) deals with the contribution given by the material derivative within a unique integral, to be justified ahead; Eq. (21b) resulting from the decomposition of the pressure field does not require integration by parts since its contribution is nonzero only for the streamwise direction and the mass matrix associated with the \(x\)-direction is readily computed from the functions \(\psi _{u}\); notably, integrations by parts are implicitly embedded in Eqs. (21c) and (21d). Lastly, note that the integrals related to Neumann (periodic) boundaries vanish due to the natural condition expressed by Eqs. (17) and (19) through opposite signs of the unit normal vectors.

On the grounds of the mixed nature of the problem, the finite element space used herein is developed in accordance with the stability requirements satisfied by the element of the Taylor–Hood class known as “MINI” [29, 30]. All the terms in Eq. (22a) are approximated by a semi-discrete Galerkin method, except the material derivative. The latter undergoes a semi-lagrangian first-order approximation, which employs the departure points \(\mathbf{x}_d\) of the fluid particle trajectories obtained by performing a displacement as

$$\begin{aligned} \mathbf{x}_d \approx \mathbf{x}_a - \mathbf{c}_h(\mathbf{x}_a) \Delta t, \quad \mathbf{x}_a \,\, \text {of}\,\, T \in \mathcal {T}_h. \end{aligned}$$
(23)

Alternatively, Eq. (23) refers to the known method of characteristics, in which a backward-in-time integration is used. Next, \(\mathbf{u}_{h,d} = \mathbf{u}(\mathbf{x}_d)\) is found by interpolation [31].

By introducing spaces of approximation \(\mathcal {V}_P^h \subset \mathcal {V}_P\) and \(\mathcal {Q}_P^h \subset \mathcal {Q}_P\), the problem (22a22b) is now fully discretized semi-implicitly in space and time, for time steps \(n \Delta t, n = 0,1,2,\ldots \eta\), as

$$\begin{aligned} m_\rho \left(\rho ; \frac{ \mathbf{u}_h^{n+1} - \mathbf{u}_{h,d}^n}{\Delta t} , \mathbf{v}_h \right) - \lambda Eu_{\beta }m(\psi _{u,h}^n \hat{\mathbf {i}}, \mathbf{v}_h ) \nonumber \\ - g( \tilde{p}_h^{n+1}, \nabla \cdot \mathbf{v}_h ) \nonumber \\ + \frac{1}{Ar^{1/2}} k( \mu ;\nabla \mathbf{u}_h^{n+1}, \nabla \mathbf{v}_h) - m_\rho (\rho ; \mathbf{g}_h^n, \mathbf{v}_h ) \nonumber \\ - \frac{1}{Eo} m({\mathbf{f}_{\sigma }}_h^n, \mathbf{v}_h )&= \mathbf{0} \end{aligned}$$
(24a)
$$\begin{aligned} d( \mathbf{u}_h^{n+1}, \nabla \cdot q_h )&= 0 , \end{aligned}$$
(24b)

which can be recast into

$$\begin{aligned}& m_\rho (\rho ; \mathbf{u}_h^{n+1}, \mathbf{v}_h ) + \frac{\Delta t}{Ar^{1/2}} k( \mu ;\nabla \mathbf{u}_h^{n+1}, \nabla \mathbf{v}_h) \nonumber \\ &\quad + \Delta t g( \tilde{p}_h^{n+1}, \nabla \cdot \mathbf{v}_h )= \Delta t \mathbf{r}_h^n \end{aligned}$$
(25a)
$$\begin{aligned} d( \mathbf{u}_h^{n+1}, \nabla \cdot q_h )&= 0 \end{aligned}$$
(25b)
$$\begin{aligned} \text {with} \ \ \mathbf{r}_h^n &= m_\rho ( \rho ; \mathbf{u}_{h,d}^n, \mathbf{v}_h ) + m_\rho (\rho ; \mathbf{g}_h^n, \mathbf{v}_h ) \\ &\quad + \lambda Eu_{\beta } m( \psi _{u,h}^n \hat{\mathbf {i}}, \mathbf{v}_h ) + \frac{1}{Eo} ({\mathbf{f}_{\sigma }}_h^n, \mathbf{v}_h ) \end{aligned}$$

for \(\psi _{u,h}^n \hat{\mathbf {i}}, \mathbf{v}_h \in \mathcal {V}_P^h, q_h \in \mathcal {Q}_P^h\). In turn, through assembling process, Eqs. (25a25b) generate the set of matricial equations

$$\begin{aligned} &{\mathbf {M}}_{\rho } {\mathbf {u}}^{n+1} + \dfrac{\Delta t}{Ar ^{1/2}}{\mathbf {K}}{\mathbf {u}}^{n+1} + \Delta t {\mathbf {G}}{{\tilde{\mathbf {{p}}}}}^{n+1} \nonumber \\ &\quad =\Delta t \left[ {\mathbf {M}}_{\rho } {\mathbf {u}}_d^n + {\mathbf {M}} {\mathbf {b}}^n + {\mathbf {M }}_{\rho } {\mathbf {g}}^n + \dfrac{1}{Eo}{\mathbf {M}}{\mathbf {f}}_{\sigma }^n \right] \end{aligned}$$
(26a)
$$\begin{aligned} {\mathbf {D}}{\mathbf {u}}^{n+1}&= {\mathbf {0}} \end{aligned}$$
(26b)

with \(\mathbf{b}^n = \lambda Eu_{\beta } \hat{\mathbf {i}}\). Concisely, we can write \(\mathbf{B} = \mathbf{M}_{\rho } + \dfrac{\Delta t}{Ar ^{1/2}}\mathbf{K}\) and arrange the equations to give

$$\begin{aligned} \left[\begin{array}{ll} {\mathbf {B}}&\quad \Delta t {\mathbf {G}} \\ {\mathbf {D}}&\quad{\mathbf {0}}\end{array}\right] \left[\begin{array}{l} {\mathbf {u}}^{n+1} \\ {{\tilde{\mathbf {{p}}}}}^{n+1} \end{array}\right] = \left[\begin{array}{l} {\mathbf {r}}^n \\ {\mathbf {0}} \end{array}\right] + \left[\begin{array}{l} {\mathbf {bc}}_1 \\ {\mathbf {bc}}_2 \end{array}\right] \\ \text {with}\,\, {\mathbf {r}}^n = \Delta t \left[ {\mathbf {M}}_{\rho } {\mathbf {u}}_d^n + {\mathbf {M}} {\mathbf {b}}^n + {\mathbf {M }}_{\rho } {\mathbf {g}}^n + \dfrac{1}{Eo}{\mathbf {M}}{\mathbf {f}}_{\sigma }^n \right] \nonumber , \end{aligned}$$
(27)

where \(\mathbf{bc}_1, \mathbf{bc}_2\) are vectors accounting for Dirichlet boundary conditions of velocity and pressure, respectively. Recalling that the interfacial force is given by Eq. (4), to obtain its discrete version to accompany the \(Eo\) number, the following identity is written as

$$\begin{aligned} \mathbf{M}\mathbf{f}_{\sigma }^n = \mathbf{\Sigma }\mathbf{G}\mathbf{h^n}, \end{aligned}$$
(28)

where \(\mathbf{\Sigma } = \sigma \kappa (\mathbf{x}) \mathbf{I}\), with \(\mathbf {I}\) being the identity matrix, is a diagonal matrix storing contributions of surface tension and curvature effects and \(\mathbf{h}^n\) is the discrete vector of the Heaviside function. Consequently, the vector \(\mathbf{r}^n\) in Eq. (27) takes the form

$$\begin{aligned} \mathbf{r}^n = \Delta t \left[ \mathbf{M}_{\rho } \mathbf{u}_d^n + \mathbf{M} \mathbf{b}^n + \mathbf{M }_{\rho } \mathbf{g}^n + \dfrac{1}{Eo}\mathbf{M}_L^{-1}\mathbf{\Sigma }\mathbf{G}\mathbf{h^n}\right] , \end{aligned}$$

now containing the inverse lumped matrix \(\mathbf{M}_L^{-1}\). Even more compactly, the l.h.s. and r.h.s. of Eq. (27) can be stated in an iterative manner as

$$\begin{aligned} \mathbf{N}\mathbf{q}^{n+1} = \mathbf{z}^{n}, \quad n = 0,1,2,\ldots , \eta . \end{aligned}$$
(29)

2.3.3 Solution through the projection method

Methods whose fundamental ideas rely on the projection method by Chorin–Temam [32] have been undertaken to solve the discretized system of Eq. (29) through fractional steps, such as those discussed in [33]. In the most of them, the momentum equation in the primitive variables is split into substeps to bypass the difficulties created by the incompressibility constraint (Eq. (1b)). Essentially, every procedure is based on the calculation of a provisional velocity, an ensuing projection, and an additional update of the pressure field. In this section, the application of a projection method for the solution of the base equations is discussed briefly (a detailed scrutiny about projection methods can be found in Guermond et al. [34]).

In the present paper, the canonical splitting method based on exact LU factorization in two blocks recognized as “type D” after [35] was selected. Thenceforward, from Eq. (29) we write

$$\begin{aligned} \mathbf{N} = \left[\begin{array}{ll} \mathbf{B}&\quad \mathbf{0} \\ \mathbf{D}&\quad \Delta t \mathbf{D} \mathbf{M}_{\rho ,L}^{-1} \mathbf{G} \end{array}\right] \left[\begin{array}{ll} \mathbf{I}&\quad - \Delta t \mathbf{M}_{\rho ,L}^{-1} \mathbf{G} \\ \mathbf{0}&\quad \mathbf{I} \end{array}\right], \end{aligned}$$
(30)

where \(\mathbf{M}_{\rho ,L}^{-1}\) indicates a lumping process employed to alleviate the computational cost of inverting the mass matrix \(\mathbf{M}_\rho\). Besides, the error due to the splitting process affecting this classic fractional step method is reduced if a unique matrix—in this case, \(\mathbf{M}_{\rho ,L}^{-1}\)—interspersed in the LU scheme (see [36]). After performing the LU factorization, the procedure of solution of Eq. (30) is partitionated as follows: firstly, the system

$$\begin{aligned} \left[\begin{array}{ll} \mathbf{B}&\quad \mathbf{0} \\ \mathbf{D}&\quad \Delta t { \mathbf D} \mathbf{M}_{\rho ,L}^{-1} { \mathbf G} \end{array}\right] \left[\begin{array}{ll} \mathbf{u}^{\#} \\ {{\tilde{\mathbf {{p}}}} }^{n+1} \end{array}\right] = \left[\begin{array}{ll} {{\tilde{\mathbf {{{bc}}}_1}} } \\ {\tilde{\mathbf {{{bc}}}_2} } \end{array}\right], \end{aligned}$$
(31)

for the intermediary velocity \(\mathbf{u}^{\#}\) and the periodic pressure \({ \tilde{\mathbf {{p}}} }\) is solved (with \({{\tilde{\mathbf {{{bc}}}}_1} } = \mathbf{r}^{n} + \mathbf{bc}_1\)); next, the system

$$\begin{aligned} \left[\begin{array}{ll} \mathbf{I}& \quad - \Delta t \mathbf{M}_{\rho ,L}^{-1} \mathbf{G} \\ \mathbf{0}&\quad \mathbf{I} \end{array}\right]\, \left[\begin{array}{l} \mathbf{u}^{n+1} \\ { \tilde{\mathbf {{p}}} }^{n+1} \end{array}\right] = \left[\begin{array}{l} \mathbf{u}^{\#} \\ { \tilde{\mathbf {{p}}} }^{n+1} \end{array}\right] \end{aligned}$$
(32)

is solved to find the actual values of the fields. From Eqs. (31) and (32), the following routine of calculations can be set:

$$\begin{aligned} \text{ Solve }&\mathbf{B} \mathbf{u}^{\#} = {{\tilde{\mathbf {{{bc}}}}_1} };\end{aligned}$$
(33)
$$\begin{aligned} \text{ Solve }&\mathbf{E} { \tilde{\mathbf {{p}}} }^{n+1} = {{\mathbf {{\mathbf{{b_2}}}}} }; \end{aligned}$$
(34)
$$\begin{aligned} \text{ Correct }&\mathbf{u}^{n+1} = \mathbf{u}^{\#} + \Delta t { \mathbf M }_{\rho ,L}^{-1} { \mathbf G} { \tilde{\mathbf {{p}}} }^{n+1};\nonumber \\ (\text{with}&\,\,\,\mathbf{E} = \Delta t \mathbf{D} \mathbf{M}_{\rho ,L}^{-1} \mathbf{G}; \ \ {{\tilde{\mathbf {{b_{2}}}}} } = {\tilde{\mathbf {{{bc}}}_2} } - \mathbf{D}\mathbf{u}^{\#}). \end{aligned}$$
(35)

3 Methodology

3.1 Periodic boundary conditions

Periodic meshes guarantee a correct spatial correspondence between the nodes belonging to each periodic boundary chosen a priori. In this manner, since the mesh is considered conforming, a requirement to be respected to avoid discontinuity of the solution is to enforce a superposition of the degrees of freedom (DOFs) stored at nodes of elements in \(\Gamma ^P\). Different approaches are known to identify the indices of the nodes that should be periodic, either during the assembling process or by direct elimination in the global matrix of the system. Nevertheless, alternative methodologies to set PBC over nonperiodic meshes are also available [37, 38].

As discussed in [39], the construction of periodic elementary shape functions that share the periodic nodes is a requisite to be satisfied. The process employed in this study, i.e. combining and eliminating DOFs on the associated problem obtained by replacing the PBC nodes with Neumann (natural) boundary conditions, is described in detail in Sect. 3.3. We will call master, slave, and internal as referring to the nodes belonging to \(\Gamma ^B\), \(\Gamma ^T\), and to the complementary of them, respectively, as employed by some authors (e.g., [40, 41]). The two element patches in light gray in Fig. 1, for instance, schematize that correspondence [42].

3.2 Mesh generation and adaptive refinement

For this study, the periodic mesh was constructed by using built-in tools provided by the software Gmsh [43], thus fulfilling the requisite of having nodes satisfying the PBC constraints. Furthermore, the ability to control the refinement at specified regions of the domain enables an improvement of the analysis of the flow, since local interactions occurring near the bubble plume can be captured.

Fig. 3
figure 3

Augmented view of mesh displaying adaptive refinement strategies: circumferential, at the bubble’s surface; azimuthal, at the cylindrical wrap region of radius \(R_\mathrm{c}\) surrounding it

Adaptive refinement strategies for the array of Fig. 1 were developed to operate on the bubble’s surface, as well as over the fluid portion wrapped by a cylindrical “envelope” of radius \(R_c\) surrounding the bubble, as illustrated in Fig.  3. Such strategies afford not only the generation of finer surface meshes that distribute nodes circumferentially on the spherical shells, but also the achievement of smaller elements in the neighbourhood of the plume that produce good aspect ratios. A view in perspective, as well as a top view of the unstructured mesh used for the simulations are displayed, respectively, in Figs. 4 and 5 at a particular time instant so as to highlight the higher density of points around the center produced by the adaptive refinement.

Fig. 4
figure 4

Computational mesh highlighting the bubble region: cut plane parallel to the axis of rising of the plume

Fig. 5
figure 5

Computational mesh highlighting the adaptive refinement provided by the cylindrical wrap: top view

3.3 Elimination of degrees of freedom

Several algorithms to impose PBC within a finite element context are described by various authors, and were used for different purposes, most of which presenting either restriction equations or row suppression [44, 45, 47]. Herein, the necessary steps to eliminate the slave DOFs for velocity and pressure are dealt with separately and follow the sequential order defined by the projection method explained in Sect. 2.3.3 through Eqs. (3335). The task can be summarized as:

  1. 1.

    Eliminate the DOFs of \(\mathbf{B}\) and update \({{\tilde{\mathbf {{{bc}}}_{1}}} }\);

  2. 2.

    Eliminate the DOFs of \(\mathbf{G }\) and \(\mathbf{D }\);

  3. 3.

    Eliminate the DOFs of \({ \tilde{\mathbf {{E}}} }\) and update \({{\tilde{\mathbf {{b}}}}_{2}}\);

  4. 4.

    Impose periodicity on \({{\tilde{\mathbf {{p}}}}}^{n+1}\);

  5. 5.

    Correct and impose periodicity on \(\mathbf{u}^{n+1}\);

Steps 1 and 2 establish the PBC imposition on the velocity field, whereas steps 4 and 5 on the pressure field. In addition, as declared at the step 3, \(\mathbf{D}\) and \(\mathbf{G }\) undergo elimination as well. The last step is tied to the update of \(\mathbf{u}\) in the closing of the splitting process. The periodicity is achieved by updating the entries of the vectorsthat store  the velocity and pressure fields at the slave nodes employing the values at the master nodes.

When implementing the elimination process, consider the following: \((i,j)\) an arbitrary pair of indices that identifies the nodes for velocity or pressure over the periodic boundaries \(\Gamma ^B\) and \(\Gamma ^T\), respectively; \(ibL\) a particular index for each node over \(\Gamma ^B\); \(ibR\) a particular index for each node over \(\Gamma ^T\), and \(\gamma\) the number of periodic nodes per boundary. Let

$${\mathcal{A}}_{{(i,j;k)}}^{P} = \left[ {\begin{array}{*{20}l} \hfill & | \hfill & | \hfill & \hfill \\ - \hfill & 1 \hfill & { - 0} \hfill & - \hfill \\ \hfill & | \hfill & | \hfill & \hfill \\ - \hfill & 0 \hfill & { - s^{P} } \hfill & - \hfill \\ \hfill & | \hfill & | \hfill & \hfill \\ \end{array} } \right],{\text{ }}k = 0,1,2,$$
(36)

for \(s^P = a_{(i + k \varsigma ,i + k \varsigma )} + a_{(i + k \varsigma ,j + k \varsigma )} + a_{(j + k \varsigma ,i + k \varsigma )}\), be a model for the elementary submatrices of contribution obtained with natural boundary conditions. For each pair \((i,j)\) with either \(i = ibL,ibR\), or \(j = ibL,ibR\) found after algorithmic search, \(\mathcal {A}\) will be replaced with the matrices \(\mathbf{B}\), \(\mathbf{D}\), \(\mathbf{G }\), or \({ \tilde{\mathbf {{E}}} }\), respecting their dimensions, which are defined setting \(\varsigma = NV\) for the number of DOFs of velocity by component, or \(\varsigma = NP\) for the number of DOFs of pressure. The dependency of \(k\) ranges the partial contributions of the spatial coordinates of \(\mathbb {R}^3\). When following this strategy, the pair \((i,j)\) searches for the rows and columns of each matrix, which should undergo copy processes, and, after summing them, all the contributions coming from the connection nodes are overloaded into the row (column) to be bypassed. Accordingly, let

$$\begin{aligned} \mathcal {U}^P_{(i,j;k)} = \left[\begin{array}{l} | \\ 0 \\ | \\ s^P \\ | \end{array}\right],\quad k = 0,1,2, \end{aligned}$$
(37)

for \(s^P = u_{i + k \varsigma } + u_{j + k \varsigma }\), be a model for the elementary vectors of contribution. \(\mathcal {U}\) will be replaced with the vectors \({{\tilde{\mathbf {{{bc}}}}_{1}} }, {{\tilde{\mathbf {{b}}}}_{1}}, { \mathbf u }^{\#}\), \({ \mathbf u }\) and \({{ \tilde{\mathbf {{p}}}}}\) in the algorithm.

Some keypoints to consider about the algorithm used here are: efficiency is earned when eliminating rows and columns directly in each matrix by searching only for the nonzero entries, thus taking into account matrix sparsity; cost-effectiveness is achieved by taking advantage of the matrix symmetry, since a considerable amount of values already computed can be reused; matrix indetermination is avoided simply by filling the suppressed entries with 1’s, whereby it is also justified by the overloading of equations from the slave to the master nodes per each DOF; generalization is achieved by applying it to as many periodic boundaries as desirable in the setups of simulation, since it is based on node indexing. Consequently, a wide set of geometries is favored, even those endowed with more complex surfaces.

3.4 PBC correction of the semi-lagrangian advection

When implementing the PBC, the subsequent process stemming from the semi-lagrangian approximation already declared in Eq. (23) may render “dependent” on the CFL number chosen as input parameter for some simulations. This dependence arises because of the evaluation of the velocity field over the elements’ neighbor to upstream periodic boundaries only and does not taint the nature of the method itself, which, in fact, was developed to allow numerical simulations with larger time steps and CFL numbers [48].

Keeping up with the notation used in [31], we write similarly \(\mathbf{X}(\mathbf{x},t)\) for a continuous trajectory in \(\mathbb {R}^3\), as well as \(\mathbf{X}_h(\mathbf{x},t)\) for an approximation (\(\mathbf{X}\) is not to be confused herein with a point of the material configuration of Sect. 2.2).

Fig. 6
figure 6

Elements patch spanning the numerical path \(\mathcal {T}^{\xi }\) of a fluid particle \(\xi\) for \(\mathrm{CFL} > 1\) and linear approximation of its trajectory through the semi-lagrangian method

Conceptually, the semi-lagrangian method used in this paper searches for the departure point \(\mathbf{x}_d = \mathbf{X}(\mathbf{x},t; \tau )\), i.e. the “foot” of the trajectory, for each node \(\mathbf{x}_j\), whose particle \(\xi\) occupied at a time instant \(\tau\), whereas \(\mathbf{x}_j = \mathbf{X}(\mathbf{x},t)\) is the arrival point to where the particle walks crossing a patch of elements \(\mathcal {T}^{\xi }\). Figure 6 depicts, in turn, how the numerical pathline of \(\xi\) is interpreted over a domain of triangular elements, with filled and dashed lines in white representing \(\mathbf{X}(\mathbf{x},t)\) and \(\mathbf{X}_h(\mathbf{x},t)\), respectively, and elements in gray highlighting \(\mathcal {T}^{\xi }\). In addition, the two extrema elements \(T_d, T_j\) in light gray are such that \(\mathbf{x}_d \in T_d\) and \(\mathbf{x}_j \in T_j\).

As a consequence of these calculations applied to the nodes near and over the master periodic boundary, the departure points are prone to “leak” outward of the computational cell. To correct the departure point, it is necessary to recast its position by adding or subtracting a multiple of the distance between two corresponding periodic nodes. In the case of simpler geometries with parallel boundaries, such as channels and tubes that are employed here, this is done simply by adding once the length of the domain to the points whose streamwise coordinate value falls outside the domain’s limits (to the left). Through this mechanism, the escaped departure points along the periodic boundary at every time step are recast into the domain as illustrated by the shifted starred point (departure point) and the arrival point \(\mathbf{x}_a\) at the periodic patch in Fig. 1.

4 Code validation

Full three-dimensional simulations were performed to verify the technique presented in this paper. A detailed test for the case of an air bubble rising in an aqueous sugar solution considering PBC and the upward force caused by the pressure gradient (see Sect. 2.2.2) was used to check the mathematical model and compared to results published recently. [18].

Table 1 Physical property values for the numerical simulations: tests R1–R3

Figure 7 is a plot of the bubble’s center of mass velocity \(u_{\mathrm{bc}}(t)\) versus time for three different simulations regarding physics and boundary conditions described as follows: test R1—rising bubble with no-slip wall conditions everywhere under gravity only (closed boundaries); test R2—rising bubble with lateral no-slip wall conditions, open boundary conditions at the top/bottom walls under gravity and upward body force; test R3—rising bubble with lateral moving wall conditions, PBC at the top/bottom walls under gravity and upward body force. Test R1 is discussed in [18] for a parallelepipedal domain and good accordance is attained here for a long cylindrical mesh; test R2 was performed to evaluate the balance between the gravity and pressure gradient forces inside the artificial array; test R3, in turn, was carried out to validate the complete PBC formulation coupled with the balance of forces. All of the three tests were carried out over the same computational mesh, whose radius (height) is \(4D_\mathrm{b}\) \((10D_\mathrm{b})\), and the physical property values for them are listed in SI units in Table 1. The time step computation depends on the mesh parameters as well as the other variables related to the ALE model, being updated each iteration (cf. Sect. 5.1 of [18]). For the current tests, an average time step \(\Delta t \approx 0.003\) was determined.

The behavior observed in Fig. 7 may, at first, appear similar to the one obtained by considering the flotation of a small spherical bubble with practically no deformation at all. However, the terminal velocity obtained in these simulations corresponds to about 60 % of the terminal velocity of a spherical bubble of equivalent volume due to its large deformations. As can be seen, the tests are in mutual agreement, except for a slight profile discordance over the plateau of terminal velocity for the cases R2 and R3. To measure these deviations in relation to R1, the mean percentage difference within the time of simulation \([0,t_\mathrm{max}]\) given by

$$\begin{aligned} \mathcal {E}_{Rj,R1}&= \frac{100~\%}{ t_\mathrm{max} } \left( \frac{ \upsilon _{\mathrm{bc}, j}(t) - \upsilon _{\mathrm{bc},1}(t) }{ \upsilon _{\mathrm{bc},1}(t) } \right) , \quad \ j = 2,3, \text {with} \nonumber \\ \upsilon _{\mathrm{bc},i}(t)&= \int _0^{t_\mathrm{max}} u_{\mathrm{bc},i}(t) \, \mathrm{d}t, \quad \ i = 1,2,3, \end{aligned}$$
(38)

was computed to be \(\mathcal {E}_{R2,R1} =\) 3.97 % and \(\mathcal {E}_{R3,R1} = 3.51\) %, thus reporting acceptable difference ranges for both the cases, being the smallest one reported for the PBC/MFR formulation proposed.

Fig. 7
figure 7

Dimensionless rising velocities \(u_\mathrm{bc}(t)\) for three different configurations of an air bubble rising immersed into a aqueous sugar solution

The deviations of R2 and R3 in relation to R1 are due to differences in the problem setups, including effects coming from the boundary conditions and the splitting process used to calculate the velocity field, as explained in Sect. 2.3.3. The tests were sensitive to the time step size chosen, since the addition of the pressure gradient \(Eu_{\lambda }\) introduced a numerical error of \(\mathcal {O}(\Delta t)\) caused by the imbalance between gravity forces and pressure forces produced by the splitting process.

5 Numerical results: bubble shape and oscillation analysis

While singling out the current formulation based on PBC, the previous section has evinced the capabilities of the code to simulate rising bubble flows through different boundary conditions. In this section, on the other hand, aspects of the unsteady hydrodynamics of specific cases of bubble plumes concerning changes of their shape and oscillatory motions will be analyzed. Besides, disturbance energy spectra associated with their shape factor profiles will be  presented.

5.1 Rising velocity, aspect ratios, trajectories and spectra

The next subsections describe rising velocities, bubble shape and oscillation analyses for two cases of bubble plumes inside the periodic domain of Fig. 1 (\(L = 2D_\mathrm{b}\)), whose physical property and parameter values are listed in Table 2.

Fig. 8
figure 8

Elongation (\(\phi\)) and flatness (\(\psi\)) ratios of the rising bubbles

For clarity, the cases are labeled as B1 and B2 and their underlying difference is related to the bubble diameter in the periodic cell, namely, 4.0 and 5.2 mm, respectively.

Table 2 Physical property values for the numerical simulations: cases B1 and B2, respectively

Curves of the two bubble shape factors were calculated and plotted in Fig. 8, viz. the elongation and flatness ratios defined, respectively, as:

$$\begin{aligned} \phi = \frac{b}{c}; \quad \psi = \frac{c}{a}, \end{aligned}$$
(39)

where \(a, b, c\) are the maximum length of the bubble’s principal axes in the streamwise (chosen to be the \(x\) axis) and transverse directions (\(y\) and \(z\) axes). As seen, the initial condition (that is to say \(\phi = \psi = 1\)) of both the cases vouch for the perfectly spheroidal shape of the bubbles. With the time and the ascent motion of the bubbles, the flattening process dominates over the elongation up to \(t \approx 2.5\), thus portraying an oblate shape with a dimple underneath the bubble comparable to experimental observations [50]. From this threshold, shape irregularities become more visible as oscillations are felt by the bubbles, without following, however, a defined periodicity. In turn, the shape variations occur freely as far as the end of the simulations, with the elongation profiles less protruded.

Bubble deformation and oscillation are intimately linked to flow properties, such as surface tension, bubble size, and inertia effects. Path instabilities, zigzag and spiral motions for gas bubbles rising both in clean water and other liquids are effects recognized in the literature and the mechanisms responsible for their appearing have been debated through different points of view (cf. [49, 5154]). It is known, however, that the bubble’s mobility is deeply affected when impurities are dispersed in the flow. To compare with these results, qualitative behaviors were observed for the cases B1 and B2 in the periodic domain regarding the bubbles’ trajectories and its projections as depicted in Fig. 9.

Fig. 9
figure 9

Bubbles’ spatial motion relative to the reference frame moving upwards along with the center of mass (\(x_\mathrm{ref}\) coordinate): a path and directrix line of the twist emerged in case B2 (in red); b projection of the paths over the \(yz\)-and the directrix’s base point \((y_t,z_t) = (0.09, -0.045)\) (in red)

While in the first test the bubble underwent an off-center wobbling motion marked by acute spots, the second test presented, furthermore, a twist motion around the directrix line erected from the point \((y_t,z_t) = (0.09, -0.045)\), approximately between \(t = 2\) and \(t = 4\), before its full unfolding. Given the millimetric difference of diameters for the two cases, these curves suggest that the effect of the bubbles’ wake brought onto themselves—in the sense of a plume made up by equally spaced bubbles—amounts to a path instability which depends on the bubble size and, therefore, on the Eötvös number, in accordance with arguments expressed in the previous citations. Besides, the trajectories tend to develop a seemingly chaotic path.

In attempting to quantify the harmonic modes involved in the oscillatory motion of the bubbles, a spectra analysis based on the fast Fourier transform (FFT) of the signals \(\phi _j(t), \psi _j(t), j = 1,2\) was performed. The spectra analysis considered only data on the range given by \(t_S = [2.5,t_\mathrm{max}]\), thus disregarding the initial evolution stage. FFT-based spectra of magnitude of disturbance energy computed through the expression

$$\begin{aligned} | \mathrm{FFT}_{Bj}[F(t)] |&= \mathrm{FFT}[F(t)]\overline{\mathrm{FFT}[F(t)]}; \nonumber \\ F(t)&= \phi _j(t), \psi _j(t),\quad j = 1,2, \end{aligned}$$
(40)

with the overbar meaning complex conjugate, for the ten first harmonic modes, \(1.0 \le \frac{f t_S}{2 \pi } \le 10.0\), are depicted for the cases B1 and B2 in Fig. 10. The analysis took into account a considerably large quantity of sampling data over the reduced temporal interval \(t_S\), but it showed that the energies of higher magnitude are noticeable only at the low frequencies of the spectra.

This FFT-based analysis shows that both the cases have their energy peak concentrated in the second harmonic. This value is close to the frequencies associated with the (2,0) and the (2,2) modes reported in [49]. For the case B1, the energy peak associated with the flatness profile is only slightly more intense than the elongation’s, while for the case B2 the elongation energy is much larger than the flatness energy.

Fig. 10
figure 10

FFT-based spectrum of disturbance energy for the ten first harmonic modes relative to the signals representative of the aspect ratios profiles \(\phi _j(t), \psi _j(t),\quad j = 1,2\) evaluated in the interval \(t_S = [2.5,t_\mathrm{max}]\): a case B1; b case B2

Furthermore, the energy of the case B1 is very concentrated on \(\frac{f t_S}{2 \pi } = 2.0\), whereas that of the case B2 is spread over the frequencies in the range \(1.0 \le \frac{f t_S}{2 \pi } \le 3.0\). On the other hand, a slight interchange of intensities between even and odd harmonics can be observed along the range, though the case B1 has a higher overall energy than the case B2. Considering that the spectra are nondimensional, the increased spreading in the frequencies in case B2 is indicative of a more complex behavior.

Filtered rising velocity profiles for the cases B1and B2 are depicted in Fig. 11. The need of filtering is firstly justified by the jump of density at the air–water interface, which implies small pressure variations inside the bubble, thus generating higher velocity therein; secondly, to remeshing operations inherent to the numerical method, such as insertion and deletion of nodes, that cause instantaneous variations in the center of mass’s position.

Fig. 11
figure 11

Dimensionless rising velocities \(u_\mathrm{bc}(t)\) over the bubble’s reference frame for the cases B1 and B2

Consequently, a special treatment of box filtering is required to smooth the influence of short-time spurious oscillations experienced by the bubble while ascending. As seen, the fluctuations of velocity are intensified from \(t \approx 2.5\), in accordance with the analysis previously reported.

5.2 Wake effects and near-field velocity

Analyses of the flow in the bubble’s surroundings are limited here to a near-field distance, defined to be the periodic cell region below \(2D_\mathrm{b}\) from the nondisplaced bubble’s center of mass, and are conducted for each test in this subsection. Due to the complex imaging of the three-dimensional hydrodynamic field evolving around the bubble, two stacks of pictures gathering the velocity field as well as the bubble shape information at four time instants, namely \(\{ 3.00, 4.50, 5.50, 6.50 \}\), are arranged from Figs. 12, 13, 14, 15 relative to an axis whose center is fixed in the initial position of the bubble’s center of mass. In the background, the magnitude of the velocity field is plotted over the transverse planes \(yx\) and \(zx\); in the foreground, the bubble shape highlighting the zero-thickness finite element surface meshing is overlaid.

Fig. 12
figure 12

Velocity field and bubble shape for the case B1: plane \(yx\); a \(t = 3.00\), b \(t = 4.50\), c \(t = 5.50\), d \(t = 6.50\)

Fig. 13
figure 13

Velocity field and bubble shape for the case B1: plane \(zx\); a \(t = 3.00\), b \(t = 4.50\), c \(t = 5.50\), d \(t = 6.50\)

The downward flow reflects the imposition of the MFR technique by which the degrees of freedom of the streamwise velocity are subtracted by the center of mass velocity—\(U_\mathrm{bc}\) which is updated each time step. By comparing the flow evolution vis-a-vis for each pair B1–B2 of projection planes, some inferences about the overall flow can be drawn from the simulation snapshots. Firstly, the oblate shape persists for a considerable time along the path and it is a common trait in both the cases; so is the wobbling motion, which is boosted up by higher velocity gradients in the bubble’s skirt region around \(t = 5.50\). Off-center motion is seen by contrasting the bubble shape at \(t = 3.00\), a few instants after the oscillation outset, against \(t = 6.50\); for instance, when the drift from the reference center is played by the bubbles. Consecutive inclinations of the bubbles concerning the azimuthal angle formed between their central axis and the streamwise axis are also exhibited on both projection planes concomitantly, thereby confirming the presence of wobbles in the spatial trajectories observed as much in the previous subsection as in the cited references. It is seen, moreover, that the dimple evolution underneath the bubble of the case B1 differs from that arising in B2, which is more restrained during this stage—however unclear from the pictures. Despite of that, the dimple existence can be verified from the smooth reentrant portions of counterflow underneath the bubbles and around their fringes.

Fig. 14
figure 14

Velocity field and bubble shape for the case B2: plane \(zx\); a \(t = 3.00\), b \(t = 4.50\), c \(t = 5.50\), d \(t = 6.50\)

Fig. 15
figure 15

Velocity field and bubble shape for the case B2: plane \(zx\); a \(t = 3.00\), b \(t = 4.50\), c \(t = 5.50\), d \(t = 6.50\)

6 Conclusions

This paper studied numerically the idealized flow of an in-line bubble plume rising in still water and separated by a uniform gap length utilizing a finite element model coupled with periodic conditions. Among the conclusive remarks that can be drawn up, the following are of particular attention:

  • Under qualitative comparisons with experimental data, the ALE/FEM/PBC formulation here presented supports its ability to get closer to the real hydrodynamics occurring in bubble rising motions, mainly as to the shape variations associated with them.

  • The combination of PBC and the small gap length \(s\) settled in the periodic cell contribute to disturb the bubble’s path so affecting the overall zigzag or spiral motion that is widely observed in experiments with bubbles whose diameters are equivalent to those presented here.

  • Reasons for the very low amplitudes observed in the spectra analysis are tied to the temporal range covered by the simulations, which required small time steps to favor the physical balance between the gravity and pressure forces introduced in the numerical model.

  • Although there is an wake effect at the bubble’s nose due to the “bubble-over-bubble” stacking of the plume model, it did not alter the lasting oblate shape observed for both the cases studied because of the low inertial cumulation coming from below.

  • Different configurations of numerical tests for validation and analyses purposes advocate the good robustness of the numerical tools used here.

To conclude, future directions and implementations comprise: analyses of the flow for larger time scales and smaller separation distances \(s\); investigation of clustered bubbles; coupling with scalar fields, such as contaminants, chemicals and temperature, besides looking at diabatic dynamics, and problems with multidirectional periodicity.