Index: dam failuremechanisms/damPiping/trunk/src/Deltares.DamPiping.Tests/Deltares.DamPiping.Tests.csproj =================================================================== diff -u -r250 -r251 --- dam failuremechanisms/damPiping/trunk/src/Deltares.DamPiping.Tests/Deltares.DamPiping.Tests.csproj (.../Deltares.DamPiping.Tests.csproj) (revision 250) +++ dam failuremechanisms/damPiping/trunk/src/Deltares.DamPiping.Tests/Deltares.DamPiping.Tests.csproj (.../Deltares.DamPiping.Tests.csproj) (revision 251) @@ -15,12 +15,12 @@ x86 - bin\Debug\ + ..\bin\Debug\ TRACE;DEBUG x86 - bin\Release\ + ..\bin\Release\ TRACE true 4 @@ -40,6 +40,7 @@ + Index: dam failuremechanisms/damPiping/trunk/src/Deltares.DamPiping/Deltares.DamPiping.csproj =================================================================== diff -u -r250 -r251 --- dam failuremechanisms/damPiping/trunk/src/Deltares.DamPiping/Deltares.DamPiping.csproj (.../Deltares.DamPiping.csproj) (revision 250) +++ dam failuremechanisms/damPiping/trunk/src/Deltares.DamPiping/Deltares.DamPiping.csproj (.../Deltares.DamPiping.csproj) (revision 251) @@ -15,15 +15,15 @@ true - bin\Debug\ + ..\bin\Debug\ DEBUG;TRACE full x86 prompt MinimumRecommendedRules.ruleset - bin\Release\ + ..\bin\Release\ TRACE true pdbonly @@ -43,6 +43,7 @@ + Index: dam failuremechanisms/damPiping/trunk/src/Deltares.DamPiping/PipingCalculatorBligh.cs =================================================================== diff -u --- dam failuremechanisms/damPiping/trunk/src/Deltares.DamPiping/PipingCalculatorBligh.cs (revision 0) +++ dam failuremechanisms/damPiping/trunk/src/Deltares.DamPiping/PipingCalculatorBligh.cs (revision 251) @@ -0,0 +1,33 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace Deltares.DamPiping +{ + public class PipingCalculatorBligh + { + public const double cDefaultMaxReturnValue = 90.0; + public PipingCalculatorBligh() + { + } + + public double? CalculatePipingFactor() + { + //base.CalculatePipingFactor(location, surfaceLine, soilProfile, waterLevel); + try + { +// if (UpliftLocationAndResult != null) +// { +// return CalculatePipingFactorAtLevel(location, waterLevel, surfaceLine.Geometry.GetZAtX(UpliftLocationAndResult.X)); +// } + return cDefaultMaxReturnValue; + } + catch (Exception e) + { + throw new Exception("An unexpected error occurred", e); + } + } + + } +} Index: dam failuremechanisms/damPiping/trunk/src/Deltares.DamPiping.Tests/PipingCalculatorBlighTests.cs =================================================================== diff -u --- dam failuremechanisms/damPiping/trunk/src/Deltares.DamPiping.Tests/PipingCalculatorBlighTests.cs (revision 0) +++ dam failuremechanisms/damPiping/trunk/src/Deltares.DamPiping.Tests/PipingCalculatorBlighTests.cs (revision 251) @@ -0,0 +1,74 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using NUnit.Framework; + +namespace Deltares.DamPiping.Tests +{ + [TestFixture] + public class PipingCalculatorBlighTests + { + + [Test] + public void CanCalculateThePipingFactorUsingBlighNoUplift() + { + var calculator = new PipingCalculatorBligh(); + var actual = calculator.CalculatePipingFactor(); + + // Phreatic level in profile + // Mass of soil volume above + // dry 6 m x 12 kN/m3 = 72 + // wet 9 m x 16 kN/m3 = 144 + // Total: 72 + 144 = 216 + // Phreatic pressure + // 20 m x 10 kN/m3 = 200 + // UpliftFactor = 216/200 = 1.08 + // UpliftFactor > 1.0, so no piping, so returns cDefaultMaxReturnValue + var expected = PipingCalculatorBligh.cDefaultMaxReturnValue; + + Assert.AreEqual(expected, actual); + } + + // [Test] + // public void CanCalculateThePipingFactorUsingBligh() + // { + // using (var surfaceLine = FactoryForSurfaceLineTests.CreateSurfaceLineTutorial1()) + // using (var dike = new Dike()) + // { + // var soilProfile = FactoryForSoilProfileTests.CreateClaySandProfileForPipingBligh(); + // var modelParametersForPLLines = new ModelParametersForPLLines(); + // modelParametersForPLLines.DampingFactorPL4 = 0.0; + // + // var calculator = new PipingCalculatorBligh(modelParametersForPLLines, + // 1.0, dike.GaugePLLines, dike.Gauges, 1.0); + // + // using (var location = new Location()) + // { + // var actual = calculator.CalculatePipingFactor(location, surfaceLine, soilProfile, 2.0); + // + // // Phreatic level in profile + // // Mass of soil volume above + // // material above bottom sandlayer: 0 to -5 m + // // dry/wet 5 m x 1 kN/m3 = 5 + // // Phreatic pressure (Head PLLine 4 is ca. 1.0 + // // 6.0 m x 10 kN/m3 = 60,0 + // // UpliftFactor = 5/60.0 = 0.0833 + // // UpliftFactor < 1.0, so piping will occur in toe of dike + // // + // // L = ToeOfDike.x - entrypoint.x = 50.5 - 10.0 = 40.5 + // // d = height coverlayer = 5.0 + // // Fluidisationgradient = 0.3 + // // Hc = L / 18 = 40.5 / 18 = 2.25 + // // Ha = 2.0 - 0.0 - (Fluidisationgradient * d) = 2.0 - 0.3 * 5.0 = 0.5 + // // Piping factor = Hc / Ha = 2.25 / 0.5 + // const double expected = 4.5; + // + // Assert.AreEqual(expected, actual); + // } + // } + // } + + + } +} Index: dam failuremechanisms/damPiping/trunk/src/Deltares.DamPiping.Tests/Class1Tests.cs =================================================================== diff -u -r250 -r251 --- dam failuremechanisms/damPiping/trunk/src/Deltares.DamPiping.Tests/Class1Tests.cs (.../Class1Tests.cs) (revision 250) +++ dam failuremechanisms/damPiping/trunk/src/Deltares.DamPiping.Tests/Class1Tests.cs (.../Class1Tests.cs) (revision 251) @@ -11,5 +11,8 @@ bool test = Class1.DoSomething(); Assert.AreEqual(false, test); } + + + } }