Soils¶
Soil Libraries¶
It is possible to import various input files which will automatically generate Soil objects from them. Several pre-existing soil materials as used in D-Foundations based on the NEN 9997-1 norm are defined here as well. The Belgian Annex Soils will be added later.
Using Soil Library:
>>> import geolib as gl
>>> dir(gl.soils)
<Soil A with code a>, <Soil B with code b>
CPT interpretation¶
This package won’t interpret CPTs. This will follow in the GEOLib+ package.
There is a geolib.soils.layers.CPT
class however, to load from D-Foundations and DSheetPiling input files.
The Soil Class¶
- class geolib.soils.soil.BjerrumParameters(**data)¶
Bjerrum parameters class
- input_type_is_comp_ratio: [bool] is true when compression input mode is “compression ratio”, false when compression
input mode is “Compression index”
- If input_type_is_comp_ratio is true, the following parameters are used as input:
reloading_swelling_RR compression_ratio_CR coef_secondary_compression_Ca
- If input_type_is_comp_ratio is false, the following parameters are used as input:
reloading_swelling_index_Cr compression_index_Cc coef_secondary_compression_Ca
- Parameters:
data (
Any
)
-
coef_secondary_compression_Ca:
Union
[float
,StochasticParameter
,None
]¶
-
compression_index_Cc:
Union
[float
,StochasticParameter
,None
]¶
-
compression_ratio_CR:
Union
[float
,StochasticParameter
,None
]¶
-
correlation_reload_primary_compression_ratio:
Optional
[float
]¶
-
input_type_is_comp_ratio:
Optional
[bool
]¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'coef_secondary_compression_Ca': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'compression_index_Cc': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'compression_ratio_CR': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'correlation_reload_primary_compression_ratio': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'input_type_is_comp_ratio': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None), 'primary_compression_index': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'primary_compression_ratio': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'reloading_index': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'reloading_ratio': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'reloading_swelling_RR': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'reloading_swelling_index_Cr': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None))}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
-
primary_compression_index:
Union
[float
,StochasticParameter
,None
]¶
-
primary_compression_ratio:
Union
[float
,StochasticParameter
,None
]¶
-
reloading_index:
Union
[float
,StochasticParameter
,None
]¶
-
reloading_ratio:
Union
[float
,StochasticParameter
,None
]¶
-
reloading_swelling_RR:
Union
[float
,StochasticParameter
,None
]¶
-
reloading_swelling_index_Cr:
Union
[float
,StochasticParameter
,None
]¶
- class geolib.soils.soil.ConeResistance(**data)¶
Cone resistance class
- Parameters:
data (
Any
)
-
max_cone_resistance:
Optional
[float
]¶
-
max_cone_resistance_type:
Optional
[Enum
]¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'max_cone_resistance': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'max_cone_resistance_type': FieldInfo(annotation=Union[Enum, NoneType], required=False, default=None)}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class geolib.soils.soil.DistributionType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)¶
- Deterministic = 4¶
- LogNormal = 3¶
- Normal = 2¶
- Undefined = 0¶
- class geolib.soils.soil.EarthPressureCoefficients(**data)¶
- Parameters:
data (
Any
)
-
active:
Optional
[float
]¶
-
earth_pressure_coefficients_type:
Optional
[EarthPressureCoefficientsType
]¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'active': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'earth_pressure_coefficients_type': FieldInfo(annotation=Union[EarthPressureCoefficientsType, NoneType], required=False, default=<EarthPressureCoefficientsType.BRINCHHANSEN: 1>), 'neutral': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'passive': FieldInfo(annotation=Union[float, NoneType], required=False, default=None)}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
-
neutral:
Optional
[float
]¶
-
passive:
Optional
[float
]¶
- class geolib.soils.soil.EarthPressureCoefficientsType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)¶
- BRINCHHANSEN = 1¶
- MANUAL = 0¶
- class geolib.soils.soil.GrainType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)¶
- COARSE = 1¶
- FINE = 0¶
- class geolib.soils.soil.HorizontalBehaviour(**data)¶
Horizontal behaviour class
- Parameters:
data (
Any
)
-
horizontal_behavior_type:
Optional
[HorizontalBehaviourType
]¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'horizontal_behavior_type': FieldInfo(annotation=Union[HorizontalBehaviourType, NoneType], required=False, default=None), 'soil_default_elasticity': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None), 'soil_elasticity': FieldInfo(annotation=Union[float, NoneType], required=False, default=None)}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
-
soil_default_elasticity:
Optional
[bool
]¶
-
soil_elasticity:
Optional
[float
]¶
- class geolib.soils.soil.HorizontalBehaviourType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)¶
- Elastic = 2¶
- Foundation = 3¶
- Stiff = 1¶
- class geolib.soils.soil.IsotacheParameters(**data)¶
- Parameters:
data (
Any
)
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'precon_isotache_type': FieldInfo(annotation=Union[StateType, NoneType], required=False, default=None), 'primary_compression_constant_b': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'reloading_swelling_constant_a': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'secondary_compression_constant_c': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None))}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
-
primary_compression_constant_b:
Union
[float
,StochasticParameter
,None
]¶
-
reloading_swelling_constant_a:
Union
[float
,StochasticParameter
,None
]¶
-
secondary_compression_constant_c:
Union
[float
,StochasticParameter
,None
]¶
- class geolib.soils.soil.KoppejanParameters(**data)¶
- Parameters:
data (
Any
)
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'precon_koppejan_type': FieldInfo(annotation=Union[StateType, NoneType], required=False, default=None), 'preconsolidation_pressure': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'primary_Ap': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'primary_Asec': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'primary_Cp': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'primary_Cp_point': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'secular_Cs': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'secular_Cs_point': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'soil_ap_as_approximation_by_Cp_Cs': FieldInfo(annotation=Union[bool, NoneType], required=False, default=False)}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
-
preconsolidation_pressure:
Union
[float
,StochasticParameter
,None
]¶
-
primary_Ap:
Union
[float
,StochasticParameter
,None
]¶
-
primary_Asec:
Union
[float
,StochasticParameter
,None
]¶
-
primary_Cp:
Union
[float
,StochasticParameter
,None
]¶
-
primary_Cp_point:
Union
[float
,StochasticParameter
,None
]¶
-
secular_Cs:
Union
[float
,StochasticParameter
,None
]¶
-
secular_Cs_point:
Union
[float
,StochasticParameter
,None
]¶
-
soil_ap_as_approximation_by_Cp_Cs:
Optional
[bool
]¶
- class geolib.soils.soil.LambdaType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)¶
- KOTTER = 2¶
- MANUAL = 0¶
- MULLERBRESLAU = 1¶
- class geolib.soils.soil.ModulusSubgradeReaction(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)¶
- MANUAL = 0¶
- MENARD = 1¶
- class geolib.soils.soil.MohrCoulombParameters(**data)¶
Mohr Coulomb parameters class
- Parameters:
data (
Any
)
-
cohesion:
Union
[float
,StochasticParameter
,None
]¶
-
dilatancy_angle:
Union
[float
,StochasticParameter
,None
]¶
-
friction_angle:
Union
[float
,StochasticParameter
,None
]¶
-
friction_angle_interface:
Union
[float
,StochasticParameter
,None
]¶
-
is_delta_angle_automatically_calculated:
Optional
[bool
]¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'cohesion': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'cohesion_and_friction_angle_correlated': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None), 'dilatancy_angle': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'friction_angle': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'friction_angle_interface': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'is_delta_angle_automatically_calculated': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None)}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class geolib.soils.soil.ShearStrengthModelTypePhreaticLevel(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)¶
Shear Strength Model Type. These types represent the shear strength model that can be found in the UI of the D-Stability program.
- MOHR_COULOMB = 'Mohr_Coulomb'¶
- NONE = 'None'¶
- SHANSEP = 'SHANSEP'¶
- SUTABLE = 'SuTable'¶
- transform_shear_strength_model_type_to_internal()¶
- class geolib.soils.soil.Soil(**data)¶
Soil Material.
- Parameters:
data (
Any
)
-
bjerrum_parameters:
Optional
[BjerrumParameters
]¶
-
code:
Optional
[str
]¶
-
cone_resistance:
Optional
[ConeResistance
]¶
-
earth_pressure_coefficients:
Optional
[EarthPressureCoefficients
]¶
-
horizontal_behaviour:
Optional
[HorizontalBehaviour
]¶
-
id:
Optional
[str
]¶
-
is_drained:
Optional
[bool
]¶
-
is_probabilistic:
Optional
[bool
]¶
-
isotache_parameters:
Optional
[IsotacheParameters
]¶
-
koppejan_parameters:
Optional
[KoppejanParameters
]¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'bjerrum_parameters': FieldInfo(annotation=Union[BjerrumParameters, NoneType], required=False, default=BjerrumParameters(input_type_is_comp_ratio=None, reloading_ratio=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), primary_compression_ratio=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), correlation_reload_primary_compression_ratio=None, reloading_index=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), primary_compression_index=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), coef_secondary_compression_Ca=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), reloading_swelling_RR=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), compression_ratio_CR=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), reloading_swelling_index_Cr=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), compression_index_Cc=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None))), 'code': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'color': FieldInfo(annotation=Color, required=False, default=Color('grey', rgb=(128, 128, 128))), 'cone_resistance': FieldInfo(annotation=Union[ConeResistance, NoneType], required=False, default=ConeResistance(max_cone_resistance_type=None, max_cone_resistance=None)), 'earth_pressure_coefficients': FieldInfo(annotation=Union[EarthPressureCoefficients, NoneType], required=False, default=EarthPressureCoefficients(earth_pressure_coefficients_type=<EarthPressureCoefficientsType.BRINCHHANSEN: 1>, active=None, neutral=None, passive=None)), 'horizontal_behaviour': FieldInfo(annotation=Union[HorizontalBehaviour, NoneType], required=False, default=HorizontalBehaviour(horizontal_behavior_type=None, soil_elasticity=None, soil_default_elasticity=None)), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'is_drained': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None), 'is_probabilistic': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None), 'isotache_parameters': FieldInfo(annotation=Union[IsotacheParameters, NoneType], required=False, default=IsotacheParameters(precon_isotache_type=None, reloading_swelling_constant_a=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), primary_compression_constant_b=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), secondary_compression_constant_c=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None))), 'koppejan_parameters': FieldInfo(annotation=Union[KoppejanParameters, NoneType], required=False, default=KoppejanParameters(precon_koppejan_type=None, preconsolidation_pressure=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), soil_ap_as_approximation_by_Cp_Cs=False, primary_Cp=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), primary_Cp_point=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), secular_Cs=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), secular_Cs_point=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), primary_Ap=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), primary_Asec=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None))), 'mohr_coulomb_parameters': FieldInfo(annotation=Union[MohrCoulombParameters, NoneType], required=False, default=MohrCoulombParameters(cohesion=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), dilatancy_angle=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), friction_angle=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), friction_angle_interface=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), is_delta_angle_automatically_calculated=None, cohesion_and_friction_angle_correlated=None)), 'name': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'shear_strength_model_above_phreatic_level': FieldInfo(annotation=Union[ShearStrengthModelTypePhreaticLevel, NoneType], required=False, default=None), 'shear_strength_model_below_phreatic_level': FieldInfo(annotation=Union[ShearStrengthModelTypePhreaticLevel, NoneType], required=False, default=None), 'shell_factor': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'soil_classification_parameters': FieldInfo(annotation=Union[SoilClassificationParameters, NoneType], required=False, default=SoilClassificationParameters(initial_void_ratio=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), min_void_ratio=None, max_void_ratio=None, porosity=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), relative_density=None, d_50=None, grain_type=<GrainType.FINE: 0>)), 'soil_state': FieldInfo(annotation=Union[SoilState, NoneType], required=False, default=SoilState(use_equivalent_age=None, equivalent_age=None, state_points=None, state_lines=None, yield_stress_layer=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), ocr_layer=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), pop_layer=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), secondary_swelling_reduced=None, secondary_swelling_factor=None, unloading_stress_ratio=None)), 'soil_stiffness_parameters': FieldInfo(annotation=Union[SoilStiffnessParameters, NoneType], required=False, default=SoilStiffnessParameters(emod_menard=None)), 'soil_type_nl': FieldInfo(annotation=Union[SoilType, NoneType], required=False, default=<SoilType.SAND: 1>), 'soil_type_settlement_by_vibrations': FieldInfo(annotation=Union[SoilType, NoneType], required=False, default=<SoilType.SAND: 1>), 'soil_weight_parameters': FieldInfo(annotation=Union[SoilWeightParameters, NoneType], required=False, default=SoilWeightParameters(saturated_weight=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), unsaturated_weight=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None))), 'storage_parameters': FieldInfo(annotation=Union[StorageParameters, NoneType], required=False, default=StorageParameters(vertical_permeability=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), permeability_horizontal_factor=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), horizontal_permeability=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), storage_type=None, permeability_strain_type=StochasticParameter(is_probabilistic=False, mean=1000000000000000.0, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), vertical_consolidation_coefficient=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None))), 'subgrade_reaction_parameters': FieldInfo(annotation=Union[SubgradeReactionParameters, NoneType], required=False, default=SubgradeReactionParameters(modulus_subgrade_reaction_type=None, lambda_type=None, tangent_secant_1=None, tangent_secant_2=None, tangent_secant_3=None, k_o_top=None, k_1_top=None, k_2_top=None, k_3_top=None, k_4_top=None, k_o_bottom=None, k_1_bottom=None, k_2_bottom=None, k_3_bottom=None, k_4_bottom=None, k_1_top_side=None, k_2_top_side=None, k_3_top_side=None, k_1_bottom_side=None, k_2_bottom_side=None, k_3_bottom_side=None)), 'undrained_parameters': FieldInfo(annotation=Union[UndrainedParameters, NoneType], required=False, default=UndrainedParameters(shear_strength_ratio=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), shear_strength_ratio_and_shear_strength_exponent_correlated=None, strength_increase_exponent=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None), s_and_m_correlated=None, undrained_shear_strength=None, undrained_shear_strength_top=None, undrained_shear_strength_bottom=None, undrained_shear_strength_bearing_capacity_factor=None, su_table=None, probabilistic_su_table=None, su_table_variation_coefficient=None)), 'use_probabilistic_defaults': FieldInfo(annotation=Union[bool, NoneType], required=False, default=False), 'use_tension': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None)}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
-
mohr_coulomb_parameters:
Optional
[MohrCoulombParameters
]¶
-
name:
Optional
[str
]¶
- set_all_stochastic_parameters()¶
Loop over all fields in soil class, and converts floats to stochastic parameters if necessary
Returns:
- static set_stochastic_parameters(input_class)¶
Converts float to stochastic parameter, where the mean is set as the input float value :type input_class:
object
:param input_class:Returns:
-
shear_strength_model_above_phreatic_level:
Optional
[ShearStrengthModelTypePhreaticLevel
]¶
-
shear_strength_model_below_phreatic_level:
Optional
[ShearStrengthModelTypePhreaticLevel
]¶
-
shell_factor:
Optional
[float
]¶
-
soil_classification_parameters:
Optional
[SoilClassificationParameters
]¶
-
soil_stiffness_parameters:
Optional
[SoilStiffnessParameters
]¶
-
soil_weight_parameters:
Optional
[SoilWeightParameters
]¶
-
storage_parameters:
Optional
[StorageParameters
]¶
-
subgrade_reaction_parameters:
Optional
[SubgradeReactionParameters
]¶
- classmethod transform_id_to_str(value)¶
- Return type:
str
-
undrained_parameters:
Optional
[UndrainedParameters
]¶
-
use_probabilistic_defaults:
Optional
[bool
]¶
-
use_tension:
Optional
[bool
]¶
- class geolib.soils.soil.SoilBaseModel(**data)¶
- Parameters:
data (
Any
)
- classmethod fail_on_infinite(v, _)¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class geolib.soils.soil.SoilClassificationParameters(**data)¶
Soil classification class
- Parameters:
data (
Any
)
-
d_50:
Optional
[float
]¶
-
initial_void_ratio:
Union
[float
,StochasticParameter
,None
]¶
-
max_void_ratio:
Optional
[float
]¶
-
min_void_ratio:
Optional
[float
]¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'d_50': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'grain_type': FieldInfo(annotation=Union[GrainType, NoneType], required=False, default=<GrainType.FINE: 0>), 'initial_void_ratio': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'max_void_ratio': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'min_void_ratio': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'porosity': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'relative_density': FieldInfo(annotation=Union[float, NoneType], required=False, default=None)}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
-
porosity:
Union
[float
,StochasticParameter
,None
]¶
-
relative_density:
Optional
[float
]¶
- class geolib.soils.soil.SoilState(**data)¶
- Parameters:
data (
Any
)
-
equivalent_age:
Optional
[float
]¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'equivalent_age': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'ocr_layer': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'pop_layer': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'secondary_swelling_factor': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'secondary_swelling_reduced': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None), 'state_lines': FieldInfo(annotation=Union[StateLine, NoneType], required=False, default=None), 'state_points': FieldInfo(annotation=Union[StatePoint, NoneType], required=False, default=None), 'unloading_stress_ratio': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'use_equivalent_age': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None), 'yield_stress_layer': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None))}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
-
ocr_layer:
Union
[float
,StochasticParameter
,None
]¶
-
pop_layer:
Union
[float
,StochasticParameter
,None
]¶
-
secondary_swelling_factor:
Optional
[float
]¶
-
secondary_swelling_reduced:
Optional
[bool
]¶
-
state_points:
Optional
[StatePoint
]¶
-
unloading_stress_ratio:
Optional
[float
]¶
-
use_equivalent_age:
Optional
[bool
]¶
-
yield_stress_layer:
Union
[float
,StochasticParameter
,None
]¶
- class geolib.soils.soil.SoilStiffnessParameters(**data)¶
- Parameters:
data (
Any
)
-
emod_menard:
Optional
[float
]¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'emod_menard': FieldInfo(annotation=Union[float, NoneType], required=False, default=None)}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class geolib.soils.soil.SoilType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)¶
- CLAY = 3¶
- CLAYEYSAND = 7¶
- GRAVEL = 0¶
- LOAM = 2¶
- PEAT = 4¶
- SAND = 1¶
- SANDY_LOAM = 5¶
- TERTCLAY = 6¶
- class geolib.soils.soil.SoilWeightParameters(**data)¶
- Parameters:
data (
Any
)
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'saturated_weight': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'unsaturated_weight': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None))}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
-
saturated_weight:
Union
[float
,StochasticParameter
,None
]¶
-
unsaturated_weight:
Union
[float
,StochasticParameter
,None
]¶
- class geolib.soils.soil.StateLine(**data)¶
TODO Decide if we want to keep state in soil class TODO decide if we want cross-dependency to geometry class
- Parameters:
data (
Any
)
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'state_line_points': FieldInfo(annotation=Union[List[Point], NoneType], required=True)}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class geolib.soils.soil.StatePoint(**data)¶
- Parameters:
data (
Any
)
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'state_layer_id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'state_point_id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'state_point_is_probabilistic': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None), 'state_point_type': FieldInfo(annotation=Union[StateType, NoneType], required=False, default=None)}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
-
state_layer_id:
Optional
[str
]¶
-
state_point_id:
Optional
[str
]¶
-
state_point_is_probabilistic:
Optional
[bool
]¶
- class geolib.soils.soil.StateType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)¶
- OCR = 'OCR'¶
- POP = 'POP'¶
- YIELD_STRESS = 'yield_stress'¶
- class geolib.soils.soil.StochasticParameter(**data)¶
Stochastic parameters class
- Parameters:
data (
Any
)
-
correlation_coefficient:
Optional
[float
]¶
-
distribution_type:
Optional
[DistributionType
]¶
-
high_characteristic_value:
Optional
[float
]¶
-
high_design_value:
Optional
[float
]¶
-
is_probabilistic:
bool
¶
-
low_characteristic_value:
Optional
[float
]¶
-
low_design_value:
Optional
[float
]¶
-
mean:
Optional
[float
]¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'correlation_coefficient': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'distribution_type': FieldInfo(annotation=Union[DistributionType, NoneType], required=False, default=<DistributionType.Normal: 2>), 'high_characteristic_value': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'high_design_value': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'is_probabilistic': FieldInfo(annotation=bool, required=False, default=False), 'low_characteristic_value': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'low_design_value': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'mean': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'standard_deviation': FieldInfo(annotation=Union[float, NoneType], required=False, default=0)}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
-
standard_deviation:
Optional
[float
]¶
- class geolib.soils.soil.StorageParameters(**data)¶
In this case vertical_permeability has a unit of [m/day]. In GUI of the D-Settlement this value is displayed as [m/s].
- Parameters:
data (
Any
)
-
horizontal_permeability:
Union
[float
,StochasticParameter
,None
]¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'horizontal_permeability': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'permeability_horizontal_factor': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'permeability_strain_type': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=1000000000000000.0, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'storage_type': FieldInfo(annotation=Union[StorageTypes, NoneType], required=False, default=None), 'vertical_consolidation_coefficient': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'vertical_permeability': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None))}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
-
permeability_horizontal_factor:
Union
[float
,StochasticParameter
,None
]¶
-
permeability_strain_type:
Union
[float
,StochasticParameter
,None
]¶
-
storage_type:
Optional
[StorageTypes
]¶
-
vertical_consolidation_coefficient:
Union
[float
,StochasticParameter
,None
]¶
-
vertical_permeability:
Union
[float
,StochasticParameter
,None
]¶
- class geolib.soils.soil.StorageTypes(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)¶
- constant_permeability = 1¶
- strain_dependent_permeability = 2¶
- vertical_consolidation_coefficient = 0¶
- class geolib.soils.soil.SuTablePoint(**data)¶
- Parameters:
data (
Any
)
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'stress': FieldInfo(annotation=float, required=False, default=None), 'su': FieldInfo(annotation=float, required=False, default=None)}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
-
stress:
float
¶
-
su:
float
¶
- class geolib.soils.soil.SubgradeReactionParameters(**data)¶
- Parameters:
data (
Any
)
-
k_1_bottom:
Optional
[float
]¶
-
k_1_bottom_side:
Optional
[float
]¶
-
k_1_top:
Optional
[float
]¶
-
k_1_top_side:
Optional
[float
]¶
-
k_2_bottom:
Optional
[float
]¶
-
k_2_bottom_side:
Optional
[float
]¶
-
k_2_top:
Optional
[float
]¶
-
k_2_top_side:
Optional
[float
]¶
-
k_3_bottom:
Optional
[float
]¶
-
k_3_bottom_side:
Optional
[float
]¶
-
k_3_top:
Optional
[float
]¶
-
k_3_top_side:
Optional
[float
]¶
-
k_4_bottom:
Optional
[float
]¶
-
k_4_top:
Optional
[float
]¶
-
k_o_bottom:
Optional
[float
]¶
-
k_o_top:
Optional
[float
]¶
-
lambda_type:
Optional
[LambdaType
]¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'k_1_bottom': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'k_1_bottom_side': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'k_1_top': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'k_1_top_side': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'k_2_bottom': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'k_2_bottom_side': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'k_2_top': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'k_2_top_side': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'k_3_bottom': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'k_3_bottom_side': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'k_3_top': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'k_3_top_side': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'k_4_bottom': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'k_4_top': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'k_o_bottom': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'k_o_top': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'lambda_type': FieldInfo(annotation=Union[LambdaType, NoneType], required=False, default=None), 'modulus_subgrade_reaction_type': FieldInfo(annotation=Union[ModulusSubgradeReaction, NoneType], required=False, default=None), 'tangent_secant_1': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'tangent_secant_2': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'tangent_secant_3': FieldInfo(annotation=Union[float, NoneType], required=False, default=None)}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
-
modulus_subgrade_reaction_type:
Optional
[ModulusSubgradeReaction
]¶
-
tangent_secant_1:
Optional
[float
]¶
-
tangent_secant_2:
Optional
[float
]¶
-
tangent_secant_3:
Optional
[float
]¶
- class geolib.soils.soil.UndrainedParameters(**data)¶
Undrained shear strength parameters class. This class includes the SU Table and SHANSEP model variables included in D-Stability.
- Parameters:
data (
Any
)
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'probabilistic_su_table': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None), 's_and_m_correlated': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None), 'shear_strength_ratio': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'shear_strength_ratio_and_shear_strength_exponent_correlated': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None), 'strength_increase_exponent': FieldInfo(annotation=Union[float, StochasticParameter, NoneType], required=False, default=StochasticParameter(is_probabilistic=False, mean=None, standard_deviation=0.0, distribution_type=<DistributionType.Normal: 2>, correlation_coefficient=None, low_characteristic_value=None, high_characteristic_value=None, low_design_value=None, high_design_value=None)), 'su_table': FieldInfo(annotation=Union[List[SuTablePoint], NoneType], required=False, default=None), 'su_table_variation_coefficient': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'undrained_shear_strength': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'undrained_shear_strength_bearing_capacity_factor': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'undrained_shear_strength_bottom': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'undrained_shear_strength_top': FieldInfo(annotation=Union[float, NoneType], required=False, default=None)}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
-
probabilistic_su_table:
Optional
[bool
]¶
-
shear_strength_ratio:
Union
[float
,StochasticParameter
,None
]¶
-
strength_increase_exponent:
Union
[float
,StochasticParameter
,None
]¶
-
su_table:
Optional
[List
[SuTablePoint
]]¶
-
su_table_variation_coefficient:
Optional
[float
]¶
- to_su_table_points()¶
-
undrained_shear_strength:
Optional
[float
]¶
-
undrained_shear_strength_bearing_capacity_factor:
Optional
[float
]¶
-
undrained_shear_strength_bottom:
Optional
[float
]¶
-
undrained_shear_strength_top:
Optional
[float
]¶
- class geolib.soils.soil_utils.Color(value)¶
Color type from Pydantic
see https://pydantic-docs.helpmanual.io/usage/types/#color-type
Example
For construction:
Color("ff00ff") # hex value Color((255, 255, 255)) # rgb tuple Color("purple") # named
- Parameters:
value (
Union
[Tuple
[int
,int
,int
],Tuple
[int
,int
,int
,float
],str
,Color
])
- classmethod from_internal(c)¶
Convert a D-Serie color integer into a Color.
- Parameters:
c (
int
)
- class geolib.models.dstability.internal.ShearStrengthModelTypePhreaticLevelInternal(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)¶
Shear Strength Model Type. These types represent the types that are internally defined in the json files of D-Stability.
- MOHR_COULOMB_ADVANCED = 'MohrCoulombAdvanced'¶
- MOHR_COULOMB_CLASSIC = 'MohrCoulombClassic'¶
- NONE = 'None'¶
- SU = 'Su'¶
- SUTABLE = 'SuTable'¶
- to_global_shear_strength_model()¶