Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/Common/UpliftHelperTests.cs =================================================================== diff -u -r3669 -r3879 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/Common/UpliftHelperTests.cs (.../UpliftHelperTests.cs) (revision 3669) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/Common/UpliftHelperTests.cs (.../UpliftHelperTests.cs) (revision 3879) @@ -43,11 +43,12 @@ Path.Combine(damKernelInput.Location.StabilityOptions.SoilGeometries2DPath, soilGeometry2DName)); damKernelInput.Location.ModelFactors.UpliftCriterionStability = 1.2; - var upliftSituation = UpliftHelper.DetermineStabilityUplift(damKernelInput, false); + var upliftHelper = new UpliftHelper(); + var upliftSituation = upliftHelper.DetermineStabilityUplift(damKernelInput, false); Assert.IsTrue(upliftSituation.IsUplift); damKernelInput.Location.ModelFactors.UpliftCriterionStability = 0.8; - upliftSituation = UpliftHelper.DetermineStabilityUplift(damKernelInput, false); + upliftSituation = upliftHelper.DetermineStabilityUplift(damKernelInput, false); Assert.IsFalse(upliftSituation.IsUplift); } @@ -63,11 +64,12 @@ damKernelInput.SubSoilScenario.SoilProfile2D = soilProfile2D; damKernelInput.Location.ModelFactors.UpliftCriterionStability = 1.2; - var upliftSituation = UpliftHelper.DetermineStabilityUplift(damKernelInput, false); + var upliftHelper = new UpliftHelper(); + var upliftSituation = upliftHelper.DetermineStabilityUplift(damKernelInput, false); Assert.IsTrue(upliftSituation.IsUplift); damKernelInput.Location.ModelFactors.UpliftCriterionStability = 0.8; - upliftSituation = UpliftHelper.DetermineStabilityUplift(damKernelInput, false); + upliftSituation = upliftHelper.DetermineStabilityUplift(damKernelInput, false); Assert.IsFalse(upliftSituation.IsUplift); } Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityOutwards/MacroStabilityOutwardsKernelWrapper.cs =================================================================== diff -u -r3819 -r3879 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityOutwards/MacroStabilityOutwardsKernelWrapper.cs (.../MacroStabilityOutwardsKernelWrapper.cs) (revision 3819) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityOutwards/MacroStabilityOutwardsKernelWrapper.cs (.../MacroStabilityOutwardsKernelWrapper.cs) (revision 3879) @@ -93,7 +93,8 @@ const bool useRiverLevelLow = false; //Determine pl Lines. - var plLines = UpliftHelper.DeterminePlLinesForStability(damKernelInput, useRiverLevelLow, out _); + var upliftHelper = new UpliftHelper(); + var plLines = upliftHelper.DeterminePlLinesForStability(damKernelInput, useRiverLevelLow, out _); var fillMacroStabilityWrapperFromEngine = new FillMacroStabilityWrapperInputFromEngine { Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityInwards/MacroStabilityInwardsKernelWrapper.cs =================================================================== diff -u -r3819 -r3879 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityInwards/MacroStabilityInwardsKernelWrapper.cs (.../MacroStabilityInwardsKernelWrapper.cs) (revision 3819) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityInwards/MacroStabilityInwardsKernelWrapper.cs (.../MacroStabilityInwardsKernelWrapper.cs) (revision 3879) @@ -98,8 +98,9 @@ const bool useRiverLevelLow = false; // Determine whether there is uplift - var plLines = UpliftHelper.DeterminePlLinesForStability(damKernelInput, useRiverLevelLow, out var upliftSituation); - upliftSituation.IsUplift = UpliftHelper.DetermineIsUplift(plLines, damKernelInput.Location, damKernelInput.SubSoilScenario); + var upliftHelper = new UpliftHelper(); + var plLines = upliftHelper.DeterminePlLinesForStability(damKernelInput, useRiverLevelLow, out var upliftSituation); + upliftSituation.IsUplift = upliftHelper.DetermineIsUplift(plLines, damKernelInput.Location, damKernelInput.SubSoilScenario); var fillMacroStabilityWrapperFromEngine = new FillMacroStabilityWrapperInputFromEngine { Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/Common/UpliftHelper.cs =================================================================== diff -u -r3782 -r3879 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/Common/UpliftHelper.cs (.../UpliftHelper.cs) (revision 3782) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/Common/UpliftHelper.cs (.../UpliftHelper.cs) (revision 3879) @@ -38,7 +38,7 @@ /// The dam kernel input. /// if set to true [use rivel level low]. /// The uplift situation - public static UpliftSituation DetermineStabilityUplift(DamKernelInput damKernelInput, bool useRivelLevelLow) + public UpliftSituation DetermineStabilityUplift(DamKernelInput damKernelInput, bool useRivelLevelLow) { UpliftSituation upliftSituation; var plLines = DeterminePlLinesForStability(damKernelInput, useRivelLevelLow, out upliftSituation); @@ -53,7 +53,7 @@ /// if set to true [use rivel level low]. /// The uplift situation. /// pl lines - public static PlLines DeterminePlLinesForStability(DamKernelInput damKernelInput, bool useRivelLevelLow, + public PlLines DeterminePlLinesForStability(DamKernelInput damKernelInput, bool useRivelLevelLow, out UpliftSituation upliftSituation) { var riverLevel = damKernelInput.RiverLevelHigh; @@ -77,7 +77,7 @@ /// The location. /// The sub soil scenario. /// true if there is uplift - public static bool DetermineIsUplift(PlLines plLines, Location location, SoilGeometryProbability subSoilScenario) + public bool DetermineIsUplift(PlLines plLines, Location location, SoilGeometryProbability subSoilScenario) { if (plLines == null) return false; var upliftCriterion = location.ModelFactors.UpliftCriterionStability; @@ -88,7 +88,7 @@ return upliftFactor < upliftCriterion; } - private static double? GetLowestUpliftFactor(SurfaceLine2 surfaceLine, SoilProfile1D soilProfile1D, string soilGeometry2DName, + private double? GetLowestUpliftFactor(SurfaceLine2 surfaceLine, SoilProfile1D soilProfile1D, string soilGeometry2DName, SoilProfile2D soilProfile2D, PlLines plLines, Location location) { var upliftLocationDeterminator = new UpliftLocationDeterminator()