Lines Matching refs:n_neigh

210   PetscMPIInt   n_neigh;  in PCNNCreateCoarseMatrix()  local
214 PetscCall(PetscMPIIntCast(pcis->n_neigh, &n_neigh)); in PCNNCreateCoarseMatrix()
216 PetscCall(PetscMalloc1(n_neigh * n_neigh + 1, &mat)); in PCNNCreateCoarseMatrix()
223 PetscCall(PetscMalloc((n_neigh + 1) * sizeof(PetscScalar *), &pcnn->DZ_IN)); in PCNNCreateCoarseMatrix()
225 PetscCall(PetscMalloc((n_neigh + 1) * sizeof(PetscScalar *), &DZ_OUT)); in PCNNCreateCoarseMatrix()
226 for (i = 0; i < n_neigh; i++) size_of_Z += n_shared[i]; in PCNNCreateCoarseMatrix()
230 for (i = 1; i < n_neigh; i++) { in PCNNCreateCoarseMatrix()
238 for (i = 1; i < n_neigh; i++) { in PCNNCreateCoarseMatrix()
248 PetscCall(PetscMalloc2(n_neigh + 1, &send_request, n_neigh + 1, &recv_request)); in PCNNCreateCoarseMatrix()
249 for (i = 1; i < n_neigh; i++) { in PCNNCreateCoarseMatrix()
268 for (i = 0; i < n_neigh; i++) { in PCNNCreateCoarseMatrix()
272 PetscCallMPI(MPI_Waitany(n_neigh - 1, recv_request + 1, &ind, &stat)); in PCNNCreateCoarseMatrix()
275 mat[ind * n_neigh + 0] = 0.0; in PCNNCreateCoarseMatrix()
276 …for (k = 0; k < n_shared[ind]; k++) mat[ind * n_neigh + 0] += DZ_IN[ind][k] * pcis->work_N[shared[… in PCNNCreateCoarseMatrix()
280 for (j = 1; j < n_neigh; j++) { in PCNNCreateCoarseMatrix()
282 for (i = 0; i < n_neigh; i++) { in PCNNCreateCoarseMatrix()
283 mat[i * n_neigh + j] = 0.0; in PCNNCreateCoarseMatrix()
284 …for (k = 0; k < n_shared[i]; k++) mat[i * n_neigh + j] += DZ_IN[i][k] * pcis->work_N[shared[i][k]]; in PCNNCreateCoarseMatrix()
289 if (n_neigh > 1) { in PCNNCreateCoarseMatrix()
291 PetscCall(PetscMalloc1(n_neigh - 1, &stat)); in PCNNCreateCoarseMatrix()
292 if (n_neigh - 1) PetscCallMPI(MPI_Waitall(n_neigh - 1, &send_request[1], stat)); in PCNNCreateCoarseMatrix()
316 PetscCall(MatMPIAIJSetPreallocation(pcnn->coarse_mat, 1, NULL, n_neigh, NULL)); in PCNNCreateCoarseMatrix()
319 PetscCall(MatSetValues(pcnn->coarse_mat, n_neigh, neigh, n_neigh, neigh, mat, ADD_VALUES)); in PCNNCreateCoarseMatrix()