docs: def get_structure_with_nodes(self, find_min=True, min_dist=0.5, tol=0.2,
                                   threshold_frac=None, threshold_abs=None):
          """
          Get the modified structure with the possible interstitial sites added.
          The species is set as a DummySpecie X.
  
          Args:
              find_min (bool): True to find local minimum else maximum, otherwise
                  find local maximum.
  
              min_dist (float): The minimum distance (in Angstrom) that
                  a predicted site needs to be from existing atoms. A min_dist
                  with value <= 0 returns all sites without distance checking.
  
              tol (float): A distance tolerance of nodes clustering that sites too
                  closed to other predicted sites will be merged. PBC is taken
                  into account.
  
              threshold_frac (float): optional fraction of extrema, which returns
                  `threshold_frac * tot_num_extrema` extrema fractional
                  coordinates based on highest/lowest intensity.
  
                  E.g. set 0.2 to insert DummySpecie atom at the extrema with 20%
                  highest or lowest intensity.
                  Value range: 0 <= threshold_frac <= 1
  
                  Note that threshold_abs and threshold_frac should not set in the
                  same time.
  
              threshold_abs (float): optional filter. When searching for local
                  minima, intensity <= threshold_abs returns; when searching for
                  local maxima, intensity >= threshold_abs returns.
  
                  Note that threshold_abs and threshold_frac should not set in the
                  same time.
  
          Returns:
              structure (Structure)
          """
  
          structure = self.structure.copy()
          self.get_local_extrema(find_min=find_min, threshold_frac=threshold_frac,
                                 threshold_abs=threshold_abs)
  
          self.remove_collisions(min_dist)
          self.cluster_nodes(tol=tol)
          for fc in self.extrema_coords:
              structure.append("X", fc)
  
          return structure