@@ -32,7 +32,7 @@ def read(self, filename):
3232 filename: name of the input file
3333 """
3434 try :
35- logger .debug (' Reading telescope data from: filename' )
35+ logger .debug (" Reading telescope data from: filename" )
3636 xds = xr .open_zarr (filename )
3737 for key in xds .attrs :
3838 setattr (self , key , xds .attrs [key ])
@@ -47,10 +47,11 @@ def read(self, filename):
4747 self .file_path = abs_path .parent
4848
4949 def read_from_distro (self , name ):
50- dest_path = "/" .join ([astrohack .__path__ [0 ], f'data/telescopes/{ name .lower ()} .zarr' ])
50+ dest_path = "/" .join (
51+ [astrohack .__path__ [0 ], f"data/telescopes/{ name .lower ()} .zarr" ]
52+ )
5153 self .read (dest_path )
5254
53-
5455 def write (self , filename ):
5556 """
5657 Write the telescope object to an X array .zarr telescope configuration file
@@ -62,7 +63,7 @@ def write(self, filename):
6263 obj_dict .pop ("filename" , None )
6364 xds = xr .Dataset ()
6465 xds .attrs = obj_dict
65- logger .debug (' Writing telescope data to: filename' )
66+ logger .debug (" Writing telescope data to: filename" )
6667 xds .to_zarr (filename , mode = "w" , compute = True , consolidated = True )
6768 return
6869
@@ -74,7 +75,12 @@ def __repr__(self):
7475 return outstr
7576
7677 def write_to_distro (self ):
77- dest_path = "/" .join ([astrohack .__path__ [0 ], f'data/telescopes/{ self .name .lower ().replace (" " , "_" )} .zarr' ])
78+ dest_path = "/" .join (
79+ [
80+ astrohack .__path__ [0 ],
81+ f'data/telescopes/{ self .name .lower ().replace (" " , "_" )} .zarr' ,
82+ ]
83+ )
7884 self .write (dest_path )
7985
8086
@@ -110,7 +116,11 @@ def from_name(cls, name):
110116 def consistency_check (self ):
111117 error = False
112118
113- if not self .n_rings_of_panels == len (self .panel_inner_radii ) == len (self .panel_outer_radii ):
119+ if (
120+ not self .n_rings_of_panels
121+ == len (self .panel_inner_radii )
122+ == len (self .panel_outer_radii )
123+ ):
114124 logger .error (
115125 "Number of panels don't match radii or number of panels list sizes"
116126 )
@@ -119,7 +129,7 @@ def consistency_check(self):
119129 if error :
120130 raise Exception ("Failed Consistency check" )
121131 else :
122- print (' Consistency passed' )
132+ print (" Consistency passed" )
123133
124134 return
125135
@@ -161,6 +171,7 @@ def _alma_panel_labeling(self, iring, ipanel):
161171
162172 def build_panel_list (self , panel_model , panel_margins ):
163173 from time import time
174+
164175 start = time ()
165176 if self .name in ["VLA" , "VLBA" ]:
166177 self ._panel_label = self ._vla_panel_labeling
@@ -189,7 +200,9 @@ def build_panel_list(self, panel_model, panel_margins):
189200
190201 return panel_list
191202
192- def attribute_pixels_to_panels (self , panel_list , u_axis , v_axis , radius , phi , deviation , mask ):
203+ def attribute_pixels_to_panels (
204+ self , panel_list , u_axis , v_axis , radius , phi , deviation , mask
205+ ):
193206 """
194207 Attribute pixels in deviation to the panels in the panel_list
195208 Args:
@@ -220,9 +233,7 @@ def attribute_pixels_to_panels(self, panel_list, u_axis, v_axis, radius, phi, de
220233 ipanel = panel_map [ix , iy ]
221234 if ipanel >= 0 :
222235 panel = panel_list [int (ipanel )]
223- issample , inpanel = panel .is_inside (
224- radius [ix , iy ], phi [ix , iy ]
225- )
236+ issample , inpanel = panel .is_inside (radius [ix , iy ], phi [ix , iy ])
226237 if inpanel :
227238 if issample and mask [ix , iy ]:
228239 panel .add_sample ([xc , yc , ix , iy , deviation [ix , iy ]])
@@ -231,7 +242,6 @@ def attribute_pixels_to_panels(self, panel_list, u_axis, v_axis, radius, phi, de
231242
232243 return panel_map
233244
234-
235245 def phase_to_deviation (self , radius , phase , wavelength ):
236246 acoeff = (wavelength / twopi ) / (4.0 * self .focus )
237247 bcoeff = 4 * self .focus ** 2
@@ -267,34 +277,34 @@ def get_proper_telescope(name: str, antenna_name: str = None):
267277 name = name .lower ()
268278 if isinstance (antenna_name , str ):
269279 antenna_name = antenna_name .lower ()
270- if ' vla' in name :
271- if antenna_name is None or 'ea' in antenna_name :
272- return RingedCassegrain .from_name (' vla' )
273- elif 'na' in antenna_name :
274- print (' ngvla antenna not yet supported' )
280+ if " vla" in name :
281+ if antenna_name is None or "ea" in antenna_name :
282+ return RingedCassegrain .from_name (" vla" )
283+ elif "na" in antenna_name :
284+ print (" ngvla antenna not yet supported" )
275285 return None
276286 else :
277- raise Exception (f' Unsupported antenna type for the VLA: { antenna_name } ' )
287+ raise Exception (f" Unsupported antenna type for the VLA: { antenna_name } " )
278288
279- elif ' vlba' in name :
280- return RingedCassegrain .from_name (' vlba' )
289+ elif " vlba" in name :
290+ return RingedCassegrain .from_name (" vlba" )
281291
282- elif ' alma' in name :
292+ elif " alma" in name :
283293 if antenna_name is None :
284- raise Exception ('ALMA is an heterogenious array and hence an antenna name is needed' )
285- elif 'dv' in antenna_name :
286- return RingedCassegrain .from_name ('alma_dv' )
287- elif 'da' in antenna_name :
288- return RingedCassegrain .from_name ('alma_da' )
289- elif 'tp' in antenna_name :
290- return RingedCassegrain .from_name ('alma_tp' )
294+ raise Exception (
295+ "ALMA is an heterogenious array and hence an antenna name is needed"
296+ )
297+ elif "dv" in antenna_name :
298+ return RingedCassegrain .from_name ("alma_dv" )
299+ elif "da" in antenna_name :
300+ return RingedCassegrain .from_name ("alma_da" )
301+ elif "tp" in antenna_name :
302+ return RingedCassegrain .from_name ("alma_tp" )
291303 else :
292- raise Exception (f' Unsupported antenna type for ALMA: { antenna_name } ' )
304+ raise Exception (f" Unsupported antenna type for ALMA: { antenna_name } " )
293305
294- elif ' aca' in name :
295- return RingedCassegrain .from_name (' aca_7m' )
306+ elif " aca" in name :
307+ return RingedCassegrain .from_name (" aca_7m" )
296308
297309 else :
298310 return None
299-
300-
0 commit comments