Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.IntegrationTests/FailureMechanismTests.cs =================================================================== diff -u -r4745 -r4760 --- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.IntegrationTests/FailureMechanismTests.cs (.../FailureMechanismTests.cs) (revision 4745) +++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.IntegrationTests/FailureMechanismTests.cs (.../FailureMechanismTests.cs) (revision 4760) @@ -90,73 +90,76 @@ /// /// The expected safety factor calculated in version 19.2.1 are different from the actual calculated safety factors. - /// This will be investigated in MWDAM-2128. + /// After solving MWDAM-2128 they should be close. /// [Test] public void TestStabilityOutsideWith1DProfiles() { string projectFilename = Path.Combine(Directory.GetCurrentDirectory(), @"TestData\StabilityOutside1DProfileTest\Actualisatie.damx"); - List allCalculationresults = ComputeStabilityOutsideProject(projectFilename, 59); - Assert.That(allCalculationresults, Has.Count.EqualTo(36)); - Assert.That(allCalculationresults[1].LocationName, Is.EqualTo("RK210-560")); - Assert.That(allCalculationresults[1].CalculationResult, Is.EqualTo(CalculationResult.Succeeded)); - Assert.That(allCalculationresults[1].X, Is.EqualTo(88218.047).Within(tolerance3Decimals)); - Assert.That(allCalculationresults[1].Y, Is.EqualTo(448871.233).Within(tolerance3Decimals)); - Assert.That(allCalculationresults[1].AnalysisType, Is.EqualTo(AnalysisType.NoAdaption)); - Assert.That(allCalculationresults[1].IsUplift, Is.EqualTo(false)); - Assert.That(allCalculationresults[1].ProfileName, Is.EqualTo("Segment_1_1D2")); - Assert.That(allCalculationresults[1].ProfileProbability, Is.EqualTo(2.43)); - Assert.That(allCalculationresults[1].StabilityModel, Is.EqualTo(MStabModelType.Bishop)); - // TODO MWDAM-2128: In version 19.2.1, the safety factor was 1.079 - Assert.That(allCalculationresults[1].SafetyFactor, Is.EqualTo(1.569).Within(tolerance3Decimals)); - Assert.That(allCalculationresults[1].ShoulderHeight, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].ToeAtPolderX, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].ToeAtPolderZ, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].RequiredSafetyFactor, Is.EqualTo(0.900)); - Assert.That(allCalculationresults[1].RiverLevel, Is.EqualTo(-2.090)); - Assert.That(allCalculationresults[1].RiverLevelLow, Is.EqualTo(-2.520)); - Assert.That(allCalculationresults[1].DikeTableHeight, Is.EqualTo(-2.000).Within(tolerance3Decimals)); - Assert.That(allCalculationresults[1].SlopeDampingPiezometricHeightPolderSide, Is.EqualTo(0.000)); - Assert.That(allCalculationresults[1].DikeLength, Is.EqualTo(14.12).Within(tolerance3Decimals * 10)); + List allCalculationResults = ComputeStabilityOutsideProject(projectFilename, 59); + Assert.That(allCalculationResults, Has.Count.EqualTo(36)); + Assert.Multiple(() => + { + Assert.That(allCalculationResults[1].LocationName, Is.EqualTo("RK210-560")); + Assert.That(allCalculationResults[1].CalculationResult, Is.EqualTo(CalculationResult.Succeeded)); + Assert.That(allCalculationResults[1].X, Is.EqualTo(88218.047).Within(tolerance3Decimals)); + Assert.That(allCalculationResults[1].Y, Is.EqualTo(448871.233).Within(tolerance3Decimals)); + Assert.That(allCalculationResults[1].AnalysisType, Is.EqualTo(AnalysisType.NoAdaption)); + Assert.That(allCalculationResults[1].IsUplift, Is.EqualTo(false)); + Assert.That(allCalculationResults[1].ProfileName, Is.EqualTo("Segment_1_1D2")); + Assert.That(allCalculationResults[1].ProfileProbability, Is.EqualTo(2.43)); + Assert.That(allCalculationResults[1].StabilityModel, Is.EqualTo(MStabModelType.Bishop)); + // In version 19.2.1, the safety factor was 1.079 + Assert.That(allCalculationResults[1].SafetyFactor, Is.EqualTo(1.010).Within(tolerance3Decimals)); + Assert.That(allCalculationResults[1].ShoulderHeight, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].ToeAtPolderX, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].ToeAtPolderZ, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].RequiredSafetyFactor, Is.EqualTo(0.900)); + Assert.That(allCalculationResults[1].RiverLevel, Is.EqualTo(-2.090)); + Assert.That(allCalculationResults[1].RiverLevelLow, Is.EqualTo(-2.520)); + Assert.That(allCalculationResults[1].DikeTableHeight, Is.EqualTo(-2.000).Within(tolerance3Decimals)); + Assert.That(allCalculationResults[1].SlopeDampingPiezometricHeightPolderSide, Is.EqualTo(0.000)); + Assert.That(allCalculationResults[1].DikeLength, Is.EqualTo(14.12).Within(tolerance3Decimals * 10)); - Assert.That(allCalculationresults[1].Pl3MinUplift, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].Pl3HeadAdjusted, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].Pl3LocalLocationXMinUplift, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].Pl3LocationXMinUplift, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].Pl3LocationYMinUplift, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].Pl4MinUplift, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].Pl4HeadAdjusted, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].Pl4LocalLocationXMinUplift, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].Pl4LocationXMinUplift, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].Pl4LocationYMinUplift, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].Pl3MinUplift, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].Pl3HeadAdjusted, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].Pl3LocalLocationXMinUplift, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].Pl3LocationXMinUplift, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].Pl3LocationYMinUplift, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].Pl4MinUplift, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].Pl4HeadAdjusted, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].Pl4LocalLocationXMinUplift, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].Pl4LocationXMinUplift, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].Pl4LocationYMinUplift, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].LocalPipingEntryPointX, Is.EqualTo(9.798).Within(tolerance3Decimals)); - Assert.That(allCalculationresults[1].PipingEntryPointX, Is.EqualTo(88216.844).Within(tolerance3Decimals)); - Assert.That(allCalculationresults[1].PipingEntryPointY, Is.EqualTo(448870.287).Within(tolerance3Decimals)); - Assert.That(allCalculationresults[1].LocalPipingExitPointX, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].PipingExitPointX, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].PipingExitPointY, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].SeepageLength, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].ResultMessage, Is.EqualTo("")); - Assert.That(allCalculationresults[1].HeaveFactor, Is.EqualTo(null)); - Assert.That(allCalculationresults[1].Notes, Is.EqualTo("")); - Assert.That(allCalculationresults[1].NumberOfIterations, Is.EqualTo(0)); - Assert.That(allCalculationresults[1].ResultEvaluation, Is.EqualTo(ResultEvaluation.NotEvaluated)); - Assert.That(allCalculationresults[1].UpliftFactor, Is.EqualTo(null)); - - // Check safety factors of few other soil profiles - // TODO MWDAM-2128: In version 19.2.1, safety factors were lower: [4]=1.079, [8]=0.967, [10]=1.046, [11]=1.225 [12]=1.046 - Assert.That(allCalculationresults[4].ProfileName, Is.EqualTo("Segment_1_1D5")); - Assert.That(allCalculationresults[4].SafetyFactor, Is.EqualTo(1.569).Within(tolerance3Decimals)); - Assert.That(allCalculationresults[8].ProfileName, Is.EqualTo("Segment_1_1D9")); - Assert.That(allCalculationresults[8].SafetyFactor, Is.EqualTo(1.558).Within(tolerance3Decimals)); - Assert.That(allCalculationresults[10].ProfileName, Is.EqualTo("Segment_1_1D11")); - Assert.That(allCalculationresults[10].SafetyFactor, Is.EqualTo(1.441).Within(tolerance3Decimals)); - Assert.That(allCalculationresults[11].ProfileName, Is.EqualTo("Segment_1_1D12")); - Assert.That(allCalculationresults[11].SafetyFactor, Is.EqualTo(2.716).Within(tolerance3Decimals)); - Assert.That(allCalculationresults[12].ProfileName, Is.EqualTo("Segment_1_1D13")); - Assert.That(allCalculationresults[12].SafetyFactor, Is.EqualTo(1.705).Within(tolerance3Decimals)); + Assert.That(allCalculationResults[1].LocalPipingEntryPointX, Is.EqualTo(9.798).Within(tolerance3Decimals)); + Assert.That(allCalculationResults[1].PipingEntryPointX, Is.EqualTo(88216.844).Within(tolerance3Decimals)); + Assert.That(allCalculationResults[1].PipingEntryPointY, Is.EqualTo(448870.287).Within(tolerance3Decimals)); + Assert.That(allCalculationResults[1].LocalPipingExitPointX, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].PipingExitPointX, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].PipingExitPointY, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].SeepageLength, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].ResultMessage, Is.EqualTo("")); + Assert.That(allCalculationResults[1].HeaveFactor, Is.EqualTo(null)); + Assert.That(allCalculationResults[1].Notes, Is.EqualTo("")); + Assert.That(allCalculationResults[1].NumberOfIterations, Is.EqualTo(0)); + Assert.That(allCalculationResults[1].ResultEvaluation, Is.EqualTo(ResultEvaluation.NotEvaluated)); + Assert.That(allCalculationResults[1].UpliftFactor, Is.EqualTo(null)); + + // Check safety factors of few other soil profiles + // In version 19.2.1, safety factors were: [4]=1.079, [8]=0.967, [10]=1.046, [11]=1.225 [12]=1.046 + Assert.That(allCalculationResults[4].ProfileName, Is.EqualTo("Segment_1_1D5")); + Assert.That(allCalculationResults[4].SafetyFactor, Is.EqualTo(1.010).Within(tolerance3Decimals)); + Assert.That(allCalculationResults[8].ProfileName, Is.EqualTo("Segment_1_1D9")); + Assert.That(allCalculationResults[8].SafetyFactor, Is.EqualTo(0.964).Within(tolerance3Decimals)); + Assert.That(allCalculationResults[10].ProfileName, Is.EqualTo("Segment_1_1D11")); + Assert.That(allCalculationResults[10].SafetyFactor, Is.EqualTo(0.979).Within(tolerance3Decimals)); + Assert.That(allCalculationResults[11].ProfileName, Is.EqualTo("Segment_1_1D12")); + Assert.That(allCalculationResults[11].SafetyFactor, Is.EqualTo(1.422).Within(tolerance3Decimals)); + Assert.That(allCalculationResults[12].ProfileName, Is.EqualTo("Segment_1_1D13")); + Assert.That(allCalculationResults[12].SafetyFactor, Is.EqualTo(1.100).Within(tolerance3Decimals)); + }); } ///