绘制通过2d切片电场的路径

时间:2014-11-20 12:42:56

标签: python vector physics

我有一段代码在z = 0时随机散布xy平面上的一系列点电荷,然后确定z = 1时电荷上方的电场。我不会包含代码,因为它很长而且相当繁琐,但为了可视化目的,这里是随机分类4种费用的图表:

iii

矢量场以两个2d阵列Ex和Ey的形式存储。接下来我需要做的是绘制负电荷的路径,随机投入上图。我过去做了一些随机游走,认为语法必须是这样的(现在只用文字写)

在相关限制内随机生成x和y坐标

for i in range(1, number_of_steps)

     walkpathx[i]=walkpath[i-1]+Ex_at_that_co_ordinate
     walkpathy[i]=walkpath[i-1]+Ey_at_that_co_ordinate

我遇到的问题是获得Ex_at_that_co_ordinate - 随机初始位置会给我一个任意数字,但我的矢量场不连续所以我不知道如何让我的坐标来挑选Efield那个点。任何帮助都会非常感激,如果我格式错误,我会道歉。一些重要的观点 - 我们忽略任何z分量并想象电荷在z = 1处停留在xy平面中,并忽略惯性和质量效应,它实际上只是意味着在随机点开始跟随场地。

1 个答案:

答案 0 :(得分:0)

对于电荷的给定位置和粒子的随机初始位置,不在网格上,最简单的选择是计算字段 ex-novo :< / p>

ex, ey = E(x,y,P) # where P = [(x0, y0, c0), (x1, y1, c1), ...]

如果你不允许这样做,你必须求助于插值;哪种插值?在我看来,这是一个与SO无关的问题。

一般情况下,你必须选择网格中的四个相邻点,选择EF值并适当地组合它们......如果你遇到麻烦,请相应地编辑你的Q(或者开始一个新的)