High-order computational fluid dynamics (CFD) methods, such as the spectral/hp element methods, are able to capture a large range of both temporal and spatial scales thanks to their low dispersion and diffusion error Karniadakis and Sherwin (2005). They are however highly susceptible to inaccuracies in the geometrical representation of computational domains. For that reason, curvilinear high-order meshes must be used to attain the expected exponential rates of convergence. One typical procedure used to generate curvilinear high-order meshes involves the transformation of a coarse linear mesh into a geometry-accurate high-order mesh by projection of high-order nodes onto the boundaries. This procedure is unfortunately prone to the creation of highly deformed and sometimes invalid elements and optimisation of the mesh is often required.
Recent work has been made by Turner et al. Turner et al. (2016) to unify past approaches to mesh optimisation into a generalised framework. A variational approach is used in which a functional of the deformation energy is optimised by a nonlinear algorithm. The approach has proved to be robust in its ability to improve meshes and turned out to be highly scalable. The optimisation process is applied on the mapping between the ideal and the curvilinear high-order elements. This directly results in the relocation of nodes to minimise the deformation energy with respect to the ideal element.
The purpose of this work is to demonstrate the extensibility of this method to mesh adaptation. Adaptive meshes most often rely on a number of mesh manipulation strategies such as local or global remeshing, edge manipulation, element splitting/collapsing or a combination of them. This research note however deals exclusively with moving meshes where nodes are relocated, also known as r-adaptation. r-adaptation has been studied for many years and it has interesting advantages Huang and Russell (2011); Budd et al. (2009) in comparison with the other two types of adaptation, h- and p
-. Firstly it keeps the number of degrees of freedom constant which is important when computational resources are limited. For a given amount of resources, one would be able to refine in regions of interest by relocating nodes, and therefore degrees of freedom, in said regions. This implies a loss of accuracy in coarsened regions, which is however insignificant in comparison to the global gain of accuracy. Additionally, moving meshes preserve connectivities and therefore keep data structures unchanged. The construction of data structures in a distributed memory parallel context is always accompanied by large overhead. In this context,r-adaptation could prove useful in unsteady simulations for flow feature tracking without the need of a restart after every adaptation of the mesh.
This variational approach to r-adaptation proposes to use the algorithm employed in variational mesh optimisation to achieve refinement in target areas. While the mesh optimisation procedure operates on the linear-to-curvilinear mapping, adaptation naturally occurs when the mapping between the reference and the linear elements is modified by means of metric tensors. Section 2 provides an overview of the variational framework with Section 2.1 summarising the approach to mesh optimisation and Section 2.2 describing the transformation of the framework for r-adaptation. In Section 3, we present preliminary results of adaptive meshes using analytical target functions. We bring this research note to an end in Section 4 with a quick summary and an outlook to future developments and challenges.
2 Variational framework
2.1 Mesh optimisation
The variational framework used in these developments is based on the work of Turner et al. Turner et al. (2016). A curvilinear high-order element can be represented by a mapping of a reference element as shown in Fig. 1. Mapping can in turn be decomposed into a reference-to-ideal mapping and an ideal-to-curvilinear mapping . The high-order linear intermediate element is an ideal element from which deformation energy is computed.
The mesh is deformed to minimise an energy functional , a function of the mesh deformation :
The function can take different forms depending on the formulation of the deformation energy. In this work, although other formulations could also have been used, the hyperelastic elastic model Persson and Peraire (2009) has been retained for its demonstrated efficiency in previous works Turner et al. (2016). In the variational framework, the hyperelastic strain energy takes the form of
where and are material constants, is the right Cauchy-Green tensor, is its trace and is the determinant of the Jacobian matrix .
In the framework of adaptive meshes, the ideal element becomes a target element . Assuming that this target element is modified, the optimisation of the mesh by minimisation of the energy functional will force element towards a shape and dimensions similar to . The manipulation of is achieved by modification of its mapping
and can be isotropic or anisotropic alike. Linear transformations can be applied to the Jacobian of the mapping. In the anisotropic case, the Jacobian is multiplied by a metric tensor :
In the isotropic case, the Jacobian is simply scaled by a linear factor , which can in turn be expressed more generally as a metric tensor multiplication:
Ideally, adaptation should be driven by an error indicator and this shall be the focus of future work. In the scope of this research note, the feasibility of this method shall be demonstrated by using analytical expressions for the metric tensor. The example hereby presented proposes to adapt a homogeneously meshed unit side domain such as the one shown in Fig. 1(a). We aim at refining along the circumference of a circle of unit diameter. This is achieved anisotropically by shrinking elements in the radial direction only.
A scaling factor is defined in the radial direction at an angle from the x-axis. The metric tensor can be expressed as a succession of linear 2D transformations:
Rotate the element so that the radial axis coincides with the x-axis
Scale the element along the x-axis
Rotate the element back to its initial orientation
The combined metric tensor becomes:
Additionally, a distribution of is defined, with
the distance from the centre of the domain, using a Gaussian distribution such as:
with the mean
, the standard deviationand such that .
Results are shown for a quad mesh in Fig. 2. The adapted mesh in Fig. 1(b) shows excellent refinement in the unit diameter circumference area. Coarsening is also observed everwhere else with bigger elements noted inside the circle. Such coarsening is to be expected as nodes are moved towards the unit diameter circumference and therefore stretch elements in the rest of the domain. It can also be observed from Fig. 1(c) that adaptation is indeed anisotropic: elements are shrunk in the radial direction only, keeping the size in the angular direction constant.
Another example is shown in Fig. 3
. This domain corresponds to the truncated upper-right quadrant of the previous example, meshed this time by triangulation. The method behaves equally well for a less uniformly distributed triangular mesh as shown in Fig.2(b). The reader should note that this is a smaller domain, not a zoom in on a bigger domain, therefore demonstrating the CAD-sliding node capabilities of NekMesh.
In both examples, highly curved elements can be observed in the vicinity of the unit diameter region, which is indeed the expected behaviour. At the present time, a single metric tensor is used per element, computed at the barycentre of the linear element. This results in linear target elements, which are in turn deformed curvilinearly by the algorithm in ways not intended by the metric tensor. Future developments shall attempt to produce curvilinear target elements by defining spatially varying metric tensors inside each element.
We have presented a novel approach to r-adaptation based on a variational approach for high-order meshes. The algorithm, being based on the variational framework for mesh optimisation, retains all properties of the latter while extending its capabilities to adaptive high-order meshes. The core of the adaptation relies on the manipulation of the ideal target elements by use of metric tensors. First results were presented to demonstrate the feasibility of the method and establish a proof of concept for future work. Such future work shall attempt to integrate error indicators in the adaptation process. The challenge will lie in not only identifying a reliable error indicator but also converting this error indicator into a smoothly varying metric field, whether it be for isotropic or anisotropic adaptation.
JM acknowledges funding from the European Union’s Horizon 2020 research and innovation programme under the Marie Skłodowska-Curie grant agreement No 675008. MT acknowledges funding from Airbus and EPSRC under an industrial CASE studentship. DM acknowledges support from the EU Horizon 2020 project ExaFLOW (grant ID 671571) and the PRISM project under EPSRC grant EP/L000407/1.
- Karniadakis and Sherwin (2005) G. E. Karniadakis, S. Sherwin, Spectral/hp Element Methods for Computational Fluid Dynamics, 2nd ed., OUP, 2005.
- Turner et al. (2016) M. Turner, D. Moxey, S. Sherwin, J. Peiró, Automatic generation of 3D unstructured high-order curvilinear meshes, in: VII European Congress on Computational Methods in Applied Sciences and Engineering, Crete Island, Greece, 2016.
- Huang and Russell (2011) W. Huang, R. Russell, Adaptive moving mesh methods, Springer, 2011.
- Budd et al. (2009) C. Budd, W. Huang, R. Russell, Adaptivity with moving grids, Acta Numerica 18 (2009) 1–131.
- Persson and Peraire (2009) P.-O. Persson, J. Peraire, Curved mesh generation and mesh refinement using Lagrangian solid mechanics, in: 47th AIAA Aerospace Sciences Meeting and Exhibit, Orlando (FL), USA, 2009. AIAA paper 2009–949.
- Cantwell et al. (2015) C. Cantwell, D. Moxey, A. Comerford, A. Bolis, G. Rocco, G. Mengaldo, D. De Grazia, S. Yakovlev, J.-E. Lombard, D. Ekelschot, B. Jordi, H. Xu, Y. Mohamied, C. Eskilsson, B. Nelson, P. Vos, C. Biotto, R. Kirby, S. Sherwin, Nektar++: An open-source spectral/hp element framework, Computer Physics Communications 192 (2015) 205–219.