Giter Site home page Giter Site logo

application-user / pybimstab Goto Github PK

View Code? Open in Web Editor NEW

This project forked from eamontoyaa/pybimstab

0.0 0.0 0.0 943 KB

Application software in Python 3 to evaluate the factor of safety against sliding of slopes made of Blocks-In-Matrix materials.

Home Page: https://pybimstab.readthedocs.io/

License: BSD 2-Clause "Simplified" License

Python 99.02% Makefile 0.98%

pybimstab's Introduction

pyBIMstab

made-with-python PyPI License Documentation Status

pybimstab is an application software in Python 3 to evaluate the factor of safety against sliding of slopes made of Blocks-In-Matrix (BIM) materials.

The assessment is donde by using the limit equilibrium method through the General Limit Equilibrium (GLE) method of Fredlund & Krahn (1977).

The slip surface has a tortuous geometry and is optimally found by using the A-star algorithm proposed by Hart, Nilsson & Raphael (1968).

The following plots are the final outcome of two different analysis:

Homogeneus slope

Outcome plot example1

Slope made of BIM material

Outcome plot example2

Features

Requirements

The code was written in Python 3. The packages numpy, scipy, matplotlib and shapely are required for using pybimstab. All of them are downloadable from the PyPI repository by opening a terminal and typing the following code lines:

pip install numpy
pip install scipy
pip install matplotlib
pip install shapely

Installation

To install pybimstab open a terminal and type:

pip install pybimstab

Example

To produce the plot shown above execute the following script

from numpy import array
from pybimstab.slope import NaturalSlope
from pybimstab.watertable import WaterTable
from pybimstab.bim import BlocksInMatrix
from pybimstab.slipsurface import CircularSurface, TortuousSurface
from pybimstab.slices import MaterialParameters, Slices
from pybimstab.slopestabl import SlopeStabl
terrainCoords = array(
    [[-2.49, 0.1, 1.7, 3.89, 5.9, 8.12, 9.87, 13.29, 20.29,
      21.43, 22.28, 23.48, 24.65, 25.17],
     [18.16, 17.88, 17.28, 15.73, 14.31, 13.58, 13, 3.61, 3.61,
      3.32, 2.71, 2.23, 1.21, 0.25]])
slope = NaturalSlope(terrainCoords)
bim = BlocksInMatrix(slopeCoords=slope.coords, blockProp=0.25,
                     tileSize=0.4, seed=12345)
watertabDepths = array([[0, 5, 10, 15],
                        [8, 7, 3, 0]])
watertable = WaterTable(slopeCoords=slope.coords,
                        watertabDepths=watertabDepths,
                        smoothFactor=3)
preferredPath = CircularSurface(
    slopeCoords=slope.coords, dist1=5, dist2=15.78, radius=20)
surface = TortuousSurface(
    bim, dist1=4, dist2=15.78, heuristic='euclidean',
    reverseLeft=False, reverseUp=False, smoothFactor=2,
    preferredPath=preferredPath.coords, prefPathFact=2)
material = MaterialParameters(
    cohesion=15, frictAngle=23, unitWeight=17,
    blocksUnitWeight=21, wtUnitWeight=9.8)
slices = Slices(
    material=material, slipSurfCoords=surface.coords,
    slopeCoords=slope.coords, numSlices=15,
    watertabCoords=watertable.coords, bim=bim)
stabAnalysis = SlopeStabl(slices, seedFS=1, Kh=0, maxLambda=1)
fig = stabAnalysis.plot()

References

D. G. Fredlund and J. Krahn. Comparison of slope stability methods of analysis. Canadian Geotechnical Journal, 14(3)(3):429โ€“439, 1977.

P. Hart, N. Nilsson, and B. Raphael. A formal basis for the heuristic determination of minimum cost path. IEEE Transactions of Systems Science and Cybernetics, ssc-4(2):100โ€“107, 1968.

pybimstab's People

Contributors

eamontoyaa 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.