  We present the standard electromagnetic Particle-in-Cell method, starting
from the discrete approximation of derivatives on a uniform grid. The
application to second-order, centered, finite-difference discretization of the
equations of motion and of Maxwells equations is then described in one
dimension, followed by two and three dimensions. Various algorithms are
presented, for which we discuss the stability and accuracy, introducing and
elucidating concepts like numerical stochastic heating, CFL limit and numerical
dispersion. The coupling of the particles and field quantities via
interpolation at various orders is detailed, together with its implication on
energy and momentum conserving. Special topics of relevance to the modeling of
plasma accelerators are discussed, such as moving window, optimal Lorentz
boosted frame, the numerical Cherenkov instability and its mitigation. Examples
of simulations of laser-driven and particle beam-driven accelerators are given,
including with mesh refinement. We conclude with a discussion on
high-performance computing and a brief outlook.
