0

Я хочу использовать Sparse Blas в Fortran95 только для создания матриц, и я использую конструкцию ввода точки. После создания матрицы с помощью командыSparse Blas in Fortran 95

вызова duscr_begin (п, п, а Истат)

здесь является дескриптор матрицы п по п. После вставки в него значения, как я могу увидеть конечную матрицу с помощью своих дескрипторов a? Поскольку я хочу использовать матрицу для некоторой другой операции, поэтому я хочу видеть матрицу в трех векторах (разреженной) форме (row_index, Col_index, Value).

подробно об этом разреженном Бласе дан в главе 3, можно увидеть здесь

http://www.netlib.org/blas/blast-forum/

ответ

0

на самом деле то, что я просил пред 16 дней, и это не просто писать переменный для тя экрана. Я использовал некоторую библиотеку, известную как Sparse Blas для создания разреженных матриц. Позже, врываясь в библиотеку, я нашел решение своей проблемы, используя ручки, как мы можем получить три вектора row, col и Val. Команды являются чем-то вроде

call accessdata_dsp(mat,a_handle,ierr) 
call get_infoa(mat%INFOA,'n',nnz,ierr) 
allocate(K0_row(nnz),K0_col(nnz),K0_A(nnz)) 
K0_row=mat%IA1; K0_col=mat%IA2; K0_A=mat%A 

так здесь NNZ является не являющимися нулями записи в разреженной матрице, а K0_row, K0_col и K0_A наш требуется три вектор, которые могут быть использованы в дальнейших расчетах.