From cd31bf3329182add4d8dbfaf782441936142bb33 Mon Sep 17 00:00:00 2001 From: David A Minton Date: Fri, 21 Oct 2022 11:32:31 -0400 Subject: [PATCH] Pulled the final momentum calc for the colliders out of the consolidation loop where it didn't belong --- src/symba/symba_collision.f90 | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/symba/symba_collision.f90 b/src/symba/symba_collision.f90 index edee2455e..dcb2b674b 100644 --- a/src/symba/symba_collision.f90 +++ b/src/symba/symba_collision.f90 @@ -549,17 +549,17 @@ function symba_collision_consolidate_colliders(pl, cb, param, idx_parent, collid density(j) = colliders%mass(j) / volume(j) colliders%radius(j) = (3 * volume(j) / (4 * PI))**(1.0_DP / 3.0_DP) if (param%lrotation) colliders%Ip(:, j) = colliders%Ip(:, j) / colliders%mass(j) - - xcom(:) = (colliders%mass(1) * colliders%xb(:, 1) + colliders%mass(2) * colliders%xb(:, 2)) / sum(colliders%mass(:)) - vcom(:) = (colliders%mass(1) * colliders%vb(:, 1) + colliders%mass(2) * colliders%vb(:, 2)) / sum(colliders%mass(:)) - mxc(:, 1) = colliders%mass(1) * (colliders%xb(:, 1) - xcom(:)) - mxc(:, 2) = colliders%mass(2) * (colliders%xb(:, 2) - xcom(:)) - vcc(:, 1) = colliders%vb(:, 1) - vcom(:) - vcc(:, 2) = colliders%vb(:, 2) - vcom(:) - colliders%L_orbit(:,:) = mxc(:,:) .cross. vcc(:,:) end do lflag = .true. + xcom(:) = (colliders%mass(1) * colliders%xb(:, 1) + colliders%mass(2) * colliders%xb(:, 2)) / sum(colliders%mass(:)) + vcom(:) = (colliders%mass(1) * colliders%vb(:, 1) + colliders%mass(2) * colliders%vb(:, 2)) / sum(colliders%mass(:)) + mxc(:, 1) = colliders%mass(1) * (colliders%xb(:, 1) - xcom(:)) + mxc(:, 2) = colliders%mass(2) * (colliders%xb(:, 2) - xcom(:)) + vcc(:, 1) = colliders%vb(:, 1) - vcom(:) + vcc(:, 2) = colliders%vb(:, 2) - vcom(:) + colliders%L_orbit(:,:) = mxc(:,:) .cross. vcc(:,:) + ! Destroy the kinship relationships for all members of this colliders%idx call pl%reset_kinship(colliders%idx(:))