Lines Matching refs:AI
236 #define MatSeqXAIJReallocateAIJ(Amat, AM, BS2, NROW, ROW, COL, RMAX, AA, AI, AJ, RP, AP, AIMAX, NON… argument
240 PetscInt CHUNKSIZE = 15, new_nz = AI[AM] + CHUNKSIZE, len, *new_i = NULL, *new_j = NULL; \
251 for (ii = 0; ii < ROW + 1; ii++) new_i[ii] = AI[ii]; \
252 for (ii = ROW + 1; ii < AM + 1; ii++) new_i[ii] = AI[ii] + CHUNKSIZE; \
253 PetscCall(PetscArraycpy(new_j, AJ, AI[ROW] + NROW)); \
254 len = (new_nz - CHUNKSIZE - AI[ROW] - NROW); \
255 …PetscCall(PetscArraycpy(new_j + AI[ROW] + NROW + CHUNKSIZE, PetscSafePointerPlusOffset(AJ, AI[ROW]…
256 PetscCall(PetscArraycpy(new_a, AA, BS2 * (AI[ROW] + NROW))); \
257 PetscCall(PetscArrayzero(new_a + BS2 * (AI[ROW] + NROW), BS2 * CHUNKSIZE)); \
258 …PetscCall(PetscArraycpy(new_a + BS2 * (AI[ROW] + NROW + CHUNKSIZE), PetscSafePointerPlusOffset(AA,…
263 AI = Ain->i = new_i; \
266 RP = AJ + AI[ROW]; \
267 AP = AA + BS2 * AI[ROW]; \
275 #define MatSeqXAIJReallocateAIJ_structure_only(Amat, AM, BS2, NROW, ROW, COL, RMAX, AI, AJ, RP, AIM… argument
280 PetscInt CHUNKSIZE = 15, new_nz = AI[AM] + CHUNKSIZE, len, *new_i = NULL, *new_j = NULL; \
290 for (ii = 0; ii < ROW + 1; ii++) new_i[ii] = AI[ii]; \
291 for (ii = ROW + 1; ii < AM + 1; ii++) new_i[ii] = AI[ii] + CHUNKSIZE; \
292 PetscCall(PetscArraycpy(new_j, AJ, AI[ROW] + NROW)); \
293 len = (new_nz - CHUNKSIZE - AI[ROW] - NROW); \
294 PetscCall(PetscArraycpy(new_j + AI[ROW] + NROW + CHUNKSIZE, AJ + AI[ROW] + NROW, len)); \
299 AI = Ain->i = new_i; \
302 RP = AJ + AI[ROW]; \