Parallel two-scale finite element implementation of a system with varying microstructures

Omar Richardson,Omar Lakkis,Adrian Muntean,Chandrasekhar Venkataraman
DOI: https://doi.org/10.1002/gamm.202470005
2024-10-23
Abstract:We propose a two-scale finite element method designed for heterogeneous microstructures. Our approach exploits domain diffeomorphisms between the microscopic structures to gain computational efficiency. By using a conveniently constructed pullback operator, we are able to model the different microscopic domains as macroscopically dependent deformations of a reference domain. This allows for a relatively simple finite element framework to approximate the underlying PDE system with a parallel computational structure. We apply this technique to a model problem where we focus on transport in plant tissues. We illustrate the accuracy of the implementation with convergence benchmarks and show satisfactory parallelization speed-ups. We further highlight the effect of the heterogeneous microscopic structure on the output of the two-scale systems. Our implementation (publicly available on GitHub) builds on the <a class="link-external link-http" href="http://deal.II" rel="external noopener nofollow">this http URL</a> FEM library. Application of this technique allows for an increased capacity of microscopic detail in multiscale modeling, while keeping running costs manageable.
Numerical Analysis
What problem does this paper attempt to address?
This paper attempts to solve the computational complexity and efficiency problems encountered when dealing with systems with different microstructures in multi - scale modeling. Specifically, the authors propose a new two - scale finite element method, aiming to efficiently simulate and calculate systems containing heterogeneous microstructures. This method improves computational efficiency by using diffeomorphisms between domains and models different microscopic domains as macro - dependent deformations of a reference domain by constructing an appropriate pullback operator. ### Main problems 1. **Computational complexity**: Traditional single - scale models have difficulty handling complex microscopic geometric structures. Especially in practical applications such as plant tissues, the cell size is much smaller than the entire plant size, and the cell shape and position change with the plant's age and location. 2. **Accurate simulation of multi - scale systems**: A method is needed that can effectively capture the influence of the microstructure on the macroscopic behavior while keeping the computational cost under control. 3. **Parallel computing efficiency**: In order to accelerate the calculation, an algorithm that can be effectively parallelized needs to be developed to make full use of modern computing resources. ### Solutions The authors propose the following solutions: - **Two - scale finite element method**: By introducing the pullback operator, different microscopic domains are modeled as deformations of the reference domain, thus simplifying the computational framework. - **Parallel computing structure**: This method adopts a parallel computing structure, which significantly improves the computational efficiency, especially when dealing with large - scale problems. - **Open - source implementation**: This method is implemented based on the open - source deal.II finite element library and has been published on GitHub for easy use and improvement by other researchers. ### Application examples As an example of testing numerical methods, the authors propose a set of partial differential equations (PDEs) that describe the transport processes in plant tissues. These equations describe the transport processes of substances such as water, hormones, and nutrients at the cell scale, especially the transport of auxin. The precise concentration distribution of auxin is crucial for plant development, so this problem is essentially multi - scale. ### Mathematical model Consider the PDE system in the following form: \[ \begin{aligned} &-\Delta_x u = f_u - \int_{\Gamma_I^x} (\kappa_1 u - \kappa_2 v) \, d\sigma_y & \text{in } \Omega, \\ &u = u_0 & \text{on } \partial \Omega_D, \\ &\nabla_x u \cdot n_\Omega = 0 & \text{on } \partial \Omega_N, \\ &-D_v \Delta_y v = f_v & \text{in } \Lambda, \\ &D_v \nabla_y v \cdot n_{Y_x} = \begin{cases} \kappa_1 u - \kappa_2 v & \text{on } \Gamma_I^x, \\ \kappa_3 w - \kappa_4 v & \text{on } \Gamma_O^x, \\ 0 & \text{on } \Gamma_N^x, \end{cases} \\ &-\text{div}(D_w \nabla_x w) = f_w - \int_{\Gamma_O^x} (\kappa_3 w - \kappa_4 v) \, d\sigma_y & \text{in } \Omega, \\ &D_w \nabla_x w \cdot n_\Omega = 0 & \text{on } \partial \Omega. \end{aligned} \] where $\Omega$ is the macroscopic domain and $Y_x$ is associated with each macroscopic point $x\in\Omega$.