Skip to main content
`Ctrl`+`K`

# BVMultColumn

Computes \(y = \beta y + \alpha X q\), where \(y\) is the j-th column of \(X\).

## Synopsis

    #include "slepcbv.h"
    PetscErrorCode BVMultColumn(BV X,PetscScalar alpha,PetscScalar beta,PetscInt j,PetscScalar q[])

Logically Collective

## Input Parameters

- X - a basis vectors object

- alpha - first scalar

- beta - second scalar

- j - the column index

- q - an array of scalars

## Notes

This operation is equivalent to `BVMultVec()` but it uses column `j` of `X` rather than taking a `Vec` as an argument. The number of active columns of `X` is set to `j` before the computation, and restored afterwards. If `X` has leading columns specified, then these columns do not participate in the computation. Therefore, the length of array `q` must be equal to `j` minus the number of leading columns.

## Developer Note

If `q` is `NULL`, then the coefficients are taken from position `nc+l` of the internal buffer vector, see `BVGetBufferVec()`.

## See Also

BV: Basis Vectors, `BVMult()`, `BVMultVec()`, `BVMultInPlace()`, `BVSetActiveColumns()`

## Level

advanced

## Location

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

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