Hi, there,
I am trying to generate 100 3-dimensional quasi-random vectors in the (2,3)^3 space by following the instruction on page 32 of "Intel Math Kernel Library Vector Statistical Library Notes." The illustrative example it provides looks like the following:
include <stdio.h>
include “mkl.h”
float mat[100][3]; /* buffer for quasi-random numbers */
VSLStreamStatePtr stream;
/* Initializing */
vslNewStream( &stream, VSL_BRNG_SOBOL, 3 );
/* Generating */
vsRngUniform( VSL_METHOD_SUNIFORM_STD, stream, 100*3, (float*)mat, 2.0f, 3.0f );
/* Deleting the streams */
vslDeleteStream( &stream );
My question is: To my knowledge, the random number generator generates a series of numbers in sequential and puts them into the matrix in column-major order. Then, why we generate the 100 3-dimensional vectors by specifying it as mat[100][3] not the other way around like mat[3][100].
Thanks,
R.