Fisheye: Tag bd70430bdfc6c901072cf5946c5c096ef4dbcba2 refers to a dead (removed) revision in file `Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Overtopping/StructuresOvertoppingCalculationInput.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresOvertoppingCalculationInput.cs =================================================================== diff -u --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresOvertoppingCalculationInput.cs (revision 0) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresOvertoppingCalculationInput.cs (revision bd70430bdfc6c901072cf5946c5c096ef4dbcba2) @@ -0,0 +1,275 @@ +// 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.Collections.Generic; + +namespace Ringtoets.HydraRing.Calculation.Data.Input.Structures +{ + /// + /// Container of all data necessary for performing a structures overtopping calculation via Hydra-Ring. + /// + public class StructuresOvertoppingCalculationInput : ExceedanceProbabilityCalculationInput + { + private readonly HydraRingSection section; + private readonly double gravitationalAcceleration; + private readonly double modelFactorOvertoppingMean; + private readonly double modelFactorOvertoppingStandardDeviation; + private readonly double levelOfCrestOfStructureMean; + private readonly double levelOfCrestOfStructureStandardDeviation; + private readonly double structureNormalOrientation; + private readonly double modelFactorOvertoppingSupercriticalFlowMean; + private readonly double modelFactorOvertoppingSupercriticalFlowStandardDeviation; + private readonly double allowableIncreaseOfLevelForStorageMean; + private readonly double allowableIncreaseOfLevelForStorageStandardDeviation; + private readonly double modelFactorForStorageVolumeMean; + private readonly double modelFactorForStorageVolumeStandardDeviation; + private readonly double storageStructureAreaMean; + private readonly double storageStructureAreaVariation; + private readonly double modelFactorForIncomingFlowVolume; + private readonly double flowWidthAtBottomProtectionMean; + private readonly double flowWidthAtBottomProtectionStandardDeviation; + private readonly double criticalOvertoppingDischargeMean; + private readonly double criticalOvertoppingDischargeVariation; + private readonly double failureProbabilityOfStructureGivenErosion; + private readonly double widthOfFlowAperturesMean; + private readonly double widthOfFlowAperturesStandardDeviation; + private readonly double deviationOfTheWaveDirection; + private readonly double stormDurationMean; + private readonly double stormDurationVariation; + + /// + /// Creates a new instance of the class. + /// + /// The id of the hydraulic station to use during the calculation. + /// The section to use during the calculation. + /// The gravitational acceleration to use during the calculation. + /// The mean of the model factor overtopping to use during the calculation. + /// The standard deviation of the model factor overtopping to use during the calculation. + /// The mean of the level of the crest of the structure to use during the calculation. + /// The standard deviation of the level of the crest of the structure to use during the calculation. + /// The orientation of the normal of the structure to use during the calculation. + /// The mean of the model factor overtopping supercritical flow to use during the calculation. + /// The standard deviation of the model factor overtopping supercritical flow to use during the calculation. + /// The mean of the allowable increase of the level for the storage to use during the calculation. + /// The standard deviation of the allowable increase of the level for the storage to use during the calculation. + /// The mean of the model factor for the storage volume to use during the calculation. + /// The standard deviation of the model factor for the storage volume to use during the calculation. + /// The mean of the storage structure area to use during the calculation. + /// The variation of the storage structure area to use during the calculation. + /// The model factor for incoming flow volume to use during the calculation. + /// The mean of the flow width at bottom protection to use during the calculation. + /// The standard deviation of the flow width at bottom protection to use during the calculation. + /// The mean of the critical overtopping discharge to use during the calculation. + /// The variation of the critical overtopping discharge to use during the calculation. + /// The failure probability of structure given erosion to use during the calculation. + /// The mean of the width of flow apertures to use during the calculation. + /// The standard deviation of the width of flow apertures to use during the calculation. + /// The deviation of the wave direction to use during the calculation. + /// The mean of the storm duration to use during the calculation. + /// The variation of the storm duration to use during the calculation. + public StructuresOvertoppingCalculationInput(int hydraulicBoundaryLocationId, HydraRingSection hydraRingSection, + double hydraRingGravitationalAcceleration, + double hydraRingModelFactorOvertoppingMean, double hydraRingModelFactorOvertoppingStandardDeviation, + double hydraRingLevelOfCrestOfStructureMean, double hydraRingLevelOfCrestOfStructureStandardDeviation, + double hydraRingStructureNormalOrientation, + double hydraRingModelFactorOvertoppingSupercriticalFlowMean, double hydraRingModelFactorOvertoppingSupercriticalFlowStandardDeviation, + double hydraRingAllowableIncreaseOfLevelForStorageMean, double hydraRingAllowableIncreaseOfLevelForStorageStandardDeviation, + double hydraRingModelFactorForStorageVolumeMean, double hydraRingModelFactorForStorageVolumeStandardDeviation, + double hydraRingStorageStructureAreaMean, double hydraRingStorageStructureAreaVariation, + double hydraRingModelFactorForIncomingFlowVolume, + double hydraRingFlowWidthAtBottomProtectionMean, double hydraRingFlowWidthAtBottomProtectionStandardDeviation, + double hydraRingCriticalOvertoppingDischargeMean, double hydraRingCriticalOvertoppingDischargeVariation, + double hydraRingFailureProbabilityOfStructureGivenErosion, + double hydraRingWidthOfFlowAperturesMean, double hydraRingWidthOfFlowAperturesStandardDeviation, + double hydraRingDeviationOfTheWaveDirection, + double hydraRingStormDurationMean, double hydraRingStormDurationVariation + ) + : base(hydraulicBoundaryLocationId) + { + section = hydraRingSection; + gravitationalAcceleration = hydraRingGravitationalAcceleration; + modelFactorOvertoppingMean = hydraRingModelFactorOvertoppingMean; + modelFactorOvertoppingStandardDeviation = hydraRingModelFactorOvertoppingStandardDeviation; + levelOfCrestOfStructureMean = hydraRingLevelOfCrestOfStructureMean; + levelOfCrestOfStructureStandardDeviation = hydraRingLevelOfCrestOfStructureStandardDeviation; + structureNormalOrientation = hydraRingStructureNormalOrientation; + modelFactorOvertoppingSupercriticalFlowMean = hydraRingModelFactorOvertoppingSupercriticalFlowMean; + modelFactorOvertoppingSupercriticalFlowStandardDeviation = hydraRingModelFactorOvertoppingSupercriticalFlowStandardDeviation; + allowableIncreaseOfLevelForStorageMean = hydraRingAllowableIncreaseOfLevelForStorageMean; + allowableIncreaseOfLevelForStorageStandardDeviation = hydraRingAllowableIncreaseOfLevelForStorageStandardDeviation; + modelFactorForStorageVolumeMean = hydraRingModelFactorForStorageVolumeMean; + modelFactorForStorageVolumeStandardDeviation = hydraRingModelFactorForStorageVolumeStandardDeviation; + storageStructureAreaMean = hydraRingStorageStructureAreaMean; + storageStructureAreaVariation = hydraRingStorageStructureAreaVariation; + modelFactorForIncomingFlowVolume = hydraRingModelFactorForIncomingFlowVolume; + flowWidthAtBottomProtectionMean = hydraRingFlowWidthAtBottomProtectionMean; + flowWidthAtBottomProtectionStandardDeviation = hydraRingFlowWidthAtBottomProtectionStandardDeviation; + criticalOvertoppingDischargeMean = hydraRingCriticalOvertoppingDischargeMean; + criticalOvertoppingDischargeVariation = hydraRingCriticalOvertoppingDischargeVariation; + failureProbabilityOfStructureGivenErosion = hydraRingFailureProbabilityOfStructureGivenErosion; + widthOfFlowAperturesMean = hydraRingWidthOfFlowAperturesMean; + widthOfFlowAperturesStandardDeviation = hydraRingWidthOfFlowAperturesStandardDeviation; + deviationOfTheWaveDirection = hydraRingDeviationOfTheWaveDirection; + stormDurationMean = hydraRingStormDurationMean; + stormDurationVariation = hydraRingStormDurationVariation; + } + + public override HydraRingFailureMechanismType FailureMechanismType + { + get + { + return HydraRingFailureMechanismType.StructuresOvertopping; + } + } + + public override int VariableId + { + get + { + return 60; + } + } + + public override HydraRingSection Section + { + get + { + return section; + } + } + + public override IEnumerable Variables + { + get + { + yield return new OvertoppingGravitationalAcceleration(gravitationalAcceleration); + yield return new OvertoppingModelFactorOvertopping(modelFactorOvertoppingMean, modelFactorOvertoppingStandardDeviation); + yield return new OvertoppingLevelOfCrestOfStructure(levelOfCrestOfStructureMean, levelOfCrestOfStructureStandardDeviation); + yield return new OvertoppingOrientationOfTheNormalOfTheStructure(structureNormalOrientation); + yield return new OvertoppingModelFactorOvertoppingSupercriticalFlow(modelFactorOvertoppingSupercriticalFlowMean, modelFactorOvertoppingSupercriticalFlowStandardDeviation); + yield return new OvertoppingAllowableIncreaseOfLevelForStorage(allowableIncreaseOfLevelForStorageMean, allowableIncreaseOfLevelForStorageStandardDeviation); + yield return new OvertoppingModelFactorForStorageVolume(modelFactorForStorageVolumeMean, modelFactorForStorageVolumeStandardDeviation); + yield return new OvertoppingStorageStructureArea(storageStructureAreaMean, storageStructureAreaVariation); + yield return new OvertoppingModelFactorForIncomingFlowVolume(modelFactorForIncomingFlowVolume); + yield return new OvertoppingFlowWidthAtBottomProtection(flowWidthAtBottomProtectionMean, flowWidthAtBottomProtectionStandardDeviation); + yield return new OvertoppingCriticalOvertoppingDischarge(criticalOvertoppingDischargeMean, criticalOvertoppingDischargeVariation); + yield return new OvertoppingFailureProbabilityOfStructureGivenErosion(failureProbabilityOfStructureGivenErosion); + yield return new OvertoppingWidthOfFlowApertures(widthOfFlowAperturesMean, widthOfFlowAperturesStandardDeviation); + yield return new OvertoppingDeviationOfTheWaveDirection(deviationOfTheWaveDirection); + yield return new OvertoppingStormDuration(stormDurationMean, stormDurationVariation); + } + } + + #region Overtopping Variables + + private class OvertoppingGravitationalAcceleration : HydraRingVariable + { + public OvertoppingGravitationalAcceleration(double acceleration) : + base(58, HydraRingDistributionType.Deterministic, acceleration, HydraRingDeviationType.Variation, double.NaN, double.NaN, double.NaN) {} + } + + private class OvertoppingModelFactorOvertopping : HydraRingVariable + { + public OvertoppingModelFactorOvertopping(double mean, double standardDeviation) : + base(59, HydraRingDistributionType.LogNormal, double.NaN, HydraRingDeviationType.Standard, mean, standardDeviation, double.NaN) {} + } + + private class OvertoppingLevelOfCrestOfStructure : HydraRingVariable + { + public OvertoppingLevelOfCrestOfStructure(double mean, double standardDeviation) : + base(60, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Standard, mean, standardDeviation, double.NaN) {} + } + + private class OvertoppingOrientationOfTheNormalOfTheStructure : HydraRingVariable + { + public OvertoppingOrientationOfTheNormalOfTheStructure(double orientation) : + base(61, HydraRingDistributionType.Deterministic, orientation, HydraRingDeviationType.Variation, double.NaN, double.NaN, double.NaN) {} + } + + private class OvertoppingModelFactorOvertoppingSupercriticalFlow : HydraRingVariable + { + public OvertoppingModelFactorOvertoppingSupercriticalFlow(double mean, double standardDeviation) : + base(62, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Standard, mean, standardDeviation, double.NaN) {} + } + + private class OvertoppingAllowableIncreaseOfLevelForStorage : HydraRingVariable + { + public OvertoppingAllowableIncreaseOfLevelForStorage(double mean, double standardDeviation) : + base(94, HydraRingDistributionType.LogNormal, double.NaN, HydraRingDeviationType.Standard, mean, standardDeviation, double.NaN) {} + } + + private class OvertoppingModelFactorForStorageVolume : HydraRingVariable + { + public OvertoppingModelFactorForStorageVolume(double mean, double standardDeviation) : + base(95, HydraRingDistributionType.LogNormal, double.NaN, HydraRingDeviationType.Standard, mean, standardDeviation, double.NaN) {} + } + + private class OvertoppingStorageStructureArea : HydraRingVariable + { + public OvertoppingStorageStructureArea(double mean, double variation) : + base(96, HydraRingDistributionType.LogNormal, double.NaN, HydraRingDeviationType.Variation, mean, variation, double.NaN) {} + } + + private class OvertoppingModelFactorForIncomingFlowVolume : HydraRingVariable + { + public OvertoppingModelFactorForIncomingFlowVolume(double modelFactor) : + base(97, HydraRingDistributionType.Deterministic, modelFactor, HydraRingDeviationType.Standard, double.NaN, double.NaN, double.NaN) {} + } + + private class OvertoppingFlowWidthAtBottomProtection : HydraRingVariable + { + public OvertoppingFlowWidthAtBottomProtection(double mean, double standardDeviation) : + base(103, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Standard, mean, standardDeviation, double.NaN) {} + } + + private class OvertoppingCriticalOvertoppingDischarge : HydraRingVariable + { + public OvertoppingCriticalOvertoppingDischarge(double mean, double variation) : + base(104, HydraRingDistributionType.LogNormal, double.NaN, HydraRingDeviationType.Variation, mean, variation, double.NaN) {} + } + + private class OvertoppingFailureProbabilityOfStructureGivenErosion : HydraRingVariable + { + public OvertoppingFailureProbabilityOfStructureGivenErosion(double failureProbability) : + base(105, HydraRingDistributionType.Deterministic, failureProbability, HydraRingDeviationType.Standard, double.NaN, double.NaN, double.NaN) {} + } + + private class OvertoppingWidthOfFlowApertures : HydraRingVariable + { + public OvertoppingWidthOfFlowApertures(double mean, double standardDeviation) : + base(106, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Standard, mean, standardDeviation, double.NaN) {} + } + + private class OvertoppingDeviationOfTheWaveDirection : HydraRingVariable + { + public OvertoppingDeviationOfTheWaveDirection(double deviation) : + base(107, HydraRingDistributionType.Deterministic, deviation, HydraRingDeviationType.Variation, double.NaN, double.NaN, double.NaN) {} + } + + private class OvertoppingStormDuration : HydraRingVariable + { + public OvertoppingStormDuration(double mean, double variation) : + base(108, HydraRingDistributionType.LogNormal, double.NaN, HydraRingDeviationType.Variation, mean, variation, double.NaN) {} + } + + #endregion + } +} \ No newline at end of file Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Ringtoets.HydraRing.Calculation.csproj =================================================================== diff -u -r86c7d023096544d25016d504791f9e5474bd0c65 -rbd70430bdfc6c901072cf5946c5c096ef4dbcba2 --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Ringtoets.HydraRing.Calculation.csproj (.../Ringtoets.HydraRing.Calculation.csproj) (revision 86c7d023096544d25016d504791f9e5474bd0c65) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Ringtoets.HydraRing.Calculation.csproj (.../Ringtoets.HydraRing.Calculation.csproj) (revision bd70430bdfc6c901072cf5946c5c096ef4dbcba2) @@ -57,7 +57,7 @@ - + Fisheye: Tag bd70430bdfc6c901072cf5946c5c096ef4dbcba2 refers to a dead (removed) revision in file `Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Overtopping/StructuresOvertoppingCalculationInputTest.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresOvertoppingCalculationInputTest.cs =================================================================== diff -u --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresOvertoppingCalculationInputTest.cs (revision 0) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresOvertoppingCalculationInputTest.cs (revision bd70430bdfc6c901072cf5946c5c096ef4dbcba2) @@ -0,0 +1,136 @@ +// 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.Collections.Generic; +using System.Linq; +using NUnit.Framework; +using Ringtoets.HydraRing.Calculation.Data; +using Ringtoets.HydraRing.Calculation.Data.Input.Structures; + +namespace Ringtoets.HydraRing.Calculation.Test.Data.Input.Structures +{ + [TestFixture] + public class StructuresOvertoppingCalculationInputTest + { + [Test] + public void Constructor_Always_ExpectedValues() + { + // Setup + const int hydraulicBoundaryLocationId = 1000; + const int variableId = 60; + HydraRingSection hydraRingSection = new HydraRingSection(variableId, "1000", double.NaN, double.NaN); + const double gravitationalAcceleration = 9.81; + const double modelFactorOvertoppingMean = 0.09; + const double modelFactorOvertoppingStandardDeviation = 0.06; + const double levelOfCrestOfStructureStandardDeviation = 0.05; + const double modelFactorOvertoppingSupercriticalFlowMean = 1.1; + const double modelFactorOvertoppingSupercriticalFlowStandardDeviation = 0.03; + const double allowableIncreaseOfLevelForStorageStandardDeviation = 0.1; + const double modelFactorForStorageVolumeMean = 1.0; + const double modelFactorForStorageVolumeStandardDeviation = 0.2; + const double storageStructureAreaStandardDeviation = 0.1; + const double modelFactorForIncomingFlowVolume = 1; + const double flowWidthAtBottomProtectionStandardDeviation = 0.05; + const double criticalOvertoppingDischargeMeanStandardDeviation = 0.15; + const double widthOfFlowAperturesStandardDeviation = 0.05; + const double stormDurationMean = 7.5; + const double stormDurationStandardDeviation = 0.25; + + const double levelOfCrestOfStructureMean = 1.1; + const double orientationOfTheNormalOfTheStructure = 2.2; + const double allowableIncreaseOfLevelForStorageMean = 3.3; + const double storageStructureAreaMean = 4.4; + const double flowWidthAtBottomProtectionMean = 5.5; + const double criticalOvertoppingDischargeMean = 6.6; + const double failureProbabilityOfStructureGivenErosion = 7.7; + const double widthOfFlowAperturesMean = 8.8; + const double deviationOfTheWaveDirection = 9.9; + + // Call + StructuresOvertoppingCalculationInput structuresOvertoppingCalculationInput = + new StructuresOvertoppingCalculationInput(hydraulicBoundaryLocationId, hydraRingSection, + gravitationalAcceleration, + modelFactorOvertoppingMean, modelFactorOvertoppingStandardDeviation, + levelOfCrestOfStructureMean, levelOfCrestOfStructureStandardDeviation, + orientationOfTheNormalOfTheStructure, + modelFactorOvertoppingSupercriticalFlowMean, modelFactorOvertoppingSupercriticalFlowStandardDeviation, + allowableIncreaseOfLevelForStorageMean, allowableIncreaseOfLevelForStorageStandardDeviation, + modelFactorForStorageVolumeMean, modelFactorForStorageVolumeStandardDeviation, + storageStructureAreaMean, storageStructureAreaStandardDeviation, + modelFactorForIncomingFlowVolume, + flowWidthAtBottomProtectionMean, flowWidthAtBottomProtectionStandardDeviation, + criticalOvertoppingDischargeMean, criticalOvertoppingDischargeMeanStandardDeviation, + failureProbabilityOfStructureGivenErosion, + widthOfFlowAperturesMean, widthOfFlowAperturesStandardDeviation, + deviationOfTheWaveDirection, + stormDurationMean, stormDurationStandardDeviation); + + // Assert + const int expectedCalculationTypeId = 1; + Assert.AreEqual(expectedCalculationTypeId, structuresOvertoppingCalculationInput.CalculationTypeId); + Assert.AreEqual(hydraulicBoundaryLocationId, structuresOvertoppingCalculationInput.HydraulicBoundaryLocationId); + Assert.AreEqual(HydraRingFailureMechanismType.StructuresOvertopping, structuresOvertoppingCalculationInput.FailureMechanismType); + Assert.AreEqual(variableId, structuresOvertoppingCalculationInput.VariableId); + Assert.AreEqual(hydraRingSection, structuresOvertoppingCalculationInput.Section); + CheckOvertoppingVariables(GetDefaultOvertoppingVariables().ToArray(), structuresOvertoppingCalculationInput.Variables.ToArray()); + } + + private static void CheckOvertoppingVariables(HydraRingVariable[] expected, HydraRingVariable[] actual) + { + Assert.AreEqual(expected.Length, actual.Length); + for (var i = 0; i < expected.Length; i++) + { + Assert.AreEqual(expected[i].Value, actual[i].Value, 1e-6); + Assert.AreEqual(expected[i].DeviationType, actual[i].DeviationType); + Assert.AreEqual(expected[i].DistributionType, actual[i].DistributionType); + Assert.AreEqual(expected[i].Mean, actual[i].Mean, 1e-6); + Assert.AreEqual(expected[i].Shift, actual[i].Shift, 1e-6); + Assert.AreEqual(expected[i].Variability, actual[i].Variability, 1e-6); + Assert.AreEqual(expected[i].VariableId, actual[i].VariableId, 1e-6); + } + } + + private static IEnumerable GetDefaultOvertoppingVariables() + { + yield return new HydraRingVariableImplementation(58, HydraRingDistributionType.Deterministic, 9.81, HydraRingDeviationType.Variation, double.NaN, double.NaN, double.NaN); + yield return new HydraRingVariableImplementation(59, HydraRingDistributionType.LogNormal, double.NaN, HydraRingDeviationType.Standard, 0.09, 0.06, double.NaN); + yield return new HydraRingVariableImplementation(60, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Standard, 1.1, 0.05, double.NaN); + yield return new HydraRingVariableImplementation(61, HydraRingDistributionType.Deterministic, 2.2, HydraRingDeviationType.Variation, double.NaN, double.NaN, double.NaN); + yield return new HydraRingVariableImplementation(62, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Standard, 1.1, 0.03, double.NaN); + yield return new HydraRingVariableImplementation(94, HydraRingDistributionType.LogNormal, double.NaN, HydraRingDeviationType.Standard, 3.3, 0.1, double.NaN); + yield return new HydraRingVariableImplementation(95, HydraRingDistributionType.LogNormal, double.NaN, HydraRingDeviationType.Standard, 1, 0.2, double.NaN); + yield return new HydraRingVariableImplementation(96, HydraRingDistributionType.LogNormal, double.NaN, HydraRingDeviationType.Variation, 4.4, 0.1, double.NaN); + yield return new HydraRingVariableImplementation(97, HydraRingDistributionType.Deterministic, 1, HydraRingDeviationType.Standard, double.NaN, double.NaN, double.NaN); + yield return new HydraRingVariableImplementation(103, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Standard, 5.5, 0.05, double.NaN); + yield return new HydraRingVariableImplementation(104, HydraRingDistributionType.LogNormal, double.NaN, HydraRingDeviationType.Variation, 6.6, 0.15, double.NaN); + yield return new HydraRingVariableImplementation(105, HydraRingDistributionType.Deterministic, 7.7, HydraRingDeviationType.Standard, double.NaN, double.NaN, double.NaN); + yield return new HydraRingVariableImplementation(106, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Standard, 8.8, 0.05, double.NaN); + yield return new HydraRingVariableImplementation(107, HydraRingDistributionType.Deterministic, 9.9, HydraRingDeviationType.Variation, double.NaN, double.NaN, double.NaN); + yield return new HydraRingVariableImplementation(108, HydraRingDistributionType.LogNormal, double.NaN, HydraRingDeviationType.Variation, 7.5, 0.25, double.NaN); + } + + private class HydraRingVariableImplementation : HydraRingVariable + { + public HydraRingVariableImplementation(int variableId, HydraRingDistributionType distributionType, double value, HydraRingDeviationType deviationType, double mean, double variability, double shift) : + base(variableId, distributionType, value, deviationType, mean, variability, shift) {} + } + } +} \ No newline at end of file Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Integration/HydraRingConfigurationServiceIntegrationTest.cs =================================================================== diff -u -r8b8d5a2d19d1751ce619faa2a993a004476406b9 -rbd70430bdfc6c901072cf5946c5c096ef4dbcba2 --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Integration/HydraRingConfigurationServiceIntegrationTest.cs (.../HydraRingConfigurationServiceIntegrationTest.cs) (revision 8b8d5a2d19d1751ce619faa2a993a004476406b9) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Integration/HydraRingConfigurationServiceIntegrationTest.cs (.../HydraRingConfigurationServiceIntegrationTest.cs) (revision bd70430bdfc6c901072cf5946c5c096ef4dbcba2) @@ -25,6 +25,7 @@ using Ringtoets.HydraRing.Calculation.Data; using Ringtoets.HydraRing.Calculation.Data.Input.Hydraulics; using Ringtoets.HydraRing.Calculation.Data.Input.Overtopping; +using Ringtoets.HydraRing.Calculation.Data.Input.Structures; using Ringtoets.HydraRing.Calculation.Services; namespace Ringtoets.HydraRing.Calculation.Test.Integration @@ -235,15 +236,15 @@ const double stormDurationMean = 7.5; const double stormDurationStandardDeviation = 0.25; - double levelOfCrestOfStructureMean = 1.1; - double orientationOfTheNormalOfTheStructure = 2.2; - double allowableIncreaseOfLevelForStorageMean = 3.3; - double storageStructureAreaMean = 4.4; - double flowWidthAtBottomProtectionMean = 5.5; - double criticalOvertoppingDischargeMean = 6.6; - double failureProbabilityOfStructureGivenErosion = 7.7; - double widthOfFlowAperturesMean = 8.8; - double deviationOfTheWaveDirection = 9.9; + const double levelOfCrestOfStructureMean = 1.1; + const double orientationOfTheNormalOfTheStructure = 2.2; + const double allowableIncreaseOfLevelForStorageMean = 3.3; + const double storageStructureAreaMean = 4.4; + const double flowWidthAtBottomProtectionMean = 5.5; + const double criticalOvertoppingDischargeMean = 6.6; + const double failureProbabilityOfStructureGivenErosion = 7.7; + const double widthOfFlowAperturesMean = 8.8; + const double deviationOfTheWaveDirection = 9.9; hydraRingConfigurationService.AddHydraRingCalculationInput(new StructuresOvertoppingCalculationInput(hydraulicBoundaryLocationId, hydraRingSection, gravitationalAcceleration, modelFactorOvertoppingMean, modelFactorOvertoppingStandardDeviation, Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj =================================================================== diff -u -r86c7d023096544d25016d504791f9e5474bd0c65 -rbd70430bdfc6c901072cf5946c5c096ef4dbcba2 --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj (.../Ringtoets.HydraRing.Calculation.Test.csproj) (revision 86c7d023096544d25016d504791f9e5474bd0c65) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj (.../Ringtoets.HydraRing.Calculation.Test.csproj) (revision bd70430bdfc6c901072cf5946c5c096ef4dbcba2) @@ -69,7 +69,7 @@ - +