Field propagator
PoissonAdiabaticGyrokinetic
Advances phi.
What it solves
Weak discretization of the Poisson equation, with adabatic response of electrons.
Find such that
where can be an anisotropic (gyrokinetic) diffusion operator (or the identity), is the gyrokinetic ratio defined in units, and Z the charge number of ions. Boundary terms from integration by parts are assumed to vanish.
The equation is discretized as
where is the gyrokinetic mass matrix and is a stabilization matrix.
Variables it advances
The variables this step updates over a time step dt, and the discrete spaces each one accepts.
| Name | Kind | Accepted spaces |
|---|---|---|
phi | FEECVariable | H1 |
Options
Set these on the propagator in a parameter file, for example PoissonAdiabaticGyrokinetic.Options(stab_mat=...).
| Option | Default | Choices | Description |
|---|---|---|---|
stab_mat | M0ad_withT | M0M0adIdM0ad_withT | Stabilization matrix multiplied by stab_eps. |
diffusion_mat | M1gyro | M1M1perpM1gyro | Diffusion matrix. |
which_geometry | cylindrical | cylindricaltoroidal | Geometry of the problem, determines the meaning of `<\phi>` in the stabilization term. |
x0 | None | StencilVector | Initial guess for the iterative linear solver. |
solver | pcg | pcgcg | Name of the symmetric iterative solver passed to inverse. |
precond | MassMatrixPreconditioner | MassMatrixPreconditionerMassMatrixDiagonalPreconditionerNone | Name of the preconditioner configuration. Currently this class inherits the same behavior as ImplicitDiffusion, where pc=None is used internally. |
solver_params | None | SolverParameters | Iterative-solver controls (for example tol, maxiter, verbose, info, recycle). If None, defaults to SolverParameters(). |
filter_params | None | dict | If not None, specifies a filter to the accumulation of a specific variable. |
Used by
Each model splits its time step into a sequence of propagators. This one appears in 1 model, at the position shown.