Skip to content

Implementation of the Generalized Multiscale Finite Element Method (GMsFEM) for solution problems in heterogeneous media with finite volume approximation on the fine grid

License

Notifications You must be signed in to change notification settings

vmasha/fvm-gmsfem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fvm-gmsfem

Implementation of the Generalized Multiscale Finite Element Method (GMsFEM) for solution problems in heterogeneous media with finite volume approximation on the fine grid.

My papers about GMsFEM:

  • Chung ET, Efendiev Y, Li G, Vasilyeva M. Generalized multiscale finite element methods for problems in perforated heterogeneous domains PDF
  • Akkutlu IY, Efendiev Y, Vasilyeva M. Multiscale model reduction for shale gas transport in fractured media PDF
  • Vasilyeva M, Chung ET, Efendiev Y, Tyrylgin A. A three-level multi-continua upscaling method for flow problems in fractured porous media PDF

I would be grateful if you add citations to my relevant publications when you use it in your research.

Implementation of the method contains several parts:

  • fine grid system generation (./systemT.py) - create mass and stiffness matrices and right - hand side vector
  • local domains (coarse grid) generation (./local-domain/) - create files with coarse cells coordinates and cell indices in local domains
  • multiscale basis function calculation (./gmsfem-basis/) - solve local spectral problems to generate and save multiscale basis functions
  • projection matrix generation (./ms-rgen/) - load multiscale basis functions and create projection matrix R
  • fine scale and multiscale solver (./solver/) - solve fine grid system or/and multiscale solver

Implementation based on the FEniCS (geometry objects, functions for saving and visualization) and PETSc (matrices, vectors and solvers).

How to use

Fine grid simulations:

  1. run fenics container

docker run -ti -v $(pwd):/home/fenics/shared quay.io/fenicsproject/stable

  1. create folders ./data/out/, ./data/modelF/
  2. generate fine grid system for a given heterogeneous permeability field in ./data/perm/

python systemT.py

  1. run fine grid solver in ./solver/

./solver F 50 1.0e-4 80 80 ../data/modelF/ ../data/out/ 1 ./ err.txt

Multiscale simulations:

  1. create folders ./data/modelMs/omega10/, ./data/modelMs/eigen/, ./data/modelMs/dof/
  2. local domains generations (coarse grid) in ./local-domain/

./omegas 2 ../data/omega10/ 10 0.1 0.0 10 0.1 0.0

  1. multiscale basis generation in ./gmsfem-basis/

./run

  1. generate R in ./ms-rgen/

./rgen 1 1600 121 ../data/modelMs/ 8

  1. solve multiscale in ./solver/

./solver C 50 1.0e-4 80 80 ../data/modelF/ ../data/out/ 1936 ../data/modelMs/R100 err.txt

About

Implementation of the Generalized Multiscale Finite Element Method (GMsFEM) for solution problems in heterogeneous media with finite volume approximation on the fine grid

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published