Index: Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Service/GrassCoverErosionInwardsCalculationService.cs =================================================================== diff -u -r83003ce3a26b35511212cc95936e8574bea66516 -rbc4ac80f66ddacc89d279d1260465c63ddee4d58 --- Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Service/GrassCoverErosionInwardsCalculationService.cs (.../GrassCoverErosionInwardsCalculationService.cs) (revision 83003ce3a26b35511212cc95936e8574bea66516) +++ Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Service/GrassCoverErosionInwardsCalculationService.cs (.../GrassCoverErosionInwardsCalculationService.cs) (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -116,7 +116,7 @@ string hlcdDirectory, FailureMechanismSection failureMechanismSection, string ringId, GeneralGrassCoverErosionInwardsInput generalInput) { - var targetProbabiltyCalculationParser = new TargetProbabilityCalculationParser(); + var targetProbabiltyCalculationParser = new ReliabilityIndexCalculationParser(); DikeHeightCalculationInput dikeHeightCalculationInput = CreateDikeHeightInput(calculation, assessmentSection, failureMechanismSection, generalInput); @@ -144,7 +144,7 @@ } } - private static void VerifyDikeHeightCalculationOutput(TargetProbabilityCalculationOutput output, string name) + private static void VerifyDikeHeightCalculationOutput(ReliabilityIndexCalculationOutput output, string name) { if (output == null) { Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Output/ReliabilityIndexCalculationOutput.cs =================================================================== diff -u --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Output/ReliabilityIndexCalculationOutput.cs (revision 0) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Output/ReliabilityIndexCalculationOutput.cs (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -0,0 +1,66 @@ +// Copyright (C) Stichting Deltares 2016. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +// +// All names, logos, and references to "Deltares" are registered trademarks of +// Stichting Deltares and remain full property of Stichting Deltares at all times. +// All rights reserved. + +namespace Ringtoets.HydraRing.Calculation.Data.Output +{ + /// + /// Container of all relevant output generated by a type II calculation via Hydra-Ring: + /// Iterate towards a reliability index. + /// + public class ReliabilityIndexCalculationOutput + { + private readonly double result; + private readonly double calculatedReliabilityIndex; + + /// + /// Creates a new instance of the class. + /// + /// The result corresponding to . + /// The actual reliability index that was reached. + public ReliabilityIndexCalculationOutput(double result, double calculatedReliabilityIndex) + { + this.result = result; + this.calculatedReliabilityIndex = calculatedReliabilityIndex; + } + + /// + /// Gets the result corresponding to . + /// + public double Result + { + get + { + return result; + } + } + + /// + /// Gets the actual reliability index that was reached. + /// + public double CalculatedReliabilityIndex + { + get + { + return calculatedReliabilityIndex; + } + } + } +} \ No newline at end of file Fisheye: Tag bc4ac80f66ddacc89d279d1260465c63ddee4d58 refers to a dead (removed) revision in file `Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Output/TargetProbabilityCalculationOutput.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Parsers/ReliabilityIndexCalculationParser.cs =================================================================== diff -u --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Parsers/ReliabilityIndexCalculationParser.cs (revision 0) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Parsers/ReliabilityIndexCalculationParser.cs (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -0,0 +1,75 @@ +// Copyright (C) Stichting Deltares 2016. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +// +// All names, logos, and references to "Deltares" are registered trademarks of +// Stichting Deltares and remain full property of Stichting Deltares at all times. +// All rights reserved. + +using System; +using System.Globalization; +using System.IO; +using System.Linq; +using Ringtoets.HydraRing.Calculation.Data.Output; +using Ringtoets.HydraRing.Calculation.Services; + +namespace Ringtoets.HydraRing.Calculation.Parsers +{ + /// + /// Parser for the output of a Hydra-Ring type II calculation: + /// Iterate towards a reliability index. + /// + public class ReliabilityIndexCalculationParser : IHydraRingFileParser + { + /// + /// Gets the output of a successful parse of the output file. + /// + /// A corresponding to the section id if executed + /// successfully; or null otherwise. + public ReliabilityIndexCalculationOutput Output { get; private set; } + + public void Parse(string workingDirectory, int sectionId) + { + try + { + using (var streamReader = new StreamReader(Path.Combine(workingDirectory, HydraRingFileName.DesignTablesFileName))) + { + var fileContents = streamReader.ReadToEnd(); + var lines = fileContents.Split('\n'); + + foreach (var resultLine in lines.Skip(3)) // Skip the header lines + { + var results = resultLine.Split((char[]) null, StringSplitOptions.RemoveEmptyEntries); + + if (results.Any() && results.ElementAt(0) == sectionId.ToString()) + { + Output = new ReliabilityIndexCalculationOutput(GetDoubleValueFromElement(results.ElementAt(results.Length - 2)), GetDoubleValueFromElement(results.ElementAt(results.Length - 1))); + } + } + } + } + catch + { + // ignored + } + } + + private static double GetDoubleValueFromElement(string element) + { + return double.Parse(element, CultureInfo.InvariantCulture); + } + } +} \ No newline at end of file Fisheye: Tag bc4ac80f66ddacc89d279d1260465c63ddee4d58 refers to a dead (removed) revision in file `Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Parsers/TargetProbabilityCalculationParser.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Ringtoets.HydraRing.Calculation.csproj =================================================================== diff -u -r69ba8c3394d749398c3f07bd925d805225d7c672 -rbc4ac80f66ddacc89d279d1260465c63ddee4d58 --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Ringtoets.HydraRing.Calculation.csproj (.../Ringtoets.HydraRing.Calculation.csproj) (revision 69ba8c3394d749398c3f07bd925d805225d7c672) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Ringtoets.HydraRing.Calculation.csproj (.../Ringtoets.HydraRing.Calculation.csproj) (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -65,7 +65,7 @@ - + @@ -99,7 +99,7 @@ - + Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Output/ReliabilityIndexCalculationOutputTest.cs =================================================================== diff -u --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Output/ReliabilityIndexCalculationOutputTest.cs (revision 0) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Output/ReliabilityIndexCalculationOutputTest.cs (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -0,0 +1,41 @@ +// Copyright (C) Stichting Deltares 2016. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +// +// All names, logos, and references to "Deltares" are registered trademarks of +// Stichting Deltares and remain full property of Stichting Deltares at all times. +// All rights reserved. + +using NUnit.Framework; +using Ringtoets.HydraRing.Calculation.Data.Output; + +namespace Ringtoets.HydraRing.Calculation.Test.Data.Output +{ + [TestFixture] + public class ReliabilityIndexCalculationOutputTest + { + [Test] + public void Constructor_ExpectedValues() + { + // Call + var targetProbabilityCalculationOutput = new ReliabilityIndexCalculationOutput(1.1, 2.2); + + // Assert + Assert.AreEqual(1.1, targetProbabilityCalculationOutput.Result); + Assert.AreEqual(2.2, targetProbabilityCalculationOutput.CalculatedReliabilityIndex); + } + } +} \ No newline at end of file Fisheye: Tag bc4ac80f66ddacc89d279d1260465c63ddee4d58 refers to a dead (removed) revision in file `Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Output/TargetProbabilityCalculationOutputTest.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Parsers/ReliabilityIndexCalculationParserTest.cs =================================================================== diff -u --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Parsers/ReliabilityIndexCalculationParserTest.cs (revision 0) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Parsers/ReliabilityIndexCalculationParserTest.cs (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -0,0 +1,127 @@ +// Copyright (C) Stichting Deltares 2016. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +// +// All names, logos, and references to "Deltares" are registered trademarks of +// Stichting Deltares and remain full property of Stichting Deltares at all times. +// All rights reserved. + +using System.IO; +using Core.Common.TestUtil; +using NUnit.Framework; +using Ringtoets.HydraRing.Calculation.Parsers; +using Ringtoets.HydraRing.Calculation.Services; + +namespace Ringtoets.HydraRing.Calculation.Test.Parsers +{ + [TestFixture] + public class ReliabilityIndexCalculationParserTest + { + private readonly string testDataPath = Path.Combine(TestHelper.GetTestDataPath(TestDataPath.Ringtoets.HydraRing.Calculation, "Parsers"), "ReliabilityIndexCalculationParser"); + + [Test] + public void DefaultConstructor_SetDefaultValues() + { + // Call + var parser = new ReliabilityIndexCalculationParser(); + + // Assert + Assert.IsInstanceOf(parser); + Assert.IsNull(parser.Output); + } + + [Test] + public void Parse_NotExistingOutputFile_OutputNull() + { + // Setup + var targetProbabilityCalculationParser = new ReliabilityIndexCalculationParser(); + + // Call + targetProbabilityCalculationParser.Parse(testDataPath, 1); + + // Assert + Assert.IsNull(targetProbabilityCalculationParser.Output); + } + + [Test] + public void Parse_EmptyOutputFile_OutputNull() + { + // Setup + var targetProbabilityCalculationParser = new ReliabilityIndexCalculationParser(); + var workingDirectory = Path.Combine(testDataPath, "empty"); + + // Call + targetProbabilityCalculationParser.Parse(workingDirectory, 1); + + // Assert + Assert.IsNull(targetProbabilityCalculationParser.Output); + Assert.IsTrue(TestHelper.CanOpenFileForWrite(Path.Combine(workingDirectory, HydraRingFileName.DesignTablesFileName))); + } + + [Test] + [TestCase(1, 1.1, 11.11)] + [TestCase(3, 3.3, 33.33)] + public void Parse_ExampleHydraRingOutputFileContainingSectionIds_ReturnsExpectedTargetProbabilityCalculationResult(int sectionId, double result, double actual) + { + // Setup + var targetProbabilityCalculationParser = new ReliabilityIndexCalculationParser(); + var workingDirectory = Path.Combine(testDataPath, "exampleOutputTable"); + + // Call + targetProbabilityCalculationParser.Parse(workingDirectory, sectionId); + + // Assert + var targetProbabilityCalculationOutput = targetProbabilityCalculationParser.Output; + Assert.IsNotNull(targetProbabilityCalculationOutput); + Assert.AreEqual(result, targetProbabilityCalculationOutput.Result); + Assert.AreEqual(actual, targetProbabilityCalculationOutput.CalculatedReliabilityIndex); + Assert.IsTrue(TestHelper.CanOpenFileForWrite(Path.Combine(workingDirectory, HydraRingFileName.DesignTablesFileName))); + } + + [Test] + public void Parse_ExampleHydraRingOutputFileContainingExtraWhiteLine_ReturnsExpectedTargetProbabilityCalculationResult() + { + // Setup + var targetProbabilityCalculationParser = new ReliabilityIndexCalculationParser(); + var workingDirectory = Path.Combine(testDataPath, "exampleOutputTableWithWhiteLine"); + + // Call + targetProbabilityCalculationParser.Parse(workingDirectory, 1); + + // Assert + var targetProbabilityCalculationOutput = targetProbabilityCalculationParser.Output; + Assert.IsNotNull(targetProbabilityCalculationOutput); + Assert.AreEqual(1.1, targetProbabilityCalculationOutput.Result); + Assert.AreEqual(11.11, targetProbabilityCalculationOutput.CalculatedReliabilityIndex); + Assert.IsTrue(TestHelper.CanOpenFileForWrite(Path.Combine(workingDirectory, HydraRingFileName.DesignTablesFileName))); + } + + [Test] + public void Parse_ExampleHydraRingOutputFileNotContainingSectionId_OutputNull() + { + // Setup + var targetProbabilityCalculationParser = new ReliabilityIndexCalculationParser(); + var workingDirectory = Path.Combine(testDataPath, "exampleOutputTable"); + + // Call + targetProbabilityCalculationParser.Parse(workingDirectory, 2); + + // Assert + Assert.IsNull(targetProbabilityCalculationParser.Output); + Assert.IsTrue(TestHelper.CanOpenFileForWrite(Path.Combine(workingDirectory, HydraRingFileName.DesignTablesFileName))); + } + } +} \ No newline at end of file Fisheye: Tag bc4ac80f66ddacc89d279d1260465c63ddee4d58 refers to a dead (removed) revision in file `Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Parsers/TargetProbabilityCalculationParserTest.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj =================================================================== diff -u -r69ba8c3394d749398c3f07bd925d805225d7c672 -rbc4ac80f66ddacc89d279d1260465c63ddee4d58 --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj (.../Ringtoets.HydraRing.Calculation.Test.csproj) (revision 69ba8c3394d749398c3f07bd925d805225d7c672) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj (.../Ringtoets.HydraRing.Calculation.Test.csproj) (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -73,12 +73,12 @@ - + - + Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/test-data/Parsers/ReliabilityIndexCalculationParser/empty/designTable.txt =================================================================== diff -u --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/test-data/Parsers/ReliabilityIndexCalculationParser/empty/designTable.txt (revision 0) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/test-data/Parsers/ReliabilityIndexCalculationParser/empty/designTable.txt (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -0,0 +1 @@ \ No newline at end of file Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/test-data/Parsers/ReliabilityIndexCalculationParser/exampleOutputTable/designTable.txt =================================================================== diff -u --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/test-data/Parsers/ReliabilityIndexCalculationParser/exampleOutputTable/designTable.txt (revision 0) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/test-data/Parsers/ReliabilityIndexCalculationParser/exampleOutputTable/designTable.txt (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -0,0 +1,5 @@ +Testing region: +------------------------------------------------------------------------------------------------------------------------ + SectionID Mechanism Layer Alternative XCoordinate YCoordinate Result Reliability + 1 1 1 1 0 0 1.1 11.11 + 3 1 1 1 0 0 3.3 33.33 \ No newline at end of file Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/test-data/Parsers/ReliabilityIndexCalculationParser/exampleOutputTableWithWhiteLine/designTable.txt =================================================================== diff -u --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/test-data/Parsers/ReliabilityIndexCalculationParser/exampleOutputTableWithWhiteLine/designTable.txt (revision 0) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/test-data/Parsers/ReliabilityIndexCalculationParser/exampleOutputTableWithWhiteLine/designTable.txt (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -0,0 +1,4 @@ +Testing region: +------------------------------------------------------------------------------------------------------------------------ + SectionID Mechanism Layer Alternative XCoordinate YCoordinate Result Reliability + 1 1 1 1 0 0 1.1 11.11 Fisheye: Tag bc4ac80f66ddacc89d279d1260465c63ddee4d58 refers to a dead (removed) revision in file `Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/test-data/Parsers/TargetProbabilityCalculationParser/empty/designTable.txt'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag bc4ac80f66ddacc89d279d1260465c63ddee4d58 refers to a dead (removed) revision in file `Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/test-data/Parsers/TargetProbabilityCalculationParser/exampleOutputTable/designTable.txt'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag bc4ac80f66ddacc89d279d1260465c63ddee4d58 refers to a dead (removed) revision in file `Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/test-data/Parsers/TargetProbabilityCalculationParser/exampleOutputTableWithWhiteLine/designTable.txt'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/Integration/src/Ringtoets.Integration.Service/DesignWaterLevelCalculationActivity.cs =================================================================== diff -u -r3d995a76fbe93cf9801596e6b959e7f5bcde5805 -rbc4ac80f66ddacc89d279d1260465c63ddee4d58 --- Ringtoets/Integration/src/Ringtoets.Integration.Service/DesignWaterLevelCalculationActivity.cs (.../DesignWaterLevelCalculationActivity.cs) (revision 3d995a76fbe93cf9801596e6b959e7f5bcde5805) +++ Ringtoets/Integration/src/Ringtoets.Integration.Service/DesignWaterLevelCalculationActivity.cs (.../DesignWaterLevelCalculationActivity.cs) (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -35,7 +35,7 @@ /// /// for running a design water level calculation. /// - public class DesignWaterLevelCalculationActivity : HydraRingActivity + public class DesignWaterLevelCalculationActivity : HydraRingActivity { private static readonly ILog log = LogManager.GetLogger(typeof(DesignWaterLevelCalculationActivity)); @@ -88,7 +88,7 @@ { hydraulicBoundaryLocation.DesignWaterLevel = (RoundedDouble) Output.Result; bool designWaterLevelCalculationConvergence = - Math.Abs(Output.ActualTargetProbability - StatisticsConverter.NormToBeta(assessmentSection.FailureMechanismContribution.Norm)) <= 10e-5; + Math.Abs(Output.CalculatedReliabilityIndex - StatisticsConverter.NormToBeta(assessmentSection.FailureMechanismContribution.Norm)) <= 10e-3; if (!designWaterLevelCalculationConvergence) { log.WarnFormat(Resources.DesignWaterLevelCalculationActivity_DesignWaterLevel_calculation_for_location_0_not_converged, hydraulicBoundaryLocation.Name); Index: Ringtoets/Integration/src/Ringtoets.Integration.Service/DesignWaterLevelCalculationService.cs =================================================================== diff -u -r52bdea1c12a0bd8a3aee7673de0f9b328580f475 -rbc4ac80f66ddacc89d279d1260465c63ddee4d58 --- Ringtoets/Integration/src/Ringtoets.Integration.Service/DesignWaterLevelCalculationService.cs (.../DesignWaterLevelCalculationService.cs) (revision 52bdea1c12a0bd8a3aee7673de0f9b328580f475) +++ Ringtoets/Integration/src/Ringtoets.Integration.Service/DesignWaterLevelCalculationService.cs (.../DesignWaterLevelCalculationService.cs) (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -77,13 +77,13 @@ /// The to base the input for the calculation upon. /// The to perform the calculation for. /// The id of the ring to perform the calculation for. - /// A on a successful calculation, null otherwise. - internal static TargetProbabilityCalculationOutput Calculate(IAssessmentSection assessmentSection, HydraulicBoundaryDatabase hydraulicBoundaryDatabase, + /// A on a successful calculation, null otherwise. + internal static ReliabilityIndexCalculationOutput Calculate(IAssessmentSection assessmentSection, HydraulicBoundaryDatabase hydraulicBoundaryDatabase, HydraulicBoundaryLocation hydraulicBoundaryLocation, string ringId) { var hlcdDirectory = Path.GetDirectoryName(hydraulicBoundaryDatabase.FilePath); var input = CreateInput(assessmentSection, hydraulicBoundaryLocation); - var targetProbabilityCalculationParser = new TargetProbabilityCalculationParser(); + var targetProbabilityCalculationParser = new ReliabilityIndexCalculationParser(); var calculationName = string.Format(Resources.DesignWaterLevelCalculationService_Name_Assessment_level_for_location_0_, hydraulicBoundaryLocation.Name); CalculationServiceHelper.PerformCalculation( @@ -107,7 +107,7 @@ return targetProbabilityCalculationParser.Output; } - private static void VerifyOutput(TargetProbabilityCalculationOutput output, string name) + private static void VerifyOutput(ReliabilityIndexCalculationOutput output, string name) { if (output == null) { Index: Ringtoets/Integration/src/Ringtoets.Integration.Service/WaveHeightCalculationActivity.cs =================================================================== diff -u -r3d995a76fbe93cf9801596e6b959e7f5bcde5805 -rbc4ac80f66ddacc89d279d1260465c63ddee4d58 --- Ringtoets/Integration/src/Ringtoets.Integration.Service/WaveHeightCalculationActivity.cs (.../WaveHeightCalculationActivity.cs) (revision 3d995a76fbe93cf9801596e6b959e7f5bcde5805) +++ Ringtoets/Integration/src/Ringtoets.Integration.Service/WaveHeightCalculationActivity.cs (.../WaveHeightCalculationActivity.cs) (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -35,7 +35,7 @@ /// /// for running a water height calculation. /// - public class WaveHeightCalculationActivity : HydraRingActivity + public class WaveHeightCalculationActivity : HydraRingActivity { private static readonly ILog log = LogManager.GetLogger(typeof(WaveHeightCalculationActivity)); @@ -88,7 +88,7 @@ { hydraulicBoundaryLocation.WaveHeight = (RoundedDouble) Output.Result; bool waveHeightCalculationConvergence = - Math.Abs(Output.ActualTargetProbability - StatisticsConverter.NormToBeta(assessmentSection.FailureMechanismContribution.Norm)) <= 10e-5; + Math.Abs(Output.CalculatedReliabilityIndex - StatisticsConverter.NormToBeta(assessmentSection.FailureMechanismContribution.Norm)) <= 10e-3; if (!waveHeightCalculationConvergence) { log.WarnFormat(Resources.WaveHeightCalculationActivity_WaveHeight_calculation_for_location_0_not_converged, hydraulicBoundaryLocation.Name); Index: Ringtoets/Integration/src/Ringtoets.Integration.Service/WaveHeightCalculationService.cs =================================================================== diff -u -r52bdea1c12a0bd8a3aee7673de0f9b328580f475 -rbc4ac80f66ddacc89d279d1260465c63ddee4d58 --- Ringtoets/Integration/src/Ringtoets.Integration.Service/WaveHeightCalculationService.cs (.../WaveHeightCalculationService.cs) (revision 52bdea1c12a0bd8a3aee7673de0f9b328580f475) +++ Ringtoets/Integration/src/Ringtoets.Integration.Service/WaveHeightCalculationService.cs (.../WaveHeightCalculationService.cs) (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -77,13 +77,13 @@ /// The to base the input for the calculation upon. /// The to perform the calculation for. /// The id of the ring to perform the calculation for. - /// A on a successful calculation, null otherwise. - internal static TargetProbabilityCalculationOutput Calculate(IAssessmentSection assessmentSection, HydraulicBoundaryDatabase hydraulicBoundaryDatabase, + /// A on a successful calculation, null otherwise. + internal static ReliabilityIndexCalculationOutput Calculate(IAssessmentSection assessmentSection, HydraulicBoundaryDatabase hydraulicBoundaryDatabase, HydraulicBoundaryLocation hydraulicBoundaryLocation, string ringId) { var hlcdDirectory = Path.GetDirectoryName(hydraulicBoundaryDatabase.FilePath); var input = CreateInput(assessmentSection, hydraulicBoundaryLocation); - var targetProbabilityCalculationParser = new TargetProbabilityCalculationParser(); + var targetProbabilityCalculationParser = new ReliabilityIndexCalculationParser(); var calculationName = string.Format(Resources.WaveHeightCalculationService_Name_Wave_height_for_location_0_, hydraulicBoundaryLocation.Name); CalculationServiceHelper.PerformCalculation( @@ -107,7 +107,7 @@ return targetProbabilityCalculationParser.Output; } - private static void VerifyOutput(TargetProbabilityCalculationOutput output, string name) + private static void VerifyOutput(ReliabilityIndexCalculationOutput output, string name) { if (output == null) { Index: Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/DesignWaterLevelCalculationActivityTest.cs =================================================================== diff -u -r3d995a76fbe93cf9801596e6b959e7f5bcde5805 -rbc4ac80f66ddacc89d279d1260465c63ddee4d58 --- Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/DesignWaterLevelCalculationActivityTest.cs (.../DesignWaterLevelCalculationActivityTest.cs) (revision 3d995a76fbe93cf9801596e6b959e7f5bcde5805) +++ Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/DesignWaterLevelCalculationActivityTest.cs (.../DesignWaterLevelCalculationActivityTest.cs) (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -246,22 +246,22 @@ ImportHydraulicBoundaryDatabase(assessmentSectionStub); var hydraulicBoundaryLocation = assessmentSectionStub.HydraulicBoundaryDatabase.Locations.First(loc => loc.Id == 1300001); - hydraulicBoundaryLocation.DesignWaterLevelCalculationConvergence = CalculationConvergence.CalculatedConverged; + hydraulicBoundaryLocation.DesignWaterLevelCalculationConvergence = CalculationConvergence.CalculatedNotConverged; var activity = new DesignWaterLevelCalculationActivity(assessmentSectionStub, hydraulicBoundaryLocation); activity.Run(); // Precondition Assert.IsNaN(hydraulicBoundaryLocation.DesignWaterLevel); - Assert.AreEqual(CalculationConvergence.CalculatedConverged, hydraulicBoundaryLocation.DesignWaterLevelCalculationConvergence); + Assert.AreEqual(CalculationConvergence.CalculatedNotConverged, hydraulicBoundaryLocation.DesignWaterLevelCalculationConvergence); // Call activity.Finish(); // Assert Assert.IsFalse(double.IsNaN(hydraulicBoundaryLocation.DesignWaterLevel)); - Assert.AreEqual(CalculationConvergence.CalculatedNotConverged, hydraulicBoundaryLocation.DesignWaterLevelCalculationConvergence); + Assert.AreEqual(CalculationConvergence.CalculatedConverged, hydraulicBoundaryLocation.DesignWaterLevelCalculationConvergence); mockRepository.VerifyAll(); } @@ -322,6 +322,8 @@ activity.Run(); + failureMechanismContribution.Norm = 29; + // Precondition Assert.AreEqual(CalculationConvergence.CalculatedConverged, hydraulicBoundaryLocation.DesignWaterLevelCalculationConvergence); Index: Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/DesignWaterLevelCalculationServiceTest.cs =================================================================== diff -u -r35baeb163866f62a72bccf6438ddc08b41407ecf -rbc4ac80f66ddacc89d279d1260465c63ddee4d58 --- Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/DesignWaterLevelCalculationServiceTest.cs (.../DesignWaterLevelCalculationServiceTest.cs) (revision 35baeb163866f62a72bccf6438ddc08b41407ecf) +++ Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/DesignWaterLevelCalculationServiceTest.cs (.../DesignWaterLevelCalculationServiceTest.cs) (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -99,7 +99,7 @@ var hydraulicBoundaryLocation = assessmentSection.HydraulicBoundaryDatabase.Locations.First(hl => hl.Id == 1300001); - TargetProbabilityCalculationOutput output = null; + ReliabilityIndexCalculationOutput output = null; // Call Action call = () => output = DesignWaterLevelCalculationService.Calculate(assessmentSection, @@ -129,7 +129,7 @@ var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(1, "test", 1, 1); - TargetProbabilityCalculationOutput output = null; + ReliabilityIndexCalculationOutput output = null; // Call Action call = () => output = DesignWaterLevelCalculationService.Calculate(assessmentSection, Index: Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/WaveHeightCalculationActivityTest.cs =================================================================== diff -u -r3d995a76fbe93cf9801596e6b959e7f5bcde5805 -rbc4ac80f66ddacc89d279d1260465c63ddee4d58 --- Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/WaveHeightCalculationActivityTest.cs (.../WaveHeightCalculationActivityTest.cs) (revision 3d995a76fbe93cf9801596e6b959e7f5bcde5805) +++ Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/WaveHeightCalculationActivityTest.cs (.../WaveHeightCalculationActivityTest.cs) (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -255,7 +255,7 @@ ImportHydraulicBoundaryDatabase(assessmentSectionStub); var hydraulicBoundaryLocation = assessmentSectionStub.HydraulicBoundaryDatabase.Locations.First(loc => loc.Id == 1300001); - hydraulicBoundaryLocation.WaveHeightCalculationConvergence = CalculationConvergence.CalculatedConverged; + hydraulicBoundaryLocation.WaveHeightCalculationConvergence = CalculationConvergence.CalculatedNotConverged; hydraulicBoundaryLocation.Attach(observerMock); var activity = new WaveHeightCalculationActivity(assessmentSectionStub, hydraulicBoundaryLocation); @@ -264,14 +264,14 @@ // Precondition Assert.IsNaN(hydraulicBoundaryLocation.WaveHeight); - Assert.AreEqual(CalculationConvergence.CalculatedConverged, hydraulicBoundaryLocation.WaveHeightCalculationConvergence); + Assert.AreEqual(CalculationConvergence.CalculatedNotConverged, hydraulicBoundaryLocation.WaveHeightCalculationConvergence); // Call activity.Finish(); // Assert Assert.IsFalse(double.IsNaN(hydraulicBoundaryLocation.WaveHeight)); - Assert.AreEqual(CalculationConvergence.CalculatedNotConverged, hydraulicBoundaryLocation.WaveHeightCalculationConvergence); + Assert.AreEqual(CalculationConvergence.CalculatedConverged, hydraulicBoundaryLocation.WaveHeightCalculationConvergence); mockRepository.VerifyAll(); } @@ -340,6 +340,8 @@ activity.Run(); + failureMechanismContribution.Norm = 29; + // Precondition Assert.AreEqual(CalculationConvergence.CalculatedConverged, hydraulicBoundaryLocation.WaveHeightCalculationConvergence); Index: Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/WaveHeightCalculationServiceTest.cs =================================================================== diff -u -rf1bf048f691ca575f22e8807911ace0338fa425d -rbc4ac80f66ddacc89d279d1260465c63ddee4d58 --- Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/WaveHeightCalculationServiceTest.cs (.../WaveHeightCalculationServiceTest.cs) (revision f1bf048f691ca575f22e8807911ace0338fa425d) +++ Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/WaveHeightCalculationServiceTest.cs (.../WaveHeightCalculationServiceTest.cs) (revision bc4ac80f66ddacc89d279d1260465c63ddee4d58) @@ -99,7 +99,7 @@ var hydraulicBoundaryLocation = assessmentSection.HydraulicBoundaryDatabase.Locations.First(hl => hl.Id == 1300001); - TargetProbabilityCalculationOutput output = null; + ReliabilityIndexCalculationOutput output = null; // Call Action call = () => output = WaveHeightCalculationService.Calculate(assessmentSection, @@ -129,7 +129,7 @@ var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(1, "test", 1, 1); - TargetProbabilityCalculationOutput output = null; + ReliabilityIndexCalculationOutput output = null; // Call Action call = () => output = WaveHeightCalculationService.Calculate(assessmentSection,