krylov¶
-
emg3d.solver.
krylov
(model, sfield, efield, var)[source]¶ Krylov subspace solver for three-dimensional electromagnetic diffusion.
Using a Krylov subspace iterative solver (defined in
var.sslsolver
) implemented in SciPy with or without multigrid as a pre-conditioner ([Muld06]).The electric field is stored in-place in
efield
.The current error (l2-norm) is stored in
var.l2
.The reference error (l2-norm of
sfield
) is stored invar.l2_refe
.
This function is called by
emg3d.solver.solve
.- Parameters
- modelVolumeModel
Input model; a
emg3d.models.Model
instance.- sfieldField
The source field; a
emg3d.fields.Field
instance.- efieldField
The electric field; a
emg3d.fields.Field
instance.- varMGParameters
A multigrid parameter instance used within
emg3d.solver.multigrid
.