Applied Mathematics and Computation 365 (2020) 124721 Contents lists available at ScienceDirect Applied Mathematics and Computation journal homepage: www.elsevier.com/locate/amc An octree structured finite volume based solver Marcos Antonio de Souza Lourenço a, , Elie Luis Martínez Padilla b a Department of Mechanical Engineering, Federal University of Technology – Paraná (UTFPR), Av. Alberto Carazzai, 1640, Cornélio Procópio - PR, 86300-000, Brazil b School of Mechanical Engineering, Federal University of Uberlândia, Av. João Naves de Ávila, 2121, Bloco 5P, Uberlândia, Minas Gerais 38400-902, Brazil a r t i c l e i n f o Article history: Received 8 September 2018 Revised 20 August 2019 Accepted 2 September 2019 MSC: 00A06 35Q30 65L50 Keywords: Navier–Stokes equations Mesh generation Adaptive mesh refinement Incompressible fluid flow Octree structure Parallel simulation a b s t r a c t The present work describes the development of a parallel distributed-memory implemen- tation, of an octree data structure, linked to an adaptive cartesian mesh to solve the Navier–Stokes equations. The finite volume method was used in the spatial discretiza- tion where the advective and diffusive terms were approximated by the central differ- ences method. The temporal discretization was accomplished using the Adams–Bashforth method. The velocity-pressure coupling is done using the fractional-step method of two steps. Moreover, all simulated results were obtained using a external solver for the Poisson equation, from the pressure correction, in the fractional step method. Results are presented both for adaptive octree mesh and for a mesh without refinement. These were determined in the verification and validation processes for the present computational code. Finally, we consider the simulations for the problems of a laminar jet and the lid-driven cavity flow. Numerical results are compared with numerical and experimental data. © 2019 Elsevier Inc. All rights reserved. 1. Introduction Numerically speaking, fluid mechanic problems are mostly characterized by well defined regions into a given particular domain, in which a determined phenomena occurs and where, generally, it is necessary a mesh or grid with higher res- olution in order to be properly analyzed (despite a few mesh free methods, [1], for example). These regions are generally characterized by the presence of high gradients or even shocks in the flow. Essentially, two types of mesh prevail in compu- tational domain discretization: structured and unstructured. In the structured case each cell must be found by a predefined relation depending on the main axes of the domain. In a unstructured mesh, the cells are arbitrarily numbered. Basically both methods may produce regular and irregular shapes. Unstructured meshes fits better for complex geometries but with increased computational cost (memory and CPU) in comparison with cartesian based meshes [2,3]. In computational structured mesh generation, there is a number of algorithms and methods, like the Overset Method [4,5] and the Adaptive Mesh Refinement (AMR) tecnique [6], for example, the most developed in the last decades and packages providing such functionality are found in both commercial as Pointwise and ICEM (Integrated Computer Engineer- ing and Manufacturing) [7], for example, and free open-source applications, as Paramesh [8] and GMsh (GNU Mesh) [9]. Corresponding author. E-mail address: mlourenco@utfpr.edu.br (M.A.d.S. Lourenço). URL: http://www.utfpr.edu.br (M.A.d.S. Lourenço) https://doi.org/10.1016/j.amc.2019.124721 0096-3003/© 2019 Elsevier Inc. All rights reserved.