def potential(self, potential_filename): """ Execute view_potential() or list_potential() in order to see the pre-defined potential files Args: potential_filename: Returns: """ stringtypes = str if isinstance(potential_filename, stringtypes): if ".lmp" in potential_filename: potential_filename = potential_filename.split(".lmp")[0] potential_db = LammpsPotentialFile() potential = potential_db.find_by_name(potential_filename) elif isinstance(potential_filename, pd.DataFrame): potential = potential_filename else: raise TypeError( "Potentials have to be strings or pandas dataframes.") self.input.potential.df = potential for val in ["units", "atom_style", "dimension"]: v = self.input.potential[val] if v is not None: self.input.control[val] = v if val == "units" and v != "metal": warnings.warn( "WARNING: Non-'metal' units are not fully supported. Your calculation should run OK, but " "results may not be saved in pyiron units.") self.input.potential.remove_structure_block()
def potential(self, potential_filename): """ Execute view_potential() or list_potential() in order to see the pre-defined potential files Args: potential_filename: Returns: """ if sys.version_info.major == 2: stringtypes = (str, unicode) else: stringtypes = str if isinstance(potential_filename, stringtypes): if '.lmp' in potential_filename: potential_filename = potential_filename.split('.lmp')[0] potential_db = LammpsPotentialFile() potential = potential_db.find_by_name(potential_filename) elif isinstance(potential_filename, pd.DataFrame): potential = potential_filename else: raise TypeError( 'Potentials have to be strings or pandas dataframes.') self.input.potential.df = potential for val in ["units", "atom_style", "dimension"]: v = self.input.potential[val] if v is not None: self.input.control[val] = v self.input.potential.remove_structure_block()