geolib.models.dsettlement.internal

Classes

Boundaries(*args[, boundaries])

Representation of [BOUNDARIES] group.

Boundary(*args[, id, curves])

CalculationOptions(*args[, ...])

CalculationSettings(*args[, ...])

ConsolidationModel(value[, names, module, ...])

Curve(*args[, id])

Curve is a Line consisting of two points (by reference).

Curves(*args[, curves])

Representation of [CURVES] group.

DSeriePoint(*args, id, X, Y, Z[, tolerance])

Converting points from geolib co-ordinate system to the d-settlement UI Internal setting of the geometry differs from API.

DSettlementInputStructure(*args, version, ...)

Representation of complete .sli file.

DSettlementOutputStructure(*args, results, ...)

Representation of complete .sld file, inheriting the structure of the .sli file as well.

DSettlementStructure(*args, input_data[, ...])

Depths(*args, depths)

Dimension(value[, names, module, qualname, ...])

DispersionConditionLayerBoundary(value[, ...])

DispersionConditionsLayerBoundaries(*args[, ...])

DistributionBoundaries(*args[, ...])

DrainedLayers(*args, drainedlayers)

FitCalculation(*args[, is_fit_calculation, ...])

FitOptions(*args[, ...])

GeometryData(*args[, points, curves, ...])

Representation of [GEOMETRY DATA] group.

HorizontalDisplacements(*args, ...)

InternalProbabilisticCalculationType(value)

KoppejanSettlements(*args, koppejansettlements)

Layer(*args[, id, material, piezo_top, ...])

Layers(*args[, layers])

Representation of [LAYERS] group.

Leakages(*args, leakages)

LoadValuesCircular(**data)

LoadValuesRectangular(**data)

LoadValuesTank(**data)

LoadValuesTrapeziform(**data)

LoadValuesUniform(**data)

Model(*args[, dimension, ...])

NonUniformLoad(**data)

NonUniformLoads(*args[, loads])

Representation of [NON-UNIFORM LOADS] group.

OtherLoad(**data)

OtherLoads(*args[, loads])

Representation of [OTHER LOADS] group.

PhreaticLine(*args[, phreatic_line])

PiezoLine(*args[, id, curves])

PiezoLines(*args[, piezolines])

Representation of [PIEZO LINES] group.

PointForLoad(**data)

Different from DSeriePoint as it does not belong in [POINTS].

Points(*args[, points])

Representation of [POINTS] group.

PreconPressureWithinLayer(value[, names, ...])

ProbabilisticData(*args[, ...])

ResidualSettlements(*args, residualsettlements)

ResidualTimes(*args[, time_steps])

Representation of [RESIDUAL TIMES] group.

Results(*args[, calculation_settings, ...])

Representation of [results] group in sld file.

SoilCollection(*args[, soil])

SoilModel(value[, names, module, qualname, ...])

StdvBoundaries(*args[, stdvboundaries])

StrainType(value[, names, module, qualname, ...])

StressDistributionLoads(value[, names, ...])

StressDistributionSoil(value[, names, ...])

Stresses(*args, stresses)

TimeDependentData(*args, timedependentdata)

TimeSettlementPerLoad(*args, ...)

TypeOtherLoads(value[, names, module, ...])

UseProbabilisticDefaultsBoundaries(*args[, ...])

Version(*args[, soil, geometry, d__settlement])

Vertical(*args, id, x, z[, ...])

Representation of [Vertical] group in sld file.

VerticalDrain(*args[, drain_type, ...])

Verticals(*args[, locations])

Representation of [VERTICALS] group.

WaterLoad(**data)

WaterLoads(*args[, waterloads])

Representation of [WATER LOADS] group.

class geolib.models.dsettlement.internal.Boundaries(*args, boundaries: List[Boundary] = [])

Representation of [BOUNDARIES] group.

boundaries: List[Boundary]
create_boundary(curves)
Parameters:

curves (List[Curve])

Return type:

