Example #1
0
        internal cs CreateSparse(CompressedColumnStorage<T> matrix, List<GCHandle> handles)
        {
            var A = new cs();

            A.m = matrix.RowCount;
            A.n = matrix.ColumnCount;
            A.nz = -1; // CSC format.
            A.nzmax = matrix.NonZerosCount;
            A.p = InteropHelper.Pin(matrix.ColumnPointers, handles);
            A.i = InteropHelper.Pin(matrix.RowIndices, handles);
            A.x = InteropHelper.Pin(matrix.Values, handles);

            return A;
        }
Example #2
0
 public static extern int cs_di_sprealloc(ref cs A, int nzmax);
Example #3
0
 public static extern IntPtr /* css* */ cs_ci_schol(int order, ref cs A);
Example #4
0
 public static extern IntPtr /* csn* */ cs_ci_lu(ref cs A, ref css S, double tol);
Example #5
0
 public static extern int cs_ci_lusol(int order, ref cs A, IntPtr /* double* */ b, double tol);
Example #6
0
 public static extern IntPtr /* csd* */ cs_di_ddone(ref csd D, ref cs C, IntPtr /* void* */ w, int ok);
Example #7
0
 public static extern IntPtr /* int* */ cs_di_idone(IntPtr /* int* */ p, ref cs C, IntPtr /* void* */ w, int ok);
Example #8
0
 public static extern int cs_di_spsolve(ref cs L, ref cs B, int k, IntPtr /* int* */ xi, IntPtr /* double* */ x, IntPtr /* int* */ pinv, int lo);
Example #9
0
 public static extern IntPtr /* cs* */ cs_di_symperm(ref cs A, IntPtr /* int* */ pinv, int values);
Example #10
0
 public static extern IntPtr /* cs* */ cs_di_permute(ref cs A, IntPtr /* int* */ pinv, IntPtr /* int* */ q, int values);
Example #11
0
 public static extern int cs_di_dropzeros(ref cs A);
Example #12
0
 public static extern int cs_di_droptol(ref cs A, double tol);
Example #13
0
 public static extern IntPtr /* csd* */ cs_di_dmperm(ref cs A, int seed);
Example #14
0
 public static extern IntPtr /* csn* */ cs_di_chol(ref cs A, ref css S);
Example #15
0
 public static extern IntPtr /* int* */ cs_di_amd(int order, ref cs A);
Example #16
0
 public static extern int cs_di_scatter(ref cs A, int j, double beta, IntPtr /* int* */ w, IntPtr /* double* */ x, int mark, ref cs C, int nz);
Example #17
0
 public static extern int cs_di_reach(ref cs G, ref cs B, int k, IntPtr /* int* */ xi, IntPtr /* int* */ pinv);
Example #18
0
 public static extern int cs_di_updown(ref cs L, int sigma, ref cs C, IntPtr /* int* */ parent);
Example #19
0
 public static extern int cs_di_ereach(ref cs A, int k, IntPtr /* int* */ parent, IntPtr /* int* */ s, IntPtr /* int* */ w);
Example #20
0
 public static extern IntPtr /* int* */ cs_di_counts(ref cs A, IntPtr /* int* */ parent, IntPtr /* int* */ post, int ata);
Example #21
0
 public static extern IntPtr /* csn* */ cs_di_ndone(ref csn N, ref cs C, IntPtr /* void* */ w, IntPtr /* void* */ x, int ok);
Example #22
0
 public static extern int cs_di_dfs(int j, ref cs G, int top, IntPtr /* int* */ xi, IntPtr /* int* */ pstack, IntPtr /* int* */ pinv);
Example #23
0
 public static extern IntPtr /* cs* */ cs_ci_transpose(ref cs A, int values);
Example #24
0
 public static extern IntPtr /* int* */ cs_di_etree(ref cs A, int ata);
Example #25
0
 public static extern int cs_ci_qrsol(int order, ref cs A, IntPtr /* double* */ b);
Example #26
0
 public static extern int cs_di_fkeep(ref cs A, [MarshalAs(UnmanagedType.FunctionPtr)] dfkeep fkeep, IntPtr /* void* */ other);
Example #27
0
 public static extern IntPtr /* csn* */ cs_ci_qr(ref cs A, ref css S);
Example #28
0
 public static extern IntPtr /* int* */ cs_di_maxtrans(ref cs A, int seed);
Example #29
0
 public static extern IntPtr /* css* */ cs_ci_sqr(int order, ref cs A, int qr);
Example #30
0
 public static extern IntPtr /* csd* */ cs_di_scc(ref cs A);