Giter Site home page Giter Site logo

robo-boluo / golem Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ajacquey/golem

0.0 0.0 0.0 20.91 MB

GOLEM is a numerical simulator for modelling coupled Thermo-Hydro-Mechanical processes in faulted geothermal reservoirs.

License: GNU General Public License v3.0

Shell 0.15% C++ 78.60% Python 0.07% C 0.03% Assembly 6.62% Makefile 0.66% GLSL 1.55% SWIG 12.33%

golem's Introduction


GOLEM
A MOOSE-based application

A numerical simulator for modelling coupled THM processes in faulted geothermal reservoirs based on MOOSE.

GitHub License Gitter DOI

About

GOLEM is a numerical simulator for modelling coupled Thermo-Hydro-Mechanical processes in faulted geothermal reservoirs. The simulator is developed by Antoine Jacquey ORCID iD iconGitHub icon id and Mauro Cacace ORCID iD iconGitHub icon id at the GFZ German Research Centre for Geosciences from the section Basin Modelling.

GOLEM is a MOOSE-based application. Visit the MOOSE framework page for more information.

Licence

GOLEM is distributed under the GNU GENERAL PUBLIC LICENSE v3.

Getting Started

Minimum System Requirements

The following system requirements are from the MOOSE framework (see Getting Started for more information):

  • Compiler: C++11 Compliant GCC 4.8.4, Clang 3.4.0, Intel20130607
  • Python 2.7+
  • Memory: 16 GBs (debug builds)
  • Processor: 64-bit x86
  • Disk: 30 GBs
  • OS: UNIX compatible (OS X, most flavors of Linux)

1. Setting Up a MOOSE Installation

To install GOLEM, you need first to have a working and up-to-date installation of the MOOSE framework.
To do so, please visit the Getting Started page of the MOOSE framework and follow the instructions. If you encounter difficulties at this step, you can ask for help on the MOOSE-users Google group.

2. Clone GOLEM

GOLEM can be cloned directly from GitHub using Git. In the following, we refer to the directory projects which you created during the MOOSE installation (by default ~/projects):

cd ~/projects
git clone https://github.com/ajacquey/Golem.git
cd ~/projects/golem
git checkout master

Note: the "master" branch of GOLEM is the "stable" branch which is updated only if all tests are passing.

3. Compile GOLEM

You can compile GOLEM by following these instructions:

cd ~/projects/golem
make -j4

4. Test GOLEM

To make sure that everything was installed properly, you can run the tests suite of GOLEM:

cd ~/projects/golem
./run_tests -j2

If all the tests passed, then your installation is working properly. You can now use the GOLEM simulator!

Usage

To run GOLEM from the command line with multiple processors, use the following command:

mpiexec -n <nprocs> ~/projects/golem/golem-opt -i <input-file>

Where <nprocs> is the number of processors you want to use and <input-file> is the path to your input file (extension .i).

Information about the structure of the GOLEM input files can be found in the documentation (link to follow).

Cite

If you use GOLEM for your work please cite:

  • This repository:
    Antoine B. Jacquey, & Mauro Cacace. (2017, September 29). GOLEM, a MOOSE-based application. Zenodo. http://doi.org/10.5281/zenodo.999401
  • The publication presenting GOLEM:
    Cacace, M. and Jacquey, A. B.: Flexible parallel implicit modelling of coupled thermal–hydraulic–mechanical processes in fractured rocks, Solid Earth, 8, 921-941, https://doi.org/10.5194/se-8-921-2017, 2017.

Please read the CITATION file for more information.

Publications using GOLEM

  • Freymark, J., Bott, J., Cacace, M., Ziegler, M., Scheck-Wenderoth, M.: Influence of the Main Border Faults on the 3D Hydraulic Field of the Central Upper Rhine Graben, Geofluids, 2019.
  • Blöcher, G., Cacace, M., Jacquey, A. B., Zang, A., Heidbach, O., Hofmann, H., Kluge, C., Zimmermann, G.: Evaluating Micro-Seismic Events Triggered by Reservoir Operations at the Geothermal Site of Groß Schönebeck (Germany), Rock Mechanics and Rock Engineering, 2018.
  • Jacquey, A. B., Urpi, L., Cacace, M., Blöcher, G., Zimmermann, G., Scheck-Wenderoth, M.: Far field poroelastic response of geothermal reservoirs to hydraulic stimulation treatment: Theory and application at the Groß Schönebeck geothermal research facility, International Journal of Rock Mechanics and Mining Sciences, 2018.
  • Peters, E., Blöcher, G., Salimzadeh, S., Egberts, P. J. P., Cacace, M.: Modelling of multi-lateral well geometries for geothermal applications, Advances in Geosciences, 2018.
  • Magri, F., Cacace, M., Fischer, T., Kolditz, O., Wang, W., Watanabe, N.: Thermal convection of viscous fluids in a faulted system: 3D benchmark for numerical codes, Energy Procedia, 2017.
  • Cacace, M. and Jacquey, A. B.: Flexible parallel implicit modelling of coupled Thermal-Hydraulic-Mechanical processes in fractured rocks, Solid Earth, 2017.
  • Jacquey, A. B.: Coupled Thermo-Hydro-Mechanical Processes in Geothermal Reservoirs: a Multiphysic and Multiscale Approach Linking Geology and 3D Numerical Modelling, PhD thesis, RWTH Aachen, 2017.
  • Jacquey, A. B., Cacace, M., Blöcher, G.: Modelling coupled fluid flow and heat transfer in fractured reservoirs: description of a 3D benchmark numerical case, Energy Procedia, 2017.
  • Jacquey, A. B., Cacace, M., Blöcher, G., Milsch, H., Deon, F., Scheck-Wenderoth, M.: Processes Responsible for Localized Deformation within Porous Rocks: Insights from Laboratory Experiments and Numerical Modelling, 6th Biot Conference on Poromechanics, Paris 2017.

golem's People

Contributors

ajacquey avatar lindsayad avatar zivanradosavljevic avatar mcacace avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.