py-pilecore 0.2.3__py3-none-any.whl → 0.2.5__py3-none-any.whl

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.

@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: py-pilecore
3
- Version: 0.2.3
3
+ Version: 0.2.5
4
4
  Summary: Public python SDK for the CEMS PileCore web-API.
5
5
  License: MIT License
6
6
 
@@ -32,10 +32,11 @@ License-File: LICENSE
32
32
  Requires-Dist: pygef <1,>0.8
33
33
  Requires-Dist: numpy <2,>1
34
34
  Requires-Dist: pandas <3,>2
35
- Requires-Dist: cems-nuclei[client] <1,>0.3
35
+ Requires-Dist: cems-nuclei[client] <1,>=0.5
36
36
  Requires-Dist: matplotlib <4,>=3.8
37
37
  Requires-Dist: tqdm[notebook] <5,>4
38
38
  Requires-Dist: natsort <9,>8
39
+ Requires-Dist: shapely <3,>=2
39
40
  Provides-Extra: docs
40
41
  Requires-Dist: Sphinx ==6.1.3 ; extra == 'docs'
41
42
  Requires-Dist: sphinx-autodoc-typehints ==1.22 ; extra == 'docs'
@@ -1,23 +1,23 @@
1
1
  pypilecore/__init__.py,sha256=T2Uuao6fboVhrzKI_Sa7jXbcNAUl_PKk9BFdsozOG98,78
2
- pypilecore/_version.py,sha256=ouf8HFn-1JQFt9Fy5U9stS_sDtgokWW7hHtaIPyQYeA,175
2
+ pypilecore/_version.py,sha256=32GW00vMKy-dZ6YEGZU761DjY4UfQ3SE86XtIj3yyhs,175
3
3
  pypilecore/api.py,sha256=Bq7FRSQQGOENY7HTI8bW41-WBNPpqXZvyN1A71VUam4,5141
4
4
  pypilecore/exceptions.py,sha256=-MZOfsxyHLCI0k1-wZFfVsMxc1lya5buuhLks5rxlCo,89
5
5
  pypilecore/plot_utils.py,sha256=rK5_067-4-x7LzZgt_t6ahcGrZInxNrqHqsy0RzCnq8,954
6
6
  pypilecore/utils.py,sha256=ib9LgJBIgWukL7zd_Zk1LP27UTMIZTRJ4RBB6ubn97o,1186
7
7
  pypilecore/input/__init__.py,sha256=tlmThdPtO8e6L6pqxuRQ7EOHRxYwuIcaNNGlZyAnzig,606
8
- pypilecore/input/grouper_properties.py,sha256=Dw17aQUyEflPOz3QEOZLx_3A4L0ctmaMtKJgBMWY14Q,10881
9
- pypilecore/input/multi_cpt.py,sha256=ODrFHakObVBF0nx3-YaY7ZeQwM1wcydvJBjQxjyH7No,19036
8
+ pypilecore/input/grouper_properties.py,sha256=AqZHvg-CXcoTW7u9wgyqSm1oZLBc7sSoTawxGK69144,10895
9
+ pypilecore/input/multi_cpt.py,sha256=ksXwMzY1KeSyWeeyiCkJVMilIWxAS45XwKXaS_uEQAE,19086
10
10
  pypilecore/input/pile_properties.py,sha256=mK8_VRy-tHZCKFHcv8ftMlCEs8KEsZpG9eGLq13hYPA,8400
11
- pypilecore/input/soil_properties.py,sha256=ydYW9p3SWurOR-SndocPoyCCb6yWIN9aRjf5ZdpXU0c,6927
11
+ pypilecore/input/soil_properties.py,sha256=6JIy5CHXReKZNrsB0m-ehJKUM97t-GBO04MG9QyHXMM,6962
12
12
  pypilecore/results/__init__.py,sha256=ggTI2QzILhX_oNx1YMOih6IVCkBFg8I5-Jyn9Sw3_h0,389
13
- pypilecore/results/grouper_result.py,sha256=C_6zOeuxhhemzssvQZ-JO3ZNzR0A9BTPduzYVUqkYY8,19596
13
+ pypilecore/results/grouper_result.py,sha256=9UV_fyUttqYuFgmdBCAvm6OXRTohF7oU4btxzQh1Fzk,19482
14
14
  pypilecore/results/load_settlement.py,sha256=EbfTrSvH_g96KE-x8ZjmO8D0mt5KFaQ_-AR8u4blLsU,9752
15
15
  pypilecore/results/multi_cpt_results.py,sha256=vZLy7CRUHnShVzuiixfzGWZEdxeMMLWv57Xm_x8rDu4,22466
