From f9db5c91a688fa78256e3825b185277fbc8d941f Mon Sep 17 00:00:00 2001
From: Gamelin Alexis <alexis.gamelin@synchrotron-soleil.fr>
Date: Fri, 10 Feb 2023 17:36:41 +0100
Subject: [PATCH] Remove at dependency from header

at is kept as a "soft" dependency
---
 mbtrack2/tracking/element.py     | 3 +--
 mbtrack2/tracking/synchrotron.py | 2 +-
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/mbtrack2/tracking/element.py b/mbtrack2/tracking/element.py
index 81fbdb5..6cba19d 100644
--- a/mbtrack2/tracking/element.py
+++ b/mbtrack2/tracking/element.py
@@ -6,7 +6,6 @@ included in the tracking.
 """
 
 import numpy as np
-import at
 from abc import ABCMeta, abstractmethod
 from functools import wraps
 from copy import deepcopy
@@ -393,7 +392,7 @@ def transverse_map_sector_generator(ring, positions):
         List of TransverseMapSector elements.
 
     """
-    
+    import at
     def _compute_chro(ring, pos, dp=1e-4):
         lat = deepcopy(ring.optics.lattice)
         lat.append(at.Marker("END"))
diff --git a/mbtrack2/tracking/synchrotron.py b/mbtrack2/tracking/synchrotron.py
index 27ada22..1c34b08 100644
--- a/mbtrack2/tracking/synchrotron.py
+++ b/mbtrack2/tracking/synchrotron.py
@@ -4,7 +4,6 @@ Module where the Synchrotron class is defined.
 """
 
 import numpy as np
-import at
 from scipy.constants import c, e
         
 class Synchrotron:
@@ -303,6 +302,7 @@ class Synchrotron:
         Compute and add Amplitude-Dependent Tune Shifts (ADTS) sextupolar 
         componenet from AT lattice.
         """
+        import at
         if self.optics.use_local_values:
             raise ValueError("ADTS needs to be provided manualy as no AT" + 
                              " lattice file is loaded.")
-- 
GitLab