1 Introduction

Fluid–structure interaction, which models the interaction of movable structures and the surrounding fluid flow, is the key to the design of many engineering problems. There are in literature a variety of methods to model fluid–structure interactions, and among them the immersed boundary (IB) method and the immersed interface method (IIM) are proven to be very successful. The immersed interface method [31] was first introduced by Li, and a detailed discussion can be found in [32]. The immersed boundary method was first introduced by Peskin [36] for the numerical approximation of blood flow around the heart valves, and a detailed discussion on the applications of IB method is given in [39]. These methods have been successfully extended to other applications [35, 37, 38]. In this paper, we will focus on the development of our scheme using the immersed boundary approach, since it can be combined with the staggered discontinuous Galerkin method and gives a mass conservative scheme.

One key feature of immersed boundary method is that the Eulerian mesh in the Cartesian coordinate system is fixed, and the configuration of the immersed structure does not necessarily adapt to the Eulerian mesh. This avoids the high cost of mesh updating. The source term which represents the effects of the force exerted by the immersed structure on the fluid is modelled by a Dirac delta function. In the original formulation of Immersed boundary method, finite difference methods are used in spatial discretization for the governing equations of the fluid flows. Since the material points of the immersed boundary may not adapt to the Eulerian grid, the Dirac delta function needs to be approximated. The construction of approximations of the Dirac Delta function is discussed in [39].

On the contrary, in finite element and other Galerkin methods, the Dirac Delta functions can be handled directly by the variational formulation and therefore approximations of the Dirac Delta functions are not needed. In [3], a finite element approach for immersed boundary method (FE-IBM) was proposed. More recent researches on FE-IBM can be found in [5] and [6].

In this paper, we present a staggered discontinuous Galerkin immersed boundary method (SDG-IBM). IB method is used for modelling the fluid–structure interaction, and the fluid flow is modelled by incompressible Navier–Stokes equations which would be solved numerically by a discontinuous Galerkin method based on staggered meshes. Discontinuous Galerkin methods have been applied to problems in fluid dynamics and wave propagations with great success, see for example [7, 16, 22, 24,25,26, 28, 33, 34, 40, 41]. On the other hand, staggered meshes bring the advantages of reducing numerical dissipation in computational fluid dynamics [1, 2, 27], and numerical dispersion in computational wave propagation [10,11,12,13,14,15, 18]. Combining the ideas of DG methods and staggered meshes, a new class of staggered discontinuous Galerkin (SDG) methods for approximations of the incompressible Navier–Stokes equations was proposed [9]. The new class of SDG methods inherits many good properties, including local and global conservations, optimal convergence, and superconvergence through the use of a local postprocessing technique in [22, 23]. Furthermore, energy stability is achieved by spectro-consistent discretizations with a novel splitting of the diffusion and the convection term. An analysis of the SDG method for incompressible Navier–Stokes equations is given in [21]. For a more complete discussion on the SDG method, see also [12,13,14,15, 19, 20, 29, 30] and the references therein. We remark that another class of discontinuous Galerkin methods based on space-time staggered meshes is proposed in [43,44,45].

In the finite element formulation of IB method in [3], the convection term was neglected and linearized Navier–Stokes equations was considered. In our proposed method, by an iterative approach and a skew-symmetric discretization of the convection term, we can also handle the convection term without losing any stability in terms of energy. Our stability result is subject to CFL type restriction on time step since our scheme treats the fluid structure interaction explicitly. Otherwise the implementation is not feasible due to the presence of nonlinear term in the fluid model, which also requires iteration. We note that a stability result without time step restriction was proven for a simple linear fluid model when fluid structure interaction was treated implicitly using an iterative method, see [8].

Another important issue of IB method is that the loss in volume enclosed by the immersed structure in the numerical approximation, which can be resolved by improving the divergence-free property of the interpolated velocity field which drives the Lagrangian markers, see [39] for a detailed discussion. A key component of our method is the use of postprocessing techniques to obtain a pointwise divergence-free velocity field approximation at each time level, which is used to drive the Lagrangian markers of the immersed boundary and acts as a convection velocity in the iterative approach of solving the incompressible Navier–Stokes equations. In particular, by using the pointwise divergence-free postprocessed velocity to drive the Lagrangian markers of the immersed boundary, our method significantly resolves the numerical error of lack of volume conservation. In these regards, our method has advantages over the FE-IBM and other discontinuous Galerkin methods.

The paper is organized as follows. In Sect. 2, we will have a brief discussion on the problem formulation of the IB method. Next, in Sect. 3, we will present the derivation of SDG-IBM. In our scheme, we approximate the immersed structure by a piecewise linear function. In Sect. 4, we will provide a stability analysis of SDG-IBM. Then, in Sect. 5, we will present extensive numerical examples to show the performance of SDG-IBM. Finally, a conclusion is given.

2 Problem Description

Suppose, for \(t \in [0,T]\), in a two-dimensional domain \(\Omega \subset {\mathbb {R}}^2\), the immersed boundary is an elastic incompressible fibre, modeled by a simple closed curve \(\varGamma _t\) contained in \(\Omega \). The Eulerian coordinates of \(\varGamma _t\) are denoted by \(\mathbf {X}(s,t)\), where \(0 \le s \le L\) is the Lagrangian coordinates labeling material points along the curve, and

$$\begin{aligned} \mathbf {X}(0,t) = \mathbf {X}(L,t) \text { for } t \in [0,T]. \end{aligned}$$
(1)

The motion of the fluid is described by the incompressible Navier–Stokes equations

$$\begin{aligned} \begin{aligned} \rho \mathbf {u}_t - \mu \mathbf {\Delta } \mathbf {u} + \rho \mathbf {u}\cdot \nabla \mathbf {u} + \nabla p&= \mathbf {F} \; \text{ in } \Omega \times (0,T),\\ \text {div} \, \mathbf {u}&= 0 \; \text{ in } \Omega \times (0,T),\\ \mathbf {u}&= 0 \; \text{ on } \partial \Omega \times (0,T),\\ \mathbf {u}&= \mathbf {u}_0 \; \text{ in } \Omega \times \{0\}, \end{aligned} \end{aligned}$$
(2)

where p is the pressure with \(\int _\Omega p \, dx = 0\), \(\mathbf {u} = (u_1, u_2)\) is the velocity and \(\mathbf {F} = (F_1, F_2)\) is the source term. Here \(\rho \) and \(\mu \) are the density and the viscosity of the fluid, respectively. Let \(\mathbf {f}(s,t)\) denote the elastic force density resulted from the deformation of the immersed boundary. In the IB method, the force \(\mathbf {F}(\mathbf {x},t)\) exerted on the fluid by the immersed boundary is given by

$$\begin{aligned} \mathbf {F}(\mathbf {x},t) = \int _0^L \mathbf {f}(s,t) \delta (\mathbf {x} - \mathbf {X}(s,t)) \, ds \text { in } \Omega \times (0,T). \end{aligned}$$
(3)

Finally, a no-slip condition is imposed between the immersed boundary and the fluid. The motion of the immersed boundary is described by the Euler–Lagrange eqnarray

$$\begin{aligned} \begin{aligned} \frac{\partial }{\partial t} \mathbf {X}(s,t)&= \mathbf {u} (\mathbf {X}(s,t)) \; \text{ in } [0,L] \times [0,T],\\ \mathbf {X}(s,0)&= \mathbf {X}_0(s) \; \text{ in } [0,L]. \end{aligned} \end{aligned}$$
(4)

In the current work, we only consider the case when both \(\rho \) and \(\mu \) are uniform. Extension to a more general model with varying \(\rho \) and \(\mu \) across the interface will be addressed in our future work.

We consider a simple model with a massless closed curve \(\varGamma _t\) immersed in an incompressible fluid. Suppose \(\gamma \) is the tension in \(\varGamma _t\) and \(\tau \) is the unit tangent to \(\varGamma _t\). Then the local force density \(\mathbf {f}\) acting on the fluid by \(\varGamma _t\) is given by

$$\begin{aligned} \mathbf {f} = \frac{\partial }{\partial s} (\gamma \tau ). \end{aligned}$$
(5)

We assume \(\gamma \) is proportional to \(\left| \dfrac{\partial \mathbf {X}}{\partial s} \right| \). Then we have

$$\begin{aligned} \gamma \tau = \kappa \dfrac{\partial \mathbf {X}}{\partial s} \implies \mathbf {f} = \kappa \frac{\partial ^2 \mathbf {X}}{\partial s^2}, \end{aligned}$$
(6)

where \(\kappa \) is the elasticity constant of the material along the immersed boundary.

3 Derivation of SDG-IBM

In this section, we will give a detailed derivation of SDG-IBM. We will start with the temporal discretization, and then discuss the details of full discretization. We will discuss an iterative approach of linearizing the nonlinear convection term of Navier–Stokes equations (2). Next, we will give the construction of the staggered mesh and the construction of finite element spaces with staggered continuity property. After that, we will explain the derivation of the SDG method and the resultant system of linear equations in each iteration. We will also present the postprocessing technique (c.f. [22]) to obtain a pointwise divergence-free velocity field and discuss the significance of the post-processed velocity in our method. Then, we will move on to discuss the discretization of the source term (3) in the simple model (6). Finally, we will discuss the full discretization of the Euler–Lagrange equation (4).

3.1 BE/FE Temporal Discretization

We will first discretize the continuous problem in time, and obtain a temporally discrete and spatially continuous system. We will use backward-Euler method for the temporal discretization of Navier–Stokes equations. In order to avoid a fully implicit system of equations at each time-step, we use forward-Euler method in time discretization for Euler–Lagrange equation (4) and the fibre force (3). A similar approach was employed by [3], and such an approach is regarded as the BE/FE scheme [42]. We note that fully implicit scheme was considered in [8] for a simple linear fluid model. For our nonlinear fluid model, that approach is not feasible.

Let K be the number of divisions in [0, T] in the temporal domain, \(\Delta t = T/K\) be the time step size and \(t_n = n \Delta t\). From now on, a function with a superscript n stands for evaluation of the function at time \(t = t_n\). For \(n = 1, 2, \ldots , K\), given \(\mathbf {u}^{n-1}\), our goal is to solve for \((\mathbf {u}^n, p^n)\) in the following system of nonlinear PDEs:

$$\begin{aligned} \begin{aligned} \frac{\rho }{\Delta t} \mathbf {u}^n - \mu \mathbf {\Delta } \mathbf {u}^n + \rho \mathbf {u}^n\cdot \nabla \mathbf {u}^n + \nabla p^n&= \frac{\rho }{\Delta t} \mathbf {u}^{n-1} + \mathbf {F}^n \; \text{ in } \Omega ,\\ \text {div} \, \mathbf {u}^n&= 0 \; \text{ in } \Omega ,\\ \mathbf {u}^n&= 0 \; \text{ on } \partial \Omega ,\\ \mathbf {u}^0&= \mathbf {u}_0 \; \text{ in } \Omega , \end{aligned} \end{aligned}$$
(7)

where the source term \(\mathbf {F}^n\) is given by

$$\begin{aligned} \mathbf {F}^n(\mathbf {x}) = \int _0^L \mathbf {f}^{n-1}(s) \delta (\mathbf {x} - \mathbf {X}^{n-1}(s)) \; ds \; \text{ in } \Omega . \end{aligned}$$
(8)

On the other hand, the immersed boundary \(\mathbf {X}^n\) is evolved by

$$\begin{aligned} \begin{aligned} \mathbf {X}^{n}&= \mathbf {X}^{n-1} + \Delta t \, \mathbf {u}^{n} \left( \mathbf {X}^{n-1}\right) \; \text{ in } [0,L],\\ \mathbf {X}^{0}&= \mathbf {X}_0 \; \text{ in } [0,L]. \end{aligned} \end{aligned}$$
(9)

3.2 Linearization of Navier–Stokes Equations by Iterative Approach

In our method, for solving the system (7) of nonlinear PDE at \(t = t_n\), the nonlinear convection term is linearized by a sequence of Picard fixed-point iterations:

$$\begin{aligned} \begin{aligned} \frac{\rho }{\Delta t} \mathbf {u}^n_m - \mu \mathbf {\Delta } \mathbf {u}^n_m + \rho \mathbf {V}^n_m \cdot \nabla \mathbf {u}^n_m + \nabla p^n_m&= \frac{\rho }{\Delta t} \mathbf {u}^{n-1} + \mathbf {F}^n \; \text{ in } \Omega ,\\ \text {div} \, \mathbf {u}^n_m&= 0 \; \text{ in } \Omega ,\\ \mathbf {u}^n_m&= 0 \; \text{ on } \partial \Omega ,\\ \mathbf {u}^0&= \mathbf {u}_0 \; \text{ in } \Omega , \end{aligned} \end{aligned}$$
(10)

where \(\mathbf {V}^n_m\) is a given pointwise divergence-free velocity field depending on \(\mathbf {u}^{n}_{m-1}\).

