Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/Deltares.DamEngine.Calculators.Tests.csproj =================================================================== diff -u -r1258 -r1285 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/Deltares.DamEngine.Calculators.Tests.csproj (.../Deltares.DamEngine.Calculators.Tests.csproj) (revision 1258) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/Deltares.DamEngine.Calculators.Tests.csproj (.../Deltares.DamEngine.Calculators.Tests.csproj) (revision 1285) @@ -151,6 +151,12 @@ PreserveNewest + + PreserveNewest + + + PreserveNewest + Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/DikesAssessmentRegional/RegionalScenariosCalculation.cs =================================================================== diff -u -r1212 -r1285 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/DikesAssessmentRegional/RegionalScenariosCalculation.cs (.../RegionalScenariosCalculation.cs) (revision 1212) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/DikesAssessmentRegional/RegionalScenariosCalculation.cs (.../RegionalScenariosCalculation.cs) (revision 1285) @@ -370,17 +370,17 @@ currentSpecification.AssessmentScenarioJobSettings.DikeDrySensitivity = job.DikeDrySensitivity; currentSpecification.AssessmentScenarioJobSettings.HydraulicShortcutType = job.HydraulicShortcutType; var calculator = CreateKernelWrapper(currentSpecification); - switch (job.LoadSituation) + var boezemLevelHbp = job.Location.BoezemLevelHbp; + var boezemLevelLbp = job.Location.BoezemLevelLbp; + // Adapt used waterlevel(s) when needed + if (job.LoadSituation == LoadSituation.Wet) { - case LoadSituation.Dry: - job.Location.BoezemLevelHbp = job.Location.BoezemLevelLbp; - break; - case LoadSituation.Wet: - job.Location.BoezemLevelHbp = job.Location.BoezemLevelTp; - job.Location.BoezemLevelLbp = job.Location.BoezemLevelTp; - break; + job.Location.BoezemLevelHbp = job.Location.BoezemLevelTp; + job.Location.BoezemLevelLbp = job.Location.BoezemLevelTp; } PerformJob(job, calculator, currentSpecification); + job.Location.BoezemLevelHbp = boezemLevelHbp; + job.Location.BoezemLevelLbp = boezemLevelLbp; } /// @@ -399,6 +399,7 @@ currentSpecification.AssessmentScenarioJobSettings.HydraulicShortcutType = job.HydraulicShortcutType; var calculator = CreateKernelWrapper(currentSpecification); // For piping waterlevel needs to be set here. Piping kernel only uses waterlevelhigh which is set from BoezemLevelHbp. + var boezemLevelHbp = job.Location.BoezemLevelHbp; switch (job.LoadSituation) { case LoadSituation.Dry: @@ -408,7 +409,8 @@ job.Location.BoezemLevelHbp = job.Location.BoezemLevelTp; break; } - PerformJob(job, calculator, currentSpecification); + PerformJob(job, calculator, currentSpecification); + job.Location.BoezemLevelHbp = boezemLevelHbp; } else { Index: DamEngine/trunk/src/Deltares.DamEngine.Interface/FillDamFromXmlInput.cs =================================================================== diff -u -r1268 -r1285 --- DamEngine/trunk/src/Deltares.DamEngine.Interface/FillDamFromXmlInput.cs (.../FillDamFromXmlInput.cs) (revision 1268) +++ DamEngine/trunk/src/Deltares.DamEngine.Interface/FillDamFromXmlInput.cs (.../FillDamFromXmlInput.cs) (revision 1285) @@ -624,40 +624,43 @@ private static void AddSoilProfileProbabilities(Io.XmlInput.Segment inputSegment, Segment segment) { - for (int i = 0; i < inputSegment.SoilGeometryProbability.Length; i++) + if (inputSegment.SoilGeometryProbability != null) { - var soilGeometryProbability = new SoilGeometryProbability(); - var inputSoilGeometryProbability = inputSegment.SoilGeometryProbability[i]; - soilGeometryProbability.Probability = inputSoilGeometryProbability.Probability; - if (inputSoilGeometryProbability.FailureMechanismSystemTypeSpecified) + for (int i = 0; i < inputSegment.SoilGeometryProbability.Length; i++) { - soilGeometryProbability.SegmentFailureMechanismType = ConversionHelper.ConvertToFailureMechanismSystemType(inputSoilGeometryProbability.FailureMechanismSystemType); - } - else - { - soilGeometryProbability.SegmentFailureMechanismType = null; - } - soilGeometryProbability.SoilProfileType = ConversionHelper.ConvertToSoilGeometryType(inputSoilGeometryProbability.SoilProfileType); - switch (soilGeometryProbability.SoilProfileType) - { - case SoilProfileType.ProfileType1D: + var soilGeometryProbability = new SoilGeometryProbability(); + var inputSoilGeometryProbability = inputSegment.SoilGeometryProbability[i]; + soilGeometryProbability.Probability = inputSoilGeometryProbability.Probability; + if (inputSoilGeometryProbability.FailureMechanismSystemTypeSpecified) + { + soilGeometryProbability.SegmentFailureMechanismType = ConversionHelper.ConvertToFailureMechanismSystemType(inputSoilGeometryProbability.FailureMechanismSystemType); + } + else + { + soilGeometryProbability.SegmentFailureMechanismType = null; + } + soilGeometryProbability.SoilProfileType = ConversionHelper.ConvertToSoilGeometryType(inputSoilGeometryProbability.SoilProfileType); + switch (soilGeometryProbability.SoilProfileType) + { + case SoilProfileType.ProfileType1D: { soilGeometryProbability.SoilProfile1DName = inputSoilGeometryProbability.SoilProfileName; break; } - case SoilProfileType.ProfileType2D: + case SoilProfileType.ProfileType2D: { soilGeometryProbability.SoilProfile2DName = inputSoilGeometryProbability.SoilProfileName; break; } - case SoilProfileType.ProfileTypeStiFile: + case SoilProfileType.ProfileTypeStiFile: { soilGeometryProbability.StiFileName = inputSoilGeometryProbability.SoilProfileName; break; } - } + } - segment.SoilProfileProbabilities.Add(soilGeometryProbability); + segment.SoilProfileProbabilities.Add(soilGeometryProbability); + } } } Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/TestFiles/RegionalAssessment3.soilmaterials.mdb =================================================================== diff -u Binary files differ Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/Common/PlLinesHelper.cs =================================================================== diff -u -r1258 -r1285 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/Common/PlLinesHelper.cs (.../PlLinesHelper.cs) (revision 1258) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/Common/PlLinesHelper.cs (.../PlLinesHelper.cs) (revision 1285) @@ -79,19 +79,14 @@ (regionalAssessmentScenarioJobSettings.LoadSituation == LoadSituation.Dry)) { // For dry situation other offsets have to be used as in normal situation -// plLinesCreator.PlLineOffsetBelowDikeTopAtRiver = location.PLLineOffsetDryBelowDikeTopAtRiver; Todo Bka: implement as soon as Tom has solved this. -// plLinesCreator.PlLineOffsetBelowDikeTopAtPolder = location.PLLineOffsetDryBelowDikeTopAtPolder; -// plLinesCreator.PlLineOffsetBelowShoulderBaseInside = location.PLLineOffsetDryBelowShoulderBaseInside; -// plLinesCreator.PlLineOffsetBelowDikeToeAtPolder = location.PLLineOffsetDryBelowDikeToeAtPolder; + plLinesCreator.PlLineOffsetBelowDikeTopAtRiver = location.PlLineOffsetDryBelowDikeTopAtRiver; + plLinesCreator.PlLineOffsetBelowDikeTopAtPolder = location.PlLineOffsetDryBelowDikeTopAtPolder; + plLinesCreator.PlLineOffsetBelowShoulderBaseInside = location.PlLineOffsetDryBelowShoulderBaseInside; + plLinesCreator.PlLineOffsetBelowDikeToeAtPolder = location.PlLineOffsetDryBelowDikeToeAtPolder; plLinesCreator.PlLineOffsetBelowDikeCrestMiddle = location.PlLineOffsetDryBelowDikeCrestMiddle; plLinesCreator.PlLineOffsetFactorBelowShoulderCrest = location.PlLineOffsetDryFactorBelowShoulderCrest; plLinesCreator.UsePlLineOffsetBelowDikeCrestMiddle = location.UsePlLineOffsetDryBelowDikeCrestMiddle; plLinesCreator.UsePlLineOffsetFactorBelowShoulderCrest = location.UsePlLineOffsetDryFactorBelowShoulderCrest; - // ToDo temporay check and adjust PolderLevelLow as this is missing in xsd and thus data. Code can be removed as soon as this is fixed MWDAM-1171. - if (location.PolderLevelLow > location.PolderLevel) - { - location.PolderLevelLow = location.PolderLevel - 0.25; - } plLinesCreator.WaterLevelPolder = location.PolderLevelLow; } var plLines = plLinesCreator.CreateAllPlLines(location); Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/TestFiles/RegionalAssessment2.xml =================================================================== diff -u -r1258 -r1285 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/TestFiles/RegionalAssessment2.xml (.../RegionalAssessment2.xml) (revision 1258) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/TestFiles/RegionalAssessment2.xml (.../RegionalAssessment2.xml) (revision 1285) @@ -4,7 +4,7 @@ - + Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/TestFiles/RegionalAssessment3.xml =================================================================== diff -u --- DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/TestFiles/RegionalAssessment3.xml (revision 0) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/TestFiles/RegionalAssessment3.xml (revision 1285) @@ -0,0 +1,12169 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/RegionalAssessment/RegionalScenariosCalculationTests.cs =================================================================== diff -u -r1258 -r1285 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/RegionalAssessment/RegionalScenariosCalculationTests.cs (.../RegionalScenariosCalculationTests.cs) (revision 1258) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/RegionalAssessment/RegionalScenariosCalculationTests.cs (.../RegionalScenariosCalculationTests.cs) (revision 1285) @@ -44,12 +44,18 @@ TestScenario3And7And8And10(7); } - [Test, Category("Work_In_Progress")] + [Test, Category("Slow")] public void TestScenario1And3And5And6And7And8And9And10And11SingleCore() { TestScenario1And3And5And6And7And8And9And10And11(1); } + [Test, Category("Slow")] + public void TestScenario3And4And7And8And10SingleCore() + { + TestScenario3And4And7And8And10(1); + } + private void TestScenario3And7And8And10(int numberOfCores) { const string calcDir = "TestOutAssessment"; @@ -146,42 +152,49 @@ Assert.IsNotNull(outputString); var output = DamXmlSerialization.LoadOutputFromXmlString(outputString); Assert.AreEqual(1, output.Results.CalculationResults.LocationResults.Length); - // expected: 18 results overall: 3 Piping Bligh (scenario 10), 3 UpliftVan (scenario03) and 12 Bishop (scenario 7: 3 results, scenario 8: 9 results) - // Results are per scenario so expect 4 + // expected: 14 * Bishop Dry (scenario 6), 16 * Bishop Wet (scenario08) and 6 * Bishop Dry Hydraulic Shortcut (scenario 5) + // 2 * UpliftVan Dry (scenario 1), 2 * Horizontal Balance (scenario 9), 2 * Piping Dry (scenario 11), + // 2 * UpliftVan Wet (scenario 3), 4 * scenario 7, 2 * Piping Wet (scenario 10) + // Results are per scenario so expect 9 scenarios Assert.AreEqual(9, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult.Length); - // scenario06: 14 results #Bka: not yet Ok, is 16. Safety factors wrong too -// Assert.AreEqual(14, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults.Length); -// Assert.AreEqual("Segment_13005_1D1", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[0].SoilProfileName); -// Assert.AreEqual(1.607, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); -// Assert.AreEqual("Segment_13005_1D3", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[1].SoilProfileName); -// Assert.AreEqual(1.599, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[1].RegionalResult.SafetyFactor, tolerance); -// Assert.AreEqual("Segment_13005_1D5", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[2].SoilProfileName); -// Assert.AreEqual(1.607, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[2].RegionalResult.SafetyFactor, tolerance); -// Assert.AreEqual("Segment_13005_1D6", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[3].SoilProfileName); -// Assert.AreEqual(1.470, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[3].RegionalResult.SafetyFactor, tolerance); -// Assert.AreEqual("Segment_13005_1D7", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[4].SoilProfileName); -// Assert.AreEqual(1.559, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[4].RegionalResult.SafetyFactor, tolerance); -// Assert.AreEqual("Segment_13005_1D8", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[5].SoilProfileName); -// Assert.AreEqual(1.459, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[5].RegionalResult.SafetyFactor, tolerance); -// Assert.AreEqual("Segment_13005_1D9", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[6].SoilProfileName); -// Assert.AreEqual(1.607, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[6].RegionalResult.SafetyFactor, tolerance); -// Assert.AreEqual("Segment_13005_1D10", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[7].SoilProfileName); -// Assert.AreEqual(1.511, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[7].RegionalResult.SafetyFactor, tolerance); -// Assert.AreEqual("Segment_13005_1D11", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[8].SoilProfileName); -// Assert.AreEqual(1.559, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[8].RegionalResult.SafetyFactor, tolerance); -// Assert.AreEqual("Segment_13005_1D12", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[9].SoilProfileName); -// Assert.AreEqual(1.502, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[9].RegionalResult.SafetyFactor, tolerance); -// Assert.AreEqual("Segment_13005_1D17", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[10].SoilProfileName); -// Assert.AreEqual(1.607, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[10].RegionalResult.SafetyFactor, tolerance); -// Assert.AreEqual("Segment_13005_1D18", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[11].SoilProfileName); -// Assert.AreEqual(1.470, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[11].RegionalResult.SafetyFactor, tolerance); -// Assert.AreEqual("Segment_13005_1D19", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[12].SoilProfileName); -// Assert.AreEqual(1.559, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[12].RegionalResult.SafetyFactor, tolerance); -// Assert.AreEqual("Segment_13005_1D20", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[13].SoilProfileName); -// Assert.AreEqual(1.459, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[13].RegionalResult.SafetyFactor, tolerance); + // scenario06: 14 results + Assert.AreEqual(14, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults.Length); + Assert.AreEqual(5, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[0].ScenarioType); + + Assert.AreEqual("Segment_13005_1D1", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[0].SoilProfileName); + Assert.AreEqual(1.607, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D3", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[1].SoilProfileName); + Assert.AreEqual(1.559, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[1].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D5", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[2].SoilProfileName); + Assert.AreEqual(1.607, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[2].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D6", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[3].SoilProfileName); + Assert.AreEqual(1.470, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[3].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D7", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[4].SoilProfileName); + Assert.AreEqual(1.559, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[4].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D8", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[5].SoilProfileName); + Assert.AreEqual(1.459, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[5].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D9", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[6].SoilProfileName); + Assert.AreEqual(1.607, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[6].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D10", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[7].SoilProfileName); + Assert.AreEqual(1.511, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[7].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D11", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[8].SoilProfileName); + Assert.AreEqual(1.559, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[8].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D12", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[9].SoilProfileName); + Assert.AreEqual(1.502, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[9].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D17", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[10].SoilProfileName); + Assert.AreEqual(1.607, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[10].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D18", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[11].SoilProfileName); + Assert.AreEqual(1.470, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[11].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D19", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[12].SoilProfileName); + Assert.AreEqual(1.559, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[12].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D20", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[13].SoilProfileName); + Assert.AreEqual(1.459, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[13].RegionalResult.SafetyFactor, tolerance); + // scenario08: 16 results Assert.AreEqual(16, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[1].RegionalScenarioProfileResults.Length); + Assert.AreEqual(7, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[1].RegionalScenarioProfileResults[0].ScenarioType); + Assert.AreEqual("Segment_13005_1D1", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[1].RegionalScenarioProfileResults[0].SoilProfileName); Assert.AreEqual(0.984, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[1].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); Assert.AreEqual("Segment_13005_1D2", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[1].RegionalScenarioProfileResults[1].SoilProfileName); @@ -215,51 +228,63 @@ Assert.AreEqual("Segment_13005_1D20", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[1].RegionalScenarioProfileResults[15].SoilProfileName); Assert.AreEqual(0.804, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[1].RegionalScenarioProfileResults[15].RegionalResult.SafetyFactor, tolerance); - // scenario05: 6 results #Bka: not yet Ok, is 4. Safety factors wrong too - // Assert.AreEqual(6, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults.Length); - // Assert.AreEqual("Segment_13005_1D2", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[0].SoilProfileName); - // Assert.AreEqual(0.874, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); - // Assert.AreEqual("Segment_13005_1D4", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[1].SoilProfileName); - // Assert.AreEqual(0.873, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[1].RegionalResult.SafetyFactor, tolerance); - // Assert.AreEqual("Segment_13005_1D13", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[2].SoilProfileName); - // Assert.AreEqual(1.122, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[2].RegionalResult.SafetyFactor, tolerance); - // Assert.AreEqual("Segment_13005_1D14", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[3].SoilProfileName); - // Assert.AreEqual(0.972, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[3].RegionalResult.SafetyFactor, tolerance); - // Assert.AreEqual("Segment_13005_1D15", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[4].SoilProfileName); - // Assert.AreEqual(1.178, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[4].RegionalResult.SafetyFactor, tolerance); - // Assert.AreEqual("Segment_13005_1D16", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[5].SoilProfileName); - // Assert.AreEqual(1.015, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[5].RegionalResult.SafetyFactor, tolerance); + // scenario05: 6 results + Assert.AreEqual(6, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults.Length); + Assert.AreEqual(4, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[0].ScenarioType); - // scenario01: 2 results #Bka: not yet Ok. Safety factors wrong - // Assert.AreEqual(2, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults.Length); - // Assert.AreEqual("Segment_13005_1D13", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[0].SoilProfileName); - // Assert.AreEqual(1.379, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); - // Assert.AreEqual("Segment_13005_1D15", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[1].SoilProfileName); - // Assert.AreEqual(1.472, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[1].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D2", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[0].SoilProfileName); + Assert.AreEqual(0.834, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D4", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[1].SoilProfileName); + Assert.AreEqual(0.873, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[1].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D13", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[2].SoilProfileName); + Assert.AreEqual(1.122, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[2].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D14", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[3].SoilProfileName); + Assert.AreEqual(0.972, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[3].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D15", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[4].SoilProfileName); + Assert.AreEqual(1.178, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[4].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D16", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[5].SoilProfileName); + Assert.AreEqual(1.015, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[5].RegionalResult.SafetyFactor, tolerance); - // scenario09: 2 results: not yet Ok. First should be unexpected error, second factor wrong -// Assert.AreEqual(2, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults.Length); -// Assert.AreEqual("Segment_13005_1D13", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[0].SoilProfileName); -// Assert.AreEqual(8, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[0].RegionalResult.CalculationResult, tolerance); -// Assert.AreEqual("Segment_13005_1D15", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[1].SoilProfileName); -// Assert.AreEqual(2.819, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[1].RegionalResult.SafetyFactor, tolerance); + //scenario01: 2 results + Assert.AreEqual(2, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults.Length); + Assert.AreEqual(0, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[0].ScenarioType); + Assert.AreEqual("Segment_13005_1D13", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[0].SoilProfileName); + Assert.AreEqual(1.379, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_13005_1D15", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[1].SoilProfileName); + Assert.AreEqual(1.472, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[1].RegionalResult.SafetyFactor, tolerance); + + // scenario09: 2 results + Assert.AreEqual(2, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults.Length); + Assert.AreEqual(8, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[0].ScenarioType); + + Assert.AreEqual("Segment_13005_1D13", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[0].SoilProfileName); + Assert.AreEqual(8, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[0].RegionalResult.CalculationResult, tolerance); + Assert.AreEqual("Segment_13005_1D15", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[1].SoilProfileName); + Assert.AreEqual(2.819, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[1].RegionalResult.SafetyFactor, tolerance); + // scenario11: 2 results Assert.AreEqual(2, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[5].RegionalScenarioProfileResults.Length); + Assert.AreEqual(10, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[5].RegionalScenarioProfileResults[0].ScenarioType); + Assert.AreEqual("Segment_13005_1D13", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[5].RegionalScenarioProfileResults[0].SoilProfileName); Assert.AreEqual(90.00, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[5].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); Assert.AreEqual("Segment_13005_1D15", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[5].RegionalScenarioProfileResults[1].SoilProfileName); Assert.AreEqual(90.00, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[5].RegionalScenarioProfileResults[1].RegionalResult.SafetyFactor, tolerance); // scenario03: 2 results Assert.AreEqual(2, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[6].RegionalScenarioProfileResults.Length); + Assert.AreEqual(2, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[6].RegionalScenarioProfileResults[0].ScenarioType); + Assert.AreEqual("Segment_13005_1D13", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[6].RegionalScenarioProfileResults[0].SoilProfileName); Assert.AreEqual(0.562, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[6].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); Assert.AreEqual("Segment_13005_1D15", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[6].RegionalScenarioProfileResults[1].SoilProfileName); Assert.AreEqual(0.547, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[6].RegionalScenarioProfileResults[1].RegionalResult.SafetyFactor, tolerance); // scenario07: 4 results Assert.AreEqual(4, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[7].RegionalScenarioProfileResults.Length); + Assert.AreEqual(6, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[7].RegionalScenarioProfileResults[0].ScenarioType); + Assert.AreEqual("Segment_13005_1D13", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[7].RegionalScenarioProfileResults[0].SoilProfileName); Assert.AreEqual(0.668, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[7].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); Assert.AreEqual("Segment_13005_1D14", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[7].RegionalScenarioProfileResults[1].SoilProfileName); @@ -271,10 +296,93 @@ // scenario10: 2 results Assert.AreEqual(2, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[8].RegionalScenarioProfileResults.Length); + Assert.AreEqual(9, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[8].RegionalScenarioProfileResults[0].ScenarioType); Assert.AreEqual("Segment_13005_1D13", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[8].RegionalScenarioProfileResults[0].SoilProfileName); Assert.AreEqual(90.00, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[8].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); Assert.AreEqual("Segment_13005_1D15", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[8].RegionalScenarioProfileResults[1].SoilProfileName); Assert.AreEqual(90.00, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[8].RegionalScenarioProfileResults[1].RegionalResult.SafetyFactor, tolerance); } + + private void TestScenario3And4And7And8And10(int numberOfCores) + { + const string calcDir = "TestOutAssessment3"; + if (Directory.Exists(calcDir)) + { + Directory.Delete(calcDir, true); // delete previous results + } + Directory.CreateDirectory(calcDir); + + const string fileName = @"TestFiles\RegionalAssessment3.xml"; + string inputString = File.ReadAllText(fileName); + inputString = XmlAdapter.ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used + inputString = XmlAdapter.ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used + //inputString = XmlAdapter.ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DAM Tutorial Design.geometries2D.0\"); + inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\RegionalAssessment3.soilmaterials.mdb"); + var engineInterface = new EngineInterface(inputString); + Assert.IsNotNull(engineInterface.DamProjectData); + + engineInterface.DamProjectData.MaxCalculationCores = numberOfCores; + string outputString = engineInterface.Run(); + + Assert.IsNotNull(outputString); + var output = DamXmlSerialization.LoadOutputFromXmlString(outputString); + Assert.AreEqual(1, output.Results.CalculationResults.LocationResults.Length); + // expected: 14 results overall: 2 * scenario 3, 2 * scenario 7, 3 * scenario 10, 1 * scenario 4, 6 * scenario08 + // Results are per scenario so expect 5 + Assert.AreEqual(5, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult.Length); + // scenario03: 3 results + Assert.AreEqual(2, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults.Length); + Assert.AreEqual(2, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[0].ScenarioType); + + Assert.AreEqual("Segment_238_1D1", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[0].SoilProfileName); + Assert.AreEqual(1.178, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_238_1D5", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[1].SoilProfileName); + Assert.AreEqual(1.178, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[0].RegionalScenarioProfileResults[1].RegionalResult.SafetyFactor, tolerance); + + // scenario07: 2 results + Assert.AreEqual(2, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[1].RegionalScenarioProfileResults.Length); + Assert.AreEqual(6, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[1].RegionalScenarioProfileResults[0].ScenarioType); + + Assert.AreEqual("Segment_238_1D1", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[1].RegionalScenarioProfileResults[0].SoilProfileName); + Assert.AreEqual(1.246, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[1].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_238_1D5", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[1].RegionalScenarioProfileResults[1].SoilProfileName); + Assert.AreEqual(1.246, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[1].RegionalScenarioProfileResults[1].RegionalResult.SafetyFactor, tolerance); + + // scenario10: 3 results + Assert.AreEqual(3, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults.Length); + Assert.AreEqual(9, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[0].ScenarioType); + + Assert.AreEqual("Segment_238_1D1", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[0].SoilProfileName); + Assert.AreEqual(1.576, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_238_1D2", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[1].SoilProfileName); + Assert.AreEqual(1.377, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[1].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_238_1D5", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[2].SoilProfileName); + Assert.AreEqual(1.816, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[2].RegionalScenarioProfileResults[2].RegionalResult.SafetyFactor, tolerance); + + // scenario04: 1 result + Assert.AreEqual(1, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults.Length); + Assert.AreEqual(3, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[0].ScenarioType); + + Assert.AreEqual("Segment_238_1D2", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[0].SoilProfileName); + Assert.AreEqual(1.178, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[3].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); + + // scenario08: 6 results + Assert.AreEqual(6, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults.Length); + Assert.AreEqual(7, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[0].ScenarioType); + + Assert.AreEqual("Segment_238_1D2", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[0].SoilProfileName); + Assert.AreEqual(1.235, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[0].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_238_1D3", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[1].SoilProfileName); + Assert.AreEqual(1.166, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[1].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_238_1D4", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[2].SoilProfileName); + Assert.AreEqual(1.163, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[2].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_238_1D6", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[3].SoilProfileName); + Assert.AreEqual(1.264, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[3].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_238_1D7", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[4].SoilProfileName); + Assert.AreEqual(1.166, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[4].RegionalResult.SafetyFactor, tolerance); + Assert.AreEqual("Segment_238_1D8", output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[5].SoilProfileName); + Assert.AreEqual(1.163, output.Results.CalculationResults.LocationResults[0].RegionalScenariosResult.RegionalScenarioResult[4].RegionalScenarioProfileResults[5].RegionalResult.SafetyFactor, tolerance); + + } } } Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityCommon/MStabXmlDoc.cs =================================================================== diff -u -r1246 -r1285 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityCommon/MStabXmlDoc.cs (.../MStabXmlDoc.cs) (revision 1246) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/DamMacroStabilityCommon/MStabXmlDoc.cs (.../MStabXmlDoc.cs) (revision 1285) @@ -111,6 +111,9 @@ location.ShoulderEmbankmentMaterial; failureMechanismParametersMStab.MStabParameters.GeometryCreationOptions.IsUseOriginalPlLineAssignments = location.IsUseOriginalPlLineAssignments; + failureMechanismParametersMStab.MStabParameters.GeometryCreationOptions.IsDrySituation = + (regionalAssessmentScenarioJobSettings.DikeDrySensitivity == DikeDrySensitivity.Dry) && + (regionalAssessmentScenarioJobSettings.LoadSituation == LoadSituation.Dry); failureMechanismParametersMStab.MStabParameters.GeometryCreationOptions.IsDesign = (embankmentDesignParameters != null); failureMechanismParametersMStab.MStabParameters.GeometryCreationOptions.XOffsetSoilGeometry2DOrigin =