我想制作一个情节力量与位置(对于库仑定律)并估计常数e0。 我有电荷值,q1 = 1,q2 = 1。 我有例如
position=[0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0,1.1];
force=[0.08,0.015,0.013,0.0062,0.0016,0.00519,-0.00159,0.00118,...
0.0061,0.00155,0.00143];
库仑是F =(1/4 * pi * e0)* q1 * q2 / r ^ 2。 所以,它的形式是:
y = ax ^ -m,其中a =(q1 * q2 / 4 * pi * e0)
我在做:
p=polyfit(-log10(position),log10(force),1); % I am not sure about '1' and minus
m=p(1);
a=10^(p(2)); % I am not sure about a
xp=0.1:0.1:1.1;
yp=a*xp.^(-m);
plot(position,force,'o',xp,yp)
e0=q1*q2/4*pi*a
我找不到适合e0的值。我做错了什么? m值应为-2但我正在服用:
m =
1.6287 - 0.2008i
答案 0 :(得分:3)
有两个原因是错误的。首先,你从库伦定律的定义中错过了一些括号。它应该是
F = 1/(4*pi*e0) * q1 * q2 * r^-2
这意味着您对e0
的最终计算应该是
a = 10^p(2);
e0 = ((q1 * q2) / (4 * pi)) / a;
这是错误的另一个原因是,事实上,对于您的背景,法律的定义仍然是错误的。你只有正面费用(q1
,q2
),但很明显,力量在某些时候变为负数。由于您正在使用日志空间来估计参数,因此无法使用,因为您将获得复杂的数字。您对数据的库仑定律的定义应为
|F| = 1/(4*pi*e0) * |q1 * q2| * r^-2
也就是说,你只有绝对值。因此,您应该使用abs(force)
而不仅仅是force
进行拟合。
答案 1 :(得分:0)
由于a =(q1 * q2 / 4 * pi * e0),e0应为
e0=a/(q1*q2/4*pi)
检查一下。