Skip to content

Index

subsurfaceio.pile_foundation_capacity

Pile foundation capacity API.

Compute axial pile capacity from a soil profile:

from subsurfaceio.pile_foundation_capacity import PileFoundationCapacity

PileFoundationCapacity(metadata=metadata, data=profile).calculate()

Classes:

Name Description
ClayData

Clay layer strength inputs for pile capacity.

Data

Soil layer row for pile capacity.

Metadata

Pile geometry and capacity method settings.

PileCapacityUSACE1991Results

USACE pile capacity results.

PileFoundationCapacity

Pile axial capacity (USACE).

SandData

Sand layer strength inputs for pile capacity.

Attributes:

Name Type Description
PILE_CAPACITY
PileCapacityUSACE1991ResultsData
PileCapacityUSACE1991ResultsMetadata

PILE_CAPACITY module-attribute

PILE_CAPACITY = {
    "PileCapacityUSACE1991": (
        FunctionSequences.PileCapacityUSACE1991,
        PileCapacityUSACE1991Results,
    )
}

PileCapacityUSACE1991ResultsData module-attribute

PileCapacityUSACE1991ResultsData = create_model(
    "PileCapacityUSACE1991ResultsData",
    __base__=BaseModel,
    **as_fields(
        ["depth"]
        + FunctionSequences.PileCapacityUSACE1991.return_names(
            scalar=False
        )
    )
)

PileCapacityUSACE1991ResultsMetadata module-attribute

PileCapacityUSACE1991ResultsMetadata = create_model(
    "PileCapacityUSACE1991ResultsMetadata",
    __base__=BaseModel,
    **as_fields(
        FunctionSequences.PileCapacityUSACE1991.return_names(
            scalar=True
        )
    )
)

ClayData pydantic-model

Bases: BaseModel

Clay layer strength inputs for pile capacity.

Fields:

soil_type pydantic-field

soil_type: Literal['Clay']

undrained_shear_strength pydantic-field

undrained_shear_strength: float

Data pydantic-model

Bases: BaseModel

Soil layer row for pile capacity.

Fields:

as_dict property

as_dict

depth pydantic-field

depth: float

effective_unit_weight pydantic-field

effective_unit_weight: float

model pydantic-field

model: SandData | ClayData

Metadata pydantic-model

Bases: BaseModel

Pile geometry and capacity method settings.

Fields:

averaging_diameter_factor pydantic-field

averaging_diameter_factor: float = 1.5

depth_inc pydantic-field

depth_inc: float = 0.005

function_sequence_pile_capacity pydantic-field

function_sequence_pile_capacity: Literal[
    "PileCapacityUSACE1991"
] = "PileCapacityUSACE1991"

Function sequence used for pile capacity

pile_critical_depth pydantic-field

pile_critical_depth: NullableFloat = None

pile_diameter pydantic-field

pile_diameter: float = 1.0

pile_embedment_length pydantic-field

pile_embedment_length: float = 10.0

pile_shape pydantic-field

pile_shape: Literal['circle'] = 'circle'

zero_friction_length pydantic-field

zero_friction_length: float = 0.0

PileCapacityUSACE1991Results pydantic-model

Bases: BaseModel

USACE pile capacity results.

Fields:

data pydantic-field

data: list[PileCapacityUSACE1991ResultsData]

metadata pydantic-field

metadata: PileCapacityUSACE1991ResultsMetadata

PileFoundationCapacity pydantic-model

Bases: Model

Pile axial capacity (USACE).

References
  • usace1991design

Fields:

data pydantic-field

data: list[Data]

discrete_data property

discrete_data

last_depth property

last_depth

metadata pydantic-field

metadata: Metadata

required_min_depth property

required_min_depth

results pydantic-field

results: PileCapacityUSACE1991Results | None = None

calculate

calculate() -> Self

Run the calculation and store results.

Returns:

Type Description
Self

self with results populated.

check_data

check_data()

get_results_figure

get_results_figure() -> plotly.graph_objects.Figure

Plot pile capacity traces versus depth.

Returns:

Type Description
Figure

Plotted Plotly figure.

Raises:

Type Description
ValueError

If results have not been calculated.

plot

plot() -> matplotlib.figure.Figure

Plot tip and shaft resistance versus depth.

Returns:

Type Description
Figure

Matplotlib figure with two depth panels.

Raises:

Type Description
ValueError

If results have not been calculated.

SandData pydantic-model

Bases: BaseModel

Sand layer strength inputs for pile capacity.

Fields:

bearing_capacity_factor_surcharge pydantic-field

bearing_capacity_factor_surcharge: NullableFloat = None

coefficient_of_earth_pressure_at_rest pydantic-field

coefficient_of_earth_pressure_at_rest: float

friction_angle pydantic-field

friction_angle: float

soil_type pydantic-field

soil_type: Literal['Sand']