Index: Riskeer/MacroStabilityInwards/src/Riskeer.MacroStabilityInwards.KernelWrapper/Creators/Output/UpliftVanSlidingCurveResultCreator.cs =================================================================== diff -u -r502628993928a1e34023af884433fd19ebac2adb -rc2f83bf43f80e777d42e6492e5afbfc5f27c23f3 --- Riskeer/MacroStabilityInwards/src/Riskeer.MacroStabilityInwards.KernelWrapper/Creators/Output/UpliftVanSlidingCurveResultCreator.cs (.../UpliftVanSlidingCurveResultCreator.cs) (revision 502628993928a1e34023af884433fd19ebac2adb) +++ Riskeer/MacroStabilityInwards/src/Riskeer.MacroStabilityInwards.KernelWrapper/Creators/Output/UpliftVanSlidingCurveResultCreator.cs (.../UpliftVanSlidingCurveResultCreator.cs) (revision c2f83bf43f80e777d42e6492e5afbfc5f27c23f3) @@ -23,8 +23,9 @@ using System.Collections.Generic; using System.Linq; using Core.Common.Base.Geometry; -using Deltares.MacroStability.Data; +using Deltares.MacroStability.CSharpWrapper.Output; using Riskeer.MacroStabilityInwards.KernelWrapper.Calculators.UpliftVan.Output; +using CSharpWrapperPoint2D = Deltares.MacroStability.CSharpWrapper.Point2D; namespace Riskeer.MacroStabilityInwards.KernelWrapper.Creators.Output { @@ -42,52 +43,52 @@ /// taken from the . /// Thrown when /// is null. - public static UpliftVanSlidingCurveResult Create(SlidingDualCircle slidingCurve) + public static UpliftVanSlidingCurveResult Create(DualSlidingCircleMinimumSafetyCurve slidingCurve) { if (slidingCurve == null) { throw new ArgumentNullException(nameof(slidingCurve)); } - bool leftCircleIsActive = slidingCurve.ActiveCircle.X <= slidingCurve.PassiveCircle.X; + bool leftCircleIsActive = slidingCurve.ActiveCircleCenter.X <= slidingCurve.PassiveCircleCenter.X; UpliftVanSlidingCircleResult leftCircle = leftCircleIsActive ? CreateActiveCircle(slidingCurve) : CreatePassiveCircle(slidingCurve); UpliftVanSlidingCircleResult rightCircle = leftCircleIsActive ? CreatePassiveCircle(slidingCurve) : CreateActiveCircle(slidingCurve); return new UpliftVanSlidingCurveResult(leftCircle, rightCircle, CreateSlices(slidingCurve.Slices), - slidingCurve.HorizontalForce0, slidingCurve.HorizontalForce); + slidingCurve.NonIteratedHorizontalForce, slidingCurve.IteratedHorizontalForce); } - private static UpliftVanSlidingCircleResult CreateActiveCircle(SlidingDualCircle slidingCurve) + private static UpliftVanSlidingCircleResult CreateActiveCircle(DualSlidingCircleMinimumSafetyCurve slidingCurve) { - return new UpliftVanSlidingCircleResult(new Point2D(slidingCurve.ActiveCircle.X, slidingCurve.ActiveCircle.Z), - slidingCurve.ActiveRadius, true, slidingCurve.ActiveForce0, slidingCurve.ActiveForce, - slidingCurve.DrivingMomentActive, slidingCurve.ResistingMomentActive); + return new UpliftVanSlidingCircleResult(new Point2D(slidingCurve.ActiveCircleCenter.X, slidingCurve.ActiveCircleCenter.Z), + slidingCurve.ActiveCircleRadius, true, slidingCurve.NonIteratedActiveForce, slidingCurve.IteratedActiveForce, + slidingCurve.DrivingActiveMoment, slidingCurve.ResistingActiveMoment); } - private static UpliftVanSlidingCircleResult CreatePassiveCircle(SlidingDualCircle slidingCurve) + private static UpliftVanSlidingCircleResult CreatePassiveCircle(DualSlidingCircleMinimumSafetyCurve slidingCurve) { - return new UpliftVanSlidingCircleResult(new Point2D(slidingCurve.PassiveCircle.X, slidingCurve.PassiveCircle.Z), - slidingCurve.PassiveRadius, false, slidingCurve.PassiveForce0, slidingCurve.PassiveForce, - slidingCurve.DrivingMomentPassive, slidingCurve.ResistingMomentPassive); + return new UpliftVanSlidingCircleResult(new Point2D(slidingCurve.PassiveCircleCenter.X, slidingCurve.PassiveCircleCenter.Z), + slidingCurve.PassiveCircleRadius, false, slidingCurve.NonIteratedPassiveForce, slidingCurve.IteratedPassiveForce, + slidingCurve.DrivingPassiveMoment, slidingCurve.ResistingPassiveMoment); } private static IEnumerable CreateSlices(IEnumerable slidingCurveSlices) { return slidingCurveSlices.Select( slice => new UpliftVanSliceResult( - new Point2D(slice.TopLeftX, slice.TopLeftZ), - new Point2D(slice.TopRightX, slice.TopRightZ), - new Point2D(slice.BottomLeftX, slice.BottomLeftZ), - new Point2D(slice.BottomRightX, slice.BottomRightZ), + ToRiskeerPoint2D(slice.TopLeftPoint), + ToRiskeerPoint2D(slice.TopRightPoint), + ToRiskeerPoint2D(slice.BottomLeftPoint), + ToRiskeerPoint2D(slice.BottomRightPoint), new UpliftVanSliceResult.ConstructionProperties { Cohesion = slice.Cohesion, - FrictionAngle = slice.Phi, - CriticalPressure = slice.PGrens, + FrictionAngle = slice.FrictionAngleInput, + CriticalPressure = slice.YieldStress, OverConsolidationRatio = slice.OCR, Pop = slice.POP, - DegreeOfConsolidationPorePressureSoil = slice.DegreeofConsolidationPorePressure, + DegreeOfConsolidationPorePressureSoil = slice.DegreeOfConsolidationPorePressure, DegreeOfConsolidationPorePressureLoad = slice.PorePressureDueToDegreeOfConsolidationLoad, Dilatancy = slice.Dilatancy, ExternalLoad = slice.ExternalLoad, @@ -100,9 +101,9 @@ RightForceY = slice.RightForceY, LoadStress = slice.LoadStress, NormalStress = slice.NormalStress, - PorePressure = slice.PoreOnSurface, - HorizontalPorePressure = slice.HPoreOnSurface, - VerticalPorePressure = slice.VPoreOnSurface, + PorePressure = slice.PorePressure, + HorizontalPorePressure = slice.HorizontalPorePressure, + VerticalPorePressure = slice.VerticalPorePressure, PiezometricPorePressure = slice.PiezometricPorePressure, EffectiveStress = slice.EffectiveStress, ExcessPorePressure = slice.ExcessPorePressure, @@ -113,5 +114,10 @@ Weight = slice.Weight })).ToArray(); } + + private static Point2D ToRiskeerPoint2D(CSharpWrapperPoint2D point) + { + return new Point2D(point.X, point.Z); + } } } \ No newline at end of file Index: Riskeer/MacroStabilityInwards/test/Riskeer.MacroStabilityInwards.KernelWrapper.Test/Creators/Output/UpliftVanSlidingCurveResultCreatorTest.cs =================================================================== diff -u -r502628993928a1e34023af884433fd19ebac2adb -rc2f83bf43f80e777d42e6492e5afbfc5f27c23f3 --- Riskeer/MacroStabilityInwards/test/Riskeer.MacroStabilityInwards.KernelWrapper.Test/Creators/Output/UpliftVanSlidingCurveResultCreatorTest.cs (.../UpliftVanSlidingCurveResultCreatorTest.cs) (revision 502628993928a1e34023af884433fd19ebac2adb) +++ Riskeer/MacroStabilityInwards/test/Riskeer.MacroStabilityInwards.KernelWrapper.Test/Creators/Output/UpliftVanSlidingCurveResultCreatorTest.cs (.../UpliftVanSlidingCurveResultCreatorTest.cs) (revision c2f83bf43f80e777d42e6492e5afbfc5f27c23f3) @@ -20,13 +20,14 @@ // All rights reserved. using System; +using System.Collections.Generic; using System.Linq; -using Deltares.MacroStability.Data; -using Deltares.MacroStability.Geometry; +using Core.Common.Base.Geometry; +using Deltares.MacroStability.CSharpWrapper.Output; using NUnit.Framework; using Riskeer.MacroStabilityInwards.KernelWrapper.Calculators.UpliftVan.Output; using Riskeer.MacroStabilityInwards.KernelWrapper.Creators.Output; -using Point2D = Core.Common.Base.Geometry.Point2D; +using CSharpWrapperPoint2D = Deltares.MacroStability.CSharpWrapper.Point2D; namespace Riskeer.MacroStabilityInwards.KernelWrapper.Test.Creators.Output { @@ -37,10 +38,10 @@ public void Create_SlidingCurveNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => UpliftVanSlidingCurveResultCreator.Create(null); + void Call() => UpliftVanSlidingCurveResultCreator.Create(null); // Assert - var exception = Assert.Throws(call); + var exception = Assert.Throws(Call); Assert.AreEqual("slidingCurve", exception.ParamName); } @@ -69,29 +70,29 @@ double iteratedHorizontalForce = random.Next(); double nonIteratedHorizontalForce = random.Next(); - var slidingCurve = new SlidingDualCircle + var slidingCurve = new DualSlidingCircleMinimumSafetyCurve { - ActiveCircle = new GeometryPoint(activeCircleX, activeCircleZ), - ActiveForce = activeCircleIteratedForce, - ActiveForce0 = activeCircleNonIteratedForce, - ActiveRadius = activeCircleRadius, - DrivingMomentActive = activeCircleDrivingMoment, - ResistingMomentActive = activeCircleResistingMoment, - PassiveCircle = new GeometryPoint(passiveCircleX, passiveCircleZ), - PassiveForce = passiveCircleIteratedForce, - PassiveForce0 = passiveCircleNonIteratedForce, - PassiveRadius = passiveCircleRadius, - DrivingMomentPassive = passiveCircleDrivingMoment, - ResistingMomentPassive = passiveCircleResistingMoment, - HorizontalForce = iteratedHorizontalForce, - HorizontalForce0 = nonIteratedHorizontalForce + ActiveCircleCenter = new CSharpWrapperPoint2D(activeCircleX, activeCircleZ), + IteratedActiveForce = activeCircleIteratedForce, + NonIteratedActiveForce = activeCircleNonIteratedForce, + ActiveCircleRadius = activeCircleRadius, + DrivingActiveMoment = activeCircleDrivingMoment, + ResistingActiveMoment = activeCircleResistingMoment, + PassiveCircleCenter = new CSharpWrapperPoint2D(passiveCircleX, passiveCircleZ), + IteratedPassiveForce = passiveCircleIteratedForce, + NonIteratedPassiveForce = passiveCircleNonIteratedForce, + PassiveCircleRadius = passiveCircleRadius, + DrivingPassiveMoment = passiveCircleDrivingMoment, + ResistingPassiveMoment = passiveCircleResistingMoment, + IteratedHorizontalForce = iteratedHorizontalForce, + NonIteratedHorizontalForce = nonIteratedHorizontalForce }; // Call UpliftVanSlidingCurveResult result = UpliftVanSlidingCurveResultCreator.Create(slidingCurve); // Assert - bool leftCircleIsActive = slidingCurve.ActiveCircle.X <= slidingCurve.PassiveCircle.X; + bool leftCircleIsActive = slidingCurve.ActiveCircleCenter.X <= slidingCurve.PassiveCircleCenter.X; AssertActiveCircle(leftCircleIsActive ? result.LeftCircle : result.RightCircle, activeCircleX, activeCircleZ, activeCircleIteratedForce, activeCircleNonIteratedForce, activeCircleRadius, @@ -149,52 +150,44 @@ double totalStress = random.NextDouble(); double weight = random.NextDouble(); - var slidingCurve = new SlidingDualCircle - { - Slices = + var slidingCurve = new DualSlidingCircleMinimumSafetyCurve(); + ((List) slidingCurve.Slices).Add( + new Slice { - new Slice - { - TopLeftX = topLeftX, - TopLeftZ = topLeftZ, - TopRightX = topRightX, - TopRightZ = topRightZ, - BottomLeftX = bottomLeftX, - BottomLeftZ = bottomLeftZ, - BottomRightX = bottomRightX, - BottomRightZ = bottomRightZ, - Cohesion = cohesion, - Phi = frictionAngle, - PGrens = criticalPressure, - OCR = overConsolidationRatio, - POP = pop, - DegreeofConsolidationPorePressure = degreeOfConsolidationPorePressureSoil, - PorePressureDueToDegreeOfConsolidationLoad = degreeOfConsolidationPorePressureLoad, - Dilatancy = dilatancy, - ExternalLoad = externalLoad, - HydrostaticPorePressure = hydrostaticPorePressure, - LeftForce = leftForce, - LeftForceAngle = leftForceAngle, - LeftForceY = leftForceY, - RightForce = rightForce, - RightForceAngle = rightForceAngle, - RightForceY = rightForceY, - LoadStress = loadStress, - NormalStress = normalStress, - PoreOnSurface = porePressure, - HPoreOnSurface = horizontalPorePressure, - VPoreOnSurface = verticalPorePressure, - PiezometricPorePressure = piezometricPorePressure, - EffectiveStress = effectiveStress, - ExcessPorePressure = excessPorePressure, - ShearStress = shearStress, - SoilStress = soilStress, - TotalPorePressure = totalPorePressure, - TotalStress = totalStress, - Weight = weight - } - } - }; + TopLeftPoint = new CSharpWrapperPoint2D(topLeftX, topLeftZ), + TopRightPoint = new CSharpWrapperPoint2D(topRightX, topRightZ), + BottomLeftPoint = new CSharpWrapperPoint2D(bottomLeftX, bottomLeftZ), + BottomRightPoint = new CSharpWrapperPoint2D(bottomRightX, bottomRightZ), + Cohesion = cohesion, + FrictionAngleInput = frictionAngle, + YieldStress = criticalPressure, + OCR = overConsolidationRatio, + POP = pop, + DegreeOfConsolidationPorePressure = degreeOfConsolidationPorePressureSoil, + PorePressureDueToDegreeOfConsolidationLoad = degreeOfConsolidationPorePressureLoad, + Dilatancy = dilatancy, + ExternalLoad = externalLoad, + HydrostaticPorePressure = hydrostaticPorePressure, + LeftForce = leftForce, + LeftForceAngle = leftForceAngle, + LeftForceY = leftForceY, + RightForce = rightForce, + RightForceAngle = rightForceAngle, + RightForceY = rightForceY, + LoadStress = loadStress, + NormalStress = normalStress, + PorePressure = porePressure, + HorizontalPorePressure = horizontalPorePressure, + VerticalPorePressure = verticalPorePressure, + PiezometricPorePressure = piezometricPorePressure, + EffectiveStress = effectiveStress, + ExcessPorePressure = excessPorePressure, + ShearStress = shearStress, + SoilStress = soilStress, + TotalPorePressure = totalPorePressure, + TotalStress = totalStress, + Weight = weight + }); // Call UpliftVanSlidingCurveResult result = UpliftVanSlidingCurveResultCreator.Create(slidingCurve);