diff --git a/src/Numerics/LinearAlgebra/Complex/SparseVector.cs b/src/Numerics/LinearAlgebra/Complex/SparseVector.cs
index 4732584c..8afc4d82 100644
--- a/src/Numerics/LinearAlgebra/Complex/SparseVector.cs
+++ b/src/Numerics/LinearAlgebra/Complex/SparseVector.cs
@@ -1260,6 +1260,16 @@ namespace MathNet.Numerics.LinearAlgebra.Complex
#region System.Object override
+ public override string ToString(string format, IFormatProvider formatProvider)
+ {
+ if (Count > 20)
+ {
+ return String.Format("SparseVectorOfComplex({0},{1},{2})", Count, NonZerosCount, GetHashCode());
+ }
+
+ return base.ToString(format, formatProvider);
+ }
+
///
/// Check equality. If this is regular vector, then check by base implementation. If Sparse - use own method.
///
diff --git a/src/Numerics/LinearAlgebra/Complex32/SparseVector.cs b/src/Numerics/LinearAlgebra/Complex32/SparseVector.cs
index 8bd7a623..e1326c25 100644
--- a/src/Numerics/LinearAlgebra/Complex32/SparseVector.cs
+++ b/src/Numerics/LinearAlgebra/Complex32/SparseVector.cs
@@ -1290,6 +1290,16 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32
#region System.Object override
+ public override string ToString(string format, IFormatProvider formatProvider)
+ {
+ if (Count > 20)
+ {
+ return String.Format("SparseVectorOfComplex32({0},{1},{2})", Count, NonZerosCount, GetHashCode());
+ }
+
+ return base.ToString(format, formatProvider);
+ }
+
///
/// Check equality. If this is regular vector, then check by base implementation. If Sparse - use own method.
///
diff --git a/src/Numerics/LinearAlgebra/Double/SparseVector.cs b/src/Numerics/LinearAlgebra/Double/SparseVector.cs
index f5fd4fd1..911dbe64 100644
--- a/src/Numerics/LinearAlgebra/Double/SparseVector.cs
+++ b/src/Numerics/LinearAlgebra/Double/SparseVector.cs
@@ -1320,6 +1320,16 @@ namespace MathNet.Numerics.LinearAlgebra.Double
#region System.Object override
+ public override string ToString(string format, IFormatProvider formatProvider)
+ {
+ if (Count > 20)
+ {
+ return String.Format("SparseVectorOfDouble({0},{1},{2})", Count, NonZerosCount, GetHashCode());
+ }
+
+ return base.ToString(format, formatProvider);
+ }
+
///
/// Returns a hash code for this instance.
///
diff --git a/src/Numerics/LinearAlgebra/Single/SparseVector.cs b/src/Numerics/LinearAlgebra/Single/SparseVector.cs
index f7ade9c8..3b88434c 100644
--- a/src/Numerics/LinearAlgebra/Single/SparseVector.cs
+++ b/src/Numerics/LinearAlgebra/Single/SparseVector.cs
@@ -1330,6 +1330,16 @@ namespace MathNet.Numerics.LinearAlgebra.Single
#region System.Object override
+ public override string ToString(string format, IFormatProvider formatProvider)
+ {
+ if (Count > 20)
+ {
+ return String.Format("SparseVectorOfSingle({0},{1},{2})", Count, NonZerosCount, GetHashCode());
+ }
+
+ return base.ToString(format, formatProvider);
+ }
+
///
/// Returns a hash code for this instance.
///