mirror of
https://github.com/openmc-dev/openmc.git
synced 2026-07-27 21:55:41 -04:00
Ensure time is propagated to secondary particles
This commit is contained in:
parent
24b741f2b3
commit
ef61563079
8 changed files with 35 additions and 32 deletions
|
|
@ -138,24 +138,25 @@ void initialize_mpi(MPI_Comm intracomm)
|
|||
|
||||
// Create bank datatype
|
||||
SourceSite b;
|
||||
MPI_Aint disp[9];
|
||||
MPI_Aint disp[10];
|
||||
MPI_Get_address(&b.r, &disp[0]);
|
||||
MPI_Get_address(&b.u, &disp[1]);
|
||||
MPI_Get_address(&b.E, &disp[2]);
|
||||
MPI_Get_address(&b.wgt, &disp[3]);
|
||||
MPI_Get_address(&b.delayed_group, &disp[4]);
|
||||
MPI_Get_address(&b.surf_id, &disp[5]);
|
||||
MPI_Get_address(&b.particle, &disp[6]);
|
||||
MPI_Get_address(&b.parent_id, &disp[7]);
|
||||
MPI_Get_address(&b.progeny_id, &disp[8]);
|
||||
for (int i = 8; i >= 0; --i) {
|
||||
MPI_Get_address(&b.time, &disp[3]);
|
||||
MPI_Get_address(&b.wgt, &disp[4]);
|
||||
MPI_Get_address(&b.delayed_group, &disp[5]);
|
||||
MPI_Get_address(&b.surf_id, &disp[6]);
|
||||
MPI_Get_address(&b.particle, &disp[7]);
|
||||
MPI_Get_address(&b.parent_id, &disp[8]);
|
||||
MPI_Get_address(&b.progeny_id, &disp[9]);
|
||||
for (int i = 9; i >= 0; --i) {
|
||||
disp[i] -= disp[0];
|
||||
}
|
||||
|
||||
int blocks[] {3, 3, 1, 1, 1, 1, 1, 1, 1};
|
||||
MPI_Datatype types[] {MPI_DOUBLE, MPI_DOUBLE, MPI_DOUBLE, MPI_DOUBLE, MPI_INT,
|
||||
MPI_INT, MPI_INT, MPI_LONG, MPI_LONG};
|
||||
MPI_Type_create_struct(9, blocks, disp, types, &mpi::source_site);
|
||||
int blocks[] {3, 3, 1, 1, 1, 1, 1, 1, 1, 1};
|
||||
MPI_Datatype types[] {MPI_DOUBLE, MPI_DOUBLE, MPI_DOUBLE, MPI_DOUBLE,
|
||||
MPI_DOUBLE, MPI_INT, MPI_INT, MPI_INT, MPI_LONG, MPI_LONG};
|
||||
MPI_Type_create_struct(10, blocks, disp, types, &mpi::source_site);
|
||||
MPI_Type_commit(&mpi::source_site);
|
||||
}
|
||||
#endif // OPENMC_MPI
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue