Skip to content

Commit 6260675

Browse files
committed
FDS Source: Issue #14362. Fix summing issue
1 parent 8ea8d1e commit 6260675

File tree

2 files changed

+16
-5
lines changed

2 files changed

+16
-5
lines changed

Source/dump.f90

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10253,8 +10253,14 @@ SUBROUTINE UPDATE_HRR(DT,NM)
1025310253
ENDDO
1025410254
ENDDO CFACE_LOOP_2
1025510255

10256-
Q_DOT_SUM = Q_DOT_SUM + DT*Q_DOT
10257-
M_DOT_SUM = M_DOT_SUM + DT*M_DOT
10256+
! Muliply the energy and mass rates (Q_DOT, M_DOT (W)) for this time step by the time step size, DT.
10257+
! For all the meshes belonging to the current MPI process, keep a running tally of the rates (Q_DOT_SUM, M_DOT_SUM (J)).
10258+
! When it is time for a dump to the CHID_hrr.csv file, sum up (i.e. MPI_ALLREDUCE) Q_DOT_SUM and M_DOT_SUM in main.f90.
10259+
10260+
IF (NM==UPPER_MESH_INDEX) THEN
10261+
Q_DOT_SUM = Q_DOT_SUM + DT*Q_DOT
10262+
M_DOT_SUM = M_DOT_SUM + DT*M_DOT
10263+
ENDIF
1025810264

1025910265
END SUBROUTINE UPDATE_HRR
1026010266

Source/main.f90

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4079,9 +4079,14 @@ SUBROUTINE DUMP_GLOBAL_OUTPUTS
40794079
! Dump out HRR info into CHID_hrr.csv
40804080

40814081
IF (T>=HRR_CLOCK(HRR_COUNTER(1))) THEN
4082-
CALL MPI_ALLREDUCE(MPI_IN_PLACE,Q_DOT_SUM,N_Q_DOT,MPI_DOUBLE_PRECISION,MPI_SUM,MPI_COMM_WORLD,IERR)
4083-
CALL MPI_ALLREDUCE(MPI_IN_PLACE,M_DOT_SUM,N_TRACKED_SPECIES,MPI_DOUBLE_PRECISION,MPI_SUM,MPI_COMM_WORLD,IERR)
4084-
IF (MY_RANK==0) CALL DUMP_HRR(T,DT)
4082+
IF (MY_RANK==0) THEN
4083+
CALL MPI_REDUCE(MPI_IN_PLACE,Q_DOT_SUM,N_Q_DOT,MPI_DOUBLE_PRECISION,MPI_SUM,0,MPI_COMM_WORLD,IERR)
4084+
CALL MPI_REDUCE(MPI_IN_PLACE,M_DOT_SUM,N_TRACKED_SPECIES,MPI_DOUBLE_PRECISION,MPI_SUM,0,MPI_COMM_WORLD,IERR)
4085+
CALL DUMP_HRR(T,DT)
4086+
ELSE
4087+
CALL MPI_REDUCE(Q_DOT_SUM,Q_DOT_SUM,N_Q_DOT,MPI_DOUBLE_PRECISION,MPI_SUM,0,MPI_COMM_WORLD,IERR)
4088+
CALL MPI_REDUCE(M_DOT_SUM,M_DOT_SUM,N_TRACKED_SPECIES,MPI_DOUBLE_PRECISION,MPI_SUM,0,MPI_COMM_WORLD,IERR)
4089+
ENDIF
40854090
HRR_COUNTER(1) = HRR_COUNTER(1) + 1
40864091
Q_DOT_SUM = 0._EB
40874092
M_DOT_SUM = 0._EB

0 commit comments

Comments
 (0)