Index: DamEngine/trunk/src/Deltares.DamEngine.Data/Geotechnics/Soil.cs =================================================================== diff -u -r4000 -r4052 --- DamEngine/trunk/src/Deltares.DamEngine.Data/Geotechnics/Soil.cs (.../Soil.cs) (revision 4000) +++ DamEngine/trunk/src/Deltares.DamEngine.Data/Geotechnics/Soil.cs (.../Soil.cs) (revision 4052) @@ -23,244 +23,243 @@ using Deltares.DamEngine.Data.Standard; using Deltares.DamEngine.Data.Standard.Language; -namespace Deltares.DamEngine.Data.Geotechnics +namespace Deltares.DamEngine.Data.Geotechnics; + +/// +/// Soil class, representing a specific soil material and its properties +/// +[Serializable] +public class Soil : IName { + // Stability properties + private string name = ""; + /// - /// Soil class, representing a specific soil material and its properties + /// Initializes a new instance of the class. /// - [Serializable] - public class Soil : IName + public Soil() { - // Stability properties - private string name = ""; + Name = LocalizationManager.GetTranslatedText(this, "DefaultNameSoilMaterial"); + } - /// - /// Initializes a new instance of the class. - /// - public Soil() - { - Name = LocalizationManager.GetTranslatedText(this, "DefaultNameSoilMaterial"); - } + /// + /// Initializes a new instance of the class. + /// + /// The name. + /// Unit weight below phreatic level + /// Unit weight above phreatic level + public Soil(string name, double belowPhreaticLevel, double abovePhreaticLevel) : this() + { + Name = name; + AbovePhreaticLevel = abovePhreaticLevel; + BelowPhreaticLevel = belowPhreaticLevel; + } - /// - /// Initializes a new instance of the class. - /// - /// The name. - /// Unit weight below phreatic level - /// Unit weight above phreatic level - public Soil(string name, double belowPhreaticLevel, double abovePhreaticLevel) : this() - { - Name = name; - AbovePhreaticLevel = abovePhreaticLevel; - BelowPhreaticLevel = belowPhreaticLevel; - } + /// + /// Initializes a new instance of the class. + /// + /// The name. + public Soil(string name) : this() + { + Name = name; + } - /// - /// Initializes a new instance of the class. - /// - /// The name. - public Soil(string name) : this() - { - Name = name; - } + /// + /// Assigns the specified a soil. + /// + /// a soil. + public void Assign(Soil aSoil) + { + name = aSoil.Name; + BeddingAngle = aSoil.BeddingAngle; + DiameterD70 = aSoil.DiameterD70; + PermeabKx = aSoil.PermeabKx; + WhitesConstant = aSoil.WhitesConstant; + DiameterD90 = aSoil.DiameterD90; + DilatancyType = aSoil.DilatancyType; + ShearStrengthModel = aSoil.ShearStrengthModel; + BelowPhreaticLevel = aSoil.BelowPhreaticLevel; + AbovePhreaticLevel = aSoil.AbovePhreaticLevel; + Cohesion = aSoil.Cohesion; + FrictionAngle = aSoil.FrictionAngle; + PoP = aSoil.PoP; + Ocr = aSoil.Ocr; + RatioCuPc = aSoil.RatioCuPc; + CuTop = aSoil.CuTop; + CuBottom = aSoil.CuBottom; + UsePop = aSoil.UsePop; + StrengthIncreaseExponent = aSoil.StrengthIncreaseExponent; + } - /// - /// Assigns the specified a soil. - /// - /// a soil. - public void Assign(Soil aSoil) - { - name = aSoil.Name; - BeddingAngle = aSoil.BeddingAngle; - DiameterD70 = aSoil.DiameterD70; - PermeabKx = aSoil.PermeabKx; - WhitesConstant = aSoil.WhitesConstant; - DiameterD90 = aSoil.DiameterD90; - DilatancyType = aSoil.DilatancyType; - ShearStrengthModel = aSoil.ShearStrengthModel; - BelowPhreaticLevel = aSoil.BelowPhreaticLevel; - AbovePhreaticLevel = aSoil.AbovePhreaticLevel; - Cohesion = aSoil.Cohesion; - FrictionAngle = aSoil.FrictionAngle; - PoP = aSoil.PoP; - Ocr = aSoil.Ocr; - RatioCuPc = aSoil.RatioCuPc; - CuTop = aSoil.CuTop; - CuBottom = aSoil.CuBottom; - UsePop = aSoil.UsePop; - StrengthIncreaseExponent = aSoil.StrengthIncreaseExponent; - } + #region property Name - #region property Name - - /// - /// Gets or sets the name of the soil. - /// - public string Name + /// + /// Gets or sets the name of the soil. + /// + public string Name + { + get { - get - { - return name; - } - set - { - name = value; - } + return name; } - - /// - /// Returns a that represents this instance. - /// - /// - /// A that represents this instance. - /// - public override string ToString() + set { - return Name; + name = value; } + } - #endregion property Name + /// + /// Returns a that represents this instance. + /// + /// + /// A that represents this instance. + /// + public override string ToString() + { + return Name; + } - #region property Weight + #endregion property Name - /// - /// Unit Weight below the phreatic level (kN/m3) - /// - public double BelowPhreaticLevel { get; set; } = double.NaN; + #region property Weight - /// - /// Unit Weight above the phreatic level (kN/m3) - /// - public double AbovePhreaticLevel { get; set; } = double.NaN; + /// + /// Unit Weight below the phreatic level (kN/m3) + /// + public double BelowPhreaticLevel { get; set; } = double.NaN; - #endregion + /// + /// Unit Weight above the phreatic level (kN/m3) + /// + public double AbovePhreaticLevel { get; set; } = double.NaN; - #region Piping + #endregion - /// - /// Bedding Angle (degree). - /// - /// - /// The bedding angle. - /// - public double BeddingAngle { get; set; } = double.NaN; + #region Piping - /// - /// Diameter D70 (micrometer). - /// - /// - /// The diameter D70. - /// - public double DiameterD70 { get; set; } = double.NaN; + /// + /// Bedding Angle (degree). + /// + /// + /// The bedding angle. + /// + public double BeddingAngle { get; set; } = double.NaN; - /// - /// Horizontal permeability (m/s) - /// - /// - /// The permeab kx. - /// - public double PermeabKx { get; set; } = double.NaN; + /// + /// Diameter D70 (micrometer). + /// + /// + /// The diameter D70. + /// + public double DiameterD70 { get; set; } = double.NaN; - /// - /// Whites constant (-). - /// - /// - /// The whites constant. - /// - public double WhitesConstant { get; set; } = double.NaN; + /// + /// Horizontal permeability (m/s) + /// + /// + /// The permeab kx. + /// + public double PermeabKx { get; set; } = double.NaN; - /// - /// Diameter D90 (micrometer). - /// - /// - /// The diameter D90. - /// - public double DiameterD90 { get; set; } = double.NaN; + /// + /// Whites constant (-). + /// + /// + /// The whites constant. + /// + public double WhitesConstant { get; set; } = double.NaN; - #endregion + /// + /// Diameter D90 (micrometer). + /// + /// + /// The diameter D90. + /// + public double DiameterD90 { get; set; } = double.NaN; - #region Macrostability + #endregion - /// - /// Ovendry unit weight [kN/m3] - /// - public double DryUnitWeight { get; set; } = double.NaN; + #region Macrostability - /// - /// Cohesion (the force that holds together molecules or like particles within a soil) [kN/m2] - /// - public double Cohesion { get; set; } = double.NaN; + /// + /// Ovendry unit weight [kN/m3] + /// + public double DryUnitWeight { get; set; } = double.NaN; - /// - /// Critical state friction angle (deg) - /// - public double FrictionAngle { get; set; } = double.NaN; + /// + /// Cohesion (the force that holds together molecules or like particles within a soil) [kN/m2] + /// + public double Cohesion { get; set; } = double.NaN; - /// - /// Pre-overburden pressure (POP) - /// Equal to pre-consolidation stress minus effective stress - /// - public double PoP { get; set; } = double.NaN; + /// + /// Critical state friction angle (deg) + /// + public double FrictionAngle { get; set; } = double.NaN; - /// - /// Over-consolidation ratio (OCR) - /// - public double Ocr { get; set; } = double.NaN; + /// + /// Pre-overburden pressure (POP) + /// Equal to pre-consolidation stress minus effective stress + /// + public double PoP { get; set; } = double.NaN; - /// - /// Ratio Cu/Pc - /// - public double RatioCuPc { get; set; } = double.NaN; + /// + /// Over-consolidation ratio (OCR) + /// + public double Ocr { get; set; } = double.NaN; - /// - /// Cu Top - /// - public double CuTop { get; set; } = double.NaN; + /// + /// Ratio Cu/Pc + /// + public double RatioCuPc { get; set; } = double.NaN; - /// - /// Cu Bottom - /// - public double CuBottom { get; set; } = double.NaN; + /// + /// Cu Top + /// + public double CuTop { get; set; } = double.NaN; - /// - /// Use POP for shear strength model - /// - public bool UsePop { get; set; } + /// + /// Cu Bottom + /// + public double CuBottom { get; set; } = double.NaN; - /// - /// Dilatancy (shear thickening) type - /// - public DilatancyType? DilatancyType { get; set; } + /// + /// Use POP for shear strength model + /// + public bool UsePop { get; set; } - /// Gets or sets the RRatio. - /// The RRatio. - public double RRatio { get; set; } = double.NaN; + /// + /// Dilatancy (shear thickening) type + /// + public DilatancyType? DilatancyType { get; set; } - /// Gets or sets the strength increase exponent. - /// The strength increase exponent. - public double StrengthIncreaseExponent { get; set; } = double.NaN; + /// Gets or sets the RRatio. + /// The RRatio. + public double RRatio { get; set; } = double.NaN; - /// - /// Shear strength model to use - /// - public ShearStrengthModel? ShearStrengthModel { get; set; } + /// Gets or sets the strength increase exponent. + /// The strength increase exponent. + public double StrengthIncreaseExponent { get; set; } = double.NaN; - /// - /// Gets or sets a value indicating whether to use the default shear strength model. - /// - /// - /// true if default shear strength model must be used; otherwise, false. - /// - public bool? UseDefaultShearStrengthModel { get; set; } = null; + /// + /// Shear strength model to use + /// + public ShearStrengthModel? ShearStrengthModel { get; set; } - /// - /// Gets or sets the slope of the rest profile. - /// - /// - /// The slope of the rest profile. - /// - public double SlopeRestProfile { get; set; } = double.NaN; + /// + /// Gets or sets a value indicating whether to use the default shear strength model. + /// + /// + /// true if default shear strength model must be used; otherwise, false. + /// + public bool? UseDefaultShearStrengthModel { get; set; } = null; - #endregion - } + /// + /// Gets or sets the slope of the rest profile. + /// + /// + /// The slope of the rest profile. + /// + public double SlopeRestProfile { get; set; } = double.NaN; + + #endregion } \ No newline at end of file