Skip to main content

Python toolkit for LLM-based geotechnical engineering agents — 36 analysis modules covering foundations, piles, slopes, seismic (incl. FEMA P-2082 / 2020 NEHRP site classification), excavation support (incl. the California/Caltrans Trenching and Shoring Manual reference), pavements (incl. FHWA-NHI-05-037 Geotechnical Aspects of Pavements), FEM, PDF/DXF import, and more

Project description

GeotechStaffEngineer

Python toolkit for LLM-based geotechnical engineering agents. 35 analysis modules covering foundations, piles, slopes, seismic analysis, ground improvement, FEM, and more.

Installation

# Core package (numpy + scipy + geotech-references)
pip install geotech-staff-engineer

# With all optional agent libraries
pip install geotech-staff-engineer[full]

# Or install individual extras
pip install geotech-staff-engineer[plot,groundhog,opensees]

Quick Start

from bearing_capacity import Footing, SoilLayer, BearingSoilProfile, BearingCapacityAnalysis

footing = Footing(width=2.0, length=10.0, depth=1.5, shape="strip")
layer = SoilLayer(friction_angle=30.0, cohesion=10.0, unit_weight=18.0, thickness=10.0)
profile = BearingSoilProfile(layer1=layer, gwt_depth=5.0)

analysis = BearingCapacityAnalysis(footing=footing, soil=profile)
result = analysis.compute()
print(result.summary())

Modules

All units are SI (meters, kPa, kN, degrees). Every module returns dataclasses with .summary() and .to_dict() methods for easy LLM integration.

Core Analysis (20 modules)

Module Purpose
bearing_capacity Shallow foundations — Vesic, Meyerhof, Hansen
settlement Consolidation and immediate settlement
axial_pile Driven pile capacity — Nordlund, Tomlinson, Beta
sheet_pile Cantilever and anchored sheet pile walls
soe Support of excavation — braced/cantilever walls, stability, ground anchors
lateral_pile Lateral pile analysis — COM624P, 8 p-y models
pile_group Rigid-cap pile groups — 6-DOF, efficiency factors
wave_equation Smith 1-D wave equation — bearing graph, drivability
drilled_shaft Drilled shaft capacity — GEC-10 alpha/beta/rock socket
seismic_geotech Site classification, M-O pressures, liquefaction
retaining_walls Cantilever and MSE retaining walls
ground_improvement Aggregate piers, wick drains, vibro-compaction
slope_stability Fellenius, Bishop, Spencer — circular slip, soil nails
downdrag Neutral plane method, dragload estimation
geotech_common Shared soil profile, adapters, plotting utilities
calc_package Calculation package report generation
subsurface_characterization DIGGS parser, Plotly visualizations, trend stats
wind_loads ASCE 7-22 wind on freestanding walls and fences
dxf_import DXF CAD import for slope stability geometry
fem2d 2D plane-strain FEM — CST/Q4/beam, MC/HS, SRM, seepage, consolidation

Library Wrapper Agents (15 modules)

Each agent wraps a third-party geotechnical library with a dict-based API for LLM tool use.

Module Library Purpose
opensees_agent OpenSeesPy PM4Sand cyclic DSS, BNWF pile, 1D site response
pystrata_agent pystrata 1D equivalent-linear site response
seismic_signals_agent eqsig + pyrotd Earthquake signal processing
liquepy_agent liquepy CPT-based liquefaction triggering
pygef_agent pygef GEF/BRO-XML CPT and borehole parsing
hvsrpy_agent hvsrpy HVSR site characterization
gstools_agent gstools Geostatistical kriging and random fields
ags4_agent python-ags4 AGS4 data format reading and validation
salib_agent SALib Sobol and Morris sensitivity analysis
pyseismosoil_agent PySeismoSoil Nonlinear soil curve calibration
swprocess_agent swprocess MASW surface wave dispersion
geolysis_agent geolysis Soil classification and SPT corrections
pystra_agent pystra FORM/SORM/Monte Carlo reliability
pydiggs_agent pydiggs DIGGS 2.6 XML validation
groundhog_agent groundhog Site investigation and soil mechanics

GUIs

Interactive browser-based GUIs built with Plotly Dash:

GUI Command Purpose
slope_stability_gui.py python slope_stability_gui.py Slope stability analysis with live preview
fem2d_gui.py python fem2d_gui.py 2D FEM analysis — gravity, foundation, SRM, excavation, seepage, consolidation

Requires pip install geotech-staff-engineer[gui] for Dash and Plotly dependencies.

Optional Extras

Extra Libraries
plot matplotlib
calc jinja2
groundhog groundhog
opensees openseespy
pystrata pystrata
seismic-signals eqsig, pyrotd
liquepy liquepy
pygef pygef
hvsrpy hvsrpy
gstools gstools
ags4 python-ags4
salib SALib
pyseismosoil PySeismoSoil
swprocess swprocess
geolysis geolysis
pystra pystra
pydiggs pydiggs
dxf ezdxf
gui dash, plotly
full All of the above

Related Package

geotech-references — Digitized NAVFAC DM7 and FHWA GEC reference library (installed automatically as a dependency).

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

geotech_staff_engineer-5.0.0rc2.tar.gz (695.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

geotech_staff_engineer-5.0.0rc2-py3-none-any.whl (845.4 kB view details)

Uploaded Python 3

File details

Details for the file geotech_staff_engineer-5.0.0rc2.tar.gz.

File metadata

File hashes

Hashes for geotech_staff_engineer-5.0.0rc2.tar.gz
Algorithm Hash digest
SHA256 b0cebee6dc03e2257d5933fa1c720da2912f6debb1f2e9bc26923b48be60786f
MD5 c8e7bc0448d0bddec53d0da03dc645fc
BLAKE2b-256 49e2d6f421e881b36fc3672e469ae7872b3a12305c12cacdad54e2045897cb66

See more details on using hashes here.

Provenance

The following attestation bundles were made for geotech_staff_engineer-5.0.0rc2.tar.gz:

Publisher: publish.yml on soconnell345-geotech/GeotechStaffEngineer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file geotech_staff_engineer-5.0.0rc2-py3-none-any.whl.

File metadata

File hashes

Hashes for geotech_staff_engineer-5.0.0rc2-py3-none-any.whl
Algorithm Hash digest
SHA256 b47a4ad92490cd0a724965007ac98da14f25a37d0a87b5098da116aea382151c
MD5 8c266bf05b0e2aa0aaeefb3795ee62c1
BLAKE2b-256 e32ce65aed395ce56bb431efd69e982bbbe6e80f1b6d20f060efdfe2cd338363

See more details on using hashes here.

Provenance

The following attestation bundles were made for geotech_staff_engineer-5.0.0rc2-py3-none-any.whl:

Publisher: publish.yml on soconnell345-geotech/GeotechStaffEngineer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page