Skip to content

Commit 056b5ea

Browse files
committed
namespace functions for 1.7?
1 parent 3a3c4cf commit 056b5ea

File tree

1 file changed

+30
-33
lines changed

1 file changed

+30
-33
lines changed

src/solvers/umfpack.jl

Lines changed: 30 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,9 @@ using StorageOrders
2424
import ..increment, ..increment!, ..decrement, ..decrement!
2525

2626
using SuiteSparse.UMFPACK
27-
using SuiteSparse.UMFPACK: umferror, @isok,
28-
UMFVTypes,
29-
show_umf_ctrl, show_umf_info
30-
import SuiteSparse.UMFPACK: umfpack_numeric!, _AqldivB_kernel!, umfpack_extract, umfpack_symbolic!,
31-
_Aq_ldiv_B!, solve!, umf_lunz
27+
using SuiteSparse.UMFPACK: umferror, @isok, UMFVTypes, show_umf_ctrl, show_umf_info
28+
import SuiteSparse.UMFPACK: umfpack_numeric!, _AqldivB_kernel!,
29+
umfpack_extract, umfpack_symbolic!, _Aq_ldiv_B!, solve!, umf_lunz
3230
using SuiteSparse.LibSuiteSparse
3331
import SuiteSparse.LibSuiteSparse:
3432
SuiteSparse_long,
@@ -88,7 +86,6 @@ import SuiteSparse.LibSuiteSparse:
8886
UMFPACK_ERROR_file_IO,
8987
UMFPACK_ERROR_ordering_failed
9088