Boundary

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.models.dsettlement.internal.Boundary(*args, id: Annotated[int, Ge(ge=0)] = 0, curves: List[int] = [])
curves: List[int]
id: Annotated[int]
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.models.dsettlement.internal.CalculationOptions(*args, precon_pressure_within_layer: PreconPressureWithinLayer = PreconPressureWithinLayer.CONSTANT_NO_CORRECTION, is_imaginary_surface: Bool = Bool.FALSE, imaginary_surface_layer: Annotated[int, Gt(gt=0)] | None = None, is_submerging: Bool = Bool.FALSE, use_end_time_for_fit: Bool = Bool.FALSE, is_maintain_profile: Bool = Bool.FALSE, maintain_profile_material_name: str = 'Superelevation', maintain_profile_time: Annotated[int, Ge(ge=0), Le(le=100000)] = 0, maintain_profile_gamma_dry: Annotated[float, Ge(ge=-100), Le(le=100)] = 10, maintain_profile_gamma_wet: Annotated[float, Ge(ge=-100), Le(le=100)] = 10, dispersion_conditions_layer_boundaries_top: DispersionConditionLayerBoundary = DispersionConditionLayerBoundary.DRAINED, dispersion_conditions_layer_boundaries_bottom: DispersionConditionLayerBoundary = DispersionConditionLayerBoundary.DRAINED, stress_distribution_soil: StressDistributionSoil = StressDistributionSoil.BUISMAN, stress_distribution_loads: StressDistributionLoads = StressDistributionLoads.SIMULATE, iteration_stop_criteria_submerging: Annotated[float, Ge(ge=0.0), Le(le=1.0)] = 0.0, iteration_stop_criteria_submerging_layer_height: Annotated[float, Ge(ge=0), Le(le=99.999)] = 0, maximum_iteration_steps_for_submerging: Annotated[int, Ge(ge=1), Le(le=100)] = 1, iteration_stop_criteria_desired_profile: Annotated[float, Ge(ge=0.0), Le(le=1.0)] = 0.1, load_column_width_imaginary_surface: Annotated[float, Ge(ge=0.05), Le(le=10000)] = 1, load_column_width_non_uniform_loads: Annotated[float, Ge(ge=0.05), Le(le=10000)] = 1, load_column_width_trapeziform_loads: Annotated[float, Ge(ge=0.05), Le(le=10000)] = 1, end_of_consolidation: Annotated[int, Ge(ge=1), Le(le=100000)] = 100000, number_of_subtime_steps: Annotated[int, Ge(ge=1), Le(le=100)] = 2, reference_time: Annotated[float, Ge(ge=0.001), Le(le=1000000)] = 1, dissipation: Bool = Bool.FALSE, x_coord_dissipation: float = 0.0, use_fit_factors: Bool = Bool.FALSE, x_coord_fit: float = 0.0, is_predict_settlements_omitting_additional_load_steps: Bool = Bool.FALSE)
dispersion_conditions_layer_boundaries_bottom: DispersionConditionLayerBoundary
dispersion_conditions_layer_boundaries_top: DispersionConditionLayerBoundary
dissipation: Bool
end_of_consolidation: Annotated[int]
imaginary_surface_layer: Optional[Annotated[int]]
is_imaginary_surface: Bool
is_maintain_profile: Bool
is_predict_settlements_omitting_additional_load_steps: Bool
is_submerging: Bool
iteration_stop_criteria_desired_profile: Annotated[float]
iteration_stop_criteria_submerging: Annotated[float]
iteration_stop_criteria_submerging_layer_height: Annotated[float]
load_column_width_imaginary_surface: Annotated[float]
load_column_width_non_uniform_loads: Annotated[float]
load_column_width_trapeziform_loads: Annotated[float]
maintain_profile_gamma_dry: Annotated[float]
maintain_profile_gamma_wet: Annotated[float]
maintain_profile_material_name: str
maintain_profile_time: Annotated[int]
maximum_iteration_steps_for_submerging: Annotated[int]
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].

number_of_subtime_steps: Annotated[int]
precon_pressure_within_layer: PreconPressureWithinLayer
reference_time: Annotated[float]
classmethod set_imaginary_surface_options(**kwargs)
stress_distribution_loads: StressDistributionLoads
stress_distribution_soil: StressDistributionSoil
use_end_time_for_fit: Bool
use_fit_factors: Bool
x_coord_dissipation: float
x_coord_fit: float
class geolib.models.dsettlement.internal.CalculationSettings(*args, is_secondary_swelling_used: bool = False)
is_secondary_swelling_used: bool
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.models.dsettlement.internal.ConsolidationModel(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)
DARCY = 0
TERZAGHI = 1
class geolib.models.dsettlement.internal.Curve(*args, id: Annotated[int, Gt(gt=0)] = 1, points: Annotated[List[int], MinLen(min_length=2), MaxLen(max_length=2)])

Curve is a Line consisting of two points (by reference).

id: Annotated[int]
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].

points: Annotated[List[int]]
class geolib.models.dsettlement.internal.Curves(*args, curves: List[Curve] = [])

Representation of [CURVES] group.

create_curve(a, b)
Parameters:
create_curves(sorted_points)
Parameters:

sorted_points (List[DSeriePoint])

Return type:

List[Curve]

curves: List[Curve]
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.models.dsettlement.internal.DSeriePoint(*args, id: Annotated[int, Gt(gt=0)], X: float, Y: float, Z: float, tolerance: float = 1e-10)

Converting points from geolib co-ordinate system to the d-settlement UI Internal setting of the geometry differs from API. Here co-ordinate system is the same as in the the d-settlement UI. So axis z of the geolib needs to be modified to y axis, which represents the depth.

X: float
Y: float
Z: float
classmethod from_point(p)
Parameters:

p (Point)

classmethod get_structure_required_fields()

Allows concrete classes to filter out fields that would normally be parsed.

Returns:

List of Tuples[FieldName, FieldType]

Return type:

List[Tuple[str, Type]]

id: Annotated[int]
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].

