Skip to main content
`Ctrl`+`K`

# BVTensorGetFactors

Returns the two factors involved in the definition of the tensor basis vectors object, \(V = (I \otimes U) S\).

## Synopsis

    #include "slepcbv.h"
    PetscErrorCode BVTensorGetFactors(BV V,BV *U,Mat *S)

Logically Collective

## Input Parameter

- V - the basis vectors context

## Output Parameters

- U - the `BV` factor

- S - the `Mat` factor

## Notes

The returned factors are references (not copies) of the internal factors, so modifying them will change the tensor `BV` as well. Some operations of the tensor `BV` assume that `U` has orthonormal columns, so if the user modifies `U` this restriction must be taken into account.

The returned factors must not be destroyed. `BVTensorRestoreFactors()` must be called when they are no longer needed.

Pass `NULL` for any of the arguments that is not needed.

## See Also

BV: Basis Vectors, `BVTENSOR`, `BVCreateTensor()`, `BVTensorRestoreFactors()`

## Level

advanced

## Location

src/sys/classes/bv/impls/tensor/bvtensor.c

## Implementations

BVTensorGetFactors_Tensor() in src/sys/classes/bv/impls/tensor/bvtensor.c

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