Index: DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/FillDamFromXmlInputTests.cs =================================================================== diff -u -r2169 -r2949 --- DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/FillDamFromXmlInputTests.cs (.../FillDamFromXmlInputTests.cs) (revision 2169) +++ DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/FillDamFromXmlInputTests.cs (.../FillDamFromXmlInputTests.cs) (revision 2949) @@ -161,7 +161,8 @@ "Loops", }; // TODO i.m.o the serializing of the geometry should be improved, so these ignores are not needed anymore var result = compare.Compare(expected, actual); - Assert.AreEqual(0, result.Differences.Count, "Differences found read/write Input object"); + Assert.AreEqual(0, result.Differences.Count, + "Differences found read/write Input object:" + result.DifferencesString); } } Index: DamEngine/trunk/src/Deltares.DamEngine.Interface/FillXmlInputFromDam.cs =================================================================== diff -u -r2925 -r2949 --- DamEngine/trunk/src/Deltares.DamEngine.Interface/FillXmlInputFromDam.cs (.../FillXmlInputFromDam.cs) (revision 2925) +++ DamEngine/trunk/src/Deltares.DamEngine.Interface/FillXmlInputFromDam.cs (.../FillXmlInputFromDam.cs) (revision 2949) @@ -451,6 +451,10 @@ { inputSoil.DilatancyType = ConversionHelper.ConvertToSoilDilatancyType(soil.DilatancyType.Value); } + inputSoil.RRatioSpecified = !double.IsNaN(soil.RRatio); + inputSoil.RRatio = soil.RRatio; + inputSoil.StrengthIncreaseExponentSpecified = !double.IsNaN(soil.StrengthIncreaseExponent); + inputSoil.StrengthIncreaseExponent = soil.StrengthIncreaseExponent; inputSoils[i] = inputSoil; } } @@ -505,41 +509,38 @@ // Design options var designOptions = new LocationDesignOptions(); - if (designOptions != null) - { - designOptions.RedesignDikeHeight = location.RedesignDikeHeight; - designOptions.RedesignDikeShoulder = location.RedesignDikeShoulder; - designOptions.ShoulderEmbankmentMaterial = location.ShoulderEmbankmentMaterial; - designOptions.StabilityShoulderGrowSlope = location.StabilityShoulderGrowSlope; - designOptions.StabilityShoulderGrowDeltaX = location.StabilityShoulderGrowDeltaX; - designOptions.StabilitySlopeAdaptionDeltaX = location.StabilitySlopeAdaptionDeltaX; - designOptions.SlopeAdaptionStartCotangent = location.SlopeAdaptionStartCotangent; - designOptions.SlopeAdaptionEndCotangent = location.SlopeAdaptionEndCotangent; - designOptions.SlopeAdaptionStepCotangent = location.SlopeAdaptionStepCotangent; - designOptions.NewDikeTopWidthSpecified = location.UseNewDikeTopWidth; - designOptions.NewDikeTopWidth = location.NewDikeTopWidth; - designOptions.NewDikeSlopeInsideSpecified = location.UseNewDikeSlopeInside; - designOptions.NewDikeSlopeInside = location.NewDikeSlopeInside; - designOptions.NewDikeSlopeOutsideSpecified = location.UseNewDikeSlopeOutside; - designOptions.NewDikeSlopeOutside = location.NewDikeSlopeOutside; - designOptions.NewShoulderTopSlopeSpecified = location.UseNewShoulderTopSlope; - designOptions.NewShoulderTopSlope = location.NewShoulderTopSlope; - designOptions.NewShoulderBaseSlopeSpecified = location.UseNewShoulderBaseSlope; - designOptions.NewShoulderBaseSlope = location.NewShoulderBaseSlope; - designOptions.NewMaxHeightShoulderAsFractionSpecified = location.UseNewMaxHeightShoulderAsFraction; - designOptions.NewMaxHeightShoulderAsFraction = location.NewMaxHeightShoulderAsFraction; - designOptions.NewMinDistanceDikeToeStartDitchSpecified = location.UseNewMinDistanceDikeToeStartDitch; - designOptions.NewMinDistanceDikeToeStartDitch = location.NewMinDistanceDikeToeStartDitch; - designOptions.UseNewDitchDefinition = location.UseNewDitchDefinition; - designOptions.NewWidthDitchBottomSpecified = location.UseNewDitchDefinition; - designOptions.NewWidthDitchBottom = location.NewWidthDitchBottom; - designOptions.NewSlopeAngleDitchSpecified = location.UseNewDitchDefinition; - designOptions.NewSlopeAngleDitch = location.NewSlopeAngleDitch; - designOptions.NewDepthDitchSpecified = location.UseNewDitchDefinition; - designOptions.NewDepthDitch = location.NewDepthDitch; - designOptions.StabilityDesignMethod = ConversionHelper.ConvertToInputStabilityDesignMethod(location.StabilityDesignMethod); - inputLocation.DesignOptions = designOptions; - } + designOptions.RedesignDikeHeight = location.RedesignDikeHeight; + designOptions.RedesignDikeShoulder = location.RedesignDikeShoulder; + designOptions.ShoulderEmbankmentMaterial = location.ShoulderEmbankmentMaterial; + designOptions.StabilityShoulderGrowSlope = location.StabilityShoulderGrowSlope; + designOptions.StabilityShoulderGrowDeltaX = location.StabilityShoulderGrowDeltaX; + designOptions.StabilitySlopeAdaptionDeltaX = location.StabilitySlopeAdaptionDeltaX; + designOptions.SlopeAdaptionStartCotangent = location.SlopeAdaptionStartCotangent; + designOptions.SlopeAdaptionEndCotangent = location.SlopeAdaptionEndCotangent; + designOptions.SlopeAdaptionStepCotangent = location.SlopeAdaptionStepCotangent; + designOptions.NewDikeTopWidthSpecified = location.UseNewDikeTopWidth; + designOptions.NewDikeTopWidth = location.NewDikeTopWidth; + designOptions.NewDikeSlopeInsideSpecified = location.UseNewDikeSlopeInside; + designOptions.NewDikeSlopeInside = location.NewDikeSlopeInside; + designOptions.NewDikeSlopeOutsideSpecified = location.UseNewDikeSlopeOutside; + designOptions.NewDikeSlopeOutside = location.NewDikeSlopeOutside; + designOptions.NewShoulderTopSlopeSpecified = location.UseNewShoulderTopSlope; + designOptions.NewShoulderTopSlope = location.NewShoulderTopSlope; + designOptions.NewShoulderBaseSlopeSpecified = location.UseNewShoulderBaseSlope; + designOptions.NewShoulderBaseSlope = location.NewShoulderBaseSlope; + designOptions.NewMaxHeightShoulderAsFractionSpecified = location.UseNewMaxHeightShoulderAsFraction; + designOptions.NewMaxHeightShoulderAsFraction = location.NewMaxHeightShoulderAsFraction; + designOptions.NewMinDistanceDikeToeStartDitchSpecified = location.UseNewMinDistanceDikeToeStartDitch; + designOptions.NewMinDistanceDikeToeStartDitch = location.NewMinDistanceDikeToeStartDitch; + designOptions.UseNewDitchDefinition = location.UseNewDitchDefinition; + designOptions.NewWidthDitchBottomSpecified = location.UseNewDitchDefinition; + designOptions.NewWidthDitchBottom = location.NewWidthDitchBottom; + designOptions.NewSlopeAngleDitchSpecified = location.UseNewDitchDefinition; + designOptions.NewSlopeAngleDitch = location.NewSlopeAngleDitch; + designOptions.NewDepthDitchSpecified = location.UseNewDitchDefinition; + designOptions.NewDepthDitch = location.NewDepthDitch; + designOptions.StabilityDesignMethod = ConversionHelper.ConvertToInputStabilityDesignMethod(location.StabilityDesignMethod); + inputLocation.DesignOptions = designOptions; inputLocation.DesignScenarios = new LocationDesignScenario[location.Scenarios.Count]; for (int j = 0; j < location.Scenarios.Count; j++) Index: DamEngine/trunk/src/Deltares.DamEngine.Io/DamInput.cs =================================================================== diff -u -r2799 -r2949 --- DamEngine/trunk/src/Deltares.DamEngine.Io/DamInput.cs (.../DamInput.cs) (revision 2799) +++ DamEngine/trunk/src/Deltares.DamEngine.Io/DamInput.cs (.../DamInput.cs) (revision 2949) @@ -2289,6 +2289,14 @@ private bool dilatancyTypeFieldSpecified; + private double rRatioField; + + private bool rRatioFieldSpecified; + + private double strengthIncreaseExponentField; + + private bool strengthIncreaseExponentFieldSpecified; + /// [System.Xml.Serialization.XmlAttributeAttribute()] public string Name { @@ -2629,6 +2637,50 @@ this.dilatancyTypeFieldSpecified = value; } } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public double RRatio { + get { + return this.rRatioField; + } + set { + this.rRatioField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool RRatioSpecified { + get { + return this.rRatioFieldSpecified; + } + set { + this.rRatioFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public double StrengthIncreaseExponent { + get { + return this.strengthIncreaseExponentField; + } + set { + this.strengthIncreaseExponentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StrengthIncreaseExponentSpecified { + get { + return this.strengthIncreaseExponentFieldSpecified; + } + set { + this.strengthIncreaseExponentFieldSpecified = value; + } + } } /// Index: DamEngine/trunk/src/Deltares.DamEngine.Data/Geotechnics/Soil.cs =================================================================== diff -u -r2503 -r2949 --- DamEngine/trunk/src/Deltares.DamEngine.Data/Geotechnics/Soil.cs (.../Soil.cs) (revision 2503) +++ DamEngine/trunk/src/Deltares.DamEngine.Data/Geotechnics/Soil.cs (.../Soil.cs) (revision 2949) @@ -199,12 +199,12 @@ /// public DilatancyType? DilatancyType { get; set; } = null; - /// - /// Gets or sets the strength increase exponent. - /// - /// - /// The strength increase exponent. - /// + /// Gets or sets the RRatio. + /// The RRatio. + public double RRatio { get; set; } = double.NaN; + + /// Gets or sets the strength increase exponent. + /// The strength increase exponent. public double StrengthIncreaseExponent { get; set; } = double.NaN; /// Index: DamEngine/trunk/src/Deltares.DamEngine.Interface/FillDamFromXmlInput.cs =================================================================== diff -u -r2799 -r2949 --- DamEngine/trunk/src/Deltares.DamEngine.Interface/FillDamFromXmlInput.cs (.../FillDamFromXmlInput.cs) (revision 2799) +++ DamEngine/trunk/src/Deltares.DamEngine.Interface/FillDamFromXmlInput.cs (.../FillDamFromXmlInput.cs) (revision 2949) @@ -449,6 +449,8 @@ soil.SlopeRestProfile = inputSoil.SlopeRestProfileSpecified ? inputSoil.SlopeRestProfile : double.NaN; soil.DilatancyType = inputSoil.DilatancyTypeSpecified ? (DilatancyType?)ConversionHelper.ConvertToDilatancyType(inputSoil.DilatancyType) : null; + soil.RRatio = inputSoil.RRatioSpecified ? inputSoil.RRatio : double.NaN; + soil.StrengthIncreaseExponent = inputSoil.StrengthIncreaseExponentSpecified ? inputSoil.StrengthIncreaseExponent : double.NaN; soils.Add(soil); } } Index: DamEngine/trunk/src/Deltares.DamEngine.TestHelpers/Factories/FactoryForDamProjectData.cs =================================================================== diff -u -r2936 -r2949 --- DamEngine/trunk/src/Deltares.DamEngine.TestHelpers/Factories/FactoryForDamProjectData.cs (.../FactoryForDamProjectData.cs) (revision 2936) +++ DamEngine/trunk/src/Deltares.DamEngine.TestHelpers/Factories/FactoryForDamProjectData.cs (.../FactoryForDamProjectData.cs) (revision 2949) @@ -268,11 +268,13 @@ soil.SlopeRestProfile = 15 + 0.1 * i; soil.DilatancyType = DilatancyType.Zero; + soil.RRatio = 16 + 0.1 * i; + soil.StrengthIncreaseExponent = 17 + 0.1 * i; + //soil.CuBottom = 11 + 0.1 * i; //soil.CuTop = 12 + 0.1 * i; //soil.PoP = 15 + 0.1 * i; //soil.RatioCuPc = 16 + 0.1 * i; - //soil.StrengthIncreaseExponent = 17 + 0.1 * i; //soil.UsePop = true; soil.BeddingAngle = 18 + 0.1 * i; Index: DamEngine/trunk/xsd/DamSoil.xsd =================================================================== diff -u -r2503 -r2949 --- DamEngine/trunk/xsd/DamSoil.xsd (.../DamSoil.xsd) (revision 2503) +++ DamEngine/trunk/xsd/DamSoil.xsd (.../DamSoil.xsd) (revision 2949) @@ -40,5 +40,7 @@ + + \ No newline at end of file