remove unused SparseMatrix_crop
authorMatthew Fernandez <matthew.fernandez@gmail.com>
Mon, 31 May 2021 16:38:20 +0000 (09:38 -0700)
committerMatthew Fernandez <matthew.fernandez@gmail.com>
Sun, 6 Jun 2021 18:06:37 +0000 (11:06 -0700)
lib/sparse/SparseMatrix.c
lib/sparse/SparseMatrix.h

index 23eafc37b4a391655c670c718fd0a6e90f283534..5b0956303070a2b344cd62fd65f748fb3058b7f6 100644 (file)
@@ -2120,75 +2120,6 @@ SparseMatrix SparseMatrix_apply_fun(SparseMatrix A, double (*fun)(double x)){
   return A;
 }
 
-SparseMatrix SparseMatrix_crop(SparseMatrix A, real epsilon){
-  int i, j, *ia, *ja, nz, sta;
-
-  if (!A) return A;
-
-  nz = 0;
-  ia = A->ia;
-  ja = A->ja;
-  sta = ia[0];
-  switch (A->type){
-  case MATRIX_TYPE_REAL:{
-    real *a = (real*) A->a;
-    for (i = 0; i < A->m; i++){
-      for (j = sta; j < ia[i+1]; j++){
-       if (fabs(a[j]) > epsilon){
-         ja[nz] = ja[j];
-         a[nz++] = a[j];
-       }
-      }
-      sta = ia[i+1];
-      ia[i+1] = nz;
-    }
-    A->nz = nz;
-    break;
-  }
-  case MATRIX_TYPE_COMPLEX:{
-    real *a = (real*) A->a;
-    for (i = 0; i < A->m; i++){
-      for (j = sta; j < ia[i+1]; j++){
-       if (sqrt(a[2*j]*a[2*j]+a[2*j+1]*a[2*j+1]) > epsilon){
-         ja[nz] = ja[j];
-         a[2*nz] = a[2*j];
-         a[2*nz+1] = a[2*j+1];
-         nz++;
-       }
-      }
-      sta = ia[i+1];
-      ia[i+1] = nz;
-    }
-    A->nz = nz;
-    break;
-  }
-  case MATRIX_TYPE_INTEGER:{
-    int *a = (int*) A->a;
-    for (i = 0; i < A->m; i++){
-      for (j = sta; j < ia[i+1]; j++){
-       if (abs(a[j]) > epsilon){
-         ja[nz] = ja[j];
-         a[nz++] = a[j];
-       }
-      }
-      sta = ia[i+1];
-      ia[i+1] = nz;
-    }
-    A->nz = nz;
-    break;
-  }
-  case MATRIX_TYPE_PATTERN:{
-    break;
-  }
-  case MATRIX_TYPE_UNKNOWN:
-    return NULL;
-  default:
-    return NULL;
-  }
-
-  return A;
-}
-
 SparseMatrix SparseMatrix_copy(SparseMatrix A){
   SparseMatrix B;
   if (!A) return A;
index 1adbbf8ae2bab3f18047365854295be226656a22..6a20dcbf2b7b709e5fed6592079274bdf9600056 100644 (file)
@@ -86,7 +86,6 @@ void SparseMatrix_multiply_dense(SparseMatrix A, int ATranspose, real *v, int vT
 SparseMatrix SparseMatrix_apply_fun(SparseMatrix A, double (*fun)(double x));/* for real only! */
 SparseMatrix SparseMatrix_copy(SparseMatrix A);
 int SparseMatrix_has_diagonal(SparseMatrix A);
-SparseMatrix SparseMatrix_crop(SparseMatrix A, real epsilon);/*remove any entry <= epsilon*/
 SparseMatrix SparseMatrix_scaled_by_vector(SparseMatrix A, real *v, int apply_to_row);
 SparseMatrix SparseMatrix_make_undirected(SparseMatrix A);/* make it strictly low diag only, and set flag to undirected */
 int SparseMatrix_connectedQ(SparseMatrix A);