one parcel contains too many particles after breakup
I use sprayFoam to simulate water droplet's breakup,the breakup model is ETAB and KHRT model,when the parcel was injected into air ,it contains only one particle,but after
breakup the number of particle in one parcel is more than 1000。 (1) I think too many particles in one parcel will influence the droplet's distribution,especially when the water was injected into supersonic flow. (2)I'm not sure whether it's a bug or not,I want to control the number of particle in one parcel less than 50,but I don't know how to do it. (3)Is there some way to add some new parcels to make sure the number of particle in one parcel is less than 50? |
Quote:
Othwerwise, have a look at the KHRT model. -Armin |
Quote:
(1) if one parcel contains more than 2 particles,a childParcel will be added.nParticel of the childParcel is half of parenParcel.nParticle and mass of parenParcel will be reduced. The code is: scalar massDrop = pow3(d)*rhopi6; nParticle = mass/massDrop; if (nParticle >= 2) addParcel = true; d = cbrt(massDrop/rhopi6); ms = 0.0; dChild = cbrt(massDrop/rhopi6); massChild = 0.5*nParticle*pow3(dChild)*rhopi6; mass -= massChild; nParticle-=0.5*nParticle; } I add this code at the end of RT breakup and KHindex breakup. (2)Since the addParcel function is realized in SprayParcel.C,I think change the code in SprayParcel.C is more effective than in KHRT model.The code is: while(this->nParticle()>6) { SprayParcel<ParcelType>* myaddchild = new SprayParcel<ParcelType>(*this); myaddchild->nParticle() =5; td.cloud().addParticle(myaddchild); this->mass()-=5*3.14*1000*pow3(this->d())/6; this->nParticle()-=5; } I add this code after calcBreakup(td, dt, cellI); but it doesn't work.I don't no how to solve it.Can you give me some advice. Thank you verymuch. |
Please, use the CODE tags!
Some beginners guidelines are given here: http://www.cfd-online.com/Forums/ope...tml#post424508 Quote:
Besides, changes in SprayParcel.C would affect all breakup models, something you clearly don't want to do when evaluating different models. There is also not really any benefit concerning the computational efficiency! |
Quote:
(1)I have changed the code in KHRT model.I tried two methods,but I think it have some problems. The first one(The red word is my code): Code:
if ((tc > 0) || (lambdaRT < d) ) The second one: Code:
if ((tc > 0) || (lambdaRT < d) ) (2)The code I have changed inSprayParcel.C Code:
if (liquidCore() > 0.5) Thank you very much. |
Without knowing what goes wrong it's pretty difficult to say why. Any error message?
(Before posting the error message/log, please read the guidelines on how to do that properly.) |
All times are GMT -4. The time now is 04:53. |