public subroutine field_add_gaussian_sources_base(self, a, b, c, points, coeffs, eps, r_cut)
Adds isotropic Gaussian sources to the DIR_X VERT fields a, b and c:
at every grid point x within distance r_cut of points(1:3, s),
a += coeffs(1, s)*exp(-|x - points(:, s)|^2/eps^2), and likewise b
and c with coeffs(2, s) and coeffs(3, s). The kernel wraps across
periodic boundaries, consistent with field_sample_points, and is cut
at non-periodic ones. Needs a uniform grid.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.