diff --git a/src/symba/symba_encounter_check.f90 b/src/symba/symba_encounter_check.f90 index fe593bf7c..372a40996 100644 --- a/src/symba/symba_encounter_check.f90 +++ b/src/symba/symba_encounter_check.f90 @@ -46,10 +46,18 @@ module function symba_encounter_check_pl(self, system, dt, irec) result(lany_enc plplenc_list%id1(1:nenc) = pl%id(plplenc_list%index1(1:nenc)) plplenc_list%id2(1:nenc) = pl%id(plplenc_list%index2(1:nenc)) do k = 1, nenc - plplenc_list%status(k) = ACTIVE - plplenc_list%level(k) = irec - pl%lencounter(plplenc_list%index1(k)) = .true. - pl%lencounter(plplenc_list%index2(k)) = .true. + associate(i => plplenc_list%index1(k), j => plplenc_list%index2(k)) + plplenc_list%status(k) = ACTIVE + plplenc_list%level(k) = irec + pl%lencounter(i) = .true. + pl%lencounter(j) = .true. + pl%levelg(i) = irec + pl%levelm(i) = irec + pl%levelg(j) = irec + pl%levelm(j) = irec + pl%nplenc(i) = pl%nplenc(i) + 1 + pl%nplenc(j) = pl%nplenc(j) + 1 + end associate end do end associate end if @@ -186,7 +194,15 @@ module function symba_encounter_check_tp(self, system, dt, irec) result(lany_enc class is (symba_pl) pl%lencounter(1:npl) = .false. do k = 1, nenc - pl%lencounter(pltpenc_list%index1(k)) = .true. + associate(plind => pltpenc_list%index1(k), tpind => pltpenc_list%index2(k)) + pl%lencounter(plind) = .true. + pl%levelg(plind) = irec + pl%levelm(plind) = irec + tp%levelg(tpind) = irec + tp%levelm(tpind) = irec + pl%ntpenc(plind) = pl%ntpenc(plind) + 1 + tp%nplenc(tpind) = tp%nplenc(tpind) + 1 + end associate end do end select end associate diff --git a/src/symba/symba_step.f90 b/src/symba/symba_step.f90 index 1988b4fbc..2b68c1f1d 100644 --- a/src/symba/symba_step.f90 +++ b/src/symba/symba_step.f90 @@ -255,7 +255,7 @@ module subroutine symba_step_reset_system(self, param) tp%nplenc(:) = 0 tp%levelg(:) = 0 tp%levelm(:) = 0 - system%pltpenc_list%nenc = 0 + system%pltpenc_list%nenc = 0 end if call system%pl_adds%setup(0, param)