tolerance: float
class geolib.models.dsettlement.internal.DSettlementInputStructure(*args, version: ~geolib.models.dsettlement.internal.Version = Version(soil=1011, geometry=1002, d__settlement=1011), soil_collection: ~geolib.models.dsettlement.internal.SoilCollection = SoilCollection(soil=[]), geometry_data: ~geolib.models.dsettlement.internal.GeometryData = GeometryData(points=Points(points=[]), curves=Curves(curves=[]), boundaries=Boundaries(boundaries=[]), use_probabilistic_defaults_boundaries=UseProbabilisticDefaultsBoundaries(useprobabilisticdefaultsboundaries=[]), stdv_boundaries=StdvBoundaries(stdvboundaries=[]), distribution_boundaries=DistributionBoundaries(distributionboundaries=[]), piezo_lines=PiezoLines(piezolines=[]), phreatic_line=PhreaticLine(phreatic_line=0), layers=Layers(layers=[])), geometry_1d_data: str | None = None, run_identification: str = '\n\n', model: ~geolib.models.dsettlement.internal.Model = Model(dimension=<Dimension.TWO_D: 1>, consolidation_model=<ConsolidationModel.DARCY: 0>, soil_model=<SoilModel.NEN_KOPPEJAN: 0>, strain_type=<StrainType.LINEAR: 0>, is_vertical_drains=<Bool.FALSE: 0>, is_fit_for_settlement_plate=<Bool.FALSE: 0>, is_probabilistic=<Bool.FALSE: 0>, is_horizontal_displacements=<Bool.FALSE: 0>, is_secondary_swelling=<Bool.FALSE: 0>), verticals: ~geolib.models.dsettlement.internal.Verticals | str = Verticals(locations=[]), water: float | str = 9.81, non__uniform_loads: ~geolib.models.dsettlement.internal.NonUniformLoads | str = NonUniformLoads(loads={}), water_loads: ~geolib.models.dsettlement.internal.WaterLoads | str = WaterLoads(waterloads=[]), other_loads: ~geolib.models.dsettlement.internal.OtherLoads | str = OtherLoads(loads={}), calculation_options: ~geolib.models.dsettlement.internal.CalculationOptions | str = CalculationOptions(precon_pressure_within_layer=<PreconPressureWithinLayer.CONSTANT_NO_CORRECTION: 0>, is_imaginary_surface=<Bool.FALSE: 0>, imaginary_surface_layer=None, is_submerging=<Bool.FALSE: 0>, use_end_time_for_fit=<Bool.FALSE: 0>, is_maintain_profile=<Bool.FALSE: 0>, maintain_profile_material_name='Superelevation', maintain_profile_time=0, maintain_profile_gamma_dry=10.0, maintain_profile_gamma_wet=10.0, dispersion_conditions_layer_boundaries_top=<DispersionConditionLayerBoundary.DRAINED: 1>, dispersion_conditions_layer_boundaries_bottom=<DispersionConditionLayerBoundary.DRAINED: 1>, stress_distribution_soil=<StressDistributionSoil.BUISMAN: 0>, stress_distribution_loads=<StressDistributionLoads.SIMULATE: 1>, iteration_stop_criteria_submerging=0.0, iteration_stop_criteria_submerging_layer_height=0.0, maximum_iteration_steps_for_submerging=1, iteration_stop_criteria_desired_profile=0.1, load_column_width_imaginary_surface=1.0, load_column_width_non_uniform_loads=1.0, load_column_width_trapeziform_loads=1.0, end_of_consolidation=100000, number_of_subtime_steps=2, reference_time=1.0, dissipation=<Bool.FALSE: 0>, x_coord_dissipation=0.0, use_fit_factors=<Bool.FALSE: 0>, x_coord_fit=0.0, is_predict_settlements_omitting_additional_load_steps=<Bool.FALSE: 0>), residual_times: ~geolib.models.dsettlement.internal.ResidualTimes | str = ResidualTimes(time_steps=[]), filter_band_width: str = '1 : Number of items\n0.05', vertical_drain: ~geolib.models.dsettlement.internal.VerticalDrain | str = VerticalDrain(drain_type=<DrainType.STRIP: 0>, range_from=0.0, range_to=0.0, bottom_position=0.0, center_to_center=3.0, width=0.1, diameter=0.1, thickness=0.003, grid=<DrainGridType.UNDERDETERMINED: 2>, schedule_type=<DrainSchedule.OFF: 0>, begin_time=0.0, end_time=0.0, under_pressure_for_strips_and_columns=35.0, under_pressure_for_sand_wall=35.0, start_of_drainage=0.0, phreatic_level_in_drain=0.0, water_head_during_dewatering=0.0, tube_pressure_during_dewatering=0.0, time=[], underpressure=[], water_level=[]), probabilistic_data: ~geolib.models.dsettlement.internal.ProbabilisticData = ProbabilisticData(reliability_x_co__ordinate=0.0, residual_settlement=1.0, maximum_drawings=100, maximum_iterations=15, reliability_type=<InternalProbabilisticCalculationType.FOSMOrDeterministic: 0>, is_reliability_calculation=<Bool.FALSE: 0>), probabilistic_defaults: str = 'ProbDefGamDryVar=0.05\nProbDefGamWetVar=0.05\nProbDefPOPVar=0.25\nProbDefOCRVar=0.25\nProbDefPcVar=0.25\nProbDefPermeabilityVerVar=2.50\nProbDefRatioHorVerPermeabilityCvVar=0.25\nProbDefCvVar=0.50\nProbDefCpVar=0.30\nProbDefCp1Var=0.30\nProbDefCsVar=0.30\nProbDefCs1Var=0.30\nProbDefApVar=0.30\nProbDefASecVar=0.30\nProbDefRRCrVar=0.25\nProbDefCRCcVar=0.25\nProbDefCaVar=0.25\nProbDefPriCompIndexVar=0.25\nProbDefSecCompIndexVar=0.25\nProbDefSecCompRateVar=0.25\nProbDefCpCor=0.01\nProbDefCsCor=0.01\nProbDefCs1Cor=0.01\nProbDefApCor=0.01\nProbDefASecCor=0.01\nProbDefRRCrCor=0.01\nProbDefCaCor=0.01\nProbDefPriCompIndexCor=0.01\nProbDefSecCompRateCor=0.01\nProbDefGamDryDist=2\nProbDefGamWetDist=2\nProbDefPOPDist=2\nProbDefOCRDist=2\nProbDefPcDist=2\nProbDefPermeabilityVerDist=2\nProbDefRatioHorVerPermeabilityCvDist=2\nProbDefCvDist=2\nProbDefCpDist=2\nProbDefCp1Dist=2\nProbDefCsDist=2\nProbDefCs1Dist=2\nProbDefApDist=2\nProbDefASecDist=2\nProbDefRRCrDist=2\nProbDefCRCcDist=2\nProbDefCaDist=2\nProbDefPriCompIndexDist=2\nProbDefSecCompIndexDist=2\nProbDefSecCompRateDist=2\nProbDefLayerStd=0.10\nProbDefLayerDist=0', fit_options: ~geolib.models.dsettlement.internal.FitOptions = FitOptions(fit_maximum_number_of_iterations=5, fit_required_iteration_accuracy=0.0001, fit_required_correlation_coefficient=0.99), fit_calculation: ~geolib.models.dsettlement.internal.FitCalculation = FitCalculation(is_fit_calculation=<Bool.FALSE: 0>, fit_vertical_number=0), fit: str = '    0 = number of items')

