Skip to content

Forward Modeling and Inversion Techniques for Geothermal Reservoirs using Differentiable Programming in Julia

Jacob Frasunkiewicz, Boris Kaus, Anton Popov, Nicolas Riel


Abstract

Understanding and predicting the behavior of geothermal reservoirs in magmatic systems is critical for advancing sustainable energy production. These reservoirs are influenced by interactions between magmatic heat sources, fluid flow, and host rock deformation. To enhance predictive capabilities, we here develop a new forward and inverse modeling code to simulate fluid migration and host rock deformation within porous, confined aquifers. Our approach leverages the adjoint method to optimize parameter sensitivity analysis, significantly reducing computational demands compared to traditional inversion techniques. To simplify the development of our new poro-visco-elasto-plastic code we utilized the  Julia programming language which is differentiable, yet very efficient, and allows to develop software by combining different composable packages. We employed the GeoParams.jl package to implement visco-elasto-plastic rheologies and solve coupled fluid-rock interactions under non-linear Darcy and incompressible Stokes-flow regimes. The  framework is demonstrated using a representative setup of the Eifel volcanic region, highlighting its applicability to understanding geothermal systems influenced by potential active magmatic processes.