GPU implementation of Explicit and Implicit Eulerian methods with TVD schemes for solving 2D solute transport in heterogeneous flows

In this work we present an efficient implementation of Eulerian TVD methods. We apply parallelization strategies based entirely on GPU for the solution of the 2D transport equation in heterogeneous porous media. Additionally, a parallel strategy is proposed for the generation of exponentially correl...

Descripción completa

Detalles Bibliográficos
Autores: Bessone, Lucas, Gamazo, Pablo, Dentz, Marco, Storti, Mario, Ramos, Julián
Tipo de recurso: artículo
Estado:Versión aceptada para publicación
Fecha de publicación:2022
País:España
Institución:Consejo Superior de Investigaciones Científicas (CSIC)
Repositorio:DIGITAL.CSIC. Repositorio Institucional del CSIC
OAI Identifier:oai:digital.csic.es:10261/266899
Acceso en línea:http://hdl.handle.net/10261/266899
https://api.elsevier.com/content/abstract/scopus_id/85125762817
Access Level:acceso abierto
Palabra clave:GPU
Eulerian methods
High Performance Computing
TVD
Transport equation
Descripción
Sumario:In this work we present an efficient implementation of Eulerian TVD methods. We apply parallelization strategies based entirely on GPU for the solution of the 2D transport equation in heterogeneous porous media. Additionally, a parallel strategy is proposed for the generation of exponentially correlated lognormally distributed permeability fields in GPU. The programs are developed using C++/CUDA. The implemented methods are used to solve advective dominant problems, in a context of Monte Carlo type simulations to numerically determine the longitudinal and transversal macrodispersion coefficients averaging over 100 simulations for permeability fields for a large range of variances. The following types of transport are considered for testing: pure advection, advection-diffusion and advection-dispersion. The performance in terms of the computation time of explicit and implicit methods are compared. We show that the implemented algorithms allow to efficiently solve problems in computational domains of up to 134.5 million cells in a single GPU.