py-pilecore 1.0.3__tar.gz → 1.1.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.

Potentially problematic release.


This version of py-pilecore might be problematic. Click here for more details.

Files changed (54) hide show
  1. {py_pilecore-1.0.3/src/py_pilecore.egg-info → py_pilecore-1.1.0}/PKG-INFO +1 -1
  2. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/pyproject.toml +1 -1
  3. {py_pilecore-1.0.3 → py_pilecore-1.1.0/src/py_pilecore.egg-info}/PKG-INFO +1 -1
  4. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/_version.py +1 -1
  5. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/input/multi_cpt.py +4 -1
  6. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/input/soil_properties.py +4 -1
  7. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/input/tension.py +34 -0
  8. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/LICENSE +0 -0
  9. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/README.md +0 -0
  10. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/setup.cfg +0 -0
  11. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/py_pilecore.egg-info/SOURCES.txt +0 -0
  12. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/py_pilecore.egg-info/dependency_links.txt +0 -0
  13. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/py_pilecore.egg-info/requires.txt +0 -0
  14. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/py_pilecore.egg-info/top_level.txt +0 -0
  15. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/__init__.py +0 -0
  16. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/api.py +0 -0
  17. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/common/__init__.py +0 -0
  18. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/common/piles/__init__.py +0 -0
  19. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/common/piles/geometry/__init__.py +0 -0
  20. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/common/piles/geometry/components/__init__.py +0 -0
  21. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/common/piles/geometry/components/common.py +0 -0
  22. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/common/piles/geometry/components/rectangle.py +0 -0
  23. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/common/piles/geometry/components/round.py +0 -0
  24. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/common/piles/geometry/main.py +0 -0
  25. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/common/piles/geometry/materials.py +0 -0
  26. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/common/piles/grid.py +0 -0
  27. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/common/piles/main.py +0 -0
  28. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/common/piles/type.py +0 -0
  29. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/exceptions.py +0 -0
  30. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/input/__init__.py +0 -0
  31. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/input/grouper_properties.py +0 -0
  32. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/plot_utils.py +0 -0
  33. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/results/__init__.py +0 -0
  34. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/results/cases_multi_cpt_results.py +0 -0
  35. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/results/compression/multi_cpt_results.py +0 -0
  36. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/results/compression/single_cpt_results.py +0 -0
  37. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/results/grouper_result.py +0 -0
  38. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/results/load_settlement.py +0 -0
  39. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/results/post_processing.py +0 -0
  40. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/results/result_definitions.py +0 -0
  41. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/results/soil_properties.py +0 -0
  42. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/results/tension/multi_cpt_results.py +0 -0
  43. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/results/tension/single_cpt_results.py +0 -0
  44. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/results/typing.py +0 -0
  45. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/utils.py +0 -0
  46. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/viewers/__init__.py +0 -0
  47. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/viewers/interactive_figures/__init__.py +0 -0
  48. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/viewers/interactive_figures/figure_cpt_group_results_versus_ptls.py +0 -0
  49. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/viewers/interactive_figures/figure_cpt_results_plan_view.py +0 -0
  50. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/viewers/interactive_figures/figure_cpt_results_versus_ptls.py +0 -0
  51. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/viewers/interactive_figures/utils.py +0 -0
  52. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/viewers/viewer_cpt_group_results.py +0 -0
  53. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/viewers/viewer_cpt_results.py +0 -0
  54. {py_pilecore-1.0.3 → py_pilecore-1.1.0}/src/pypilecore/viewers/viewer_cpt_results_plan_view.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: py-pilecore
3
- Version: 1.0.3
3
+ Version: 1.1.0
4
4
  Summary: Public python SDK for the CEMS PileCore web-API.
5
5
  License: MIT License
6
6
 
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "py-pilecore"
7
- version = "1.0.3"
7
+ version = "1.1.0"
8
8
  description = "Public python SDK for the CEMS PileCore web-API."
9
9
  requires-python = ">=3.11"
