Re: Adding Harwell-Boeing support in PETSc?
Rich, You could certainly write a "converter" in Fortran if that is easier that then just does the usual MatView() to save it in PETSc binary format for later loading by a PETSc solver code like src/ksp/examples/tutorials. If you do we could add it to src/mat/examples/tests Barry Writing a parallel loader just seems like a huge waste of time, over just reading the ascii in sequentially and then saving as a Petsc matrix for later reading in in parallel. On Tue, 5 Apr 2005, Richard Tran Mills wrote:
Barry Smith wrote:
My understanding is that MatrixMarket format is different from Harwell-Boeing?
Yes, they are different. MatrixMarket format is a coordinate format that is considerably easier to parse than Harwell-Boeing, which was really designed with Fortran in mind. The matrices available at Matrix Market are usually available in both formats.
I could not find a Harwell-Boeing loader in src/mat/examples/tests (though there is a writer). Does anyone have C (PETSc?) code to read in Harwell-Boeing? If so we could merge it into the MatrixMarket (coordiate storage) reader code and then (with a command line switch) read in either format and dump in PETSc format?
There are some freely distributable and modifiable C routines for working with HB files available at
http://math.nist.gov/~KRemington/harwell_io/harwell_io.html
Incorporating some of these routines into a PETSc viewer seems like the best bet. I don't know of anything else in C. I have usually used Saad's SPARSKIT Fortran routines for working with Harwell-Boeing matrices.
Cheers, Richard
participants (1)
-
Barry Smith