Representation of complete .sli file.

calculation_options: Union[CalculationOptions, str]
check_x_in_vertical(point_of_vertical)
Parameters:

point_of_vertical (Point)

filter_band_width: str
fit: str
fit_calculation: FitCalculation
fit_options: FitOptions
geometry_1d_data: Optional[str]
geometry_data: GeometryData
get_headlines_for_layers()
model: Model
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].

non__uniform_loads: Union[NonUniformLoads, str]
other_loads: Union[OtherLoads, str]
probabilistic_data: ProbabilisticData
probabilistic_defaults: str
residual_times: Union[ResidualTimes, str]
run_identification: str
soil_collection: SoilCollection
validate_options()
Todo validation calculation options with geometry. I.e. validate x coordinate related options and layer related

options

Returns:

version: Version
vertical_drain: Union[VerticalDrain, str]
verticals: Union[Verticals, str]
water: Union[float, str]
water_loads: Union[WaterLoads, str]
class geolib.models.dsettlement.internal.DSettlementOutputStructure(*args, results: Results, input_data: DSettlementInputStructure)

Representation of complete .sld file, inheriting the structure of the .sli file as well.

input_data: DSettlementInputStructure
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].

results: Results
class geolib.models.dsettlement.internal.DSettlementStructure(*args, input_data: ~geolib.models.dsettlement.internal.DSettlementInputStructure = DSettlementInputStructure(version=Version(soil=1011, geometry=1002, d__settlement=1011), soil_collection=SoilCollection(soil=[]), geometry_data=GeometryData(points=Points(points=[]), curves=Curves(curves=[]), boundaries=Boundaries(boundaries=[]), use_probabilistic_defaults_boundaries=UseProbabilisticDefaultsBoundaries(useprobabilisticdefaultsboundaries=[]), stdv_boundaries=StdvBoundaries(stdvboundaries=[]), distribution_boundaries=DistributionBoundaries(distributionboundaries=[]), piezo_lines=PiezoLines(piezolines=[]), phreatic_line=PhreaticLine(phreatic_line=0), layers=Layers(layers=[])), geometry_1d_data=None, run_identification='\n\n', model=Model(dimension=<Dimension.TWO_D: 1>, consolidation_model=<ConsolidationModel.DARCY: 0>, soil_model=<SoilModel.NEN_KOPPEJAN: 0>, strain_type=<StrainType.LINEAR: 0>, is_vertical_drains=<Bool.FALSE: 0>, is_fit_for_settlement_plate=<Bool.FALSE: 0>, is_probabilistic=<Bool.FALSE: 0>, is_horizontal_displacements=<Bool.FALSE: 0>, is_secondary_swelling=<Bool.FALSE: 0>), verticals=Verticals(locations=[]), water=9.81, non__uniform_loads=NonUniformLoads(loads={}), water_loads=WaterLoads(waterloads=[]), other_loads=OtherLoads(loads={}), calculation_options=CalculationOptions(precon_pressure_within_layer=<PreconPressureWithinLayer.CONSTANT_NO_CORRECTION: 0>, is_imaginary_surface=<Bool.FALSE: 0>, imaginary_surface_layer=None, is_submerging=<Bool.FALSE: 0>, use_end_time_for_fit=<Bool.FALSE: 0>, is_maintain_profile=<Bool.FALSE: 0>, maintain_profile_material_name='Superelevation', maintain_profile_time=0, maintain_profile_gamma_dry=10.0, maintain_profile_gamma_wet=10.0, dispersion_conditions_layer_boundaries_top=<DispersionConditionLayerBoundary.DRAINED: 1>, dispersion_conditions_layer_boundaries_bottom=<DispersionConditionLayerBoundary.DRAINED: 1>, stress_distribution_soil=<StressDistributionSoil.BUISMAN: 0>, stress_distribution_loads=<StressDistributionLoads.SIMULATE: 1>, iteration_stop_criteria_submerging=0.0, iteration_stop_criteria_submerging_layer_height=0.0, maximum_iteration_steps_for_submerging=1, iteration_stop_criteria_desired_profile=0.1, load_column_width_imaginary_surface=1.0, load_column_width_non_uniform_loads=1.0, load_column_width_trapeziform_loads=1.0, end_of_consolidation=100000, number_of_subtime_steps=2, reference_time=1.0, dissipation=<Bool.FALSE: 0>, x_coord_dissipation=0.0, use_fit_factors=<Bool.FALSE: 0>, x_coord_fit=0.0, is_predict_settlements_omitting_additional_load_steps=<Bool.FALSE: 0>), residual_times=ResidualTimes(time_steps=[]), filter_band_width='1 : Number of items\n0.05', vertical_drain=VerticalDrain(drain_type=<DrainType.STRIP: 0>, range_from=0.0, range_to=0.0, bottom_position=0.0, center_to_center=3.0, width=0.1, diameter=0.1, thickness=0.003, grid=<DrainGridType.UNDERDETERMINED: 2>, schedule_type=<DrainSchedule.OFF: 0>, begin_time=0.0, end_time=0.0, under_pressure_for_strips_and_columns=35.0, under_pressure_for_sand_wall=35.0, start_of_drainage=0.0, phreatic_level_in_drain=0.0, water_head_during_dewatering=0.0, tube_pressure_during_dewatering=0.0, time=[], underpressure=[], water_level=[]), probabilistic_data=ProbabilisticData(reliability_x_co__ordinate=0.0, residual_settlement=1.0, maximum_drawings=100, maximum_iterations=15, reliability_type=<InternalProbabilisticCalculationType.FOSMOrDeterministic: 0>, is_reliability_calculation=<Bool.FALSE: 0>), probabilistic_defaults='ProbDefGamDryVar=0.05\nProbDefGamWetVar=0.05\nProbDefPOPVar=0.25\nProbDefOCRVar=0.25\nProbDefPcVar=0.25\nProbDefPermeabilityVerVar=2.50\nProbDefRatioHorVerPermeabilityCvVar=0.25\nProbDefCvVar=0.50\nProbDefCpVar=0.30\nProbDefCp1Var=0.30\nProbDefCsVar=0.30\nProbDefCs1Var=0.30\nProbDefApVar=0.30\nProbDefASecVar=0.30\nProbDefRRCrVar=0.25\nProbDefCRCcVar=0.25\nProbDefCaVar=0.25\nProbDefPriCompIndexVar=0.25\nProbDefSecCompIndexVar=0.25\nProbDefSecCompRateVar=0.25\nProbDefCpCor=0.01\nProbDefCsCor=0.01\nProbDefCs1Cor=0.01\nProbDefApCor=0.01\nProbDefASecCor=0.01\nProbDefRRCrCor=0.01\nProbDefCaCor=0.01\nProbDefPriCompIndexCor=0.01\nProbDefSecCompRateCor=0.01\nProbDefGamDryDist=2\nProbDefGamWetDist=2\nProbDefPOPDist=2\nProbDefOCRDist=2\nProbDefPcDist=2\nProbDefPermeabilityVerDist=2\nProbDefRatioHorVerPermeabilityCvDist=2\nProbDefCvDist=2\nProbDefCpDist=2\nProbDefCp1Dist=2\nProbDefCsDist=2\nProbDefCs1Dist=2\nProbDefApDist=2\nProbDefASecDist=2\nProbDefRRCrDist=2\nProbDefCRCcDist=2\nProbDefCaDist=2\nProbDefPriCompIndexDist=2\nProbDefSecCompIndexDist=2\nProbDefSecCompRateDist=2\nProbDefLayerStd=0.10\nProbDefLayerDist=0', fit_options=FitOptions(fit_maximum_number_of_iterations=5, fit_required_iteration_accuracy=0.0001, fit_required_correlation_coefficient=0.99), fit_calculation=FitCalculation(is_fit_calculation=<Bool.FALSE: 0>, fit_vertical_number=0), fit='    0 = number of items'), output_data: ~geolib.models.dsettlement.internal.Results | None = None)
input_data: DSettlementInputStructure
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].

