当前位置: X-MOL 学术J. Comput. Phys. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
MHD-kinetic hybrid code based on structure-preserving finite elements with particles-in-cell
Journal of Computational Physics ( IF 4.1 ) Pub Date : 2021-02-15 , DOI: 10.1016/j.jcp.2021.110143
Florian Holderied , Stefan Possanner , Xin Wang

We present a STRUcture-Preserving HYbrid code - STRUPHY - for the simulation of magneto-hydrodynamic (MHD) waves interacting with a population of energetic particles far from thermal equilibrium (kinetic species). The implemented model features linear, ideal MHD equations in curved, three-dimensional space, coupled nonlinearly to the full-orbit Vlasov equations via a current coupling scheme. The algorithm is based on finite element exterior calculus (FEEC) for MHD and particle-in-cell (PIC) methods for the kinetic part; it provably conserves mass, energy, and the divergence-free magnetic field, irrespective of metric (= space curvature), mesh parameters and chosen order of the scheme. These properties enable reliable long-time simulations of energetic particle physics in complex geometries, covering the whole range of MHD waves. In STRUPHY, the finite element spaces are built from tensor products of univariate B-splines on the logical cuboid and can be made high-order by increasing the polynomial degree. Time-stepping is based on a skew-symmetric splitting with implicit sub-steps, mitigating CFL conditions from fast magneto-acoustic waves. High-order time splitting schemes can be used in this regard.



中文翻译:

基于单元格内保留结构有限元的MHD动力学混合码

我们提出了一种保存结构的混合码-STRUPHY-用于模拟磁流体动力学(MHD)波与远离热平衡(运动物种)的高能粒子的相互作用。所实现的模型具有在弯曲的三维空间中的线性理想MHD方程,并通过电流耦合方案非线性耦合到全轨道Vlasov方程。该算法基于用于MHD的有限元外部演算(FEEC)和用于运动部分的单元内粒子(PIC)方法。它可以证明节省了质量,能量和无散度的磁场,而与度量(=空间曲率),网格参数和方案的选择顺序无关。这些特性使得可以对复杂几何体中的高能粒子物理进行可靠的长期仿真,涵盖了整个MHD波。在STRUPHY中 有限元空间是由逻辑长方体上的单变量B样条的张量积构建的,可以通过增加多项式的阶数来将其设为高阶。时间步长基于带有隐式子步长的偏斜对称分裂,可缓解快速磁声波中的CFL条件。在这方面可以使用高阶时间分割方案。

更新日期:2021-02-18
down
wechat
bug