91-
9289
const JL_UMFPACK_PRL = UMFPACK_PRL + 1
9390
const JL_UMFPACK_DENSE_ROW = UMFPACK_DENSE_ROW + 1
9491
const JL_UMFPACK_DENSE_COL = UMFPACK_DENSE_COL + 1
@@ -479,10 +476,10 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
479476
n = lu.n
480477
ctrl = lu.control
481478
info = lu.info
482-
res = $sym_r(m, n, colptr, rowval, nzval, tmp, ctrl, info)
479+
res = LibSuiteSparse.$sym_r(m, n, colptr, rowval, nzval, tmp, ctrl, info)
483480
else
484481
qq = minimum(q) == 1 ? q .- one(eltype(q)) : q
485-
res = $symq_r(lu.m, lu.n, colptr, rowval, nzval, qq, tmp, lu.control, lu.info)
482+
res = LibSuiteSparse.$symq_r(lu.m, lu.n, colptr, rowval, nzval, qq, tmp, lu.control, lu.info)
486483
end
487484
repack!()
488485
@isok res
@@ -501,11 +498,11 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
501498
# TODO: Relax ColMajor restriction, and enable transpose tricks
502499
colptr, rowval, nzval, repack! = tempunpack!(lu.A, Sparse(); order = ColMajor())
503500
if q === nothing
504-
res = $sym_c(lu.m, lu.n, colptr, rowval, real(nzval), imag(nzval), tmp,
501+
res = LibSuiteSparse.$sym_c(lu.m, lu.n, colptr, rowval, real(nzval), imag(nzval), tmp,
505502
lu.control, lu.info)
506503
else
507504
qq = minimum(q) == 1 ? q .- one(eltype(q)) : q
508-
res = $symq_c(lu.m, lu.n, colptr, rowval, real(nzval), imag(nzval), qq, tmp, lu.control, lu.info)
505+
res = LibSuiteSparse.$symq_c(lu.m, lu.n, colptr, rowval, real(nzval), imag(nzval), qq, tmp, lu.control, lu.info)
509506
end
510507
repack!()
511508
@isok res
@@ -526,7 +523,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
526523
tmp = Ref{Ptr{Cvoid}}(C_NULL)
527524
# TODO: Relax ColMajor restriction, and enable transpose tricks
528525
colptr, rowval, nzval, repack! = tempunpack!(lu.A, Sparse(); order = ColMajor())
529-
status = $num_r(colptr, rowval, nzval, lu.symbolic, tmp, lu.control, lu.info)
526+
status = LibSuiteSparse.$num_r(colptr, rowval, nzval, lu.symbolic, tmp, lu.control, lu.info)
530527
repack!()
531528
lu.status = status
532529
if status != UMFPACK_WARNING_singular_matrix
@@ -547,7 +544,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
547544
tmp = Ref{Ptr{Cvoid}}(C_NULL)
548545
# TODO: Relax ColMajor restriction, and enable transpose tricks
549546
colptr, rowval, nzval, repack! = tempunpack!(lu.A, Sparse(); order = ColMajor())
550-
status = $num_c(colptr, rowval, real(nzval), imag(nzval), lu.symbolic, tmp,
547+
status = LibSuiteSparse.$num_c(colptr, rowval, real(nzval), imag(nzval), lu.symbolic, tmp,
551548
lu.control, lu.info)
552549
repack!()
553550
lu.status = status
@@ -577,7 +574,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
577574
umfpack_numeric!(lu)
578575
(size(b, 1) == lu.m) && (size(b) == size(x)) || throw(DimensionMismatch())
579576
colptr, rowval, nzval, repack! = tempunpack!(lu.A, Sparse(); order = storageorder(lu.A))
580-
res = $wsol_r(typ, colptr, rowval, nzval,
577+
res = LibSuiteSparse.$wsol_r(typ, colptr, rowval, nzval,
581578
x, b, lu.numeric, lu.control,
582579
lu.info, workspace.Wi, workspace.W)
583580
repack!()
@@ -604,7 +601,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
604601
umfpack_numeric!(lu)
605602
(size(b, 1) == lu.m) && (size(b) == size(x)) || throw(DimensionMismatch())
606603
colptr, rowval, nzval, repack! = tempunpack!(lu.A, Sparse(); order = storageorder(lu.A))
607-
res = $wsol_c(typ, colptr, rowval, nzval, C_NULL, x, C_NULL, b,
604+
res = LibSuiteSparse.$wsol_c(typ, colptr, rowval, nzval, C_NULL, x, C_NULL, b,
608605
C_NULL, lu.numeric, lu.control, lu.info, workspace.Wi, workspace.W)
609606
repack!()
610607
@isok res
@@ -613,13 +610,13 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
613610
end
614611
function det(lu::GBUmfpackLU{Float64})
615612
mx = Ref{Float64}(zero(Float64))
616-
@lock lu @isok($det_r(mx, C_NULL, lu.numeric, lu.info))
613+
@lock lu @isok(LibSuiteSparse.$det_r(mx, C_NULL, lu.numeric, lu.info))
617614
mx[]
618615
end
619616
function det(lu::GBUmfpackLU{ComplexF64})
620617
mx = Ref{Float64}(zero(Float64))
621618
mz = Ref{Float64}(zero(Float64))
622-
@lock lu @isok($det_z(mx, mz, C_NULL, lu.numeric, lu.info))
619+
@lock lu @isok(LibSuiteSparse.$det_z(mx, mz, C_NULL, lu.numeric, lu.info))
623620
complex(mx[], mz[])
624621
end
625622
# function logabsdet(F::GBUmfpackLU{T}) where {T<:Union{Float64,ComplexF64}} # return log(abs(det)) and sign(det)
@@ -645,7 +642,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
645642
n_row = Ref{Int64}(zero(Int64))
646643
n_col = Ref{Int64}(zero(Int64))
647644
nz_diag = Ref{Int64}(zero(Int64))
648-
@isok $lunz_r(lnz, unz, n_row, n_col, nz_diag, lu.numeric)
645+
@isok LibSuiteSparse.$lunz_r(lnz, unz, n_row, n_col, nz_diag, lu.numeric)
649646
(lnz[], unz[], n_row[], n_col[], nz_diag[])
650647
end
651648
function umf_lunz(lu::GBUmfpackLU{ComplexF64})
@@ -654,7 +651,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
654651
n_row = Ref{Int64}(zero(Int64))
655652
n_col = Ref{Int64}(zero(Int64))
656653
nz_diag = Ref{Int64}(zero(Int64))
657-
@isok $lunz_z(lnz, unz, n_row, n_col, nz_diag, lu.numeric)
654+
@isok LibSuiteSparse.$lunz_z(lnz, unz, n_row, n_col, nz_diag, lu.numeric)
658655
(lnz[], unz[], n_row[], n_col[], nz_diag[])
659656
end
660657
function getproperty(lu::GBUmfpackLU{Float64}, d::Symbol)
@@ -665,7 +662,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
665662
Lj = unsafe_wrap(Array, _sizedjlmalloc(lnz, Int64), lnz)
666663
Lx = unsafe_wrap(Array, _sizedjlmalloc(lnz, Float64), lnz)
667664
# L is returned in CSR (compressed sparse row) format
668-
@isok $get_num_r(
665+
@isok LibSuiteSparse.$get_num_r(
669666
Lp, Lj, Lx,
670667
C_NULL, C_NULL, C_NULL,
671668
C_NULL, C_NULL, C_NULL,
@@ -678,7 +675,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
678675
Up = unsafe_wrap(Array, _sizedjlmalloc(n_col + 1, Int64), n_col + 1)
679676
Ui = unsafe_wrap(Array, _sizedjlmalloc(unz, Int64), unz)
680677
Ux = unsafe_wrap(Array, _sizedjlmalloc(unz, Float64), unz)
681-
@isok $get_num_r(
678+
@isok LibSuiteSparse.$get_num_r(
682679
C_NULL, C_NULL, C_NULL,
683680
Up, Ui, Ux,
684681
C_NULL, C_NULL, C_NULL,
@@ -689,7 +686,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
689686
umfpack_numeric!(lu) # ensure the numeric decomposition exists
690687
(lnz, unz, n_row, n_col, nz_diag) = umf_lunz(lu)
691688
P = unsafe_wrap(Array, _sizedjlmalloc(n_row, Int64), n_row)
692-
@isok $get_num_r(
689+
@isok LibSuiteSparse.$get_num_r(
693690
C_NULL, C_NULL, C_NULL,
694691
C_NULL, C_NULL, C_NULL,
695692
P, C_NULL, C_NULL,
@@ -700,7 +697,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
700697
umfpack_numeric!(lu) # ensure the numeric decomposition exists
701698
(lnz, unz, n_row, n_col, nz_diag) = umf_lunz(lu)
702699
Q = unsafe_wrap(Array, _sizedjlmalloc(n_col, Int64), n_col)
703-
@isok $get_num_r(
700+
@isok LibSuiteSparse.$get_num_r(
704701
C_NULL, C_NULL, C_NULL,
705702
C_NULL, C_NULL, C_NULL,
706703
C_NULL, Q, C_NULL,
@@ -711,7 +708,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
711708
umfpack_numeric!(lu) # ensure the numeric decomposition exists
712709
(lnz, unz, n_row, n_col, nz_diag) = umf_lunz(lu)
713710
Rs = unsafe_wrap(Array, _sizedjlmalloc(n_row, Float64), n_row)
714-
@isok $get_num_r(
711+
@isok LibSuiteSparse.$get_num_r(
715712
C_NULL, C_NULL, C_NULL,
716713
C_NULL, C_NULL, C_NULL,
717714
C_NULL, C_NULL, C_NULL,
@@ -732,7 +729,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
732729
Lj = unsafe_wrap(Array, _sizedjlmalloc(lnz, Int64), lnz)
733730
Lx = Vector{Float64}(undef, lnz)
734731
Lz = Vector{Float64}(undef, lnz)
735-
@isok $get_num_z(
732+
@isok LibSuiteSparse.$get_num_z(
736733
Lp, Lj, Lx, Lz,
737734
C_NULL, C_NULL, C_NULL, C_NULL,
738735
C_NULL, C_NULL, C_NULL, C_NULL,
@@ -748,7 +745,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
748745
Ui = unsafe_wrap(Array, _sizedjlmalloc(unz, Int64), unz)
749746
Ux = Vector{Float64}(undef, unz)
750747
Uz = Vector{Float64}(undef, unz)
751-
@isok $get_num_z(
748+
@isok LibSuiteSparse.$get_num_z(
752749
C_NULL, C_NULL, C_NULL, C_NULL,
753750
Up, Ui, Ux, Uz,
754751
C_NULL, C_NULL, C_NULL, C_NULL,
@@ -762,7 +759,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
762759
umfpack_numeric!(lu) # ensure the numeric decomposition exists
763760
(lnz, unz, n_row, n_col, nz_diag) = umf_lunz(lu)
764761
P = unsafe_wrap(Array, _sizedjlmalloc(n_row, Int64), n_row)
765-
@isok $get_num_z(
762+
@isok LibSuiteSparse.$get_num_z(
766763
C_NULL, C_NULL, C_NULL, C_NULL,
767764
C_NULL, C_NULL, C_NULL, C_NULL,
768765
P, C_NULL, C_NULL, C_NULL,
@@ -773,7 +770,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
773770
umfpack_numeric!(lu) # ensure the numeric decomposition exists
774771
(lnz, unz, n_row, n_col, nz_diag) = umf_lunz(lu)
775772
Q = unsafe_wrap(Array, _sizedjlmalloc(n_col, Int64), n_col)
776-
@isok $get_num_z(
773+
@isok LibSuiteSparse.$get_num_z(
777774
C_NULL, C_NULL, C_NULL, C_NULL,
778775
C_NULL, C_NULL, C_NULL, C_NULL,
779776
C_NULL, Q, C_NULL, C_NULL,
@@ -784,7 +781,7 @@ get_num_z = Symbol(umf_name("get_numeric", :ComplexF64))
784781
umfpack_numeric!(lu) # ensure the numeric decomposition exists
785782
(lnz, unz, n_row, n_col, nz_diag) = umf_lunz(lu)
786783
Rs = unsafe_wrap(Array, _sizedjlmalloc(n_row, Float64), n_row)
787-
@isok $get_num_z(
784+
@isok LibSuiteSparse.$get_num_z(
788785
C_NULL, C_NULL, C_NULL, C_NULL,
789786
C_NULL, C_NULL, C_NULL, C_NULL,
790787
C_NULL, C_NULL, C_NULL, C_NULL,
@@ -927,14 +924,14 @@ for Tv in (:Float64, :ComplexF64)
927924
@eval function umfpack_free_symbolic(symbolic::Symbolic, ::Type{$Tv}, ::Type{Int64})
928925
if _isnotnull(symbolic)
929926
r = Ref(symbolic.p)
930-
$_free_symbolic(r)
927+
LibSuiteSparse.$_free_symbolic(r)
931928
end
932929
end
933930
_free_numeric = Symbol(umf_name("free_numeric", Tv))
934931
@eval function umfpack_free_numeric(numeric::Numeric, ::Type{$Tv}, ::Type{Int64})
935932
if _isnotnull(numeric)
936933
r = Ref(numeric.p)
937-
$_free_numeric(r)
934+
LibSuiteSparse.$_free_numeric(r)
938935
end
939936
end
940937

@@ -944,7 +941,7 @@ for Tv in (:Float64, :ComplexF64)
944941
umfpack_symbolic!(lu, q)
945942
old_prl = lu.control[JL_UMFPACK_PRL]
946943
lu.control[JL_UMFPACK_PRL] = level
947-
@isok $_report_symbolic(lu.symbolic, lu.control)
944+
@isok LibSuiteSparse.$_report_symbolic(lu.symbolic, lu.control)
948945
lu.control[JL_UMFPACK_PRL] = old_prl
949946
lu
950947
end
@@ -954,15 +951,15 @@ for Tv in (:Float64, :ComplexF64)
954951
umfpack_numeric!(lu; q)
955952
old_prl = lu.control[JL_UMFPACK_PRL]
956953
lu.control[JL_UMFPACK_PRL] = level
957-
@isok $_report_numeric(lu.numeric, lu.control)
954+
@isok LibSuiteSparse.$_report_numeric(lu.numeric, lu.control)
958955
lu.control[JL_UMFPACK_PRL] = old_prl
959956
lu
960957
end
961958
# the control and info arrays
962959
_defaults = Symbol(umf_name("defaults", Tv))
963960
@eval function get_umfpack_control(::Type{$Tv}, ::Type{Int64})
964961
control = Vector{Float64}(undef, UMFPACK_CONTROL)
965-
$_defaults(control)
962+
LibSuiteSparse.$_defaults(control)
966963
# Put julia's config here
967964
# disable iterative refinement by default Issue #122
968965
control[JL_UMFPACK_IRSTEP] = 0

0 commit comments

Comments
 (0)