Lines Matching refs:vecs
56 …rrorCode MatNullSpaceGetVecs(MatNullSpace sp, PetscBool *has_const, PetscInt *n, const Vec *vecs[]) in MatNullSpaceGetVecs() argument
62 if (vecs) *vecs = sp->vecs; in MatNullSpaceGetVecs()
196 for (i = 0; i < sp->n; i++) PetscCall(VecView(sp->vecs[i], viewer)); in MatNullSpaceView()
230 PetscErrorCode MatNullSpaceCreate(MPI_Comm comm, PetscBool has_cnst, PetscInt n, const Vec vecs[], … in MatNullSpaceCreate() argument
237 if (n) PetscAssertPointer(vecs, 4); in MatNullSpaceCreate()
238 for (i = 0; i < n; i++) PetscValidHeaderSpecific(vecs[i], VEC_CLASSID, 4); in MatNullSpaceCreate()
243 PetscCall(VecLockReadPush(vecs[i])); in MatNullSpaceCreate()
250 PetscCall(VecNorm(vecs[i], NORM_2, &norm)); in MatNullSpaceCreate()
251 …eal(norm - 1) <= PETSC_SQRT_MACHINE_EPSILON, PetscObjectComm((PetscObject)vecs[i]), PETSC_ERR_ARG_… in MatNullSpaceCreate()
256 PetscCall(VecSum(vecs[i], &sum)); in MatNullSpaceCreate()
257 …bsScalar(sum) <= PETSC_SQRT_MACHINE_EPSILON, PetscObjectComm((PetscObject)vecs[i]), PETSC_ERR_ARG_… in MatNullSpaceCreate()
263 PetscCall(VecMDot(vecs[i], n - i - 1, vecs + i + 1, dots)); in MatNullSpaceCreate()
265 …alar(dots[j]) <= PETSC_SQRT_MACHINE_EPSILON, PetscObjectComm((PetscObject)vecs[i]), PETSC_ERR_ARG_… in MatNullSpaceCreate()
278 sp->vecs = NULL; in MatNullSpaceCreate()
284 PetscCall(PetscMalloc1(n, &sp->vecs)); in MatNullSpaceCreate()
287 PetscCall(PetscObjectReference((PetscObject)vecs[i])); in MatNullSpaceCreate()
288 sp->vecs[i] = vecs[i]; in MatNullSpaceCreate()
320 for (i = 0; i < (*sp)->n; i++) PetscCall(VecLockReadPop((*sp)->vecs[i])); in MatNullSpaceDestroy()
322 PetscCall(VecDestroyVecs((*sp)->n, &(*sp)->vecs)); in MatNullSpaceDestroy()
361 PetscCall(VecMDot(vec, sp->n, sp->vecs, sp->alpha)); in MatNullSpaceRemove()
363 PetscCall(VecMAXPY(vec, sp->n, sp->alpha, sp->vecs)); in MatNullSpaceRemove()
403 PetscCall(VecDuplicate(sp->vecs[0], &l)); in MatNullSpaceTest()
426 PetscUseTypeMethod(mat, mult, sp->vecs[j], l); in MatNullSpaceTest()