Index: Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.IO/Exporters/StabilityPointStructuresCalculationConfigurationWriter.cs =================================================================== diff -u -rf53bbfd52a477ea865f97ce02525b1fe96d05a30 -ra6bfe739a97fac2ea5228a4c46f961a55351e9cb --- Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.IO/Exporters/StabilityPointStructuresCalculationConfigurationWriter.cs (.../StabilityPointStructuresCalculationConfigurationWriter.cs) (revision f53bbfd52a477ea865f97ce02525b1fe96d05a30) +++ Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.IO/Exporters/StabilityPointStructuresCalculationConfigurationWriter.cs (.../StabilityPointStructuresCalculationConfigurationWriter.cs) (revision a6bfe739a97fac2ea5228a4c46f961a55351e9cb) @@ -44,11 +44,30 @@ /// public StabilityPointStructuresCalculationConfigurationWriter(string filePath) : base(filePath) {} + protected override void WriteSpecificStructureParameters(StabilityPointStructuresCalculationConfiguration configuration, XmlWriter writer) + { + WriteElementWhenContentAvailable(writer, + StabilityPointStructuresConfigurationSchemaIdentifiers.EvaluationLevelElement, + configuration.EvaluationLevel); + } + protected override void WriteSpecificStochasts(StabilityPointStructuresCalculationConfiguration configuration, XmlWriter writer) { WriteDistributionWhenAvailable(writer, + StabilityPointStructuresConfigurationSchemaIdentifiers.AreaFlowAperturesStochastName, + configuration.AreaFlowApertures); + WriteDistributionWhenAvailable(writer, StabilityPointStructuresConfigurationSchemaIdentifiers.BankWidthStochastName, configuration.BankWidth); + WriteDistributionWhenAvailable(writer, + StabilityPointStructuresConfigurationSchemaIdentifiers.ConstructiveStrengthLinearLoadModelStochastName, + configuration.ConstructiveStrengthLinearLoadModel); + WriteDistributionWhenAvailable(writer, + StabilityPointStructuresConfigurationSchemaIdentifiers.ConstructiveStrengthQuadraticLoadModelName, + configuration.ConstructiveStrengthQuadraticLoadModel); + WriteDistributionWhenAvailable(writer, + StabilityPointStructuresConfigurationSchemaIdentifiers.FailureCollisionEnergyStochastName, + configuration.FailureCollisionEnergy); } } } \ No newline at end of file Index: Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.IO/StabilityPointStructuresCalculationConfiguration.cs =================================================================== diff -u -rf53bbfd52a477ea865f97ce02525b1fe96d05a30 -ra6bfe739a97fac2ea5228a4c46f961a55351e9cb --- Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.IO/StabilityPointStructuresCalculationConfiguration.cs (.../StabilityPointStructuresCalculationConfiguration.cs) (revision f53bbfd52a477ea865f97ce02525b1fe96d05a30) +++ Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.IO/StabilityPointStructuresCalculationConfiguration.cs (.../StabilityPointStructuresCalculationConfiguration.cs) (revision a6bfe739a97fac2ea5228a4c46f961a55351e9cb) @@ -37,8 +37,33 @@ public StabilityPointStructuresCalculationConfiguration(string name) : base(name) {} /// + /// Gets or sets the stochast configuration for the area flow apertures of the structure. + /// + public MeanStandardDeviationStochastConfiguration AreaFlowApertures { get; set; } + + /// /// Gets or sets the stochast configuration for the bank width of the structure. /// public MeanStandardDeviationStochastConfiguration BankWidth { get; set; } + + /// + /// Gets or sets the stochast configuration for the constructive strength of the linear load model of the structure. + /// + public MeanVariationCoefficientStochastConfiguration ConstructiveStrengthLinearLoadModel { get; set; } + + /// + /// Gets or sets the stochast configuration for the constructive strength of the quadratic load model of the structure. + /// + public MeanVariationCoefficientStochastConfiguration ConstructiveStrengthQuadraticLoadModel { get; set; } + + /// + /// Gets or sets the evaluation level of the structure. + /// + public double? EvaluationLevel { get; set; } + + /// + /// Gets or sets the stochast configuration for the failure collision energy of the structure. + /// + public MeanVariationCoefficientStochastConfiguration FailureCollisionEnergy { get; set; } } } \ No newline at end of file Index: Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.IO/StabilityPointStructuresConfigurationSchemaIdentifiers.cs =================================================================== diff -u -rf53bbfd52a477ea865f97ce02525b1fe96d05a30 -ra6bfe739a97fac2ea5228a4c46f961a55351e9cb --- Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.IO/StabilityPointStructuresConfigurationSchemaIdentifiers.cs (.../StabilityPointStructuresConfigurationSchemaIdentifiers.cs) (revision f53bbfd52a477ea865f97ce02525b1fe96d05a30) +++ Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.IO/StabilityPointStructuresConfigurationSchemaIdentifiers.cs (.../StabilityPointStructuresConfigurationSchemaIdentifiers.cs) (revision a6bfe739a97fac2ea5228a4c46f961a55351e9cb) @@ -27,8 +27,33 @@ public static class StabilityPointStructuresConfigurationSchemaIdentifiers { /// + /// The identifier for the area flow apertures stochast name. + /// + public const string AreaFlowAperturesStochastName = "doorstroomoppervlak"; + + /// /// The identifier for the bank width stochast name. /// public const string BankWidthStochastName = "bermbreedte"; + + /// + /// The identifier for the constructive strength linear load model stochast name. + /// + public const string ConstructiveStrengthLinearLoadModelStochastName = "lineairebelastingschematiseringsterkte"; + + /// + /// The identifier for the constructive strength quadratic load model stochast name. + /// + public const string ConstructiveStrengthQuadraticLoadModelName = "kwadratischebelastingschematiseringsterkte"; + + /// + /// The identifier for evaluation level elements. + /// + public const string EvaluationLevelElement = "analysehoogte"; + + /// + /// The identifier for the failure collision energy stochast name. + /// + public const string FailureCollisionEnergyStochastName = "aanvaarenergie"; } } \ No newline at end of file Index: Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.IO.Test/StabilityPointStructuresCalculationConfigurationTest.cs =================================================================== diff -u -rf53bbfd52a477ea865f97ce02525b1fe96d05a30 -ra6bfe739a97fac2ea5228a4c46f961a55351e9cb --- Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.IO.Test/StabilityPointStructuresCalculationConfigurationTest.cs (.../StabilityPointStructuresCalculationConfigurationTest.cs) (revision f53bbfd52a477ea865f97ce02525b1fe96d05a30) +++ Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.IO.Test/StabilityPointStructuresCalculationConfigurationTest.cs (.../StabilityPointStructuresCalculationConfigurationTest.cs) (revision a6bfe739a97fac2ea5228a4c46f961a55351e9cb) @@ -51,20 +51,42 @@ // Assert Assert.IsInstanceOf(configuration); Assert.AreEqual(name, configuration.Name); + Assert.IsNull(configuration.AreaFlowApertures); + Assert.IsNull(configuration.BankWidth); + Assert.IsNull(configuration.ConstructiveStrengthLinearLoadModel); + Assert.IsNull(configuration.ConstructiveStrengthQuadraticLoadModel); + Assert.IsNull(configuration.EvaluationLevel); + Assert.IsNull(configuration.FailureCollisionEnergy); } [Test] public void Properties_SetNewValues_NewValuesSet() { // Setup - var bankWidth = new MeanStandardDeviationStochastConfiguration(); var configuration = new StabilityPointStructuresCalculationConfiguration("some name"); + var random = new Random(5432); + var areaFlowApertures = new MeanStandardDeviationStochastConfiguration(); + var bankWidth = new MeanStandardDeviationStochastConfiguration(); + var constructiveStrengthLinearLoadModel = new MeanVariationCoefficientStochastConfiguration(); + var constructiveStrengthQuadraticLoadModel = new MeanVariationCoefficientStochastConfiguration(); + double evaluationLevel = random.NextDouble(); + var failureCollisionEnergy = new MeanVariationCoefficientStochastConfiguration(); // Call + configuration.AreaFlowApertures = areaFlowApertures; configuration.BankWidth = bankWidth; + configuration.ConstructiveStrengthLinearLoadModel = constructiveStrengthLinearLoadModel; + configuration.ConstructiveStrengthQuadraticLoadModel = constructiveStrengthQuadraticLoadModel; + configuration.EvaluationLevel = evaluationLevel; + configuration.FailureCollisionEnergy = failureCollisionEnergy; // Assert + Assert.AreSame(areaFlowApertures, configuration.AreaFlowApertures); Assert.AreSame(bankWidth, configuration.BankWidth); + Assert.AreSame(constructiveStrengthLinearLoadModel, configuration.ConstructiveStrengthLinearLoadModel); + Assert.AreSame(constructiveStrengthQuadraticLoadModel, configuration.ConstructiveStrengthQuadraticLoadModel); + Assert.AreEqual(evaluationLevel, configuration.EvaluationLevel); + Assert.AreSame(failureCollisionEnergy, configuration.FailureCollisionEnergy); } } } \ No newline at end of file Index: Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.IO.Test/StabilityPointStructuresConfigurationSchemaIdentifiersTest.cs =================================================================== diff -u -rf53bbfd52a477ea865f97ce02525b1fe96d05a30 -ra6bfe739a97fac2ea5228a4c46f961a55351e9cb --- Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.IO.Test/StabilityPointStructuresConfigurationSchemaIdentifiersTest.cs (.../StabilityPointStructuresConfigurationSchemaIdentifiersTest.cs) (revision f53bbfd52a477ea865f97ce02525b1fe96d05a30) +++ Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.IO.Test/StabilityPointStructuresConfigurationSchemaIdentifiersTest.cs (.../StabilityPointStructuresConfigurationSchemaIdentifiersTest.cs) (revision a6bfe739a97fac2ea5228a4c46f961a55351e9cb) @@ -30,7 +30,12 @@ public void Properties_Always_ExpectedValues() { // Assert + Assert.AreEqual("doorstroomoppervlak", StabilityPointStructuresConfigurationSchemaIdentifiers.AreaFlowAperturesStochastName); Assert.AreEqual("bermbreedte", StabilityPointStructuresConfigurationSchemaIdentifiers.BankWidthStochastName); + Assert.AreEqual("lineairebelastingschematiseringsterkte", StabilityPointStructuresConfigurationSchemaIdentifiers.ConstructiveStrengthLinearLoadModelStochastName); + Assert.AreEqual("kwadratischebelastingschematiseringsterkte", StabilityPointStructuresConfigurationSchemaIdentifiers.ConstructiveStrengthQuadraticLoadModelName); + Assert.AreEqual("analysehoogte", StabilityPointStructuresConfigurationSchemaIdentifiers.EvaluationLevelElement); + Assert.AreEqual("aanvaarenergie", StabilityPointStructuresConfigurationSchemaIdentifiers.FailureCollisionEnergyStochastName); } } } \ No newline at end of file