output_data: Optional[Results]
class geolib.models.dsettlement.internal.Depths(*args, depths: List[float])
depths: List[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].

class geolib.models.dsettlement.internal.Dimension(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)
ONE_D = 0
TWO_D = 1
class geolib.models.dsettlement.internal.DispersionConditionLayerBoundary(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)
DRAINED = 1
UNDRAINED = 0
class geolib.models.dsettlement.internal.DispersionConditionsLayerBoundaries(*args, dispersion_conditions_layer_boundaries_top: DispersionConditionLayerBoundary = DispersionConditionLayerBoundary.DRAINED, dispersion_conditions_layer_boundaries_bottom: DispersionConditionLayerBoundary = DispersionConditionLayerBoundary.DRAINED)
dispersion_conditions_layer_boundaries_bottom: DispersionConditionLayerBoundary
dispersion_conditions_layer_boundaries_top: DispersionConditionLayerBoundary
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.models.dsettlement.internal.DistributionBoundaries(*args, distributionboundaries: List[DistributionType] = [])
append_distribution_boundary(distribution_boundary)
Parameters:

distribution_boundary (DistributionType)

distributionboundaries: List[DistributionType]
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.models.dsettlement.internal.DrainedLayers(*args, drainedlayers: List[int])
drainedlayers: List[int]
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.models.dsettlement.internal.FitCalculation(*args, is_fit_calculation: Bool = Bool.FALSE, fit_vertical_number: Annotated[int, Ge(ge=-1), Le(le=1000)] = 0)
fit_vertical_number: Annotated[int]
is_fit_calculation: Bool
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.models.dsettlement.internal.FitOptions(*args, fit_maximum_number_of_iterations: Annotated[int, Ge(ge=0), Le(le=100)] = 5, fit_required_iteration_accuracy: Annotated[float, Ge(ge=0.0), Le(le=1.0)] = 0.0001, fit_required_correlation_coefficient: Annotated[float, Ge(ge=0.0), Le(le=1.0)] = 0.99)
fit_maximum_number_of_iterations: Annotated[int]
fit_required_correlation_coefficient: Annotated[float]
fit_required_iteration_accuracy: 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].

class geolib.models.dsettlement.internal.GeometryData(*args, points: Points = Points(points=[]), curves: Curves = Curves(curves=[]), boundaries: Boundaries = Boundaries(boundaries=[]), use_probabilistic_defaults_boundaries: UseProbabilisticDefaultsBoundaries = UseProbabilisticDefaultsBoundaries(useprobabilisticdefaultsboundaries=[]), stdv_boundaries: StdvBoundaries = StdvBoundaries(stdvboundaries=[]), distribution_boundaries: DistributionBoundaries = DistributionBoundaries(distributionboundaries=[]), piezo_lines: PiezoLines = PiezoLines(piezolines=[]), phreatic_line: PhreaticLine = PhreaticLine(phreatic_line=0), layers: Layers = Layers(layers=[]))

