docs: def make_primitive_smoothed(cas_coords, smoothing_level=2):
      """ Generates smoothed primitive from a list of coordinates.
  
      Parameters
      ----------
      cas_coords : list(numpy.array or float or tuple)
          Each element of the list must have length 3.
      smoothing_level : int, optional
          Number of times to run the averaging.
  
      Returns
      -------
      s_primitive : list(numpy.array)
          Each array has length 3.
  
      Raises
      ------
      ValueError
          If the smoothing level is too great compared to the length
          of cas_coords.
      """
      try:
          s_primitive = make_primitive(cas_coords)
          for x in range(smoothing_level):
              s_primitive = make_primitive(s_primitive)
      except ValueError:
          raise ValueError(
              'Smoothing level {0} too high, try reducing the number of rounds'
              ' or give a longer Chain (curent length = {1}).'.format(
                  smoothing_level, len(cas_coords)))
      return s_primitive