code: def get_angles(
      data_arr: xr.DataArray,
  ) -> tuple[xr.DataArray, xr.DataArray, xr.DataArray, xr.DataArray]:
      """Get sun and satellite azimuth and zenith angles.
  
      Note that this function can benefit from the ``satpy.config`` parameters
      :ref:`cache_lonlats <config_cache_lonlats_setting>` and
      :ref:`cache_sensor_angles <config_cache_sensor_angles_setting>`
      being set to ``True``.
  
      Args:
          data_arr: DataArray to get angles for. Information extracted from this
              object are ``.attrs["area"]``,``.attrs["start_time"]``, and
              ``.attrs["orbital_parameters"]``. See :func:`satpy.utils.get_satpos`
              and :ref:`dataset_metadata` for more information.
              Additionally, the dask array chunk size is used when generating
              new arrays. The actual data of the object is not used.
  
      Returns:
          Four DataArrays representing sensor azimuth angle, sensor zenith angle,
          solar azimuth angle, and solar zenith angle. All values are in degrees.
          Sensor angles are provided in the [0, 360] degree range.
          Solar angles are provided in the [-180, 180] degree range.
  
      """
      sata, satz = _get_sensor_angles(data_arr)
      suna, sunz = _get_sun_angles(data_arr)
      return sata, satz, suna, sunz
  
imports: from __future__ import annotations
  import hashlib
  import os
  import shutil
  import warnings
  from datetime import datetime
  from functools import update_wrapper
  from glob import glob
  from typing import Any, Callable, Optional, Union
  import dask
  import numpy
  import xarray
  from dask import array
  from pyorbital.astronomy import cos_zen
  from pyorbital.astronomy import get_alt_az
  from pyorbital.orbital import get_observer_look
  from pyresample.geometry import AreaDefinition, StackedAreaDefinition, SwathDefinition
  import satpy
  from satpy.utils import PerformanceWarning, get_satpos, ignore_invalid_float_warnings
label_desc: Use image node_id 11 for calling a global function with example usage: get_angles(data_arr) and returns: sata,  satz,  suna,  sunz