Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/InterfaceConversionHelperTests.cs
===================================================================
diff -u -r6350 -r6353
--- DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/InterfaceConversionHelperTests.cs (.../InterfaceConversionHelperTests.cs) (revision 6350)
+++ DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/InterfaceConversionHelperTests.cs (.../InterfaceConversionHelperTests.cs) (revision 6353)
@@ -20,9 +20,11 @@
// All rights reserved.
using Deltares.DamEngine.Calculators.KernelWrappers.MacroStabilityCommon.MacroStabilityIo;
+using Deltares.DamEngine.Data.Geotechnics;
using Deltares.MacroStability.Io.XmlInput;
using KellermanSoftware.CompareNetObjects;
using NUnit.Framework;
+using CharacteristicPointType = Deltares.MacroStability.Io.XmlInput.CharacteristicPointType;
namespace Deltares.DamEngine.Calculators.Tests.KernelWrappers.MacroStabilityCommon;
@@ -126,4 +128,66 @@
ComparisonResult result = compare.Compare(macroStabilitySoil, actualMacroStabilitySoil);
Assert.That(result.Differences, Is.Empty, "Differences found converting/reconverting Soil but this ok now if diff = 3");
}
+
+ [TestCase(WaterpressureInterpolationModel.Automatic, WaterPressureInterpolationModelType.Automatic)]
+ [TestCase(WaterpressureInterpolationModel.Hydrostatic, WaterPressureInterpolationModelType.Hydrostatic)]
+ public static void CanConvertToMacroStabilityWaterPressureInterpolationModel(
+ WaterpressureInterpolationModel damWaterPressureInterpolationModel, WaterPressureInterpolationModelType waterPressureInterpolationModel)
+ {
+ Assert.That(InterfaceConversionHelper.ConvertToMacroStabilityWaterPressureInterpolationModel(damWaterPressureInterpolationModel), Is.EqualTo(waterPressureInterpolationModel));
+ }
+
+ [TestCase(WaterPressureInterpolationModelType.Automatic, WaterpressureInterpolationModel.Automatic)]
+ [TestCase(WaterPressureInterpolationModelType.Hydrostatic, WaterpressureInterpolationModel.Hydrostatic)]
+ public static void CanConvertToDamWaterPressureInterpolationModel(
+ WaterPressureInterpolationModelType waterPressureInterpolationModel, WaterpressureInterpolationModel damWaterPressureInterpolationModel)
+ {
+ Assert.That(InterfaceConversionHelper.ConvertToDamWaterPressureInterpolationModel(waterPressureInterpolationModel), Is.EqualTo(damWaterPressureInterpolationModel));
+ }
+
+ [TestCase(Data.Geotechnics.CharacteristicPointType.BottomDitchPolderSide, CharacteristicPointType.BottomDitchPolderSide)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.BottomDitchDikeSide, CharacteristicPointType.BottomDitchDikeSide)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.DikeToeAtPolder, CharacteristicPointType.DikeToeAtPolder)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.DikeToeAtRiver, CharacteristicPointType.DikeToeAtRiver)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.DikeTopAtPolder, CharacteristicPointType.DikeTopAtPolder)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.DikeTopAtRiver, CharacteristicPointType.DikeTopAtRiver)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.DitchDikeSide, CharacteristicPointType.DitchDikeSide)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.DitchPolderSide, CharacteristicPointType.DitchPolderSide)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.None, CharacteristicPointType.None)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.ShoulderBaseInside, CharacteristicPointType.ShoulderBaseInside)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.ShoulderBaseOutside, CharacteristicPointType.ShoulderBaseOutside)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.ShoulderTopInside, CharacteristicPointType.ShoulderTopInside)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.ShoulderTopOutside, CharacteristicPointType.ShoulderTopOutside)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.SurfaceLevelInside, CharacteristicPointType.SurfaceLevelInside)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.SurfaceLevelOutside, CharacteristicPointType.SurfaceLevelOutside)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.TrafficLoadInside, CharacteristicPointType.TrafficLoadInside)]
+ [TestCase(Data.Geotechnics.CharacteristicPointType.TrafficLoadOutside, CharacteristicPointType.TrafficLoadOutside)]
+ public static void CanConvertToMacroStabilityCharacteristicPointType(
+ Data.Geotechnics.CharacteristicPointType damCharacteristicPointType, CharacteristicPointType kernelCharacteristicPointType)
+ {
+ Assert.That(InterfaceConversionHelper.ConvertToMacroStabilityCharacteristicPointType(damCharacteristicPointType), Is.EqualTo(kernelCharacteristicPointType));
+ }
+
+ [TestCase(CharacteristicPointType.BottomDitchDikeSide, Data.Geotechnics.CharacteristicPointType.BottomDitchDikeSide)]
+ [TestCase(CharacteristicPointType.BottomDitchPolderSide, Data.Geotechnics.CharacteristicPointType.BottomDitchPolderSide)]
+ [TestCase(CharacteristicPointType.DikeToeAtPolder, Data.Geotechnics.CharacteristicPointType.DikeToeAtPolder)]
+ [TestCase(CharacteristicPointType.DikeToeAtRiver, Data.Geotechnics.CharacteristicPointType.DikeToeAtRiver)]
+ [TestCase(CharacteristicPointType.DikeTopAtPolder, Data.Geotechnics.CharacteristicPointType.DikeTopAtPolder)]
+ [TestCase(CharacteristicPointType.DikeTopAtRiver, Data.Geotechnics.CharacteristicPointType.DikeTopAtRiver)]
+ [TestCase(CharacteristicPointType.DitchDikeSide, Data.Geotechnics.CharacteristicPointType.DitchDikeSide)]
+ [TestCase(CharacteristicPointType.DitchPolderSide, Data.Geotechnics.CharacteristicPointType.DitchPolderSide)]
+ [TestCase(CharacteristicPointType.None, Data.Geotechnics.CharacteristicPointType.None)]
+ [TestCase(CharacteristicPointType.ShoulderBaseInside, Data.Geotechnics.CharacteristicPointType.ShoulderBaseInside)]
+ [TestCase(CharacteristicPointType.ShoulderBaseOutside, Data.Geotechnics.CharacteristicPointType.ShoulderBaseOutside)]
+ [TestCase(CharacteristicPointType.ShoulderTopInside, Data.Geotechnics.CharacteristicPointType.ShoulderTopInside)]
+ [TestCase(CharacteristicPointType.ShoulderTopOutside, Data.Geotechnics.CharacteristicPointType.ShoulderTopOutside)]
+ [TestCase(CharacteristicPointType.SurfaceLevelInside, Data.Geotechnics.CharacteristicPointType.SurfaceLevelInside)]
+ [TestCase(CharacteristicPointType.SurfaceLevelOutside, Data.Geotechnics.CharacteristicPointType.SurfaceLevelOutside)]
+ [TestCase(CharacteristicPointType.TrafficLoadInside, Data.Geotechnics.CharacteristicPointType.TrafficLoadInside)]
+ [TestCase(CharacteristicPointType.TrafficLoadOutside, Data.Geotechnics.CharacteristicPointType.TrafficLoadOutside)]
+ public static void CanConvertToDamCharacteristicPointType(
+ CharacteristicPointType kernelCharacteristicPointType, Data.Geotechnics.CharacteristicPointType damCharacteristicPointType)
+ {
+ Assert.That(InterfaceConversionHelper.ConvertToDamCharacteristicPointType(kernelCharacteristicPointType), Is.EqualTo(damCharacteristicPointType));
+ }
}
\ No newline at end of file
Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/InterfaceConversionHelper.cs
===================================================================
diff -u -r6350 -r6353
--- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/InterfaceConversionHelper.cs (.../InterfaceConversionHelper.cs) (revision 6350)
+++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/InterfaceConversionHelper.cs (.../InterfaceConversionHelper.cs) (revision 6353)
@@ -174,6 +174,68 @@
return translationTable[damCharacteristicPointType];
}
+ /// Converts the type of macro stability characteristic point to dam type.
+ /// Type of the dam characteristic point.
+ ///
+ public static Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType ConvertToDamCharacteristicPointType(CharacteristicPointType kernelCharacteristicPointType)
+ {
+ var translationTable = new Dictionary
+ {
+ {
+ CharacteristicPointType.BottomDitchPolderSide, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.BottomDitchPolderSide
+ },
+ {
+ CharacteristicPointType.BottomDitchDikeSide, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.BottomDitchDikeSide
+ },
+ {
+ CharacteristicPointType.DikeToeAtPolder, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.DikeToeAtPolder
+ },
+ {
+ CharacteristicPointType.DikeToeAtRiver, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.DikeToeAtRiver
+ },
+ {
+ CharacteristicPointType.DikeTopAtPolder, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.DikeTopAtPolder
+ },
+ {
+ CharacteristicPointType.DikeTopAtRiver, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.DikeTopAtRiver
+ },
+ {
+ CharacteristicPointType.DitchDikeSide, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.DitchDikeSide
+ },
+ {
+ CharacteristicPointType.DitchPolderSide, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.DitchPolderSide
+ },
+ {
+ CharacteristicPointType.None, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.None
+ },
+ {
+ CharacteristicPointType.ShoulderBaseInside, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.ShoulderBaseInside
+ },
+ {
+ CharacteristicPointType.ShoulderBaseOutside, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.ShoulderBaseOutside
+ },
+ {
+ CharacteristicPointType.ShoulderTopInside, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.ShoulderTopInside
+ },
+ {
+ CharacteristicPointType.ShoulderTopOutside, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.ShoulderTopOutside
+ },
+ {
+ CharacteristicPointType.SurfaceLevelInside, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.SurfaceLevelInside
+ },
+ {
+ CharacteristicPointType.SurfaceLevelOutside, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.SurfaceLevelOutside
+ },
+ {
+ CharacteristicPointType.TrafficLoadInside, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.TrafficLoadInside
+ },
+ {
+ CharacteristicPointType.TrafficLoadOutside, Deltares.DamEngine.Data.Geotechnics.CharacteristicPointType.TrafficLoadOutside
+ }
+ };
+ return translationTable[kernelCharacteristicPointType];
+ }
+
/// Converts to MacroStability soil.
/// The Dam soil.
/// The MacroStability Soil.
@@ -286,7 +348,7 @@
/// The dam ShearStrengthModel.
///
///
- public static ShearStrengthModelType ConvertToMacroStabilityShearStrengthModel(ShearStrengthModel damShearStrengthModel)
+ private static ShearStrengthModelType ConvertToMacroStabilityShearStrengthModel(ShearStrengthModel damShearStrengthModel)
{
var translationTable = new Dictionary
{
@@ -309,7 +371,7 @@
/// Converts to dam ShearStrengthModel.
/// The kernel ShearStrengthModel.
///
- public static ShearStrengthModel ConvertToDamShearStrengthModel(ShearStrengthModelType kernelShearStrengthModel)
+ private static ShearStrengthModel ConvertToDamShearStrengthModel(ShearStrengthModelType kernelShearStrengthModel)
{
var translationTable = new Dictionary
{
@@ -345,4 +407,21 @@
};
return translationTable[waterPressureInterpolationModel];
}
+
+ /// Converts to dam waterpressure interpolation model.
+ /// The waterpressure interpolation model.
+ ///
+ public static WaterpressureInterpolationModel ConvertToDamWaterPressureInterpolationModel(WaterPressureInterpolationModelType waterpressureInterpolationModel)
+ {
+ var translationTable = new Dictionary
+ {
+ {
+ WaterPressureInterpolationModelType.Automatic, WaterpressureInterpolationModel.Automatic
+ },
+ {
+ WaterPressureInterpolationModelType.Hydrostatic, WaterpressureInterpolationModel.Hydrostatic
+ }
+ };
+ return translationTable[waterpressureInterpolationModel];
+ }
}
\ No newline at end of file