geolib.soils.layers

Profile and Layer classes which are used by both D-Foundations and DSheetPiling. D-Foundations often requires more parameters, which are unused for DSheetPiling.

Classes

CPT(**data)

Internal Placeholder CPT measurements as used in D-Foundations/D-Sheetpiling.

CPTRule(**data)

Placeholder class for CPT interpretation options.

Profile(**data)

D-Foundations Profile.

ProfileLayer(**data)

Layer in a Profile.

class geolib.soils.layers.CPT(**data)

Internal Placeholder CPT measurements as used in D-Foundations/D-Sheetpiling.

It is here because input files can contain CPTs coupled to a Profile.

Todo

Add Friction and other parameters?

Parameters:

data (Any)

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'ser_json_inf_nan': 'constants', 'validate_assignment': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

qc: List[float]
z: List[float]
class geolib.soils.layers.CPTRule(**data)

Placeholder class for CPT interpretation options.

Parameters:

data (Any)

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'ser_json_inf_nan': 'constants', 'validate_assignment': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class geolib.soils.layers.Profile(**data)

D-Foundations Profile.

Todo

  • Determine extra fields related to Excavations

Parameters:

data (Any)

bottom_positive_skin_friction: float
cpt: CPT
cpt_rule: CPTRule
expected_ground_level_settlement: float
label: str
layers: List[ProfileLayer]
min_layer_thickness: float
model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'ser_json_inf_nan': 'constants', 'validate_assignment': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

overconsolidation_ratio: float
phreatic_level: float
pile_tip_level: float
top_positive_skin_friction: float
class geolib.soils.layers.ProfileLayer(**data)

Layer in a Profile. Note that we add the vertical location of the layer with a Point class.

Todo

  • Will the ocr be added to the Soil class?

  • Decouple pore_pressures into special Class/Line

Parameters:

data (Any)

material: Soil
model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'ser_json_inf_nan': 'constants', 'validate_assignment': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

ocr: float
pore_pressure_bottom: float
pore_pressure_top: float
reduction_cone_resistance: float
top: Point