Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/FillMacroStabilityWrapperInputFromEngine.cs =================================================================== diff -u -r3048 -r3077 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/FillMacroStabilityWrapperInputFromEngine.cs (.../FillMacroStabilityWrapperInputFromEngine.cs) (revision 3048) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/FillMacroStabilityWrapperInputFromEngine.cs (.../FillMacroStabilityWrapperInputFromEngine.cs) (revision 3077) @@ -270,8 +270,8 @@ kernelSearchAreaConditions.AutoSearchArea = slipCircleDefinition.GridSizeDetermination == GridSizeDetermination.Automatic; kernelSearchAreaConditions.AutoTangentLines = slipCircleDefinition.UpliftVanTangentLinesDefinition == - TangentLinesDefinition.OnBoundaryLines; - if (!kernelSearchAreaConditions.AutoTangentLines) + TangentLinesDefinition.Specified; + if (kernelSearchAreaConditions.AutoTangentLines) { kernelSearchAreaConditions.TangentLineNumber = Convert.ToInt32(Math.Floor((top - bottom) / slipCircleDefinition.UpliftVanTangentLinesDistance) + Index: DamEngine/trunk/src/Deltares.DamEngine.Interface/ConversionHelper.cs =================================================================== diff -u -r2503 -r3077 --- DamEngine/trunk/src/Deltares.DamEngine.Interface/ConversionHelper.cs (.../ConversionHelper.cs) (revision 2503) +++ DamEngine/trunk/src/Deltares.DamEngine.Interface/ConversionHelper.cs (.../ConversionHelper.cs) (revision 3077) @@ -731,7 +731,7 @@ /// /// The input tangent lines on boundaty lines /// - public const int InputTangentLinesOnBoundatyLines = 0; + public const int InputTangentLinesOnBoundaryLines = 0; /// /// The input tangent lines specified @@ -747,8 +747,8 @@ { var translationTable = new Dictionary() { - {TangentLinesDefinition.OnBoundaryLines, InputGridTypeAutomatic}, - {TangentLinesDefinition.Specified, InputGridTypeSpecified} + {TangentLinesDefinition.OnBoundaryLines, InputGridTypeSpecified}, + {TangentLinesDefinition.Specified, InputGridTypeAutomatic} }; return translationTable[tangentLineType]; } @@ -762,8 +762,8 @@ { var translationTable = new Dictionary() { - {InputGridTypeAutomatic, TangentLinesDefinition.OnBoundaryLines}, - {InputGridTypeSpecified, TangentLinesDefinition.Specified} + {InputGridTypeSpecified, TangentLinesDefinition.OnBoundaryLines}, + {InputGridTypeAutomatic, TangentLinesDefinition.Specified} }; return translationTable[tangentLineType]; } Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/MacroStabilityIoTests.cs =================================================================== diff -u -r3038 -r3077 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/MacroStabilityIoTests.cs (.../MacroStabilityIoTests.cs) (revision 3038) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/MacroStabilityIoTests.cs (.../MacroStabilityIoTests.cs) (revision 3077) @@ -30,11 +30,13 @@ using Deltares.DamEngine.Data.Geometry; using Deltares.DamEngine.Data.Geotechnics; using Deltares.DamEngine.Data.Standard.Logging; +using Deltares.DamEngine.TestHelpers; using Deltares.DamEngine.TestHelpers.Factories; using Deltares.MacroStability.CSharpWrapper.Output; using KellermanSoftware.CompareNetObjects; using CharacteristicPointSet = Deltares.DamEngine.Data.Geotechnics.CharacteristicPointSet; using HeadLine = Deltares.DamEngine.Data.Geometry.HeadLine; +using MacroStabilityOutput = Deltares.MacroStability.CSharpWrapper.Output.MacroStabilityOutput; using SoilProfile2D = Deltares.DamEngine.Data.Geotechnics.SoilProfile2D; using SurfaceLine2 = Deltares.DamEngine.Data.Geotechnics.SurfaceLine2; using Waternet = Deltares.DamEngine.Data.Geometry.Waternet; @@ -74,6 +76,7 @@ } [Test] + [Category(Categories.WorkInProgress)] // Check validation of grid public void GivenDamEngineDataModelWhenGoingToAndFromCSharpWrapperForInputTheDataIsEqual() { // Given DamEngine data (DamProjectData) @@ -143,6 +146,7 @@ RightGridXCount = random.Next(), RightGridZCount = random.Next(), + IsTangentLinesAutomatic = true, TangentLineZBottom = 0, TangentLineZTop = 10, TangentLineCount = 10 Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/FillEngineFromMacroStabilityWrapperInput.cs =================================================================== diff -u -r3042 -r3077 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/FillEngineFromMacroStabilityWrapperInput.cs (.../FillEngineFromMacroStabilityWrapperInput.cs) (revision 3042) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/FillEngineFromMacroStabilityWrapperInput.cs (.../FillEngineFromMacroStabilityWrapperInput.cs) (revision 3077) @@ -126,7 +126,6 @@ private void TransferUpliftVanCalculationGrid(KernelUpliftVanCalculationGrid kernelSlipPlaneUpliftVan, SearchAreaConditions kernelSearchAreaConditions) { - // UpliftVanCalculationGrid.IsGridsAutomatic = kernelSearchAreaConditions.AutoSearchArea; UpliftVanCalculationGrid = new UpliftVanCalculationGrid { LeftGridXCount = kernelSlipPlaneUpliftVan.LeftGrid.GridXNumber, @@ -143,11 +142,11 @@ RightGridZBottom = kernelSlipPlaneUpliftVan.RightGrid.GridZBottom }; - // Tangent lines are filled from bottom to top as specified by the FillMacroStabilityWrapperInputFromEngine. - IEnumerable tangentLines = kernelSlipPlaneUpliftVan.TangentLines.ToArray(); - UpliftVanCalculationGrid.TangentLineZBottom = tangentLines.First(); - UpliftVanCalculationGrid.TangentLineZTop = tangentLines.Last(); - UpliftVanCalculationGrid.TangentLineCount = tangentLines.Count() - 1; // -1 as the ZTop coordinate is inclusive + if (kernelSlipPlaneUpliftVan.TangentLines != null) + { + IEnumerable tangentLines = kernelSlipPlaneUpliftVan.TangentLines.ToArray(); + UpliftVanCalculationGrid.TangentLineLevels = tangentLines.ToList(); + } } private void TransferUpliftVanCalculationGridSettings(SearchAreaConditions kernelSearchAreaConditions) @@ -158,17 +157,17 @@ slipCircleDefinition.GridSizeDetermination = GridSizeDetermination.Automatic; } - slipCircleDefinition.UpliftVanTangentLinesDefinition = TangentLinesDefinition.Specified; if (kernelSearchAreaConditions.AutoTangentLines) { - slipCircleDefinition.UpliftVanTangentLinesDefinition = TangentLinesDefinition.OnBoundaryLines; - } - else - { + slipCircleDefinition.UpliftVanTangentLinesDefinition = TangentLinesDefinition.Specified; slipCircleDefinition.UpliftVanTangentLinesDistance = (kernelSearchAreaConditions.TangentLineZTop - kernelSearchAreaConditions.TangentLineZBottom) / kernelSearchAreaConditions.TangentLineNumber; } + else + { + slipCircleDefinition.UpliftVanTangentLinesDefinition = TangentLinesDefinition.OnBoundaryLines; + } } private void TransferWaternet(KernelWaternet kernelWaternet) Index: DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/ConversionHelperTests.cs =================================================================== diff -u -r2503 -r3077 --- DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/ConversionHelperTests.cs (.../ConversionHelperTests.cs) (revision 2503) +++ DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/ConversionHelperTests.cs (.../ConversionHelperTests.cs) (revision 3077) @@ -376,16 +376,16 @@ } [Test] - [TestCase(TangentLinesDefinition.OnBoundaryLines, ConversionHelper.InputTangentLinesOnBoundatyLines)] - [TestCase(TangentLinesDefinition.Specified, ConversionHelper.InputTangentLinesSpecified)] + [TestCase(TangentLinesDefinition.OnBoundaryLines, ConversionHelper.InputTangentLinesSpecified)] + [TestCase(TangentLinesDefinition.Specified, ConversionHelper.InputTangentLinesOnBoundaryLines)] public void CanConvertToInputTangentLinesDefinition(TangentLinesDefinition tangentLineType, int inputTangentLineType) { Assert.AreEqual(inputTangentLineType, ConversionHelper.ConvertToInputTangentLinesDefinition(tangentLineType)); } [Test] - [TestCase(ConversionHelper.InputTangentLinesOnBoundatyLines, TangentLinesDefinition.OnBoundaryLines)] - [TestCase(ConversionHelper.InputTangentLinesSpecified, TangentLinesDefinition.Specified)] + [TestCase(ConversionHelper.InputGridTypeSpecified, TangentLinesDefinition.OnBoundaryLines)] + [TestCase(ConversionHelper.InputGridTypeAutomatic, TangentLinesDefinition.Specified)] public void CanConvertToTangentLinesDefinition(int inputTangentLineType, TangentLinesDefinition tangentLineType) { Assert.AreEqual(tangentLineType, ConversionHelper.ConvertToTangentLinesDefinition(inputTangentLineType)); Index: DamEngine/trunk/src/Deltares.DamEngine.TestHelpers/Factories/FactoryForDamProjectData.cs =================================================================== diff -u -r2951 -r3077 --- DamEngine/trunk/src/Deltares.DamEngine.TestHelpers/Factories/FactoryForDamProjectData.cs (.../FactoryForDamProjectData.cs) (revision 2951) +++ DamEngine/trunk/src/Deltares.DamEngine.TestHelpers/Factories/FactoryForDamProjectData.cs (.../FactoryForDamProjectData.cs) (revision 3077) @@ -241,7 +241,7 @@ UpliftVanRightGridVerticalPointCount = 11, UpliftVanRightGridVerticalPointDistance = 0.14, UpliftVanTangentLinesDefinition = TangentLinesDefinition.OnBoundaryLines, - UpliftVanTangentLinesDistance = 0.01 + UpliftVanTangentLinesDistance = 0.5 // this should be a reasonable value } } };