minimum degree ordering using boost graph library

246 Views Asked by At

I have run the code of minimum degree ordering of boost graph library using the Harwell-boeing formatted matrix (bcsstk01.rsa) as input which is given in the documentation of the code, it also says how to run the code. But when I tried to run another input file, it gives the following error:

boost_1_58_0/boost/pending/bucket_sorter.hpp:119:boost::bucket_sorter<BucketType, ValueType, Bucket, ValueIndexMap>::stack boost::bucket_sorter<BucketType, ValueType, Bucket, ValueIndexMap>::operator[](const BucketType&) [with BucketType = long unsigned int, ValueType = long unsigned int, Bucket = boost::iterator_property_map<int*, boost::vec_adj_list_vertex_id_map<boost::no_property, long unsigned int>, int, int&>, ValueIndexMap = boost::vec_adj_list_vertex_id_map<boost::no_property, long unsigned int>]: Assertion `i < head.size()' failed.
Aborted (core dumped)

I don't understand why this is not running and why this type of error is showing. Please help!

1

There are 1 best solutions below

0
On

it looks like this routine crashes for fully non-sparse matrices. I can repeat this problem for dimension 2 and 3 with fully non-sparse matrices. As soon as the matrix is sparse, the function works.

The function crashes as well, if there are no other elements than the diagonal elements (no call to add_edge()).

Both cases are trivial cases and don't need to be passed to this function.