Lines Matching refs:result

28 static PetscErrorCode spbas_cholesky_garbage_collect(spbas_matrix *result,         /* I/O: the Chol…  in spbas_cholesky_garbage_collect()  argument
43 PetscInt nrows = result->nrows; in spbas_cholesky_garbage_collect()
49 PetscInt n_alloc_now = result->n_alloc_icol; in spbas_cholesky_garbage_collect()
50 PetscInt *alloc_icol_old = result->alloc_icol; in spbas_cholesky_garbage_collect()
51 PetscScalar *alloc_val_old = result->alloc_val; in spbas_cholesky_garbage_collect()
63 n_alloc_ok += result->row_nnz[i]; in spbas_cholesky_garbage_collect()
70 if (!result->row_nnz[i]) { in spbas_cholesky_garbage_collect()
89 if (n_alloc_max != n_alloc_est && n_alloc < result->n_alloc_icol) n_alloc = result->n_alloc_icol; in spbas_cholesky_garbage_collect()
112 … PetscCall(PetscIntCast(result->icols[i] - result->alloc_icol + result->row_nnz[i], n_alloc_used)); in spbas_cholesky_garbage_collect()
116 PetscCall(PetscIntCast(result->icols[i] - result->alloc_icol, &i_here)); in spbas_cholesky_garbage_collect()
117 i_last = i_here + result->row_nnz[i]; in spbas_cholesky_garbage_collect()
118 if (result->row_nnz[i] > 0) { in spbas_cholesky_garbage_collect()
119 if (*n_alloc_used > i_here || i_last > n_alloc) n_rescue += result->row_nnz[i]; in spbas_cholesky_garbage_collect()
121 if (i < i_row) *n_alloc_used += result->row_nnz[i]; in spbas_cholesky_garbage_collect()
135 … PetscCall(PetscIntCast(result->icols[i] - result->alloc_icol + result->row_nnz[i], n_alloc_used)); in spbas_cholesky_garbage_collect()
139 PetscCall(PetscIntCast(result->icols[i] - result->alloc_icol, &i_here)); in spbas_cholesky_garbage_collect()
140 i_last = i_here + result->row_nnz[i]; in spbas_cholesky_garbage_collect()
141 if (result->row_nnz[i] > 0) { in spbas_cholesky_garbage_collect()
143 PetscCall(PetscArraycpy(&icol_rescue[n_rescue], result->icols[i], result->row_nnz[i])); in spbas_cholesky_garbage_collect()
144 PetscCall(PetscArraycpy(&val_rescue[n_rescue], result->values[i], result->row_nnz[i])); in spbas_cholesky_garbage_collect()
145 n_rescue += result->row_nnz[i]; in spbas_cholesky_garbage_collect()
148 if (i < i_row) *n_alloc_used += result->row_nnz[i]; in spbas_cholesky_garbage_collect()
156 if (n_alloc != result->n_alloc_icol) { in spbas_cholesky_garbage_collect()
157 n_copy = PetscMin(n_alloc, result->n_alloc_icol); in spbas_cholesky_garbage_collect()
162 PetscCall(PetscMalloc1(n_alloc, &result->alloc_icol)); in spbas_cholesky_garbage_collect()
163 PetscCall(PetscArraycpy(result->alloc_icol, alloc_icol_old, n_copy)); in spbas_cholesky_garbage_collect()
166 result->n_alloc_icol = n_alloc; in spbas_cholesky_garbage_collect()
168 result->icols[i] = result->alloc_icol + (result->icols[i] - alloc_icol_old); in spbas_cholesky_garbage_collect()
169 result->values[i] = result->alloc_val + (result->icols[i] - result->alloc_icol); in spbas_cholesky_garbage_collect()
176 PetscCall(PetscMalloc1(n_alloc, &result->alloc_val)); in spbas_cholesky_garbage_collect()
177 PetscCall(PetscArraycpy(result->alloc_val, alloc_val_old, n_copy)); in spbas_cholesky_garbage_collect()
180 result->n_alloc_val = n_alloc; in spbas_cholesky_garbage_collect()
181 …for (i = 0; i < nrows; i++) result->values[i] = result->alloc_val + (result->icols[i] - result->al… in spbas_cholesky_garbage_collect()
194 … PetscCall(PetscIntCast(result->icols[i] - result->alloc_icol + result->row_nnz[i], n_alloc_used)); in spbas_cholesky_garbage_collect()
198 PetscCall(PetscIntCast(result->icols[i] - result->alloc_icol, &i_here)); in spbas_cholesky_garbage_collect()
199 i_last = i_here + result->row_nnz[i]; in spbas_cholesky_garbage_collect()
201 result->icols[i] = result->alloc_icol + *n_alloc_used; in spbas_cholesky_garbage_collect()
202 result->values[i] = result->alloc_val + *n_alloc_used; in spbas_cholesky_garbage_collect()
204 if (result->row_nnz[i] > 0) { in spbas_cholesky_garbage_collect()
206 PetscCall(PetscArraycpy(result->icols[i], &icol_rescue[n_rescue], result->row_nnz[i])); in spbas_cholesky_garbage_collect()
207 PetscCall(PetscArraycpy(result->values[i], &val_rescue[n_rescue], result->row_nnz[i])); in spbas_cholesky_garbage_collect()
209 n_rescue += result->row_nnz[i]; in spbas_cholesky_garbage_collect()
211 for (j = 0; j < result->row_nnz[i]; j++) { in spbas_cholesky_garbage_collect()
212 result->icols[i][j] = result->alloc_icol[i_here + j]; in spbas_cholesky_garbage_collect()
213 result->values[i][j] = result->alloc_val[i_here + j]; in spbas_cholesky_garbage_collect()
216 if (i < i_row) *n_alloc_used += result->row_nnz[i]; in spbas_cholesky_garbage_collect()