Field propagator

ShearAlfvenB1

Advances u and b.

What it solves

FEEC discretization of the following equations:

find and such that

time_discret: Crank-Nicolson (implicit mid-point). System size reduction via struphy.linear_algebra.schur_solver.SchurSolver:

where is a weighted mass matrix in 2-space, the weight being , the MHD equilibirum density.

Variables it advances

The variables this step updates over a time step dt, and the discrete spaces each one accepts.

NameKindAccepted spaces
uFEECVariableHdiv
bFEECVariableHcurl

Options

Set these on the propagator in a parameter file, for example ShearAlfvenB1.Options(solver=...).

OptionDefaultChoicesDescription
solverpcgpcgcgSolver used for the Schur-reduced system.
precondMassMatrixPreconditionerMassMatrixPreconditionerMassMatrixDiagonalPreconditionerNonePreconditioner for M2n block.
solver_paramsNoneSolverParametersSolver controls for the Schur solve.
solver_M1pcgpcgcgSolver used for inverting M1.
precond_M1MassMatrixPreconditionerMassMatrixPreconditionerMassMatrixDiagonalPreconditionerNonePreconditioner for M1 inversion.
solver_params_M1NoneSolverParametersSolver controls for M1 inversion.

Used by

Each model splits its time step into a sequence of propagators. This one appears in 1 model, at the position shown.