Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/Interfaces/IKernelWrapper.cs =================================================================== diff -u -r1119 -r1129 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/Interfaces/IKernelWrapper.cs (.../IKernelWrapper.cs) (revision 1119) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/Interfaces/IKernelWrapper.cs (.../IKernelWrapper.cs) (revision 1129) @@ -97,5 +97,15 @@ /// The messages. /// ShoulderDesign CalculateDesignAtPoint(DamKernelInput damKernelInput, IKernelDataInput kernelDataInput, IKernelDataOutput kernelDataOutput, GeometryPoint point, out List messages); + + /// + /// Evaluates the design (current factor greater than desired factor) + /// + /// The dam kernel input. + /// The kernel data input. + /// The kernel data output. + /// The evaluation message. + /// if the design was succesful + bool EvaluateDesign(DamKernelInput damKernelInput, IKernelDataInput kernelDataInput, IKernelDataOutput kernelDataOutput, out string evaluationMessage); } } Index: DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/PipingBlighTests.cs =================================================================== diff -u -r1114 -r1129 --- DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/PipingBlighTests.cs (.../PipingBlighTests.cs) (revision 1114) +++ DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/PipingBlighTests.cs (.../PipingBlighTests.cs) (revision 1129) @@ -20,6 +20,8 @@ // All rights reserved. using System.IO; +using System.Threading; +using Deltares.DamEngine.Calculators.DikesDesign; using Deltares.DamEngine.Data.General; using Deltares.DamEngine.Data.Geotechnics; using Deltares.DamEngine.Io; @@ -153,6 +155,27 @@ } [Test] + [SetUICulture("en-US")] + [ExpectedException(typeof(DesignCalculatorException))] + public void CanPerformBlighFailingDesignWithAdaptionRechterDiezedijk1Location() + { + Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.InvariantCulture; + const string fileName = @"TestFiles\Rechter Diezedijk_BlighFailedDesignInputFile_1Location.xml"; + string inputString = File.ReadAllText(fileName); + EngineInterface engineInterface = new EngineInterface(inputString); + Assert.IsNotNull(engineInterface.DamProjectData); + try + { + string outputString = engineInterface.Run(); + } + catch(DesignCalculatorException e) + { + Assert.AreEqual("The design was not successful in location '101', soilprofile 'segment1_1D1', Factor achieved = 2.870, Factor required = 8.000.", e.Message); + throw e; + } + } + + [Test] public void CanPerformBlighDesignWithAdaptionRechterDiezedijk() { const string fileName = @"TestFiles\Rechter Diezedijk_BlighDesignInputFile.xml"; Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingSellmeijerVnk/DamPipingSellmeijerVnkKernelWrapper.cs =================================================================== diff -u -r1122 -r1129 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingSellmeijerVnk/DamPipingSellmeijerVnkKernelWrapper.cs (.../DamPipingSellmeijerVnkKernelWrapper.cs) (revision 1122) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingSellmeijerVnk/DamPipingSellmeijerVnkKernelWrapper.cs (.../DamPipingSellmeijerVnkKernelWrapper.cs) (revision 1129) @@ -261,6 +261,22 @@ throw new NotImplementedException(); } + /// + /// Evaluates the design (current factor greater than desired factor) + /// + /// The dam kernel input. + /// The kernel data input. + /// The kernel data output. + /// The evaluation message. + /// + /// if the design was succesful + /// + /// + public bool EvaluateDesign(DamKernelInput damKernelInput, IKernelDataInput kernelDataInput, IKernelDataOutput kernelDataOutput, out string evaluationMessage) + { + throw new NotImplementedException(); + } + private static PipingCalculatorSellmeijerVNK CreatePipingCalculatorSellmeijerVnk(IKernelDataInput kernelDataInput) { DamPipingSellmeijerVnkInput damPipingInput = kernelDataInput as DamPipingSellmeijerVnkInput; Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityOutwards/DamMacroStabilityOutwardsKernelWrapper.cs =================================================================== diff -u -r1040 -r1129 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityOutwards/DamMacroStabilityOutwardsKernelWrapper.cs (.../DamMacroStabilityOutwardsKernelWrapper.cs) (revision 1040) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityOutwards/DamMacroStabilityOutwardsKernelWrapper.cs (.../DamMacroStabilityOutwardsKernelWrapper.cs) (revision 1129) @@ -315,5 +315,20 @@ throw new NotImplementedException(); } + /// + /// Evaluates the design (current factor greater than desired factor) + /// + /// The dam kernel input. + /// The kernel data input. + /// The kernel data output. + /// The evaluation message. + /// + /// if the design was succesful + /// + /// + public bool EvaluateDesign(DamKernelInput damKernelInput, IKernelDataInput kernelDataInput, IKernelDataOutput kernelDataOutput, out string evaluationMessage) + { + throw new NotImplementedException(); + } } } Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/Properties/Resources.Designer.cs =================================================================== diff -u -r1101 -r1129 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 1101) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 1129) @@ -119,6 +119,15 @@ /// /// Looks up a localized string similar to No input object defined for Bligh. /// + internal static string DamPipingBlighKernelWrapper_NoDamInputObjectDefinedForBligh { + get { + return ResourceManager.GetString("DamPipingBlighKernelWrapper_NoDamInputObjectDefinedForBligh", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to No input object defined for Bligh. + /// internal static string DamPipingBlighKernelWrapper_NoInputObjectDefinedForBligh { get { return ResourceManager.GetString("DamPipingBlighKernelWrapper_NoInputObjectDefinedForBligh", resourceCulture); @@ -217,6 +226,24 @@ } /// + /// Looks up a localized string similar to The design was not successful in location '{0}', soilprofile '{1}'. + /// + internal static string DesignUnsuccessful { + get { + return ResourceManager.GetString("DesignUnsuccessful", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Factor achieved = {0:0.000}, Factor required = {1:0.000}.. + /// + internal static string FactorAchievedVsFactorRequired { + get { + return ResourceManager.GetString("FactorAchievedVsFactorRequired", resourceCulture); + } + } + + /// /// Looks up a localized string similar to River level ({0}) is below surface level at river side ({1}).. /// internal static string MStabXmlDoc_CreateMStabXmlDoc_RiverLevelHighIsBelowSurfaceLevelOutside { Index: DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/Deltares.DamEngine.Interface.Tests.csproj =================================================================== diff -u -r1111 -r1129 --- DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/Deltares.DamEngine.Interface.Tests.csproj (.../Deltares.DamEngine.Interface.Tests.csproj) (revision 1111) +++ DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/Deltares.DamEngine.Interface.Tests.csproj (.../Deltares.DamEngine.Interface.Tests.csproj) (revision 1129) @@ -53,6 +53,10 @@ + + {E943B1D5-FAFA-4AFE-9071-F8B22CF612EA} + Deltares.DamEngine.Calculators + {b7a49c1a-1c91-4d72-aba9-9fbac2509d8e} Deltares.DamEngine.Data @@ -148,6 +152,9 @@ PreserveNewest + + PreserveNewest + PreserveNewest Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/Properties/Resources.resx =================================================================== diff -u -r1101 -r1129 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/Properties/Resources.resx (.../Resources.resx) (revision 1101) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/Properties/Resources.resx (.../Resources.resx) (revision 1129) @@ -240,4 +240,13 @@ The new shoulder width is too large to fit in the current surface line. + + No input object defined for Bligh + + + The design was not successful in location '{0}', soilprofile '{1}' + + + Factor achieved = {0:0.000}, Factor required = {1:0.000}. + \ No newline at end of file Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/Properties/Resources.nl-NL.resx =================================================================== diff -u -r1053 -r1129 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/Properties/Resources.nl-NL.resx (.../Resources.nl-NL.resx) (revision 1053) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/Properties/Resources.nl-NL.resx (.../Resources.nl-NL.resx) (revision 1129) @@ -135,6 +135,9 @@ De vereiste veiligheidsfactor ontbreekt + + Geen Dam invoer object gedefinieerd voor Bligh + Geen invoer object gedefinieerd voor Bligh @@ -168,6 +171,12 @@ Validatie faalt voor locatie '{0}', ondergrond scenario '{1}', ontwerp scenario '{2}' + + Het ontwerpen is niet gelukt in locatie '{0}', ondergrondprofiel '{1}' + + + Factor bereikt = {1:0.000}, Factor benodigd = {1:0.000}. + De buitenwaartse waterstand ({0}) ligt onder het buitenwaartse maaiveld ({1}). Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityHorizontalBalance/DamMacroStabilityHorizontalBalanceKernelWrapper.cs =================================================================== diff -u -r1128 -r1129 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityHorizontalBalance/DamMacroStabilityHorizontalBalanceKernelWrapper.cs (.../DamMacroStabilityHorizontalBalanceKernelWrapper.cs) (revision 1128) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityHorizontalBalance/DamMacroStabilityHorizontalBalanceKernelWrapper.cs (.../DamMacroStabilityHorizontalBalanceKernelWrapper.cs) (revision 1129) @@ -210,6 +210,22 @@ } /// + /// Evaluates the design (current factor greater than desired factor) + /// + /// The dam kernel input. + /// The kernel data input. + /// The kernel data output. + /// The evaluation message. + /// + /// if the design was succesful + /// + /// + public bool EvaluateDesign(DamKernelInput damKernelInput, IKernelDataInput kernelDataInput, IKernelDataOutput kernelDataOutput, out string evaluationMessage) + { + throw new NotImplementedException(); + } + + /// /// Creates the mstab dam XML document. /// /// The dam kernel input. Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityInwards/DamMacroStabilityInwardsKernelWrapper.cs =================================================================== diff -u -r1102 -r1129 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityInwards/DamMacroStabilityInwardsKernelWrapper.cs (.../DamMacroStabilityInwardsKernelWrapper.cs) (revision 1102) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityInwards/DamMacroStabilityInwardsKernelWrapper.cs (.../DamMacroStabilityInwardsKernelWrapper.cs) (revision 1129) @@ -416,6 +416,22 @@ throw new NotImplementedException(); } + /// + /// Evaluates the design (current factor greater than desired factor) + /// + /// The dam kernel input. + /// The kernel data input. + /// The kernel data output. + /// The evaluation message. + /// + /// if the design was succesful + /// + /// + public bool EvaluateDesign(DamKernelInput damKernelInput, IKernelDataInput kernelDataInput, IKernelDataOutput kernelDataOutput, out string evaluationMessage) + { + throw new NotImplementedException(); + } + private DesignResult NewDesignResult(DamKernelInput damKernelInput) { string soilProfile2DName = damKernelInput.SubSoilScenario.ToString(); Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingBligh/DamPipingBlighKernelWrapper.cs =================================================================== diff -u -r1122 -r1129 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingBligh/DamPipingBlighKernelWrapper.cs (.../DamPipingBlighKernelWrapper.cs) (revision 1122) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingBligh/DamPipingBlighKernelWrapper.cs (.../DamPipingBlighKernelWrapper.cs) (revision 1129) @@ -26,7 +26,6 @@ using Deltares.DamEngine.Calculators.KernelWrappers.Interfaces; using Deltares.DamEngine.Calculators.Properties; using Deltares.DamEngine.Calculators.Uplift; -using Deltares.DamEngine.Data.Standard; using Deltares.DamEngine.Data.General; using Deltares.DamEngine.Data.General.PlLines; using Deltares.DamEngine.Data.General.Results; @@ -70,7 +69,6 @@ var damPipingBlighInput = new DamPipingBlighInput(); var soilProfile1D = damKernelInput.SubSoilScenario.SoilProfile1D; - var surfaceLine = damKernelInput.Location.SurfaceLine; var location = damKernelInput.Location; double waterLevel = damKernelInput.RiverLevelHigh; UpliftSituation upliftSituation; @@ -180,14 +178,8 @@ { DamPipingBlighInput damPipingBlighInput = kernelDataInput as DamPipingBlighInput; DamPipingBlighOutput damPipingBlighOutput = (DamPipingBlighOutput)kernelDataOutput; - if (damPipingBlighInput == null) - { - throw new NoNullAllowedException(Resources.DamPipingBlighKernelWrapper_NoInputObjectDefinedForBligh); - } - if (damPipingBlighOutput == null) - { - throw new NoNullAllowedException(Resources.DamPipingBlighKernelWrapper_NoOutputObjectDefinedForBligh); - } + ThrowWhenKernelInputNull(damPipingBlighInput); + ThrowWhenKernelOutputNull(damPipingBlighOutput); PerformSingleCalculationBligh(out messages, damPipingBlighOutput, damPipingBlighInput); } @@ -223,10 +215,7 @@ private static PipingCalculatorBligh CreatePipingCalculatorBligh(IKernelDataInput kernelDataInput) { DamPipingBlighInput damPipingBlighInput = kernelDataInput as DamPipingBlighInput; - if (damPipingBlighInput == null) - { - throw new NoNullAllowedException(Resources.DamPipingBlighKernelWrapper_NoInputObjectDefinedForBligh); - } + ThrowWhenKernelInputNull(damPipingBlighInput); var calculator = new PipingCalculatorBligh { HRiver = damPipingBlighInput.HRiver, @@ -250,7 +239,7 @@ public void PostProcess(DamKernelInput damKernelInput, IKernelDataOutput kernelDataOutput, string resultMessage, out List designResults) { DamPipingBlighOutput damPipingBlighOutput = kernelDataOutput as DamPipingBlighOutput; - ThrowWhenKernelInputNull(damKernelInput); + ThrowWhenDamKernelInputNull(damKernelInput); ThrowWhenKernelOutputNull(damPipingBlighOutput); designResults = new List(); @@ -273,28 +262,21 @@ designResults.Add(designResult); } - private static void ThrowWhenKernelOutputNull(DamPipingBlighOutput damPipingBlighOutput) - { - if (damPipingBlighOutput == null) - { - throw new NoNullAllowedException(Resources.DamPipingBlighKernelWrapper_NoOutputObjectDefinedForBligh); - } - } - - private static void ThrowWhenKernelInputNull(DamKernelInput damKernelInput) - { - if (damKernelInput == null) - { - throw new NoNullAllowedException(Resources.DamPipingBlighKernelWrapper_NoInputObjectDefinedForBligh); - } - } - + /// + /// Calculates the design at point. + /// + /// The dam kernel input. + /// The kernel data input. + /// The kernel data output. + /// The point. + /// The messages. + /// public ShoulderDesign CalculateDesignAtPoint(DamKernelInput damKernelInput, IKernelDataInput kernelDataInput, IKernelDataOutput kernelDataOutput, GeometryPoint point, out List messages) { messages = new List(); DamPipingBlighInput damPipingBlighInput = kernelDataInput as DamPipingBlighInput; DamPipingBlighOutput damPipingBlighOutput = (DamPipingBlighOutput)kernelDataOutput; - ThrowWhenKernelInputNull(damKernelInput); + ThrowWhenDamKernelInputNull(damKernelInput); ThrowWhenKernelOutputNull(damPipingBlighOutput); Location location = damKernelInput.Location; SoilProfile1D soilProfile = damKernelInput.SubSoilScenario.SoilProfile1D; @@ -337,5 +319,52 @@ } return null; } + + /// + /// Evaluates the design (current factor greater than desired factor) + /// + /// The dam kernel input. + /// The kernel data input. + /// The kernel data output. + /// The evaluation message. + /// + /// if the design was succesful + /// + /// + public bool EvaluateDesign(DamKernelInput damKernelInput, IKernelDataInput kernelDataInput, IKernelDataOutput kernelDataOutput, out string evaluationMessage) + { + DamPipingBlighInput damPipingBlighInput = kernelDataInput as DamPipingBlighInput; + DamPipingBlighOutput damPipingBlighOutput = (DamPipingBlighOutput)kernelDataOutput; + ThrowWhenKernelInputNull(damPipingBlighInput); + ThrowWhenDamKernelInputNull(damKernelInput); + ThrowWhenKernelOutputNull(damPipingBlighOutput); + double fosRequiered = damKernelInput.Location.ModelFactors.RequiredSafetyFactorPiping.Value; + double fosAchieved = damPipingBlighOutput.FoSp; + evaluationMessage = String.Format(Resources.FactorAchievedVsFactorRequired, fosAchieved, fosRequiered); + return (fosAchieved >= fosRequiered); + } + private static void ThrowWhenKernelInputNull(DamPipingBlighInput damPipingBlighInput) + { + if (damPipingBlighInput == null) + { + throw new NoNullAllowedException(Resources.DamPipingBlighKernelWrapper_NoInputObjectDefinedForBligh); + } + } + private static void ThrowWhenKernelOutputNull(DamPipingBlighOutput damPipingBlighOutput) + { + if (damPipingBlighOutput == null) + { + throw new NoNullAllowedException(Resources.DamPipingBlighKernelWrapper_NoOutputObjectDefinedForBligh); + } + } + + private static void ThrowWhenDamKernelInputNull(DamKernelInput damKernelInput) + { + if (damKernelInput == null) + { + throw new NoNullAllowedException(Resources.DamPipingBlighKernelWrapper_NoDamInputObjectDefinedForBligh); + } + } + } } Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/DikesDesign/DesignCalculator.cs =================================================================== diff -u -r1080 -r1129 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/DikesDesign/DesignCalculator.cs (.../DesignCalculator.cs) (revision 1080) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/DikesDesign/DesignCalculator.cs (.../DesignCalculator.cs) (revision 1129) @@ -96,7 +96,7 @@ switch (analysisType) { case AnalysisType.AdaptGeometry: - PerformDesignCalculation(kernelWrapper, kernelDataInput, kernelDataOutput, + PerformDesignCalculationShoulderIterativePerPoint(kernelWrapper, kernelDataInput, kernelDataOutput, damKernelInput, calculationMessages, damProjectData.DesignCalculations); break; case AnalysisType.NoAdaption: @@ -280,7 +280,18 @@ double maxHeight = Math.Abs((top - bottom) * maxFractionOfDikeHeightForShoulderHeight); return bottom + maxHeight; } - private static void PerformDesignCalculation(IKernelWrapper kernelWrapper, IKernelDataInput kernelDataInput, IKernelDataOutput kernelDataOutput, DamKernelInput damKernelInput, + /// + /// Performs the design calculation shoulder iterative per point. + /// This is a design strategy used for Piping + /// + /// The kernel wrapper. + /// The kernel data input. + /// The kernel data output. + /// The dam kernel input. + /// The calculation messages. + /// The design calculations. + /// + private static void PerformDesignCalculationShoulderIterativePerPoint(IKernelWrapper kernelWrapper, IKernelDataInput kernelDataInput, IKernelDataOutput kernelDataOutput, DamKernelInput damKernelInput, List calculationMessages, List designCalculations) { var designResults = new List(); @@ -310,15 +321,15 @@ pointCount++; // Calculate the piping design at the given point. This returns the required adaption (berm length and height) if any. - var pipingDesign = kernelWrapper.CalculateDesignAtPoint(damKernelInput, kernelDataInput, kernelDataOutput, point, out locationCalculationMessages); - if (pipingDesign != null) + ShoulderDesign shoulderDesign = kernelWrapper.CalculateDesignAtPoint(damKernelInput, kernelDataInput, kernelDataOutput, point, out locationCalculationMessages); + if (shoulderDesign != null) { // Piping is an issue so adapt the surfaceline for it - desiredShoulderLength = pipingDesign.ShoulderLengthFromToe; + desiredShoulderLength = shoulderDesign.ShoulderLengthFromToe; desiredShoulderLength = Math.Max(desiredShoulderLength, oldDesiredShoulderLength); oldDesiredShoulderLength = desiredShoulderLength; // shoulder height is height above surfacelevel!! - desiredShoulderHeight = pipingDesign.ShoulderHeightFromToe; + desiredShoulderHeight = shoulderDesign.ShoulderHeightFromToe; desiredShoulderHeight = Math.Max(desiredShoulderHeight, oldDesiredShoulderHeight); oldDesiredShoulderHeight = desiredShoulderHeight; } @@ -374,12 +385,14 @@ designCalculations.Add(designResult); } } - // safetyFactor = pipingCalculator.CalculatePipingFactor(location, newSurfaceLine, soilProfileProbability.SoilProfile, scenario.RiverLevel); - // if (safetyFactor < scenario.RequiredSafetyFactorPiping) - // { - // throw new DamFailureMechanismeCalculatorException("Deterministic Design: Piping is not safe yet."); - // } - // return newSurfaceLine; + + string evaluationMessage; + bool designSuccessful = kernelWrapper.EvaluateDesign(damKernelInput, kernelDataInput, kernelDataOutput, out evaluationMessage); + if (!designSuccessful) + { + throw new DesignCalculatorException(String.Format(Resources.DesignUnsuccessful, + damKernelInput.Location.Name, damKernelInput.SubSoilScenario) + ", " + evaluationMessage); + } } } } Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingSellmeijer4Forces/DamPipingSellmeijer4ForcesKernelWrapper.cs =================================================================== diff -u -r1122 -r1129 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingSellmeijer4Forces/DamPipingSellmeijer4ForcesKernelWrapper.cs (.../DamPipingSellmeijer4ForcesKernelWrapper.cs) (revision 1122) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamPipingSellmeijer4Forces/DamPipingSellmeijer4ForcesKernelWrapper.cs (.../DamPipingSellmeijer4ForcesKernelWrapper.cs) (revision 1129) @@ -275,5 +275,20 @@ throw new NotImplementedException(); } + /// + /// Evaluates the design (current factor greater than desired factor) + /// + /// The dam kernel input. + /// The kernel data input. + /// The kernel data output. + /// The evaluation message. + /// + /// if the design was succesful + /// + /// + public bool EvaluateDesign(DamKernelInput damKernelInput, IKernelDataInput kernelDataInput, IKernelDataOutput kernelDataOutput, out string evaluationMessage) + { + throw new NotImplementedException(); + } } } Index: DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/TestFiles/Rechter Diezedijk_BlighFailedDesignInputFile_1Location.xml =================================================================== diff -u --- DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/TestFiles/Rechter Diezedijk_BlighFailedDesignInputFile_1Location.xml (revision 0) +++ DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/TestFiles/Rechter Diezedijk_BlighFailedDesignInputFile_1Location.xml (revision 1129) @@ -0,0 +1,2775 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file