Representation of [GEOMETRY DATA] group.

boundaries: Boundaries
boundary_area_above_horizontal(boundary, y=0.0)

Area above horizontal line defined by y-coordinate.

Parameters:
Return type:

float

create_list_of_indexes()
Return type:

List

curves: Curves
distribution_boundaries: DistributionBoundaries
get_boundary(boundary_id)
Parameters:

boundary_id (int)

Return type:

Optional[Boundary]

get_curve(curve_id)
Parameters:

curve_id (int)

Return type:

Optional[Curve]

get_layer(layer_id)
Parameters:

layer_id (int)

Return type:

Optional[Layer]

get_point(point_id)
Parameters:

point_id (int)

Return type:

Optional[DSeriePoint]

layers: Layers
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].

phreatic_line: PhreaticLine
piezo_lines: PiezoLines
points: Points
pre_process()
sort_based_on_new_indexes(new_indexes, unsorted_list)
Parameters:
  • new_indexes (List)

  • unsorted_list (List)

Return type:

List

sort_boundaries()
sort_probabilistic_list_based_on_new_indexes()
stdv_boundaries: StdvBoundaries
use_probabilistic_defaults_boundaries: UseProbabilisticDefaultsBoundaries
class geolib.models.dsettlement.internal.HorizontalDisplacements(*args, horizontaldisplacements: List[List[float]])
horizontaldisplacements: List[List[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].

class geolib.models.dsettlement.internal.InternalProbabilisticCalculationType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)
BandWidthAndProbabilityOfFailureMonteCarlo = 2
FOSMOrDeterministic = 0
ProbabilityOfFailureFORM = 1
class geolib.models.dsettlement.internal.KoppejanSettlements(*args, koppejansettlements: List[Dict[str, float]])
koppejansettlements: List[Dict[str, 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].

class geolib.models.dsettlement.internal.Layer(*args, id: Annotated[int, Gt(gt=0)] = 1, material: str = '', piezo_top: Annotated[int, Ge(ge=0), Le(le=99)] = 0, piezo_bottom: Annotated[int, Ge(ge=0), Le(le=99)] = 0, boundary_top: int, boundary_bottom: int)
boundary_bottom: int
boundary_top: int
id: Annotated[int]
material: str
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].

piezo_bottom: Annotated[int]
piezo_top: Annotated[int]
class geolib.models.dsettlement.internal.Layers(*args, layers: List[Layer] = [])

Representation of [LAYERS] group.

add_layer(layer)
Parameters:

layer (Layer)

layers: List[Layer]
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.models.dsettlement.internal.Leakages(*args, leakages: List[float])
leakages: List[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].

class geolib.models.dsettlement.internal.LoadValuesCircular(**data)
Parameters:

data (Any)

R: float
Xcp: float
Ycp: float
Zcp: float
alpha: 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].

weight: float
class geolib.models.dsettlement.internal.LoadValuesRectangular(**data)
Parameters:

data (Any)

Xcp: float
Ycp: float
Zcp: float
alpha: 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].

weight: float
xwidth: float
zwidth: float
class geolib.models.dsettlement.internal.LoadValuesTank(**data)
Parameters:

data (Any)

Rintern: float
Xcp: float
Ycp: float
Zcp: float
alpha: float
dWall: float
internalweight: 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].

wallweight: float
class geolib.models.dsettlement.internal.LoadValuesTrapeziform(**data)
Parameters:

data (Any)

Xp: float
Yp: float
gamma: float
height: 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].

xl: float
xm: float
xr: float
class geolib.models.dsettlement.internal.LoadValuesUniform(**data)
Parameters:

data (Any)

gamma: float
height: 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].

unit_weight: float
y_application: float
class geolib.models.dsettlement.internal.Model(*args, dimension: Dimension = Dimension.TWO_D, consolidation_model: ConsolidationModel = ConsolidationModel.DARCY, soil_model: SoilModel = SoilModel.NEN_KOPPEJAN, strain_type: StrainType = StrainType.LINEAR, is_vertical_drains: Bool = Bool.FALSE, is_fit_for_settlement_plate: Bool = Bool.FALSE, is_probabilistic: Bool = Bool.FALSE, is_horizontal_displacements: Bool = Bool.FALSE, is_secondary_swelling: Bool = Bool.FALSE)
consolidation_model: ConsolidationModel
dimension: Dimension
is_fit_for_settlement_plate: Bool
is_horizontal_displacements: Bool
is_probabilistic: Bool
is_secondary_swelling: Bool
is_vertical_drains: Bool
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].

soil_model: SoilModel
strain_type: StrainType
class geolib.models.dsettlement.internal.NonUniformLoad(**data)
Parameters:

data (Any)

endtime: int
gammadry: float
gammawet: 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].

points: List[PointForLoad]
temporary: Bool
time: int
class geolib.models.dsettlement.internal.NonUniformLoads(*args, loads: Dict[Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=25, pattern=None)], NonUniformLoad] = {})

Representation of [NON-UNIFORM LOADS] group.

add_load(name, load)
Parameters:
Return type:

Optional[ValueError]

loads: Dict[Annotated[str], NonUniformLoad]
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.models.dsettlement.internal.OtherLoad(**data)
Parameters:

data (Any)

