Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Calculator/Factory/HydraRingCalculatorFactory.cs =================================================================== diff -u -rf8a22607a4baa03dc132a07b6ef4d5ef83c3df6b -r5d1d4dedecdc577e53f6090156794fe85dce68f2 --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Calculator/Factory/HydraRingCalculatorFactory.cs (.../HydraRingCalculatorFactory.cs) (revision f8a22607a4baa03dc132a07b6ef4d5ef83c3df6b) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Calculator/Factory/HydraRingCalculatorFactory.cs (.../HydraRingCalculatorFactory.cs) (revision 5d1d4dedecdc577e53f6090156794fe85dce68f2) @@ -61,7 +61,7 @@ public IHydraulicLoadsCalculator CreateOvertoppingRateCalculator(string hlcdDirectory) { - return new OvertoppingRateCalculator(hlcdDirectory); + return new HydraulicLoadsCalculator(hlcdDirectory); } public IWaveConditionsCosineCalculator CreateWaveConditionsCosineCalculator(string hlcdDirectory) Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Calculator/HydraulicLoadsCalculator.cs =================================================================== diff -u --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Calculator/HydraulicLoadsCalculator.cs (revision 0) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Calculator/HydraulicLoadsCalculator.cs (revision 5d1d4dedecdc577e53f6090156794fe85dce68f2) @@ -0,0 +1,82 @@ +// 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.Collections.Generic; +using Ringtoets.HydraRing.Calculation.Data; +using Ringtoets.HydraRing.Calculation.Data.Input.Hydraulics; +using Ringtoets.HydraRing.Calculation.Parsers; + +namespace Ringtoets.HydraRing.Calculation.Calculator +{ + /// + /// Calculator which calculates a hydraulic loads value associated to the result of iterating towards a + /// probability of failure given a norm. + /// + internal class HydraulicLoadsCalculator : HydraRingCalculatorBase, IHydraulicLoadsCalculator + { + private readonly ReliabilityIndexCalculationParser targetProbabilityParser; + private readonly ConvergenceParser convergenceParser; + + /// + /// Create a new instance of . + /// + /// The directory in which the hydraulic boundary database can be found. + /// Thrown when is null. + internal HydraulicLoadsCalculator(string hlcdDirectory) + : base(hlcdDirectory) + { + targetProbabilityParser = new ReliabilityIndexCalculationParser(); + convergenceParser = new ConvergenceParser(); + + Value = double.NaN; + ReliabilityIndex = double.NaN; + } + + public double Value { get; private set; } + + public double ReliabilityIndex { get; private set; } + + public bool? Converged { get; private set; } + + public void Calculate(HydraulicLoadsCalculationInput input) + { + Calculate(HydraRingUncertaintiesType.All, input); + } + + protected override IEnumerable GetParsers() + { + yield return targetProbabilityParser; + yield return convergenceParser; + } + + protected override void SetOutputs() + { + if (targetProbabilityParser.Output != null) + { + Value = targetProbabilityParser.Output.Result; + ReliabilityIndex = targetProbabilityParser.Output.CalculatedReliabilityIndex; + } + + Converged = convergenceParser.Output; + } + } +} \ No newline at end of file Fisheye: Tag 5d1d4dedecdc577e53f6090156794fe85dce68f2 refers to a dead (removed) revision in file `Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Calculator/OvertoppingRateCalculator.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Ringtoets.HydraRing.Calculation.csproj =================================================================== diff -u -rf8a22607a4baa03dc132a07b6ef4d5ef83c3df6b -r5d1d4dedecdc577e53f6090156794fe85dce68f2 --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Ringtoets.HydraRing.Calculation.csproj (.../Ringtoets.HydraRing.Calculation.csproj) (revision f8a22607a4baa03dc132a07b6ef4d5ef83c3df6b) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Ringtoets.HydraRing.Calculation.csproj (.../Ringtoets.HydraRing.Calculation.csproj) (revision 5d1d4dedecdc577e53f6090156794fe85dce68f2) @@ -45,7 +45,7 @@ Properties\GlobalAssembly.cs - + Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Calculator/HydraulicLoadsCalculatorTest.cs =================================================================== diff -u --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Calculator/HydraulicLoadsCalculatorTest.cs (revision 0) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Calculator/HydraulicLoadsCalculatorTest.cs (revision 5d1d4dedecdc577e53f6090156794fe85dce68f2) @@ -0,0 +1,44 @@ +// 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.Calculator; + +namespace Ringtoets.HydraRing.Calculation.Test.Calculator +{ + [TestFixture] + public class HydraulicLoadsCalculatorTest + { + [Test] + public void DefaultConstructor_InitializesOutputWithoutValues() + { + // Call + var calculator = new HydraulicLoadsCalculator(string.Empty); + + // Assert + Assert.IsInstanceOf(calculator); + Assert.IsNaN(calculator.Value); + Assert.IsNaN(calculator.ReliabilityIndex); + Assert.IsNull(calculator.Converged); + Assert.IsNull(calculator.OutputDirectory); + } + } +} \ No newline at end of file Fisheye: Tag 5d1d4dedecdc577e53f6090156794fe85dce68f2 refers to a dead (removed) revision in file `Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Calculator/OvertoppingRateCalculatorTest.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj =================================================================== diff -u -r692e9f44e141c19416b7b49dd450e16b6af43258 -r5d1d4dedecdc577e53f6090156794fe85dce68f2 --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj (.../Ringtoets.HydraRing.Calculation.Test.csproj) (revision 692e9f44e141c19416b7b49dd450e16b6af43258) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj (.../Ringtoets.HydraRing.Calculation.Test.csproj) (revision 5d1d4dedecdc577e53f6090156794fe85dce68f2) @@ -58,7 +58,7 @@ - +