Abstract

RichardsFoam3 is an updated version of the OpenFOAM® solver RichardsFoam, previously presented in “An open source massively parallel solver for Richards equation: Mechanistic modelling of water fluxes at the watershed scale” by L. Orgogozo, N. Renon, C. Soulaine, F. Hénon, S.K. Tomer, D. Labat, O.S. Pokrovsky, M. Sekhar, R. Ababou, M. Quintard (Comput. Phys. Commun. 185 (2014) 3358-3371, https://doi.org/10.1016/j.cpc.2014.08.004), and in the new version announcement “RichardsFOAM2: a new version of RichardsFOAM devoted to the modelling of the vadose zone” by L. Orgogozo (Comput. Phys. Commun. 196 (2015) 619-620, https://doi.org/10.1016/j.cpc.2015.07.009).This new version includes improvements of memory handling and of on-the-fly control of computations, a better integration in the OpenFOAM® framework, simplifications of the coding of some expressions, as well as new advanced boundary conditions. All together these developments allow to enhance the ease of application of the code to continental surfaces hydrogeology modelling, its computational performances and its readability.The description of the elements contained in this release may be found in the readMe file.Please note that you may also find RichardsFoam3 on the hydrology page of the develop.openfoam.com interface:https://develop.openfoam.com/Community/hydrology/ New version program summaryProgram title: RichardsFoam3CPC Library link to program files:https://doi.org/10.17632/vkr7sd6fhb.1Developer's repository link:https://develop.openfoam.com/Community/hydrology/Licensing provisions: GPLv3Programming language: C++Supplementary material: The full system of equations solved by RichardsFoam3 is presented in the documentation directory of the RichardsFoam3 package, with a numbering that is used in the comments of the main source file RichardsFoam3.C of the solver RichardsFoam3, in order to identify which lines of code are related to which equation.Journal reference of previous version: Comput. Phys. Commun. 196 (2015) 619-620Does the new version supersede the previous version?: YesReasons for the new version: Introducing new functionalities and implementing improvements for ergonomy, computational performances and readabilitySummary of revisions: The new features compared to RichardsFOAM [1] and RichardsFoam2 [2] are the following:(i) better handling of memory use during computation;(ii) possibility of on-the-fly modification of the control parameters of the linearisation procedure;(iii) new boundary conditions to be compiled along with the solver itself, and dedicated to the simulation of rain infiltration (rainFallFlux) or no infiltration (noFlux) conditions while allowing exfiltration with OpenFOAM® stand-alone (i.e. without mandatory use of swak4foam as it was the case in RichardsFoam2 [2]);(iv) Computation of the field of piezometric head along computation. NB: in the demonstration cases, a way to implement a constant piezometric head boundary conditions with OpenFOAM is proposed.(v) new functions that allow to build seasonally variable boundary conditions easily;(vi) use of postprocessing procedures with OpenFOAM® stand-alone (i.e. without mandatory use of swak4foam as it was the case in RichardsFoam2 [2]);(vii) several other minor rewritings/cleanings of the code.Nature of problem: This software solves the non-linear three-dimensional transient Richards equation, which is a very popular model for water transfer in variably saturated porous media (e.g.: soils). It is designed to take advantage of the massively parallel computing performance of OpenFOAM®. The goal is to be able to model natural hydrosystems on large temporal and spatial scales.Solution method: A mixed implicit (FVM in the object oriented OpenFOAM framework) and explicit (FVC in the object oriented OpenFOAM® framework) discretization of the equation with a backward time scheme is coupled with a linearization method (Picard algorithm). Due to the linearization loop the final solution of each time step tends towards a fully implicit solution. The implementation has been carried out with a concern for robustness and parallel efficiency.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.