首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

仿真之pymeep学习记录-windows下的安装方法

微信公众号:iFanFan

如果你觉得这篇文章对你有帮助,欢迎赞赏

如果其中有什么错误,请后台联系我,谢谢。

Meep is a free and open-source software package for simulating electromagnetic systems via the finite-difference time-domain (FDTD) method. Meep is an acronym for MIT Electromagnetic Equation Propagation.

开始的话

   前段时间更新了两篇comsol仿真文章。今天换一个口味,学习一下MIT开发的开源电磁仿真软件。

   很久以前就关注了meep这个开源计算软件,因为开源它不要钱!而且用的是FDTD算法,可以和comsol形成互补。但是,meep主要在linux系统下使用,对于平时使用windows居多的我来说,想想就放弃了。现在又想学习了,是因为它现在支持python语言了,python可是科学计算和机器学习的热门语言!

最近,又去研究了下meep的文档,发现它给出了在windows系统下安装meep的方法。所以,今天决定安装一个试一试,学习下。

Windows下安装meep方法

   meep的官方文档网址,有软件功能,API函数以及python接口和相关案例的介绍,是主要的学习资料。

   官方给出了好几种安装方法,这里我就介绍我最习惯的一种。因为我有一定的python基础,选择官方推荐的conda包管理器,如果你会python也定是很熟悉的了。如果你不会python,没关系,抓紧学python吧。

   Windows下如何安装meep,简单说还是需要安装类unix系统。主要方法有:win10系统安装Ubuntu app(微软商城);win8及以前的系统可以安装Cygwin。

   这里介绍安装ubuntu app的方法。在安装ubuntu app之前需要在控制面板中,找到程序与功能,然后启用“启用或关闭windows功能选项卡”中的适用于linux的windows子系统,如下图:

   开通之后重启电脑,然后就可以直接安装Ubuntu app了。

   有了Ubuntu app之后,我们需要安装conda环境。最简单的方法就是安装一个miniconda,以python3为例,安装miniconda,打开Ubuntu app,然后输入:

   该命令是将miniconda下载到本地的当前目录,然后需要安装它。安装方法为下载完成后,在当前目录输入:

   其中是指,输入一个你想取的安装文件夹的名称,这里我取为meep。

然后设置conda的环境变量:

   建议使用永久加入环境变量的方法,不然每次重启ubuntu app后,都需要设置环境变量太麻烦。方法是:cd到home目录,然后打开.bashrc文件,将export PATH=/bin:$PATH加在最后并保存。

   有了conda环境之后,就可以开始安装pymeep了。在Ubuntu terminal窗口输入:

   该命令是创建一个mp环境(名字可以任意取),并下载pymeep以及相关联的包。完成之后,就算安装好了。这其中有注意事项,读者可以去官网仔细看看,这里就不再赘述。

   安装并行pymeep的方法类似,输入下面代码,自动完成即可:

运行方法:首先要运行哪一个就激活那一个的环境。比如运行meep,那么用source activate mp激活环境,这时候在命令行的前端可以看到多了mp。然后就可以按照教程开始运行meep实例了。要激活并行meep,那么先关闭mp环境,用source deactivate即可,然后激活并行meep环境,即运行source activate pmp即可。这样基本完成了meep的安装。

image

运行的时候,在import matplotlib.pyplot as plt时,有可能会报错,这时候需要将matplotlibrc file中的backend进行更改,改为如下形式,安装中如果有其他问题请后台或者留言联系。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180902G1HQKY00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券