【发布时间】:2019-08-28 04:33:05
【问题描述】:
我需要计算漂移速度 ( v=d/dt[r(t)] ) 和有效扩散系数 (Deff=d/dt[r(t)^2]-d/dt[r(t)]^2 ) 来自随机轨迹,用于布朗运动在周期势上的情况。
仅作为示例,假设我有一组随机轨迹:
dt=1e-2; N=1e6; Ensemble=200; Do=1;
wn=sqrt(2*Do*dt)*normrnd(0,1,[Ensemble,N]);
time=0:dt:N*dt;
我首先计算漂移速度:
P2 = polyfit(time,mean(wn(:,:)-wn(:,1)),1);
vx_Sim=P2(1);
这给了我解析解的期望值。 然后我计算有效扩散,如:
XM=mean((wn(:,:)-wn(:,1)).^2,1)/(2*Do);
P =polyfit(time,sqrt(XM),1);
DDeffSim=P(1);
但我没有从我正在研究的特定布朗运动的解析解中得到预期的结果。我计算错了吗?
【问题讨论】:
-
我们无法重现您的问题,因为未定义 Do。
-
对不起,我已经用 Do 的值更新了示例
-
time的大小不合适;例如,将其更改为time=1:dt:N*dt。 -
我运行代码,得到
vx_Sim=-8.2e-10和DDeffSim=-9.1e-10。考虑到数值近似,在我看来结果相同。那么问题出在哪里? -
理论上 vx=0 与模拟相比是正确的,但 DDeff 应该等于 1。
标签: matlab statistics stochastic-process probability-distribution