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

mpirun and selfcoded fvPatchField: "attempt to access element from zero sized list"

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   July 12, 2010, 10:22
Default mpirun and selfcoded fvPatchField: "attempt to access element from zero sized list"
  #1
New Member
 
Join Date: Mar 2010
Posts: 27
Rep Power: 16
astein is on a distinguished road
Hi guys,

I have the following issue:
I coded my own fvPatchField, which inerhits the "mixedFvPatchField" and is compiled as s shared library and added to the controlDict. In a serial run, everything works fine. Running the same case in an parallel run on two processors yields to an error such as:

##############################
[1] attempt to access element from zero sized list
[1]
[1] From function UList<T>::checkIndex(const label)
[1] in file /XXXXXX/OpenFOAM//OpenFOAM-1.5-dev/src/OpenFOAM/lnInclude/UListI.H at line 105.
[1]
FOAM parallel run aborting
##############################

I doublechecked, that the boundary using my BC has not been cut by the domain decomposition, so there should be no problems here. As well it is interesting, that the error comes from the processor, where my BC is NOT located.
Running the very same case with the same decomposeParDict but changing to another BC works fine, so I do believe there is an error in my BC.

Has anybody a hint for me how I could locate the error? How could I analyze what list the process tries to access?

Any ideas are appreciated, thanks for helping!
-Andreas.
astein is offline   Reply With Quote

Old   July 13, 2010, 04:43
Default
  #2
Senior Member
 
Stefan Herbert
Join Date: Dec 2009
Location: Darmstadt, Germany
Posts: 129
Rep Power: 17
herbert is on a distinguished road
Hi Andreas,

just be aware, that your code is executed on every processor separately. So take care, that nothing is done if you don't have any patch faces on one of the processors.

Of course it is impossible to tell you, where exactly this error comes from without knowing your piece of code.

Regards,
Stefan
herbert is offline   Reply With Quote

Old   July 14, 2010, 04:49
Default
  #3
New Member
 
Join Date: Mar 2010
Posts: 27
Rep Power: 16
astein is on a distinguished road
Hi Herbert,
I am not really sure what you mean with

Quote:
Originally Posted by herbert View Post
So take care, that nothing is done if you don't have any patch faces on one of the processors.
While doing some more testing, I experienced the following: The BC does seem to work in parallel, when the name of the BC is changed to fixedValue or zeroGradient on the processor, where the corrsponding patch(es) are NOT located. Apparently, there is some sort of namig issue with the second processor.

Any idea how to find out what the second processor really does with that boundary condition? After the domaindecompostion, the BC is still stated in the different fields of both processors, so the BCs have to be read somehow by all processors. Print-Statements in the constructors of the BC and checking with mpirunDebug did not give any success.

Again, any help is appreciated. Thanks in advance!
-Andreas.
astein is offline   Reply With Quote

Reply


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 Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
mpirun and selfcoded fvPatchField: "attempt to access element from zero sized list" astein OpenFOAM 0 July 12, 2010 10:05


All times are GMT -4. The time now is 00:18.