load_type: TypeOtherLoads
load_values_circular: Optional[LoadValuesCircular]
load_values_rectangular: Optional[LoadValuesRectangular]
load_values_tank: Optional[LoadValuesTank]
load_values_trapeziform: Optional[LoadValuesTrapeziform]
load_values_uniform: Optional[LoadValuesUniform]
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].

time: int
class geolib.models.dsettlement.internal.OtherLoads(*args, loads: Dict[Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=25, pattern=None)], OtherLoad] = {})

Representation of [OTHER LOADS] group.

add_load(name, load)
Parameters:
Return type:

Optional[ValueError]

loads: Dict[Annotated[str], OtherLoad]
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.models.dsettlement.internal.PhreaticLine(*args, phreatic_line: Annotated[int, Ge(ge=0), Lt(lt=99)] = 0)
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].

phreatic_line: Annotated[int]
class geolib.models.dsettlement.internal.PiezoLine(*args, id: Annotated[int, Gt(gt=0)] = 1, curves: List[int] = [])
curves: List[int]
id: Annotated[int]
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.models.dsettlement.internal.PiezoLines(*args, piezolines: List[PiezoLine] = [])

Representation of [PIEZO LINES] group.

create_piezoline(curves)
Parameters:

curves (List[Curve])

Return type:

PiezoLine

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

piezolines: List[PiezoLine]
class geolib.models.dsettlement.internal.PointForLoad(**data)

Different from DSeriePoint as it does not belong in [POINTS].

Parameters:

data (Any)

X: float
Y: float
classmethod from_point(p)
Parameters:

p (Point)

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.models.dsettlement.internal.Points(*args, points: List[DSeriePoint] = [])

Representation of [POINTS] group.

add_point(point)
Parameters:

point (DSeriePoint)

Return type:

DSeriePoint

add_point_if_unique(point, tolerance=1e-10)
Parameters:

point (DSeriePoint)

Return type:

DSeriePoint

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

points: List[DSeriePoint]
class geolib.models.dsettlement.internal.PreconPressureWithinLayer(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)
CONSTANT_CORRECTION_ALL_T = 2
CONSTANT_CORRECTION_T0 = 1
CONSTANT_NO_CORRECTION = 0
VARIABLE_CORRECTION_ALL_T = 5
VARIABLE_CORRECTION_T0 = 4
VARIABLE_NO_CORRECTION = 3
class geolib.models.dsettlement.internal.ProbabilisticData(*args, reliability_x_co__ordinate: float = 0, residual_settlement: Annotated[float, Ge(ge=0.0), Le(le=1000.0)] = 1, maximum_drawings: Annotated[int, Ge(ge=0), Le(le=999999999)] = 100, maximum_iterations: Annotated[int, Ge(ge=1), Le(le=50)] = 15, reliability_type: InternalProbabilisticCalculationType = InternalProbabilisticCalculationType.FOSMOrDeterministic, is_reliability_calculation: Bool = Bool.FALSE)
externaltointernalprobabilisticcalculationtype(reliability_type)
Parameters:

reliability_type (ProbabilisticCalculationType)

Return type:

InternalProbabilisticCalculationType

is_reliability_calculation: Bool
maximum_drawings: Annotated[int]
maximum_iterations: Annotated[int]
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].

reliability_type: InternalProbabilisticCalculationType
reliability_x_co__ordinate: float
residual_settlement: Annotated[float]
set_probabilistic_data(point_of_vertical, residual_settlement, maximum_number_of_samples, maximum_iterations, reliability_type, is_reliability_calculation)
Parameters:
  • point_of_vertical (Point)

  • residual_settlement (float)

  • maximum_number_of_samples (int)

  • maximum_iterations (int)

  • reliability_type (ProbabilisticCalculationType)

  • is_reliability_calculation (bool)

class geolib.models.dsettlement.internal.ResidualSettlements(*args, residualsettlements: List[Dict[str, 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].

residualsettlements: List[Dict[str, float]]
class geolib.models.dsettlement.internal.ResidualTimes(*args, time_steps: List[Annotated[int, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=0)])]] = [])

Representation of [RESIDUAL TIMES] group.

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

time_steps: List[Annotated[int]]
class geolib.models.dsettlement.internal.Results(*args, calculation_settings: CalculationSettings | None = None, verticals_count: int, vertical: List[Vertical], residual_settlements: List[ResidualSettlements], amounts_of_loads: str | None = None, dissipation_in_layers: str | None = None, reliability_calculation_results: str | None = None)

Representation of [results] group in sld file.

amounts_of_loads: Optional[str]
calculation_settings: Optional[CalculationSettings]
dissipation_in_layers: Optional[str]
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].

reliability_calculation_results: Optional[str]
residual_settlements: List[ResidualSettlements]
vertical: List[Vertical]
verticals_count: int
class geolib.models.dsettlement.internal.SoilCollection(*args, soil: List[SoilInternal] = [])
add_soil_if_unique(soil, tolerance=1e-10)
Return type:

None

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

soil: List[SoilInternal]
class geolib.models.dsettlement.internal.SoilModel(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)
ISOTACHE = 2
NEN_BJERRUM = 1
NEN_KOPPEJAN = 0
class geolib.models.dsettlement.internal.StdvBoundaries(*args, stdvboundaries: List[float] = [])
append_stdv_boundary(stdv_boundary)
Parameters:

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

