Advection-Diffusion with source term
March 19, 2019 at 10:15 pm #4168
Hello, I’m relatively new to the LB methods (and especially to OpenLB), so sorry if some of my questions sound stupid.
So, I’m trying to model evaporation of a droplet following the work of C. Zhang, P. Cheng, W.J. Minkowycz “Lattice Boltzmann simulation of forced condensation flow on a horizontal cold surface in the presence of non-condensable gas”. They use source term for their temperature distribution LB equation, so I was wondering if there is an advection-diffusion model with a source term in OpenLB ? If not, is there any way to implement it (a short guide would be very appreciated) ?
EDIT: I also have a second question – considering that I’m using Peng-Robinson EOS for the interparticle potential and this EOS contains temperature explicitly, can I couple NSLattice and ADLattice by simply utilizing the temperature from ADLattice ?
March 20, 2019 at 3:10 pm #4171mgaedtkeKeymaster
- This topic was modified 3 years, 8 months ago by mithdradates.
to 1: I implemented the sourced advection diffusion model by Seta (https://journals.aps.org/pre/abstract/10.1103/PhysRevE.87.063304) a few month ago and it will be included in the next release, which will become available soon.
to 2: Yes, using the temperature from the ADlattice for this purpose should be the way to go. To get an idea how to achieve this in OpenLB you can have a look at the boussinesq coupling in src/dynamics/navierStokesAdvectionDiffusionCouplingPostProcessor2D . h and .hh
Best, MaxMarch 20, 2019 at 3:44 pm #4172
1: That sounds great, thank you for your work! Do you have any information on the date of the next release (somewhere in April or sooner \ later)?
2: So I don’t actually need coupling through boussinesq force term if I have a temperature already in my EOS, is that correct? I mean can I simply reimplement coupling by using PengRobinson pontetial’s overloaded () operator to include temperature from the ADLattice? Just want to make sure I understood you correctly.
I also have some additional questions (as you seem to be very knowledgeable on the subject), if you don’t mind.
3: Are there any in-built functions to calculate derivatives or divergence in OpenLB? I found AnalyticalDiffFD1D functor (from the description: “Derivative of a given 1D functor computed with a finite difference”), but as far as I understand it is suited to compute derivatives of functions (via (f(x + eps) – f(x)) / eps), not physical values like velocity or density.
4: Is there a zero-gradient (neumann) boundary for pressure in OpenLB?
Hope I didn’t take too much of your time. Thank you!
March 21, 2019 at 11:32 am #4174mgaedtkeKeymaster
- This reply was modified 3 years, 8 months ago by mithdradates.
to 1: we are currently preparing the release. we’re about to finalize it in the next few months.
to 2: As far as I understand your plan, yes you can it like described.
to 3: Yes, there are: for example have a look at SuperLatticePhysStrainRateFD3D
to 4: OpenLB has several convection boundaries implemented, if that is what you are looking for. To get an idea, see https://doi.org/10.4208/cicp.091009.290910sMarch 21, 2019 at 12:34 pm #4175
to 1 & 2: Okay, thank you!
to 3: As far as I understand, I can use SuperFiniteDifference3D to calculate derivatives. Correct?
to 4: I was looking for Neumann outflow condition (dP/dn = 0 – zero gradient) for pressure.
- You must be logged in to reply to this topic.