Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Variables/LogNormalHydraRingVariable.cs =================================================================== diff -u -r92ce01ec6a2ac8d64f77a2a618c6b6e410a78812 -r69ae0d0b75f56831b0058a4fcac37442a998e84e --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Variables/LogNormalHydraRingVariable.cs (.../LogNormalHydraRingVariable.cs) (revision 92ce01ec6a2ac8d64f77a2a618c6b6e410a78812) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Variables/LogNormalHydraRingVariable.cs (.../LogNormalHydraRingVariable.cs) (revision 69ae0d0b75f56831b0058a4fcac37442a998e84e) @@ -24,10 +24,8 @@ /// /// Class for LogNormal Hydra-Ring variable related data. /// - public class LogNormalHydraRingVariable : HydraRingVariable + public class LogNormalHydraRingVariable : RandomHydraRingVariable { - private readonly double mean; - private readonly double variance; private readonly double shift; /// @@ -40,31 +38,11 @@ /// The shift value of the variable. public LogNormalHydraRingVariable(int variableId, HydraRingDeviationType deviationType, double mean, double variance, double shift = double.NaN) - : base(variableId, deviationType) + : base(variableId, deviationType, mean, variance) { - this.mean = mean; - this.variance = variance; this.shift = shift; } - public override double Parameter1 - { - get - { - return mean; - } - } - - public override double? Parameter2 - { - get - { - return DeviationType == HydraRingDeviationType.Standard - ? variance - : base.Parameter2; - } - } - public override double? Parameter3 { get @@ -75,16 +53,6 @@ } } - public override double CoefficientOfVariation - { - get - { - return DeviationType == HydraRingDeviationType.Variation - ? variance - : base.CoefficientOfVariation; - } - } - public override HydraRingDistributionType DistributionType { get Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Variables/NormalHydraRingVariable.cs =================================================================== diff -u -r92ce01ec6a2ac8d64f77a2a618c6b6e410a78812 -r69ae0d0b75f56831b0058a4fcac37442a998e84e --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Variables/NormalHydraRingVariable.cs (.../NormalHydraRingVariable.cs) (revision 92ce01ec6a2ac8d64f77a2a618c6b6e410a78812) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Variables/NormalHydraRingVariable.cs (.../NormalHydraRingVariable.cs) (revision 69ae0d0b75f56831b0058a4fcac37442a998e84e) @@ -24,11 +24,8 @@ /// /// Class for Normal Hydra-Ring variable related data. /// - public class NormalHydraRingVariable : HydraRingVariable + public class NormalHydraRingVariable : RandomHydraRingVariable { - private readonly double mean; - private readonly double variance; - /// /// Creates a new instance of . /// @@ -38,40 +35,8 @@ /// The variance value of the variable. public NormalHydraRingVariable(int variableId, HydraRingDeviationType deviationType, double mean, double variance) - : base(variableId, deviationType) - { - this.mean = mean; - this.variance = variance; - } + : base(variableId, deviationType, mean, variance) {} - public override double Parameter1 - { - get - { - return mean; - } - } - - public override double? Parameter2 - { - get - { - return DeviationType == HydraRingDeviationType.Standard - ? variance - : base.Parameter2; - } - } - - public override double CoefficientOfVariation - { - get - { - return DeviationType == HydraRingDeviationType.Variation - ? variance - : base.CoefficientOfVariation; - } - } - public override HydraRingDistributionType DistributionType { get Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Variables/RandomHydraRingVariable.cs =================================================================== diff -u -r649e89c7bbd4e79a738c90513f9d51d387f019a2 -r69ae0d0b75f56831b0058a4fcac37442a998e84e --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Variables/RandomHydraRingVariable.cs (.../RandomHydraRingVariable.cs) (revision 649e89c7bbd4e79a738c90513f9d51d387f019a2) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Variables/RandomHydraRingVariable.cs (.../RandomHydraRingVariable.cs) (revision 69ae0d0b75f56831b0058a4fcac37442a998e84e) @@ -26,26 +26,49 @@ /// public abstract class RandomHydraRingVariable : HydraRingVariable { - private readonly HydraRingDistributionType distributionType; + private readonly double mean; + private readonly double variance; /// /// Creates a new instance of /// /// The Hydra-Ring id corresponding to the variable that is considered. /// The deviation type of the variable. - /// The distribution type of the variable. - protected RandomHydraRingVariable(int variableId, HydraRingDeviationType deviationType, HydraRingDistributionType distributionType) + /// The mean value of the variable. + /// The variance value of the variable. + protected RandomHydraRingVariable(int variableId, HydraRingDeviationType deviationType, double mean, double variance) : base(variableId, deviationType) { - this.distributionType = distributionType; + this.mean = mean; + this.variance = variance; } - public override HydraRingDistributionType DistributionType + public override double Parameter1 { get { - return distributionType; + return mean; } } + + public override double? Parameter2 + { + get + { + return DeviationType == HydraRingDeviationType.Standard + ? variance + : base.Parameter2; + } + } + + public override double CoefficientOfVariation + { + get + { + return DeviationType == HydraRingDeviationType.Variation + ? variance + : base.CoefficientOfVariation; + } + } } } \ No newline at end of file Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Variables/RayleighNHydraRingVariable.cs =================================================================== diff -u -r92ce01ec6a2ac8d64f77a2a618c6b6e410a78812 -r69ae0d0b75f56831b0058a4fcac37442a998e84e --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Variables/RayleighNHydraRingVariable.cs (.../RayleighNHydraRingVariable.cs) (revision 92ce01ec6a2ac8d64f77a2a618c6b6e410a78812) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Variables/RayleighNHydraRingVariable.cs (.../RayleighNHydraRingVariable.cs) (revision 69ae0d0b75f56831b0058a4fcac37442a998e84e) @@ -24,11 +24,8 @@ /// /// Class for Rayleigh N Hydra-Ring variable related data. /// - public class RayleighNHydraRingVariable : HydraRingVariable + public class RayleighNHydraRingVariable : RandomHydraRingVariable { - private readonly double standardDeviation; - private readonly double n; - /// /// Creates a new instance of . /// @@ -38,40 +35,8 @@ /// The standardDeviation value of the variable. public RayleighNHydraRingVariable(int variableId, HydraRingDeviationType deviationType, double n, double standardDeviation) - : base(variableId, deviationType) - { - this.standardDeviation = standardDeviation; - this.n = n; - } + : base(variableId, deviationType, standardDeviation, n) {} - public override double Parameter1 - { - get - { - return standardDeviation; - } - } - - public override double? Parameter2 - { - get - { - return DeviationType == HydraRingDeviationType.Standard - ? n - : base.Parameter2; - } - } - - public override double CoefficientOfVariation - { - get - { - return DeviationType == HydraRingDeviationType.Variation - ? n - : base.CoefficientOfVariation; - } - } - public override HydraRingDistributionType DistributionType { get Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Variables/TruncatedNormalHydraRingVariable.cs =================================================================== diff -u -r92ce01ec6a2ac8d64f77a2a618c6b6e410a78812 -r69ae0d0b75f56831b0058a4fcac37442a998e84e --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Variables/TruncatedNormalHydraRingVariable.cs (.../TruncatedNormalHydraRingVariable.cs) (revision 92ce01ec6a2ac8d64f77a2a618c6b6e410a78812) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Variables/TruncatedNormalHydraRingVariable.cs (.../TruncatedNormalHydraRingVariable.cs) (revision 69ae0d0b75f56831b0058a4fcac37442a998e84e) @@ -24,10 +24,8 @@ /// /// Class for Truncated Normal Hydra-Ring variable related data. /// - public class TruncatedNormalHydraRingVariable : HydraRingVariable + public class TruncatedNormalHydraRingVariable : RandomHydraRingVariable { - private readonly double mean; - private readonly double variance; private readonly double lowerBoundary; private readonly double upperBoundary; @@ -42,32 +40,12 @@ /// The upper boundary value of the variable. public TruncatedNormalHydraRingVariable(int variableId, HydraRingDeviationType deviationType, double mean, double variance, double lowerBoundary, double upperBoundary) - : base(variableId, deviationType) + : base(variableId, deviationType, mean, variance) { - this.mean = mean; - this.variance = variance; this.lowerBoundary = lowerBoundary; this.upperBoundary = upperBoundary; } - public override double Parameter1 - { - get - { - return mean; - } - } - - public override double? Parameter2 - { - get - { - return DeviationType == HydraRingDeviationType.Standard - ? variance - : base.Parameter2; - } - } - public override double? Parameter3 { get @@ -84,16 +62,6 @@ } } - public override double CoefficientOfVariation - { - get - { - return DeviationType == HydraRingDeviationType.Variation - ? variance - : base.CoefficientOfVariation; - } - } - public override HydraRingDistributionType DistributionType { get Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Variables/LogNormalHydraRingVariableTest.cs =================================================================== diff -u -r92ce01ec6a2ac8d64f77a2a618c6b6e410a78812 -r69ae0d0b75f56831b0058a4fcac37442a998e84e --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Variables/LogNormalHydraRingVariableTest.cs (.../LogNormalHydraRingVariableTest.cs) (revision 92ce01ec6a2ac8d64f77a2a618c6b6e410a78812) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Variables/LogNormalHydraRingVariableTest.cs (.../LogNormalHydraRingVariableTest.cs) (revision 69ae0d0b75f56831b0058a4fcac37442a998e84e) @@ -29,23 +29,15 @@ public class LogNormalHydraRingVariableTest { [Test] - [TestCase(HydraRingDeviationType.Standard, 3.3, 0)] - [TestCase(HydraRingDeviationType.Variation, null, 3.3)] - public void Constructor_ExpectedValues(HydraRingDeviationType deviationType, double? expectedParameter2, double expectedCoefficientOfVariation) + public void Constructor_ExpectedValues() { // Call - var hydraRingVariable = new LogNormalHydraRingVariable(1, deviationType, 2.2, 3.3, 4.4); + var hydraRingVariable = new LogNormalHydraRingVariable(1, HydraRingDeviationType.Standard, 2.2, 3.3, 4.4); // Assert - Assert.IsInstanceOf(hydraRingVariable); - Assert.AreEqual(1, hydraRingVariable.VariableId); + Assert.IsInstanceOf(hydraRingVariable); Assert.AreEqual(HydraRingDistributionType.LogNormal, hydraRingVariable.DistributionType); - Assert.AreEqual(deviationType, hydraRingVariable.DeviationType); - Assert.AreEqual(2.2, hydraRingVariable.Parameter1); - Assert.AreEqual(expectedParameter2, hydraRingVariable.Parameter2); Assert.AreEqual(4.4, hydraRingVariable.Parameter3); - Assert.IsNull(hydraRingVariable.Parameter4); - Assert.AreEqual(expectedCoefficientOfVariation, hydraRingVariable.CoefficientOfVariation); } [Test] Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Variables/NormalHydraRingVariableTest.cs =================================================================== diff -u -r92ce01ec6a2ac8d64f77a2a618c6b6e410a78812 -r69ae0d0b75f56831b0058a4fcac37442a998e84e --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Variables/NormalHydraRingVariableTest.cs (.../NormalHydraRingVariableTest.cs) (revision 92ce01ec6a2ac8d64f77a2a618c6b6e410a78812) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Variables/NormalHydraRingVariableTest.cs (.../NormalHydraRingVariableTest.cs) (revision 69ae0d0b75f56831b0058a4fcac37442a998e84e) @@ -29,23 +29,14 @@ public class NormalHydraRingVariableTest { [Test] - [TestCase(HydraRingDeviationType.Standard, 3.3, 0)] - [TestCase(HydraRingDeviationType.Variation, null, 3.3)] - public void Constructor_ExpectedValues(HydraRingDeviationType deviationType, double? expectedParameter2, double expectedCoefficientOfVariation) + public void Constructor_ExpectedValues() { // Call - var hydraRingVariable = new NormalHydraRingVariable(1, deviationType, 2.2, 3.3); + var hydraRingVariable = new NormalHydraRingVariable(1, HydraRingDeviationType.Standard, 2.2, 3.3); // Assert - Assert.IsInstanceOf(hydraRingVariable); - Assert.AreEqual(1, hydraRingVariable.VariableId); + Assert.IsInstanceOf(hydraRingVariable); Assert.AreEqual(HydraRingDistributionType.Normal, hydraRingVariable.DistributionType); - Assert.AreEqual(deviationType, hydraRingVariable.DeviationType); - Assert.AreEqual(2.2, hydraRingVariable.Parameter1); - Assert.AreEqual(expectedParameter2, hydraRingVariable.Parameter2); - Assert.IsNull(hydraRingVariable.Parameter3); - Assert.IsNull(hydraRingVariable.Parameter4); - Assert.AreEqual(expectedCoefficientOfVariation, hydraRingVariable.CoefficientOfVariation); } } } \ No newline at end of file Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Variables/RandomHydraRingVariableTest.cs =================================================================== diff -u -r649e89c7bbd4e79a738c90513f9d51d387f019a2 -r69ae0d0b75f56831b0058a4fcac37442a998e84e --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Variables/RandomHydraRingVariableTest.cs (.../RandomHydraRingVariableTest.cs) (revision 649e89c7bbd4e79a738c90513f9d51d387f019a2) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Variables/RandomHydraRingVariableTest.cs (.../RandomHydraRingVariableTest.cs) (revision 69ae0d0b75f56831b0058a4fcac37442a998e84e) @@ -29,25 +29,37 @@ public class RandomHydraRingVariableTest { [Test] - public void Constructor_ExpectedValues() + [TestCase(HydraRingDeviationType.Standard, 3.3, 0)] + [TestCase(HydraRingDeviationType.Variation, null, 3.3)] + public void Constructor_ExpectedValues(HydraRingDeviationType deviationType, double? expectedParameter2, double expectedCoefficientOfVariation) { - // Setup - var variableId = 1; - var deviationType = HydraRingDeviationType.Variation; - var distributionType = HydraRingDistributionType.LogNormal; - // Call - var variable = new TestRandomHydraRingVariable(variableId, deviationType, distributionType); + var hydraRingVariable = new TestRandomHydraRingVariable(1, deviationType, 2.2, 3.3); // Assert - Assert.IsInstanceOf(variable); - Assert.AreEqual(distributionType, variable.DistributionType); + Assert.IsInstanceOf(hydraRingVariable); + Assert.AreEqual(1, hydraRingVariable.VariableId); + Assert.AreEqual(0.0, hydraRingVariable.Value); + Assert.AreEqual(deviationType, hydraRingVariable.DeviationType); + Assert.AreEqual(2.2, hydraRingVariable.Parameter1); + Assert.AreEqual(expectedParameter2, hydraRingVariable.Parameter2); + Assert.IsNull(hydraRingVariable.Parameter3); + Assert.IsNull(hydraRingVariable.Parameter4); + Assert.AreEqual(expectedCoefficientOfVariation, hydraRingVariable.CoefficientOfVariation); } private class TestRandomHydraRingVariable : RandomHydraRingVariable { - public TestRandomHydraRingVariable(int variableId, HydraRingDeviationType deviationType, HydraRingDistributionType distributionType) - : base(variableId, deviationType, distributionType) {} + public TestRandomHydraRingVariable(int variableId, HydraRingDeviationType deviationType, double parameter1, double parameter2) + : base(variableId, deviationType, parameter1, parameter2) {} + + public override HydraRingDistributionType DistributionType + { + get + { + return HydraRingDistributionType.Normal; + } + } } } } \ No newline at end of file Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Variables/RayleighNHydraRingVariableTest.cs =================================================================== diff -u -r92ce01ec6a2ac8d64f77a2a618c6b6e410a78812 -r69ae0d0b75f56831b0058a4fcac37442a998e84e --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Variables/RayleighNHydraRingVariableTest.cs (.../RayleighNHydraRingVariableTest.cs) (revision 92ce01ec6a2ac8d64f77a2a618c6b6e410a78812) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Variables/RayleighNHydraRingVariableTest.cs (.../RayleighNHydraRingVariableTest.cs) (revision 69ae0d0b75f56831b0058a4fcac37442a998e84e) @@ -29,23 +29,14 @@ public class RayleighNHydraRingVariableTest { [Test] - [TestCase(HydraRingDeviationType.Standard, 3.3, 0)] - [TestCase(HydraRingDeviationType.Variation, null, 3.3)] - public void Constructor_ExpectedValues(HydraRingDeviationType deviationType, double? expectedParameter2, double expectedCoefficientOfVariation) + public void Constructor_ExpectedValues() { // Call - var hydraRingVariable = new RayleighNHydraRingVariable(1, deviationType, 3.3, 2.2); + var hydraRingVariable = new RayleighNHydraRingVariable(1, HydraRingDeviationType.Standard, 3.3, 2.2); // Assert - Assert.IsInstanceOf(hydraRingVariable); - Assert.AreEqual(1, hydraRingVariable.VariableId); + Assert.IsInstanceOf(hydraRingVariable); Assert.AreEqual(HydraRingDistributionType.RayleighN, hydraRingVariable.DistributionType); - Assert.AreEqual(deviationType, hydraRingVariable.DeviationType); - Assert.AreEqual(2.2, hydraRingVariable.Parameter1); - Assert.AreEqual(expectedParameter2, hydraRingVariable.Parameter2); - Assert.IsNull(hydraRingVariable.Parameter3); - Assert.IsNull(hydraRingVariable.Parameter4); - Assert.AreEqual(expectedCoefficientOfVariation, hydraRingVariable.CoefficientOfVariation); } } } \ No newline at end of file Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Variables/TruncatedNormalHydraRingVariableTest.cs =================================================================== diff -u -r92ce01ec6a2ac8d64f77a2a618c6b6e410a78812 -r69ae0d0b75f56831b0058a4fcac37442a998e84e --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Variables/TruncatedNormalHydraRingVariableTest.cs (.../TruncatedNormalHydraRingVariableTest.cs) (revision 92ce01ec6a2ac8d64f77a2a618c6b6e410a78812) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Variables/TruncatedNormalHydraRingVariableTest.cs (.../TruncatedNormalHydraRingVariableTest.cs) (revision 69ae0d0b75f56831b0058a4fcac37442a998e84e) @@ -29,23 +29,16 @@ public class TruncatedNormalHydraRingVariableTest { [Test] - [TestCase(HydraRingDeviationType.Standard, 3.3, 0)] - [TestCase(HydraRingDeviationType.Variation, null, 3.3)] - public void Constructor_ExpectedValues(HydraRingDeviationType deviationType, double? expectedParameter2, double expectedCoefficientOfVariation) + public void Constructor_ExpectedValues() { // Call - var hydraRingVariable = new TruncatedNormalHydraRingVariable(1, deviationType, 2.2, 3.3, 4.4, 5.5); + var hydraRingVariable = new TruncatedNormalHydraRingVariable(1, HydraRingDeviationType.Standard, 2.2, 3.3, 4.4, 5.5); // Assert - Assert.IsInstanceOf(hydraRingVariable); - Assert.AreEqual(1, hydraRingVariable.VariableId); + Assert.IsInstanceOf(hydraRingVariable); Assert.AreEqual(HydraRingDistributionType.TruncatedNormal, hydraRingVariable.DistributionType); - Assert.AreEqual(deviationType, hydraRingVariable.DeviationType); - Assert.AreEqual(2.2, hydraRingVariable.Parameter1); - Assert.AreEqual(expectedParameter2, hydraRingVariable.Parameter2); Assert.AreEqual(4.4, hydraRingVariable.Parameter3); Assert.AreEqual(5.5, hydraRingVariable.Parameter4); - Assert.AreEqual(expectedCoefficientOfVariation, hydraRingVariable.CoefficientOfVariation); } } } \ No newline at end of file