prolongation¶
-
emg3d.solver.
prolongation
(grid, efield, cgrid, cefield, sc_dir)[source]¶ Interpolating the electric field from coarse grid to fine grid.
The prolongation from a coarser to a finer grid is the inverse process of the restriction (
restriction()
) from a finer to a coarser grid. The interpolated values of the coarse grid electric field are added to the fine grid electric field, in-place. Piecewise constant interpolation is used in the direction of the field, and bilinear interpolation in the other two directions.See Equation 10 in [Muld06] and surrounding text.
This function is called by
multigrid()
.Parameters: - grid, cgrid :
emg3d.meshes.TensorMesh
Fine and coarse grids.
- efield, cefield :
emg3d.fields.Field
Fine and coarse grid electric fields.
- sc_dir : int
Direction of semicoarsening (0, 1, 2, or 3).
- grid, cgrid :