Lines Matching refs:fout
409 static PetscErrorCode VecDuplicate_FFTW_fout(Vec fout, Vec *fout_new) in VecDuplicate_FFTW_fout() argument
414 PetscCall(PetscObjectQuery((PetscObject)fout, "FFTmatrix", (PetscObject *)&A)); in VecDuplicate_FFTW_fout()
477 PetscErrorCode MatCreateVecsFFTW_FFTW(Mat A, Vec *fin, Vec *fout, Vec *bout) in MatCreateVecsFFTW_FFTW() argument
493 if (fout) PetscCall(VecCreateSeq(PETSC_COMM_SELF, fft->N, fout)); in MatCreateVecsFFTW_FFTW()
497 if (fout) PetscCall(VecCreateSeq(PETSC_COMM_SELF, fft->n, fout)); in MatCreateVecsFFTW_FFTW()
531 if (fout) { in MatCreateVecsFFTW_FFTW()
535 PetscCall(VecCreateMPIWithArray(comm, 1, n1, N1, (const PetscScalar *)data_fout, fout)); in MatCreateVecsFFTW_FFTW()
536 PetscCall(PetscObjectCompose((PetscObject)*fout, "FFTmatrix", (PetscObject)A)); in MatCreateVecsFFTW_FFTW()
537 (*fout)->ops->duplicate = VecDuplicate_FFTW_fout; in MatCreateVecsFFTW_FFTW()
538 (*fout)->ops->destroy = VecDestroy_MPIFFTW; in MatCreateVecsFFTW_FFTW()
564 if (fout) { in MatCreateVecsFFTW_FFTW()
566 PetscCall(VecCreateMPIWithArray(comm, 1, (PetscInt)n1, N1, (PetscScalar *)data_fout, fout)); in MatCreateVecsFFTW_FFTW()
567 PetscCall(PetscObjectCompose((PetscObject)*fout, "FFTmatrix", (PetscObject)A)); in MatCreateVecsFFTW_FFTW()
568 (*fout)->ops->duplicate = VecDuplicate_FFTW_fout; in MatCreateVecsFFTW_FFTW()
569 (*fout)->ops->destroy = VecDestroy_MPIFFTW; in MatCreateVecsFFTW_FFTW()
588 if (fout) { in MatCreateVecsFFTW_FFTW()
590 … PetscCall(VecCreateMPIWithArray(comm, 1, fft->n, fft->N, (const PetscScalar *)data_fout, fout)); in MatCreateVecsFFTW_FFTW()
591 PetscCall(PetscObjectCompose((PetscObject)*fout, "FFTmatrix", (PetscObject)A)); in MatCreateVecsFFTW_FFTW()
592 (*fout)->ops->duplicate = VecDuplicate_FFTW_fout; in MatCreateVecsFFTW_FFTW()
593 (*fout)->ops->destroy = VecDestroy_MPIFFTW; in MatCreateVecsFFTW_FFTW()
616 if (fout) { in MatCreateVecsFFTW_FFTW()
618 PetscCall(VecCreateMPIWithArray(comm, 1, n1, N1, (PetscScalar *)data_fout, fout)); in MatCreateVecsFFTW_FFTW()
619 PetscCall(PetscObjectCompose((PetscObject)*fout, "FFTmatrix", (PetscObject)A)); in MatCreateVecsFFTW_FFTW()
620 (*fout)->ops->duplicate = VecDuplicate_FFTW_fout; in MatCreateVecsFFTW_FFTW()
621 (*fout)->ops->destroy = VecDestroy_MPIFFTW; in MatCreateVecsFFTW_FFTW()
639 if (fout) { in MatCreateVecsFFTW_FFTW()
641 … PetscCall(VecCreateMPIWithArray(comm, 1, fft->n, fft->N, (const PetscScalar *)data_fout, fout)); in MatCreateVecsFFTW_FFTW()
642 PetscCall(PetscObjectCompose((PetscObject)*fout, "FFTmatrix", (PetscObject)A)); in MatCreateVecsFFTW_FFTW()
643 (*fout)->ops->duplicate = VecDuplicate_FFTW_fout; in MatCreateVecsFFTW_FFTW()
644 (*fout)->ops->destroy = VecDestroy_MPIFFTW; in MatCreateVecsFFTW_FFTW()
670 if (fout) { in MatCreateVecsFFTW_FFTW()
672 PetscCall(VecCreateMPIWithArray(comm, 1, fft->n, N1, (PetscScalar *)data_fout, fout)); in MatCreateVecsFFTW_FFTW()
673 PetscCall(PetscObjectCompose((PetscObject)*fout, "FFTmatrix", (PetscObject)A)); in MatCreateVecsFFTW_FFTW()
674 (*fout)->ops->duplicate = VecDuplicate_FFTW_fout; in MatCreateVecsFFTW_FFTW()
675 (*fout)->ops->destroy = VecDestroy_MPIFFTW; in MatCreateVecsFFTW_FFTW()
693 if (fout) { in MatCreateVecsFFTW_FFTW()
695 … PetscCall(VecCreateMPIWithArray(comm, 1, fft->n, fft->N, (const PetscScalar *)data_fout, fout)); in MatCreateVecsFFTW_FFTW()
696 PetscCall(PetscObjectCompose((PetscObject)*fout, "FFTmatrix", (PetscObject)A)); in MatCreateVecsFFTW_FFTW()
697 (*fout)->ops->duplicate = VecDuplicate_FFTW_fout; in MatCreateVecsFFTW_FFTW()
698 (*fout)->ops->destroy = VecDestroy_MPIFFTW; in MatCreateVecsFFTW_FFTW()
715 if (fout) (*fout)->ops->replacearray = NULL; in MatCreateVecsFFTW_FFTW()