Field propagator

VariationalEntropyEvolve

Advances s and u.

What it solves

FEEC discretization of the following equations:

find and such that

On the logical domain:

where depends on the chosen model. It is discretized as

where denotes the vector representing the linear form , that is the vector with components

and the weights in the the struphy.feec.basis_projection_ops.BasisProjectionOperator and the struphy.feec.mass.WeightedMassOperator are given by

\hat{\mathbf{u}}_h^{k} = (\mathbf{u}^{k})^\top \vec{\boldsymbol \Lambda}^v \in (V_h^0)^3 \, \text{for k in} \{n, n+1/2, n+1\}, \qquad \hat{s}_h^{k} = (s^{k})^\top \vec{\boldsymbol \Lambda}^3 \in V_h^3 \, \text{for k in} \{n, n+1/2, n+1\} \qquad \hat{\rho}_h^{n} = (\rho^{n})^\top \vec{\boldsymbol \Lambda}^3 \in V_h^3 \.

Variables it advances

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

NameKindAccepted spaces
sFEECVariableL2
uFEECVariableH1vec

Options

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

OptionDefaultChoicesDescription
modelfullfullEntropy-evolution model selection.
gamma1.66667floatAdiabatic index.
solverpcgpcgcgLinear solver for implicit substeps.
precondMassMatrixPreconditionerMassMatrixPreconditionerMassMatrixDiagonalPreconditionerNonePreconditioner used in linear solves.
solver_paramsNoneSolverParametersLinear-solver controls.
nonlin_solverNoneNonlinearSolverParametersNonlinear iteration controls.

Used by

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