Skip to content

Commit 0a7e297

Browse files
author
Will Kimmerer
authored
Add shallow types and KLU support, initial UMFPACK support as well (#90)
* enable use of Plain Ol' Arrays using shallow pack * port the KLU experiments, expand pack interface slightly * klu working * klu working * KLU can now use GBVector, add a copyto!, real and imag functions extended to collections * followup to prev commit * broaden broadcasting definitions, prep for internal pack * add shallow types, rm gbpointer * finish rm gbpoiinter * enable refactor, pack and unpack improvements + packbroadcast * add klu to testing set up. flesh out shallow types (note: need to add repack interface) * fix #88 * pull in Umfpack work, untested except by hand * rm extraneous kwargs
1 parent f36f7ed commit 0a7e297

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+2756
-415
lines changed

Project.toml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,9 @@ SuiteSparse = "4607b0f0-06f3-5cda-b6b1-a6196a1729e9"
2222
ChainRulesCore = "1"
2323
MacroTools = "0.5"
2424
Preferences = "1"
25-
SpecialFunctions = "2"
2625
SSGraphBLAS_jll = "7.2"
26+
SpecialFunctions = "2"
2727
StorageOrders = "0.2"
2828
julia = "1.6"
29+
KLU = "0.4"
30+

lib/libinternal.jl

Whitespace-only changes.

src/SuiteSparseGraphBLAS.jl

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ using SpecialFunctions: lgamma, gamma, erf, erfc
2323
using Base.Broadcast
2424
using Serialization
2525
using StorageOrders
26+
using KLU
2627

2728
export ColMajor, RowMajor, storageorder #reexports from StorageOrders
2829
include("abstracts.jl")
@@ -31,7 +32,7 @@ include("libutils.jl")
3132
include("../lib/LibGraphBLAS_gen.jl")
3233
using .LibGraphBLAS
3334

34-
include("operators/libgbops.jl")
35+
include("operators/libgbops.jl")
3536

3637
include("gbtypes.jl")
3738
include("types.jl")
@@ -61,7 +62,12 @@ include("vector.jl")
6162
include("matrix.jl")
6263
include("abstractgbarray.jl")
6364
include("random.jl")
64-
#
65+
# Miscellaneous Operations
66+
include("print.jl")
67+
include("pack.jl")
68+
include("unpack.jl")
69+
include("options.jl")
70+
# Core operations (mul, elementwise, etc)
6571
include("operations/operationutils.jl")
6672
include("operations/transpose.jl")
6773
include("operations/mul.jl")
@@ -74,10 +80,6 @@ include("operations/concat.jl")
7480
include("operations/resize.jl")
7581
include("operations/sort.jl")
7682
#
77-
include("print.jl")
78-
include("pack.jl")
79-
include("unpack.jl")
80-
include("options.jl")
8183

8284
include("operations/broadcasts.jl")
8385
include("chainrules/chainruleutils.jl")
@@ -95,6 +97,9 @@ include("misc.jl")
9597
include("mmread.jl")
9698
# include("iterator.jl")
9799
include("oriented.jl")
100+
include("solvers/klu.jl")
101+
include("solvers/umfpack.jl")
102+
include("shallowtypes.jl")
98103

99104
export SparseArrayCompat
100105
export LibGraphBLAS

0 commit comments

Comments
 (0)