Overview of algorithms
Module |
Solver |
Instance |
Description |
Reference |
|---|---|---|---|---|
Maxwell’s field equation module |
||||
Propagator |
Field solver; update \(\mathbf{\hat{E}}\) and \(\mathbf{\hat{B}}\) |
|||
\(\texttt{FDTD2}\) |
2nd-order FDTD solver |
|||
\(\texttt{FDTD4}\) |
4th-order FDTD solver |
|||
\(\texttt{FDTDGen}\) |
FDTD solver with free coefficients |
|||
Filter |
Current smoothing |
|||
\(\texttt{Binomial2}\) |
3-point Binomial digital filter |
|||
\(\texttt{Compensator2}\) |
3-point digital compensator filter |
|||
Particle-in-cell module |
||||
Pusher |
Particle \(\mathbf{\hat{x}}\) and \(\mathbf{\hat{u}}\) update |
|||
base class |
Velocity verlet propagator |
|||
\(\texttt{BorisPusher}\) |
Relativistic Boris pusher |
|||
\(\texttt{VayPusher}\) |
Vay pusher |
|||
\(\texttt{HigueraCaryPusher}\) |
Higuera-Cary pusher |
|||
\(\texttt{rGCAPusher}\) |
Reduced guiding-center pusher |
|||
Interpolator |
Field interpolation to particle’s location |
|||
\(\texttt{LinearInterpolator}\) |
Linear 1st-order interpolator |
|||
\(\texttt{QuadraticInterpolator}\) |
Quadratic 2nd-order interpolator |
|||
\(\texttt{CubicInterpolator}\) |
Cubic 3rd-order interpolator |
|||
\(\texttt{QuarticInterpolator}\) |
Quartic 4th-order interpolator |
|||
Depositer |
Current deposition |
|||
\(\texttt{ZigZag}\) |
1st-order ZigZag scheme |
|||
\(\texttt{ZigZag\_2nd}\) |
2nd-order ZigZag scheme |
|||
\(\texttt{Esikerpov\_2nd}\) |
2nd-order Esikerpov scheme |
|||
\(\texttt{Esikerpov\_4th}\) |
4th-order Esikerpov scheme |
References
Yee (1966)
Greenwood, Cartwright, Luginsland, Baca (2004)
Blinne, Schinkel, Kuschel, et al. (2018)
Verlet (1967)
Boris (1970)
Vay (2008)
Higuera & Cary (2017)
Bacchini, Ripperda, Philippov, Parfrey (2020)
Umeda, Omura, Tominaga, Matsumoto (2003)
Umeda, Omura (2005)