Fisheye: Tag 2918 refers to a dead (removed) revision in file `DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/TestFiles/Result1.xml'. Fisheye: No comparison available. Pass `N' to diff? Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityInwards/MacroStabilityInwardsKernelWrapper.cs =================================================================== diff -u -r2904 -r2918 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityInwards/MacroStabilityInwardsKernelWrapper.cs (.../MacroStabilityInwardsKernelWrapper.cs) (revision 2904) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityInwards/MacroStabilityInwardsKernelWrapper.cs (.../MacroStabilityInwardsKernelWrapper.cs) (revision 2918) @@ -101,19 +101,13 @@ FillMacroStabilityWrapperInputFromEngine fillMacroStabilityWrapperFromEngine = new FillMacroStabilityWrapperInputFromEngine() { - SoilList = damKernelInput.Location.SoilList, - FailureMechanismParametersMStab = this.FailureMechanismParametersMStab, - Location = damKernelInput.Location, // ToDo MWDAM-1373/1374: fill SoilProfile2D - // SoilProfile2D = expectedSoilProfile2D, - SurfaceLine2 = damKernelInput.Location.SurfaceLine, - Waternet = waternet, - // ToDo MWDAM-1399: add data for calculation grid Uplift Van - // UpliftVanCalculationGrid = expectedUpliftVanCalculationGrid + // ToDo MWDAM-1399: add data for calculation grid Uplift Van, connect it to actual engine input + // Todo Check if trafficload is really part of engine input and if so connect this to trafficload in mecrostability common, }; // ToDo MWDAM-1356: following line is not working yet, first all necessary input must be declared - macroStabilityInput.Input = fillMacroStabilityWrapperFromEngine.CreateMacroStabilityInput(); + macroStabilityInput.Input = fillMacroStabilityWrapperFromEngine.CreateMacroStabilityInput(damKernelInput, FailureMechanismParametersMStab, waternet); // KernelModel expectedKernelModel = fillMacroStabilityWrapperFromEngine.CreateKernelModel(); // expectedKernelModel. // var xmlInput = CreateXmlInput(macroStabilityInput, FailureMechanismParametersMStab.EmbankmentDesignParameters); Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/FillEngineFromMacroStabilityWrapperInput.cs =================================================================== diff -u -r2904 -r2918 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/FillEngineFromMacroStabilityWrapperInput.cs (.../FillEngineFromMacroStabilityWrapperInput.cs) (revision 2904) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/FillEngineFromMacroStabilityWrapperInput.cs (.../FillEngineFromMacroStabilityWrapperInput.cs) (revision 2918) @@ -25,20 +25,10 @@ using Deltares.DamEngine.Data.General; using Deltares.DamEngine.Data.Geometry; using Deltares.DamEngine.Data.Geotechnics; -using Deltares.MacroStability.Data; -using Deltares.MacroStability.Kernel; -using Deltares.MacroStability.Preprocessing; -using Deltares.SoilStress.Data; -using Soil = Deltares.MacroStability.Geometry.Soil; using CharacteristicPoint = Deltares.DamEngine.Data.Geotechnics.CharacteristicPoint; -using GeometryCurve = Deltares.MacroStability.Geometry.GeometryCurve; -using GeometryLoop = Deltares.MacroStability.Geometry.GeometryLoop; -using GeometryPointString = Deltares.MacroStability.Geometry.GeometryPointString; -using GeometrySurface = Deltares.MacroStability.Geometry.GeometrySurface; -using Point2D = Deltares.MacroStability.Geometry.Point2D; using SurfaceLine2 = Deltares.DamEngine.Data.Geotechnics.SurfaceLine2; -using Waternet = Deltares.MacroStability.Geometry.Waternet; + namespace Deltares.DamEngine.Calculators.KernelWrappers.MacroStabilityCommon.MacroStabilityIo { /// Fill DamEngine data objects from the kernel data model @@ -179,7 +169,7 @@ // } } - private void TransferSurfaceLine(MacroStability.CSharpWrapper.Input.SurfaceLine kernelSurfaceLine2) + private void TransferSurfaceLine(MacroStability.CSharpWrapper.Input.SurfaceLine kernelSurfaceLine) { // SurfaceLine2 = new SurfaceLine2(); // foreach (var kernelCharPoint in kernelSurfaceLine2.CharacteristicPoints) Fisheye: Tag 2918 refers to a dead (removed) revision in file `DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/TestFiles/ValidateError.xml'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 2918 refers to a dead (removed) revision in file `DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/TestFiles/Benchmark 1-01b.wti'. Fisheye: No comparison available. Pass `N' to diff? Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/MacroStabilityIoTests.cs =================================================================== diff -u -r2904 -r2918 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/MacroStabilityIoTests.cs (.../MacroStabilityIoTests.cs) (revision 2904) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/MacroStabilityIoTests.cs (.../MacroStabilityIoTests.cs) (revision 2918) @@ -80,16 +80,10 @@ }; var fillWtiKernelData = new FillMacroStabilityWrapperInputFromEngine() { - SoilList = expectedSoilList, - FailureMechanismParametersMStab = expectedParametersMStab, - Location = expectedLocation, - SoilProfile2D = expectedSoilProfile2D, - SurfaceLine2 = expectedSurfaceLine2D, - Waternet = expectedWaternet, UpliftVanCalculationGrid = expectedUpliftVanCalculationGrid, TrafficLoad = expectedTrafficLoad }; - var expectedKernelModel = fillWtiKernelData.CreateMacroStabilityInput(); + //var expectedKernelModel = fillWtiKernelData.CreateMacroStabilityInput(); //ToDo replace serialization with C#wrapper conversions as provided by methods in FillEngineFromMacroStabilityWrapperInput, FillEngineFromMacroStabilityWrapperOutput, FillMacroStabilityWrapperInputFromEngine, FillMacroStabilityWrapperOutputFromEngine // When Serializing and Deserializing @@ -184,16 +178,10 @@ // And writing back to kernel data var fillWtiKernelData = new FillMacroStabilityWrapperInputFromEngine() { - SoilList = fillDamEngineFromWti.SoilList, - Waternet = fillDamEngineFromWti.Waternet, - FailureMechanismParametersMStab = fillDamEngineFromWti.FailureMechanismParametersMStab, - Location = fillDamEngineFromWti.Location, - SoilProfile2D = fillDamEngineFromWti.SoilProfile2D, - SurfaceLine2 = fillDamEngineFromWti.SurfaceLine2, UpliftVanCalculationGrid = fillDamEngineFromWti.UpliftVanCalculationGrid, TrafficLoad = fillDamEngineFromWti.TrafficLoad }; - var actualKernelModel = fillWtiKernelData.CreateMacroStabilityInput(); + // var actualKernelModel = fillWtiKernelData.CreateMacroStabilityInput(); // string xmlOutput = WtiSerializer.Serialize(actualKernelModel); string fileNameOut = fileNameIn + ".out"; string fullFileNameOut = Path.Combine(WtiFilesMap, fileNameOut); Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/ConversionHelper.cs =================================================================== diff -u -r2907 -r2918 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/ConversionHelper.cs (.../ConversionHelper.cs) (revision 2907) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/ConversionHelper.cs (.../ConversionHelper.cs) (revision 2918) @@ -24,13 +24,19 @@ using Deltares.DamEngine.Data.General; using Deltares.DamEngine.Data.Geotechnics; using Deltares.MacroStability.CSharpWrapper.Input; +using Deltares.MacroStability.CSharpWrapper.Output; using CharacteristicPointType = Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType; +using WaterPressureInterpolationModel = Deltares.DamEngine.Data.Geotechnics.WaterpressureInterpolationModel; +using CharacteristicPoint = Deltares.MacroStability.CSharpWrapper.Input.CharacteristicPoint; using LogMessageType = Deltares.DamEngine.Data.Standard.Logging.LogMessageType; using ObjectExtensions = Deltares.DamEngine.Data.Standard.ObjectExtensions; using SearchAlgorithm = Deltares.MacroStability.CSharpWrapper.Input.SearchAlgorithm; +using MessageTpe = Deltares.MacroStability.CSharpWrapper.Output.MessageType; using ShearStrengthModel = Deltares.DamEngine.Data.Geotechnics.ShearStrengthModel; using Soil = Deltares.MacroStability.CSharpWrapper.Input.Soil; -using WaterpressureInterpolationModel = Deltares.MacroStability.CSharpWrapper.Input.WaterPressureInterpolationModel; +using StabilityModelOption = Deltares.MacroStability.CSharpWrapper.Output.StabilityModelOption; +using WaterPressureInterpolationModelKernel = Deltares.MacroStability.CSharpWrapper.Input.WaterPressureInterpolationModel; +using ShearStrengthModelKernel = Deltares.MacroStability.CSharpWrapper.Input.ShearStrengthModel; namespace Deltares.DamEngine.Calculators.KernelWrappers.MacroStabilityCommon.MacroStabilityIo { @@ -76,13 +82,13 @@ /// This comes back from the kernel side so any model that can be matched is OK. /// The model option. /// the Dam MStabModelType - public static MStabModelType ConvertToMStabModelType(Deltares.MacroStability.CSharpWrapper.Output.StabilityModelOption modelOption) + public static MStabModelType ConvertToMStabModelType(StabilityModelOption modelOption) { // For the macrostability kernel, the only really supported option for now is UpliftVan. But the other two could be options in future version - var translationTable = new Dictionary() + var translationTable = new Dictionary() { - {MacroStability.CSharpWrapper.Output.StabilityModelOption.Bishop, MStabModelType.BishopWti}, - {MacroStability.CSharpWrapper.Output.StabilityModelOption.UpliftVan, MStabModelType.UpliftVanWti }, + {StabilityModelOption.Bishop, MStabModelType.BishopWti}, + {StabilityModelOption.UpliftVan, MStabModelType.UpliftVanWti }, //{MacroStability.CSharpWrapper.Output.StabilityModelOption.Spencer, MStabModelType.UpliftSpencerWti} }; return translationTable[modelOption]; @@ -92,16 +98,16 @@ /// the MStabModelType. /// the MacroStability ModelOption /// - public static MacroStability.CSharpWrapper.Output.StabilityModelOption ConvertToModelOptions(MStabModelType mStabModelType) + public static StabilityModelOption ConvertToModelOptions(MStabModelType mStabModelType) { // For the macrostability kernel, the only supported option for now is UpliftVan. if (mStabModelType != MStabModelType.UpliftVanWti) { throw new ArgumentException(String.Format("Unsupported MStabModelType: {0}", mStabModelType)); } - var translationTable = new Dictionary() + var translationTable = new Dictionary() { - {MStabModelType.UpliftVanWti, MacroStability.CSharpWrapper.Output.StabilityModelOption.UpliftVan} + {MStabModelType.UpliftVanWti, StabilityModelOption.UpliftVan} }; return translationTable[mStabModelType]; } @@ -161,7 +167,7 @@ } else { - macroStabilitySoil.ShearStrengthModel = MacroStability.CSharpWrapper.Input.ShearStrengthModel.CPhi; + macroStabilitySoil.ShearStrengthModel = ShearStrengthModelKernel.CPhi; } switch (soil.DilatancyType) { @@ -236,13 +242,13 @@ /// Converts to dam ShearStrengthModel. /// The kernel ShearStrengthModel. /// - public static ShearStrengthModel ConvertToDamShearStrengthModel(MacroStability.CSharpWrapper.Input.ShearStrengthModel kernelShearStrengthModel) + public static ShearStrengthModel ConvertToDamShearStrengthModel(ShearStrengthModelKernel kernelShearStrengthModel) { - var translationTable = new Dictionary() + var translationTable = new Dictionary() { - {MacroStability.CSharpWrapper.Input.ShearStrengthModel.CPhi, ShearStrengthModel.CPhi}, - {MacroStability.CSharpWrapper.Input.ShearStrengthModel.CPhiOrCuCalculated, ShearStrengthModel.CPhiOrSuCalculated}, - {MacroStability.CSharpWrapper.Input.ShearStrengthModel.CuCalculated, ShearStrengthModel.SuCalculated} + {ShearStrengthModelKernel.CPhi, ShearStrengthModel.CPhi}, + {ShearStrengthModelKernel.CPhiOrCuCalculated, ShearStrengthModel.CPhiOrSuCalculated}, + {ShearStrengthModelKernel.CuCalculated, ShearStrengthModel.SuCalculated} }; return translationTable[kernelShearStrengthModel]; } @@ -251,7 +257,7 @@ /// The dam ShearStrengthModel. /// /// - public static MacroStability.CSharpWrapper.Input.ShearStrengthModel ConvertToMacroStabilityShearStrengthModel(ShearStrengthModel damShearStrengthModel) + public static ShearStrengthModelKernel ConvertToMacroStabilityShearStrengthModel(ShearStrengthModel damShearStrengthModel) { if (damShearStrengthModel == ShearStrengthModel.SuCalculatedWithYield || damShearStrengthModel == ShearStrengthModel.None || damShearStrengthModel == ShearStrengthModel.PseudoValues || damShearStrengthModel == ShearStrengthModel.StressTable || @@ -260,11 +266,11 @@ throw new ArgumentException(string.Format("Cannot convert dam ShearStrengthModel: {0}", damShearStrengthModel)); } - var translationTable = new Dictionary() + var translationTable = new Dictionary() { - {ShearStrengthModel.CPhi, MacroStability.CSharpWrapper.Input.ShearStrengthModel.CPhi}, - {ShearStrengthModel.CPhiOrSuCalculated, MacroStability.CSharpWrapper.Input.ShearStrengthModel.CPhiOrCuCalculated}, - {ShearStrengthModel.SuCalculated, MacroStability.CSharpWrapper.Input.ShearStrengthModel.CuCalculated} + {ShearStrengthModel.CPhi, ShearStrengthModelKernel.CPhi}, + {ShearStrengthModel.CPhiOrSuCalculated, ShearStrengthModelKernel.CPhiOrCuCalculated}, + {ShearStrengthModel.SuCalculated, ShearStrengthModelKernel.CuCalculated} }; return translationTable[damShearStrengthModel]; } @@ -275,25 +281,25 @@ /// Converts to macro stability waterpressure interpolation model. /// The waterpressure interpolation model. /// - public static WaterpressureInterpolationModel ConvertToMacroStabilityWaterpressureInterpolationModel(Data.Geotechnics.WaterpressureInterpolationModel waterpressureInterpolationModel) + public static WaterPressureInterpolationModelKernel ConvertToMacroStabilityWaterpressureInterpolationModel(WaterPressureInterpolationModel waterpressureInterpolationModel) { - var translationTable = new Dictionary() + var translationTable = new Dictionary() { - {Data.Geotechnics.WaterpressureInterpolationModel.Automatic, WaterpressureInterpolationModel.Automatic}, - {Data.Geotechnics.WaterpressureInterpolationModel.Hydrostatic, WaterpressureInterpolationModel.Hydrostatic} + {WaterPressureInterpolationModel.Automatic, WaterPressureInterpolationModelKernel.Automatic}, + {WaterPressureInterpolationModel.Hydrostatic, WaterPressureInterpolationModelKernel.Hydrostatic} }; return translationTable[waterpressureInterpolationModel]; } /// Converts to dam waterpressure interpolation model. /// The waterpressure interpolation model. /// - public static Data.Geotechnics.WaterpressureInterpolationModel ConvertToDamWaterpressureInterpolationModel(WaterpressureInterpolationModel waterpressureInterpolationModel) + public static Data.Geotechnics.WaterpressureInterpolationModel ConvertToDamWaterpressureInterpolationModel(WaterPressureInterpolationModelKernel waterpressureInterpolationModel) { - var translationTable = new Dictionary() + var translationTable = new Dictionary() { - {WaterpressureInterpolationModel.Automatic, Data.Geotechnics.WaterpressureInterpolationModel.Automatic}, - {WaterpressureInterpolationModel.Hydrostatic, Data.Geotechnics.WaterpressureInterpolationModel.Hydrostatic} + {WaterPressureInterpolationModelKernel.Automatic, WaterPressureInterpolationModel.Automatic}, + {WaterPressureInterpolationModelKernel.Hydrostatic, WaterPressureInterpolationModel.Hydrostatic} }; return translationTable[waterpressureInterpolationModel]; } @@ -303,57 +309,55 @@ /// Converts the type of to dam characteristic point. /// Type of the kernel characteristic point. /// - public static CharacteristicPointType ConvertToDamCharacteristicPointType(MacroStability.CSharpWrapper.Input.CharacteristicPoint kernelCharacteristicPointType) + public static CharacteristicPointType ConvertToDamCharacteristicPointType(CharacteristicPoint kernelCharacteristicPointType) { - var translationTable = new Dictionary() + var translationTable = new Dictionary() { - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.BottomDitchDikeSide, CharacteristicPointType.BottomDitchDikeSide}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.BottomDitchPolderSide, CharacteristicPointType.BottomDitchPolderSide}, - // {MacroStability.CSharpWrapper.Input.CharacteristicPoint.DikeLine, CharacteristicPointType.DikeLine}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.DikeToeAtPolder, CharacteristicPointType.DikeToeAtPolder}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.DikeToeAtRiver, CharacteristicPointType.DikeToeAtRiver}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.DikeTopAtPolder, CharacteristicPointType.DikeTopAtPolder}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.DikeTopAtRiver, CharacteristicPointType.DikeTopAtRiver}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.DitchDikeSide, CharacteristicPointType.DitchDikeSide}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.DitchPolderSide, CharacteristicPointType.DitchPolderSide}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.None, CharacteristicPointType.None}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.ShoulderBaseInside, CharacteristicPointType.ShoulderBaseInside}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.ShoulderBaseOutside, CharacteristicPointType.ShoulderBaseOutside}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.ShoulderTopInside, CharacteristicPointType.ShoulderTopInside}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.ShoulderTopOutside, CharacteristicPointType.ShoulderTopOutside}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.SurfaceLevelInside, CharacteristicPointType.SurfaceLevelInside}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.SurfaceLevelOutside, CharacteristicPointType.SurfaceLevelOutside}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.TrafficLoadInside, CharacteristicPointType.TrafficLoadInside}, - {MacroStability.CSharpWrapper.Input.CharacteristicPoint.TrafficLoadOutside, CharacteristicPointType.TrafficLoadOutside} + {CharacteristicPoint.BottomDitchDikeSide, CharacteristicPointType.BottomDitchDikeSide}, + {CharacteristicPoint.BottomDitchPolderSide, CharacteristicPointType.BottomDitchPolderSide}, + {CharacteristicPoint.DikeToeAtPolder, CharacteristicPointType.DikeToeAtPolder}, + {CharacteristicPoint.DikeToeAtRiver, CharacteristicPointType.DikeToeAtRiver}, + {CharacteristicPoint.DikeTopAtPolder, CharacteristicPointType.DikeTopAtPolder}, + {CharacteristicPoint.DikeTopAtRiver, CharacteristicPointType.DikeTopAtRiver}, + {CharacteristicPoint.DitchDikeSide, CharacteristicPointType.DitchDikeSide}, + {CharacteristicPoint.DitchPolderSide, CharacteristicPointType.DitchPolderSide}, + {CharacteristicPoint.None, CharacteristicPointType.None}, + {CharacteristicPoint.ShoulderBaseInside, CharacteristicPointType.ShoulderBaseInside}, + {CharacteristicPoint.ShoulderBaseOutside, CharacteristicPointType.ShoulderBaseOutside}, + {CharacteristicPoint.ShoulderTopInside, CharacteristicPointType.ShoulderTopInside}, + {CharacteristicPoint.ShoulderTopOutside, CharacteristicPointType.ShoulderTopOutside}, + {CharacteristicPoint.SurfaceLevelInside, CharacteristicPointType.SurfaceLevelInside}, + {CharacteristicPoint.SurfaceLevelOutside, CharacteristicPointType.SurfaceLevelOutside}, + {CharacteristicPoint.TrafficLoadInside, CharacteristicPointType.TrafficLoadInside}, + {CharacteristicPoint.TrafficLoadOutside, CharacteristicPointType.TrafficLoadOutside} }; return translationTable[kernelCharacteristicPointType]; } /// Converts the type of to macro stability characteristic point. /// Type of the dam characteristic point. /// - public static MacroStability.CSharpWrapper.Input.CharacteristicPoint ConvertToMacroStabilityCharacteristicPointType(CharacteristicPointType damCharacteristicPointType) + public static CharacteristicPoint ConvertToMacroStabilityCharacteristicPointType(CharacteristicPointType damCharacteristicPointType) { - var translationTable = new Dictionary() + var translationTable = new Dictionary() { - {CharacteristicPointType.BottomDitchPolderSide, MacroStability.CSharpWrapper.Input.CharacteristicPoint.BottomDitchPolderSide}, - {CharacteristicPointType.BottomDitchDikeSide, MacroStability.CSharpWrapper.Input.CharacteristicPoint.BottomDitchDikeSide}, - //{CharacteristicPointType.DikeLine, MacroStability.CSharpWrapper.Input.CharacteristicPoint.DikeLine}, - {CharacteristicPointType.DikeToeAtPolder, MacroStability.CSharpWrapper.Input.CharacteristicPoint.DikeToeAtPolder}, - {CharacteristicPointType.DikeToeAtRiver, MacroStability.CSharpWrapper.Input.CharacteristicPoint.DikeToeAtRiver}, - {CharacteristicPointType.DikeTopAtPolder, MacroStability.CSharpWrapper.Input.CharacteristicPoint.DikeTopAtPolder}, - {CharacteristicPointType.DikeTopAtRiver, MacroStability.CSharpWrapper.Input.CharacteristicPoint.DikeTopAtRiver}, - {CharacteristicPointType.DitchDikeSide, MacroStability.CSharpWrapper.Input.CharacteristicPoint.DitchDikeSide}, - {CharacteristicPointType.DitchPolderSide, MacroStability.CSharpWrapper.Input.CharacteristicPoint.DitchPolderSide}, - {CharacteristicPointType.None, MacroStability.CSharpWrapper.Input.CharacteristicPoint.None}, - {CharacteristicPointType.ShoulderBaseInside, MacroStability.CSharpWrapper.Input.CharacteristicPoint.ShoulderBaseInside}, - {CharacteristicPointType.ShoulderBaseOutside, MacroStability.CSharpWrapper.Input.CharacteristicPoint.ShoulderBaseOutside}, - {CharacteristicPointType.ShoulderTopInside, MacroStability.CSharpWrapper.Input.CharacteristicPoint.ShoulderTopInside}, - {CharacteristicPointType.ShoulderTopOutside, MacroStability.CSharpWrapper.Input.CharacteristicPoint.ShoulderTopOutside}, - {CharacteristicPointType.SurfaceLevelInside, MacroStability.CSharpWrapper.Input.CharacteristicPoint.SurfaceLevelInside}, - {CharacteristicPointType.SurfaceLevelOutside, MacroStability.CSharpWrapper.Input.CharacteristicPoint.SurfaceLevelOutside}, - {CharacteristicPointType.TrafficLoadInside, MacroStability.CSharpWrapper.Input.CharacteristicPoint.TrafficLoadInside}, - {CharacteristicPointType.TrafficLoadOutside, MacroStability.CSharpWrapper.Input.CharacteristicPoint.TrafficLoadOutside} + {CharacteristicPointType.BottomDitchPolderSide, CharacteristicPoint.BottomDitchPolderSide}, + {CharacteristicPointType.BottomDitchDikeSide, CharacteristicPoint.BottomDitchDikeSide}, + {CharacteristicPointType.DikeToeAtPolder, CharacteristicPoint.DikeToeAtPolder}, + {CharacteristicPointType.DikeToeAtRiver, CharacteristicPoint.DikeToeAtRiver}, + {CharacteristicPointType.DikeTopAtPolder, CharacteristicPoint.DikeTopAtPolder}, + {CharacteristicPointType.DikeTopAtRiver, CharacteristicPoint.DikeTopAtRiver}, + {CharacteristicPointType.DitchDikeSide, CharacteristicPoint.DitchDikeSide}, + {CharacteristicPointType.DitchPolderSide, CharacteristicPoint.DitchPolderSide}, + {CharacteristicPointType.None, CharacteristicPoint.None}, + {CharacteristicPointType.ShoulderBaseInside, CharacteristicPoint.ShoulderBaseInside}, + {CharacteristicPointType.ShoulderBaseOutside, CharacteristicPoint.ShoulderBaseOutside}, + {CharacteristicPointType.ShoulderTopInside, CharacteristicPoint.ShoulderTopInside}, + {CharacteristicPointType.ShoulderTopOutside, CharacteristicPoint.ShoulderTopOutside}, + {CharacteristicPointType.SurfaceLevelInside, CharacteristicPoint.SurfaceLevelInside}, + {CharacteristicPointType.SurfaceLevelOutside, CharacteristicPoint.SurfaceLevelOutside}, + {CharacteristicPointType.TrafficLoadInside, CharacteristicPoint.TrafficLoadInside}, + {CharacteristicPointType.TrafficLoadOutside, CharacteristicPoint.TrafficLoadOutside} }; return translationTable[damCharacteristicPointType]; } @@ -365,13 +369,13 @@ /// /// Type of the message. /// - public static LogMessageType ConvertKernelValidationResultTypeToLogMessageType(MacroStability.CSharpWrapper.Output.MessageType messageType) + public static LogMessageType ConvertKernelValidationResultTypeToLogMessageType(MessageTpe messageType) { - var translationTable = new Dictionary() + var translationTable = new Dictionary() { - {MacroStability.CSharpWrapper.Output.MessageType.Info, LogMessageType.Info}, - {MacroStability.CSharpWrapper.Output.MessageType.Warning, LogMessageType.Warning}, - {MacroStability.CSharpWrapper.Output.MessageType.Error, LogMessageType.Error} + {MessageType.Info, LogMessageType.Info}, + {MessageTpe.Warning, LogMessageType.Warning}, + {MessageType.Error, LogMessageType.Error} }; return translationTable[messageType]; } @@ -381,13 +385,13 @@ /// /// Type of the message. /// - public static LogMessageType ConvertKernelLogMessageTypeToLogMessageType(MacroStability.Standard.LogMessageType messageType) + public static LogMessageType ConvertKernelLogMessageTypeToLogMessageType(MessageType messageType) { - var translationTable = new Dictionary() + var translationTable = new Dictionary() { - {MacroStability.Standard.LogMessageType.Info, LogMessageType.Info}, - {MacroStability.Standard.LogMessageType.Warning, LogMessageType.Warning}, - {MacroStability.Standard.LogMessageType.Error, LogMessageType.Error} + {MessageType.Info, LogMessageType.Info}, + {MessageType.Warning, LogMessageType.Warning}, + {MessageType.Error, LogMessageType.Error} }; return translationTable[messageType]; } Fisheye: Tag 2918 refers to a dead (removed) revision in file `DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/TestFiles/bm3-10c.wti'. Fisheye: No comparison available. Pass `N' to diff? Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/PlLinesCreator/PlLinesCreator.cs =================================================================== diff -u -r2794 -r2918 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/PlLinesCreator/PlLinesCreator.cs (.../PlLinesCreator.cs) (revision 2794) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/PlLinesCreator/PlLinesCreator.cs (.../PlLinesCreator.cs) (revision 2918) @@ -1624,6 +1624,8 @@ /// private void CreatePhreaticLineSegmentsInShoulderAndPolder(PlLine phreaticLine) { + // intersectionPolderLevelWithDike is always determined between dike toe polder side and dike top riverside. Any intersection(s) at polder side + // beyond dike toe are ignored. PlLinePoint intersectionPolderLevelWithDike = DetermineIntersectionBetweenPolderLevelAndDike(this.WaterLevelPolder); GeometryPoint dikeToeAtPolderPoint = surfaceLine.CharacteristicPoints.GetGeometryPoint(CharacteristicPointType.DikeToeAtPolder); @@ -1678,6 +1680,8 @@ } zLevel = Math.Max(zLevel, this.WaterLevelPolder); // Add point if it lies left of intersection of polderlevel with dike + // Note Bka: this can only happen when intersectionPolderLevelWithDike = nul as dikeToeAtPolderPoint can NEVER be + // left of intersectionPolderLevelWithDike (only when dike is totally wrong!) if ((intersectionPolderLevelWithDike == null) || (intersectionPolderLevelWithDike.X > dikeToeAtPolderPoint.X)) { phreaticLine.Points.Add(new PlLinePoint(dikeToeAtPolderPoint.X, zLevel)); @@ -1704,11 +1708,26 @@ // Discussion about this was done between Vastenburg, Knoeff and The. // After a renewed discussion with Vastenburg, Van der Zwan and Bka, it has been decided that the PL1 should follow the // surfaceline (with offset) until either end of surface line or polder level. Note: this is only needed when the phreatic level - // at dike toe is above polder level. ##Bka - if (phreaticLine.Points[phreaticLine.Points.Count - 1].Z > WaterLevelPolder) + // at dike toe is above polder level. + if (PlLineOffsetBelowDikeToeAtPolder > 0) { - AddPhreaticLineAlongSurfaceLevel(phreaticLine); + if (phreaticLine.Points[phreaticLine.Points.Count - 1].Z > WaterLevelPolder) + { + AddPhreaticLineAlongSurfaceLevel(phreaticLine); + } } + else + { + if (phreaticLine.Points.Last().X < dikeToeAtPolderPoint.X) + { + var newPoint = new PlLinePoint(dikeToeAtPolderPoint.X, waterLevelPolder); + phreaticLine.Points.Add(newPoint); + } + else + { + phreaticLine.Points.Last().Z = waterLevelPolder; + } + } } //Validate if endpoint surface has reached Fisheye: Tag 2918 refers to a dead (removed) revision in file `DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/TestFiles/ValidateOk.xml'. Fisheye: No comparison available. Pass `N' to diff? Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/ConversionHelperTests.cs =================================================================== diff -u -r2907 -r2918 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/ConversionHelperTests.cs (.../ConversionHelperTests.cs) (revision 2907) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/ConversionHelperTests.cs (.../ConversionHelperTests.cs) (revision 2918) @@ -253,7 +253,7 @@ [TestCase(MacroStability.Standard.LogMessageType.Info, LogMessageType.Info)] [TestCase(MacroStability.Standard.LogMessageType.Warning, LogMessageType.Warning)] [TestCase(MacroStability.Standard.LogMessageType.Error, LogMessageType.Error)] - public void TestConvertKernelLogMessageTypeToLogMessageType(MacroStability.Standard.LogMessageType kernelLogMessageType, + public void TestConvertKernelLogMessageTypeToLogMessageType(MacroStability.CSharpWrapper.Output.MessageType kernelLogMessageType, LogMessageType logMessageType) { Assert.AreEqual(logMessageType, Fisheye: Tag 2918 refers to a dead (removed) revision in file `DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/TestFiles/Benchmark 2-04a.wti'. Fisheye: No comparison available. Pass `N' to diff? Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/FillMacroStabilityWrapperInputFromEngine.cs =================================================================== diff -u -r2904 -r2918 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/FillMacroStabilityWrapperInputFromEngine.cs (.../FillMacroStabilityWrapperInputFromEngine.cs) (revision 2904) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/FillMacroStabilityWrapperInputFromEngine.cs (.../FillMacroStabilityWrapperInputFromEngine.cs) (revision 2918) @@ -21,10 +21,10 @@ using System.Collections.Generic; using System.Linq; +using Deltares.DamEngine.Calculators.KernelWrappers.Common; using Deltares.DamEngine.Data.General; using Deltares.DamEngine.Data.Geotechnics; using Waternet = Deltares.DamEngine.Data.Geometry.Waternet; -using Deltares.MacroStability.CSharpWrapper; using Deltares.MacroStability.CSharpWrapper.Input; @@ -35,49 +35,36 @@ /// public class FillMacroStabilityWrapperInputFromEngine { - /// Gets or sets the SoilList DamEngine object - /// The soil list. - public SoilList SoilList { get; set; } - /// Gets or sets the location DamEngine object. - /// The location. - public Location Location { get; set; } - /// Gets or sets the SoilProfile2D DamEngine object. - /// The soil profile2 d. - public SoilProfile2D SoilProfile2D { get; set; } - /// Gets or sets the SurfaceLine2 DamEngine object. - /// The surface line2. - public SurfaceLine2 SurfaceLine2 { get; set; } - /// Gets or sets the waternet. - /// The waternet. - public Waternet Waternet { get; set; } /// Gets or sets the UpliftVan calculation grid. /// The uplift van calculation grid. public UpliftVanCalculationGrid UpliftVanCalculationGrid { get; set; } /// Gets or sets the traffic load. /// The traffic load. public TrafficLoad TrafficLoad { get; set; } - /// Gets or sets the MStab failure mechanism parameters. - /// The MStab failure mechanism parameters. - public FailureMechanismParametersMStab FailureMechanismParametersMStab { get; set; } - - public Deltares.MacroStability.CSharpWrapper.Input.MacroStabilityInput CreateMacroStabilityInput() + + + public MacroStabilityInput CreateMacroStabilityInput(DamKernelInput damKernelInput, FailureMechanismParametersMStab failureMechanismParametersMStab, Data.Geometry.Waternet waternet) { var macroStabilityInput = new Deltares.MacroStability.CSharpWrapper.Input.MacroStabilityInput(); macroStabilityInput.StabilityModel = new StabilityInput(); // ToDo check whether this is needed. macroStabilityInput.PreprocessingInput = new PreprocessingInput(); // ToDo check whether this is needed. - FailureMechanismParametersMStab.MStabParameters.Model = MStabModelType.UpliftVanWti; - TransferStabilityModelProperties(FailureMechanismParametersMStab, macroStabilityInput.StabilityModel); - TransferSoils(SoilList, SoilProfile2D, macroStabilityInput.StabilityModel.Soils); + failureMechanismParametersMStab.MStabParameters.Model = MStabModelType.UpliftVanWti; + TransferStabilityModelProperties(failureMechanismParametersMStab, macroStabilityInput.StabilityModel); + TransferSoils(damKernelInput.Location.SoilList, damKernelInput.SubSoilScenario.SoilProfile2D, macroStabilityInput.StabilityModel.Soils); + macroStabilityInput.StabilityModel.ConstructionStages.Add(new ConstructionStage()); // ToDo check whether this is needed. var lastStage = macroStabilityInput.StabilityModel.ConstructionStages.Last(); lastStage.SoilProfile = new MacroStability.CSharpWrapper.Input.SoilProfile(); // ToDo check whether this is needed. - TransferSoilProfile(SoilProfile2D, lastStage.SoilProfile); + TransferSoilProfile(damKernelInput.SubSoilScenario.SoilProfile2D, lastStage.SoilProfile); + macroStabilityInput.PreprocessingInput.PreConstructionStages.Add(new PreConstructionStage()); // ToDo check whether this is needed. var preConstructionLastStage = macroStabilityInput.PreprocessingInput.PreConstructionStages.Last(); preConstructionLastStage.Surfaceline = new SurfaceLine(); - TransferSurfaceLine(SurfaceLine2, preConstructionLastStage.Surfaceline); - TransferWaternet(Waternet, lastStage.Waternet); + TransferSurfaceLine(damKernelInput.Location.SurfaceLine, preConstructionLastStage.Surfaceline); + TransferWaternet(waternet, lastStage.Waternet); + TransferUpliftVanCalculationGrid(UpliftVanCalculationGrid, macroStabilityInput.StabilityModel.UpliftVanCalculationGrid, macroStabilityInput.PreprocessingInput.SearchAreaConditions); + lastStage.UniformLoads = new List(); // ToDo check whether this is needed. TransferUniformLoads(TrafficLoad, lastStage.UniformLoads); return macroStabilityInput; } @@ -311,7 +298,6 @@ private void TransferUniformLoads(TrafficLoad damTrafficLoad, IList kernelUniformLoads) { - kernelUniformLoads.Clear(); if (damTrafficLoad != null) { kernelUniformLoads.Add(new UniformLoad() Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/Deltares.DamEngine.Calculators.Tests.csproj =================================================================== diff -u -r2917 -r2918 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/Deltares.DamEngine.Calculators.Tests.csproj (.../Deltares.DamEngine.Calculators.Tests.csproj) (revision 2917) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/Deltares.DamEngine.Calculators.Tests.csproj (.../Deltares.DamEngine.Calculators.Tests.csproj) (revision 2918) @@ -154,15 +154,6 @@ PreserveNewest - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - @@ -199,15 +190,6 @@ PreserveNewest - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - PreserveNewest @@ -233,7 +215,9 @@ PreserveNewest - + + +