Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/Interfaces/IKernelWrapper.cs =================================================================== diff -u -r1211 -r1217 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/Interfaces/IKernelWrapper.cs (.../IKernelWrapper.cs) (revision 1211) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/Interfaces/IKernelWrapper.cs (.../IKernelWrapper.cs) (revision 1217) @@ -165,7 +165,8 @@ /// /// Gets the design strategy /// + /// /// - DesignStrategy GetDesignStrategy(); + DesignStrategy GetDesignStrategy(DamKernelInput damKernelInput); } } Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingSellmeijer4Forces/DamPipingSellmeijer4ForcesKernelWrapper.cs =================================================================== diff -u -r1212 -r1217 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingSellmeijer4Forces/DamPipingSellmeijer4ForcesKernelWrapper.cs (.../DamPipingSellmeijer4ForcesKernelWrapper.cs) (revision 1212) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingSellmeijer4Forces/DamPipingSellmeijer4ForcesKernelWrapper.cs (.../DamPipingSellmeijer4ForcesKernelWrapper.cs) (revision 1217) @@ -379,8 +379,9 @@ /// /// Gets the design strategy /// + /// /// - public DesignStrategy GetDesignStrategy() + public DesignStrategy GetDesignStrategy(DamKernelInput damKernelInput) { return DesignStrategy.ShoulderPerPoint; } Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/DikesDesign/DesignCalculator.cs =================================================================== diff -u -r1203 -r1217 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/DikesDesign/DesignCalculator.cs (.../DesignCalculator.cs) (revision 1203) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/DikesDesign/DesignCalculator.cs (.../DesignCalculator.cs) (revision 1217) @@ -144,7 +144,7 @@ DesignScenario designScenario, List calculationMessages, List designCalculations) { - switch (kernelWrapper.GetDesignStrategy()) + switch (kernelWrapper.GetDesignStrategy(damKernelInput)) { case DesignStrategy.ShoulderPerPoint: DesignCalculatorShoulderPerPoint.PerformDesignCalculationShoulderPerPoint( Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityHorizontalBalance/DamMacroStabilityHorizontalBalanceKernelWrapper.cs =================================================================== diff -u -r1212 -r1217 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityHorizontalBalance/DamMacroStabilityHorizontalBalanceKernelWrapper.cs (.../DamMacroStabilityHorizontalBalanceKernelWrapper.cs) (revision 1212) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityHorizontalBalance/DamMacroStabilityHorizontalBalanceKernelWrapper.cs (.../DamMacroStabilityHorizontalBalanceKernelWrapper.cs) (revision 1217) @@ -237,8 +237,9 @@ /// /// Gets the design strategy /// + /// /// - public DesignStrategy GetDesignStrategy() + public DesignStrategy GetDesignStrategy(DamKernelInput damKernelInput) { return DesignStrategy.NoDesignPossible; } Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityInwards/DamMacroStabilityInwardsKernelWrapper.cs =================================================================== diff -u -r1216 -r1217 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityInwards/DamMacroStabilityInwardsKernelWrapper.cs (.../DamMacroStabilityInwardsKernelWrapper.cs) (revision 1216) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityInwards/DamMacroStabilityInwardsKernelWrapper.cs (.../DamMacroStabilityInwardsKernelWrapper.cs) (revision 1217) @@ -329,7 +329,7 @@ damKernelInput.RiverLevelLow, subSoilScenario, null, requiredSafetyFactor.Value, - kernelDataInput.FailureMechanismParametersMStab, + kernelDataInput.FailureMechanismParametersMStab, damKernelInput.DamFailureMechanismeCalculationSpecification.AssessmentScenarioJobSettings, out errorMessages); mstabXml.Save(stabilityProjectFilename + ".xml"); @@ -503,10 +503,19 @@ /// /// Gets the design strategy /// + /// /// - public DesignStrategy GetDesignStrategy() + public DesignStrategy GetDesignStrategy(DamKernelInput damKernelInput) { - return DesignStrategy.SlopeAdaptionBeforeShoulderAdaption; + switch (damKernelInput.Location.StabilityDesignMethod) + { + case StabilityDesignMethod.OptimizedSlopeAndShoulderAdaption: + return DesignStrategy.OptimizedSlopeAndShoulderAdaption; + case StabilityDesignMethod.SlopeAdaptionBeforeShoulderAdaption: + return DesignStrategy.SlopeAdaptionBeforeShoulderAdaption; + default: + return DesignStrategy.NoDesignPossible; + } } /// @@ -518,7 +527,7 @@ /// Index of the iteration. /// The embankment design parameters. /// Initial geometry file (sti) is not created. - public void PrepareDesign(IKernelDataInput kernelDataInput, IKernelDataOutput kernelDataOutput, DamKernelInput damKernelInput, + public void PrepareDesign(IKernelDataInput kernelDataInput, IKernelDataOutput kernelDataOutput, DamKernelInput damKernelInput, int iterationIndex, out EmbankmentDesignParameters embankmentDesignParameters) { DamMacroStabilityInput damMacroStabilityInput = kernelDataInput as DamMacroStabilityInput; @@ -544,7 +553,7 @@ 0.0, subSoilScenario, null, location.ModelFactors.RequiredSafetyFactorStabilityInnerSlope.Value, - damMacroStabilityInput.FailureMechanismParametersMStab, + damMacroStabilityInput.FailureMechanismParametersMStab, damKernelInput.DamFailureMechanismeCalculationSpecification.AssessmentScenarioJobSettings, out errorMessages); @@ -555,7 +564,7 @@ embankmentDesignParameters = new EmbankmentDesignParameters() { EmbankmentMaterialname = location.DikeEmbankmentMaterial, - PreviousGeometry2DFilename = initialgeometryFile + PreviousGeometry2DFilename = initialgeometryFile }; if (!File.Exists(initialgeometryFile)) Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingSellmeijerVnk/DamPipingSellmeijerVnkKernelWrapper.cs =================================================================== diff -u -r1212 -r1217 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingSellmeijerVnk/DamPipingSellmeijerVnkKernelWrapper.cs (.../DamPipingSellmeijerVnkKernelWrapper.cs) (revision 1212) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingSellmeijerVnk/DamPipingSellmeijerVnkKernelWrapper.cs (.../DamPipingSellmeijerVnkKernelWrapper.cs) (revision 1217) @@ -292,9 +292,10 @@ /// /// Gets the design strategy /// + /// /// /// - public DesignStrategy GetDesignStrategy() + public DesignStrategy GetDesignStrategy(DamKernelInput damKernelInput) { return DesignStrategy.ShoulderPerPoint; } Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/DikesDesign/DesignCalculatorCombinedSlopeAndShoulderAdaption.cs =================================================================== diff -u -r1203 -r1217 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/DikesDesign/DesignCalculatorCombinedSlopeAndShoulderAdaption.cs (.../DesignCalculatorCombinedSlopeAndShoulderAdaption.cs) (revision 1203) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/DikesDesign/DesignCalculatorCombinedSlopeAndShoulderAdaption.cs (.../DesignCalculatorCombinedSlopeAndShoulderAdaption.cs) (revision 1217) @@ -30,7 +30,7 @@ /// /// Design strategy: combined slope adaption and shoulder adaption /// - class DesignCalculatorCombinedSlopeAndShoulderAdaption + public class DesignCalculatorCombinedSlopeAndShoulderAdaption { } } Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityOutwards/DamMacroStabilityOutwardsKernelWrapper.cs =================================================================== diff -u -r1212 -r1217 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityOutwards/DamMacroStabilityOutwardsKernelWrapper.cs (.../DamMacroStabilityOutwardsKernelWrapper.cs) (revision 1212) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityOutwards/DamMacroStabilityOutwardsKernelWrapper.cs (.../DamMacroStabilityOutwardsKernelWrapper.cs) (revision 1217) @@ -350,8 +350,9 @@ /// /// Gets the design strategy /// + /// /// - public DesignStrategy GetDesignStrategy() + public DesignStrategy GetDesignStrategy(DamKernelInput damKernelInput) { return DesignStrategy.NoDesignPossible; } Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingBligh/DamPipingBlighKernelWrapper.cs =================================================================== diff -u -r1215 -r1217 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingBligh/DamPipingBlighKernelWrapper.cs (.../DamPipingBlighKernelWrapper.cs) (revision 1215) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingBligh/DamPipingBlighKernelWrapper.cs (.../DamPipingBlighKernelWrapper.cs) (revision 1217) @@ -362,8 +362,9 @@ /// /// Gets the design strategy /// + /// /// - public DesignStrategy GetDesignStrategy() + public DesignStrategy GetDesignStrategy(DamKernelInput damKernelInput) { return DesignStrategy.ShoulderPerPoint; }