The choice of the velocity field \(\mathbf {V}^n_m\) in the formulation of (10) will be discussed in Sect. 3.7. The SDG method for solving (10) in a particular iteration will be discussed in Sects. 3.33.6. The fixed point \((\mathbf {u}^n, p^n)\) of the sequence \(\{(\mathbf {u}_m^n, p_m^n)\}_{m=1}^\infty \) is then our solution for (7). In practice, we set a suitable stopping criterion for the Picard fixed-point iterations when the number of iterations done is sufficient or when the successive difference of the elements in a particular iteration is small enough.

3.3 Staggered Meshes

Let \({\mathcal {T}}_u\) be a triangulation of the two-dimensional domain \(\Omega \) by a set of triangles without hanging nodes. We introduce the notation \({\mathcal {F}}_u\) to denote the set of all edges in the triangulation \({\mathcal {T}}_u\) and \({\mathcal {F}}_u^0\) to denote the subset of all interior edges in \({\mathcal {F}}_u\) excluding those on the boundary of \(\Omega \). For each triangle in \({\mathcal {T}}_u\), we take an interior point \(\nu \), denote the initial triangle by \({\mathcal {S}}(\nu )\), and divide \({\mathcal {S}}(\nu )\) into three triangles by joining the point \(\nu \) and the three vertices of \({\mathcal {S}}(\nu )\). We also denote the set of all interior points \(\nu \) by \({\mathcal {N}}\), the set of all new edges generated by the subdivision of triangles by \({\mathcal {F}}_p\), and the triangulation after subdivision by \({\mathcal {T}}\). Note that the interior point \(\nu \) of each triangle in \({\mathcal {T}}_u\) should be chosen such that the new triangulation \({\mathcal {T}}\) observes the shape regularity criterion. In practice, we can simply choose \(\nu \) as the centroid of the triangle. Also, \({\mathcal {F}} = {\mathcal {F}}_u\cup {\mathcal {F}}_p\) denotes the set of all edges of triangles in \({\mathcal {T}}\) and \({\mathcal {F}}^0 = {\mathcal {F}}^0_u \cup {\mathcal {F}}_p\) denotes the set of all interior edges of triangles in \({\mathcal {T}}\). For each edge \(e \in {\mathcal {F}}_u\), we let \({\mathcal {R}}(e)\) be the union of the all triangles in the new triangulation \({\mathcal {T}}\) sharing the edge e. Figure 1 demonstrates these definitions. The edges \(e \in {\mathcal {F}}_u\) are represented in solid lines and the \(e \in {\mathcal {F}}_p\) are represented in dotted lines.

Fig. 1
figure 1

An illustration of the staggered mesh in two dimensions

For each edge \(e \in {\mathcal {F}}\), we will also define a unit normal vector \(\mathbf {n}_{e}\) in the following way. If \(e \in {\mathcal {F}} \setminus {\mathcal {F}}^0\) is a boundary edge, then we define \(\mathbf {n}_{e}\) as the outward unit normal vector of e from \(\Omega \). If \(e\in {\mathcal {F}}^0\) is an interior edge, then \(\mathbf {n}_{e}\) is fixed as one of the two possible unit normal vectors on e. When it is clear that which edge we are considering, we omit the index e and write the unit normal vector as \(\mathbf {n}\).

To end this section, we define the jumps in the following way: for any edge \(e \in {\mathcal {F}}\), denote one of the triangles in the refined triangulation \({\mathcal {T}}\), which contains e by \(\tau ^+\), and denote the other triangle, if exists, by \(\tau ^-\). The outward unit normal vectors on e in \(\tau ^+\) and \(\tau ^-\) are denoted by \(\mathbf {n}^+\) and \(\mathbf {n}^-\), respectively. Also, for any quantity \(\phi \), the notations \(\phi ^\pm \) are defined on the edge e by the values of \(\phi \vert _{\tau ^{\pm }}\) restricted on e. Then, if \(\phi \) is a scalar quantity, the notation \([\phi ]\) over an edge e defined as

$$\begin{aligned}{}[\phi ]\vert _e:= (\mathbf {n} \cdot \mathbf {n}^+) \phi ^+ + (\mathbf {n} \cdot \mathbf {n}^-) \phi ^-. \end{aligned}$$
(11)

If \(\mathbf {\Phi }\) is a vector quantity, then the notation \([\mathbf {\Phi } \cdot \mathbf {n}]\) is similarly defined as

$$\begin{aligned}{}[\mathbf {\Phi } \cdot \mathbf {n}]|_e:=(\mathbf {n}\cdot \mathbf {n}^+) (\mathbf {\Phi }^+ \cdot \mathbf {n}) + (\mathbf {n}\cdot \mathbf {n}^-) (\mathbf {\Phi }^- \cdot \mathbf {n}). \end{aligned}$$
(12)

3.4 SDG Finite Element Spaces

We will define the SDG finite element spaces. Let \(k \ge 0\) be a non-negative integer. Let \(\tau \in {\mathcal {T}}\) and \(e\in {\mathcal {F}}\). We define \(P^{k}(\tau )\) and \(P^k(e)\) as the space of polynomials whose order is not greater than k on \(\tau \) and e, respectively. We will also define norms on the spaces. We use the standard notations \( \Vert \cdot \Vert _{0, \Omega }\) to denote the standard \(L^2\) norm on \(\Omega \) and \( \Vert \cdot \Vert _{0, e}\) to denote the \(L^2\) norm on an edge e.

First, we define the following locally \(H^{1}(\Omega )\)-conforming finite element space for velocity:

$$\begin{aligned} U^{h} = \{ v \, : \, v|_{\tau } \in P^{k}(\tau ); \; \tau \in {\mathcal {T}}; \; v \;\text {is continuous over} \; e \in {\mathcal {F}}_{u}^{0}; \; v|_{\partial \Omega }=0 \}. \end{aligned}$$
(13)

Note that for any \(v\in U^h\), we have \(v|_{{\mathcal {R}}(e)} \in H^1({\mathcal {R}}(e))\) for each edge \(e \in {\mathcal {F}}_u\). We define the following discrete \(L^2\)-norm \(\Vert \cdot \Vert _X\) and discrete \(H^1\)-norm \(\Vert \cdot \Vert _Z\) on the space \(U^h\):

$$\begin{aligned} \begin{aligned} \Vert v \Vert _X&= \left( \Vert v \Vert _{0, \Omega }^2 + \sum _{e \in {\mathcal {F}}_u^0} h_e \Vert v \Vert _{0,e}^2 \right) ^\frac{1}{2}, \\ \Vert v \Vert _Z&= \left( \Vert \nabla _h v \Vert _{0, \Omega }^2 + \sum _{e \in {\mathcal {F}}_p} h_e^{-1} \Vert [v] \Vert _{0,e}^2 \right) ^\frac{1}{2}, \end{aligned} \end{aligned}$$
(14)

where \(\nabla _h\) denotes the gradient operator applied piecewise on the given triangulation \({\mathcal {T}}\). For \(\mathbf {v} = (v_1, v_2) \in [U^h]^2\), we also define an energy norm

$$\begin{aligned} \Vert \mathbf {v} \Vert _h = ( \Vert v_1 \Vert _Z^2 + \Vert v_2 \Vert _Z^2)^\frac{1}{2}. \end{aligned}$$
(15)

Next, we define the following locally \(H(\text {div};\Omega )\)-conforming finite element space for velocity gradients:

$$\begin{aligned} W^{h}= \{ \mathbf {\Psi } \, : \, \mathbf {\Psi }|_{\tau } \in P^{k}(\tau )^{2}; \, \tau \in {\mathcal {T}}; \, \mathbf {\Psi } \cdot \mathbf {n} \, \text {is continuous over} \, e\in {\mathcal {F}}_{p} \}. \end{aligned}$$
(16)

Note that for any \(\mathbf {\Psi } \in W^h\), we have \(\mathbf {\Psi } \vert _{{\mathcal {S}}(\nu )} \in H(\text {div};{\mathcal {S}}(\nu ))\) for each \(\nu \in {\mathcal {N}}\). We define the following discrete \(L^2\)-norm \(\Vert \cdot \Vert _{X'}\) and discrete \(H(\text {div};\Omega )\)-norm \(\Vert \cdot \Vert _{Z'}\) on the space \(W^h\):

$$\begin{aligned} \begin{aligned} \Vert \mathbf {\Psi } \Vert _{X'}&= \left( \Vert \mathbf {\Psi } \Vert _{0, \Omega }^2 + \sum _{e \in {\mathcal {F}}_p} h_e \Vert \mathbf {\Psi } \cdot \mathbf {n} \Vert _{0,e}^2 \right) ^\frac{1}{2}, \\ \Vert \mathbf {\Psi } \Vert _{Z'}&= \left( \Vert \text {div}_h \mathbf {\Psi } \Vert _{0, \Omega }^2 + \sum _{e \in {\mathcal {F}}_u^0} h_e^{-1} \Vert [\mathbf {\Psi } \cdot \mathbf {n}] \Vert _{0,e}^2 \right) ^\frac{1}{2}. \end{aligned} \end{aligned}$$
(17)

Here \(\text {div}_h\) denotes the divergence operator applied piecewise on the given triangulation \({\mathcal {T}}\).

We also define the following locally \(H^{1}(\Omega )\)-conforming finite element space for pressure:

$$\begin{aligned} P^h=\left\{ q \, : \, q|_{\tau } \in P^{k}(\tau ); \; \tau \in {\mathcal {T}}; \; q \;\text {is continuous over} \; e \in {\mathcal {F}}_{p};\; \int _\Omega q \;dx=0\right\} . \end{aligned}$$
(18)

We define the following discrete \(L^2\)-norm \(\Vert \cdot \Vert _P\) on the space \(P^h\):

$$\begin{aligned} \Vert q \Vert _P = \left( \Vert q \Vert _{0, \Omega }^2 + \sum _{e \in {\mathcal {F}}_p} h_e \Vert q \Vert _{0,e}^2 \right) ^\frac{1}{2}. \end{aligned}$$
(19)

Finally, we define a finite element space for the Eulerian coordinates of the immersed boundary. Suppose we have a partition of the interval \(D = [0,L]\) in the Lagrangian coordinate system:

$$\begin{aligned} 0 = s_0< s_1< s_2< \ldots < s_m = L. \end{aligned}$$
(20)

We denote the subintervals by \(J_i = (s_{i-1}, s_i)\) and define the following space:

$$\begin{aligned} S^h = \{ \mathbf {Y} \, : \, \mathbf {Y}|_{J_i} \in P^1(J_i); \; 1 \le i \le m; \; \mathbf {Y} \text { is continuous at } s_i; \; \mathbf {Y}(0) = \mathbf {Y}(L)\}. \end{aligned}$$
(21)

For any \(\mathbf {Y} \in S^h\), \(\mathbf {Y}\) is an m-sided polygon with vertices \(\mathbf {Y}(s_i)\).

3.5 SDG Spatial Discretization

In view of (10), at each time step n and each iteration m, one needs to solve the system of linear PDEs:

$$\begin{aligned} \begin{aligned} \alpha \mathbf {u} - \mu \mathbf {\Delta } \mathbf {u} + \rho \mathbf {V} \cdot \nabla \mathbf {u} + \nabla p&= \mathbf {F} \; \text{ in } \Omega ,\\ \text {div} \, \mathbf {u}&= 0 \; \text{ in } \Omega ,\\ \mathbf {u}&= 0 \; \text{ on } \partial \Omega .\\ \end{aligned} \end{aligned}$$
(22)

We introduce the auxiliary variables

$$\begin{aligned} \begin{aligned} \mathbf {w}&= \sqrt{\mu } \, \nabla u_1 - \frac{\rho }{2\sqrt{\mu }} u_1 \mathbf {V},\\ \mathbf {z}&= \sqrt{\mu } \, \nabla u_2 - \frac{\rho }{2\sqrt{\mu }} u_2 \mathbf {V},\\ \widetilde{\mathbf {w}}&= u_1 \mathbf {V},\\ \widetilde{\mathbf {z}}&= u_2 \mathbf {V}. \end{aligned} \end{aligned}$$
(23)

Then (22) can be reformulated as a system of first-order linear PDEs:

$$\begin{aligned} \begin{aligned} \alpha u_1 -\sqrt{\mu } \, \text {div}\, \mathbf {w} + \frac{\rho }{2\sqrt{\mu }} \mathbf {V}\cdot \mathbf {w} + \frac{\rho ^2}{4 \mu } \mathbf {V}\cdot \widetilde{\mathbf {w}} + p_x&= F_1 \; \text{ in } \Omega , \\ \alpha u_2 - \sqrt{\mu } \, \text {div}\, \mathbf {z} + \frac{\rho }{2\sqrt{\mu }} \mathbf {V}\cdot \mathbf {z} + \frac{\rho ^2}{4 \mu } \mathbf {V}\cdot \widetilde{\mathbf {z}} + p_y&= F_2 \; \text{ in } \Omega , \\ \text {div} \, \mathbf {u}&= 0 \; \text{ in } \Omega ,\\ \mathbf {u}&= 0 \; \text{ on } \partial \Omega . \end{aligned} \end{aligned}$$
(24)

We will derive the discrete problem in our SDG formulation starting from the system of first order equations in (23) and (24).

Multiplying the first equation of (23) by \(\mathbf {\Psi }_1 \in W^h\) and integrating over \({\mathcal {S}}(\nu )\) for \(\nu \in {\mathcal {N}}\), we obtain