stdvboundaries: List[float]
class geolib.models.dsettlement.internal.StrainType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)
LINEAR = 0
NATURAL = 1
class geolib.models.dsettlement.internal.StressDistributionLoads(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)
NONE = 0
SIMULATE = 1
class geolib.models.dsettlement.internal.StressDistributionSoil(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)
BOUSSINESQ = 1
BUISMAN = 0
class geolib.models.dsettlement.internal.Stresses(*args, stresses: List[Dict[str, 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].

stresses: List[Dict[str, float]]
class geolib.models.dsettlement.internal.TimeDependentData(*args, timedependentdata: Dict[float, List[Dict[str, 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].

timedependentdata: Dict[float, List[Dict[str, float]]]
class geolib.models.dsettlement.internal.TimeSettlementPerLoad(*args, timesettlementperload: List[List[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].

timesettlementperload: List[List[float]]
class geolib.models.dsettlement.internal.TypeOtherLoads(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)
Circular = 1
Rectangular = 2
Tank = 4
Trapeziform = 0
Uniform = 3
class geolib.models.dsettlement.internal.UseProbabilisticDefaultsBoundaries(*args, useprobabilisticdefaultsboundaries: List[Bool] = [])
append_use_probabilistic_defaults_boundary(use_probabilistic_boundary)
Parameters:

use_probabilistic_boundary (bool)

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

useprobabilisticdefaultsboundaries: List[Bool]
class geolib.models.dsettlement.internal.Version(*args, soil: int = 1011, geometry: int = 1002, d__settlement: int = 1011)
d__settlement: int
geometry: int
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].

soil: int
class geolib.models.dsettlement.internal.Vertical(*args, id: int, x: float, z: float, time__settlement_per_load: TimeSettlementPerLoad | None = None, depths: Depths, leakages: Leakages | None = None, drained_layers: DrainedLayers | None = None, stresses: Stresses | None = None, koppejan_settlement: KoppejanSettlements | None = None, time__dependent_data: List[TimeDependentData], elasticity: float | None = None, horizontal_displacements: HorizontalDisplacements | None = None)

Representation of [Vertical] group in sld file.

depths: Depths
drained_layers: Optional[DrainedLayers]
elasticity: Optional[float]
horizontal_displacements: Optional[HorizontalDisplacements]
id: int
koppejan_settlement: Optional[KoppejanSettlements]
leakages: Optional[Leakages]
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].

stresses: Optional[Stresses]
time__dependent_data: List[TimeDependentData]
time__settlement_per_load: Optional[TimeSettlementPerLoad]
x: float
z: float
class geolib.models.dsettlement.internal.VerticalDrain(*args, drain_type: DrainType = DrainType.STRIP, range_from: Annotated[float, Ge(ge=-10000000.0), Le(le=10000000.0)] = 0, range_to: Annotated[float, Ge(ge=-10000000.0), Le(le=10000000.0)] = 0, bottom_position: Annotated[float, Ge(ge=-10000000.0), Le(le=10000000.0)] = 0, center_to_center: Annotated[float, Ge(ge=0.001), Le(le=1000)] = 3, width: Annotated[float, Ge(ge=0.001), Le(le=1000)] = 0.1, diameter: Annotated[float, Ge(ge=0.001), Le(le=1000)] = 0.1, thickness: Annotated[float, Ge(ge=0.001), Le(le=1000)] = 0.003, grid: DrainGridType = DrainGridType.UNDERDETERMINED, schedule_type: DrainSchedule = DrainSchedule.OFF, begin_time: Annotated[float, Ge(ge=0), Le(le=100000)] = 0, end_time: Annotated[float, Ge(ge=0), Le(le=100000)] = 0, under_pressure_for_strips_and_columns: Annotated[float, Ge(ge=0), Le(le=100000)] = 35, under_pressure_for_sand_wall: Annotated[float, Ge(ge=0), Le(le=100000)] = 35, start_of_drainage: Annotated[float, Ge(ge=0), Le(le=100000)] = 0, phreatic_level_in_drain: Annotated[float, Ge(ge=-10000000.0), Le(le=10000000.0)] = 0, water_head_during_dewatering: Annotated[float, Ge(ge=-10000000.0), Le(le=10000000.0)] = 0, tube_pressure_during_dewatering: Annotated[float, Ge(ge=-10000000.0), Le(le=10000000.0)] = 0, time: List[Annotated[float, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=0), Le(le=100000)])]] = [], underpressure: List[Annotated[float, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=0), Le(le=100000)])]] = [], water_level: List[Annotated[float, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=-10000000.0), Le(le=10000000.0)])]] = [])
begin_time: Annotated[float]
bottom_position: Annotated[float]
center_to_center: Annotated[float]
diameter: Annotated[float]
drain_type: DrainType
end_time: Annotated[float]
grid: DrainGridType
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].

phreatic_level_in_drain: Annotated[float]
range_from: Annotated[float]
range_to: Annotated[float]
schedule_type: DrainSchedule
start_of_drainage: Annotated[float]
thickness: Annotated[float]
time: List[Annotated[float]]
tube_pressure_during_dewatering: Annotated[float]
under_pressure_for_sand_wall: Annotated[float]
under_pressure_for_strips_and_columns: Annotated[float]
underpressure: List[Annotated[float]]
water_head_during_dewatering: Annotated[float]
water_level: List[Annotated[float]]
width: Annotated[float]
class geolib.models.dsettlement.internal.Verticals(*args, locations: List[DSeriePoint] = [])

Representation of [VERTICALS] group.

locations: List[DSeriePoint]
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.models.dsettlement.internal.WaterLoad(**data)
Parameters:

data (Any)

headlines: List[List[int]]
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].

name: str
phreatic_line: int
time: int
class geolib.models.dsettlement.internal.WaterLoads(*args, waterloads: List[WaterLoad] = [])

Representation of [WATER LOADS] group.

add_waterload(name, time, phreatic_line, headlines)
Parameters:
  • name (str)

  • time (int)

  • phreatic_line (int)

  • headlines (List[List[int]])

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

waterloads: List[WaterLoad]