Foundation modes
Op3 supports four foundation idealisations forming a hierarchy from rigid to fully nonlinear:
Mode |
Name |
Representation |
When to use |
|---|---|---|---|
A |
|
Rigid body at the mudline |
preliminary sizing, sanity checks |
B |
|
6x6 K at pile head (DNV / ISO / API / OWA / PISA) |
code-compliant design |
C |
|
Distributed Winkler springs along the embedded length |
site-specific p-y / soil dynamics |
D |
|
Distributed Winkler with energy weighting |
post-yield assessment, fatigue, scour-aware |
Mode B factories
- op3.foundations.foundation_from_pisa(*, diameter_m: float, embed_length_m: float, soil_profile: list, n_segments: int = 50) Foundation[source]
Construct a STIFFNESS_6X6 Foundation whose K matrix is derived from the PISA framework (Burd 2020 / Byrne 2020). This is the canonical Op^3 entry point for monopile foundations when site-specific p-y curves are not available.
- Parameters:
diameter_m – Pile geometry.
embed_length_m – Pile geometry.
soil_profile (list[op3.standards.pisa.SoilState]) – Layered soil definition (depth, G, su or phi, soil_type).
n_segments – Vertical discretisation for the PISA integration (default 50).
- op3.standards.pisa.pisa_pile_stiffness_6x6(diameter_m: float, embed_length_m: float, soil_profile: list[SoilState], n_segments: int = 50) ndarray[source]
Initial small-strain 6x6 K matrix at the pile head (mudline) by integrating the PISA distributed reactions along the embedded length and adding the base contributions.
The cross-coupling K_xrx (lateral-rocking) is computed via the second moment of the distributed lateral stiffness:
K_xx = int_0^L k_p(z) dz + K_b_shear K_xrx = int_0^L k_p(z) z dz (-) K_rxrx = int_0^L k_p(z) z^2 dz + int_0^L k_m(z) dz + K_b_moment
Vertical and torsional terms use elementary skin-friction estimates since PISA does not address them; this is consistent with how monopile designers extend PISA in DNV-ST-0126 commentary.
- op3.standards.dnv_st_0126.dnv_monopile_stiffness(diameter_m: float, embedment_m: float, soil_type: str = 'dense_sand', G: float | None = None, nu: float | None = None) ndarray[source]
Equivalent linear 6x6 stiffness for a monopile per DNVGL-ST-0126 §5.5.
Uses the cylindrical pile in elastic half-space approximation (Randolph 1981, adopted by DNV) with depth-correction factor for embedment > 1 diameter.
- Parameters:
diameter_m (float) – Pile outer diameter in meters.
embedment_m (float) – Embedded length in meters (mudline to pile tip).
soil_type (str, default 'dense_sand') – One of the keys in DEFAULT_SHEAR_MODULUS.
G (float, optional) – Soil shear modulus in Pa. Overrides soil_type default.
nu (float, optional) – Poisson’s ratio. Overrides soil_type default.
- Returns:
numpy.ndarray – 6x6 diagonal stiffness matrix in SI units (N/m for translation, N*m/rad for rotation).
Reference
———
DNVGL-ST-0126 (2021), Section 5.5.2 “Linear soil-pile stiffness”
Randolph, M.F. (1981). “The response of flexible piles to lateral – loading”. Geotechnique 31(2), 247-259.
- op3.standards.iso_19901_4.iso_pile_stiffness(diameter_m: float, embedment_m: float, soil_type: str = 'dense_sand', G: float | None = None, nu: float | None = None, pile_type: str = 'flexible') ndarray[source]
6x6 stiffness for a single pile per ISO 19901-4 Annex E.
Distinguishes ‘rigid’ (slender, kinematic rotation) and ‘flexible’ (long, elastic bending) pile responses.
Reference
ISO 19901-4:2016 Annex E “Pile foundations”.
- op3.standards.api_rp_2geo.api_pile_stiffness(diameter_m: float, embedment_m: float, soil_type: str = 'dense_sand', G: float | None = None, nu: float | None = None) ndarray[source]
6x6 pile stiffness per API RP 2GEO Section 8.3.
Reference
- API RP 2GEO (2011) Section 8.3 “Linear soil stiffness for foundation
impedance analysis”.
- op3.standards.owa_bearing.owa_suction_bucket_stiffness(diameter_m: float, skirt_length_m: float, n_buckets: int = 1, spacing_m: float | None = None, soil_type: str = 'soft_clay', G: float | None = None, nu: float | None = None) ndarray[source]
6x6 stiffness for a suction bucket per OWA Bearing Capacity Report.
The OWA expressions are based on the Houlsby & Byrne (2005) caisson impedance functions extended to multi-bucket configurations (tripod, quadrupod) by treating each bucket as an independent foundation and combining via parallel axis theorem.
- Parameters:
diameter_m (float) – Bucket outer diameter.
skirt_length_m (float) – Skirt embedment depth.
n_buckets (int, default 1) – Number of buckets (1, 3, or 4).
spacing_m (float, optional) – Center-to-leg distance for multi-bucket configurations.
soil_type (as in dnv_st_0126.)
G (as in dnv_st_0126.)
nu (as in dnv_st_0126.)
Reference
---------
(2019) (Carbon Trust OWA) – for design”
stiffness (Section 4.3 "Equivalent linear) – for design”
Houlsby
T. (G.)
Byrne (&)
(2005) (B. W.)
5 (Section)
Mode D formulation
See Mode D dissipation-weighted formulation for the formal definition of the dissipation-weighted distributed BNWF.