$$\begin{aligned} \int _{{\mathcal {S}}(\nu )} \mathbf {w} \cdot \mathbf {\Psi }_1 \; dx= & {} - \sqrt{\mu } \int _{{\mathcal {S}}(\nu )} u_1 \text {div } \mathbf {\Psi }_1 \; dx + \sqrt{\mu } \int _{\partial {\mathcal {S}}(\nu )} u_1 \mathbf {\Psi }_1 \cdot \mathbf {n} \; d\sigma \nonumber \\&- \frac{\rho }{2\sqrt{\mu }} \int _{{\mathcal {S}}(\nu )} \widetilde{\mathbf {w}} \cdot \mathbf {\Psi }_1 \; dx. \end{aligned}$$
(25)

Similarly, multiplying the second equation of (23) by \(\mathbf {\Psi }_2 \in W^h\) and integrating over \({\mathcal {S}}(\nu )\) for \(\nu \in {\mathcal {N}}\), we have

$$\begin{aligned} \int _{{\mathcal {S}}(\nu )} \mathbf {z} \cdot \mathbf {\Psi }_2 \; dx= & {} - \sqrt{\mu } \int _{{\mathcal {S}}(\nu )} u_2 \text {div } \mathbf {\Psi }_2 \; dx + \sqrt{\mu } \int _{\partial {\mathcal {S}}(\nu )} u_2 \mathbf {\Psi }_2 \cdot \mathbf {n} \; d\sigma \nonumber \\&- \frac{\rho }{2\sqrt{\mu }} \int _{{\mathcal {S}}(\nu )} \widetilde{\mathbf {z}} \cdot \mathbf {\Psi }_2 \; dx. \end{aligned}$$
(26)

Multiplying the third equation of (23) by \(\mathbf {\Psi }_3 \in W^h\) and integrating over \({\mathcal {S}}(\nu )\) for \(\nu \in {\mathcal {N}}\), we have

$$\begin{aligned} \int _{{\mathcal {S}}(\nu )} \widetilde{\mathbf {w}} \cdot \mathbf {\Psi }_3 \; dx = \int _{{\mathcal {S}}(\nu )} u_1 \mathbf {V} \cdot \mathbf {\Psi }_3 \; dx. \end{aligned}$$
(27)

Similarly, multiplying the fourth equation of (23) by \(\mathbf {\Psi }_4 \in W^h\) and integrating over \({\mathcal {S}}(\nu )\) for \(\nu \in {\mathcal {N}}\), we have

$$\begin{aligned} \int _{{\mathcal {S}}(\nu )} \widetilde{\mathbf {z}} \cdot \mathbf {\Psi }_4 \; dx = \int _{{\mathcal {S}}(\nu )} u_2 \mathbf {V} \cdot \mathbf {\Psi }_4 \; dx. \end{aligned}$$
(28)

Multiplying the first equation of (24) by \(v_1 \in U^h\) and integrating over \({\mathcal {R}}(e)\) for \(e \in {\mathcal {F}}_u^0\), we have

$$\begin{aligned}&\alpha \int _{{\mathcal {R}}(e)} u_1 \, v_1 \; dx + \sqrt{\mu } \int _{{\mathcal {R}}(e)} \mathbf {w} \cdot \nabla v_1\; dx - \sqrt{\mu } \int _{\partial {\mathcal {R}}(e)} ( \mathbf {w}\cdot \mathbf {n}) v_1 \;d\sigma + \frac{\rho }{2\sqrt{\mu }} \int _{{\mathcal {R}}(e)} \mathbf {V}\cdot \mathbf {w} \, v_1 \; dx \nonumber \\&\quad +\, \frac{\rho ^2}{4 \mu } \int _{{\mathcal {R}}(e)} \mathbf {V}\cdot \widetilde{\mathbf {w}} \, v_1 \; dx - \int _{{\mathcal {R}}(e)} p (v_1)_x + \int _{\partial {\mathcal {R}}(e)} p v_1 n_1 \;d\sigma = \int _{{\mathcal {R}}(e)} F_1 v_1\; dx. \end{aligned}$$
(29)

Similarly, multiplying the second equation of (24) by \(v_2 \in U^h\) and integrating over \({\mathcal {R}}(e)\) for \(e \in {\mathcal {F}}_u^0\), we have

$$\begin{aligned}&\alpha \int _{{\mathcal {R}}(e)} u_2 \, v_2 \; dx + \sqrt{\mu } \int _{{\mathcal {R}}(e)} \mathbf {z} \cdot \nabla v_2 \; dx - \sqrt{\mu } \int _{\partial {\mathcal {R}}(e)} (\mathbf {z}\cdot \mathbf {n}) v_2\;d\sigma + \frac{\rho }{2\sqrt{\mu }} \int _{{\mathcal {R}}(e)} \mathbf {V}\cdot \mathbf {z} \, v_2 \; dx \nonumber \\&\quad + \frac{\rho ^2}{4 \mu } \int _{{\mathcal {R}}(e)} \mathbf {V}\cdot \widetilde{\mathbf {z}} \, v_2 \; dx - \int _{{\mathcal {R}}(e)} p (v_2)_y \; dx + \int _{\partial {\mathcal {R}}(e)} p v_2 n_2 \;d\sigma = \int _{{\mathcal {R}}(e)} F_2 v_2\; dx. \end{aligned}$$
(30)

Finally, multiplying the third equation of (24) by \(q\in P^h\), and integrating over \({\mathcal {S}}(\nu )\) for \(\nu \in {\mathcal {N}}\), we have

$$\begin{aligned} -\int _{{\mathcal {S}}(\nu )} \mathbf {u} \cdot \nabla q \; dx+ \int _{\partial {\mathcal {S}}(\nu )} (\mathbf {u}\cdot \mathbf {n}) q \; d\sigma = 0. \end{aligned}$$
(31)

Summing those equations in (25)–(31) over all \({\mathcal {R}}(e)\) and \({\mathcal {S}}(\nu )\), our staggered discontinuous Galerkin method for (22) is obtained: find \((\mathbf {u}_h,\mathbf {w}_h,\mathbf {z}_h,\widetilde{\mathbf {w}}_h, \widetilde{\mathbf {z}}_h,p_h)\in [U^h]^2\times [W^h]^4 \times P^h\) such that for any \(\mathbf {v} = (v_1,v_2) \in [U^h]^2, \mathbf {\Psi }_1, \mathbf {\Psi }_2, \mathbf {\Psi }_3, \mathbf {\Psi }_4 \in W^h, q \in P^h\), we have

$$\begin{aligned} \begin{aligned} \alpha (\mathbf {u}_h,\mathbf {v})_{0,\Omega } + \sqrt{\mu } B_h(\mathbf {w}_h,v_1)+ \sqrt{\mu } B_h(\mathbf {z}_h,v_2)&\\ +\,\frac{\rho }{2\sqrt{\mu }}R_h\left( \mathbf {w}_h + \frac{\rho }{2\sqrt{\mu }}\widetilde{\mathbf {w}}_h,v_1\right) + \frac{\rho }{2\sqrt{\mu }}R_h\left( \mathbf {z}_h + \frac{\rho }{2\sqrt{\mu }}\widetilde{\mathbf {z}}_h,v_2\right) + b_h^*(p_h, \mathbf {v})&= (\mathbf {F},\mathbf {v})_{0,\Omega },\\ \sqrt{\mu } B_h^*(u_{h,1},\mathbf {\Psi }_1) - \frac{\rho }{2\sqrt{\mu }} (\widetilde{\mathbf {w}}_h,\mathbf {\Psi }_1)_{0,\Omega }&= (\mathbf {w}_h,\mathbf {\Psi }_1)_{0,\Omega },\\ \sqrt{\mu } B_h^*(u_{h,2},\mathbf {\Psi }_2) - \frac{\rho }{2\sqrt{\mu }} (\widetilde{\mathbf {z}}_h,\mathbf {\Psi }_2)_{0,\Omega }&= (\mathbf {z}_h,\mathbf {\Psi }_2)_{0,\Omega },\\ R_h^*(u_{h,1},\mathbf {\Psi }_3)&=(\widetilde{\mathbf {w}}_h,\mathbf {\Psi }_3)_{0,\Omega },\\ R_h^*(u_{h,2},\mathbf {\Psi }_4)&=(\widetilde{\mathbf {z}}_h,\mathbf {\Psi }_4)_{0,\Omega },\\ b_h(\mathbf {u}_h,q)&=0, \end{aligned}\nonumber \\ \end{aligned}$$
(32)

where bilinear forms \(B_h(\mathbf {\Psi },v)\) and \(B^*_h(v,\mathbf {\Psi })\) are defined as

$$\begin{aligned} B_{h}(\mathbf {\Psi },v)&= \int _{\Omega } \mathbf {\Psi } \cdot \nabla _h v \; dx - \sum _{e\in {\mathcal {F}}_{p}}\int _{e} \mathbf {\Psi } \cdot \mathbf {n} \, [v] \; d\sigma , \nonumber \\ B^{*}_{h}(v,\mathbf {\Psi })&= -\int _{\Omega } v \, \text {div}_h\, \mathbf {\Psi } \;dx + \sum _{e\in {\mathcal {F}}_{u}^{0}}\int _{e} v \, [\mathbf {\Psi } \cdot \mathbf {n}] \; d\sigma , \end{aligned}$$
(33)

and the bilinear forms \(b_h^*(q,\mathbf {v})\) and \(b_h(\mathbf {v},q)\) as

$$\begin{aligned} \begin{aligned} b_h^*(q,\mathbf {v})&= -\int _\Omega q \,\text {div}_h\, \mathbf {v} \;dx + \sum _{e\in {\mathcal {F}}_p}\int _e q [\mathbf {v}\cdot \mathbf {n}] \;d\sigma ,\\ b_h(\mathbf {v},q)&=\int _{\Omega } \mathbf {v} \cdot \nabla _h q \;dx -\sum _{e \in {\mathcal {F}}_u^0} \int _e \mathbf {v} \cdot \mathbf {n} [q] \; d\sigma . \end{aligned} \end{aligned}$$
(34)

The bilinear forms \(R_h(\mathbf {\Psi },v)\) and \(R_h^*(v,\mathbf {\Psi })\) are also defined as

$$\begin{aligned} \begin{aligned} R_h(\mathbf {\Psi },v)&= \int _\Omega (\mathbf {V} \cdot \mathbf {\Psi }) \, v \; dx,\\ R_h^*(v,\mathbf {\Psi })&= \int _\Omega v \, (\mathbf {V} \cdot \mathbf {\Psi }) \; dx. \end{aligned} \end{aligned}$$
(35)

Moreover, \((\cdot ,\cdot )_{0,\Omega }\) denotes the standard \(L^2(\Omega )\) inner product.

By [13], the two bilinear forms in (33) satisfy the adjoint relation

$$\begin{aligned} B_h(\mathbf {\Psi },v) = B_h^*(v,\mathbf {\Psi }) \end{aligned}$$
(36)

for all \(v\in U_h\) and \(\mathbf {\Psi } \in W^h\). The bilinear forms \(B_h\) and \(B_h^*\) are also continuous with respect to suitable discrete norms

$$\begin{aligned} \begin{aligned} \vert B_h(\mathbf {\Psi }, v) \vert&\le \Vert \mathbf {\Psi } \Vert _{X'} \Vert v \Vert _Z, \\ \vert B_h^*(v, \mathbf {\Psi }) \vert&\le \Vert v \Vert _X \Vert \mathbf {\Psi } \Vert _{Z'}, \\ \end{aligned} \end{aligned}$$
(37)

for all \(v\in U_h\) and \(\mathbf {\Psi } \in W^h\). Moreover, the bilinear forms \(B_h\) and \(B_h^*\) satisfy a pair of inf-sup conditions: there exists constants \(\beta _1\) and \(\beta _2\), independent of h, such that

$$\begin{aligned} \begin{aligned} \inf _{v \in U^h \setminus \{0\}} \sup _{\mathbf {\Psi } \in W^h \setminus \{\mathbf {0}\}} \frac{B_h(\mathbf {\Psi }, v)}{ \Vert \mathbf {\Psi } \Vert _{X'} \Vert v \Vert _Z}&\ge \beta _1, \\ \inf _{\mathbf {\Psi } \in W^h \setminus \{\mathbf {0}\}} \sup _{v \in U^h \setminus \{0\}} \frac{B_h^*(v, \mathbf {\Psi })}{\Vert v \Vert _X \Vert \mathbf {\Psi } \Vert _{Z'}}&\ge \beta _2. \\ \end{aligned} \end{aligned}$$
(38)

By [29], the two bilinear forms in (34) satisfy the adjoint relation

$$\begin{aligned} b_h^*(q,\mathbf {v})=b_h(\mathbf {v},q) \end{aligned}$$
(39)

for all \(q \in P_h\) and \(\mathbf {v}\in [U_h]^2\). The bilinear form \(b_h\) is also continuous: there exists a constant \(C_b\) such that

$$\begin{aligned} \vert b_h(\mathbf {v},q) \vert \le C_b \Vert \mathbf {v} \Vert _h \Vert q \Vert _{0, \Omega }, \end{aligned}$$
(40)

