geolib.models.dfoundations.dfoundations_model

Classes

BearingPilesModel(**data)

CalculationOptions(**data)

Set calculation type:

DFoundationsModel(**data)

D-Foundations enables the user to calculate piles (bearing and tension) and shallow foundation in accordance with the Dutch (and Belgian) standards.

ModelOptions(**data)

TensionPilesModel(**data)

class geolib.models.dfoundations.dfoundations_model.BearingPilesModel(**data)
Parameters:

data (Any)

area: Optional[Annotated[float]]
factor_gamma_b: Optional[Annotated[float]]
factor_gamma_fnk: Optional[Annotated[float]]
factor_gamma_s: Optional[Annotated[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].

classmethod model_type()
class geolib.models.dfoundations.dfoundations_model.CalculationOptions(**data)

Set calculation type:

# Verification VERIFICATION_DESIGN = 0 # Only valid for Bearing Piles VERIFICATION_COMPLETE = 1

# Preliminary Design INDICATION_BEARING_CAPACITY = 2 BEARING_CAPACITY_AT_FIXED_PILETIP_LEVELS = 3 PILETIP_LEVELS_AND_NET_BEARING_CAPACITY = 4

Note that cpt_test_level is related to the chosen CPTs for the calculation. The GUI will override the display of an invalid value.

Parameters:

data (Any)

calculationtype: SubCalculationType
cpt_test_level: Optional[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].

net_bearing_capacity: Optional[float]
trajectory_begin: float
trajectory_end: float
trajectory_interval: float
class geolib.models.dfoundations.dfoundations_model.DFoundationsModel(**data)

D-Foundations enables the user to calculate piles (bearing and tension) and shallow foundation in accordance with the Dutch (and Belgian) standards.

This model can read, modify and create *.foi files, read *.fod and *.err files.

Parameters:

data (Any)

add_pile_if_unique(pile, location)

Add pile on location to the model. Requires setup of the Pile and Location first.

Parameters:
add_profile(profile)

Add profile on location to the model. Requires setup of the Profile and Location first.

Parameters:

profile (Profile)

Return type:

str

add_soil(soil)

Soil is converted in the internal structure and added in soil_collection.

Parameters:

soil (Soil)

Return type:

str

property bearing_pile_locations

Enables easy access to the bearing piles location in the internal dict-like datastructure. Also enables edit/delete for individual bearing pile locations.

property bearing_piles

Enables easy access to the bearing piles in the internal dict-like datastructure. Also enables edit/delete for individual Piles.

property console_flags: List[str]
property cpts: CPTList
property custom_console_path: Path
datastructure: Union[DFoundationsDumpStructure, DFoundationsStructure]

This is the base class for all models in GEOLib.

Note that datastructure is a SerializeAsAny type, which means that the inheriting class is serialized according to its own definition (duck-typing). This is needed since Pydantic v2 as the default behavior has changed: https://docs.pydantic.dev/latest/concepts/serialization/#subclass-instances-for-fields-of-basemodel-dataclasses-typeddict

property default_console_path: Path
property input

Access internal dict-like datastructure of the input.

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].

property output: DFoundationsDumpfileOutputStructure

Access internal dict-like datastructure of the output.

Requires a successful execute.

property parser_provider_type: Type[DFoundationsParserProvider]

Returns the parser provider type of the current concrete class.

Raises:

NotImplementedError – If not implemented in the concrete class.

Returns:

Type[BaseParserProvider] – Concrete parser provider.

property profiles

Enables easy access to the profiles in the internal dict-like datastructure. Also enables edit/delete for individual Piles.

serialize(filename)

Serialize model to input file.

Parameters:

filename (Union[Path, BinaryIO])

set_model(model, calculation)

(Re)Set ModelType (Bearing/Tension) and ConstructionType for model.

Please note:

  • All profiles will be automatically selected for calculation

  • Only the relevant pile types will be used (bearing/tension):

    • Only the first one added will be used in the case of verification calculation

  • On model change (bearing to tensions and reverse) the soils will be replaced by defaults

It is advised to only use this method once at the beginning of your workflow.

Parameters:
Return type:

None

property soils: SoilCollection
property tension_pile_locations

Enables easy access to the tension piles location in the internal dict-like datastructure. Also enables edit/delete for individual tension pile locations.

property tension_piles

Enables easy access to the tension piles in the internal dict-like datastructure. Also enables edit/delete for individual Piles.

class geolib.models.dfoundations.dfoundations_model.ModelOptions(**data)
Parameters:

data (Any)

ea_gem: Optional[Annotated[float]]
factor_xi3: Optional[Annotated[float]]
factor_xi4: Optional[Annotated[float]]
is_overrule_excavation: Bool
is_rigid: Bool
is_suppress_qc_reduction: Bool
is_write_intermediate_results: Bool
max_allowed_rel_rotation_lim_state_serv: Annotated[int]
max_allowed_rel_rotation_lim_state_str: Annotated[int]
max_allowed_settlement_lim_state_serv: Annotated[float]
max_allowed_settlement_lim_state_str: Annotated[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].

classmethod model_type()
use_almere_rules: Bool
use_extra_almere_rules: Bool
use_interaction_model: Bool
use_pile_group: Bool
class geolib.models.dfoundations.dfoundations_model.TensionPilesModel(**data)
Parameters:

data (Any)

factor_gamma_gamma: Optional[Annotated[float]]
factor_gamma_st: Optional[Annotated[float]]
factor_gamma_var: Optional[Annotated[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].

classmethod model_type()
surcharge: Annotated[float]
unit_weight_water: Annotated[float]
use_compaction: Bool
use_piezometric_levels: Bool