1d_fd_simple_shear

continuum model for granular flows with pore-pressure dynamics
git clone git://src.adamsgaard.dk/1d_fd_simple_shear
Log | Files | Refs | README | LICENSE Back to index

commit 5d4a2cef872d8b3cbb45892042bf5df43a0c7616
parent add2fbd712616c5abb67c74ff9626b0f9d4890cb
Author: Anders Damsgaard <anders@adamsgaard.dk>
Date:   Tue, 24 Mar 2020 14:14:30 +0100

Simplify and update README

Diffstat:
MREADME.md | 116++++++++++++++++---------------------------------------------------------------
1 file changed, 23 insertions(+), 93 deletions(-)

diff --git a/README.md b/README.md @@ -1,99 +1,29 @@ # 1d_fd_simple_shear -This project contains a 1d implementation of the [Henann and Kamrin -2013](https://doi.org/10.1073/pnas.1219153110) model under -simple shear, with various extensions such as diffusive -fluid coupling and cohesion. The granular material is -assumed to be in the critical state with constant porosity. See -[1d_fd_simple_shear_transient](https://src.adamsgaard.dk/1d_fd_simple_shear_transient) -for a second version with variable porosity and strength. - -## How to run -The implementation in C requires a C99-compatible compiler (e.g. `gcc` -or `clang`). Visualization requires `gnuplot`. Tests can be run with -`make test`, and examples (found in the `examples/` directory) can be -run with `make examples`. - -### Advanced usage -The majority of simulation parameters can be adjusted from the command line: - -``` -usage: 1d_fd_simple_shear [OPTIONS] [NAME] -runs a simulation and outputs state in files prefixed with NAME. -If NAME is not specified, intermediate output are not written. - -Optional arguments: - -v, --version show version information - -h, --help show this message - -N, --normalize normalize output velocity - -G, --gravity VAL gravity magnitude [m/s^2] (default 9.81) - -P, --normal-stress VAL normal stress on top [Pa] (default 120000) - -m, --stress-ratio VAL applied stress ratio [-] (default 0.45) - -s, --set-shear-velocity VAL set top shear velocity to this value [m/s] - (default nan), overrides --stress-ratio - -l, --limit-shear-velocity VAL limit top shear velocity to this value [m/s] - (default nan), overrides --stress-ratio and - --set-shear-velocity - -V, --velocity-bottom VAL base velocity at bottom [m/s] (default 0) - -A, --nonlocal-amplitude VAL amplitude of nonlocality [-] (default 0.4) - -b, --rate-dependence VAL rate dependence beyond yield [-] (default 0.9377) - -f, --friction-coefficient VAL grain friction coefficient [-] (default 0.404026) - -C, --cohesion VAL grain cohesion [Pa] (default 0) - -p, --porosity VAL porosity fraction [-] (default 0.25) - -d, --grain-size VAL representative grain size [m] (default 0.04) - -r, --density VAL grain material density [kg/m^3] (default 2600) - -n, --resolution VAL number of cells in domain [-] (default 100) - -o, --origo VAL coordinate system origo [m] (default 0) - -L, --length VAL domain length [m] (default 0.7) - -Optional arguments only relevant with transient (fluid) simulation: - -F, --fluid enable pore fluid computations - -c, --fluid-compressibility VAL fluid compressibility [Pa^-1] (default 3.9e-10) - -i, --fluid-viscosity VAL fluid viscosity [Pa*s] (default 0.001787) - -R, --fluid-density VAL fluid density [kg/m^3] (default 1000) - -k, --fluid-permeability VAL fluid intrinsic permeability [m^2] (default 1.9e-15) - -O, --fluid-pressure-top VAL fluid pressure at +z edge [Pa] (default 0) - -a, --fluid-pressure-ampl VAL amplitude of pressure variations [Pa] (default 0) - -q, --fluid-pressure-freq VAL frequency of pressure variations [s^-1] (default 1) - -H, --fluid-pressure-phase VAL fluid pressure at +z edge [Pa] (default 0) - -t, --time VAL simulation start time [s] (default 0) - -T, --time-end VAL simulation end time [s] (default 1) - -I, --file-interval VAL interval between output files [s] (default 0.1) - -``` +This project contains a 1d implementation of the Henann and Kamrin +2013[1] model under simple shear, with various extensions such as +diffusive fluid coupling and cohesion. The granular material is +assumed to be in the critical state with constant porosity. A +transient option with non-constant porosity is under development +(option -T). + +## Compiling and installing +Requirements are a C99-compatible compiler (e.g. `gcc` or `clang`). +Run `make` and `make install` to install the programs and their man +pages. + +## Usage +See `man 1d_fd_simple_shear`, `man max_deformation_depth` and `man +shear_flux` for usage information. ## Results +A preprint with model results is publically available[2]. -### Strain distribution -See below for a comparison with the discrete-element method results from -[Damsgaard et al. 2013](https://doi.org/10.1002/2013JF002830). The continuum -model is not tuned rigorously against the DEM, and the correspondence could -probably be improved further. - -| Discrete-element model | Continuum Model | -| ----------------------- | --------------- | -| Damsgaard et al. 2013 | | -| ![damsgaard2013-fig8.png](https://gitlab.com/admesg/1d_fd_simple_shear/raw/master/doc/damsgaard2013-fig8.png) | ![1d_fd_simple_shear.png](https://gitlab.com/admesg/1d_fd_simple_shear/raw/master/examples/1d_fd_simple_shear.png) | - -### Stress and strain rate -The rheology is of Bingham type, where no deformation occurs beneath the -Mohr-Coulomb yield limit. Above it, deformation is highly non-linearly viscous. -The model has a parameter *b* for rate dependence beyond yield. Glass beads -have *b* = 0.94 ([Forterre and Pouliquen -2003](https://doi.org/10.1017/S0022112003004555)). - -| Real material (laboratory or field study) | Continuum Model | -| -------------------------------------------- | --------------- | -| Upstream-B ([Kamb 1991](https://doi.org/10.1029/91jb00946)): | | -| ![kamb1991-fig1.png](https://gitlab.com/admesg/1d_fd_simple_shear/raw/master/doc/kamb1991-fig1.png) | ![1d_fd_simple_shear_rheology_kamb.png](https://gitlab.com/admesg/1d_fd_simple_shear/raw/master/examples/1d_fd_simple_shear_rheology_kamb.png) | -| Various subglacial tills ([Iverson 2010](https://doi.org/10.3189/002214311796406220)): | | -| ![iverson2010-fig2a.png](https://gitlab.com/admesg/1d_fd_simple_shear/raw/master/doc/iverson2010-fig2a.png) | ![1d_fd_simple_shear_rheology_iverson.png](https://gitlab.com/admesg/1d_fd_simple_shear/raw/master/examples/1d_fd_simple_shear_rheology_iverson.png) | -| Whillans Ice Plain ([Tulaczyk 2006](https://doi.org/10.3189/172756506781828601)): | | -| ![tulaczyk2006-fig1.png](https://gitlab.com/admesg/1d_fd_simple_shear/raw/master/doc/tulaczyk2006-fig1.png) | ![1d_fd_simple_shear_rheology_tulaczyk.png](https://gitlab.com/admesg/1d_fd_simple_shear/raw/master/examples/1d_fd_simple_shear_rheology_tulaczyk.png) | - -### Variable water pressure -The model is expanded from the Henann and Kamrin 2013 model by including a -diffusive porewater pressure parameterization. Below is an example of diurnal -water-pressure variations that gradually propagate into the bed. +## Author +Anders Damsgaard <anders@adamsgaard.dk> +https://src.adamsgaard.dk/1d_fd_simple_shear +ISC licensed, see LICENSE for details. -![diurnal.gif](https://gitlab.com/admesg/1d_fd_simple_shear/raw/master/examples/diurnal.gif) +## References +[1]: https://doi.org/10.1073/pnas.1219153110 +[2]: https://arxiv.org/abs/2002.02436