for all \(q \in P_h\) and \(\mathbf {v}\in [U_h]^2\). Moreover, the bilinear form \(b_h\) satisfies an inf-sup condition: there exists a constant \(\gamma \), independent of h, such that

$$\begin{aligned} \inf _{q \in P^h \setminus \{0\}} \sup _{\mathbf {v} \in [U^h]^2 \setminus \{\mathbf {0}\}} \frac{b_h(\mathbf {v},q)}{\Vert \mathbf {v} \Vert _h \Vert q \Vert _{0,\Omega }} \ge \gamma . \end{aligned}$$
(41)

Finally, the two bilinear forms in (35) satisfy

$$\begin{aligned} R_h^*(v,\mathbf {\Psi })=R_h(\mathbf {\Psi },v) \end{aligned}$$
(42)

for all \(v \in U_h\) and \(\mathbf {\Psi } \in W^h\).

3.6 Linear System

In this section, we derive the linear system resulting from (32). We denote the corresponding matrix representation of the bilinear forms \(B_h\), \(b_h\) and \(R_h\) by B, C and R, respectively. Then by the adjoint properties, the matrix representation of the bilinear forms \(B^*_h\), \(b^*_h\) and \(R^*_h\) are given by \(B^\top \), \(C^\top \) and \(R^\top \), respectively. Also, the notations for the finite element solutions would be abused to denote their corresponding vector representations.

The second and the third equations of (32) can be written as

$$\begin{aligned} \begin{aligned} \sqrt{\mu } B^\top u_{h,1} - \frac{\rho }{2\sqrt{\mu }} M\mathbf {\widetilde{w}}_h&= M\mathbf {w}_h,\\ \sqrt{\mu } B^\top u_{h,2} - \frac{\rho }{2\sqrt{\mu }} M\mathbf {\widetilde{z}}_h&= M\,\mathbf {z}_h, \end{aligned} \end{aligned}$$
(43)

where M is the mass matrix for the space \(W^h\). Similarly, the fourth and the fifth equations of (32) can be written as

$$\begin{aligned} \begin{aligned} R^\top u_{h,1}&= M\mathbf {\widetilde{w}}_h,\\ R^\top u_{h,2}&= M\,\mathbf {\widetilde{z}}_h. \end{aligned} \end{aligned}$$
(44)

Lastly, the first and the last equations of (32) can be written as

$$\begin{aligned} \begin{aligned} \alpha \begin{pmatrix} \widetilde{M} u_{h,1}\\ \widetilde{M} u_{h,2} \end{pmatrix} + \sqrt{\mu } \begin{pmatrix} B\mathbf {w}_h\\ B\mathbf {z}_h \end{pmatrix} + \frac{\rho }{2\sqrt{\mu }} \begin{pmatrix} R(\mathbf {w}_h + \frac{\rho }{2\sqrt{\mu }}\mathbf {\widetilde{w}}_h)\\ R(\mathbf {z}_h + \frac{\rho }{2\sqrt{\mu }}\mathbf {\widetilde{z}}_h) \end{pmatrix} + C^\top p_h&= \begin{pmatrix} F_{h,1} \\ F_{h,2} \end{pmatrix},\\ C\mathbf {u}_h&= 0, \end{aligned} \end{aligned}$$
(45)

where \(\widetilde{M}\) is the mass matrix for the space \(U^h\). We can now obtain a linear system with the unknowns \(\mathbf {w}_h, \mathbf {z}_h, \mathbf {\widetilde{w}}_h, \mathbf {\widetilde{z}}_h\) eliminated. Combining (43) and (44), we have

$$\begin{aligned} \begin{aligned} \mathbf {w}_h&= M^{-1} (\sqrt{\mu } B^\top u_{h,1} - \frac{\rho }{2\sqrt{\mu }} R^\top u_{h,1}),\\ \mathbf {z}_h&= M^{-1} (\sqrt{\mu } B^\top u_{h,2} - \frac{\rho }{2\sqrt{\mu }} R^\top u_{h,2}),\\ \mathbf {\widetilde{w}}_h&= M^{-1} R^\top u_{h,1},\\ \mathbf {\widetilde{z}}_h&= M^{-1} R^\top u_{h,2}. \end{aligned} \end{aligned}$$
(46)

We note that the elimination can be done by solving small problems in each \({\mathcal {S}}(\nu )\) since M is a block diagonal matrix with each block corresponding to the mass matrix of \(W^h|_{{\mathcal {S}}(\nu )}\).

We further introduce the notations

$$\begin{aligned} \begin{aligned} \mathbf {\Delta }_h&= -BM^{-1}B^\top ,\\ \mathbf {V} \cdot \nabla _h&= -\frac{1}{2} BM^{-1}R^\top + \frac{1}{2} RM^{-1}B^\top , \\ A&= \alpha \widetilde{M} -\mu \mathbf {\Delta }_h + \rho \mathbf {V} \cdot \nabla _h. \end{aligned} \end{aligned}$$
(47)

We note that the negative of the discrete Laplacian operator \(-\Delta _h\) is symmetric and positive-definite, and the discrete convection operator \(\mathbf {V} \cdot \nabla _h\) is skew-symmetric. Combining (45) and (46), the algebraic system of the discrete problem (32) can then be reduced to

(48)

and the above system is solved for the unknowns \((u_{h,1},\,u_{h,2},\,p_h)\).

3.7 Postprocessing

In this section, we present a postprocessing technique for the velocity, which was introduced in [22]. In our case, we perform the postprocessing on each \({\mathcal {S}}(\nu )\) to obtain a divergence-free velocity with a higher convergence rate.

Let \((\mathbf {u}_h,\mathbf {w}_h,\mathbf {z}_h,\widetilde{\mathbf {w}}_h,\widetilde{\mathbf {z}}_h,p_h)\in [U^h]^2\times [W^h]^4 \times P^h\) be the solution of (32). We introduce the notations

$$\begin{aligned} \begin{aligned} \widehat{\mathbf {w}}_h&= \frac{1}{\sqrt{\mu }} \left( \mathbf {w}_h + \frac{\rho }{2\sqrt{\mu }} \widetilde{\mathbf {w}}_h\right) ,\\ \widehat{\mathbf {z}}_h&= \frac{1}{\sqrt{\mu }} \left( \mathbf {z}_h + \frac{\rho }{2\sqrt{\mu }} \widetilde{\mathbf {z}}_h\right) ,\\ L_h&= \begin{pmatrix} \widehat{\mathbf {w}}_h^T \\ \widehat{\mathbf {z}}_h^T \end{pmatrix}. \end{aligned} \end{aligned}$$
(49)

Then \(L_h\) is an approximation for the matrix L of \(\nabla \mathbf {u}\).

Let \(\mathbf {u}_h^{\star } \in P^{k+1}({\mathcal {S}}(\nu ))^2\) be the post-processed velocity. For every edge \(e\in \partial {\mathcal {S}}(\nu )\), \(\mathbf {u}_h^\star \) satisfies

$$\begin{aligned} \int _e (\mathbf {u}_h^{\star } - \mathbf {u}_h) \cdot \mathbf {n} \, v \; d\sigma = 0, \quad \forall v\in P^k(e) \end{aligned}$$
(50)

and

$$\begin{aligned} \int _e \Big ( (\mathbf {n}\times \nabla ) (\mathbf {u}_h^{\star }) - \mathbf {n}\times (\{ L_h^T \} \mathbf {n}) \Big ) \, (\mathbf {n}\times \nabla ) v \; d\sigma = 0, \quad \forall v\in P^k(e). \end{aligned}$$
(51)

In the two-dimensional case, we have \(\mathbf {n}\times \nabla = n_2 \partial _1 - n_1 \partial _2\), \(\mathbf {n}\times \mathbf {a} = n_1 a_2 - n_2 a_1\), and \(\nabla \times \mathbf {a} = \partial _1 a_2 - \partial _2 a_1\). In addition, \(\mathbf {u}_h^\star \) satisfies

$$\begin{aligned} \int _{{\mathcal {S}}(\nu )} ( \mathbf {u}_h^{\star } - \mathbf {u}_h) \cdot \nabla v \; dx = 0, \quad \forall v\in P^k({\mathcal {S}}(\nu )) \end{aligned}$$
(52)

and

$$\begin{aligned} \int _{{\mathcal {S}}(\nu )} (\nabla \times \mathbf {u}_h^{\star } - \mathcal {L}_h ) \, v \mathcal {B} \; dx = 0, \quad \forall v\in P^{k-1}({\mathcal {S}}(\nu )) \end{aligned}$$
(53)

where \(\mathcal {L}_h = (L_h)_{21} - (L_h)_{12}\) and \(\mathcal {B}\) is the bubble function, defined by the product of barycentric coordinates of vertices of \({\mathcal {S}}(\nu )\).

We solve (50)–(53) to obtain the post-processed velocity \(\mathbf {u}_h^{\star }\). In [21], it is shown that \(\mathbf {u}_h^{\star }\) is exactly divergence-free.

The pointwise divergence-free property of post-processed velocity is vital in SDG-IBM. First, in the sequence of Picard fixed point iterations in (10), the velocity field \(\mathbf {V}_m^n\) is chosen to be the post-processed velocity from \(\mathbf {u}_{m-1,h}^{n}\). Second, in the full discretization of (9), the Lagrangian markers are driven by the post-processed velocity of the fixed point velocity field at a certain time step. More details will be explained in Sect. 3.9.

3.8 Discretization of Source Term

In Sect. 3.7, we have discussed the linearization of the convection term by the post-processed velocity in each iteration. In Sects. 3.33.6, we have discussed the SDG method for solving the linearized eqnarray in each iteration, given a particular source term. To complete the discussion on our method for solving (10), it remains to discuss the spatial discretization of the source term given by (8) at each time level.

We will start with a variational eqnarray with local test functions for the continuous problem. Let \(e \in {\mathcal {F}}_u^0\). Suppose \(\mathbf {v} \in H^1({\mathcal {R}}(e))\). Let \(D_e\) be the preimage set of \({\mathcal {R}}(e)\) under \(\mathbf {X}(\cdot , t)\), i.e.

$$\begin{aligned} D_e = \{s \in [0,L]: \mathbf {X}(s,t) \in {\mathcal {R}}(e)\}. \end{aligned}$$
(54)

Figure 2 illustrates the preimage set \(D_e\) in the Lagrangian coordinate system.

Fig. 2
figure 2

Illustration of the preimage set \(D_e\) in the Lagrangian coordinate system

Without loss of generality assume \(D_e\) is connected. Similar to [3], we have the following the variational eqnarray:

Definition 1

Suppose \(\mathbf {X}(\cdot , t) \in W^{1,\infty }([0,L])\) for \(t \in [0,T]\) and \(\mathbf {f} \in L^2([0,L] \times (0,T))\). Then for \(e \in {\mathcal {F}}_u^0\), for \(t \in (0,T)\), the force density \(\mathbf {F}(t)\) is defined as follows:

$$\begin{aligned} (\mathbf {F}(t), \mathbf {v})_{0,{\mathcal {R}}(e)} = \int _{D_e} \mathbf {f}(s,t) \mathbf {v}(\mathbf {X}(s,t)) ds \quad \text { for } \mathbf {v} \in [H^1({\mathcal {R}}(e))]^2. \end{aligned}$$
(55)

In particular, in our simple model, for \(\mathbf {v} \in [H^1({\mathcal {R}}(e))]^2\), substituting (6) into (55) and using integration by parts over \(D_e\), we have

$$\begin{aligned} \begin{aligned} (\mathbf {F}(t), \mathbf {v})_{0,\Omega }&= \sum _{e \in {\mathcal {F}}_u^0} \int _{D_e} \kappa \frac{\partial ^2 \mathbf {X}(s,t)}{\partial s^2} \mathbf {v}(\mathbf {X}(s,t)) ds\\&= \sum _{e \in {\mathcal {F}}_u^0} \left( \kappa \frac{\partial \mathbf {X}(s,t)}{\partial s} \mathbf {v}(\mathbf {X}(s,t)) \Big \vert _{\partial D_e} - \int _{D_e} \kappa \frac{\partial \mathbf {X}(s,t)}{\partial s} \frac{\partial \mathbf {v}(\mathbf {X}(s,t))}{\partial s} ds\right) . \end{aligned} \end{aligned}$$
(56)

In our approach, we use (56) for the force exerted on the fluid by the immersed structure. For simplicity, in our scheme we will approximate X(st) by a piecewise linear function on the partition, \(s_0=0<s_1< \cdots <s_m=L\).

Next, we consider a corresponding full discretization of (56) using forward-Euler time-stepping as described in (8). Note that for \(\mathbf {X}_h \in S^h\), by construction we have

$$\begin{aligned} \frac{\partial \mathbf {X}_h}{\partial s}(s) = \frac{\partial \mathbf {X}_h}{\partial s}(s_{i-\frac{1}{2}}) \quad \text{ for } s \in J_i, \end{aligned}$$
(57)

where \(s_{i-\frac{1}{2}} = \frac{1}{2}(s_{i-1} + s_i)\) for \(i = 1, 2, \ldots , m\). Using (56), the source term can be discretized by: for \(\mathbf {v} \in [U^h]^2\),

