hxaxtma |
October 11, 2016 03:50 |
Immersed Boundary foam-ext 3.2 Parallelization for higher amount of MPI tasks
Hi guys,
I observed a little bug regarding the IB Method of Jasak and its parallelization.
Meanwhile the immersed boundary region is not decomposed over different cores, the IB implementation runs in parallel. Nevertheless, if the Immersed Boundary regionis decomposed over different cores, an error occurs.
Code:
Create time
Create mesh for time = 0
Create immersed boundary cell mask
Create immersed boundary face mask
Found immersed boundary patch 0 named ibCylinder
[3] Number of IB cells: 0
[6] Number of IB cells: 0
[7] Number of IB cells: 0
External flow
[2] Number of IB cells: 0
[5] Number of IB cells: 0
[4] Number of IB cells: 0
[0] Number of IB cells: 63666
[1] Number of IB cells: 81786
Reading transportProperties
Reading field p
Reading field U
Reading/calculating face flux field phi
Starting time loop
Time = 5e-05
Courant Number mean: 0.00304818143 max: 1.81649312 velocity magnitude: 2.35556273
*** Error in `icoIbFoam': free(): invalid next size (normal): 0x000000002468a800 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x7410f)[0x2b80e90ea10f]
/lib64/libc.so.6(+0x7996e)[0x2b80e90ef96e]
/lib64/libc.so.6(+0x7a647)[0x2b80e90f0647]
/home/iagaxtma/opt/foam/foam-extend-3.2/lib/linux64GccDPOpt/libfiniteVolume.so(_ZN4Foam4ListINS_4PairIiEEE7setSizeEi+0x42)[0x2b80e59ded72]
/home/iagaxtma/opt/foam/foam-extend-3.2/lib/linux64GccDPOpt/libimmersedBoundary.so(_ZNK4Foam23immersedBoundaryFvPatch15makeIbCellCellsEv+0x1c38)[0x2b80e72526b8]
/home/iagaxtma/opt/foam/foam-extend-3.2/lib/linux64GccDPOpt/libimmersedBoundary.so(_ZNK4Foam23immersedBoundaryFvPatch11ibCellCellsEv+0x1d)[0x2b80e7252a0d]
At the moment I do overcome this by creating a zone and preserving this faceZone on one processor, with this workaround, the IB method also runs for higher rates of mpi tasks in parallel,
Nevertheless I would like to fix this bug, the problem is, I do not really know where to start. I had a deeper look in the Immersed Boundary Implementation files, but somehow I am missing the important part.
Any hint would be appreciated and maybe Prof Jasak has an advice.
Thanks
|