Commit b04de6f7 authored by Volker Springel's avatar Volker Springel
Browse files

fixed a problem when the collective SUBFIND(-HBT) algorithm was working on...

fixed a problem when the collective SUBFIND(-HBT) algorithm was working on particles on a lightcone (i.e. for LIGHTCONE_PARTICLES_GROUPS)
parent 4d6fa796
......@@ -231,7 +231,7 @@ void fof<partset>::subfind_distribute_particles(MPI_Comm Communicator)
{
if(Recv_count[target] > 0)
{
MPI_Irecv(Tp->P + Recv_offset[target], Recv_count[target] * sizeof(particle_data), MPI_BYTE, target, TAG_PDATA,
MPI_Irecv(Tp->P + Recv_offset[target], Recv_count[target] * sizeof(typename partset::pdata), MPI_BYTE, target, TAG_PDATA,
Communicator, &requests[n_requests++]);
MPI_Irecv(Tp->PS + Recv_offset[target], Recv_count[target] * sizeof(subfind_data), MPI_BYTE, target, TAG_KEY,
Communicator, &requests[n_requests++]);
......@@ -247,8 +247,8 @@ void fof<partset>::subfind_distribute_particles(MPI_Comm Communicator)
{
if(Send_count[target] > 0)
{
MPI_Issend(partBuf + Send_offset[target], Send_count[target] * sizeof(particle_data), MPI_BYTE, target, TAG_PDATA,
Communicator, &requests[n_requests++]);
MPI_Issend(partBuf + Send_offset[target], Send_count[target] * sizeof(typename partset::pdata), MPI_BYTE, target,
TAG_PDATA, Communicator, &requests[n_requests++]);
MPI_Issend(subBuf + Send_offset[target], Send_count[target] * sizeof(subfind_data), MPI_BYTE, target, TAG_KEY,
Communicator, &requests[n_requests++]);
}
......@@ -267,9 +267,9 @@ void fof<partset>::subfind_distribute_particles(MPI_Comm Communicator)
{
if(Send_count[target] > 0 || Recv_count[target] > 0)
{
myMPI_Sendrecv(partBuf + Send_offset[target], Send_count[target] * sizeof(particle_data), MPI_BYTE, target, TAG_PDATA,
Tp->P + Recv_offset[target], Recv_count[target] * sizeof(particle_data), MPI_BYTE, target, TAG_PDATA,
Communicator, MPI_STATUS_IGNORE);
myMPI_Sendrecv(partBuf + Send_offset[target], Send_count[target] * sizeof(typename partset::pdata), MPI_BYTE, target,
TAG_PDATA, Tp->P + Recv_offset[target], Recv_count[target] * sizeof(typename partset::pdata), MPI_BYTE,
target, TAG_PDATA, Communicator, MPI_STATUS_IGNORE);
myMPI_Sendrecv(subBuf + Send_offset[target], Send_count[target] * sizeof(subfind_data), MPI_BYTE, target, TAG_KEY,
Tp->PS + Recv_offset[target], Recv_count[target] * sizeof(subfind_data), MPI_BYTE, target, TAG_KEY,
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment