code: def apply_transformation(self, structure):
          
  
          if self.species_map == None:
              match = StructureMatcher()
              s_map = \
                  match.get_best_electronegativity_anonymous_mapping(self.unrelaxed_structure,
                                                                     structure)
          else:
              s_map = self.species_map
  
          params = list(structure.lattice.abc)
          params.extend(structure.lattice.angles)
          new_lattice = Lattice.from_parameters(*[p*self.params_percent_change[i] \
                                                  for i, p in enumerate(params)])
          species, frac_coords = [], []
          for site in self.relaxed_structure:
              species.append(s_map[site.specie])
              frac_coords.append(site.frac_coords)
  
          return Structure(new_lattice, species, frac_coords)
docs: Returns a copy of structure with lattice parameters
          and sites scaled to the same degree as the relaxed_structure.
  
          Arg:
              structure (Structure): A structurally similar structure in
                  regards to crystal and site positions.