【发布时间】:2012-04-09 04:02:40
【问题描述】:
假设我想模拟一个粒子状态,它在给定帧中可以是正常 (0) 或兴奋 (1)。粒子在 f% 的时间内处于激发态。如果粒子处于激发态,它会持续约 L 帧(具有泊松分布)。我想模拟 N 个时间点的状态。所以输入例如:
N = 1000;
f = 0.3;
L = 5;
结果会是这样的
state(1:N) = [0 0 1 1 1 1 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 ... and so on]
sum(state)/N 接近 0.3
如何做到这一点? 谢谢!
【问题讨论】:
-
粒子翻转状态的概率是多少?
-
我真的不明白你的意思。我真正想做的是模拟具有两种不同扩散系数的粒子的扩散行为,并定义了更快和更慢组分(f)的分数以及在一种或另一种状态下的某种寿命。我想先模拟状态(在这种情况下是两个,但可能更多),然后根据状态(更快或更慢......)模拟位移和坐标。我不知道这是否是最好的方法,但这是我心中的第一个 :)
-
@NoamN.Kremen 当 f=0.3 时,状态 1 的长度是 5。状态 0 的长度平均应该是 17 左右(5/0.3),所以从 0 翻转的变化到 1 是 0.06。编辑:不确定这句话是否完全正确。
标签: matlab random distribution simulation poisson