问题标签 [meep]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
496 浏览

python-3.x - dpkg-query:未安装包“python-meep”

似乎我的 python3 实例(在 Kubuntu 虚拟机上)要求安装 meep 作为其他软件包安装过程的一部分。该安装失败,现在每次我尝试安装软件包时都会收到与 meep 相关的安装错误。例如,这只是今天发生的。

没有多少自动清除清除或清除有任何效果。更新和升级没有奏效。我无计可施。除了撕掉python并重新安装所有东西之外,有没有人有任何建议?

0 投票
0 回答
59 浏览

python - 如何在 MEEP 中正确设置 LDOS 源功能?

所以我对 FDTD 建模还很陌生,我无法解释我从 MEEP 收到的 LDOS 输出。为了简化问题,我从 Bloch 波表面等离子体激元 (BW-SPP) 配置中的简单银光栅开始:

supers = mp.Block(mp.Vector3(sub+sep,mp.inf,mp.inf), center=mp.Vector3(-0.5*sx+0.5*(sub+sep),0,0), material=diel1) grating = mp.Block(mp.Vector3(grating_t, grating_w,mp.inf), center=mp.Vector3(-0.5*sx+sub-0.5*grating_t,0,0), material=Ag) metal = mp.Block(mp.Vector3(mthick,mp.inf,mp.inf), center=mp.Vector3(-0.5*sx+sub+sep+0.5*mthick,0,0), material=Ag) geometry=[supers,grating,metal]

然后我添加了我的高斯源:

f_cen = 1/0.570 # source frequency center df = 0.03*f_cen # source frequency width pt = mp.Vector3(-0.5*sx+dpml+sub+sep+mthick+0.010,-0.25*sy,0) sources = [mp.Source(mp.GaussianSource(f_cen, fwidth=df),component=mp.Hz,center=pt)]

并在 1000 到 10000 之间运行了不同时间的模拟:

sim.run(mp.dft_ldos(f_cen,df,100), until_after_sources=3000)

我期望看到的是一条曲线,其峰值 LDOS 以 570nm 波长为中心,导致表面等离子体的激发,如下图所示 Ex 和 Ey 组件的 增强场:给定结构周围的 Ex 和 Ey 组件的增强场。

相反,我得到了下面的图: 上面给出的特定位置的标准化 LDOS LDOS 的原始值也在 0.58 左右,频率之间的差异最小。此外,我设置的高斯源宽度越大,我获得的模式相同。即没有“高峰”。这不是我期望从基板表面看到 10nm 的情况,如果我改变偶极子源的 y 位置(将其移动穿过基板),它确实会改变,但也会导致“nan”超过我想要的位置预计最激烈的地方是。我尝试运行相同的代码,分辨率从 50-200 像素/um 不等,但结果仍然相似。我承认我可能对如何在 MEEP 中使用 LDOS 没有完全了解,但我希望在这里能找到一些清晰的信息。

谢谢

0 投票
1 回答
403 浏览

python - 如何在 Google Colab 中正确安装 MEEP?

过去,我在 Google Colab 中安装了 pymeep 包,其中包含以下单元:

这是该网站的精确副本:https ://rf5.github.io/2019/12/22/meep-intro.html

有时我写的代码不起作用。它执行没有错误,但是当我尝试执行import meep as mp. 我收到以下错误:

有没有更好的方法在 Google Colab 中安装 meep 或 pymeep?

0 投票
0 回答
37 浏览

python - 如何在 MEEP 中绘制电场与时间的关系图?

我想使用 python MEEP 在模拟区域中的某个点查看电场随时间的变化。我在 MEEP 文档中搜索了带有示例代码的时域图,但没有找到。您能否为此提供一些代码框架或提供有用的资源链接?

谢谢。

0 投票
0 回答
75 浏览

python - 在 meep 中导入 3d 模型或网格以进行 FDTD 模拟

简短版本:
有没有办法给 meep 一个离散的介电函数 ε(x,y,z),(具有恒定的步长,以及可能需要的任何要求)作为模拟结构,同时使用适当的 meep 包含的工具来做其他事情(来源,监视器)?

长版:
我想将一个3d模型导入meep,以便用CAD软件制作我想要的几何图形,而不是通过脚本制作几何图形。我了解到,在内部,meep 使用具有固定步长的结构化网格。我可以很容易地生成那种网格,从用 Freecad 完成的 3d 模型开始,至少对于各向同性材料是这样。除了 gdsii 之外,我还没有找到任何关于在 meep 中导入结构的信息,这不是我使用的,我不确定是否有帮助。我看到另一个软件 gprMax 可以从 hdf5 文件中导入几何图形。我希望能够做类似的事情。

0 投票
0 回答
95 浏览

python-3.x - AttributeError: module 'meep' has no attribute 'Vector3' in python3 jupyter notebook

AttributeError: module 'meep' has no attribute 'Vector3' in python 3 in jupyter notebook and google collab. the error keeps occurring no matter how many times run or uninstalled and installed ubuntu 18.04 again.

0 投票
0 回答
49 浏览

python - Python OverflowError:在“get_GDSII_prisms”方法中,“int”类型的参数 3

我是名为meep的 Python 模块的新用户。我按照本教程进行操作,一切正常。然而,我试图改变一些东西,但我一直有同样的错误:OverflowError:在方法'get_GDSII_prisms'中,'int'类型的参数3

这是导致麻烦的代码部分:

我所做的唯一更改是我将一个函数作为 get_GDSII_prisms 的第一个参数而不是 mp.Medium 实例(调用mp.get_GDSII_prisms(mp.Medium(index=15), gdsII_file, UPPER_BRANCH_LAYER, si_zmin, si_zmax不会造成任何麻烦。)但这应该可以工作,因为该模块的每个函数都需要一个 mp.Medium 实例也可以带用户自定义函数。此外,我发现 Python 在参数 3 上发现错误而我只更改了参数 1 很奇怪。

我在互联网上查看了为什么我有这个错误以及如何解决它,但我没有找到任何东西。

我正在使用 Python 3.8.5。

谢谢您的帮助!

0 投票
0 回答
26 浏览

meep - 简单的波导示例不会在 MEEP 中运行

我已经使用软件管理器在 ubuntu 上安装了 meep。然后我尝试在教程开始时运行简单的波导模型,我得到了这个:

我不知道问题是什么。任何帮助将不胜感激。TIA

0 投票
1 回答
104 浏览

python - 在 Google Colab 中安装 MEEP

我正在尝试使用 Google Colab 安装 MEEP。

我从这里复制了代码:https ://gist.github.com/venky18/e24df1e55502e2d6523881b3f71c0bff 。
但是,结果显示一条错误消息:

ImportError:/content/anaconda/envs/mp/lib/python3.9/site-packages/meep/_meep.so:未定义符号:PyCMethod_New

如何修改我的代码以正确安装它?