UserDefinedWaterMethods#

Project-level user-defined hydraulic models (permeability vs matric suction, optional water content vs suction). Stored in CProjectControlData::m_aUserDefined_WaterMethod; materials use User defined water mode with a user_defined_index.

class PermeabilityPoint(matric_suction: float, permeability: float)#

Bases: object

getMatricSuction() → float#
getPermeability() → float#
class WaterContentPoint(matric_suction: float, water_content: float)#

Bases: object

getMatricSuction() → float#
getWaterContent() → float#
class UserDefinedHydraulicModels(model_id: str, client: Client)#

Bases: object

Examples: Code Snippet: User Defined Hydraulic Models

List, get, add, edit, and delete user-defined water (hydraulic) methods for the model.

listMethods() → List[Tuple[int, str]]#

Return (index, name) for each user-defined water method.

getMethod(method_index: int) → Tuple[str, List[PermeabilityPoint], List[WaterContentPoint]]#

Return (name, permeability_points, water_content_points). Each point is (x, y) (matric suction vs conductivity for permeability; optional WC curve).

setModel(model_index: int, name: str, permeability_points: List[PermeabilityPoint], water_content_points: List[WaterContentPoint]) → None#

Replace the method at method_index (requires at least one permeability point).

addModel(name: str, permeability_points: List[PermeabilityPoint], water_content_points: List[WaterContentPoint]) → int#

Append a new method; returns the new zero-based index.

deleteModel(model_index: int) → None#

Remove a user-defined water method. Fails if more than one material still references it (see server implementation); otherwise materials using it are reset to the default hydraulic model.