10
10
  dependencies = [
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: py-pilecore
3
- Version: 1.0.3
3
+ Version: 1.1.0
4
4
  Summary: Public python SDK for the CEMS PileCore web-API.
5
5
  License: MIT License
6
6
 
@@ -4,4 +4,4 @@ try:
4
4
  __version__ = version("py-pilecore")
5
5
  # during CI
6
6
  except PackageNotFoundError:
7
- __version__ = "1.0.3"
7
+ __version__ = "1.1.0"
@@ -14,7 +14,7 @@ def create_multi_cpt_payload(
14
14
  pile_tip_levels_nap: Sequence[float],
15
15
  cptdata_objects: List[CPTData],
16
16
  classify_tables: Dict[str, dict],
17
- groundwater_level_nap: float,
17
+ groundwater_level_nap: float | None,
18
18
  pile: PileProperties,
19
19
  friction_range_strategy: Literal[
20
20
  "manual", "lower_bound", "settlement_driven"
@@ -94,6 +94,7 @@ def create_multi_cpt_payload(
94
94
 
95
95
  groundwater_level_nap:
96
96
  The groundwater level. Unit: [m] w.r.t. NAP.
97
+ If None, a value of 1 meter below the ground surface level is used.
97
98
  pile:
98
99
  A PileProperties object.
99
100
  friction_range_strategy:
@@ -161,6 +162,8 @@ def create_multi_cpt_payload(
161
162
  In this case, the soil_properties.service_level property is used.
162
163
  excavation_depth_nap:
163
164
  Soil excavation depth after the CPT was taken. Unit: [m] w.r.t. NAP.
165
+ If None, a value equal to the ground surface level is used.
166
+ Default = None
164
167
  excavation_param_t:
165
168
  Excavation parameter depending on pile installation method and/or phasing.
166
169
  - Use 1.0 (default) for post-excavation installation with vibration (i.e. hammering).
@@ -41,7 +41,7 @@ def get_cpt_depth(cpt: CPTData) -> NDArray:
41
41
  def create_soil_properties_payload(
42
42
  cptdata_objects: List[CPTData],
43
43
  classify_tables: Dict[str, dict],
44
- groundwater_level_nap: float,
44
+ groundwater_level_nap: float | None,
45
45
  friction_range_strategy: Literal["manual", "lower_bound", "settlement_driven"],
46
46
  excavation_depth_nap: float | None = None,
47
47
  master_ocr: float | None = None,
@@ -95,6 +95,7 @@ def create_soil_properties_payload(
95
95
  undrained shear strength [kPa]
96
96
  groundwater_level_nap:
97
97
  The groundwater level. Unit: [m] w.r.t. NAP.
98
+ If None, a value of 1 meter below the ground surface level is used.
98
99
  friction_range_strategy:
99
100
  Sets the method to determine the sleeve friction zones on the pile. The soil
100
101
  friction in the positive zone contributes to the bearing capacity, while the
@@ -102,6 +103,8 @@ def create_soil_properties_payload(
102
103
  "lower_bound" or "settlement_driven".
103
104
  excavation_depth_nap:
104
105
  Soil excavation depth after the CPT was taken. Unit: [m] w.r.t. NAP.
106
+ If None, a value equal to the ground surface level is used.
107
+ Default = None
105
108
  ocr:
106
109
  The Over-Consolidation-Ratio [-] of the foundation layer.
107
110
  individual_negative_friction_range_nap:
@@ -25,6 +25,9 @@ def create_multi_cpt_payload(
25
25
  top_of_tension_zone_nap: float | None = None,
26
26
  individual_top_of_tension_zone_nap: Mapping[Any, float] | None = None,
27
27
  excavation_param_t: float = 1.0,
28
+ excavation_stress_reduction_method: Literal["constant", "begemann"] = "constant",
29
+ excavation_width: float | None = None,
30
+ excavation_edge_distance: float | None = None,
28
31
  individual_ocr: Mapping[str, float] | None = None,
29
32
  overrule_xi: float | None = None,
30
33
  gamma_f_nk: float = 1.0,
@@ -111,6 +114,27 @@ def create_multi_cpt_payload(
111
114
  excavation method.
112
115
 
113
116
  See for more info NEN 9997-1+C2:2017 7.6.2.3.(10)(k)
117
+ excavation_stress_reduction_method:
118
+ Method used to calculate the stress reduction due to the excavation applied to the effective and total stresses.
119
+ Only used when `excavation_depth_nap` is different than `None`. It can be:
120
+ - "constant" (default): The stress reduction below the excavation is constant with depth. The stress reduction
121
+ is equal to the original effective stress (i.e. before the excavation) at the excavation depth.
122
+ - "begemann": The stress reduction below the excavation decreases with depth according to the Begemann method.
123
+ This method uses the elastic solution of a strip load acting on a semi-infinite homogeneous soil mass.
124
+ The load has a width equal to the excavation width and a magnitude equal to the original effective stress at
125
+ the excavation depth.
126
+ Regardless the method, the stress reduction applied above the excavation is equal to the original effective stress
127
+ at each corresponding depth.
128
+ excavation_width:
129
+ Width of the excavation [m]. Used to calculate the stress reduction due to the excavation if the Begemann method is selected.
130
+ In this case, it must be provided and it must be > 0.
131
+ excavation_edge_distance:
132
+ Distance from the pile centerline to the excavation edge [m]. Used to calculate the stress reduction due to the excavation if
133
+ the Begemann method is selected. In this case, it must be provided and it must be between 0.0 and 0.5 * excavation_width.
134
+
135
+ Note that:
136
+ - 0.0 means that the pile is located at the edge of the excavation.
137
+ - 0.5 * excavation_width means that the pile is at the center of the excavation.
114
138
  overrule_xi:
115
139
  Set a fixed value for xi in all calculations. Use with caution. This will
116
140
  overrule the calculation of xi-values based on the group-size, variation-
@@ -219,6 +243,16 @@ def create_multi_cpt_payload(
219
243
  # Add optional properties
220
244
  if excavation_depth_nap is not None:
221
245
  multi_cpt_payload["excavation_depth_nap"] = excavation_depth_nap
246
+ if excavation_stress_reduction_method == "constant":
247
+ multi_cpt_payload["excavation_settings"] = dict(
248
+ stress_reduction_method="constant"
249
+ )
250
+ else:
251
+ multi_cpt_payload["excavation_settings"] = dict(
252
+ stress_reductin_method="begemann",
253
+ excavation_width=excavation_width,
254
+ excavation_edge_distance=excavation_edge_distance,
255
+ )
222
256
  if overrule_xi is not None:
223
257
  multi_cpt_payload["overrule_xi"] = overrule_xi
224
258
  if pile_grid is not None:
File without changes
File without changes
File without changes