Questions tagged [random-number-generation]
Questions on the algorithms for and uses of (pseudo)random number generators in scientific computing.
67 questions
1
vote
1
answer
77
views
Random access (quasi-?)random sequence
Fix a dimension $d \ge 1$. Is there an efficiently computable sequence $f : \mathbb{N} \to [0,1]^d$ such that
$f$ is either random or quasirandom (e.g., similar to Sobol sequences).
Given $n \in \...
1
vote
1
answer
179
views
How to plot random points in 3 dimensions in order to calculate volume of a torus through Monte Carlo integration
I am new to Monte Carlo integration and have been tasked with using MC integration in order to calculate the volume of a torus with inner radius 5cm and outer radius 10cm. Below is the code I have ...
0
votes
0
answers
34
views
Algorithm for Probabilities in a "Random" Integers Runs test
Suppose you have a set of N random integers. ( aka bytes 0..255 )
You then consider each subsequent neighbor as "ascending" or "descending", counting the number of consecutive ...
0
votes
1
answer
88
views
Which type of RNG can I use together with a MT RNG in a simulation?
This question arises from my attempt to mix two different RNGs. I'd like to mix them choosing the best of the two according to the operations I need to carry out to achieve better performance. I'm ...
0
votes
0
answers
59
views
generating multivariate Gaussian samples with constraints
Using GRFs, one generates samples $x \sim N(m,K)$ with arbitrary mean $m$ and covariance matrix $K$ using a scalar Gaussian generator as
$x = m + Lu$,
where $L$ is a lower triangular matrix, such that ...
0
votes
1
answer
64
views
Producing random variables with exp. distribution, but I need to use a constant! (python)
I am currently dealing with exponential decay (of muons). The PDF is the following:
https://wikimedia.org/api/rest_v1/media/math/render/svg/fdacadb747bac9932ffd02ee35cf3cbd0bc0b4c8
And I am told that ...
1
vote
0
answers
270
views
approximate Poisson disk / blue noise sampling
Poisson disk or blue noise sampling consists of finding a random, maximal set of points $\{x_i\}$ in a domain $\Omega$ such that $\|x_i - x_j\| \ge r$ for some fixed radius $r$ and for all $i$, $j$.
...
0
votes
0
answers
317
views
Numpy random generator seed choice
I am new to understanding pseudorandom number generators and sometimes feel daunted by them. For some time I have used the following approach in my work:
In one file, I'd have
...
0
votes
1
answer
189
views
Trying to do a 2D random walk for a particle
I am trying to perform a two-dimensional random walk for a particle, but I am not getting the desired result. The plot produced is a linear plot, which obviously should not have been. Similar code for ...
2
votes
0
answers
106
views
Applications where random number generation is a speed bottleneck
Pseudorandom numbers are used massively in Monte Carlo methods, e.g. in physics simulations. The fastest random number generators, such as the xoroshiro or xorshiro families by Vigna (see eg here) are ...
-1
votes
1
answer
97
views
Running a Random Number generator in parallel? Will this speed up a computation?
I'm calculating basically a multidimensional random walk problem. To get more accuracy, I need larger systems (more dimensions), which requires longer time. To speed up the calculation, I'm delving ...
1
vote
1
answer
45
views
Introductory reference on bit-twiddling? [closed]
I'm looking for introductory resources--web pages, book chapters, articles--that introduce the C language with an immediate focus on bit-twiddling functions (e.g. bitwise XOR, AND, shifts), and of ...
0
votes
0
answers
265
views
How to limit the output value of an Linear Congruential Generator, but still maintain an extremely long period?
Let us suppose that I have a full cycle LCG, following the standard equation
Hence, as it has a full cycle, it will have a period of m, and will output values ranging from 0 to m. However, I want to ...
0
votes
0
answers
116
views
Create random number generator from a top hat distribution
How would I use a random number generator to give random numbers from a top hat distribution in Fortran?
I've seen lots of information about how to make a Gaussian random number generator, but not one ...
2
votes
0
answers
230
views
Whi are chi-squared distributions in (C++) boost::random and C++ STL faster than in boost::math?
I am trying to generate random chi-squared numbers in C++, according to some degree of freedom (which can be a float). Several libraries can be used for that purpose, among which the C++11 Standard ...
-1
votes
1
answer
48
views
Why does this line of code give a flat distribution?
I'm struggling to understand a line of FORTRAN code and was hoping someone on here would be able to help me out. These lines of code are meant to generate a flat distribution - I understand that GRNDM(...
2
votes
0
answers
57
views
Why I am not able to generate Levy distribution using inverse transform method on MATLAB?
I am trying to generate random numbers using Levy distribution in MATLAB. I am using the inverse transform method to generate random numbers and then plot its histogram for pdf estimation. Then I ...
1
vote
1
answer
72
views
Is there a better way to do run time analysis than this?
I currently have 2 different functions with options to vectorise them: acc_rej_sine(max_iter, algorithm=None) and ...
6
votes
3
answers
2k
views
How good are current implementations of rand() in C?
There is a lot of literature that indicates using rand() for simulations might be harmful. A couple of them are as follows:
https://www.sciencedirect.com/science/...
1
vote
1
answer
230
views
Weighted Monte Carlo Integration
I have a function $F(x)$ which drops exponentially (like differential QCD cross section vs. Invariant mass). I want to perform Monte-Carlo integration. The problem is that only small $x$'s which have ...
4
votes
1
answer
243
views
Simple Monte Carlo in C++, result dependent from seed
I implemented as an exercise a program to sample the statistics of the escape time of a Brownian particle in a potential well. I used the Euler-Maruyama method to numerically integrate the ...
1
vote
2
answers
177
views
How to traverse $\{0, 1, \dots, 2^n-1\}$ in random order?
Here, $n$ could be a few hundreds, or even thousands, so it is not possible to pregenerate a list of $$\{0, 1, \dots, 2^n-1\}$$ and shuffle it. Because it is traversal, no number should be visited ...
4
votes
1
answer
886
views
Why my linear congruential generator generate low quality random numbers?
I am implementing an arbitrary bits random number generator (in [$0,2^n$)) and also want to ensure that the generator always generate unique numbers until all possible numbers generated, so I ...
0
votes
1
answer
60
views
Implementation of stochastic cellular automata
In my problem, I have a lattice with a stochastic cellular automaton. In order to simplify a bit, let's say it is 1D. In my system, each node can be type A, B or C. A way to represent the system and ...
0
votes
2
answers
5k
views
How to generate Poisson-distributed random numbers quickly and accurately?
I have attempted to create Poisson-distributed random numbers, seeing that it is not so easy as the simple multiplicative algorithm works accurately only if the mean is less than 500. Using logarithms ...
1
vote
0
answers
84
views
Random Number Generation-full period
How can i demonstrate that a LCG has full period? Is there a way to demonstrate it or do I just need to check the parameters(a, c, m)?
0
votes
1
answer
103
views
Generate a set of random x,y,z numbers, with a minimum difference between them, between defined limits
So I am trying a molecular dynamics simulation, and trying to populate a 3D rectangular volume with random particles which are uniformly distributed throughout the volume. Each molecule has a fixed ...
2
votes
1
answer
78
views
Using physical parameter as a Gaussian random variable in a simple Poisson problem
I want to vary the input parameter of a physical dynamic mechanics problem, as a Gaussian Random variable and view the resulting Probability Density Function (PDF). I used the Finite Element Method to ...
7
votes
3
answers
3k
views
How do I reliably generate random numbers in Python distributed across multiple nodes?
Consider the following scenario: I want to perform a large Monte Carlo simulation across a compute cluster with several nodes. To avoid excessive transmission of data, I am going to generate random ...
1
vote
0
answers
166
views
Generate gaussian random field in spherical polar coordinates
I would like to generate an isotropic gaussian random field described by a power spectrum $P(k)$ on a 3D grid which represents spherical polar coordinates (i.e., the angular separation between pixels ...
2
votes
2
answers
96
views
How to evaluate "quality" of set of attainable random permutations
To randomly permute a list one has to select one of $n!$ possibilities, which quickly goes outside of the capabilities of conventional PRNGs. Even Mersenne Twister fails with a list of length greater ...
1
vote
1
answer
103
views
RNG float range for metropolis monte carlo
I have a robust RNG that generates random 32-bit (unsigned) ints. As is probably well known, for metropolis MC simulation, a random number between 0 and 1 is needed to determine acceptance/rejection ...
1
vote
1
answer
91
views
Pseudo random numbers
I am learning how to use pseudo random number generators but the instructor just told us how they work without explaining why they work.
For example, can one prove that the numbers generated by LCG ...
2
votes
1
answer
190
views
What PRNG function is this?
This is a 16-bit PRNG function, transcribed from assembly to C for easier reading:
...
12
votes
3
answers
3k
views
Parallel Mersenne Twister for Monte Carlo
Recently, I came across a comment claiming that almost all researchers doing Monte Carlo methods are doing it wrong. It went on to elaborate that merely choosing different seeds for different ...
2
votes
1
answer
2k
views
Difference between true & pseudo random numbers
I recently heard that in Linux, /dev/random and /dev/urandom are pseudo random number generators but not true random number ...
1
vote
1
answer
110
views
PETCs - How should one initialize PetscRandom?
The documentation of PETSc shows an example of usage:
...
0
votes
1
answer
151
views
PETSc - how computing a random number between 0 and 1?
In PETSc, I need to generate a random number between 1 and 0.
With the include cstdlib, the classical trick is:
...
1
vote
0
answers
964
views
Generating Random Numbers in Fortran for Metropolis method
I am having a really hard time getting any kind of reliable / consistent result from my Metropolis code. I have torn it apart and am now examining just the randomness in my random number generator.
I ...
1
vote
2
answers
106
views
Maintain Uniform Distribution across Subranges
Note: this is a continuation of Generate Random Number outside Bounds.
I have a function (thanks to the previous question) with the following prototype which returns an integer in the range $[0,b]$, $...
3
votes
2
answers
294
views
Generate Random Number outside Bounds:
Say I have a random number generator that generates a number within [0, RAND_MAX], and RAND_MAX < UINT_MAX.
How do I ...
6
votes
1
answer
521
views
Generating random numbers for long molecular dynamics simulations
I've written a basic 2D Langevin dynamics simulator in C++, for a particle in a potential, solving the equation:
$$M\ddot{X} = - \nabla U(X) - \gamma M \dot{X} + \sqrt{2 \gamma k_B T M} R(t)$$
This ...
1
vote
1
answer
90
views
Shifting points in fortran
Hello I am trying to shift points which have been previously generated in the square area. I am having a trouble with some additional conditions how they should have been shifted.
...
7
votes
1
answer
12k
views
How do I generate Maxwell-Boltzmann variates using a uniform distribution random number generator?
I am doing a molecular dynamics simulation. I need to assign initial velocities to the atoms. I want to assign the initial velocities which follow the Maxwell-Boltzmann distribution. How do I ...
0
votes
1
answer
39
views
Generating pseudorandom sequences based on measured sequences
I'm looking for an algorithm to generate discrete-time pseudorandom sequences based on other sequences I already have that would be used to train the algorithm.
More specifically, I have some time-...
1
vote
1
answer
100
views
Sampling from the Generalized Beta of the Second Kind in Fortran
I need to sample from the generalized beta of the second kind (GB2) distribution (McDonald, 1984, Econometrica). Its PDF has the form
$$ f_{a,b,p,q}(x) = \frac{|a|x^{ap-1}}{b^{ap}B(p,q)(1+(x/b)^a)^{p+...
0
votes
2
answers
66
views
Maths calculations for randomly generated numbers don't match computed averages
Ok, It was hard to explain my problem in the title. I hope it made enough sense to peak the curiosity of some of you.
What I've been trying to do is find the relationship between the amount of random ...
1
vote
1
answer
88
views
optimising changing the range of integers from random number generation
I'm looking to find the most efficient way to change integers from a random number generator to a different inclusive number range.
I know of 2 ways so far:
Change the number into a decimal in the ...
1
vote
1
answer
2k
views
Calculating periodicity of a pseudo random number generator (Middle-square method) [closed]
Below is a Python code that calculates the periodicity of the middle-square method for a given 4 digit-numbers:
...
1
vote
3
answers
316
views
Quality of randomness in generated random number
I have generated a list of 3 random number where each summed to 1. I would like to assess the quality of randomness. What is the best mechanism to assess this randomness? E.g my random numbers are. ...