Index
subsurfaceio.pile_group
Pile group API.
Place piles in plan and compute group efficiency:
from subsurfaceio.pile_group import Pile, PileGroup
PileGroup(piles=[Pile(center_x=0, center_y=0, diameter=0.5)]).calculate()
Classes:
| Name | Description |
|---|---|
EfficiencyFactor |
Pairwise pile interaction efficiency factor. |
Pile |
Single pile location and diameter in a group. |
PileGroup |
Pile group efficiency factor calculation. |
PileGroupResults |
Pile group efficiency-factor results. |
PileGroupResultsData |
Per-pile efficiency-factor results. |
PileGroupResultsMetadata |
Group-level efficiency factor. |
EfficiencyFactor
pydantic-model
Bases: BaseModel
Pairwise pile interaction efficiency factor.
Fields:
-
respect_to(int) -
configuration(Literal['leading', 'trailing', 'side-by-side', 'skewed']) -
value(float)
Pile
pydantic-model
Bases: BaseModel
Single pile location and diameter in a group.
Fields:
PileGroup
pydantic-model
Bases: Model
Pile group efficiency factor calculation.
References
- ensoftGROUPtechnicalmanual
Fields:
-
piles(list[Pile]) -
results(PileGroupResults | None)
calculate
Run the calculation and store results.
Returns:
| Type | Description |
|---|---|
Self
|
|
get_leading
staticmethod
Leading-pile efficiency factor (group-manual figure 6.5).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
distance
|
float
|
Center-to-center spacing. |
required |
diameter
|
float
|
Target pile diameter. |
required |
Returns:
| Type | Description |
|---|---|
float
|
Efficiency factor clipped to at most 1. |
get_side_by_side
staticmethod
Side-by-side efficiency factor (group-manual figure 6.4).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
distance
|
float
|
Center-to-center spacing. |
required |
diameter
|
float
|
Target pile diameter. |
required |
Returns:
| Type | Description |
|---|---|
float
|
Efficiency factor clipped to at most 1. |
get_trailing
staticmethod
Trailing-pile efficiency factor (group-manual figure 6.6).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
distance
|
float
|
Center-to-center spacing. |
required |
diameter
|
float
|
Target pile diameter. |
required |
Returns:
| Type | Description |
|---|---|
float
|
Efficiency factor clipped to at most 1. |
plot
Draw the pile group in plan with per-pile efficiency labels.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
plot_module
|
Literal['plotly', 'mpl']
|
Figure backend. |
'plotly'
|
Returns:
| Type | Description |
|---|---|
Any
|
Plotted figure for the selected backend. |
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
rotate
Rotate pile centers 90 degrees about the group centroid.
Returns:
| Type | Description |
|---|---|
Self
|
|
set_from_dxf
Load piles from circle entities in a DXF file.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
str
|
Path to a DXF file. |
required |
Returns:
| Type | Description |
|---|---|
Self
|
|
PileGroupResults
pydantic-model
Bases: BaseModel
Pile group efficiency-factor results.
Fields:
PileGroupResultsData
pydantic-model
Bases: BaseModel
Per-pile efficiency-factor results.
Fields:
-
efficiency_factors(list[EfficiencyFactor]) -
efficiency_factor(float)