|
12 | 12 | from adam_core.coordinates.residuals import Residuals
|
13 | 13 | from adam_core.propagator import PYOORB, Propagator
|
14 | 14 | from adam_core.propagator.utils import _iterate_chunks
|
| 15 | +from adam_core.ray_cluster import initialize_use_ray |
15 | 16 |
|
16 | 17 | from ..clusters import ClusterMembers
|
17 | 18 | from ..observations.observations import Observations
|
@@ -126,13 +127,11 @@ def iod_worker(
|
126 | 127 | propagator: Type[Propagator] = PYOORB,
|
127 | 128 | propagator_kwargs: dict = {},
|
128 | 129 | ) -> Tuple[FittedOrbits, FittedOrbitMembers]:
|
129 |
| - |
130 | 130 | prop = propagator(**propagator_kwargs)
|
131 | 131 |
|
132 | 132 | iod_orbits_list = []
|
133 | 133 | iod_orbit_members_list = []
|
134 | 134 | for linkage_id in linkage_ids:
|
135 |
| - |
136 | 135 | time_start = time.time()
|
137 | 136 | logger.debug(f"Finding initial orbit for linkage {linkage_id}...")
|
138 | 137 |
|
@@ -379,7 +378,6 @@ def iod(
|
379 | 378 | # belonging to one object yield a good initial orbit but the presence of outlier
|
380 | 379 | # observations is skewing the sum total of the residuals and chi2
|
381 | 380 | elif num_outliers > 0:
|
382 |
| - |
383 | 381 | logger.debug("Attempting to identify possible outliers.")
|
384 | 382 | for o in range(num_outliers):
|
385 | 383 | # Select i highest observations that contribute to
|
@@ -424,11 +422,9 @@ def iod(
|
424 | 422 | j += 1
|
425 | 423 |
|
426 | 424 | if not converged or not processable:
|
427 |
| - |
428 | 425 | return FittedOrbits.empty(), FittedOrbitMembers.empty()
|
429 | 426 |
|
430 | 427 | else:
|
431 |
| - |
432 | 428 | orbit = FittedOrbits.from_kwargs(
|
433 | 429 | orbit_id=orbit_sol.orbit_id,
|
434 | 430 | object_id=orbit_sol.object_id,
|
@@ -574,18 +570,11 @@ def initial_orbit_determination(
|
574 | 570 | iod_orbits_list = []
|
575 | 571 | iod_orbit_members_list = []
|
576 | 572 | if len(observations) > 0 and len(linkage_members) > 0:
|
577 |
| - |
578 | 573 | # Extract linkage IDs
|
579 | 574 | linkage_ids = linkage_members.column(linkage_id_col).unique()
|
580 | 575 |
|
581 |
| - if max_processes is None or max_processes > 1: |
582 |
| - |
583 |
| - if not ray.is_initialized(): |
584 |
| - logger.info( |
585 |
| - f"Ray is not initialized. Initializing with {max_processes}..." |
586 |
| - ) |
587 |
| - ray.init(address="auto", num_cpus=max_processes) |
588 |
| - |
| 576 | + use_ray = initialize_use_ray(num_cpus=max_processes) |
| 577 | + if use_ray: |
589 | 578 | refs_to_free = []
|
590 | 579 | if linkage_members_ref is None:
|
591 | 580 | linkage_members_ref = ray.put(linkage_members)
|
|
0 commit comments