Ошибка сортировки образца CuSolverRf

У меня возникли проблемы с образцом CUSolverRf для решения разреженной матрицы 196530 x 196530 с матрицей 2530239 ннц.

Я еще не пробовал со значениями вектора B (проблема в другой раз), и у меня уже есть ошибка:

Ошибка (проверка сортировки столбца не выполнена): (csrColInd 1= 2)> = (csrColInd [2] = 2)

Ошибка (проверка сортировки столбца не выполнена): (csrColInd[3]=3) = (csrColInd[4]=3)

Ошибка (проверка сортировки столбца не выполнена): (csrColInd[5]=2251) >= (csrColInd[6]=2251)

Ошибка (проверка сортировки столбца не выполнена): (csrColInd[7]=2252) >= (csrColInd[8]=2252)

Ошибка (проверка сортировки столбца не выполнена): (csrColInd[9]=4501) >= (csrColInd[10]=4501)

Я попытался изолировать проблему и, по моему анализу, сузил источник ошибок до процедуры "qsort.c", которая сортирует симметризованный шаблон.

Кто-нибудь, пожалуйста, посоветуйте, что я могу сделать, чтобы преодолеть ошибку?

И примечание: могу ли я и как добавить значения B позже? Спасибо.

Необработанные данные:

196530 196530 2530239
1 1 -26860.49266
2 1 11773.49315
3 1 557.7137436
2251 1 11734.57775
2252 1 2237.629363
4501 1 557.0786545
1 2 11714.30627
2 2 -37958.69476
....

1 ответ

Решение

Проанализировал программу построчно и обнаружил, что причина ошибки была в первой строке файла данных:

%%MatrixMarket matrix coordinate real symmetric

Я предположил, что "%%" перед оператором было для компьютера, чтобы игнорировать строку.

Матрица, которую я предоставил, была не симметричной, что вызвало вышеуказанную ошибку. Программа работает, когда слово "симметричный" было заменено на "общее"

Надеюсь, этот урок поможет другим, если они столкнутся с той же проблемой.

Другие вопросы по тегам