3D 电磁时域电弧和阻抗求解器
项目描述
Wake 和 Impedance Solver
wakis
是一个 3D 时域电磁求解器,使用有限积分技术(FIT)数值方法求解麦克斯韦方程组的积分形式。它通过模拟的电场和磁场计算纵向和横向 电弧势和束耦合阻抗。它也是一个多功能求解器,能够模拟平面波与纳米结构的相互作用、光学衍射等更多内容!
关于
:rocket: wakis
的一些功能
- 不同相对论性 $\beta$ 的粒子束的电弧势和阻抗计算
- 材料张量:电容率 $\varepsilon$、磁导率 $\mu$、电导率 $\sigma$。具有各向异性可能。
- CAD 几何导入器(
.stl
格式),用于定义嵌入式边界和材料区域,基于 pyvista - 边界条件:PEC、PMC、周期性、ABC-FOEXTRAP
- 不同的时域源:粒子束、平面波、高斯波包
- 100%使用Python,完全暴露的API(材料张量、场 $E$、$H$、$J$)。基于
numpy
和scipy.sparse
程序的矩阵运算确保快速计算。 - 1D、2D、3D 嵌入式绘图
- 优化内存消耗
- 使用 cupy/cupyx 进行 GPU 加速
- 完美匹配层(PML)即将推出!
如何使用
:book: 文档,由 sphinx
支持,可在 wakis.readthedocs.io 获取
检查 :file_folder: benchmarks/
以进行束耦合阻抗计算以及与商业工具 CST® 醒场求解器的比较
- 截止频率以下(毫米)和截止频率以上(厘米)的 PEC 立方腔
- 截止频率以下的导电立方腔
- 截止频率以上的损耗型药盒形(圆柱形)腔
- 使用不同相对论性 $\beta$ 的束进行模拟
检查 :file_folder: examples/
以查看不同的物理应用
- 平面波与 PEC 或介电球体相互作用
- 高斯波包穿过真空中/介电质
- 与 PEC 几何体相互作用的定制扰动
如有特定需求,请联系开发者 :woman_technologist: :wave
动机
电磁激波及其对加速器性能的影响是当前加速器组件中的一个重要问题。这些激波是在加速器真空室内,由于结构与通过束的相互作用而产生的,可以显著影响机器。这些影响可以通过频域中的束耦合阻抗和时间域中的激波势来表征。准确评估这些特性对于预测耗散功率和保持束稳定至关重要。《wakis》是一个开源工具,可以计算一般3D结构的纵向和横向平面上的激波势和阻抗。《wakis》最初在IPAC23会议上作为后处理工具推出
现在它已经从后处理工具发展成为一个完整的3D电磁、时域求解器。
安装
本节解释如何设置环境以开始使用 wakis
3D电磁时域模拟和束耦合阻抗计算
开发者:从 Github 下载 wakis 仓库
# SSH:
git clone git@github.com:ImpedanCEI/wakis.git
# or HTTPS:
git clone https://github.com/ImpedanCEI/wakis.git
# Create python environment
cd wakis/
conda create --name wakis-env python=3.9
conda activate wakis-env
pip install -r requirements.txt
用户:从 PyPI 使用 pip 安装
即将推出