Index: dam engine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/DamMacroStability/MStabXmlDocTests.cs =================================================================== diff -u -r788 -r796 --- dam engine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/DamMacroStability/MStabXmlDocTests.cs (.../MStabXmlDocTests.cs) (revision 788) +++ dam engine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/DamMacroStability/MStabXmlDocTests.cs (.../MStabXmlDocTests.cs) (revision 796) @@ -62,13 +62,11 @@ subSoilScenario.SoilProfileType = SoilProfileType.ProfileTypeStiFile; subSoilScenario.SegmentFailureMechanismType = FailureMechanismSystemType.StabilityInside; - var failureMechanismeParamatersMStab = new FailureMechanismeParamatersMStab - { - MStabParameters = - { - GridPosition = MStabGridPosition.Right - } - }; + var failureMechanismeParamatersMStab = new FailureMechanismeParamatersMStab(); + failureMechanismeParamatersMStab.MStabParameters.GridPosition = MStabGridPosition.Right; + failureMechanismeParamatersMStab.MStabParameters.SearchMethod = MStabSearchMethod.GeneticAlgorithm; + failureMechanismeParamatersMStab.MStabParameters.CalculationOptions.MinimalCircleDepth = 1.0; + // ToDo mStabDesignEmbankment for now set to null XDocument mstabXml = MStabXmlDoc.CreateMStabXmlDoc(stabilityProjectFilename, scenario, subSoilScenario, scenario.RiverLevel, null, surfaceLine, trafficLoad, requiredSafetyFactor, failureMechanismeParamatersMStab, Index: dam engine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStability/Assemblers/DamMStabAssembler.cs =================================================================== diff -u -r715 -r796 --- dam engine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStability/Assemblers/DamMStabAssembler.cs (.../DamMStabAssembler.cs) (revision 715) +++ dam engine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStability/Assemblers/DamMStabAssembler.cs (.../DamMStabAssembler.cs) (revision 796) @@ -120,7 +120,7 @@ /// public const string XmlElementGeometryCreationOptions = "GeometryCreationOptions"; - public const string XmlAttributeSoilGeometryType = "SoilProfileType"; + public const string XmlAttributeSoilGeometryType = "SoilGeometryType"; public const string XmlAttributeSoilGeometry2DFilename = "SoilGeometry2DFilename"; public const string XmlAttributeXOffsetSoilGeometry2DOrigin = "XOffsetSoilGeometry2DOrigin"; public const string XmlAttributeMaterialForDike = "MaterialForDike"; @@ -544,6 +544,20 @@ ); } + private static string ConvertSoilProfileTypeToClassicType(SoilProfileType soilProfileType) + { + switch (soilProfileType) + { + case SoilProfileType.ProfileType1D: + return "SoilGeometry1D"; + case SoilProfileType.ProfileType2D: + return "SoilGeometry2D"; + case SoilProfileType.ProfileTypeStiFile: + return "SoilGeometry2D"; + } + return ""; + } + /// /// Assembles the GeometryCreationOptions element /// @@ -560,27 +574,27 @@ string materialForShoulder = failureMechanismeParamatersMStab.MStabParameters.GeometryCreationOptions.MaterialForShoulder; materialForShoulder = (materialForShoulder == null ? "" : materialForShoulder); return new XElement(tnsb + XmlElementGeometryCreationOptions, - new XAttribute(XmlAttributeSoilGeometryType, failureMechanismeParamatersMStab. - MStabParameters.GeometryCreationOptions.SoilProfileType), - new XAttribute(XmlAttributeSoilGeometry2DFilename, soilGeometryName), - new XAttribute(XmlAttributeXOffsetSoilGeometry2DOrigin, failureMechanismeParamatersMStab. - MStabParameters.GeometryCreationOptions.XOffsetSoilGeometry2DOrigin), - new XAttribute(XmlAttributeMaterialForDike, materialForDike), - new XAttribute(XmlAttributeMaterialForShoulder, materialForShoulder), - new XAttribute(XmlAttributeIsUseOriginalPLLineAssignments, failureMechanismeParamatersMStab. - MStabParameters.GeometryCreationOptions.IsUseOriginalPLLineAssignments), - new XAttribute(XmlAttributeIsUseOriginalCalculationOptions, failureMechanismeParamatersMStab. - MStabParameters.GeometryCreationOptions.IsUseOriginalCalculationOptions), - new XAttribute(XmlAttributeIsDrySituation, failureMechanismeParamatersMStab. - MStabParameters.GeometryCreationOptions.IsDrySituation), - new XAttribute(XmlAttributePLLineAssignment, failureMechanismeParamatersMStab. - MStabParameters.GeometryCreationOptions.PLLineAssignment), - new XAttribute(XmlAttributeIntrusionVerticalWaterPressure, failureMechanismeParamatersMStab. - MStabParameters.GeometryCreationOptions.IntrusionVerticalWaterPressureType), - new XAttribute(XmlAttributePenetrationLength, failureMechanismeParamatersMStab. - MStabParameters.GeometryCreationOptions.PenetrationLength), - new XAttribute(XmlAttributeIsDesign, failureMechanismeParamatersMStab. - MStabParameters.GeometryCreationOptions.IsDesign)); + new XAttribute(XmlAttributeSoilGeometryType, + ConvertSoilProfileTypeToClassicType(failureMechanismeParamatersMStab.MStabParameters.GeometryCreationOptions.SoilProfileType)), + new XAttribute(XmlAttributeSoilGeometry2DFilename, soilGeometryName), + new XAttribute(XmlAttributeXOffsetSoilGeometry2DOrigin, failureMechanismeParamatersMStab. + MStabParameters.GeometryCreationOptions.XOffsetSoilGeometry2DOrigin), + new XAttribute(XmlAttributeMaterialForDike, materialForDike), + new XAttribute(XmlAttributeMaterialForShoulder, materialForShoulder), + new XAttribute(XmlAttributeIsUseOriginalPLLineAssignments, failureMechanismeParamatersMStab. + MStabParameters.GeometryCreationOptions.IsUseOriginalPLLineAssignments), + new XAttribute(XmlAttributeIsUseOriginalCalculationOptions, failureMechanismeParamatersMStab. + MStabParameters.GeometryCreationOptions.IsUseOriginalCalculationOptions), + new XAttribute(XmlAttributeIsDrySituation, failureMechanismeParamatersMStab. + MStabParameters.GeometryCreationOptions.IsDrySituation), + new XAttribute(XmlAttributePLLineAssignment, failureMechanismeParamatersMStab. + MStabParameters.GeometryCreationOptions.PLLineAssignment), + new XAttribute(XmlAttributeIntrusionVerticalWaterPressure, failureMechanismeParamatersMStab. + MStabParameters.GeometryCreationOptions.IntrusionVerticalWaterPressureType), + new XAttribute(XmlAttributePenetrationLength, failureMechanismeParamatersMStab. + MStabParameters.GeometryCreationOptions.PenetrationLength), + new XAttribute(XmlAttributeIsDesign, failureMechanismeParamatersMStab. + MStabParameters.GeometryCreationOptions.IsDesign)); } ///