diff --git a/main/ejml-core/src/org/ejml/data/DMatrixSparseCSC.java b/main/ejml-core/src/org/ejml/data/DMatrixSparseCSC.java index 034d1d28d..8eb38b12f 100644 --- a/main/ejml-core/src/org/ejml/data/DMatrixSparseCSC.java +++ b/main/ejml-core/src/org/ejml/data/DMatrixSparseCSC.java @@ -231,7 +231,9 @@ public void set( int row, int col, double val ) { if (row < 0 || row >= numRows || col < 0 || col >= numCols) throw new IllegalArgumentException("Outside of matrix bounds"); - unsafe_set(row, col, val); + if (val != 0.0) { + unsafe_set(row, col, val); + } } @Override diff --git a/main/ejml-core/src/org/ejml/data/DMatrixSparseTriplet.java b/main/ejml-core/src/org/ejml/data/DMatrixSparseTriplet.java index 67cd73042..5e4e69b3d 100644 --- a/main/ejml-core/src/org/ejml/data/DMatrixSparseTriplet.java +++ b/main/ejml-core/src/org/ejml/data/DMatrixSparseTriplet.java @@ -154,7 +154,9 @@ public void set( int row, int col, double value ) { if (row < 0 || row >= numRows || col < 0 || col >= numCols) throw new IllegalArgumentException("Outside of matrix bounds"); - unsafe_set(row, col, value); + if (value != 0.0) { + unsafe_set(row, col, value); + } } /** @@ -169,7 +171,7 @@ public void unsafe_set( int row, int col, double value ) { int index = nz_index(row, col); if (index < 0) addItem(row, col, value); - else { + else if (value != 0.0) { nz_value.data[index] = value; } }