SuiteSparseGraphBLAS.setfill
— Functionsetfill(A::AbstractGBArray{T, F, N}, x::F2)
Create a new AbstractGBArray with the same underlying data but a new fill x
. The fill type of A
and the type of x
may be different.
SuiteSparseGraphBLAS.setfill!
— Functionsetfill!(A::AbstractGBArray{T, F, N}, x::F)
Modify the fill value of A
. The fill type of A
and the type of x
must be the same.
SuiteSparseGraphBLAS.sparsitystatus
— Functionsparsitystatus(A::AbstractGBArray)::AbstractSparsity
Return the current sparsity of A
, which is one of Dense
, Bitmap
, Sparse
, or Hypersparse
.
SuiteSparseGraphBLAS.format
— Functionformat(A::AbstractGBArray) -> (s::AbstractSparsity, o::StorageOrders.StorageOrder)
Return the sparsity status and storage order of A
as a tuple.
SuiteSparseGraphBLAS.setstorageorder!
— Functionsetstorageorder!(A::AbstractGBArray, o::StorageOrders.StorageOrder)
Set the storage order of A, either StorageOrders.RowMajor()
or StorageOrders.ColMajor()
.
Users must call wait(A)
before this will be reflected in A
, however operations will perform this wait
automatically on input.
SuiteSparseGraphBLAS.gbset
— Functiongbset(A::GBArray, option, value)
gbset(option, value)
Set an option either for a specific GBArray, or globally. The commonly used options are: - :format = [RowMajor() | ColMajor()]
: The global default or array specific column major or row major ordering. - :nthreads = [Integer]
: The global number of OpenMP threads to use. - :burble = [Bool]
: Print diagnostic output. - :sparsity_control = [:full | :bitmap | :sparse | :hypersparse]
: Set the sparsity of a single GBArray.
SuiteSparseGraphBLAS.Descriptor
— TypeDescriptor
Context object which may be optionally passed to many SuiteSparse:GraphBLAS functions.
See the SuiteSparse:GraphBLAS User Guide or the SuiteSparseGraphBLAS.jl docs for more information.
Options
nthreads::Int = Sys.CPU_THREADS ÷ 2
: Specify the maximum number of threads to be used by
a function, defaults to avoid hyperthreading, which is typically most performant.
replace_output
: Clear the output array before assignment.structural_mask::Bool
: Utilize the structure of the mask argument, rather than its values.complement_mask::Bool
: Values which are true in the complement of the mask will be kept.
SuiteSparseGraphBLAS.set_lib!
— Functionset_lib!(path; export_prefs::Bool = false)
Set the shared library path for SuiteSparse:GraphBLAS. Set to "default" to use the provided artifact.
Base.empty!
— Functionempty!(A::AbstractGBArray)
Clear all the entries from the GBArray. Does not modify the type or dimensions.
SuiteSparseGraphBLAS.Complement
— TypeComplement{T}
The complement of a GraphBLAS mask. This wrapper will set the mask argument of a GraphBLAS operation to be the negation of the original mask.
It may be nested an arbitrary number of times.
SuiteSparseGraphBLAS.Structural
— TypeStructural{T}
This wrapper will set a GraphBLAS mask to use the presence of values in the mask rather than their values to determine the mask.
SuiteSparseGraphBLAS.xtype
— Functionxtype(op::GrBOp)::DataType
Determine type of the first argument to a typed operator.
SuiteSparseGraphBLAS.ytype
— Functionytype(op::GrBOp)::DataType
Determine type of the second argument to a typed operator.
SuiteSparseGraphBLAS.ztype
— Functionztype(op::GrBOp)::DataType
Determine type of the output of a typed operator.
SuiteSparseGraphBLAS.gbrand
— Functiongbrand(typeorrange, nrows, ncols, density; kwargs...)::GBMatrix
gbrand(rng::AbstractRNG, typeorrange, nrows, ncols, density; kwargs...)::GBMatrix
Construct a random GBMatrix
, analogous to sprand
from SparseArrays
Arguments
rng::AbstractRNG
: Random number generator for both values and indices.typeorrange
: Either a type such asFloat64
, or a range such as1:10
.
Any input which supports eltype(typeorrange)
.
nrows::Integer
,ncols::Integer
: Dimensions of the result.density::AbstractFloat
: The approximate density of result.
Keywords
symmetric::Bool
: The result matrix is symmetric, Aᵀ = A.pattern::Bool
: The result matrix consists solely ofone(eltype(typeorrange))
.skewsymmetric::Bool
: The result matrix is skew-symmetric, Aᵀ = -A.hermitian::Bool
: The result matrix is hermitian, aᵢⱼ = āⱼᵢ.nodiagonal::Bool
: The result matrix has no values on the diagonal.
Returns
GBMatrix