j-fu / VoronoiFVM.jl

Solution of nonlinear multiphysics partial differential equation systems using the Voronoi finite volume method
MIT License
202 stars 34 forks source link

Jump Conditions #58

Open roman-schaerer opened 1 year ago

roman-schaerer commented 1 year ago

Hello Jürgen Fuhrmann,

I'm very interested in your package for the simulation of the coupled transport processes in a flow battery cell. For this I'd like to use internal jump conditions: For simplicity let's consider a one-dimensional Laplace equation with Dirichlet conditions at the domain boundaries. What is the recommended way to enforce a jump in the function value (for some prescribed value) at some location x in the domain, whereas the left and right limits of the derivative at x are identical?

Looking through the examples it seems that this could be achieved using a DiscontinuousQuantity. However, currently it is unclear to me how to interpret the resulting discretization and achieve a prescribed jump in the solution.

Thanks for developing this very nice package.

j-fu commented 1 year ago

What is the physical background of the "internal jump condition" ? IMHO one could just enforce the jump by implementing some kind of penalty method and assemble y= (u_left - u_right-jump)/epsilon for small epsilon. Flux continuity should be fulfilled nevertheless. Need to check this though.

j-fu commented 1 year ago

Ok, checked, works.

See the (not yet released) Pluto notebook under https://github.com/j-fu/VoronoiFVM.jl/blob/master/pluto-examples/interfaces1d.jl for some examples on what can happen at interfaces.

roman-schaerer commented 1 year ago

Thanks a lot for this comprehensive illustration of interface models. This notebook is very helpful to get a better understanding of the different interface conditions.

For my current model, I'm going to investigate the thin conductive interface layer approximation.