1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
---
:name: zlarnv
:md5sum: 36e5ab2161ffb5a09faacf3c756eed1b
:category: :subroutine
:arguments:
- idist:
:type: integer
:intent: input
- iseed:
:type: integer
:intent: input/output
:dims:
- "4"
- n:
:type: integer
:intent: input
- x:
:type: doublecomplex
:intent: output
:dims:
- MAX(1,n)
:substitutions: {}
:fortran_help: " SUBROUTINE ZLARNV( IDIST, ISEED, N, X )\n\n\
* Purpose\n\
* =======\n\
*\n\
* ZLARNV returns a vector of n random complex numbers from a uniform or\n\
* normal distribution.\n\
*\n\n\
* Arguments\n\
* =========\n\
*\n\
* IDIST (input) INTEGER\n\
* Specifies the distribution of the random numbers:\n\
* = 1: real and imaginary parts each uniform (0,1)\n\
* = 2: real and imaginary parts each uniform (-1,1)\n\
* = 3: real and imaginary parts each normal (0,1)\n\
* = 4: uniformly distributed on the disc abs(z) < 1\n\
* = 5: uniformly distributed on the circle abs(z) = 1\n\
*\n\
* ISEED (input/output) INTEGER array, dimension (4)\n\
* On entry, the seed of the random number generator; the array\n\
* elements must be between 0 and 4095, and ISEED(4) must be\n\
* odd.\n\
* On exit, the seed is updated.\n\
*\n\
* N (input) INTEGER\n\
* The number of random numbers to be generated.\n\
*\n\
* X (output) COMPLEX*16 array, dimension (N)\n\
* The generated random numbers.\n\
*\n\n\
* Further Details\n\
* ===============\n\
*\n\
* This routine calls the auxiliary routine DLARUV to generate random\n\
* real numbers from a uniform (0,1) distribution, in batches of up to\n\
* 128 using vectorisable code. The Box-Muller method is used to\n\
* transform numbers from a uniform to a normal distribution.\n\
*\n\
* =====================================================================\n\
*\n"
|