Keywords

1 Introduction

Numerical simulation of Fluid-Structure Interaction (FSI) problems is a computational challenge due to its strong nonlinearity, especially in the case of large solid deformations. This challenge is exacerbated in three dimensions due to the need for efficient numerical algorithms to handle the large number of degrees of freedom that are inevitably required. In this paper we generalize our recent one-field Fictitious Domain Method (FDM) [22, 23] from two to three dimensions, enhance the efficiency and robustness of the proposed time-stepping scheme, and demonstrate the resulting algorithm’s capabilities on a number of challenging test problems. We also provide potential benchmark problems to allow results to be compared against those from other schemes in the future.

Lagrangian and Arbitrary Lagrangian-Eulerian (ALE) methods are widely adopted when considering a relatively small solid deformation [6, 11, 15]. Discrete remeshing can be used for large deformations [10, 18], however this can be very costly in the case of three dimensions and can present challenges for mass conservation. The cut finite element method (cutFEM) [4, 5] may also be applied to solve FSI problems [14, 19], although it is not trivial to deal with the discontinuous integral across the elements cut by the moving fluid-solid interface, especially in three dimensional cases. The Fictitious Domain Method (FDM) [1, 3, 8, 12, 13] uses two meshes to represent the fluid and solid separately, which can easily handle large deformation of the solid. However the FDM approach solves a very large equation system: both the velocity in the whole domain (fluid and solid) and the displacement in the solid domain, coupled via a distributed Lagrange multiplier (DLM) which is also an unknown variable. The Immersed Finite Element Method (IFEM) [2, 17, 24, 27] also uses two meshes but only solves for velocity in the whole domain, while the solid information is assembled on the right-hand side of the fluid equation as a prescribed force term. This IFEM approach achieves FSI behaviour through this forcing term, and is therefore relatively efficient in three dimensional simulations compared to the DLM approach. Performance of the IFEM method depends strongly on the fluid and solid properties and usually works well when the solid behaves similarly to the fluid (such as a relatively soft solid) [20]. It has been successfully used, for example, in the area of biomechanics [16, 27].

The one-field FDM approach [22, 23] similarly only solves for one velocity field in the whole domain. However, this proposed method assembles the solid equations and implicitly includes them in the equation system. The one-field FDM approach has the same generality and robustness as the FDM/DLM: both of them solve the fluid equations and solid equations as one system. However the former needs to solve only for one velocity field while the latter solves for fluid velocity, solid displacement and Lagrange multiplier. The proposed one-field FDM may also be regarded as a special linearisation of the implicit IFEM, which however is more robust compared with explicit IFEM and more efficient compared with the implicit IFEM [24], allowing a wide range of solid parameters to be considered and naturally dealing with the case of different densities between fluid and solid [22, 23]. In short, the one-field FDM combines the FDM/DLM advantage of robustness and the classical/explicit IFEM advantage of efficiency. The scheme has been validated through comparison with idealised two-dimensional test cases and against experimental data and simulation results drawn from the literature [21].

In this article, the one-field FDM is extended, implemented and validated in three dimensions for the first time through the use of a newly applied operator splitting scheme. The paper is organized as follows. The control equations and a general finite element weak formulation are introduced in Sect. 2.1 and 2.2 respectively, followed by time discretization in Sect. 2.3. The operator splitting scheme is introduced in Sect. 2.4, followed by the linearisation (implementation detail) in Sect. 2.5 and the numerical algorithm for the final linear equation system in Sect. 2.6. Several three-dimensional numerical tests are given in Sect. 3, and conclusions are presented in Sect. 4.

2 One-Field Fictitious Domain Method

In this section, we review the one-field fictitious domain method [22] and develop it further based upon a three-step operator splitting scheme and the case novel block-matrix preconditioners. The system is described in a manner that is independent of the spatial dimensions, thus ensuring its capability in three dimensions, which is the primary purpose of this paper.

2.1 Control Partial Differentiation Equations

In the following context, \(\varOmega _t^f\subset \mathbb {R}^d\) and \(\varOmega _t^s\subset \mathbb {R}^d\) (\(d=3\) in this article) denote the moving fluid and solid domain respectively, with the moving interface \(\varGamma _t=\overline{\varOmega }_t^f \cap \overline{\varOmega }_t^s\) as shown schematically in Fig. 1. \(\varOmega =\overline{\varOmega }_t^f \cup \overline{\varOmega }_t^s\) is a fixed domain with outer boundary \(\varGamma =\varGamma _D\cup \varGamma _N\), with \(\varGamma _D\) and \(\varGamma _N\) being Dirichlet and Neumann boundaries respectively. We denote by \(\mathbf{X}\) the reference coordinates of the solid, by \(\mathbf{x}=\mathbf{x}(\cdot ,t)\) the current coordinates of the solid, and by \(\mathbf{x}_0\) the initial coordinates of the solid. Notice that we choose \(\mathbf{X}\) to be the stress-free configuration, which may be different to the initial configuration \(\mathbf{x}_0\).

Fig. 1.
figure 1

Schematic diagram of FSI, \( \overline{\varOmega }=\overline{\varOmega }_t^f \cup \overline{\varOmega }_t^s\).

