code: def aer2enu(az, el, srange, deg: bool = True) -> tuple:
      """
      Azimuth, Elevation, Slant range to target to East, North, Up
  
      Parameters
      ----------
      az : float
              azimuth clockwise from north (degrees)
      el : float
          elevation angle above horizon, neglecting aberrations (degrees)
      srange : float
          slant range [meters]
      deg : bool, optional
          degrees input/output  (False: radians in/out)
  
      Returns
      --------
      e : float
          East ENU coordinate (meters)
      n : float
          North ENU coordinate (meters)
      u : float
          Up ENU coordinate (meters)
      """
      if deg:
          el = radians(el)
          az = radians(az)
  
      try:
          if (asarray(srange) < 0).any():
              raise ValueError("Slant range  [0, Infinity)")
      except NameError:
          if srange < 0:
              raise ValueError("Slant range  [0, Infinity)")
  
      r = srange * cos(el)
  
      return r * sin(az), r * cos(az), srange * sin(el)
  
file_path: pymap3d/src/pymap3d/enu.py
imports: from __future__ import annotations
  from math import tau
  from .ecef import ecef2geodetic, enu2ecef, geodetic2ecef, uvw2enu
  from .ellipsoid import Ellipsoid
  from .mathfun import atan2, cos, degrees, hypot, radians, sin
label_desc: Use image node_id 2 for calling a global function with example usage: aer2enu(az, el, srange, deg) and returns: unknown,  unknown,  unknown