Volume Discrepancy Factor

The volume discrepancy term is used in the constraint equation to force the system back to the equation of state. We write our velocity constraint equation as

(108)(β0U)=β0(S1Γ1p0p0tfΓ1p0p0pEOSΔt).

Here, f is the volume discrepancy factor and ranges from 0 to 1, and pEOS is the thermodynamic pressure as returned by the EOS, using the full state as input. In practice we evaluate this as

(109)pEOS=p(ρ,h,Xk)

The idea behind this forcing term is that if pEOS>p0 then (β0U)>0, and the cell will evacuate. This has the effect of returning us to pEOS=p0.

In MAESTROeX, we decomponse the velocity into a base state component and a local component. The base state constraint equation is simply the horizontal average of the full constraint. Starting with U=U~+w0er in Eq.108, we have

(110)(β0w0er)+(β0U~)=β0(S1Γ1p0p0tfΓ1p0p0pEOSΔt).

Averaging this over a layer, we note that (β0U~)=0, yielding

(111)(β0w0er)=β0(S1Γ1p0p0tfΓ1p0p0pEOSΔt)

and

(112)(β0U~)=β0(SS+fΓ1p0pEOSpEOSΔt).

In solving the w0 evolution Eq.111, we expand the divergence, giving

(113)(w0er)=S1Γ1p0p0tw0er1β0β0fΓ1p0p0pEOSΔt.

Recalling that

(114)1Γ1p0p0r=1β0β0r

(see Paper I), and that ψD0p0/Dtp0/t+w0p0/r, we have

(115)(w0er)=S1Γ1p0ψfΓ1p0p0pEOSΔt.

This is the form that is solved in make_w0.