用广义多粒子mie理论(gmmt)求解麦克斯韦方程组
miep的Python项目详细描述
米比
miepy是用于广义多部分mie理论(gmmt)的python模块,也称为聚合t矩阵方法。miepy求解具有任意入射源的球形或非球形散射体集合的电动力学。
功能
- 非球形粒子通过具有离散源的零场方法(nfm-ds)使用t矩阵公式。包括圆柱体、球体、椭球体、立方体和多边形棱柱体
- 任意入射源(平面波、高斯光束、hg和lg光束、点偶极子)
- 单个粒子的截面和光力和力矩的计算
- 周期边界条件具有各种晶格类型(正方形、六角形等)和镜像和离散旋转对称以实现更快的计算
- 可选平面接口(基板)
- 3d场景可视化使用vpython库
- openmp并行化适用于粒子数较大的系统
用法
有关示例和用例,请参见示例文件夹。
有关完整文档,请参见文档文件夹。
安装
如果尚未安装Numpy,则必须在安装Miepy之前安装它
pip install numpy
然后安装miepy
pip install miepy
要从源代码构建miepy,请首先安装所需的依赖项:
- GNU Scientific Library (GSL)
- GCC和Gfortran
- python 3和pip
然后,使用pip安装miepy
pip install miepy --no-binary
要构建最新的开发版本,请克隆miepy及其子模块:
git clone https://github.com/johnaparker/miepy.git miepy --recurse-submodules &&cd miepy
并使用pip安装miepy
pip install .
或者,运行测试以验证正确性:
pytest tests
样本输出
许可证
Miepy根据GPLv3许可的条款获得许可。