Let \(\rho , \mu , \mathbf{u}, {\varvec{\sigma }}\) and \(\mathbf{g}\) denote the density, viscosity, velocity, stress tensor and acceleration due to gravity respectively. We assume both an incompressible fluid in \(\varOmega _t^f\) and incompressible solid in \(\varOmega _t^s\). The conservation of momentum and conservation of mass therefore take the same form as follows. Momentum equation:

$$\begin{aligned} \rho \frac{d\mathbf{u}}{dt} =\nabla \cdot {\varvec{\sigma }}+\rho \mathbf{g}, \end{aligned}$$
(1)

and continuity equation:

$$\begin{aligned} \nabla \cdot \mathbf{u}=0. \end{aligned}$$
(2)

An incompressible Newtonian constitutive equation in \(\varOmega _t^f\) can be expressed as:

$$\begin{aligned} {\varvec{\sigma }}={\varvec{\sigma }}^f={\varvec{\tau }}^f-p^f\mathbf{I}, \end{aligned}$$
(3)

with \({\varvec{\tau }}^f=\mu ^f \mathrm{D}{} \mathbf{u}^f\) being the deviatoric part of stress \({\varvec{\sigma }}^f\), and \(\mathrm{D}{} \mathbf{u}=\nabla \mathbf{u}+\nabla ^T \mathbf{u}\). An incompressible neo-Hookean solid with viscosity \(\mu ^s\) is assumed in \(\varOmega _t^s\) [3], and the constitutive equation may be expressed as:

$$\begin{aligned} {\varvec{\sigma }}={\varvec{\sigma }}^s={\varvec{\tau }}^s-p^s\mathbf{I}, \end{aligned}$$
(4)

with \( {\varvec{\tau }}^s=c_1\left( \mathbf{F}{} \mathbf{F}^T-\mathbf{I}\right) +\mu ^s\mathrm{D}{} \mathbf{u}^s \) being the deviatoric part of stress \({\varvec{\sigma }}^s\), and \( \mathbf{F} =\frac{\partial \mathbf{x}}{\partial \mathbf{X}} =\frac{\partial \mathbf{x}}{\partial \mathbf{x}_0} \frac{\partial \mathbf{x}_0}{\partial \mathbf{X}} =\nabla _0\mathbf{x}\nabla _\mathbf{X}{} \mathbf{x}_0 \) being the deformation tensor of the solid, and \(c_1\) is a solid material parameter. Finally the system is completed with continuity of velocity \(\mathbf{u}^f=\mathbf{u}^s\) and normal stress \({\varvec{\sigma }}^f\mathbf{n}^s= {\varvec{\sigma }}^s\mathbf{n}^s\) on interface \(\varGamma _t\), and standard Dirichlet/Neumann boundary (on \(\varGamma _D\)/\(\varGamma _N\)) and initial conditions.

2.2 Finite Element Weak Form

