Lines Matching refs:ndim
46 PetscInt ndim = fft->ndim, *dim = fft->dim; in MatMult_SeqFFTW() local
58 switch (ndim) { in MatMult_SeqFFTW()
84 if (ndim) { in MatMult_SeqFFTW()
85 iodims[ndim - 1].n = (ptrdiff_t)dim[ndim - 1]; in MatMult_SeqFFTW()
86 iodims[ndim - 1].is = iodims[ndim - 1].os = 1; in MatMult_SeqFFTW()
87 for (i = ndim - 2; i >= 0; --i) { in MatMult_SeqFFTW()
92 …fftw->p_forward = fftw_plan_guru64_dft((int)ndim, (fftw_iodim64 *)iodims, 0, NULL, (fftw_complex *… in MatMult_SeqFFTW()
94 if (ndim) { in MatMult_SeqFFTW()
95 iodims[ndim - 1].n = (int)dim[ndim - 1]; in MatMult_SeqFFTW()
96 iodims[ndim - 1].is = iodims[ndim - 1].os = 1; in MatMult_SeqFFTW()
97 for (i = ndim - 2; i >= 0; --i) { in MatMult_SeqFFTW()
102 …fftw->p_forward = fftw_plan_guru_dft((int)ndim, (fftw_iodim *)iodims, 0, NULL, (fftw_complex *)x_a… in MatMult_SeqFFTW()
106 …fftw->p_forward = fftw_plan_dft_r2c(ndim, (int *)dim, (double *)x_array, (fftw_complex *)y_array, … in MatMult_SeqFFTW()
141 PetscInt ndim = fft->ndim, *dim = fft->dim; in MatMultTranspose_SeqFFTW() local
161 switch (ndim) { in MatMultTranspose_SeqFFTW()
186 …fftw->p_backward = fftw_plan_guru64_dft((int)ndim, (fftw_iodim64 *)iodims, 0, NULL, (fftw_complex … in MatMultTranspose_SeqFFTW()
188 …fftw->p_backward = fftw_plan_guru_dft((int)ndim, iodims, 0, NULL, (fftw_complex *)x_array, (fftw_c… in MatMultTranspose_SeqFFTW()
191 …fftw->p_backward = fftw_plan_dft_c2r((int)ndim, (int *)dim, (fftw_complex *)x_array, (double *)y_a… in MatMultTranspose_SeqFFTW()
226 PetscInt ndim = fft->ndim, *dim = fft->dim; in MatMult_MPIFFTW() local
241 switch (ndim) { in MatMult_MPIFFTW()
297 PetscInt ndim = fft->ndim, *dim = fft->dim; in MatMultTranspose_MPIFFTW() local
312 switch (ndim) { in MatMultTranspose_MPIFFTW()
503 PetscInt ndim = fft->ndim, *dim = fft->dim; in MatCreateVecsFFTW_FFTW() local
516 switch (ndim) { in MatCreateVecsFFTW_FFTW()
778 PetscInt ndim = fft->ndim, *dim = fft->dim, n1; in VecScatterPetscToFFTW_FFTW() local
791 switch (ndim) { in VecScatterPetscToFFTW_FFTW()
944 if (dim[ndim - 1] % 2 == 0) NM = 2; in VecScatterPetscToFFTW_FFTW()
951 if (k % dim[ndim - 1] == 0) j += NM; in VecScatterPetscToFFTW_FFTW()
1025 PetscInt ndim = fft->ndim, *dim = fft->dim; in VecScatterFFTWToPetsc_FFTW() local
1038 switch (ndim) { in VecScatterFFTWToPetsc_FFTW()
1185 if (dim[ndim - 1] % 2 == 0) NM = 2; in VecScatterFFTWToPetsc_FFTW()
1192 if (k % dim[ndim - 1] == 0) j += NM; in VecScatterFFTWToPetsc_FFTW()
1227 PetscInt ndim = fft->ndim, *dim = fft->dim; in MatCreate_FFTW() local
1246 pdim = (ptrdiff_t *)calloc(ndim, sizeof(ptrdiff_t)); in MatCreate_FFTW()
1251 for (ctr = 1; ctr < ndim; ctr++) { in MatCreate_FFTW()
1255 if (ctr == ndim - 1) tot_dim *= (dim[ctr] / 2 + 1); in MatCreate_FFTW()
1278 switch (ndim) { in MatCreate_FFTW()
1316 fftw_mpi_local_size(ndim, pdim, comm, &local_n0, &local_0_start); in MatCreate_FFTW()
1321 temp = pdim[ndim - 1]; in MatCreate_FFTW()
1323 pdim[ndim - 1] = temp / 2 + 1; in MatCreate_FFTW()
1325 …fftw_mpi_local_size_transposed(ndim, pdim, comm, &local_n0, &local_0_start, &local_n1, &local_1_st… in MatCreate_FFTW()
1327 … PetscCall(PetscIntCast(2 * (PetscInt)local_n0 * partial_dim * pdim[ndim - 1] / temp, &fft->n)); in MatCreate_FFTW()
1328 N1 = 2 * fft->N * (PetscInt)pdim[ndim - 1] / ((PetscInt)temp); in MatCreate_FFTW()
1330 pdim[ndim - 1] = temp; in MatCreate_FFTW()
1343 fftw->ndim_fftw = ndim; /* This is dimension of fft */ in MatCreate_FFTW()
1346 PetscCall(PetscMalloc1(ndim, &fftw->dim_fftw)); in MatCreate_FFTW()
1349 fftw->iodims = (fftw_iodim64 *)malloc(sizeof(fftw_iodim64) * ndim); in MatCreate_FFTW()
1351 fftw->iodims = (fftw_iodim *)malloc(sizeof(fftw_iodim) * ndim); in MatCreate_FFTW()
1355 for (ctr = 0; ctr < ndim; ctr++) (fftw->dim_fftw)[ctr] = dim[ctr]; in MatCreate_FFTW()