/home/kcamus/qaas_runs/169-443-9681/intel/AMG/build/AMG/AMG/seq_mv/csr_matrix.c: 136 - 169
--------------------------------------------------------------------------------

136: {
137:    HYPRE_Int    ierr=0;
138:    HYPRE_Int  num_rows = hypre_CSRMatrixNumRows(matrix);
139:    HYPRE_Int  *A_i = hypre_CSRMatrixI(matrix);
140:    HYPRE_Int  *Arownnz;
141: 
142:    HYPRE_Int i, adiag;
143:    HYPRE_Int irownnz=0;
144: 
145:    for (i=0; i < num_rows; i++)
146:    {
147:       adiag = (A_i[i+1] - A_i[i]);
148:       if(adiag > 0) irownnz++;
149:    }
150: 
151:    hypre_CSRMatrixNumRownnz(matrix) = irownnz;
152: 
153:    if ((irownnz == 0) || (irownnz == num_rows))
154:    {
155:       hypre_CSRMatrixRownnz(matrix) = NULL;
156:    }
157:    else
158:    {
159:       Arownnz = hypre_CTAlloc(HYPRE_Int, irownnz);
160:       irownnz = 0;
161:       for (i=0; i < num_rows; i++)
162:       {
163:          adiag = A_i[i+1]-A_i[i];
164:          if(adiag > 0) Arownnz[irownnz++] = i;
165:       }
166:       hypre_CSRMatrixRownnz(matrix) = Arownnz;
167:    }
168:    return ierr;
169: }
