CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Running, Solving & CFD

Parallel using icoLagrangianFoam

Register Blogs Members List Search Today's Posts Mark Forums Read

Reply
 
LinkBack Thread Tools Display Modes
Old   December 20, 2010, 18:03
Default particles in Parallel runs do not get injected
  #21
Member
 
N. A.
Join Date: May 2010
Posts: 64
Rep Power: 7
N. A. is on a distinguished road
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
N. A. is offline   Reply With Quote

Old   December 21, 2010, 07:07
Default
  #22
Assistant Moderator
 
Bernhard Gschaider
Join Date: Mar 2009
Posts: 3,912
Rep Power: 40
gschaider will become famous soon enoughgschaider will become famous soon enough
Quote:
Originally Posted by N. A. View Post
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
gschaider is offline   Reply With Quote

Old   December 21, 2010, 12:39
Default
  #23
Member
 
N. A.
Join Date: May 2010
Posts: 64
Rep Power: 7
N. A. is on a distinguished road
Quote:
Originally Posted by gschaider View Post
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
N. A. is offline   Reply With Quote

Old   December 22, 2010, 05:36
Default
  #24
Assistant Moderator
 
Bernhard Gschaider
Join Date: Mar 2009
Posts: 3,912
Rep Power: 40
gschaider will become famous soon enoughgschaider will become famous soon enough
Quote:
Originally Posted by N. A. View Post
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
gschaider is offline   Reply With Quote

Old   January 26, 2011, 17:44
Default
  #25
Member
 
N. A.
Join Date: May 2010
Posts: 64
Rep Power: 7
N. A. is on a distinguished road
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. is offline   Reply With Quote

Old   January 26, 2011, 18:39
Default
  #26
Member
 
N. A.
Join Date: May 2010
Posts: 64
Rep Power: 7
N. A. is on a distinguished road
Hello Folks,

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

-Nir
N. A. is offline   Reply With Quote

Old   March 1, 2011, 12:03
Default ConeInjectionMP
  #27
Member
 
N. A.
Join Date: May 2010
Posts: 64
Rep Power: 7
N. A. is on a distinguished road
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
N. A. is offline   Reply With Quote

Old   March 1, 2011, 12:10
Default
  #28
New Member
 
foamWang's Avatar
 
Roro Wang
Join Date: Mar 2010
Location: Cambridge, MA, USA
Posts: 29
Rep Power: 7
foamWang is on a distinguished road
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. View Post
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 is offline   Reply With Quote

Old   March 11, 2011, 05:58
Default
  #29
Senior Member
 
xinguang cui
Join Date: Mar 2009
Posts: 116
Rep Power: 8
flying is on a distinguished road
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 is offline   Reply With Quote

Old   March 11, 2011, 06:00
Default
  #30
Senior Member
 
xinguang cui
Join Date: Mar 2009
Posts: 116
Rep Power: 8
flying is on a distinguished road
Quote:
Originally Posted by gschaider View Post
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
flying is offline   Reply With Quote

Old   March 11, 2011, 10:31
Default
  #31
Assistant Moderator
 
Bernhard Gschaider
Join Date: Mar 2009
Posts: 3,912
Rep Power: 40
gschaider will become famous soon enoughgschaider will become famous soon enough
Quote:
Originally Posted by flying View Post
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
gschaider is offline   Reply With Quote

Old   March 11, 2011, 11:56
Default
  #32
Senior Member
 
xinguang cui
Join Date: Mar 2009
Posts: 116
Rep Power: 8
flying is on a distinguished road
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 View Post
There are two such methods. One is empty. The other not.
Quote:
Originally Posted by gschaider View Post
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 is offline   Reply With Quote

Old   March 19, 2011, 09:44
Default
  #33
Senior Member
 
xinguang cui
Join Date: Mar 2009
Posts: 116
Rep Power: 8
flying is on a distinguished road
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 View Post
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 is offline   Reply With Quote

Old   March 21, 2011, 05:28
Default
  #34
Assistant Moderator
 
Bernhard Gschaider
Join Date: Mar 2009
Posts: 3,912
Rep Power: 40
gschaider will become famous soon enoughgschaider will become famous soon enough
Quote:
Originally Posted by flying View Post
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:

Particle-class uses wallImpactDistance on non-wall patches
gschaider is offline   Reply With Quote

Old   March 21, 2011, 05:42
Default
  #35
Senior Member
 
xinguang cui
Join Date: Mar 2009
Posts: 116
Rep Power: 8
flying is on a distinguished road
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 View Post
This may or may not (I have not time to check) this bug:

Particle-class uses wallImpactDistance on non-wall patches
flying is offline   Reply With Quote

Old   March 21, 2011, 06:02
Default
  #36
Senior Member
 
xinguang cui
Join Date: Mar 2009
Posts: 116
Rep Power: 8
flying is on a distinguished road
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 is offline   Reply With Quote

Old   March 21, 2011, 06:20
Default
  #37
Senior Member
 
xinguang cui
Join Date: Mar 2009
Posts: 116
Rep Power: 8
flying is on a distinguished road
I am sorry that I didn't see the patch file. Sorry again. I will try again

Quote:
Originally Posted by flying View Post
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 is offline   Reply With Quote

Old   March 25, 2011, 06:02
Default
  #38
Senior Member
 
xinguang cui
Join Date: Mar 2009
Posts: 116
Rep Power: 8
flying is on a distinguished road
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 View Post
This may or may not (I have not time to check) this bug:

Particle-class uses wallImpactDistance on non-wall patches
flying is offline   Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Script to Run Parallel Jobs in Rocks Cluster asaha OpenFOAM Running, Solving & CFD 12 July 4, 2012 22:51
HP MPI warning...Distributed parallel processing Peter CFX 10 May 14, 2011 06:17
Parallel Moving Mesh Bug for Multi-patch Case albcem OpenFOAM 0 May 21, 2009 00:23
IcoFoam parallel woes msrinath80 OpenFOAM Running, Solving & CFD 9 July 22, 2007 02:58
Parallel Computing Classes at San Diego Supercomputer Center Jan. 20-22 Amitava Majumdar Main CFD Forum 0 January 5, 1999 13:00


All times are GMT -4. The time now is 06:20.