Page 1 of 1

random point process events

Posted: Sun Jul 12, 2009 8:10 am
by agidon20
Dear friends,

I am using a self generated random event for N point processes on a single cpu (no threading) that looks something like:

Code: Select all

NET_RECEIVE...
,..
net_send(exprand(rate),flag)
...
Is it possible that depending on simulation parameters (such as dt or nseg) these point process will be (even weakly) temporally correlated ?
Although it could be directly checked for every parameter choice, I wonder if there is a reason to suspect such correlations.


Thanks a lot,
Albert.

Re: random point process events

Posted: Sun Jul 12, 2009 11:57 am
by ted
The number sequences produced by the "random number generators" in NEURON are governed by algorithms that have their own parameters and internal states. Each sequence depends entirely on those parameters and states, which have nothing to do with model or simulation parameters. Start a generator with a particular seed, and it will always produce the same sequence.

The term "random number generator" is an oxymoron, since algorithmically-generated number sequences are deterministic. Correlations lurk in such sequences, waiting to be discovered. Some algorithms are worse than others in this regard. The MCellRan4 generator is one of the better ones, but requires the programmer to exercise some judgment when used to produce multiple sequences in a single simulation. For more information, see http://www.neuron.yale.edu/neuron/stati ... andom.html

Re: random point process events

Posted: Sun Jul 12, 2009 4:01 pm
by agidon20
The algorithms does not concern me as the implementation e.g. mod, point_process, events, discrete time steps and so forth. But if I got it correctly, the simulation would not produce correlations when the random number generator doesn't.

Re: random point process events

Posted: Mon Jul 13, 2009 11:33 am
by ted
agidon20 wrote:But if I got it correctly, the simulation would not produce correlations when the random number generator doesn't.
If a system is driven by a random input, it does not necessarily follow that the system will generate a random output. Did you mean to say something else?

Re: random point process events

Posted: Mon Jul 13, 2009 12:00 pm
by agidon20
ted wrote:If a system is driven by a random input, it does not necessarily follow that the system will generate a random output.
exactly! so in my case the "system" is just multiple point_processes:

Code: Select all

NET_RECEIVE...
,..
net_send(exprand(rate),flag)
...
on a section (nothing else, running the simulation with stdrun commands).
I want to make sure that using a very basic NEURON "system" would not result is correlations (not necessarily due to an error).