From b1df6f7cceddd1c360dae084f344757a5bbe7dad Mon Sep 17 00:00:00 2001 From: David Minton Date: Wed, 19 May 2021 19:53:46 -0400 Subject: [PATCH] Improvements to stability --- src/symba/symba_frag_pos.f90 | 2 +- src/util/util_minimize_bfgs.f90 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/symba/symba_frag_pos.f90 b/src/symba/symba_frag_pos.f90 index 2b5b49b78..10c07c783 100644 --- a/src/symba/symba_frag_pos.f90 +++ b/src/symba/symba_frag_pos.f90 @@ -502,7 +502,7 @@ subroutine set_fragment_position_vectors() ! Place the fragments into a region that is big enough that we should usually not have overlapping bodies ! An overlapping bodies will collide in the next time step, so it's not a major problem if they do (it just slows the run down) - r_max = 3.0_DP + r_max = 1.5_DP ! We will treat the first fragment of the list as a special case. It gets initialized the maximum distance along the original impactor distance vector. ! This is done because in a regular disruption, the first body is the largest fragment. diff --git a/src/util/util_minimize_bfgs.f90 b/src/util/util_minimize_bfgs.f90 index 9c0e3d73d..d529dc11b 100644 --- a/src/util/util_minimize_bfgs.f90 +++ b/src/util/util_minimize_bfgs.f90 @@ -28,7 +28,7 @@ function util_minimize_bfgs(f, N, x0_d, eps_d, lerr) result(x1_d) real(DP), dimension(:), allocatable :: x1_d ! Internals integer(I4B) :: i, j, k, l, conv, num - integer(I4B), parameter :: MAXLOOP = 10000 !! Maximum number of loops before method is determined to have failed + integer(I4B), parameter :: MAXLOOP = 100 !! Maximum number of loops before method is determined to have failed real(QP), parameter :: gradeps = 1e-5_QP !! Tolerance for gradient calculations real(QP), dimension(N) :: S !! Direction vectors real(QP), dimension(N) :: Snorm !! normalized direction