$$\begin{aligned} (\mathbf {F}^n_h, \mathbf {v})_{0,\Omega }= & {} \sum _{e \in {\mathcal {F}}_u^0} \left( \kappa \frac{\partial \mathbf {X}^{n-1}_h}{\partial s} \mathbf {v}(\mathbf {X}^{n-1}_h) \Big \vert _{\partial D_e} - \int _{D_e} \kappa \frac{\partial \mathbf {X}^{n-1}_h}{\partial s} \frac{\partial \mathbf {v} (\mathbf {X}^{n-1}_h)}{\partial s} ds\right) \nonumber \\= & {} \sum _{e \in {\mathcal {F}}_u^0} \left( \kappa \frac{\partial \mathbf {X}^{n-1}_h}{\partial s} \mathbf {v}(\mathbf {X}^{n-1}_h) \Big \vert _{\partial D_e} - \sum _{i=1}^m \int _{D_e \cap J_i} \kappa \frac{\partial \mathbf {X}^{n-1}_h}{\partial s} \frac{\partial \mathbf {v}(\mathbf {X}^{n-1}_h)}{\partial s} ds\right) \nonumber \\= & {} \sum _{e \in {\mathcal {F}}_u^0} \left( \kappa \frac{\partial \mathbf {X}^{n-1}_h}{\partial s} \mathbf {v}(\mathbf {X}^{n-1}_h) \Big \vert _{\partial D_e} - \sum _{i=1}^m \kappa \frac{\partial \mathbf {X}_h^{n-1}}{\partial s}(s_{i-\frac{1}{2}}) \int _{D_e \cap J_i} \frac{\partial \mathbf {v}(\mathbf {X}^{n-1}_h)}{\partial s} ds\right) \nonumber \\= & {} - \sum _{i=1}^m \kappa \frac{\partial \mathbf {X}_h^{n-1}}{\partial s} (s_{i-\frac{1}{2}}) \Big (\mathbf {v}(\mathbf {X}^{n-1}_h(s_i)) - \mathbf {v} (\mathbf {X}^{n-1}_h(s_{i-1}))\Big )\nonumber \\= & {} \sum _{i=1}^m \kappa \left( \frac{\partial \mathbf {X}_h^{n-1}}{\partial s} (s_{i+\frac{1}{2}}) - \frac{\partial \mathbf {X}_h^{n-1}}{\partial s} (s_{i-\frac{1}{2}}) \right) \mathbf {v}(\mathbf {X}^{n-1}_h(s_i)). \end{aligned}$$
(58)

For the sake of simplifying notations, we use periodic indices, i.e. \(s_{m+r} = s_r\). We remark that the variational equation (55) for source term is local on \(D_e\) in SDG-IBM and global on \(\Omega \) in FE-IBM proposed by [3]. Despite the difference in the variational equations, the resulting formula of the discrete source term in (58) is identical to that of [5].

3.9 Discretization of Euler–Lagrange Equation

Finally, we discuss the full discretization of Euler–Lagrange eqnarray (9). For \(n = 1, 2, \ldots , K\), given \(\mathbf {X}^{n-1}_h \in S^h\) from the previous time step and a fixed-point solution \((\mathbf {u}^n_h, p^n_h) \in [U^h]^2 \times P^h\) of (7), we obtain the postprocessed velocity \(\mathbf {u}^{n,\star }_h\) from \(\mathbf {u}^n_h\) as discussed in Sect. 3.7. The immersed boundary at time \(t = t_n\) is then evolved by

$$\begin{aligned} \begin{aligned} \mathbf {X}^{n}_h(s_i)&= \mathbf {X}^{n-1}_h(s_i) + \Delta t \, \mathbf {u}^{n,\star }_h\left( \mathbf {X}^{n-1}_h(s_i)\right) \; \text{ for } i = 0, 1, 2, \ldots , m,\\ \mathbf {X}^{0}_h(s_i)&= \mathbf {X}_0(s_i) \; \text{ for } i = 0, 1, 2, \ldots , m. \end{aligned} \end{aligned}$$
(59)

3.10 Summary of SDG-IBM

The fully discrete SDG-IBM for numerically solving (2)–(4) is summarized as follows: for \(n = 1,2,\ldots ,K\), given \(\mathbf {u}^{n-1}_h \in [U^h]^2\) and \(\mathbf {X}^{n-1}_h \in S^h\) from the previous time step,

  1. 1.

    let \(\mathbf {u}_{0,h}^n = \mathbf {u}_h^{n-1}\) be the initial guess of the sequence of fixed-point iterations,

  2. 2.

    for \(m = 1,2,\ldots \), given \(\mathbf {u}_{m-1,h}^n\) from the previous iteration,

    1. (a)

      obtain the postprocessed velocity \(\mathbf {V}_m^n = \mathbf {u}_{m-1,h}^{n,\star }\) from \(\mathbf {u}_{m-1,h}^n\) by (50)–(53),

    2. (b)

      let \(\alpha = \dfrac{\rho }{\Delta t}\), \(\mathbf {F} = \dfrac{\rho }{\Delta t} \mathbf {u}_h^{n-1} + \mathbf {F}^n\) and \(\mathbf {V} = \mathbf {V}_m^n\) to obtain the linear system (10),

    3. (c)

      compute the discrete source term of \((\mathbf {F}^n, \mathbf {v})_{0,\Omega }\) for all \(\mathbf {v} \in [U^h]^2\) according to (58),

    4. (d)

      formulate the system of linear equations (48) for the SDG method (32),

    5. (e)

      obtain the numerical solution \((\mathbf {u}_{m,h}^n, p_{m,h}^n) \in [U^h]^2 \times P^h\),

    until a suitably specified stopping criterion is satisfied, and let \((\mathbf {u}_h^n, p_h^n) \in [U^h]^2 \times P^h\) be the termination of the sequence of fixed-point iterations,

  3. 3.

    obtain the postprocessed velocity \(\mathbf {u}_h^{n,\star }\) from \(\mathbf {u}_h^n\) by (50)–(53),

  4. 4.

    obtain the new immersed boundary particle configuration \(\mathbf {X}^n_h \in S^h\) by (59).

We remark that despite the computation of the source term is placed under the inner iterations in the above procedure, the source term is independent of m and needs to be computed only once for each time level.

4 Stability Analysis

In this section, we will provide a stability analysis of SDG-IBM similar to [5]. First, we introduce some tools which will facilitate our analysis. The space \(Q^h\) of piecewise polynomials on \(\tau \in {\mathcal {T}}\) is defined by

$$\begin{aligned} Q^{h}= \{ v \, : \, v|_{\tau } \in P^{k}(\tau ); \; \tau \in {\mathcal {T}}\}. \end{aligned}$$
(60)

We define the broken \(H^1\) semi-norm \(\vert \cdot \vert _{1,*}\) on \([Q^h]^2\) by

$$\begin{aligned} \vert \mathbf {v} \vert _{1,*} = \left( \Vert \nabla _h \mathbf {v} \Vert _{0, \Omega }^2 + \sum _{e \in {\mathcal {F}}^0} h_e^{-1} \Vert [\mathbf {v}] \Vert _{0, e}^2 \right) ^\frac{1}{2} \quad \text { for } \mathbf {v} \in [Q^h]^2, \end{aligned}$$
(61)

where \({\mathcal {F}}^0\) is the set of all the edges of triangles in \({\mathcal {T}}\) interior to \(\Omega \), i.e., the union of \({\mathcal {F}}_p\) and \({\mathcal {F}}_u^0\). Note that the broken \(H^1\) semi-norm \(\vert \cdot \vert _{1,*}\) coincides with the energy norm \(\Vert \cdot \Vert _h\) on \([U^h]^2\).

We begin with the following stability result:

Lemma 1

Let \((\mathbf {u}_h, \mathbf {w}_h, \mathbf {z}_h, \widetilde{\mathbf {w}}_h, \widetilde{\mathbf {z}}_h, p_h) \in [U^h]^2 \times [W^h]^4 \times P^h\) be the solution of (32). Then we have

$$\begin{aligned} \alpha \Vert \mathbf {u}_h\Vert _{0, \Omega }^2 + \beta ^2 \mu \vert \mathbf {u}_h \vert _{1, *}^2 \le (\mathbf {F}, \mathbf {u}_h)_{0,\Omega }, \end{aligned}$$
(62)

where \(\beta \) is the inf-sup constant \(\beta _1\) in (38).

Proof

In (32), we take test functions as follows:

$$\begin{aligned} \begin{aligned} \mathbf {v}&= \mathbf {u}_h, \\ \mathbf {\Psi }_1&= -\mathbf {w}_h, \\ \mathbf {\Psi }_2&= -\mathbf {z}_h, \\ \mathbf {\Psi }_3&= -\frac{\rho }{2} \widehat{\mathbf {w}}_h, \\ \mathbf {\Psi }_4&= -\frac{\rho }{2} \widehat{\mathbf {z}}_h, \\ q&= -p_h, \end{aligned} \end{aligned}$$
(63)

where the definitions of \(\widehat{\mathbf {w}}_h\) and \(\widehat{\mathbf {z}}_h\) are given in (49). We then have

$$\begin{aligned} \begin{aligned} \alpha (\mathbf {u}_h,\mathbf {u}_h)_{0,\Omega } + \sqrt{\mu } B_h(\mathbf {w}_h,u_{h,1})+ \sqrt{\mu } B_h(\mathbf {z}_h,u_{h,2})&\\ +\;\frac{\rho }{2}R_h\left( \widehat{\mathbf {w}}_h,u_{h,1}\right) + \frac{\rho }{2}R_h\left( \widehat{\mathbf {z}}_h,u_{h,2}\right) +\; b_h^*(p_h, \mathbf {u}_h)&= (\mathbf {F}, \mathbf {u}_h)_{0,\Omega },\\ -\;\sqrt{\mu } B_h^*(u_{h,1},\mathbf {w}_h) + \sqrt{\mu } (\widehat{\mathbf {w}}_h,\mathbf {w}_h)_{0,\Omega }&= 0,\\ -\;\sqrt{\mu } B_h^*(u_{h,2},\mathbf {z}_h) + \sqrt{\mu } (\widehat{\mathbf {z}}_h,\mathbf {z}_h)_{0,\Omega }&= 0,\\ -\;\frac{\rho }{2} R_h^*(u_{h,1},\widehat{\mathbf {w}}_h) + \frac{\rho }{2}(\widetilde{\mathbf {w}}_h,\widehat{\mathbf {w}}_h)_{0,\Omega }&= 0,\\ -\;\frac{\rho }{2} R_h^*(u_{h,2},\widehat{\mathbf {z}}_h) +\;\frac{\rho }{2}(\widetilde{\mathbf {z}}_h,\widehat{\mathbf {z}}_h)_{0,\Omega }&= 0.\\ -\;b_h(\mathbf {u}_h,p_h)&=0. \end{aligned} \end{aligned}$$
(64)

Summing up all the equations in (64), using the adjoint relations (36), (39) and (42) and combining the terms, we have

$$\begin{aligned} \alpha \Vert \mathbf {u}_h\Vert _{0, \Omega }^2 + \mu \Vert L_h\Vert _{0, \Omega }^2 = (\mathbf {F}, \mathbf {u}_h)_{0,\Omega }. \end{aligned}$$
(65)

Next, by the first inf-sup condition of \(U^h\) and \(W^h\) in (38) and then using (36), for all \(v \in U^h\), we have

