HarwellBoeing.jl

A Julia Reader for the Harwell-Boeing and Rutherford-Boeing Formats
Popularity
5 Stars
Updated Last
1 Year Ago
Started In
April 2014

A Julia reader for the Harwell-Boeing and Rutherford-Boeing formats

build-gh build-cirrus

Installing

julia> ]
pkg> add HarwellRutherfordBoeing
pkg> test HarwellRutherfordBoeing

Obtaining the Harwell-Boeing Collection

Retrieve the systems from the Harwell-Boeing Collection.

Obtaining Matrices and Supplementary Data in Rutherford-Boeing Format

The best source is the University of Florida Sparse Matrix Collection.

Example

using HarwellRutherfordBoeing
M = HarwellBoeingMatrix("well1850.rra")
Harwell-Boeing matrix WELL1850 of type RRA
1850 rows, 712 cols, 8758 nonzeros
1 right-hand sides, 0 guesses, 0 solutions
M.matrix
1850×712 SparseMatrixCSC{Float64, Int64} with 8758 stored entries:
⎡⢧⠀⠀⠀⠀⢹⠀⠀⠘⡆⠀⢳⠀⠀⡇⎤
⎢⣼⡀⠀⠀⠀⢸⡀⠀⠀⡇⠀⣸⡀⠀⡇⎥
⎢⠈⣧⠀⠀⠀⠀⡇⠀⠀⢹⠀⠈⡇⠀⡇⎥
⎢⠀⠻⡄⠀⠀⠀⢧⠀⠀⢸⠀⠀⢧⠀⡇⎥
⎢⠈⠳⣧⠀⠀⠀⢸⡀⠀⠘⡆⠈⢻⡀⡇⎥
⎢⠀⠀⢸⡄⠀⠀⠀⡇⠀⠀⡇⠀⠈⡇⡇⎥
⎢⠀⠀⠠⣷⠀⠀⠀⢹⠀⠀⢹⠀⠀⣹⡇⎥
⎢⠀⠀⠰⢾⡀⠀⠀⠸⡄⠀⢸⠀⠀⠾⡇⎥
⎢⠀⠀⢀⣨⢧⠀⠀⠀⣇⠀⠘⡆⠀⣈⣇⎥
⎢⠀⠀⢰⠙⢒⠀⠀⠀⢸⠀⠀⡇⠀⡟⣻⎥
⎢⠀⢤⣾⡃⠘⠀⠀⠀⢸⠀⠀⡇⢴⣗⢸⎥
⎢⠀⡔⡄⠃⢸⠀⠀⠀⢸⠀⠀⡇⣴⠛⢸⎥
⎢⠀⠡⡇⠀⢸⠀⠀⠀⢸⠀⠀⡇⢹⠀⢸⎥
⎢⡴⣌⣁⠀⠘⠀⠀⠀⢸⠀⠀⡷⣌⡀⢻⎥
⎢⠀⠀⢈⣷⢘⡆⠀⠀⢸⠀⠀⡇⠀⣿⢸⎥
⎢⠀⢀⣀⢿⢮⡇⠀⠀⢸⠀⠀⡇⢀⣻⢾⎥
⎢⣭⣷⠀⠀⢸⡆⠀⠀⢸⠀⠀⣯⡇⠀⣿⎥
⎢⠰⣼⠆⠀⠘⠇⠀⠀⢸⠀⠀⡷⡴⠀⢸⎥
⎢⠉⠙⠓⢲⣤⠀⠀⠀⢸⠀⠀⡏⠛⢲⣼⎥
⎣⢤⠤⡴⠛⢉⠀⠀⠀⢸⠀⠀⣧⢤⠞⢹⎦
M.rhs'
1×1850 adjoint(::Matrix{Float64}) with eltype Float64:
 6.40676  0.58834  6.40279  0.595772    -3.30846  -2.91383  -2.91705
rb = RutherfordBoeingData("aa3.rb")
Rutherford-Boeing data 1681 of type pra
825 rows, 8627 cols, 70806 nonzeros
rb.data
825×8627 SparseMatrixCSC{Float64, Int64} with 70806 stored entries:
⎡⣿⣾⣿⣿⣿⣿⣻⣾⣿⣾⣿⣷⣿⣿⣿⣿⣿⣾⣿⣿⣿⣿⣿⣿⣷⣾⣿⣾⣿⣾⣟⣿⣿⣻⣿⣿⣿⣿⣷⡿⎤
⎣⢸⣿⠿⣿⢿⢿⣿⡿⣿⣿⣿⣿⣿⣽⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣾⣿⣿⢿⣿⣿⡿⣿⣿⣿⣿⣿⣿⣾⣿⎦

This content is released under the MIT License. MIT license