diff --git a/src/io/io.f90 b/src/io/io.f90 index 2fdc0efa9..2d8334b60 100644 --- a/src/io/io.f90 +++ b/src/io/io.f90 @@ -172,6 +172,7 @@ module subroutine io_dump_system(self, param) real(DP) :: deltawall, wallperstep, tfrac integer(I8B) :: clock_count, count_rate, count_max character(*), parameter :: statusfmt = '("Time = ", ES12.5, "; fraction done = ", F6.3, "; Number of active pl, tp = ", I5, ", ", I5)' + character(*), parameter :: symbastatfmt = '("Time = ", ES12.5, "; fraction done = ", F6.3, "; Number of active plm, pl, tp = ", I5, ", ", I5, ", ", I5)' character(len=*), parameter :: walltimefmt = '(" Wall time (s): ", es12.5, "; Wall time/step in this interval (s): ", es12.5)' logical, save :: lfirst = .true. real(DP), save :: start, finish @@ -209,7 +210,12 @@ module subroutine io_dump_system(self, param) deltawall = clock_count / (count_rate * 1.0_DP) - finish wallperstep = deltawall / param%istep_dump finish = clock_count / (count_rate * 1.0_DP) - write(*, statusfmt) param%t, tfrac, self%pl%nbody, self%tp%nbody + select type(pl => self%pl) + class is (symba_pl) + write(*, symbastatfmt) param%t, tfrac, pl%nplm, pl%nbody, self%tp%nbody + class default + write(*, statusfmt) param%t, tfrac, pl%nbody, self%tp%nbody + end select write(*, walltimefmt) finish - start, wallperstep if (param%lenergy) call self%conservation_report(param, lterminal=.true.) end if