CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   Parallel using icoLagrangianFoam (https://www.cfd-online.com/Forums/openfoam-solving/67691-parallel-using-icolagrangianfoam.html)

N. A. December 20, 2010 17:03

particles in Parallel runs do not get injected
 
dear Bernard and others,

I have modeified coalChemistryFoam in OF-1.6 with 3 types of coal particles, viz., coalCloud1, coalCloud2 and coalCloud3.

If I run just a single node run, then all the particles get injected from the three patches.

But if I decompose the run into multiple processors (say 16, 32 or 64), then somehow particles do not get injected. As if the solver does not have any information about lagrangian particle injection.

This is just strange and I am wondering if anyone knows what could be the reason for this.

Please let me know your inputs, if any.

Thanks,
Nir

gschaider December 21, 2010 06:07

Quote:

Originally Posted by N. A. (Post 287931)
dear Bernard and others,

I have modeified coalChemistryFoam in OF-1.6 with 3 types of coal particles, viz., coalCloud1, coalCloud2 and coalCloud3.

If I run just a single node run, then all the particles get injected from the three patches.

But if I decompose the run into multiple processors (say 16, 32 or 64), then somehow particles do not get injected. As if the solver does not have any information about lagrangian particle injection.

This is just strange and I am wondering if anyone knows what could be the reason for this.

Please let me know your inputs, if any.

Thanks,
Nir

Hi Nir!

Some questions:
- have you tried running the regular coalChemistryFoam-solver in a similar configuration (just to rule out that the problem is with your modification)
- Which version of 1.6 are you running? Vanilla 1.6, 1.6.x (that one should have bug-fixes) or 1.6-ext
- how is this question related to icoLagrangianFoam

Bernhard

N. A. December 21, 2010 11:39

Quote:

Originally Posted by gschaider (Post 287984)
Hi Nir!

Some questions:
- have you tried running the regular coalChemistryFoam-solver in a similar configuration (just to rule out that the problem is with your modification)
- Which version of 1.6 are you running? Vanilla 1.6, 1.6.x (that one should have bug-fixes) or 1.6-ext
- how is this question related to icoLagrangianFoam

Bernhard

Hi Bernard,

Probably this is not very connected to IcoLagrangianFoam, but because there are particle models involved, I thought I will ask this question here. The reguglar coalChemistryFoam does work in multiple processors.

I guess I should re-check on my implementation before I have more questions on it.

Thanks,
Nir

gschaider December 22, 2010 04:36

Quote:

Originally Posted by N. A. (Post 288006)
Hi Bernard,

Probably this is not very connected to IcoLagrangianFoam, but because there are particle models involved, I thought I will ask this question here. The reguglar coalChemistryFoam does work in multiple processors.

I guess I should re-check on my implementation before I have more questions on it.

Thanks,
Nir

You can't have done much wrong (if you just added the Clouds). Which injection model do you use? Try varying that and try disabling 2 of the 3 clouds (by setting active to false in the properties-dictionary)

Bernhard

N. A. January 26, 2011 16:44

Hello Bernard and Folks,

I think I was able to get the 3 clouds done eventually.

But I want to know if anyone of you are aware of any extention of ManualInjection options with continuous injection for multiple locations. In one of my case I have to have 12 injections. I am guessing it may be simpler to convert ManualInjection at multiple points to have multiple Cone injections from those points?

Any ideas, information!

Thanks,
Nir

N. A. January 26, 2011 17:39

Hello Folks,

I think I found something in the InjectionModel. I think ConeInjectionMP can handle injections from multiple points.

-Nir

N. A. March 1, 2011 11:03

ConeInjectionMP
 
Has anyone used ConinjectionMP. I am trying to use injections from 24 different locations, but it only injectios from 6 locations.

Has anyone experienced this kind of behaviour with ConeInjectionMP? How can I check if it is really reading the number of injections that I am specifying.

Thanks,
Nir

foamWang March 1, 2011 11:10

Hi, Nir,

My experience is avoid injecting close to processor's boundary. Sometimes wired things happen. Please check it.

Thanks.

Roro

Quote:

Originally Posted by N. A. (Post 297502)
Has anyone used ConinjectionMP. I am trying to use injections from 24 different locations, but it only injectios from 6 locations.

Has anyone experienced this kind of behaviour with ConeInjectionMP? How can I check if it is really reading the number of injections that I am specifying.

Thanks,
Nir


flying March 11, 2011 04:58

Hey Gschaider:

I hope you are fine and I feel you can help me about the question.

I have make the icoLagrangianFoam run in the paralleled way, but when I compute smaller particles such as around 2 micro meter. The time step becomes very small. For example in normal 1.0e-6 is enough, but in this particle size, it can be 1.0e-7. Even this time step, it doesn't work and I have to change it to 1.0e-8.

By the way, I feel confused that when I try to identify the call process of the function, I find it doesn't call the function of HardBallParticle::Move() in the paralleled computation. It should call it, but I can see it calls the function. In the single process, I can see it call the function through outputting in the function, but in the paralleled computation, I can not get any information through outputting.

So small step is not acceptable for me, please give me some advice on it.

Thanks and best regards

flying March 11, 2011 05:00

Quote:

Originally Posted by gschaider (Post 235633)
There are two such methods. One is empty. The other not.

I hope you are fine and I feel you can help me about the question.

I have make the icoLagrangianFoam run in the paralleled way, but when I compute smaller particles such as around 2 micro meter. The time step becomes very small. For example in normal 1.0e-6 is enough, but in this particle size, it can be 1.0e-7. Even this time step, it doesn't work and I have to change it to 1.0e-8.

By the way, I feel confused that when I try to identify the call process of the function, I find it doesn't call the function of HardBallParticle::Move() in the paralleled computation. It should call it, but I can see it calls the function. In the single process, I can see it call the function through outputting in the function, but in the paralleled computation, I can not get any information through outputting.

So small step is not acceptable for me, please give me some advice on it.

Thanks and best regards

gschaider March 11, 2011 09:31

Quote:

Originally Posted by flying (Post 298975)
I hope you are fine and I feel you can help me about the question.

I have make the icoLagrangianFoam run in the paralleled way, but when I compute smaller particles such as around 2 micro meter. The time step becomes very small. For example in normal 1.0e-6 is enough, but in this particle size, it can be 1.0e-7. Even this time step, it doesn't work and I have to change it to 1.0e-8.

By the way, I feel confused that when I try to identify the call process of the function, I find it doesn't call the function of HardBallParticle::Move() in the paralleled computation. It should call it, but I can see it calls the function. In the single process, I can see it call the function through outputting in the function, but in the paralleled computation, I can not get any information through outputting.

So small step is not acceptable for me, please give me some advice on it.

Thanks and best regards

With such small particles the question is whether you need a lagrangian solver (because the particles will immidiately follow the flow)

Don't know about your concrete problem.

For output on parallel processes use Pout instead of Info (you will get the same output but with the processor number)

Bernhard

flying March 11, 2011 10:56

Dear gschaider:

Thanks so much for your reply. For my problem, I am sure that the lagrangian solver is fine for me. I will try to output it again and try to identify the reason and I update the further result about it. Thanks so much.

Quote:

Originally Posted by gschaider (Post 235633)
There are two such methods. One is empty. The other not.

Quote:

Originally Posted by gschaider (Post 299003)
With such small particles the question is whether you need a lagrangian solver (because the particles will immidiately follow the flow)

Don't know about your concrete problem.

For output on parallel processes use Pout instead of Info (you will get the same output but with the processor number)

Bernhard


flying March 19, 2011 08:44

Dear Gschaider:


As your suggestion, I use the 'Pout' to output the information. And finally, I find the problem happens during the process of particle transferring. It seems that, the particles doesn't change so much in the case that the dt is too big. If it is small enough. After some steps. it will be carried forward. It seems that dt influences the particles' transformation. It is sad that I don't know the way. Would you please give me some hint about it?

It seems that the update method is not influenced so much by the time step as the particle transferring in different processors.

Quote:

Originally Posted by gschaider (Post 299003)
With such small particles the question is whether you need a lagrangian solver (because the particles will immidiately follow the flow)

Don't know about your concrete problem.

For output on parallel processes use Pout instead of Info (you will get the same output but with the processor number)

Bernhard


gschaider March 21, 2011 04:28

Quote:

Originally Posted by flying (Post 300164)
Dear Gschaider:


As your suggestion, I use the 'Pout' to output the information. And finally, I find the problem happens during the process of particle transferring. It seems that, the particles doesn't change so much in the case that the dt is too big. If it is small enough. After some steps. it will be carried forward. It seems that dt influences the particles' transformation. It is sad that I don't know the way. Would you please give me some hint about it?

It seems that the update method is not influenced so much by the time step as the particle transferring in different processors.

This may or may not (I have not time to check) this bug:

http://www.cfd-online.com/Forums/ope...l-patches.html

flying March 21, 2011 04:42

Dear Gschaider:

Thanks so much for it. I think it is very possible. Would you mind providing me some idea on how to solve the problem? In fact, definitely I need to give the WallImpactdistance function.

Thanks so much and best wishes!

Quote:

Originally Posted by gschaider (Post 300308)
This may or may not (I have not time to check) this bug:

http://www.cfd-online.com/Forums/ope...l-patches.html


flying March 21, 2011 05:02

Dear Gschaider:

There is another question which is funny as well. In the paralleled computation. If I injected the particles at different time step. Cell number is less than 0, but it is still injected, but cellI is totally strange in the injected data. I am also trying to solve this problem. If it is possible, would you please give me some hint on it.

Thanks and best wishes!


flying March 21, 2011 05:20

I am sorry that I didn't see the patch file. Sorry again. I will try again

Quote:

Originally Posted by flying (Post 300313)
Dear Gschaider:

Thanks so much for it. I think it is very possible. Would you mind providing me some idea on how to solve the problem? In fact, definitely I need to give the WallImpactdistance function.

Thanks so much and best wishes!


flying March 25, 2011 05:02

Dear Gschaider:

I have solved the problem as the guide in the link.

If it is possible, I would like to inquire you for another problem.

During injection particles in paralleled computation, although the cellI is -1, but particles are still injected and it is double as in the single processor. If I change the mesh.findNearestCell. It will be four times of the particles number in single processor.

Would you please give me some hint about how particles is injected in the paralleled computation? Then I probably find the reason.

So many thanks and best wishes!

Quote:

Originally Posted by gschaider (Post 300308)
This may or may not (I have not time to check) this bug:

http://www.cfd-online.com/Forums/ope...l-patches.html



All times are GMT -4. The time now is 14:59.