Skip to main content
`Ctrl`+`K`

# BVSetRandomNormal

Set the columns of a `BV` to random numbers with a normal distribution.

## Synopsis

    #include "slepcbv.h"
    PetscErrorCode BVSetRandomNormal(BV bv)

Logically Collective

## Input Parameter

- bv - basis vectors

## Notes

All active columns (except the leading ones) are modified.

Other functions such as `BVSetRandom()`, `BVSetRandomColumn()`, and `BVSetRandomCond()` produce random numbers with a uniform distribution. This function returns values that fit a normal distribution (Gaussian).

## Developer Notes

The current implementation obtains each of the columns by applying the Box-Muller transform on two random vectors with uniformly distributed entries.

## See Also

BV: Basis Vectors, `BVSetRandomContext()`, `BVSetRandom()`, `BVSetRandomColumn()`, `BVSetRandomCond()`, `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