geolysis 0.16.0__tar.gz → 0.18.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {geolysis-0.16.0 → geolysis-0.18.0}/PKG-INFO +1 -1
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/__init__.py +1 -1
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/bearing_capacity/abc/_cohl/_core.py +10 -8
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/bearing_capacity/ubc/__init__.py +3 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/foundation.py +24 -27
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis.egg-info/PKG-INFO +1 -1
- {geolysis-0.16.0 → geolysis-0.18.0}/LICENSE.txt +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/README.md +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/bearing_capacity/__init__.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/bearing_capacity/abc/__init__.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/bearing_capacity/abc/_cohl/__init__.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/bearing_capacity/abc/_cohl/bowles_abc.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/bearing_capacity/abc/_cohl/meyerhof_abc.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/bearing_capacity/abc/_cohl/terzaghi_abc.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/bearing_capacity/ubc/_core.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/bearing_capacity/ubc/_terzaghi_ubc.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/bearing_capacity/ubc/_vesic_ubc.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/exceptions.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/soil_classifier.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/spt.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/utils/__init__.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis/utils/math.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis.egg-info/SOURCES.txt +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis.egg-info/dependency_links.txt +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis.egg-info/requires.txt +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/geolysis.egg-info/top_level.txt +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/pyproject.toml +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/setup.cfg +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/setup.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/tests/test_docs.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/tests/test_foundation.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/tests/test_soil_classifier.py +0 -0
- {geolysis-0.16.0 → geolysis-0.18.0}/tests/test_spt.py +0 -0
@@ -4,6 +4,7 @@ from typing import Annotated
|
|
4
4
|
|
5
5
|
from func_validator import (
|
6
6
|
validate_params,
|
7
|
+
MustBePositive,
|
7
8
|
MustBeNonNegative,
|
8
9
|
MustBeLessThanOrEqual,
|
9
10
|
)
|
@@ -25,10 +26,10 @@ class AllowableBearingCapacity(ABC):
|
|
25
26
|
MAX_TOL_SETTLEMENT = 25.4
|
26
27
|
|
27
28
|
def __init__(
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
29
|
+
self,
|
30
|
+
corrected_spt_n_value: float,
|
31
|
+
tol_settlement: float,
|
32
|
+
foundation_size: Foundation,
|
32
33
|
) -> None:
|
33
34
|
self.corrected_spt_n_value = corrected_spt_n_value
|
34
35
|
self.tol_settlement = tol_settlement
|
@@ -42,8 +43,8 @@ class AllowableBearingCapacity(ABC):
|
|
42
43
|
@corrected_spt_n_value.setter
|
43
44
|
@validate_params
|
44
45
|
def corrected_spt_n_value(
|
45
|
-
|
46
|
-
|
46
|
+
self,
|
47
|
+
corrected_spt_n_value: Annotated[float, MustBeNonNegative],
|
47
48
|
):
|
48
49
|
self._corrected_spt_n_value = corrected_spt_n_value
|
49
50
|
|
@@ -55,8 +56,9 @@ class AllowableBearingCapacity(ABC):
|
|
55
56
|
@tol_settlement.setter
|
56
57
|
@validate_params
|
57
58
|
def tol_settlement(
|
58
|
-
|
59
|
-
|
59
|
+
self,
|
60
|
+
tol_settlement: Annotated[
|
61
|
+
float, MustBePositive, MustBeLessThanOrEqual(25.4)],
|
60
62
|
):
|
61
63
|
self._tol_settlement = tol_settlement
|
62
64
|
|
@@ -59,6 +59,7 @@ def create_ubc_4_all_soil_types(
|
|
59
59
|
depth: float,
|
60
60
|
width: float,
|
61
61
|
length: Optional[float] = None,
|
62
|
+
factor_of_safety: float = 3.0,
|
62
63
|
saturated_unit_wgt: float = 20.5,
|
63
64
|
eccentricity: float = 0.0,
|
64
65
|
ground_water_level: Optional[float] = inf,
|
@@ -78,6 +79,7 @@ def create_ubc_4_all_soil_types(
|
|
78
79
|
:param depth: Depth of foundation (m).
|
79
80
|
:param width: Width of foundation footing (m).
|
80
81
|
:param length: Length of foundation footing (m).
|
82
|
+
:param factor_of_safety: Factor of safety.
|
81
83
|
:param saturated_unit_wgt: Saturated unit weight of soil ($kN/m^3$).
|
82
84
|
:param eccentricity: The deviation of the foundation load from the
|
83
85
|
center of gravity of the foundation footing.
|
@@ -118,6 +120,7 @@ def create_ubc_4_all_soil_types(
|
|
118
120
|
friction_angle=friction_angle,
|
119
121
|
cohesion=cohesion,
|
120
122
|
moist_unit_wgt=moist_unit_wgt,
|
123
|
+
factor_of_safety=factor_of_safety,
|
121
124
|
saturated_unit_wgt=saturated_unit_wgt,
|
122
125
|
foundation_size=fnd_size,
|
123
126
|
apply_local_shear=apply_local_shear,
|
@@ -191,7 +191,7 @@ class CircularFooting(FootingSize):
|
|
191
191
|
|
192
192
|
def area(self) -> float:
|
193
193
|
"""Area of circular footing ($m^2$)."""
|
194
|
-
return pi * self.diameter
|
194
|
+
return pi * self.diameter**2 / 4
|
195
195
|
|
196
196
|
|
197
197
|
@add_repr
|
@@ -227,7 +227,7 @@ class SquareFooting(FootingSize):
|
|
227
227
|
|
228
228
|
def area(self) -> float:
|
229
229
|
"""Area of square footing ($m^2$)."""
|
230
|
-
return self.width
|
230
|
+
return self.width**2
|
231
231
|
|
232
232
|
|
233
233
|
@add_repr
|
@@ -272,13 +272,13 @@ class Foundation:
|
|
272
272
|
"""A simple class representing a foundation structure."""
|
273
273
|
|
274
274
|
def __init__(
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
275
|
+
self,
|
276
|
+
depth: float,
|
277
|
+
footing_size: FootingSize,
|
278
|
+
eccentricity: float = 0.0,
|
279
|
+
load_angle: float = 0.0,
|
280
|
+
ground_water_level: Optional[float] = inf,
|
281
|
+
foundation_type: FoundationType = FoundationType.PAD,
|
282
282
|
) -> None:
|
283
283
|
r"""
|
284
284
|
:param depth: Depth of foundation (m).
|
@@ -342,8 +342,7 @@ class Foundation:
|
|
342
342
|
|
343
343
|
@eccentricity.setter
|
344
344
|
@validate_params
|
345
|
-
def eccentricity(self, eccentricity: Annotated[
|
346
|
-
float, MustBeNonNegative]) -> None:
|
345
|
+
def eccentricity(self, eccentricity: Annotated[float, MustBeNonNegative]) -> None:
|
347
346
|
self._eccentricity = eccentricity
|
348
347
|
|
349
348
|
@property
|
@@ -354,9 +353,8 @@ class Foundation:
|
|
354
353
|
@load_angle.setter
|
355
354
|
@validate_params
|
356
355
|
def load_angle(
|
357
|
-
|
358
|
-
|
359
|
-
float, MustBeBetween(min_value=0.0, max_value=90.0)],
|
356
|
+
self,
|
357
|
+
load_angle: Annotated[float, MustBeBetween(min_value=0.0, max_value=90.0)],
|
360
358
|
) -> None:
|
361
359
|
self._load_angle = load_angle
|
362
360
|
|
@@ -368,8 +366,8 @@ class Foundation:
|
|
368
366
|
@ground_water_level.setter
|
369
367
|
@validate_params
|
370
368
|
def ground_water_level(
|
371
|
-
|
372
|
-
|
369
|
+
self,
|
370
|
+
ground_water_level: Annotated[float, MustBePositive],
|
373
371
|
):
|
374
372
|
self._ground_water_level = ground_water_level
|
375
373
|
|
@@ -381,9 +379,8 @@ class Foundation:
|
|
381
379
|
@foundation_type.setter
|
382
380
|
@validate_params
|
383
381
|
def foundation_type(
|
384
|
-
|
385
|
-
|
386
|
-
FoundationType, MustBeMemberOf(FoundationType)],
|
382
|
+
self,
|
383
|
+
foundation_type: Annotated[FoundationType, MustBeMemberOf(FoundationType)],
|
387
384
|
):
|
388
385
|
self._foundation_type = foundation_type
|
389
386
|
|
@@ -415,14 +412,14 @@ class Foundation:
|
|
415
412
|
|
416
413
|
@validate_params
|
417
414
|
def create_foundation(
|
418
|
-
|
419
|
-
|
420
|
-
|
421
|
-
|
422
|
-
|
423
|
-
|
424
|
-
|
425
|
-
|
415
|
+
depth: float,
|
416
|
+
width: float,
|
417
|
+
length: Annotated[float, DependsOn(shape=Shape.RECTANGLE)] = None,
|
418
|
+
eccentricity: float = 0.0,
|
419
|
+
load_angle: float = 0.0,
|
420
|
+
ground_water_level: Optional[float] = inf,
|
421
|
+
foundation_type: FoundationType = "pad",
|
422
|
+
shape: Annotated[Shape | str, MustBeMemberOf(Shape)] = "square",
|
426
423
|
) -> Foundation:
|
427
424
|
r"""A factory function that encapsulate the creation of a foundation.
|
428
425
|
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|