Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Hydraulics/WaveConditionsInput.cs
===================================================================
diff -u -r4142f56ada4f19e2fc3a0e828042bec111c1cecd -rab59b0648bcae3ff70932998fbfa1a266558b8e6
--- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Hydraulics/WaveConditionsInput.cs (.../WaveConditionsInput.cs) (revision 4142f56ada4f19e2fc3a0e828042bec111c1cecd)
+++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Hydraulics/WaveConditionsInput.cs (.../WaveConditionsInput.cs) (revision ab59b0648bcae3ff70932998fbfa1a266558b8e6)
@@ -19,22 +19,28 @@
// Stichting Deltares and remain full property of Stichting Deltares at all times.
// All rights reserved.
+using Core.Common.Utils;
+
namespace Ringtoets.HydraRing.Calculation.Data.Input.Hydraulics
{
///
/// Container of all data necessary for performing a wave conditions calculation (Q-variant) via Hydra-Ring.
///
public class WaveConditionsInput : HydraRingCalculationInput
{
+ private readonly double beta;
private readonly HydraRingSection section;
///
/// Creates a new instance of the class.
///
/// The id of the section to use during the calculation.
/// The id of the hydraulic station to use during the calculation.
- public WaveConditionsInput(int sectionId, long hydraulicBoundaryLocationId) : base(hydraulicBoundaryLocationId)
+ /// The norm to use during the calculation.
+ /// As a part of the constructor, the is automatically converted into a reliability index.
+ public WaveConditionsInput(int sectionId, long hydraulicBoundaryLocationId, double norm) : base(hydraulicBoundaryLocationId)
{
+ beta = StatisticsConverter.NormToBeta(norm);
section = new HydraRingSection(sectionId, double.NaN, double.NaN);
}
@@ -69,5 +75,13 @@
return section;
}
}
+
+ public override double Beta
+ {
+ get
+ {
+ return beta;
+ }
+ }
}
}
\ No newline at end of file
Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Hydraulics/WaveConditionsInputTest.cs
===================================================================
diff -u -r4142f56ada4f19e2fc3a0e828042bec111c1cecd -rab59b0648bcae3ff70932998fbfa1a266558b8e6
--- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Hydraulics/WaveConditionsInputTest.cs (.../WaveConditionsInputTest.cs) (revision 4142f56ada4f19e2fc3a0e828042bec111c1cecd)
+++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Hydraulics/WaveConditionsInputTest.cs (.../WaveConditionsInputTest.cs) (revision ab59b0648bcae3ff70932998fbfa1a266558b8e6)
@@ -19,6 +19,7 @@
// Stichting Deltares and remain full property of Stichting Deltares at all times.
// All rights reserved.
+using Core.Common.Utils;
using NUnit.Framework;
using Ringtoets.HydraRing.Calculation.Data;
using Ringtoets.HydraRing.Calculation.Data.Input;
@@ -33,22 +34,25 @@
public void Constructor_Always_ExpectedValues()
{
// Setup
+ const int norm = 111;
const int sectionId = 2;
- const int hydraulicBoundaryLocationId = 1000;
+ const int hydraulicBoundaryLocationId = 3000;
// Call
- var waveConditionsInput = new WaveConditionsInput(sectionId, hydraulicBoundaryLocationId);
+ var waveConditionsInput = new WaveConditionsInput(sectionId, hydraulicBoundaryLocationId, norm);
// Assert
const int expectedCalculationTypeId = 6;
const int expectedVariableId = 114;
+ double expectedBeta = StatisticsConverter.NormToBeta(norm);
Assert.IsInstanceOf(waveConditionsInput);
Assert.AreEqual(HydraRingFailureMechanismType.QVariant, waveConditionsInput.FailureMechanismType);
Assert.AreEqual(expectedCalculationTypeId, waveConditionsInput.CalculationTypeId);
Assert.AreEqual(expectedVariableId, waveConditionsInput.VariableId);
Assert.AreEqual(hydraulicBoundaryLocationId, waveConditionsInput.HydraulicBoundaryLocationId);
Assert.IsNotNull(waveConditionsInput.Section);
Assert.AreEqual(sectionId, waveConditionsInput.Section.SectionId);
+ Assert.AreEqual(expectedBeta, waveConditionsInput.Beta);
}
}
}
\ No newline at end of file
Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/TargetProbabilityCalculationInputTest.cs
===================================================================
diff -u -r4ba68ad8c0ed15ce0449c39a5c6df1ef53daf866 -rab59b0648bcae3ff70932998fbfa1a266558b8e6
--- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/TargetProbabilityCalculationInputTest.cs (.../TargetProbabilityCalculationInputTest.cs) (revision 4ba68ad8c0ed15ce0449c39a5c6df1ef53daf866)
+++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/TargetProbabilityCalculationInputTest.cs (.../TargetProbabilityCalculationInputTest.cs) (revision ab59b0648bcae3ff70932998fbfa1a266558b8e6)
@@ -20,6 +20,7 @@
// All rights reserved.
using System;
+using Core.Common.Utils;
using MathNet.Numerics.Distributions;
using NUnit.Framework;
using Ringtoets.HydraRing.Calculation.Data;
@@ -38,10 +39,10 @@
public void Constructed_UsingDifferentNormAndLocationId_ReturnDifferentBetaAndDefaultValues(int locationId, double norm)
{
// Call
- var expectedBeta = -Normal.InvCDF(0.0, 1.0, 1.0/norm);
var targetProbabilityCalculationInputImplementation = new SimpleTargetProbabilityCalculationInput(locationId, norm);
// Assert
+ double expectedBeta = StatisticsConverter.NormToBeta(norm);
Assert.AreEqual(locationId, targetProbabilityCalculationInputImplementation.HydraulicBoundaryLocationId);
Assert.AreEqual(2, targetProbabilityCalculationInputImplementation.CalculationTypeId);
CollectionAssert.IsEmpty(targetProbabilityCalculationInputImplementation.Variables);
Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj
===================================================================
diff -u -r4142f56ada4f19e2fc3a0e828042bec111c1cecd -rab59b0648bcae3ff70932998fbfa1a266558b8e6
--- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj (.../Ringtoets.HydraRing.Calculation.Test.csproj) (revision 4142f56ada4f19e2fc3a0e828042bec111c1cecd)
+++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj (.../Ringtoets.HydraRing.Calculation.Test.csproj) (revision ab59b0648bcae3ff70932998fbfa1a266558b8e6)
@@ -114,6 +114,10 @@
{3BBFD65B-B277-4E50-AE6D-BD24C3434609}
Core.Common.Base
+
+ {F49BD8B2-332A-4C91-A196-8CCE0A2C7D98}
+ Core.Common.Utils
+
{D749EE4C-CE50-4C17-BF01-9A953028C126}
Core.Common.TestUtil