# PetscPDFSampleGaussian3D
Sample uniformly from a Gaussian distribution in 3D 
## Synopsis
```
#include "petscdt.h" 
PetscErrorCode PetscPDFSampleGaussian3D(const PetscReal p[], const PetscReal dummy[], PetscReal x[])
```
Not collective


## Input Parameters

- ***p -*** A uniform variable on [0, 1]^3
- ***dummy -*** ignored



## Output Parameter

- ***x -*** Coordinate in [-\infty, \infty]^3





## Reference
https://en.wikipedia.org/wiki/Box%E2%80%93Muller_transform


## See Also
 `PetscPDFGaussian3D()`, `PetscPDFMaxwellBoltzmann3D()`

## Level
beginner

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/dm/dt/interface/dtprob.c.html#PetscPDFSampleGaussian3D">src/dm/dt/interface/dtprob.c</A>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/dm/dt/interface/dtprob.c)


[Index of all DT routines](index.md)  
[Table of Contents for all manual pages](/docs/manualpages/index.md)  
[Index of all manual pages](/docs/manualpages/singleindex.md)  
