SlipSurface IQ LE
Slopes
Limit equilibrium slope stability
Method-of-slices stability of slopes and embankments: eight methods from Fellenius to Morgenstern-Price, critical surface search, water, seismic, reinforcement and tension cracks — with zero dependencies.
$ pip install git+https://github.com/hdaltuntas/slipsurface- Run
slipsurface-le- Default port
- 8000
- Python
- 3.10+
- Version
- 0.3.1
- Licence
- AGPL-3.0
Limit equilibrium slope stability in pure Python, with a browser front end. SlipSurface IQ LE computes the factor of safety of slopes and embankments with the method of slices — the same class of analysis as Rocscience Slide or GeoStudio SLOPE/W. It searches for the critical slip surface, reports every classical method on it, and draws the section in the browser.
- No dependencies. The solver, the web server and the front end are standard library and vanilla JavaScript.
python -m slipsurface.le serveworks on a bare Python 3.10+ install with nothing topip install. - Eight methods, from Fellenius to Morgenstern-Price, all built on one slice formulation — the differences between them are the assumptions, not the code.
- Validated against closed-form solutions, Taylor's stability numbers and the ACADS benchmark problem.
What it does
| Methods | Ordinary (Fellenius), Bishop simplified, Janbu simplified and corrected, Corps of Engineers #1, Lowe-Karafiath, Spencer, Morgenstern-Price (half-sine, constant or trapezoidal interslice function) |
| Surfaces | Circular (grid-and-tangent search with adaptive box and refinement), a single specified circle, a user-defined non-circular surface, and non-circular optimisation from the critical circle |
| Strength | Effective stress (c′, φ′), undrained (su, optionally increasing linearly with depth), impenetrable and no-strength materials |
| Groundwater | Piezometric water table, per-material pore pressure ratio ru, separate saturated unit weights, ponded water on the slope |
| Loading | Surface surcharges, pseudo-static kh and kv, reinforcement (nails, anchors, geosynthetics), tension cracks with optional water pressure |
| Output | Factor of safety per method, the critical surface, a full slice force table (CSV), the λ–FS plot for Spencer/Morgenstern-Price, the search grid, JSON for everything |
Screenshots
Quick start
pip install git+https://github.com/hdaltuntas/slipsurface
slipsurface-le serve --open # browser interface on http://127.0.0.1:8000
slipsurface-le example # list the built-in examples
slipsurface-le example homogeneous # run one and print the reportOr straight from a clone, without installing the package:
git clone https://github.com/hdaltuntas/slipsurface
cd slipsurface
python main.py # every program, LE at /le/
python main.py le example homogeneous # the same commands
python -m pytest tests/le # run the test suiteHOST and PORT override the address. If you prefer FastAPI, uvicorn slipsurface.le.web.app:app serves exactly the same API.
The browser interface
Build the geometry from a template or by typing coordinates, set up materials, groundwater and loading in the sidebar, then Run analysis (or Ctrl/Cmd + Enter). The section view shows the layers, the phreatic surface, the critical surface with its centre of rotation, the search grid coloured by factor of safety, the slices and the reinforcement. Results export as SVG, CSV and JSON. ?example=layered_water and ?theme=dark work as URL parameters.
The fonts (Inter and Newsreader) are bundled; nothing is fetched from a CDN at runtime, and the page looks the same offline.