From d64d947f44c9c4469b2be1a190748d2d2e69299d Mon Sep 17 00:00:00 2001 From: Thibault Barnouin Date: Fri, 7 Jan 2022 11:57:10 +0100 Subject: [PATCH 1/3] debugg COMShift --- lib/objects.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/objects.py b/lib/objects.py index d0e2893..3e90782 100755 --- a/lib/objects.py +++ b/lib/objects.py @@ -106,9 +106,11 @@ class System(Body): return coord def COMShift(self): #Shift coordinates of bodies in system to COM frame and set COM at rest + COM = self.COM + COMV = self.COMV for body in self.bodylist: - body.q = body.q - self.COM - body.v = body.v - self.COMV + body.q = body.q - COM + body.v = body.v - COMV @property def LCOM(self): #return angular momentum of the center of mass From 5728ff39f198c66fac511398b978770edbc60432 Mon Sep 17 00:00:00 2001 From: Thibault Barnouin Date: Fri, 7 Jan 2022 13:26:07 +0100 Subject: [PATCH 2/3] debugg gif savegit status --- lib/LeapFrog.py | 2 +- lib/hermite.py | 2 +- main.py | 6 ++++-- main_concurrent.py | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/lib/LeapFrog.py b/lib/LeapFrog.py index 43e943e..3d882f3 100644 --- a/lib/LeapFrog.py +++ b/lib/LeapFrog.py @@ -67,7 +67,7 @@ def leapfrog(dyn_syst, bin_syst, duration, dt, recover_param=False, display=Fals d.on_running(dyn_syst, step=step, label="{0:.2f} years".format(j*dt/yr)) if display: d.close() - if not savename is None: + if gif: system("convert -delay 5 -loop 0 tmp/??????.png tmp/temp.gif && rm tmp/??????.png") system("convert tmp/temp.gif -fuzz 10% -layers Optimize plots/{0:s}_dynsyst.gif".format(savename)) diff --git a/lib/hermite.py b/lib/hermite.py index 8d1cfdd..4ae1aa5 100644 --- a/lib/hermite.py +++ b/lib/hermite.py @@ -114,7 +114,7 @@ def hermite(dyn_syst, bin_syst, duration, dt, recover_param=False, display=False d.on_running(dyn_syst, step=step, label="{0:.2f} years".format(j*dt/yr)) if display: d.close() - if not savename is None: + if gif: system("convert -delay 5 -loop 0 tmp/??????.png tmp/temp.gif && rm tmp/??????.png") system("convert tmp/temp.gif -fuzz 10% -layers Optimize plots/{0:s}_dynsyst.gif".format(savename)) diff --git a/main.py b/main.py index a1245c2..77d325c 100755 --- a/main.py +++ b/main.py @@ -36,7 +36,7 @@ def main(): savename = "{0:d}bodies_{1:s}".format(n_bodies, integrator) #simulation start - E, L = [], [] + E, L, sma, ecc = [], [], [], [] for i,step0 in enumerate(step): bodylist = [] for j in range(n_bodies): @@ -52,7 +52,9 @@ def main(): E0, L0, sma, ecc = hermite(dyn_syst, bin_syst, duration, step0, recover_param=True, display=display, savename=savename, gif=gif) E.append(E0) L.append(L0) - + sma.append(sma0) + ecc.append(ecc0) + parameters = [duration, step, dyn_syst, integrator] display_parameters(E, L, sma, ecc, parameters=parameters, savename=savename) return 0 diff --git a/main_concurrent.py b/main_concurrent.py index 94e8f14..ec93d96 100755 --- a/main_concurrent.py +++ b/main_concurrent.py @@ -29,7 +29,7 @@ def main(): v = np.array([v1, v2, v3],dtype=np.longdouble) #integration parameters - duration, step = 5000.*yr, np.array([10./(365.25)],dtype=np.longdouble)*yr #integration time and step in seconds + duration, step = 100.*yr, np.array([1./(365.25)],dtype=np.longdouble)*yr #integration time and step in seconds step = np.sort(step)[::-1] integrator = "leapfrog" n_bodies = 3 From 4387a8bf15ed5b17a40540dbcb0cc40d95975445 Mon Sep 17 00:00:00 2001 From: Thibault Barnouin Date: Fri, 7 Jan 2022 13:55:44 +0100 Subject: [PATCH 3/3] debugg sma and ecc in main.py --- main.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/main.py b/main.py index 77d325c..03ae055 100755 --- a/main.py +++ b/main.py @@ -47,9 +47,9 @@ def main(): if i != 0: display = False if integrator.lower() in ['leapfrog', 'frogleap', 'frog']: - E0, L0, sma, ecc = leapfrog(dyn_syst, bin_syst, duration, step0, recover_param=True, display=display, savename=savename, gif=gif) + E0, L0, sma0, ecc0 = leapfrog(dyn_syst, bin_syst, duration, step0, recover_param=True, display=display, savename=savename, gif=gif) elif integrator.lower() in ['hermite','herm']: - E0, L0, sma, ecc = hermite(dyn_syst, bin_syst, duration, step0, recover_param=True, display=display, savename=savename, gif=gif) + E0, L0, sma0, ecc0 = hermite(dyn_syst, bin_syst, duration, step0, recover_param=True, display=display, savename=savename, gif=gif) E.append(E0) L.append(L0) sma.append(sma0)