Lines Matching refs:fin

399 static PetscErrorCode VecDuplicate_FFTW_fin(Vec fin, Vec *fin_new)  in VecDuplicate_FFTW_fin()  argument
404 PetscCall(PetscObjectQuery((PetscObject)fin, "FFTmatrix", (PetscObject *)&A)); in VecDuplicate_FFTW_fin()
477 PetscErrorCode MatCreateVecsFFTW_FFTW(Mat A, Vec *fin, Vec *fout, Vec *bout) in MatCreateVecsFFTW_FFTW() argument
492 if (fin) PetscCall(VecCreateSeq(PETSC_COMM_SELF, fft->N, fin)); in MatCreateVecsFFTW_FFTW()
496 if (fin) PetscCall(VecCreateSeq(PETSC_COMM_SELF, fft->n, fin)); in MatCreateVecsFFTW_FFTW()
522 if (fin) { in MatCreateVecsFFTW_FFTW()
526 PetscCall(VecCreateMPIWithArray(comm, 1, n1, N1, (const PetscScalar *)data_fin, fin)); in MatCreateVecsFFTW_FFTW()
527 PetscCall(PetscObjectCompose((PetscObject)*fin, "FFTmatrix", (PetscObject)A)); in MatCreateVecsFFTW_FFTW()
528 (*fin)->ops->duplicate = VecDuplicate_FFTW_fin; in MatCreateVecsFFTW_FFTW()
529 (*fin)->ops->destroy = VecDestroy_MPIFFTW; in MatCreateVecsFFTW_FFTW()
557 if (fin) { in MatCreateVecsFFTW_FFTW()
559 PetscCall(VecCreateMPIWithArray(comm, 1, (PetscInt)n1, N1, (PetscScalar *)data_finr, fin)); in MatCreateVecsFFTW_FFTW()
560 PetscCall(PetscObjectCompose((PetscObject)*fin, "FFTmatrix", (PetscObject)A)); in MatCreateVecsFFTW_FFTW()
561 (*fin)->ops->duplicate = VecDuplicate_FFTW_fin; in MatCreateVecsFFTW_FFTW()
562 (*fin)->ops->destroy = VecDestroy_MPIFFTW; in MatCreateVecsFFTW_FFTW()
581 if (fin) { in MatCreateVecsFFTW_FFTW()
583 … PetscCall(VecCreateMPIWithArray(comm, 1, fft->n, fft->N, (const PetscScalar *)data_fin, fin)); in MatCreateVecsFFTW_FFTW()
584 PetscCall(PetscObjectCompose((PetscObject)*fin, "FFTmatrix", (PetscObject)A)); in MatCreateVecsFFTW_FFTW()
585 (*fin)->ops->duplicate = VecDuplicate_FFTW_fin; in MatCreateVecsFFTW_FFTW()
586 (*fin)->ops->destroy = VecDestroy_MPIFFTW; in MatCreateVecsFFTW_FFTW()
609 if (fin) { in MatCreateVecsFFTW_FFTW()
611 PetscCall(VecCreateMPIWithArray(comm, 1, (PetscInt)n1, N1, (PetscScalar *)data_finr, fin)); in MatCreateVecsFFTW_FFTW()
612 PetscCall(PetscObjectCompose((PetscObject)*fin, "FFTmatrix", (PetscObject)A)); in MatCreateVecsFFTW_FFTW()
613 (*fin)->ops->duplicate = VecDuplicate_FFTW_fin; in MatCreateVecsFFTW_FFTW()
614 (*fin)->ops->destroy = VecDestroy_MPIFFTW; in MatCreateVecsFFTW_FFTW()
632 if (fin) { in MatCreateVecsFFTW_FFTW()
634 … PetscCall(VecCreateMPIWithArray(comm, 1, fft->n, fft->N, (const PetscScalar *)data_fin, fin)); in MatCreateVecsFFTW_FFTW()
635 PetscCall(PetscObjectCompose((PetscObject)*fin, "FFTmatrix", (PetscObject)A)); in MatCreateVecsFFTW_FFTW()
636 (*fin)->ops->duplicate = VecDuplicate_FFTW_fin; in MatCreateVecsFFTW_FFTW()
637 (*fin)->ops->destroy = VecDestroy_MPIFFTW; in MatCreateVecsFFTW_FFTW()
663 if (fin) { in MatCreateVecsFFTW_FFTW()
665 PetscCall(VecCreateMPIWithArray(comm, 1, fft->n, N1, (PetscScalar *)data_finr, fin)); in MatCreateVecsFFTW_FFTW()
666 PetscCall(PetscObjectCompose((PetscObject)*fin, "FFTmatrix", (PetscObject)A)); in MatCreateVecsFFTW_FFTW()
667 (*fin)->ops->duplicate = VecDuplicate_FFTW_fin; in MatCreateVecsFFTW_FFTW()
668 (*fin)->ops->destroy = VecDestroy_MPIFFTW; in MatCreateVecsFFTW_FFTW()
686 if (fin) { in MatCreateVecsFFTW_FFTW()
688 … PetscCall(VecCreateMPIWithArray(comm, 1, fft->n, fft->N, (const PetscScalar *)data_fin, fin)); in MatCreateVecsFFTW_FFTW()
689 PetscCall(PetscObjectCompose((PetscObject)*fin, "FFTmatrix", (PetscObject)A)); in MatCreateVecsFFTW_FFTW()
690 (*fin)->ops->duplicate = VecDuplicate_FFTW_fin; in MatCreateVecsFFTW_FFTW()
691 (*fin)->ops->destroy = VecDestroy_MPIFFTW; in MatCreateVecsFFTW_FFTW()
714 if (fin) (*fin)->ops->replacearray = NULL; in MatCreateVecsFFTW_FFTW()