In the following context, let \(L^2(\omega )\) be the square integrable functions in domain \(\omega \), and \(H^1(\omega )=\left\{ u:u, \frac{\partial u}{\partial x_i}\in L^2(\omega ) \quad \mathrm{for}\quad i=1,\cdots ,d\right\} \). We also denote by \(H_0^1(\omega )\) the subspace of \(H^1(\omega )\) whose functions have zero values on the Dirichlet boundary of \(\omega \), and denote by \(L_0^2(\omega )\) the subspace of \(L^2(\omega )\) whose functions have zero mean value. Let \( {p}=\left\{ \begin{matrix} {{p}^f \quad in \quad \varOmega _t^f} \\ {{p}^s \quad in \quad \varOmega _t^s} \\ \end{matrix}\right. \). Given \(\mathbf{v}\in H_0^1(\varOmega )^d\), we perform the following symbolic operations:

$$\begin{aligned} \begin{aligned} \int _{\varOmega }\mathrm{Eq.}\,(1)\left( {\varvec{\sigma }}\right) \cdot \mathbf{v}&\equiv \int _{\varOmega _t^f}\mathrm{Eq.}\,(1)\left( {\varvec{\sigma }}^f\right) \cdot \mathbf{v} +\int _{\varOmega _t^s}\mathrm{Eq.}\,(1)\left( {\varvec{\sigma }}^s\right) \cdot \mathbf{v}\\&\equiv \int _{\varOmega }\mathrm{Eq.}\,(1)\left( {\varvec{\sigma }}^f\right) \cdot \mathbf{v} +\int _{\varOmega _t^s}\left( \mathrm{Eq.}\,(1)\left( {\varvec{\sigma }}^s\right) -\mathrm{Eq.}\,(1)\left( {\varvec{\sigma }}^f\right) \right) \cdot \mathbf{v}. \end{aligned} \end{aligned}$$

Integrating the stress terms by parts, the above operations, using constitutive equations (3) and (4), give:

$$\begin{aligned} \begin{aligned}&\rho ^f\int _{\varOmega }\frac{d\mathbf{u}}{dt} \cdot \mathbf{v} +\int _{\varOmega }{\varvec{\tau }^f}:\nabla \mathbf{v} -\int _{\varOmega }p\nabla \cdot \mathbf{v} +\left( \rho ^s-\rho ^f\right) \int _{\varOmega _t^s}\frac{d\mathbf{u}}{dt}\cdot \mathbf{v}\\ +&\int _{\varOmega _t^s}\left( {\varvec{\tau }^s}-{\varvec{\tau }^f}\right) :\nabla \mathbf{v} =\int _{\varOmega }\rho ^f\mathbf{g}\cdot \mathbf{v} +\int _{\varOmega _t^s}\left( \rho ^s-\rho ^f\right) \mathbf{g}\cdot \mathbf{v} +\int _{\varGamma _N}\bar{\mathbf{h}}\cdot \mathbf{v}, \end{aligned} \end{aligned}$$
(5)

where \(\bar{h}\) denotes the prescribed normal stress on \(\varGamma _N\). Note that the integrals on the interface \(\varGamma _t\) are cancelled out due to the continuity of normal stress: \({\varvec{\sigma }}^f\mathbf{n}^s= {\varvec{\sigma }}^s\mathbf{n}^s\), because they are internal forces for the whole FSI system. Combining with the following symbolic operations for \(q\in L^2(\varOmega )\),

$$ -\int _{\varOmega _t^f}\mathrm{Eq.}\,(2)q -\int _{\varOmega _t^s}\mathrm{Eq.}\,(2)q \equiv -\int _{\varOmega }\mathrm{Eq.}\,(2)q, $$

leads to the weak form of the FSI system as follows.

Given \(\mathbf{u}_0\) and \(\varOmega _0^s\), find \(\mathbf{u}(t)\in H^1(\varOmega )^d\), \(p(t) \in L^2(\varOmega )\) and \(\varOmega _t^s\), such that for \(\forall \mathbf{v}\in H_0^1(\varOmega )^d\), \(\forall q \in L^2(\varOmega )\), the following equation holds:

$$\begin{aligned} \begin{aligned}&\rho ^f\int _{\varOmega }\frac{\partial \mathbf{u}}{\partial t} \cdot \mathbf{v} +\rho ^f \int _{\varOmega }\left( \mathbf{u}\cdot \nabla \right) \mathbf{u}\cdot \mathbf{v} +\frac{\mu ^f}{2}\int _{\varOmega }\mathrm{D}{} \mathbf{u}:\mathrm{D}{} \mathbf{v} -\int _{\varOmega }p\nabla \cdot \mathbf{v} \\ -&\int _{\varOmega } q\nabla \cdot \mathbf{u} +\rho ^{\delta }\int _{\varOmega _t^s}\frac{\mathfrak {d}{} \mathbf{u}}{\mathfrak {d} t}\cdot \mathbf{v} +\frac{\mu ^\delta }{2}\int _{\varOmega _t^s}\mathrm{D}{} \mathbf{u}:\mathrm{D}{} \mathbf{v} \\ +\,&c_1\int _{\varOmega _t^s}\left( {\mathbf{F}{} \mathbf{F}^T-\mathbf{I}}\right) :\nabla \mathbf{v} =\rho ^f\int _{\varOmega }{} \mathbf{g}\cdot \mathbf{v} +\rho ^\delta \int _{\varOmega _t^s}{} \mathbf{g}\cdot \mathbf{v} +\int _{\varGamma _N}\bar{\mathbf{h}}\cdot \mathbf{v}, \end{aligned} \end{aligned}$$
(6)

where \(\rho ^\delta =\rho ^s-\rho ^f\) and \(\mu ^\delta =\mu ^s-\mu ^f\), and the integral over \({\varOmega _t^s}\), \(\frac{\mathfrak {d}(\cdot )}{\mathfrak {d}t}\) is the time derivative with respect to a frame moving with the solid velocity \(\mathbf{u}^s=\left. \mathbf{u}\right| _{\varOmega _t^s}\).

2.3 Discretisation in Time

Using the backward Euler method to discretise in time, Eq. (6) may be approximated as follows.

Given \(\mathbf{u}_n\), \(p_n\) and \(\varOmega _n^s\), find \(\mathbf{u}_{n+1}\in H^1(\varOmega )^d\), \(p_{n+1} \in L^2(\varOmega )\) and \(\varOmega _{n+1}^s\), such that for \(\forall \mathbf{v}\in H_0^1\left( \varOmega \right) ^d\), \(\forall q\in L^2(\varOmega )\), the following equation holds:

$$\begin{aligned} \begin{aligned}&\rho ^f\int _{\varOmega }\frac{\mathbf{u}_{n+1}-\mathbf{u}_n}{\varDelta t} \cdot \mathbf{v} +\rho ^f\int _{\varOmega }\left( \mathbf{u}_{n+1}\cdot \nabla \right) \mathbf{u}_{n+1}\cdot \mathbf{v} \\ +\,&\frac{\mu ^f}{2}\int _{\varOmega }\mathrm{D}{} \mathbf{u}_{n+1}:\mathrm{D}{} \mathbf{v} -\int _{\varOmega }p_{n+1}\nabla \cdot \mathbf{v} -\int _{\varOmega } q\nabla \cdot \mathbf{u}_{n+1}\\ +\,&\rho ^{\delta }\int _{\varOmega _{n+1}^s}\frac{\mathbf{u}_{n+1}-\mathbf{u}_n}{\varDelta t} \cdot \mathbf{v} +\frac{\mu ^\delta }{2}\int _{\varOmega _{n+1}^s}\mathrm{D}{} \mathbf{u}_{n+1}:\mathrm{D}{} \mathbf{v} \\ +\,&c_1\int _{\varOmega _{n+1}^s}\left( {\mathbf{F}{} \mathbf{F}^T-\mathbf{I}}\right) :\nabla \mathbf{v} = \rho ^f\int _{\varOmega }{} \mathbf{g}\cdot \mathbf{v} +\rho ^\delta \int _{\varOmega _{n+1}^s}{} \mathbf{g}\cdot \mathbf{v} +\int _{\varGamma _N}\bar{\mathbf{h}}\cdot \mathbf{v}, \end{aligned} \end{aligned}$$
(7)

and \(\varOmega _{n+1}^s\) is updated from \(\varOmega _n^s\) by the following formula:

$$\begin{aligned} \varOmega _{n+1}^s=\left\{ \mathbf{x}:\mathbf{x}=\mathbf{x}_n+\varDelta t\mathbf{u}_{n+1}, \mathbf{x}_n\in \varOmega _n^s \right\} . \end{aligned}$$
(8)

2.4 An Operator Splitting Scheme

The formulation of (7) is implicit. However we shall solve it semi-implicitly via the following operator spitting scheme which is based upon [9].

  1. (1)

    Convection step:

    $$\begin{aligned} \int _{\varOmega }\frac{\mathbf{u}_{n+1/3}-\mathbf{u}_n}{\varDelta t} \cdot \mathbf{v} +\int _{\varOmega }\left( \mathbf{u}_{n+1/3}\cdot \nabla \right) \mathbf{u}_{n+1/3}\cdot \mathbf{v} =0. \end{aligned}$$
    (9)
  2. (2)

    Diffusion step:

    $$\begin{aligned} \begin{aligned}&\rho ^f\int _{\varOmega }\frac{\mathbf{u}_{n+2/3}-\mathbf{u}_{n+1/3}}{\varDelta t} \cdot \mathbf{v} +\frac{\mu ^f}{2}\int _{\varOmega }\mathrm{D}{} \mathbf{u}_{n+2/3}:\mathrm{D}{} \mathbf{v} \\ +\,&\rho ^\delta \int _{\varOmega _n^s}\frac{\mathbf{u}_{n+2/3}-\mathbf{u}_n}{\varDelta t} \cdot \mathbf{v} +\frac{\mu ^\delta }{2}\int _{\varOmega _n^s}\mathrm{D}_n\mathbf{u}_{n+2/3}:\mathrm{D}_n\mathbf{v} \\ +\,&c_1\int _{\varOmega _n^s}\left( {\mathbf{F}_{n+2/3}{} \mathbf{F}_{n+2/3}^T-\mathbf{I}}\right) :\nabla _n\mathbf{v} \\ =\,&\rho ^f\int _{\varOmega }{} \mathbf{g}\cdot \mathbf{v} +\rho ^\delta \int _{\varOmega _n^s}{} \mathbf{g}\cdot \mathbf{v} +\int _{\varGamma _N}\bar{\mathbf{h}}\cdot \mathbf{v}. \end{aligned} \end{aligned}$$
    (10)
  3. (3)

    Pressure step:

    $$\begin{aligned} \rho ^f\int _{\varOmega }\frac{\mathbf{u}_{n+1}-\mathbf{u}_{n+2/3}}{\varDelta t} \cdot \mathbf{v} -\int _{\varOmega }p_{n+1}\nabla \cdot \mathbf{v}-\int _{\varOmega } q\nabla \cdot \mathbf{u}_{n+1} =0. \end{aligned}$$
    (11)

In the above, \(\nabla _n(\cdot )\) represents the divergence in the current coordinates at \(t=t_n\) and \(\mathrm{D}_n=\nabla _n+\nabla _n^T\). Note that the variables \(\mathbf{u}_{n+1/3}\) and \(\mathbf{u}_{n+2/3}\) are just intermediate values, not specifically the velocity at time \(t=t_n+\frac{\varDelta t}{3}\) or \(t=t_n+\frac{2\varDelta t}{3}\). The notation \(\mathbf{F}_{n+1/3}\) or \(\mathbf{F}_{n+2/3}\) is interpreted as follows:

$$\begin{aligned} \mathbf{F}_t=\frac{\partial \mathbf{x}_t}{\partial \mathbf{X}} =\nabla _\mathbf{X}\left( \mathbf{x}_n+\mathbf{u}_t\varDelta t\right) , \end{aligned}$$
(12)

with \(t=n+1/3\) or \(n+2/3\).

Using this splitting scheme, standard approaches can be taken to solve the pure convection equation (9) (see [9]), and iterative methods with an efficient preconditioner can be applied to solve the “degenerate” Stokes Equations (11) (see Sect. 2.6 of [7, 21]). The main challenge is in how to approximate the term \(\mathbf{F}_{n+2/3}{} \mathbf{F}_{n+2/3}^T-\mathbf{I}\) in Eq. (10), which is nonlinearly related to the solid displacement and hence to the solid velocity. In the following subsection we focus on expressing and linearising \(\mathbf{F}_{n+2/3}{} \mathbf{F}_{n+2/3}^T-\mathbf{I}\) in terms of velocity \(\mathbf{u}_n\).

2.5 Linearisation of the Diffusion Step

The specific choice of linearisation is the core of this proposed one-field FDM approach, and is what makes it distinctive from all other schemes. Let \(\mathbf{F}_{n+2/3}{} \mathbf{F}_{n+2/3}^T-\mathbf{I}\) be denoted by \(\mathbf{F}_t\mathbf{F}_t^T-\mathbf{I}=\mathbf{s}_t\) with \(t=n+2/3\), then \({\mathbf{s}_t}\) can be computed as follows:

$$\begin{aligned} {\mathbf{s}_t} =\mathbf{F}_t\mathbf{F}_t^T-\mathbf{I} =\left( \nabla _\mathbf{X}{} \mathbf{x}_t\nabla _\mathbf{X}^T\mathbf{x}_t-\mathbf{I}\right) . \end{aligned}$$
(13)

Using the chain rule, this last equation can also be expressed as:

$$\begin{aligned} {\mathbf{s}_t} =\nabla _n\mathbf{x}_t \nabla _\mathbf{X}{} \mathbf{x}_n \nabla _\mathbf{X}^T\mathbf{x}_n \nabla _n^T\mathbf{x}_t -\mathbf{I} +\nabla _n\mathbf{x}_t \nabla _n^T\mathbf{x}_t -\nabla _n\mathbf{x}_t \nabla _n^T\mathbf{x}_t \end{aligned}$$
(14)

or

$$\begin{aligned} {\mathbf{s}_t} =\nabla _n\mathbf{x}_t \nabla _n^T\mathbf{x}_t - \mathbf{I} +\nabla _n\mathbf{x}_t\left( \nabla _\mathbf{X}{} \mathbf{x}_n \nabla _\mathbf{X}^T\mathbf{x}_n-\mathbf{I}\right) \nabla _n^T\mathbf{x}_t. \end{aligned}$$
(15)

Then \({\mathbf{s}_t}\) can be expressed based on the previous coordinate \(\mathbf{x}_n\) as follows:

$$\begin{aligned} {\mathbf{s}_t} =\nabla _n\mathbf{x}_t \nabla _n^T\mathbf{x}_t - \mathbf{I} +\nabla _n\mathbf{x}_t {\mathbf{s}_{n}} \nabla _n^T\mathbf{x}_t. \end{aligned}$$
(16)

Using \(\mathbf{x}_t=\mathbf{x}_n+\varDelta t\mathbf{u}_t\) (see (12)), this can finally be expressed as:

$$\begin{aligned} \begin{aligned} {\mathbf{s}_{t}}&=\varDelta t\left( \nabla _n\mathbf{u}_{t}+\nabla _n^T\mathbf{u}_{t}+\varDelta t\nabla _n\mathbf{u}_{t}\nabla _n^T\mathbf{u}_{t}\right) +{\mathbf{s}_n} \\&+\varDelta t^2\nabla _n\mathbf{u}_{t} {\mathbf{s}_n} \nabla _n^T\mathbf{u}_{t} +\varDelta t\nabla _n\mathbf{u}_{t} {\mathbf{s}_n} +\varDelta t {\mathbf{s}_n} \nabla _n^T\mathbf{u}_{t}. \end{aligned} \end{aligned}$$
(17)

There are two nonlinear terms in this equation, which may be linearised as

$$\begin{aligned} \nabla _n\mathbf{u}_{t}\nabla _n^T\mathbf{u}_{t} =\nabla _n\mathbf{u}_{t}\nabla _n^T\mathbf{u}_n +\nabla _n\mathbf{u}_n\nabla _n^T\mathbf{u}_{t} -\nabla _n\mathbf{u}_n\nabla _n^T\mathbf{u}_n, \end{aligned}$$
(18)

and

$$\begin{aligned} \nabla _n\mathbf{u}_{t} {\mathbf{s}_n} \nabla _n^T\mathbf{u}_{t} =\nabla _n\mathbf{u}_{t} {\mathbf{s}_n} \nabla _n^T\mathbf{u}_n +\nabla _n\mathbf{u}_n {\mathbf{s}_n} \nabla _n^T\mathbf{u}_{t} -\nabla _n\mathbf{u}_n {\mathbf{s}_n} \nabla _n^T\mathbf{u}_n. \end{aligned}$$
(19)

Substituting \(\mathbf{s}_{n+2/3}={\mathbf{F}_{n+2/3}{} \mathbf{F}_{n+2/3}^T-\mathbf{I}}\), using expressions (17), (18) and (19), into the diffusion step (10), and neglecting terms of \(O\left( \varDelta t^2\right) \), after some algebra we produce the one-field FDM formulation:

$$\begin{aligned} \begin{aligned}&\rho ^f\int _{\varOmega }\frac{\mathbf{u}_{n+2/3}-\mathbf{u}_{n+1/3}}{\varDelta t} \cdot \mathbf{v} +\frac{\mu ^f}{2}\int _{\varOmega }\mathrm{D}{} \mathbf{u}_{n+2/3}:\mathrm{D}{} \mathbf{v} \\ +\,&\rho ^\delta \int _{\varOmega _n^s}\frac{\mathbf{u}_{n+2/3}-\mathbf{u}_n}{\varDelta t} \cdot \mathbf{v} +\frac{\mu ^\delta +\varDelta t{c}_1}{2}\int _{\varOmega _n^s}\mathrm{D}_n\mathbf{u}_{n+2/3}:\mathrm{D}_n\mathbf{v} \\ +\,&\varDelta t{c}_1\int _{\varOmega _n^s}\left( \nabla _n\mathbf{u}_{n+2/3}{} \mathbf{s}_n+\mathbf{s}_n\nabla _n^T\mathbf{u}_{n+2/3}\right) :\nabla _n\mathbf{v} \\ =\,&\rho ^f\int _{\varOmega }{} \mathbf{g}\cdot \mathbf{v} +\rho ^\delta \int _{\varOmega _n^s}{} \mathbf{g}\cdot \mathbf{v} +\int _{\varGamma _N}\bar{\mathbf{h}}\cdot \mathbf{v} -c_1\int _{\varOmega _n^s}{} \mathbf{s}_n:\nabla _n\mathbf{v}. \end{aligned} \end{aligned}$$
(20)

2.6 Iterative Linear Algebra Solver

In this section, we shall discuss the numerical algorithms in order to solve the final linear equations from the diffusion step (20) and pressure step (11). For convection step, we use the Taylor-Galerkin method in this paper [9]. Let us write Eq. (20) in an operator matrix form as follows:

$$\begin{aligned} \mathbf{A}_n\mathbf{u}_{n+2/3}=\mathbf{b}_n, \end{aligned}$$
(21)

where

$$ \mathbf{A}_n=\mathbf{M}/\varDelta t+\mathbf{K}+\mathbf{P}_n^T\left( \mathbf{M}_n^s/\varDelta t+\mathbf{K}_n^s\right) \mathbf{P}_n, $$

and

$$ \mathbf{b}_n=\mathbf{f}+\mathbf{P}_n^T\mathbf{f}_n^s+\mathbf{M}{} \mathbf{u}_{n+1/3}/\varDelta t+\mathbf{P}_n^T\mathbf{M}_n^s\mathbf{P}_n\mathbf{u}_n/\varDelta t. $$

The above matrix operators are defined as:

$$ \int _{\varOmega }{} \mathbf{M}{} \mathbf{u}\cdot \mathbf{v}=\rho ^f\int _{\varOmega }{} \mathbf{u}\cdot \mathbf{v}, \quad \int _{\varOmega }{} \mathbf{K}{} \mathbf{u}\cdot \mathbf{v}=\frac{\mu ^f}{2}\int _{\varOmega }\mathrm{D}{} \mathbf{u}:\mathrm{D}{} \mathbf{v}, $$
$$ \int _{\varOmega _n^s}{} \mathbf{K}_n^s\mathbf{u}\cdot \mathbf{v} =\frac{\mu ^\delta +\varDelta t{c}_1}{2}\int _{\varOmega _n^s}\mathrm{D}{} \mathbf{u}:\mathrm{D}{} \mathbf{v} +\varDelta t{c}_1\int _{\varOmega _n^s}\left( \nabla _n\mathbf{u}{} \mathbf{s}_n+\mathbf{s}_n\nabla _n^T\mathbf{u}\right) :\nabla _n\mathbf{v}, $$
$$ \int _{\varOmega }{} \mathbf{f}\cdot \mathbf{v}=\rho ^f\int _{\varOmega }{} \mathbf{g}\cdot \mathbf{v} +\int _{\varGamma _N}\bar{\mathbf{h}}\cdot \mathbf{v}, \quad \int _{\varOmega _n^s}{} \mathbf{f}_n^s\cdot \mathbf{v} =\rho ^\delta \int _{\varOmega _n^s}{} \mathbf{g}\cdot \mathbf{v} -c_1\int _{\varOmega _n^s}{} \mathbf{s}_n:\nabla _n\mathbf{v}, $$

where \(\mathbf{u}, \mathbf{v} \in H^1(\omega )^d\) with \(\omega \) being \(\varOmega \) or \(\varOmega _n^s\). Finally \(\mathbf{P}_n\) is a restriction from \(H^1(\varOmega )^d\) to \(H^1(\varOmega _n^s)^d\) (\(\mathbf{P}_n^T\) is the corresponding injection from \(H^1(\varOmega _n^s)^d\) to \(H^1(\varOmega )^d\)): \( \mathbf{P}_n\mathbf{u}=\mathbf{u}^s=\left. \mathbf{u}\right| _{\varOmega _n^s} \). We use the finite element interpolation to approximate \(\mathbf{P}_n\) after discretisation in space.

A preconditioned Conjugate Gradient method can efficiently solve Eq. (21). We use the incomplete Cholesky decomposition of matrix \( {\mathbf{M/}\varDelta t + \mathbf{K}} \) as a preconditioner in order to solve Eq. (21). Very good convergence performance can be observed from our numerical tests (although the precise performance of the linear algebraic solver is not the topic of this article).

Similarly, the “degenerate Stokes” problem (pressure step (11)) can also be expressed in an operator matrix form:

$$\begin{aligned} \begin{bmatrix} \mathbf{M}/\varDelta t &{} \mathbf{B} \\ \mathbf{B}^T &{}\mathbf{0} \end{bmatrix} \begin{pmatrix} \mathbf{u}_{n+1} \\ \mathbf{p}_{n+1} \end{pmatrix} = \begin{pmatrix} {\mathbf{M}{} \mathbf{u}_{n+2/3}/\varDelta t} \\ \mathbf{0} \end{pmatrix} , \end{aligned}$$
(22)

where, \(\forall \mathbf{v}\) in \(H^1(\varOmega )^d\) and \(q \in L^2(\varOmega )\), \( \int _{\varOmega }\left( \mathbf{B}{} \mathbf{v}\right) q =-\int _{\varOmega }q\nabla \cdot \mathbf{v}. \) We use the MinRes algorithm [7] to solve the system with the following preconditioner:

$$\begin{aligned} \begin{bmatrix} \mathbf{M} &{} \\ &{}\mathbf{\varDelta }_p \end{bmatrix} , \quad \mathrm{where} \int _{\varOmega }\left( \mathbf{\varDelta }_pp\right) q=\int _{\varOmega }\nabla p\cdot \nabla q, \quad \forall p,q \in H^1(\varOmega ). \end{aligned}$$
(23)

We justify this since we can derive a Schur complement in the form of \(\mathbf{S}=\mathbf{B}^T\mathbf{M}^{-1}{} \mathbf{B}\). The operators that are discretised in this form imply that \(\mathbf{S}\) will be spectrally equivalent to a discrete Laplacian. Hence we expect this preconditioner will be effective for this system, similarly to analysis for Stokes equation [7].

3 Numerical Experiments

In the following numerical tests, the convection and diffusion steps are discretised with quadratic finite elements (tri-quadratic hexahedra and quadratic tetrahedra), and the pressure step is discretised with the Taylor-Hood element. For stability it is sufficient that \(\mu ^\delta \ge 0\) [21, 22], however for simplicity, and to be consistent with [2, 17, 27] for example, we assume \(\mu ^\delta =0\) in these tests.

3.1 Oscillating Ball

In this section, we consider a 3D oscillating ball which is an extension of the 2D disc in [23, 28]. We use this example to test stability of the proposed approach by investigating the evolution of total energy:

$$\begin{aligned} \begin{aligned} E_{total}(t_n)&=\frac{\rho ^f}{2}\int _{\varOmega }\left| \mathbf{u}_{n}\right| ^2 +\frac{\rho ^\delta }{2}\int _{\varOmega _n^s}\left| \mathbf{u}_{n}\right| ^2 \\&+\frac{\varDelta t\mu ^f}{2}\sum _{k=1}^{n}\int _{\varOmega }\mathrm{D}{} \mathbf{u}_{k}:\mathrm{D}{} \mathbf{u}_{k} +\frac{c_1}{2}\int _{\varOmega _\mathbf{X}^s}\left( tr_{\mathbf{F}_{n}{} \mathbf{F}_{n}^T}-d\right) . \end{aligned} \end{aligned}$$
(24)

The four different energy contributions/terms in the above equation have the following respective meanings: Kinetic energy of fluid plus fictitious fluid, kinetic energy of solid minus fictitious fluid, viscous dissipation (over n time steps of size \(\varDelta t\)) and the potential energy of the solid.

The ball is initially located at the centre of \(\varOmega =[0,1]\times [0,1]\times [0,0.6]\) with a radius of 0.2. Using the property of symmetry this computation is carried out on 1/8 of domain \(\varOmega \): \([0,0.5]\times [0,0.5]\times [0,0.3]\). The initial velocities of x and y components are the same as that used in [22, 28], which are prescribed by the stream function

$$\begin{aligned} \varPhi =\varPhi _0\mathrm{sin}(ax)\mathrm{sin}(by), \end{aligned}$$
(25)

with \(\varPhi _0=5.0\times 10^{-2}\) and \(a=b=2\pi \). The z component of velocity is initially set to be 0. In this test, \(\rho ^f=1\), \(\mu ^f=0.01\), \(\rho ^s=1.5\) and \(c_1=1\). In order to visualise the mesh and deformation of the solid, a snapshot of fluid velocity and pressure are presented in Fig. 2, and the corresponding deformed solid is displayed in Fig. 3(a). It can be seen from Fig. 3(b) that the total energy is nonincreasing, which is an indication of stability. In addition, the total energy converges to the initial system energy as we reduce the size of the time step, which shows the desired energy conservation property of the proposed scheme.

Fig. 2.
figure 2

Distribution of velocity norm and pressure on the fluid mesh at \(t=0.21\) (the ball is maximally stretched), \(\varDelta t=5.0\times 10^{-3}\).

Fig. 3.
figure 3

Solid deformation corresponding to Fig. 2 and Evolution of the energy ratio.

3.2 Oscillating Cylinder

In this test we consider a cylindrical pillar oscillating in a cuboid channel as shown in Fig. 4, which is a 3D extension of the 2D leaflet in [13, 22, 25]. We use this example to test the mesh convergence of the proposed scheme. The size of the cuboid is: length \(L=3\), height \(H=1\) and width \(W=0.5\). The cylinder is located at the center of the cuboid’s base, with radius of \(r=0.05\) and height \(h=0.8\). We use a symmetry boundary condition on the top, front and back surfaces of the cuboid. All the velocity components are fixed to be zero at the bottom of the cuboid, and the inlet and outlet flow are defined by:

$$\begin{aligned} u_x=15y\left( 2-y/H\right) sin\left( 2\pi t\right) ,\quad u_y=u_z=0. \end{aligned}$$
(26)

We use the same material properties as used in [13, 22, 25] for the 2D leaflet (see Table 1), which is a natural extension of the corresponding 2D problem with similar boundary conditions. We use a tri-quadratic hexahedras fluid mesh of size \(10\times 20\times 60\) (\(width \times height \times length\)) for a coarse mesh, \(16\times 32\times 96\) for a medium mesh and \(20\times 40\times 120\) for a fine mesh. We use a linear tetrahedral solid mesh of 10304 elements with 2675 vertices for a coarse mesh, 19040 elements with 4786 vertices for a medium mesh and 38080 elements with 8883 vertices for a fine mesh. A stable small time step \(\varDelta t=1.0\times 10^{-4}\) is adopted for all the cases. In order to visualise the results of this simulation, snapshots of the velocity norm and stream lines in the background domain and the solid deformations are presented in Fig. 5 and 6 respectively. The displacement of initial point (1.55, 0.8, 0.5) (the top of the cylinder) for three different meshes is plotted in Fig. 7 as a function of time, from which mesh convergence with regard to the displacement is observed (the medium and fine mesh results are almost indistinguishable in these plots).

Fig. 4.
figure 4

Sketch of the oscillating cylinder in a cuboid.

Table 1. Material properties for the oscillating cylinder and oscillating tri-leaflets.
Fig. 5.
figure 5

Velocity norm and stream lines using a medium mesh at \(t=2.3\). The shadow shows the deformation of the solid corresponding to the case of \(t=2.3\) in Fig. 6.

Fig. 6.
figure 6

Solid deformation at three different stages.

Fig. 7.
figure 7

Displacement at point (1.55, 0.8, 0.25) versus time.

Fig. 8.
figure 8

Computational domain for the test problem of tri-leaflets.

3.3 Oscillating Tri-Leaflets

In this section we consider a 3D circular tube with flexible, opening tri-leaflets. A similar case has been studied in [26]. The computational domain is shown in Fig. 8 with \(L=2\) and \(R=0.5\) in this test. Note that there is a small gap (with the angle \(\alpha =0.4^\circ \) as shown in Fig. 8(b)) between the three parts of the tri-leaflets in order to avoid contact, which is not currently included in our model. The tube walls are no-slip boundaries, and the inlet and outlet flow are prescribed by:

$$ u_x=15r\left( 1-r/R\right) \left( 1+r/R\right) sin\left( 2\pi t\right) ,\quad r=\sqrt{y^2+z^2},\quad u_y=u_z=0, $$
Fig. 9.
figure 9

Snapshot of velocity norm and stream lines in background domain and x-component velocity on the solid mesh at \(t=0.2\).

Fig. 10.
figure 10

The x-component displacement at the tip of each of the tri-leaflets.

Fig. 11.
figure 11

The velocity of x component at different times for the tri-leaflets using the coarse mesh.

which is an extension of formula (26). The material properties for the fluid and solid are presented in Table 1. Two different meshes are used to test this problem: a coarse mesh of 12750 tri-quadratic hexahedra with 106151 nodes and a fine mesh of 90000 tri-quadratic hexahedra with 735861 nodes in order to discretise the cube; a coarse mesh of 7390 linear tetrahedra with 2657 vertices and a fine mesh of 27460 linear tetrahedra with 8917 vertices in order to discretise the tri-leaflets. The density of the background mesh can be observed in Fig. 9, which also presents a snapshot of the velocity norm and stream lines. The solid mesh can be observed in Fig. 11, which also shows the deformation of the tri-leaflets with horizontal velocity (x component) at different stages in order to visualise the pattern of the oscillation. The displacement at one of the tri-leaflet tips is plotted as a function of time in Fig. 10, from which it can be seen that the coarse mesh leads to small oscillation, however it is not present in the fine mesh simulation. The maximal fluid velocity is \(\mathbf{u}_x=18.2\) at the centre of the channel when the tri-leaflets are completely open, and the maximal solid velocity at the leaflet tip is \(\mathbf{u}_x=18.2\) when the tri-leaflets are completely close.

4 Conclusions

In this article the one-field Fictitious Domain Method (FDM) [22] is extended in three ways: through an efficient operator splitting scheme, the implementation of block-matrix preconditioning and into three space dimensions. One numerical example is presented in order to validate the energy conservation, a second is used to test mesh convergence, and the last numerical example is extended from a two-dimensional benchmark for comparison and, we believe, can act as a 3D benchmark for future comparison. It can be seen from these tests that the one-field FDM approach may be adopted to simulate a variety of FSI problems with large solid deformation in three space dimensions. We know from our 2D tests that, for soft solids, execution times are comparable with an IFEM implementation: and considerably faster as the solid becomes more stiff (capable of using a larger time step). Consequently we propose the one-field FDM as a general approach that combines that robustness of FDM/DLM and the computational efficiency of IFEM.