Mathematics > Numerical Analysis
[Submitted on 2 Sep 2014 (v1), last revised 26 Feb 2016 (this version, v5)]
Title:Exact Charge-Conserving Scatter-Gather Algorithm for Particle-in-Cell Simulations on Unstructured Grids: A Geometric Perspective
View PDFAbstract:We describe a charge-conserving scatter-gather algorithm for particle-in-cell simulations on unstructured grids. Charge conservation is obtained from first principles, i.e., without the need for any post-processing or correction steps. This algorithm recovers, at a fundamental level, the scatter-gather algorithms presented recently by Campos-Pinto et al. [1] (to first-order) and by Squire et al. [2], but it is derived here in a streamlined fashion from a geometric viewpoint. Some ingredients reflecting this viewpoint are (1) the use of (discrete) differential forms of various degrees to represent fields, currents, and charged particles and provide localization rules for the degrees of freedom thereof on the various grid elements (nodes, edges, facets), (2) use of Whitney forms as basic interpolants from discrete differential forms to continuum space, and (3) use of a Galerkin formula for the discrete Hodge star operators (i.e., "mass matrices" incorporating the metric datum of the grid) applicable to generally irregular, unstructured grids. The expressions obtained for the scatter charges and scatter currents are very concise and do not involve numerical quadrature rules. Appropriate fractional areas within each grid element are identified that represent scatter charges and scatter currents within the element, and a simple geometric representation for the (exact) charge conservation mechanism is obtained by such identification. The field update is based on the coupled first-order Maxwell's curl equations to avoid spurious modes with secular growth (otherwise present in formulations that discretize the second-order wave equation). Examples are provided to verify preservation of discrete Gauss' law for all times.
Submission history
From: Haksu Moon [view email][v1] Tue, 2 Sep 2014 19:43:41 UTC (741 KB)
[v2] Tue, 2 Dec 2014 02:45:39 UTC (1,353 KB)
[v3] Fri, 20 Mar 2015 22:13:44 UTC (1,669 KB)
[v4] Wed, 27 May 2015 00:41:18 UTC (1,669 KB)
[v5] Fri, 26 Feb 2016 07:41:24 UTC (1,663 KB)
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Connected Papers (What is Connected Papers?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
alphaXiv (What is alphaXiv?)
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Hugging Face (What is Huggingface?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.