moeyensj / thor

Tracklet-less Heliocentric Orbit Recovery
BSD 3-Clause "New" or "Revised" License
41 stars 14 forks source link

Swap to adam_core's Propagator, Orbits, and Observers #126

Closed moeyensj closed 1 year ago

moeyensj commented 1 year ago

Replaces:

Removes:

All unit tests pass, but most importantly: pytest -k ivezic -m integration passes! This tests the entire pipeline.

The benchmark shows a slowdown from 1.2695 to 1.4256 seconds. This is more than likely due to the conversion from adam_core types to dataframes still used by a large part of the THOR pipeline. I'll change those types out in a follow up PR.

akoumjian commented 1 year ago

Yeah, that makes sense to me.

On Thu, Nov 2, 2023 at 09:48 Joachim Moeyens @.***> wrote:

@.**** commented on this pull request.

In thor/orbits/iod.py https://github.com/moeyensj/thor/pull/126#discussion_r1380174785:

@@ -178,8 +184,8 @@ def iod( observation_selection_method="combinations", iterate=False, light_time=True,

  • backend="PYOORB",
  • backend_kwargs={},
  • propagator: Literal["PYOORB"] = "PYOORB",

Yes, good idea. In range and transform we pass the actual class, not a string. Maybe we pass the class all the way through to the worker functions and then initialize it in there?

propagator: Type["Propagator"] = PYOORB,propagator_kwargs: dict = {},

Then inside worker functions:

prop = propagator(**propagator_kwargs)

— Reply to this email directly, view it on GitHub https://github.com/moeyensj/thor/pull/126#discussion_r1380174785, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAFTGJF3TLUV3CSQQ3VUAGLYCOQEPAVCNFSM6AAAAAA62JRC3KVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMYTOMJQGM2DOMBWGI . You are receiving this because you commented.Message ID: @.***>