diff --git a/src/Numerics/LinearAlgebra/Complex/Solvers/ILUTPPreconditioner.cs b/src/Numerics/LinearAlgebra/Complex/Solvers/ILUTPPreconditioner.cs index 6523b625..2e452963 100644 --- a/src/Numerics/LinearAlgebra/Complex/Solvers/ILUTPPreconditioner.cs +++ b/src/Numerics/LinearAlgebra/Complex/Solvers/ILUTPPreconditioner.cs @@ -552,20 +552,14 @@ namespace MathNet.Numerics.LinearAlgebra.Complex.Solvers /// true if performed, otherwise false bool PivotMapFound(Dictionary knownPivots, int currentItem) { - if (knownPivots.ContainsKey(_pivots[currentItem])) + if (knownPivots.TryGetValue(_pivots[currentItem], out var knownPivot) && knownPivot.Equals(currentItem)) { - if (knownPivots[_pivots[currentItem]].Equals(currentItem)) - { - return true; - } + return true; } - if (knownPivots.ContainsKey(currentItem)) + if (knownPivots.TryGetValue(currentItem, out var pivot) && pivot.Equals(_pivots[currentItem])) { - if (knownPivots[currentItem].Equals(_pivots[currentItem])) - { - return true; - } + return true; } return false;