|
[Sponsors] |
Lagrangian particle tracking with breakup/coalescence |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
May 30, 2016, 06:16 |
Lagrangian particle tracking with breakup/coalescence
|
#1 |
Member
Andreas Weber
Join Date: Jun 2014
Posts: 37
Rep Power: 12 |
Hi everyone,
lagrangian particles can be tracked using "particleTracks" in postprocessing, so far so good. But when taking a closer look at the code, i found that the tracks are produced with the "origId" and "origProc" of each parcel. This works allright for simple particle simulation where parcels cannot breakup or coalesce. The "origId" is assigned to the parcel on injection and will not change anymore, so it can be easily tracked. But when you have breakup in you simulation, it gets messed up because the daughter parcels will be created as a copy of the motherparcel. The daughterparcel will therefore get the same "origId", so it will be possible to have different parcels with the same origId in your domain. Particle tracking will fail. (It still works, but the tracks are wrong). All in all... parcels do not have a uniqe ID that could be used for tracking in such a complicated simulation. I was wondering how that could be achieved, but since you have to count all injected parcels + added daughter parcels from breakup it could get all messed up. So 1st question: How can i create a counter, that is accessible from injectionModel and breakupModel? 2nd question: would that also work with parallel runs? Best regards Andreas |
|
May 30, 2016, 11:59 |
|
#2 |
Member
Join Date: Jul 2011
Posts: 54
Rep Power: 15 |
Hi Andreas,
have you had a look at the "particleCount_" variable as well as the "getNewParticleID()" function in particle.H? It says particleCount_ may be used to provide a unique ID. And getNewParticleID() should generate a new unique particle creation ID. How does the break-up process work? Can't you manipulate the code in a way that you copy the child particle from the mother object but giving it a new ID? Best regards, Andreas |
|
May 31, 2016, 08:22 |
|
#3 |
Member
Andreas Weber
Join Date: Jun 2014
Posts: 37
Rep Power: 12 |
Hi,
well, wow, that was surprisingly easy ;-) Have not seen that getNewParticleID() before. I have simply added this into the breakup part in SprayParcel.C: Code:
child->origId() = this->getNewParticleID(); Evey parcel will have a uniqe ID now! Great thanks to you! BTW: This will also enable to change coalescence (stochastic collision) models to work more efficient. Working on a code, which will check particle collision with respect to neighbouring cells as well. |
|
October 3, 2023, 09:55 |
|
#4 |
New Member
jinmingjie
Join Date: Oct 2022
Posts: 7
Rep Power: 4 |
Hi Andreas,
How to use the coalesce model for lagrangian particlle. I do not find it in submodels for lagrangian. |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[swak4Foam] Validation of swak4Foam for lagrangian particle tracking | nero235 | OpenFOAM Community Contributions | 13 | March 28, 2017 06:45 |
Request for Lagrangian Particle Tracking Validation or Verification Paper | Mojtaba.a | OpenFOAM Verification & Validation | 6 | May 23, 2016 02:47 |
Lagrangian Particle Tracking in Eulerian-Eulerian Multiphase Flow | DarrenC | CFX | 5 | April 7, 2016 15:50 |
Ubuntu 12.10 + openfoam2.2.0 ==> paraview error message | peteryuan | OpenFOAM Installation | 6 | August 18, 2013 19:00 |
injection problem | Mark New | FLUENT | 0 | August 4, 2013 02:30 |