16
16
  pypilecore/results/pile_properties.py,sha256=z1R5UNoYjBem2rS8LMJ_ye2J5ejDoSilU5fCjUrNdUg,28592
17
17
  pypilecore/results/single_cpt_results.py,sha256=-fmlgBPyCSyID7d-u-pPUdu5PLExtyKQc2kXQFNhQvs,17564
18
18
  pypilecore/results/soil_properties.py,sha256=oZYTKSXP5UgxY2vwX-bu_X447KLptuYPpsgFi_E00IQ,20704
19
- py_pilecore-0.2.3.dist-info/LICENSE,sha256=3OCAZXffN0Bettjeya8uF_ZYegyvvCfH1WUt6CrHb_0,1061
20
- py_pilecore-0.2.3.dist-info/METADATA,sha256=4TMsODAnmNxtbyz4hhDcVNXT8WIuFA9fGz-0ICJuddQ,5775
21
- py_pilecore-0.2.3.dist-info/WHEEL,sha256=Xo9-1PvkuimrydujYJAjF7pCkriuXBpUPEjma1nZyJ0,92
22
- py_pilecore-0.2.3.dist-info/top_level.txt,sha256=7BKIWZuSkbQtJ0ho5P1JvcaEbHzqADCcBuOduZmIaiI,11
23
- py_pilecore-0.2.3.dist-info/RECORD,,
19
+ py_pilecore-0.2.5.dist-info/LICENSE,sha256=3OCAZXffN0Bettjeya8uF_ZYegyvvCfH1WUt6CrHb_0,1061
20
+ py_pilecore-0.2.5.dist-info/METADATA,sha256=G5wi-AfRRynjXYGF-G72Me0isAoT_4O4QbRGOtPCpJg,5806
21
+ py_pilecore-0.2.5.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
22
+ py_pilecore-0.2.5.dist-info/top_level.txt,sha256=7BKIWZuSkbQtJ0ho5P1JvcaEbHzqADCcBuOduZmIaiI,11
23
+ py_pilecore-0.2.5.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.41.3)
2
+ Generator: bdist_wheel (0.42.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
pypilecore/_version.py CHANGED
@@ -4,4 +4,4 @@ try:
4
4
  __version__ = version("py-pilecore")
5
5
  # during CI
6
6
  except PackageNotFoundError:
7
- __version__ = "0.2.3"
7
+ __version__ = "0.2.5"
@@ -121,11 +121,11 @@ def create_grouper_payload(
121
121
  overrule_nan:
122
122
  Default is 0.0
123
123
  The default behavior is to replace NaN with zero, for one of the following
124
- attributes ["R_b_cal", "F_nk_cal", "R_s_cal"].
124
+ attributes ["R_b_cal", "F_nk_d", "R_s_cal"].
125
125
  skip_nan:
126
126
  Default is False
127
127
  If True the CPTs are skipped that have NaN values in one of the following
128
- attributes ["R_b_cal", "F_nk_cal", "R_s_cal"], this means that they are not used in the grouper method.
128
+ attributes ["R_b_cal", "F_nk_d", "R_s_cal"], this means that they are not used in the grouper method.
129
129
 
130
130
  Raises
131
131
  ------
@@ -172,7 +172,7 @@ def create_grouper_payload(
172
172
  f" CPT {name} does not have a x-coordinate or y-coordinate"
173
173
  )
174
174
 
175
- for item in ["R_b_cal", "F_nk_cal", "R_s_cal"]:
175
+ for item in ["R_b_cal", "F_nk_d", "R_s_cal"]:
176
176
  if np.isnan(cpt_result.table.__getattribute__(item)).any():
177
177
  if skip_nan:
178
178
  has_nan = True
@@ -201,7 +201,7 @@ def create_grouper_payload(
201
201
  cpt_result.table.R_b_cal, nan=overrule_nan
202
202
  ).tolist(),
203
203
  "negative_friction": np.nan_to_num(
204
- cpt_result.table.F_nk_cal, nan=overrule_nan
204
+ cpt_result.table.F_nk_d, nan=overrule_nan
205
205
  ).tolist(),
206
206
  "shaft_bearing_capacity": np.nan_to_num(
207
207
  cpt_result.table.R_s_cal, nan=overrule_nan
@@ -227,7 +227,7 @@ def create_grouper_payload(
227
227
  f"upper boundary: {max(pile_tip_level)}, lower boundary: {min(pile_tip_level)}. \n"
228
228
  )
229
229
  raise ValueError(msg)
230
- payload["pile_tip_level"] = list(raw_lengths[0])
230
+ payload["pile_tip_level"] = sorted(list(raw_lengths[0]), reverse=True)
231
231
 
232
232
  return payload
233
233
 
@@ -15,9 +15,9 @@ def create_multi_cpt_payload(
15
15
  cptdata_objects: List[CPTData],
16
16
  classify_tables: Dict[str, dict],
17
17
  groundwater_level_nap: float,
18
- pile_type: Literal["A", "B", "C", "D", "E", "F", "G"],
19
- specification: Literal["concrete", "steel", "micro", "wood"],
20
- installation: Literal["1", "2", "3", "4", "5", "6", "7"],
18
+ pile_type: Literal["concrete", "steel", "micro", "wood"],
19
+ specification: Literal["1", "2", "3", "4", "5", "6", "7"],
20
+ installation: Literal["A", "B", "C", "D", "E", "F", "G"],
21
21
  pile_shape: Literal["round", "rect"],
22
22
  friction_range_strategy: Literal[
23
23
  "manual", "lower_bound", "settlement_driven"
@@ -25,7 +25,8 @@ def create_multi_cpt_payload(
25
25
  stiff_construction: bool = False,
26
26
  cpts_group: List[str] | None = None,
27
27
  fixed_negative_friction_range_nap: Tuple[float, float] | None = None,
28
- fixed_positive_friction_range_nap: Tuple[float, str | float] | None = None,
28
+ fixed_positive_friction_range_nap: Tuple[float, Literal["ptl"] | float]
29
+ | None = None,
29
30
  negative_shaft_friction: float | None = None,
30
31
  apply_qc3_reduction: bool | None = None,
31
32
  relative_pile_load: float | None = 0.7,
@@ -34,9 +35,11 @@ def create_multi_cpt_payload(
34
35
  pile_head_level_nap: float | Literal["surface"] = "surface",
35
36
  excavation_depth_nap: float | None = None,
36
37
  excavation_param_t: float = 1.0,
37
- individual_negative_friction_range_nap: Mapping[str, Tuple[float, str]]
38
+ individual_negative_friction_range_nap: Mapping[str, Tuple[float, float]]
38
39
  | None = None,
39
- individual_positive_friction_range_nap: Mapping[str, Tuple[float, str]]
40
+ individual_positive_friction_range_nap: Mapping[
41
+ str, Tuple[float, Literal["ptl"] | float]
42
+ ]
40
43
  | None = None,
41
44
  diameter_base: float | None = None,
42
45
  diameter_shaft: float | None = None,
@@ -26,9 +26,11 @@ def create_soil_properties_payload(
26
26
  groundwater_level_nap: float,
27
27
  friction_range_strategy: Literal["manual", "lower_bound", "settlement_driven"],
28
28
  excavation_depth_nap: float | None = None,
29
- individual_negative_friction_range_nap: Mapping[Any, Tuple[float, str]]
29
+ individual_negative_friction_range_nap: Mapping[Any, Tuple[float, float]]
30
30
  | None = None,
31
- individual_positive_friction_range_nap: Mapping[Any, Tuple[float, str]]
31
+ individual_positive_friction_range_nap: Mapping[
32
+ Any, Tuple[float, Literal["ptl"] | float]
33
+ ]
32
34
  | None = None,
33
35
  ) -> Tuple[List[dict], Dict[str, dict]]:
34
36
  """
@@ -528,14 +528,15 @@ class GrouperResults:
528
528
 
529
529
  - cpts within a subgroup
530
530
  - green:
531
- Subgroups is spatially coherent, which means there are no other CPTs in between the members
532
- of the subgroup and follows the NEN9997-1 3.2.3 centre to centre validation
531
+ There are no other CPTs in between the members of the subgroup. The
532
+ group is also compliant with the NEN9997-1 3.2.3 centre to centre
533
+ validation.
533
534
  - orange:
534
- Subgroups is spatially coherent, which means there are no other CPTs in between the members
535
- of the subgroup and does not follow the NEN9997-1 3.2.3 centre to centre validation
535
+ There are no other CPTs in between the members of the subgroup. The
536
+ centre-to-centre check failed and so the group does not follow the
537
+ NEN9997-1 3.2.3 centre to centre validation.
536
538
  - red:
537
- Subgroups is not spatially coherent, which means there are other CPTs in between the
538
- members of the subgroup and does not follow the NEN9997-1 3.2.3 centre to centre validation
539
+ There are other CPTs in between the members of the subgroup.
539
540
  - valid depth of the subgroup
540
541
 
541
542
  Parameters