https://github.com/abelsiqueira/amd.jl
Approximate Minimum Degree Ordering in Julia
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 8 DOI reference(s) in README -
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (9.6%) to scientific vocabulary
Last synced: 10 months ago
·
JSON representation
Repository
Approximate Minimum Degree Ordering in Julia
Basic Info
- Host: GitHub
- Owner: abelsiqueira
- License: other
- Language: Julia
- Default Branch: master
- Size: 27.3 KB
Statistics
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
- Releases: 0
Fork of JuliaSmoothOptimizers/AMD.jl
Created almost 8 years ago
· Last pushed over 6 years ago
https://github.com/abelsiqueira/AMD.jl/blob/master/
# AMD
[](https://travis-ci.org/JuliaSmoothOptimizers/AMD.jl)
[](https://ci.appveyor.com/project/JuliaSmoothOptimizers/amd-jl/branch/master)
[](https://codecov.io/github/JuliaSmoothOptimizers/AMD.jl?branch=master)
Given a square sparse matrix, compute an approximate minimum degree ordering.
This package is an interface to the AMD library of Amestoy, Davis and Duff.
### Installing
```JULIA
Pkg.add("AMD")
Pkg.test("AMD")
```
### Example
In the simplest case:
```JULIA
julia> using AMD
julia> A = sprand(10, 10, .5);
julia> p = amd(A);
```
If statistics on the permutation are of interest and/or for changing the
default control parameters:
```JULIA
julia> meta = Amd{Clong}(); # because A's index type is Int64 on my platform
julia> # optionally change meta.control: ?Amd
julia> p = amd(A, meta)
julia> print(meta)
Control:
dense row parameter: 10.0
aggressive absorption: 1.0
Info:
status: ok
matrix size: 10.0
number of nonzeros: 54.0
pattern symmetry: 0.5
number of nonzeros on diagonal: 6.0
number of nonzeros in A + A': 72.0
number of dense columns: 0.0
memory used: 1408.0
number of garbage collections: 0.0
approx number of nonzers in factor: 38.0
number of float divides: 38.0
number of float * or - for LDL: 114.0
number of float * or - for LU: 190.0
max nonzeros in any column of factor: 8.0
```
AMD computes a fill-reducing permutation based on the sparsity pattern of A +
A. The input pattern can be anything: diagonal entries will be ignored and the
rest will be used to implicitly work on the pattern of A + A. Thus if A is
symmetric, it is sufficient to supply the strict lower or upper triangle only.
### References
1. P. R. Amestoy, T. A. Davis and I. S. Duff. An Approximate Minimum Degree
Ordering Algorithm. *SIAM Journal on Matrix Analysis and Applications*, 17(4),
pp. 886–905, 1996.
Doi [10.1137/S0895479894278952](http://dx.doi.org/10.1137/S0895479894278952)
2. P. R. Amestoy, T. A. Davis, and I. S. Duff. Algorithm 837: An approximate
minimum degree ordering algorithm. *ACM Transactions on Mathematical
Software*, 30(3), pp. 381–388, 2004.
Doi [10.1145/1024074.1024081](http://dx.doi.org/10.1145/1024074.1024081)
Owner
- Name: Abel Soares Siqueira
- Login: abelsiqueira
- Kind: user
- Location: Amsterdam - The Netherlands
- Company: Netherlands eScience Center
- Website: https://abelsiqueira.com
- Twitter: abel_siqueira
- Repositories: 331
- Profile: https://github.com/abelsiqueira