Giter Club home page Giter Club logo

dispersion-random-network's Introduction

Modeling dispersion in porous media # DOI

What is this repository for?

This code is for modeling macro-dispersion in random porous networks with temporal Markov models.

  • Markov models in time for simulation dispersion in random porous networks
  • The stencil method and the extended stencil method
  • An implementation of correlated CTRW for benchmarking results

For details about the ideas and models used in this code please refer to Temporal Markov Processes for Transport in Porous Media: Random Lattice Networks

How do I set it up?

  • First clone this repository.
  • Add the parent directory of py_dp to your Python path. In linux you will need to add a line similar to export PYTHONPATH=$PYTHONPATH:/PATH_TO_PARENT_OF_py_dp to your ~/.bashrc file.
  • Make sure you have Python2.7 along with Matplotlib, Numpy, Scipy, Cython and pyamg. All of these packages can be installed using pip. (e.g. pip install numpy).
  • Complete Cython installations:
    • go to the dispersion directory: cd py_dp/dispersion/
    • compile the cython files using these commands:
      • python setup_count.py build_ext --inplace
      • python setup_convert.py build_ext --inplace

Getting started with the code

After the setup steps you can run sample_scripts/workflow_dispersion_in_random_network.py. This file includes all the steps necessary to generate the input data for a small 100x100 structured network, generating MC data, and model the data using Markov models.

Generating the plots in the publication

Direct to network_paper/plot_scripts and run python network_paper_plots.py. The plots will be stored in the network_paper/plots folder.

dispersion-random-network's People

Contributors

amirdel avatar

Stargazers

wg yong avatar

Watchers

James Cloos avatar  avatar Mohammad Hossein Golestan avatar

Forkers

simulatiom

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.