计算基础学习包
pyEMLearn的Python项目详细描述
皮姆学习
一个用python编写的计算E&M库,用于学习基础知识
安装
pyEMLearn
可通过pip
获得:
$ pip3 install pyEMLearn
(或者只要pip
,如果您在windows上,或者您的python3
安装有别名)
发展
要安装以开发此包:fork并从github下载此repo,请在head目录中打开一个终端并运行:
^{pr2}$这将创建一个虚拟环境,激活它,安装所需的软件包,
然后将当前版本的pyEMLearn
安装到虚拟环境中。在
对源代码进行更改后,重新运行最后一行进行安装 你的修改版本。在
正在创建源包
$ python3 setup.py sdist bdist_wheel
上传到PyPI
$ python3 -m twine upload dist/*
发展理念
这个包实际上是作为一个学习工具,而不是一个完整的计算工具。因此,为了与散射(传输)矩阵方法的理论更紧密地联系起来,许多核心代码故意效率低下。还有很多其他的计算E&M库,它们效率更高,并且具有更复杂的特性(如^{pyEMLearn
中的开发总是优先考虑用户清晰性而不是代码效率。在
致谢
作者要感谢雷蒙德·鲁姆普夫博士(UTEP)的广泛贡献,本项目主要基于此。在
待办事项
- []评论一切。在
- []添加一些描述性示例
- []添加一些更好的示例
- []重组目录
- []向目录中添加更多材料
- [x] 添加透射矩阵法
- [x] 创建
source
对象,它可以产生k-vec和偏振向量 - [x] 创建
field
对象?哪个能跟踪E?在 - []向
field
对象添加Poynting向量功能 - [x] 开始考虑RCWA
- []修复RCWA,它的AF坏了
V1待办事项,过时
- [x] 用“t”矩阵充实接口对象
- [x] 将接口对象添加到图层对象(和半平面对象)
- []修改utils对象使其更通用
- []将materials repr函数改为不返回参数,将其放入“summary”函数中
- []完成文档串
- [x] 重新构造材质目录
- []向系统添加更多断言。init以确保传输层实际上不是注入层,或者间隙层实际上不只是厚度为零的层,等等
- [x] 提高LHI材料的计算效率?(使用2c.pdf)
- []花一些时间使所有类变量名在大小写/-/\
- [x] 添加配置和许可文件
- [x] 获取PyPi上的安装程序
- []添加各向异性功能
- []举一些更好的例子(布拉格反射器)
- []为参数扫描计算添加并行化选项
- [x] 添加椭圆变量支持
- [x] 添加内部字段支持
- 项目
标签: