code: def scaled_wulff(self, wulffshape, r):
          
  
          # get the scaling ratio for the energies
          r_ratio = r/wulffshape.effective_radius
          miller_list = wulffshape.miller_energy_dict.keys()
          # Normalize the magnitude of the facet normal vectors
          # of the Wulff shape by the minimum surface energy.
          se_list = np.array(list(wulffshape.miller_energy_dict.values()))
          # Scale the magnitudes by r_ratio
          scaled_se = se_list * r_ratio
  
          return WulffShape(wulffshape.lattice, miller_list,
                            scaled_se, symprec=self.symprec)
docs: Scales the Wulff shape with an effective radius r. Note that the resulting
              Wulff does not neccesarily have the same effective radius as the one
              provided. The Wulff shape is scaled by its surface energies where first
              the surface energies are scale by the minimum surface energy and then
              multiplied by the given effective radius.
  
          Args:
              wulffshape (WulffShape): Initial, unscaled WulffShape
              r (float): Arbitrary effective radius of the WulffShape
  
          Returns:
              WulffShape (scaled by r)