$$\begin{aligned} \Vert v \Vert _Z \le \frac{1}{\beta } \sup _{\mathbf {\Psi } \in W^h} \frac{B_h^*(v, \mathbf {\Psi })}{\Vert \mathbf {\Psi } \Vert _{X'}} \le \frac{1}{\beta } \sup _{\mathbf {\Psi } \in W^h} \frac{B_h^*(v, \mathbf {\Psi })}{\Vert \mathbf {\Psi } \Vert _{0,\Omega }}, \end{aligned}$$
(66)

for all \(v \in U^h\). By the second equation of (32), we have

$$\begin{aligned} \begin{aligned} \Vert u_{h,1} \Vert _Z&\le \frac{1}{\beta } \sup _{\mathbf {\Psi } \in W^h} \frac{B_h^*(u_{h,1}, \mathbf {\Psi })}{\Vert \mathbf {\Psi } \Vert _{0,\Omega }}\\&= \frac{1}{\beta } \sup _{\mathbf {\Psi } \in W^h} \frac{(\widehat{\mathbf {w}}_h, \mathbf {\Psi })_{0,\Omega }}{\Vert \mathbf {\Psi } \Vert _{0,\Omega }},\\&= \frac{1}{\beta } \Vert \widehat{\mathbf {w}}_h \Vert _{0,\Omega }. \end{aligned} \end{aligned}$$
(67)

Similarly, we have

$$\begin{aligned} \Vert u_{h,2} \Vert _Z \le \frac{1}{\beta } \Vert \widehat{\mathbf {z}}_h \Vert _{0,\Omega }. \end{aligned}$$
(68)

Combining (67) and (68), we obtain

$$\begin{aligned} \vert \mathbf {u}_h \vert _{1, *} \le \frac{1}{\beta } \Vert L_h \Vert _{0,\Omega }. \end{aligned}$$
(69)

Substituting (69) into (65), we have

$$\begin{aligned} \alpha \Vert \mathbf {u}_h \Vert _{0, \Omega }^2 + \beta ^2 \mu \vert \mathbf {u}_h \vert _{1, *}^2 \le (\mathbf {F}, \mathbf {u}_h)_{0,\Omega }. \end{aligned}$$
(70)

\(\square \)

One important thing to note is that due to the skew-symmetric discretization of convection term, the convection velocity \(\mathbf {V}\) vanishes in the above estimate and the stability is therefore enhanced.

Now we are ready to present the following stability estimate:

Theorem 1

Let \((\mathbf {u}_h^{n}, p_h^n, \mathbf {X}_h^n) \in [U^h]^2 \times P^h \times S^h\) be the approximated solution of (2)–(4) at \(t = t_n\) obtained by SDG-IBM discussed in Sect. 3.10. Then for \(n = 1, 2, \ldots , K\), we have

$$\begin{aligned}&\frac{\rho }{2\Delta t} \left( \Vert \mathbf {u}_h^n\Vert _{0, \Omega }^2 - \Vert \mathbf {u}_h^{n-1}\Vert _{0, \Omega }^2 \right) + \beta ^2 \mu \vert \mathbf {u}_h^n \vert _{1, *}^2 + \frac{\kappa }{2\Delta t} \left( \left\| \frac{\partial \mathbf {X}_h^{n}}{\partial s} \right\| _{0,D}^2 - \left\| \frac{\partial \mathbf {X}_h^{n-1}}{\partial s} \right\| _{0,D}^2 \right) \nonumber \\&\qquad \le \left( \frac{C \kappa }{h_s h_x^\frac{1}{2}} (L^{n-1})^\frac{3}{2} + \frac{C^\prime \kappa }{h_s} L^{n-1}\right) \vert \mathbf {u}_h^n - \mathbf {u}_h^{n,\star } \vert _{1,*} + \left( \frac{C^2 \kappa \Delta t}{h_s h_x} L^{n-1} + \frac{(C^\prime )^2 \kappa \Delta t}{h_s}\right) \vert \mathbf {u}_h^{n,\star } \vert _{1,*}^2,\nonumber \\ \end{aligned}$$
(71)

where \(h_s\), \(h_x\) and \(L^{n-1}\) are defined as

$$\begin{aligned} \begin{aligned} h_s&= \min _{1 \le i \le m} \vert s_i - s_{i-1} \vert , \\ h_x&= \min _{1 \le i \le m} \text {diam} (\hat{T}_i),\\ L^{n-1}&= \max _{1 \le i \le m} \vert \mathbf {X}_h^{n-1} (s_i) - \mathbf {X}_h^{n-1} (s_{i-1}) \vert , \end{aligned} \end{aligned}$$
(72)

and \(\hat{T}_i\) is the union of all elements in \({\mathcal {T}}\) intersecting the segment joining \(\mathbf {X}_h^{n-1} (s_i)\) to \(\mathbf {X}_h^{n-1} (s_{i-1})\). All the constants appeared in the above estimates are independent of discretization parameters, \(h_x\), \(h_s\), and \(\Delta t\).

Proof

We recall Sect. 3.10, \(\alpha = \dfrac{\rho }{\Delta t}\), \(\mathbf {F} = \dfrac{\rho }{\Delta t} \mathbf {u}_h^{n-1} + \mathbf {F}^n\), and the discrete form \((\mathbf {F}_h^n, \mathbf {v})_{0,\Omega }\) of \((\mathbf {F}^n,\mathbf {v})_{0,\Omega }\) in (58). We then have

$$\begin{aligned} \frac{\rho }{\Delta t} \Vert \mathbf {u}_h^n\Vert _{0, \Omega }^2 + \beta ^2 \mu \vert \mathbf {u}_h^n \vert _{1, *}^2 \le \frac{\rho }{\Delta t} (\mathbf {u}_h^{n-1}, \mathbf {u}_h^n)_{0, \Omega } + (\mathbf {F}_h^n, \mathbf {u}_h^n)_{0,\Omega }, \end{aligned}$$
(73)

since the above estimate holds true throughout the sequence of fixed point iterations. By a direct calculation, we have

$$\begin{aligned} \Vert \mathbf {u}_h^n - \mathbf {u}_h^{n-1} \Vert _{0,\Omega }^2 = \Vert \mathbf {u}_h^n \Vert _{0,\Omega }^2 - 2(\mathbf {u}_h^{n-1}, \mathbf {u}_h^n)_{0, \Omega } + \Vert \mathbf {u}_h^{n-1} \Vert _{0,\Omega }^2. \end{aligned}$$
(74)

Combining (73) and (74), we obtain

$$\begin{aligned} \frac{\rho }{2\Delta t} \left( \Vert \mathbf {u}_h^n\Vert _{0, \Omega }^2 - \Vert \mathbf {u}_h^{n-1}\Vert _{0, \Omega }^2 + \Vert \mathbf {u}_h^n - \mathbf {u}_h^{n-1} \Vert _{0,\Omega }^2 \right) + \beta ^2 \mu \vert \mathbf {u}_h^n \vert _{1, *}^2 \le (\mathbf {F}_h^n, \mathbf {u}_h^n)_{0,\Omega }. \end{aligned}$$
(75)

We let \(\mathbf {v}_h^n = \mathbf {u}_h^n - \mathbf {u}_h^{n, \star }\). By (58) and a rearrangement of indices, we have

$$\begin{aligned} (\mathbf {F}_h^n ,\mathbf {u}_h^n)_{0,\Omega }= & {} \sum _{i=1}^m \kappa \left( \frac{\partial \mathbf {X}_h^{n-1}}{\partial s}(s_{i+\frac{1}{2}}) - \frac{\partial \mathbf {X}_h^{n-1}}{\partial s}(s_{i-\frac{1}{2}}) \right) \mathbf {u}_h^n(\mathbf {X}^{n-1}_h(s_i))\nonumber \\= & {} \sum _{i=1}^m \kappa \frac{\partial \mathbf {X}_h^{n-1}}{\partial s}(s_{i-\frac{1}{2}}) \Big (\mathbf {u}_h^{n}(\mathbf {X}^{n-1}_h(s_{i-1})) - \mathbf {u}_h^{n}(\mathbf {X}^{n-1}_h(s_i)) \Big ) \nonumber \\= & {} \sum _{i=1}^m \kappa \frac{\partial \mathbf {X}_h^{n-1}}{\partial s}(s_{i-\frac{1}{2}})\Big ( \mathbf {v}_h^n(\mathbf {X}^{n-1}_h(s_{i-1})) - \mathbf {v}_h^n(\mathbf {X}^{n-1}_h(s_i)) \Big ) \nonumber \\&+ \sum _{i=1}^m \kappa \frac{\partial \mathbf {X}_h^{n-1}}{\partial s}(s_{i-\frac{1}{2}})\Big ( \mathbf {u}_h^{n,\star }(\mathbf {X}^{n-1}_h(s_{i-1})) - \mathbf {u}_h^{n,\star }(\mathbf {X}^{n-1}_h(s_i)) \Big ). \end{aligned}$$
(76)

We first consider the first sum on the last equality of (76). For \(i = 1,2,\ldots ,m\), we let \(\gamma _i\) be the line segment connecting \(\mathbf {X}^{n-1}_h(s_{i-1})\) and \(\mathbf {X}^{n-1}_h(s_{i})\). Then we have

$$\begin{aligned} \Big \vert \mathbf {v}_h^n(\mathbf {X}^{n-1}_h(s_{i-1})) - \mathbf {v}_h^n(\mathbf {X}^{n-1}_h(s_i)) \Big \vert \le \sum _l \int _{\gamma _{i,l}} \left| \nabla \mathbf {v}_h^n \right| + \sum _{e \in {\mathcal {F}}: e \cap \gamma _i \ne \phi } \left| [\mathbf {v}_h^n] \vert _{e \cap \gamma _i} \right| , \end{aligned}$$
(77)

where \(\gamma _{i,l}\) are subsegments of \(\gamma _i\) cut by the edges e intersecting \(\gamma _i\). For the first term on the right hand side of (77), by an inverse inequality and then a trace inequality, we have

$$\begin{aligned} \begin{aligned} \sum _l \int _{\gamma _{i,l}} \left| \nabla \mathbf {v}_h^n \right|&\le \Big \vert \mathbf {X}^{n-1}_h(s_{i-1}) - \mathbf {X}^{n-1}_h(s_i) \Big \vert ^\frac{1}{2} \sum _l \Vert \nabla \mathbf {v}_h^n \Vert _{0,\gamma _{i,l}} \\&\le C_0 (h_x)^{-\frac{1}{2}} (L^{n-1})^\frac{1}{2} \Vert \nabla \mathbf {v}_h^n \Vert _{0,\hat{T}_i}, \end{aligned} \end{aligned}$$
(78)

where \(C_0\) is a constant depending on the number of \(\gamma _{i,l}\)’s but independent of h. For the second term on the right hand side of (77), by the norm equivalence on the space of polynomials defined on the edges, we note that

$$\begin{aligned} \begin{aligned} \sum _{e \in {\mathcal {F}}: e \cap \gamma _i \ne \phi } \left| [\mathbf {v}_h^n] \vert _{e \cap \gamma _i} \right|&\le \sum _{e \in {\mathcal {F}}: e \cap \gamma _i \ne \phi } \Vert [\mathbf {v}_h^n] \Vert _{\infty , e} \\&\le C_0^\prime \sum _{e \in {\mathcal {F}}: e \cap \gamma _i \ne \phi } h_e^{-\frac{1}{2}} \Vert [\mathbf {v}_h^n] \Vert _{0, e}, \end{aligned} \end{aligned}$$
(79)

where \(C_0^\prime \) is a constant independent of h.

Thus, we have

$$\begin{aligned}&\left| \sum _{i=1}^m \kappa \frac{\partial \mathbf {X}_h^{n-1}}{\partial s}(s_{i-\frac{1}{2}})\Big ( \mathbf {v}_h^n(\mathbf {X}^{n-1}_h(s_{i-1})) - \mathbf {v}_h^n(\mathbf {X}^{n-1}_h(s_i)) \Big ) \right| \nonumber \\&\quad \le \sum _{i=1}^m \kappa \left| \frac{\partial \mathbf {X}_h^{n-1}}{\partial s}(s_{i-\frac{1}{2}}) \right| \Big \vert \mathbf {v}_h^n(\mathbf {X}^{n-1}_h(s_{i-1})) - \mathbf {v}_h^n(\mathbf {X}^{n-1}_h(s_i)) \Big \vert \nonumber \\&\quad \le \frac{\kappa }{h_s} L^{n-1} \sum _{i=1}^m \Big \vert \mathbf {v}_h^n(\mathbf {X}^{n-1}_h(s_{i-1})) - \mathbf {v}_h^n(\mathbf {X}^{n-1}_h(s_i)) \Big \vert \nonumber \\&\quad \le \frac{\kappa }{h_s} L^{n-1} \left( C_0 (h_x)^{-\frac{1}{2}} (L^{n-1})^\frac{1}{2} \sum _{i=1}^m \Vert \nabla \mathbf {v}_h^n \Vert _{0,\hat{T}_i} + C_0^\prime \sum _{i=1}^m \sum _{e \in {\mathcal {F}}: e \cap \gamma _i \ne \phi } h_e^{-\frac{1}{2}} \Vert [\mathbf {v}_h^n] \Vert _{0, e}\right) \nonumber \\&\quad \le \frac{\kappa }{h_s} L^{n-1} \left( C_0 C_1 (h_x)^{-\frac{1}{2}} (L^{n-1})^\frac{1}{2} \Vert \nabla \mathbf {v}_h^n \Vert _{0, \Omega } + C_0^\prime C_1^\prime \sum _{e \in {\mathcal {F}}} h_e^{-\frac{1}{2}} \Vert [\mathbf {v}_h^n] \Vert _{0, e}\right) \nonumber \\&\quad \le \left( \frac{C_0 C_1\kappa }{h_s h_x^\frac{1}{2}} (L^{n-1})^\frac{3}{2} + \frac{C_0^\prime C_1^\prime \kappa }{h_s} L^{n-1}\right) \vert \mathbf {u}_h^n - \mathbf {u}_h^{n,\star } \vert _{1,*}, \end{aligned}$$
(80)

where \(C_1\) is the maximum number of segments \(\gamma _i\) intersected with an element \(\tau \in {\mathcal {T}}\), and \(C_1^\prime \) is the maximum number of segments \(\gamma _i\) intersected with an edge \(e \in {\mathcal {F}}\).

For the second sum on the last equality of (76), by (59), by a rearrangement of indices and a trick similar to (74), we have

$$\begin{aligned}&\sum _{i=1}^m \kappa \frac{\partial \mathbf {X}_h^{n-1}}{\partial s}(s_{i-\frac{1}{2}})\Big ( \mathbf {u}_h^{n,\star }(\mathbf {X}^{n-1}_h(s_{i-1})) - \mathbf {u}_h^{n,\star }(\mathbf {X}^{n-1}_h(s_i)) \Big )\nonumber \\&\quad = \sum _{i=1}^m \kappa \left( \frac{\mathbf {X}_h^{n-1}(s_{i}) - \mathbf {X}_h^{n-1}(s_{i-1})}{s_{i} - s_{i-1}}\right) \left( \frac{\mathbf {X}_h^n(s_{i-1}) - \mathbf {X}_h^{n-1}(s_{i-1})}{\Delta t} - \frac{\mathbf {X}_h^n(s_i) - \mathbf {X}_h^{n-1}(s_i)}{\Delta t}\right) \nonumber \\&\quad = \sum _{i=1}^m \kappa \left( \frac{\mathbf {X}_h^{n-1}(s_{i}) - \mathbf {X}_h^{n-1}(s_{i-1})}{s_{i} - s_{i-1}}\right) \left( \frac{\mathbf {X}_h^{n-1}(s_i)- \mathbf {X}_h^{n-1}(s_{i-1})}{\Delta t} - \frac{\mathbf {X}_h^n(s_i) - \mathbf {X}_h^n(s_{i-1})}{\Delta t}\right) \nonumber \\&\quad = \sum _{i=1}^m \frac{\kappa (s_i - s_{i-1})}{\Delta t} \frac{\partial \mathbf {X}_h^{n-1}}{\partial s} (s_{i-\frac{1}{2}}) \left( \frac{\partial \mathbf {X}_h^{n-1}}{\partial s} (s_{i-\frac{1}{2}}) - \frac{\partial \mathbf {X}_h^{n}}{\partial s} (s_{i-\frac{1}{2}})\right) \nonumber \\&\quad = \frac{\kappa }{2\Delta t} \left( \left\| \frac{\partial \mathbf {X}_h^{n-1}}{\partial s} \right\| _{0,D}^2 - \left\| \frac{\partial \mathbf {X}_h^{n}}{\partial s} \right\| _{0,D}^2 + \left\| \frac{\partial \mathbf {X}_h^{n-1}}{\partial s} - \frac{\partial \mathbf {X}_h^{n}}{\partial s} \right\| _{0,D}^2 \right) . \end{aligned}$$
(81)

Again, using a similar argument as (78) and (79) on \(\mathbf {u}_h^{n,\star }\), we obtain the following estimate:

$$\begin{aligned}&\left\| \frac{\partial \mathbf {X}_h^{n-1}}{\partial s} - \frac{\partial \mathbf {X}_h^{n}}{\partial s} \right\| _{0,D}^2\nonumber \\&\quad = \sum _{i=1}^m \frac{1}{s_i - s_{i-1}} \Big ((\mathbf {X}_h^{n-1}(s_i) - \mathbf {X}_h^{n-1}(s_{i-1})) - (\mathbf {X}_h^{n}(s_i) - \mathbf {X}_h^{n}(s_{i-1}))\Big )^2\nonumber \\&\quad = \sum _{i=1}^m \frac{1}{s_i - s_{i-1}} \Big ((\mathbf {X}_h^{n}(s_{i-1}) - \mathbf {X}_h^{n-1}(s_{i-1})) - (\mathbf {X}_h^{n}(s_{i}) - \mathbf {X}_h^{n-1}(s_{i}))\Big )^2\nonumber \\&\quad = \sum _{i=1}^m \frac{\Delta t^2}{s_i - s_{i-1}} \Big ( \mathbf {u}_h^{n,\star }(\mathbf {X}_h^{n-1}(s_{i-1})) - \mathbf {u}_h^{n,\star }(\mathbf {X}_h^{n-1}(s_{i})) \Big )^2\nonumber \\&\quad \le \frac{2 \Delta t^2}{h_s}\left( \frac{(C_0 C_1)^2}{h_x} L^{n-1} + (C_0^\prime C_1^\prime )^2 \right) \vert \mathbf {u}_h^{n,\star } \vert _{1,*}^2. \end{aligned}$$
(82)

Combining (81) and (82), we have

$$\begin{aligned}&\sum _{i=1}^m \kappa \frac{\partial \mathbf {X}_h^{n-1}}{\partial s}(s_{i-\frac{1}{2}})\Big ( \mathbf {u}_h^{n,\star }(\mathbf {X}^{n-1}_h(s_{i-1})) - \mathbf {u}_h^{n,\star }(\mathbf {X}^{n-1}_h(s_i)) \Big )\nonumber \\&\quad \le \frac{\kappa }{2\Delta t} \left( \left\| \frac{\partial \mathbf {X}_h^{n-1}}{\partial s} \right\| _{0,D}^2 - \left\| \frac{\partial \mathbf {X}_h^{n}}{\partial s} \right\| _{0,D}^2 + \frac{2 \Delta t^2}{h_s}\left( \frac{(C_0 C_1)^2}{h_x} L^{n-1} + (C_0^\prime C_1^\prime )^2 \right) \vert \mathbf {u}_h^{n,\star } \vert _{1,*}^2 \right) .\nonumber \\ \end{aligned}$$
(83)

Finally, combining (75), (76), (80) and (83), we obtain the desired result. \(\square \)

Using Theorem 1, we can now establish the following CFL condition for SDG-IBM:

Corollary 1

For \(n = 1, 2, \ldots , K\), define a CFL parameter \(\eta ^{n-1}\) by

$$\begin{aligned} \eta ^{n-1} = \frac{\kappa \Delta t}{h_s} \left( 1 + \frac{L^{n-1}}{h_x}\right) . \end{aligned}$$
(84)

Assume that \(h_s = O(h)\) and \(h_x = O(h)\), and there exists a uniform constant \(K_0\) such that

$$\begin{aligned} \beta ^2 \mu - 2\max \{C, C^\prime \}^2 \eta ^{j-1} \ge K_0 > 0 \text { for } j = 1, 2, \ldots n, \end{aligned}$$
(85)

then the following energy property holds:

$$\begin{aligned} E^n \le E^0 + R^n, \end{aligned}$$
(86)

where \(E^n\) and \(R^n\) are defined as

$$\begin{aligned} \begin{aligned} E^n&= \frac{\rho }{2} \Vert \mathbf {u}_h^n \Vert _{0, \Omega }^2 + \Delta t \sum _{j = 1}^n K_0 \vert \mathbf {u}_h^j \vert _{1,*}^2 + \frac{\kappa }{2} \left\| \frac{\partial \mathbf {X}_h^{n}}{\partial s} \right\| _{0,D}^2,\\ R^n&= \Delta t \sum _{j = 1}^n \left( \left( \frac{\widetilde{C} \kappa }{h^\frac{1}{2}} (L^{j-1})^\frac{3}{2} + \widetilde{C}^\prime \kappa L^{j-1} \right) \Vert \mathbf {u}^j \Vert _{2,\Omega } + 2\left( \widetilde{C}^2 \kappa \Delta t L^{j-1} + (\widetilde{C}^\prime )^2 \kappa h \Delta t \right) \Vert \mathbf {u}^j \Vert _{2,\Omega }^2\right) , \end{aligned} \end{aligned}$$
(87)

and \(\mathbf {u}^j\) is the analytic solution of (7) at \(t = t_j\). All the constants in the above are independent of discretization parameters, \(h_x\), \(h_s\) and \(\Delta t\).

Proof

By the triangle inequality and Cauchy–Schwarz inequality, we have

$$\begin{aligned} \vert \mathbf {u}_h^{j,\star } \vert _{1,*}^2 \le 2 \left( \vert \mathbf {u}_h^{j} \vert _{1,*}^2 + \vert \mathbf {u}_h^{j} - \mathbf {u}_h^{j,\star } \vert _{1,*}^2 \right) . \end{aligned}$$
(88)

Applying this inequality to the right hand side of (71), rearranging the terms and using the assumption (85), we obtain

$$\begin{aligned}&\frac{\rho }{2\Delta t} \left( \Vert \mathbf {u}_h^j\Vert _{0, \Omega }^2 - \Vert \mathbf {u}_h^{j-1}\Vert _{0, \Omega }^2 \right) + K_0 \vert \mathbf {u}_h^j \vert _{1, *}^2 + \frac{\kappa }{2\Delta t} \left( \left\| \frac{\partial \mathbf {X}_h^{j}}{\partial s} \right\| _{0,D}^2 - \left\| \frac{\partial \mathbf {X}_h^{j-1}}{\partial s} \right\| _{0,D}^2 \right) \nonumber \\&\qquad \le \left( \frac{C \kappa }{h_s h_x^\frac{1}{2}} (L^{n-1})^\frac{3}{2} + \frac{C^\prime \kappa }{h_s} L^{n-1}\right) \vert \mathbf {u}_h^j - \mathbf {u}_h^{j,\star } \vert _{1,*} + 2 \left( \frac{C^2 \kappa \Delta t}{h_s h_x} L^{n-1} + \frac{(C^\prime )^2 \kappa \Delta t}{h_s}\right) \vert \mathbf {u}_h^j - \mathbf {u}_h^{j,\star } \vert _{1,*}^2.\nonumber \\ \end{aligned}$$
(89)

Additionally, from [17] and [21], we have the following estimate

$$\begin{aligned} \vert \mathbf {u}_h^j - \mathbf {u}_h^{j,\star } \vert _{1,*} \le C_u h \Vert \mathbf {u}^j\Vert _{2,\Omega }. \end{aligned}$$
(90)

By combining (89) and (90) and assuming \(h_s = O(h)\) and \(h_x = O(h)\), we have

$$\begin{aligned}&\frac{1}{\Delta t} (E^j - E^{j-1}) \nonumber \\&\quad \le \left( \frac{C \kappa }{h^\frac{3}{2}} (L^{n-1})^\frac{3}{2} + \frac{C^\prime \kappa }{h} L^{n-1}\right) \left( C_u h \Vert \mathbf {u}^j\Vert _{2,\Omega }\right) + 2\left( \frac{C^2 \kappa \Delta t}{h^2} L^{n-1} + \frac{(C^\prime )^2 \kappa \Delta t}{h}\right) \left( C_u h \Vert \mathbf {u}^j\Vert _{2,\Omega }\right) ^2 \nonumber \\&\quad \le \left( \frac{\widetilde{C} \kappa }{h^\frac{1}{2}} (L^{n-1})^\frac{3}{2} + \widetilde{C}^\prime \kappa L^{n-1}\right) \Vert \mathbf {u}^j\Vert _{2,\Omega } + 2\left( \widetilde{C}^2 \kappa \Delta t L^{n-1} + (\widetilde{C}^\prime )^2 \kappa h \Delta t \right) \Vert \mathbf {u}^j\Vert _{2,\Omega }^2. \end{aligned}$$
(91)

Summing over \(j = 1, 2, \ldots , n\), we obtain the desired result. \(\square \)

We would like to make a few remarks here. From Corollary 1, the condition on \(\Delta t\) for the stability is similar to that obtained in [5]. In [5], linearized Navier–Stokes problem is considered, and we obtained the above stability result for the nonlinear problem by using the skew-symmetry property of the nonlinear term. This is an advantage of staggered DG formulation and obtained by using the splitting of the diffusion and convection term. The use of the post-processed velocity \(\mathbf {u}_h^{n,\star }\) in advancing the structure gives the additional term \(R^n\) in the stability estimate. By using the post-processed velocity, we can observe a better mass-preserving property of the discrete problem.

We note that by assuming that \(\mathbf {X}^n(s)\) are uniformly Lipschitz for all time step n we can bound \(L^{n-1}\) by Ch for all n. The first term in \(R^n\) can then be bounded by \(C h \Delta t \sum _{j=1}^n \Vert u^j\Vert _{2,\Omega }\) and the second term by \(C h \Delta t \sum _{j=1}^n \Vert u^j\Vert _{2,\Omega }^2\). We can then bound the term \(R^n\) by \(C h \sum _{j=1}^n \Delta t \Vert u^j \Vert _{2,\Omega }^2\), which says that the term \(R^n\) becomes harmless for a sufficiently small h. The condition in (85) means that our scheme is more stable for a model with larger \(\mu \) and smaller \(\kappa \).

5 Numerical Results

In this section, we illustrate some numerical examples. We carry out numerical experiments to see the area conservation of the immersed boundary and the stability of the proposed method. In Sects. 5.1 and 5.2, we present numerical results of an ellipse and an L-shaped curve immersed in a static fluid. In Sect. 5.3, we perform an experiment to see an ellipse immersed in a rotating fluid. In Sect. 5.4, we examine the behaviour of a stretched curve immersed in a static fluid. In Sect. 5.5, we present stability of our method for a test example.

Polynomials with degree \(k=1\) is used in the SDG spatial discretization. Throughout the experiments in the whole Sect. 5, unless otherwise specified, the Lagrangian mesh defined in (20) is uniform. The physical quantities are set to be:

$$\begin{aligned} \rho = 1, \mu = 1, \kappa = 1 \text { and } \Delta t = 0.01. \end{aligned}$$
(92)

We denote the number of divisions in [0, 1] in the Eulerian mesh by N, the number of divisions in [0, L] in the Lagrangian mesh by m, and the number of divisions in [0, T] in the temporal mesh by K, respectively.

5.1 Ellipse Immersed in a Static Fluid

This experiment is to compare the area conversation of SDG-IBM with FE-IBM proposed in [4]. The initial condition for the fluid motion is given by

$$\begin{aligned} \mathbf {u}_0(x,y) = \mathbf {0}, \quad (x,y) \in [0,1]^2. \end{aligned}$$
(93)

The initial configuration of the Lagrangian markers is given by

$$\begin{aligned} \mathbf {X}_0(s) = \begin{pmatrix} 0.2\cos (2\pi s) + 0.3\\ 0.1 \sin (2\pi s) + 0.3 \end{pmatrix}, \quad s \in [0,1]. \end{aligned}$$
(94)

Tests are performed with mesh sizes \(N = 4, 8, 16, 32\) and \(m = 64, 128, 256\) and \(K = 200\). At \(t = 2\), the area change is analyzed.

Table 1 records the area change of the immersed boundary in experiment 5.1, and shows that the area conservation of SDG-IBM is very outstanding. With \(N = 32\) and \(m = 256\), the area loss is 0.07%, significantly less than 2.3% of FE-IBM in [4]. We note that in our numerical experiments we calculated the area change of the immersed boundary by comparing the area enclosed by the m-sided polygons with vertices \(\mathbf {X}_h^K(s_i)\) and \(\mathbf {X}_h^0(s_i)\) respectively. The percentage of area change is computed by the difference of the areas at the initial time step and the final time step, divided by the area at the initial time step. Figure 3 shows the evolution of the immersed boundary throughout \(t = 0\) and \(t = 2\) with \(N = 32\) and \(m = 256\). It can be seen that the Lagrangian markers tend to the equilibrium configuration, which is a circle in shape.

Table 1 Percentage of area change in experiment 5.1
Fig. 3
figure 3

Evolution of the immersed boundary throughout \(t = 0\) and \(t = 2\) in experiment 5.1

5.2 L-Shaped Curve Immersed in a Static Fluid

We consider an experiment which has identical set-ups as experiment 5.1, except the initial configuration of the Lagrangian markers is replaced by an L-shaped closed curve.

Table 2 records the area change of the immersed boundary in experiment 5.2. Figure 4 shows the profile of the fluid flow and the configuration of the Lagrangian markers at \(t = \Delta t\) with \(N = 32\) and \(m = 256\). It can be observed that the fluid flow out of the immersed boundary at the inner corner and flow into the immersed boundary at the other corners. The flow substantially pushes the inner corner out. Figure 5 shows the evolution of the immersed boundary throughout \(t = 0\) and \(t = 2\) with \(N = 32\) and \(m = 256\). Again, the Lagrangian markers tend to the circular equilibrium configuration.

Table 2 Percentage of area change in experiment 5.2
Fig. 4
figure 4

Profile of the fluid flow and configuration of the Lagrangian markers at \(t = \Delta t\) in experiment 5.2

Fig. 5
figure 5

Evolution of the immersed boundary throughout \(t = 0\) and \(t = 2\) in experiment 5.2

5.3 Ellipse Immersed in a Rotating Fluid

We consider a model with the immersed boundary driven by a rotating fluid. In addition to the elastic force acting on the fluid by the immersed boundary, an external force for maintaining the Navier–Stokes flow of the rotating velocity field

$$\begin{aligned} \mathbf {v}(x,y) = \begin{pmatrix} -0.4(1-\cos (2 \pi x)) \sin (2 \pi y) \\ 0.4 \sin (2 \pi x) (1 - \cos (2 \pi y)) \end{pmatrix}, \quad (x,y) \in [0,1]^2 \end{aligned}$$
(95)

is added to the source term. Figure 6 shows a vector plot for the velocity field \(\mathbf {v}\) on \([0,1]^2\).

Fig. 6
figure 6

Vector plot for the velocity field \(\mathbf {v}\) in experiment 5.3

The initial condition for the fluid motion is given by

$$\begin{aligned} \mathbf {u}_0(x,y) = \mathbf {v}(x,y), \quad (x,y) \in [0,1]^2. \end{aligned}$$
(96)

The initial configuration of the Lagrangian markers is given by

$$\begin{aligned} \mathbf {X}_0(s) = \begin{pmatrix} 0.2\cos (2\pi s) + 0.4\\ 0.1 \sin (2\pi s) + 0.5 \end{pmatrix}, \quad s \in [0,1]. \end{aligned}$$
(97)

Tests are performed with mesh sizes \(N = 4, 8, 16, 32\) and \(m = 64, 128, 256\) and \(K = 200\). At \(t = 2\), the area change is analyzed.

Table 3 records the area change of the immersed boundary in experiment 5.3.The result in Table 3 is less satisfactory when decreasing N and m. We note that we have used a uniform time step size \(\Delta t=1/100\). Since the accuracy of time discretization and the stability of the scheme also affects the area conservation, we test the same model problem with decreasing \(\Delta t\) and report the area change in Table 4. For a fixed m and N, we can observe the area change decreases when decreasing \(\Delta t\), which confirms our assertion. In Table 5, the ratios \(h_x/h_s\) are fixed and the reduction of area change is similar to that in Table 4. This shows that the time discretization is accounted for the relatively poor area conservation in this experiment.

Figure 7 shows the evolution of the immersed boundary throughout \(t = 0\) and \(t = 2\) with \(N = 32\) and \(m = 256\). It can be seen that the Lagrangian markers are driven by the rotating velocity field, and they tend to the circular equilibrium configuration simultaneously.

Table 3 Percentage of area change in experiment 5.3
Table 4 Percentage of area change in experiment 5.3: varying \(\Delta t\) and m with \(N = 16\)
Table 5 Percentage of area change in experiment 5.3: varying \(\Delta t\) and m with \(N=m/8\)
Fig. 7
figure 7

Evolution of the immersed boundary throughout \(t = 0\) and \(t = 2\) in experiment 5.3

Fig. 8
figure 8

Graph of the linearly rescaled sigmoid curve \({\tilde{s}} = {\tilde{G}}(s)\) in experiment 5.4

Table 6 Percentage of area change in experiment 5.4
Fig. 9
figure 9

Profile of the fluid flow and configuration of the Lagrangian markers at \(t = \Delta t\) in experiment 5.4

Fig. 10
figure 10

Configuration of the Lagrangian markers \(\mathbf {X}(s,t)\) at \(t = 0\) in experiment 5.4

Fig. 11
figure 11

Configuration of the Lagrangian markers \(\mathbf {X}(s,t)\) at \(t = 1\) in experiment 5.4

Fig. 12
figure 12

Configuration of the Lagrangian markers \(\mathbf {X}(s,t)\) at \(t = 2\) in experiment 5.4

Fig. 13
figure 13

Evolution of the immersed boundary throughout \(t = 0\) and \(t = 2\) in experiment 5.4

5.4 Stretched Immersed Boundary

We consider a model with the immersed boundary is initially stretched, i.e. the initial configuration of the Lagrangian markers is a non-uniformly spaced circle. We define a sigmoid function \(G: [0,1] \rightarrow (0,1)\) by

$$\begin{aligned} G(s) = \frac{1}{1 + e^{-10+20s}}, \quad s \in [0,1]. \end{aligned}$$
(98)

Let \({\widetilde{G}}\) be obtained by linearly rescaling the range of G onto [0, 1]. More precisely, \(\widetilde{G}\) is defined as

$$\begin{aligned} \widetilde{G}(s) = \frac{G(s) - G(0)}{G(1) - G(0)}, \quad s \in [0,1]. \end{aligned}$$
(99)

Figure 8 shows the graph of the linearly rescaled sigmoid function \(\tilde{s} = \widetilde{G}(s)\).

The initial condition for the fluid motion is given by

$$\begin{aligned} \mathbf {u}_0(x,y) = \mathbf {0}, \quad (x,y) \in [0,1]^2. \end{aligned}$$
(100)

The initial configuration of the Lagrangian markers is given by

$$\begin{aligned} \mathbf {X}_0(s) = \begin{pmatrix} 0.2\cos (2\pi \tilde{G}(s)) + 0.5\\ 0.2 \sin (2\pi \tilde{G}(s)) + 0.5 \end{pmatrix}, \quad s \in [0,1]. \end{aligned}$$
(101)

In the non-uniform parametrization, some markers are farther away from their neighbours. The longer distance between a particle and its neighbouring particles has a higher tension and models a stretched portion of the curve. In this experiment, the immersed boundary is stretched at an interval around \(s = 0.5\).

Fig. 14
figure 14

History of \(E^n\) (red solid line) and \(\eta ^n\) (blue dashed line) throughout \(t = 0\) and \(t = 3\) with \(m=128\) and \(N=32\) in experiment 5.5 (Color figure online)

Fig. 15
figure 15

History of \(E^n\) (red solid line) and \(\eta ^n\) (blue dashed line) throughout \(t = 0\) and \(t = 3\) with \(\kappa =4\) in experiment 5.5 (Color figure online)

Fig. 16
figure 16

History of \(E^n\) (red solid line) and \(\eta ^n\) (blue dashed line) throughout \(t = 0\) and \(t = 3\) with \(K = 120\) in experiment 5.5 (Color figure online)

Tests are performed with mesh sizes \(N = 4, 8, 16, 32\) and \(m = 64, 128, 256\) and \(K = 200\). At \(t = 2\), the area change is analyzed.

Table 6 records the area change of the immersed boundary in experiment 5.4. It can be observed that the area conservation depends heavily on a balance in the number of divisions N in Eulerian mesh and m in Lagrangian mesh. Figure 9 shows the profile of the fluid flow and the configuration of the Lagrangian markers at \(t = \Delta t\) with \(N = 32\) and \(m = 256\). It can be observed that the fluid flows into the immersed boundary at the scretched portion. The flow substantially pushes the immersed boundary in the direction away from the stretched portion. Figures 10, 11 and 12 show the configurations of the immersed boundary \(\mathbf {X}(s,t)\) at different time t with \(N = 32\) and \(m = 256\). Figure 13 shows the evolution of the immersed boundary throughout \(t = 0\) and \(t = 2\) with \(N = 32\) and \(m = 256\). It can be seen that the Lagrangian markers tend to the circular equilibrium configuration and become evenly spaced.

5.5 Numerical Stability

The last numerical experiment is devoted to inspecting the numerical stability of SDG-IBM. According to the results in Sect. 4, if \(\eta ^n\) is sufficiently small, then the method would be stable and the energy would not blow up.

We consider a model proposed in [5]. A balloon with radius R is inflated and placed at rest in the middle of a square domain \([0,1]^2\) filled with fluid. The initial condition for the fluid motion is given by

$$\begin{aligned} \mathbf {u}_0(x,y) = \mathbf {0}, \quad (x,y) \in [0,1]^2. \end{aligned}$$
(102)

The initial configuration of the Lagrangian markers is given by

$$\begin{aligned} \mathbf {X}_0(s) = \begin{pmatrix} R\cos (s/R) + 0.5\\ R \sin (s/R) + 0.5 \end{pmatrix}, \quad s \in [0,2 \pi R]. \end{aligned}$$
(103)

In this experiment, we set \(R = 0.4\).

Tests are performed with mesh sizes \(N = 32\) and \(m = 128\) and \(K = 120, 300, 600\). The elasticity is set to be \(\kappa = 1, 2, 4\). Throughout \(t = 0\) to \(t = 3\), the quantities \(E^n\) and \(\eta ^n\) are analyzed. The parameters are chosen in order to compare our method with FE-IBM in [5, Fig. 3].

Figure 14 records the history of \(E^n\) and \(\eta ^n\) throughout \(t = 0\) and \(t = 3\). It can be observed that our method is stable with the combinations of \(K = 120, \kappa = 2\) and \(K = 300, \kappa = 4\), in which FE-IBM is unstable. This shows our method provides good energy stability. Figures 15 and 16 record the same quantities with varying mesh sizes m and N. Our analysis in Corollary 1 suggests that the ratio m / N should be fixed and the ratio \(m \kappa / K\) should be sufficiently small for stability. From Figures 15 and 16, it can be observed that for a fixed ratio \(m = 4N\), it is sufficient to ensure \(m \kappa / K\) does not exceed a threshold of around 32 / 15 in order to achieve stability.

6 Conclusion

In this paper, we develop a new staggered discontinuous Galerkin immersed boundary method. We use the so-called BE/FE scheme for temporal discretization in order to avoid implicit coupling of nonlinear equations. Stability of our scheme is thus subject to the CFL type time-step restriction. We discuss our staggered discontinuous Galerkin scheme for solving the incompressible Navier–Stokes equations, and also a variational way of treating the fluid–structure interaction which suits our method. The novel splitting of the convection term and the diffusion term realizes the possibility of involving the convection term without loss of energy stability. Another important feature of our method is the improvement in volume conservation through the use of pointwise divergence-free post-processed velocity in driving the Lagrangian markers of the immersed boundary. From the numerical experiments, we see that the exact divergence-free velocity field provides excellent volume conservation properties for the immersed boundary, the robustness of our method in treating immersed curves of different shapes, and also the energy stability of the nonlinear fluid model. For a stretched immersed boundary model, we observe that the area conservation heavily depends on a balance in the number of divisions N in Eulerian grid and m in Lagrangian grid.