petsc-3.7.1 2016-05-15
Report Typos and Errors

PetscRandomCreate

Creates a context for generating random numbers, and initializes the random-number generator.

Synopsis

#include "petscsys.h" 
PetscErrorCode  PetscRandomCreate(MPI_Comm comm,PetscRandom *r)
Collective on MPI_Comm Many br

Input Parameters

Output Parameter

Many br

Notes

The random type has to be set by PetscRandomSetType(). Many br

This is only a primative "parallel" random number generator, it should NOT Many brbe used for sophisticated parallel Monte Carlo methods since it will very likely Many brnot have the correct statistics across processors. You can provide your own Many brparallel generator using PetscRandomRegister(); Many br

If you create a PetscRandom() using PETSC_COMM_SELF on several processors then Many brthe SAME random numbers will be generated on all those processors. Use PETSC_COMM_WORLD Many bror the appropriate parallel communicator to eliminate this issue. Many br

Use VecSetRandom() to set the elements of a vector to random numbers. Many br

Example of Usage

      PetscRandomCreate(PETSC_COMM_SELF,&r);
      PetscRandomSetType(r,PETSCRAND48);
      PetscRandomGetValue(r,&value1);
      PetscRandomGetValueReal(r,&value2);
      PetscRandomDestroy(&r);
Many br

See Also

PetscRandomSetType(), PetscRandomGetValue(), PetscRandomGetValueReal(), PetscRandomSetInterval(),
PetscRandomDestroy(), VecSetRandom(), PetscRandomType Many br

Level:intermediate
Location:
src/sys/classes/random/interface/randomc.c
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages

Examples

src/sys/classes/random/examples/tutorials/ex1.c.html
src/sys/classes/random/examples/tutorials/ex2.c.html
src/ksp/ksp/examples/tutorials/ex2.c.html
src/ksp/ksp/examples/tutorials/ex11.c.html
src/ksp/ksp/examples/tutorials/ex18.c.html
src/ksp/ksp/examples/tutorials/ex46.c.html
src/ksp/ksp/examples/tutorials/ex52.c.html
src/ksp/ksp/examples/tutorials/ex2f.F.html
src/ksp/ksp/examples/tutorials/ex11f.F.html
src/ts/examples/tutorials/ex42.c.html
src/tao/unconstrained/examples/tutorials/minsurf2.c.html
comm - MPI communicator Many br
r - the random number generator context Many br