Index: Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Primitives/MacroStabilityInwardsSoilLayerPropertiesUnderSurfaceLine.cs =================================================================== diff -u -r708bcebfe9e5db209c818a12d630cb418231f863 -r215064b63d899a054496d365818feb84cd1ab8b4 --- Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Primitives/MacroStabilityInwardsSoilLayerPropertiesUnderSurfaceLine.cs (.../MacroStabilityInwardsSoilLayerPropertiesUnderSurfaceLine.cs) (revision 708bcebfe9e5db209c818a12d630cb418231f863) +++ Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Primitives/MacroStabilityInwardsSoilLayerPropertiesUnderSurfaceLine.cs (.../MacroStabilityInwardsSoilLayerPropertiesUnderSurfaceLine.cs) (revision 215064b63d899a054496d365818feb84cd1ab8b4) @@ -49,42 +49,138 @@ CoefficientOfVariation = (RoundedDouble) properties.AbovePhreaticLevelCoefficientOfVariation }; + BelowPhreaticLevel = new VariationCoefficientLogNormalDistribution(2) + { + Mean = (RoundedDouble) properties.BelowPhreaticLevelMean, + CoefficientOfVariation = (RoundedDouble) properties.BelowPhreaticLevelCoefficientOfVariation + }; + + Cohesion = new VariationCoefficientLogNormalDistribution(2) + { + Mean = (RoundedDouble) properties.CohesionMean, + CoefficientOfVariation = (RoundedDouble) properties.CohesionCoefficientOfVariation + }; + + FrictionAngle = new VariationCoefficientLogNormalDistribution(2) + { + Mean = (RoundedDouble) properties.FrictionAngleMean, + CoefficientOfVariation = (RoundedDouble) properties.FrictionAngleCoefficientOfVariation + }; + + ShearStrengthRatio = new VariationCoefficientLogNormalDistribution(2) + { + Mean = (RoundedDouble) properties.ShearStrengthRatioMean, + CoefficientOfVariation = (RoundedDouble) properties.ShearStrengthRatioCoefficientOfVariation + }; + + Pop = new VariationCoefficientLogNormalDistribution(2) + { + Mean = (RoundedDouble) properties.PopMean, + CoefficientOfVariation = (RoundedDouble) properties.PopCoefficientOfVariation + }; + IsAquifer = properties.IsAquifer; UsePop = properties.UsePop; ShearStrengthModel = properties.ShearStrengthModel; MaterialName = properties.MaterialName; } /// + /// Gets a value indicating whether the layer is an aquifer. + /// + public bool IsAquifer { get; } + + /// + /// Gets a value indicating whether to use POP for the layer. + /// + public bool UsePop { get; } + + /// + /// Gets the shear strength model to use for the layer. + /// + public MacroStabilityInwardsShearStrengthModel ShearStrengthModel { get; } + + /// + /// Gets the name of the material that was assigned to the layer. + /// + public string MaterialName { get; } + + #region distributions + + /// /// Gets the distribution for the volumic weight of the layer above the phreatic level. + /// [kN/m³] /// public VariationCoefficientLogNormalDistribution AbovePhreaticLevel { get; } /// - /// Gets the design variable of the distribution for the volumic weight of the layer above the phreatic level. + /// Gets the distribution for the volumic weight of the layer below the phreatic level. + /// [kN/m³] /// + public VariationCoefficientLogNormalDistribution BelowPhreaticLevel { get; } + + /// + /// Gets the distribution for the cohesion. + /// [kN/m³] + /// + public VariationCoefficientLogNormalDistribution Cohesion { get; } + + /// + /// Gets the friction angle. + /// [°] + /// + public VariationCoefficientLogNormalDistribution FrictionAngle { get; } + + /// + /// Gets the shear strength ratio. + /// [-] + /// + public VariationCoefficientLogNormalDistribution ShearStrengthRatio { get; } + + /// + /// Gets the Pop. + /// [kN/m²] + /// + public VariationCoefficientLogNormalDistribution Pop { get; } + + #endregion + + #region Design variables + + /// + /// Gets or sets the design variable of the distribution for the volumic weight of the layer above the phreatic level. + /// public RoundedDouble AbovePhreaticLevelDesignVariable { get; set; } /// - /// Gets a value indicating whether the layer is an aquifer. + /// Gets or sets the design variable of the distribution for the volumic weight of the layer below the phreatic level. /// - public bool IsAquifer { get; } + public RoundedDouble BelowPhreaticLevelDesignVariable { get; set; } /// - /// Gets a value indicating whether to use POP for the layer. + /// Gets or sets the design variable of the distribution for the cohesion. /// - public bool UsePop { get; } + public RoundedDouble CohesionDesignVariable { get; set; } /// - /// Gets the shear strength model to use for the layer. + /// Gets or sets the design variable of the distribution for the friction angle. /// - public MacroStabilityInwardsShearStrengthModel ShearStrengthModel { get; } + public RoundedDouble FrictionAngleDesignVariable { get; set; } /// - /// Gets the name of the material that was assigned to the layer. + /// Gets or sets the design variable of the distribution for the shear strength ratio. /// - public string MaterialName { get; } + public RoundedDouble ShearStrengthRatioDesignVariable { get; set; } + /// + /// Gets or sets the design variable of the distribution for the Pop. + /// + public RoundedDouble PopDesignVariable { get; set; } + + #endregion + + #region ConstructionProperties + public class ConstructionProperties { /// @@ -94,6 +190,16 @@ { AbovePhreaticLevelMean = double.NaN; AbovePhreaticLevelCoefficientOfVariation = double.NaN; + BelowPhreaticLevelMean = double.NaN; + BelowPhreaticLevelCoefficientOfVariation = double.NaN; + CohesionMean = double.NaN; + CohesionCoefficientOfVariation = double.NaN; + FrictionAngleMean = double.NaN; + FrictionAngleCoefficientOfVariation = double.NaN; + ShearStrengthRatioMean = double.NaN; + ShearStrengthRatioCoefficientOfVariation = double.NaN; + PopMean = double.NaN; + PopCoefficientOfVariation = double.NaN; ShearStrengthModel = MacroStabilityInwardsShearStrengthModel.None; MaterialName = string.Empty; } @@ -111,6 +217,66 @@ public double AbovePhreaticLevelCoefficientOfVariation { internal get; set; } /// + /// Gets or sets the mean of the distribution for the volumic weight of the layer below the phreatic level. + /// [kN/m³] + /// + public double BelowPhreaticLevelMean { internal get; set; } + + /// + /// Gets or sets the coefficient of variation of the distribution for the volumic weight of the layer below the phreatic level. + /// [kN/m³] + /// + public double BelowPhreaticLevelCoefficientOfVariation { internal get; set; } + + /// + /// Gets or sets the mean of the distribution for the cohesion. + /// [kN/m³] + /// + public double CohesionMean { internal get; set; } + + /// + /// Gets or sets the coefficient of variation of the distribution for the cohesion. + /// [kN/m³] + /// + public double CohesionCoefficientOfVariation { internal get; set; } + + /// + /// Gets or sets the mean of the distribution for the friction angle. + /// [°] + /// + public double FrictionAngleMean { internal get; set; } + + /// + /// Gets or sets the coefficient of variation of the distribution for the friction angle. + /// [°] + /// + public double FrictionAngleCoefficientOfVariation { internal get; set; } + + /// + /// Gets or sets the mean of the distribution for the shear strength ratio. + /// [-] + /// + public double ShearStrengthRatioMean { internal get; set; } + + /// + /// Gets or sets the coefficient of variation of the distribution for the shear strength ratio. + /// [-] + /// + public double ShearStrengthRatioCoefficientOfVariation { internal get; set; } + + /// + /// Gets or sets the mean of the distribution for the pop. + /// [kN/m²] + /// + public double PopMean { internal get; set; } + + /// + /// Gets or sets the coefficient of variation of the distribution for the pop. + /// [kN/m²] + /// + public double PopCoefficientOfVariation { internal get; set; } + + /// /// Gets or sets a value indicating whether the layer is an aquifer. /// public bool IsAquifer { internal get; set; } @@ -130,5 +296,7 @@ /// public string MaterialName { internal get; set; } } + + #endregion } } \ No newline at end of file