Index: Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.IO/Configurations/ClosingStructuresCalculationConfigurationImporter.cs =================================================================== diff -u -r3307edf9e893dd67926dffaac019185b32bbbe86 -r5f489223b4d730eec42acd55533dd012d10dd1ca --- Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.IO/Configurations/ClosingStructuresCalculationConfigurationImporter.cs (.../ClosingStructuresCalculationConfigurationImporter.cs) (revision 3307edf9e893dd67926dffaac019185b32bbbe86) +++ Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.IO/Configurations/ClosingStructuresCalculationConfigurationImporter.cs (.../ClosingStructuresCalculationConfigurationImporter.cs) (revision 5f489223b4d730eec42acd55533dd012d10dd1ca) @@ -22,8 +22,10 @@ using System; using System.Collections.Generic; using Core.Common.Base.Data; +using log4net; using Ringtoets.ClosingStructures.Data; using Ringtoets.ClosingStructures.IO.Configurations.Helpers; +using Ringtoets.ClosingStructures.IO.Properties; using Ringtoets.Common.Data.Calculation; using Ringtoets.Common.Data.DikeProfiles; using Ringtoets.Common.Data.Hydraulics; @@ -109,6 +111,7 @@ && TryReadIdenticalApertures(readCalculation, calculation) && readCalculation.WaveReduction.ValidateWaveReduction(calculation.InputParameters.ForeshoreProfile, calculation.Name, Log)) { + ReadFactorStormDurationOpenStructure(readCalculation, calculation); ReadWaveReductionParameters(readCalculation.WaveReduction, calculation.InputParameters); return calculation; } @@ -117,10 +120,14 @@ private bool TryReadStochasts(ClosingStructuresCalculationConfiguration readCalculation, StructuresCalculation calculation) { - if (!readCalculation.ValidateStochasts(Log)) + if (!readCalculation.ValidateStructureBaseStochasts(Log)) { return false; } + if (!ValidateStochasts(readCalculation)) + { + return false; + } return TryReadStandardDeviationStochast( calculation.Name, @@ -198,6 +205,17 @@ (i, d) => i.StormDuration = d); } + private bool ValidateStochasts(ClosingStructuresCalculationConfiguration configuration) + { + if (configuration.DrainCoefficient?.StandardDeviation != null) + { + Log.LogCalculationConversionError(Resources.CalculationConfigurationImporter_ValidateStochasts_Cannot_define_StandardDeviation_for_DrainCoefficient, + configuration.Name); + return false; + } + return true; + } + /// /// Reads the orientation. /// @@ -273,6 +291,19 @@ } /// + /// Reads the factor storm duration. + /// + /// The calculation read from the imported file. + /// The calculation to configure. + private void ReadFactorStormDurationOpenStructure(ClosingStructuresCalculationConfiguration readCalculation, StructuresCalculation calculation) + { + if (readCalculation.FactorStormDurationOpenStructure.HasValue) + { + calculation.InputParameters.FactorStormDurationOpenStructure = (RoundedDouble) readCalculation.FactorStormDurationOpenStructure.Value; + } + } + + /// /// Reads the failure probability open structure. /// /// The calculation read from the imported file.