Skip to main content
`Ctrl`+`K`

# BVGetColumn

Returns a `Vec` object that contains the entries of the requested column of the basis vectors object.

## Synopsis

    #include "slepcbv.h"
    PetscErrorCode BVGetColumn(BV bv,PetscInt j,Vec *v)

Logically Collective

## Input Parameters

- bv - the basis vectors context

- j - the index of the requested column

## Output Parameter

- v - vector containing the jth column

## Notes

The returned `Vec` must be seen as a reference (not a copy) of the `BV` column, that is, modifying the `Vec` will change the `BV` entries as well.

The returned `Vec` must not be destroyed. `BVRestoreColumn()` must be called when it is no longer needed. At most, two columns can be fetched, that is, this function can only be called twice before the corresponding `BVRestoreColumn()` is invoked.

A negative index `j` selects the `i`-th constraint, where `i=-j`. Constraints should not be modified.

## See Also

BV: Basis Vectors, `BVRestoreColumn()`, `BVInsertConstraints()`

## Level

beginner

## Location

src/sys/classes/bv/interface/bvbasic.c

## Implementations

BVGetColumn_Contiguous() in src/sys/classes/bv/impls/contiguous/contig.c
BVGetColumn_Mat() in src/sys/classes/bv/impls/mat/bvmat.c
BVGetColumn_Svec() in src/sys/classes/bv/impls/svec/svec.c
BVGetColumn_Vecs() in src/sys/classes/bv/impls/vecs/vecs.c

Index of all BV routines Table of Contents for all manual pages Index of all manual pages