The moving boundary model defines two domains separated by an interface. The velocity of the interface is controlled by the fluxes of components leaving/entering the domain:
$$\frac{v}{V_m^\alpha} \left( x_k^\alpha - x_k^\beta \right) = J_k^\alpha - J_k^\beta$$
There's essentially 3 things to solve for:
- Diffusion in each domain
- Local equilibrium at the interface
- Velocity of the interface (this is coupled with the local equilibrium calculation since the velocity has to be equal for each element)
Implementing has proved to be a bit tricky (at least for me). There seems to be several ways this can be implemented including:
- Having the domains on a Langragian-type mesh where the cell sizes grow/shrink based off the diffusion fluxes
- How do we treat the case when the domain size becomes 0?
- Having a fixed domain, where we explicitly track the interface as a separate term
- Do we treat this interface as an "extra" node when computing fluxes or use the interface in place of the nearest node?
- How do we treat the case when the interface approaches the bounds of the domain?
- A level set method where the interface is another field variable
The moving boundary model defines two domains separated by an interface. The velocity of the interface is controlled by the fluxes of components leaving/entering the domain:
$$\frac{v}{V_m^\alpha} \left( x_k^\alpha - x_k^\beta \right) = J_k^\alpha - J_k^\beta$$
There's essentially 3 things to solve for:
Implementing has proved to be a bit tricky (at least for me). There seems to be several ways this can be implemented including: