divtel package¶
divtel.pointing module¶
Functions to define telescopes pointings We use the same reference frame as simtel_array: X is pointing North Y is pointing West Z is pointing upward Az is taken clock-wise from X (towards Y) and between -180 and 180 degrees Alt is taken from ground (towards Z) and between -90 and 90 degrees
- divtel.pointing.alt_az_to_vector(alt, az)¶
Compute a pointing vector coordinates (x,y,z) from an alt,az pointing direction
- Parameters:
alt (float) – angle in rad
az (float) – angle in rad
- Returns:
vector – [x, y, z]
- Return type:
numpy.array
- divtel.pointing.pointG_position(barycenter, div, alt_mean, az_mean)¶
Compute the position of g_point for the pointing
- Parameters:
barycenter (np.array([x,y,z])) – position of the barycenter of the array
div (float)
alt_mean (astropy.Quantity) – mean pointing altitude in radians from which to diverge
az_mean (astropy.Quantity) – mean pointing azimuth in radians from which to diverge
- Return type:
Numpy array [Gx, Gy, Gz]
- divtel.pointing.tel_div_pointing(tel_position, g_point)¶
Divergent pointing to a point G. Update telescope pointing
- Parameters:
tel_position (np.array([x, y, z])) – telescope coordinates
g_point (numpy.array([Gx, Gy, Gz]))
divtel.telescope module¶
- class divtel.telescope.Array(telescope_list)¶
Bases:
objectDescribe a telescope array
- Parameters:
telescope_list ([Telescope]) – list of telescopes forming the array
- property barycenter¶
- display_2d(projection='xy', ax=None, **kwargs)¶
Display the array
- Parameters:
projection (str) – ‘xy’, ‘xz’ or ‘yz’
ax (matplotlib.pyplot.axes)
kwargs (args for pyplot.scatter)
- Returns:
ax
- Return type:
matplotlib.pyplot.axes
- display_3d()¶
- divergent_pointing(div, alt_mean, az_mean)¶
Divergent pointing given a parameter div. Update pointing of all telescopes of the array
- Parameters:
div (float between 0 and 1)
alt_mean (astropy.Quantity) – mean alt pointing
az_mean (astropy.Quantity) – mean az pointing
- property pointing_altaz¶
All telescopes pointing directions (alt, az) as an array
- Returns:
pointing_directions – 2D array: [[alt1,az1], [alt2, az2], …]
- Return type:
astropy.Quantity
- property pointing_vectors¶
all telescopes pointing vectors as an array
- Returns:
pointing_vectors – 2D numpy array
- Return type:
numpy.array
- property positions_array¶
All telescopes positions
- Returns:
positions_array – 2D numpy array
- Return type:
numpy.array
- class divtel.telescope.Telescope(x, y, z, focal, camera_radius)¶
Bases:
objectDescribe a generic telescope
- Parameters:
x (astropy.quantity) – x ground position
y (astropy.quantity) – y ground position
z (astropy.quantity) – z ground position
focal (astropy.quantity)
camera_radius (astropy.quantity)
- property fov¶
Area of the field of view in rad**2
- point_to_altaz(alt, az)¶
- point_to_object(object)¶
Point to object.
- Parameters:
object (numpy.array([x, y, z]))
- property pointing_vector¶
- property position¶
- property zenith¶
divtel.visualization module¶
- divtel.visualization.display_array_pointing_in_sky(array)¶
- divtel.visualization.polar_stuff(fig, telescope)¶
- divtel.visualization.sky_fov(telescope, ax=None)¶
Display the telescope FoV in the sky
- Parameters:
telescope (Telescope)
ax (matplotlib.pyplot.axes)
- Returns:
ax
- Return type:
matplotlib.pyplot.axes