dft_2_data¶
The Primary_DATA
class¶
-
class
Primary_DATA
(metal_atoms=['Pt'], adsorbate_atoms=['C', 'O'], create_new_vasp_files=False, delta=0.025)[source]¶ Class that generates primary data (frequencies, intensities, GCN values)
- Parameters
metal_atoms (list of str) – List of atom types considered part of the surface, bulk nanoparticle
adsorbate_atoms (list of str) – List of atom types onsidered adsorbates. The first atom type listed is considered in contact with the surface.
create_new_vasp_files (bool) – If True, charg2.extxyzstripped and vasprun2.xmlstripped files are generated which compile concatenated DDEC6 charge and vasprun.xml files into a format readable by PANDAS or ASE
delta (float) – Angstroms atoms were displaced in finite difference calculation for parameterizing the Hessian
- Variables
METAL_ATOMS (list of str) – List of atom types considered part of the surface, bulk nanoparticle
ADSORBATE_ATOMS (list of str) – List of atom types onsidered adsorbates. The first atom type listed is considered in contact with the surface.
CREATE_NEW_VASP_FILES (bool) – If True, charg2.extxyzstripped and vasprun2.xmlstripped files are generated which compile concatenated DDEC6 charge and vasprun.xml files into a format readable by PANDAS or ASE
DELTA (float) – Angstroms atoms were displaced in finite difference calculation for parameterizing the Hessian
-
generate_isotope_data
(vasp_directory, output_file, masses1=[12, 16], masses2=[24, 32])[source]¶ Generate isotope data used in frequency scaling
- Parameters
vasp_directory (str) – Directory where vasp files are stored.
output_path (str) – Output file location of json that will stroe isotope studies
masses1 (list of int) – List of masses for ‘adsorbate_atoms’ for one isotope set
masses2 (list of int) – List of masses for ‘adsorbate_atoms’ for the other isotope set
- Variables
OUTPUT_DICTIONARY (dict) – Dictionary of primary data
FREQ_FILES (list of str) – List of preprocessed concatenated vasprun.xml files
CHARGE_FILES (list of str) – list of preprocessed concatenated DECC6 charge files
INDICES_USED (numpy.ndarray) – indices of CHARGE_FILES and FREQ_FILES whose data is used to generate primary data written to the OUTPUT_DICTIONARY
MOLECULES (list of Atoms) – List of ASE atoms object that represent the local minima used as the initial configuration for each normal mode analysis
Notes
The following data is written for the isotopic analysis used in determining coverage scaling.
FREQUENCIES: frequencies of normal modes INTENSITIES: intensities of normal modes CO_CN_CO: number of CO to which each CO is coordinated MIN_SEPARATION: smallest distance (A) between each CO CN_CO: number of Pt to which each CO is coordinated GCN: generalized coordination number of each adsorption site CN_PT: coordination of each adsorption site NUM_PT: Number of Pt atoms in each slab SURFACE_AREA: surface area in each slab (A2) CO_PER_A2: CO per surface area (A2) NUM_CO: number of CO on the surface SURFACE_PT: Number of Pt atoms on the adsorbate surface NUM_C12O16: Number of C12O16 on the surface COVERAGE: CO molecules/surface Pt atoms SELF_COVERAGE: major contributing CO molecules of the normal mode per surface Pt atom NUM_C12O32: number of C12O32 molecules NUM_C24O16: number of C24O16 molecules NUM_C24O32: number of C24O32 molecules SELF_CO_PER_A2: major contributing CO moldecules of the normal mode per A2 MODE_ID: ID of each mode REDUCED_MASS: simple reduced mass of each molecule REDUCED_MASS_NORMED: normalized reduced mass of each normal mode MIXED_FACTOR: contribution to each normal from secondary contributing CO isotopes
-
generate_primary_data
(vasp_directory, output_path, data_type='nanoparticle', num_adsorbates='single', poc=1, key_list=None)[source]¶ Generate primary data
- Parameters
vasp_directory (str) – Directory where vasp files are stored.
output_path (str) – Output file location of json that will stroe primary data
data_type (str) – Indicates the kind of DFT data that is being used. Can be ‘nanoparticle’ or ‘surface’.
num_adsorbates (str) – Indicates the number of adsorbates that were considered in the simulation. Can be ‘single’ or ‘multiple’
poc (int) – The number of points of contact each adsorbate has with the surface.
key_list (list) – List of keys for a personalized dictionary of structural features Can include the following: ‘FREQUENCIES’, ‘IMAGINARY’, ‘INTENSITIES’ , ‘MAX_FORCE’, ‘CN_ADSORBATE’, ‘GCN’, ‘CN_METAL’, ‘SYMBOLS’ , ‘NUM_METAL’, ‘COVERAGE’, ‘ENERGY’, ‘POSITIONS’, and/or ‘SHELL_LIST’
- Variables
OUTPUT_DICTIONARY (dict) – Dictionary of primary data
FREQ_FILES (list of str) – List of processed concatenated vasprun.xml files
CHARGE_FILES (list of str) – list of processed concatenated DECC6 charge files
INDICES_USED (numpy.ndarray) – indices of CHARGE_FILES and FREQ_FILES whose data is used to generate primary data written to the OUTPUT_DICTIONARY
MOLECULES (list of Atoms) – List of ASE atoms object that represent the local minima used as the initial configuration for each normal mode analysis
The COVERAGE_SCALING
class¶
-
class
COVERAGE_SCALING
(primary_data_path)[source]¶ Class that generates coverage scaling parameters
- Parameters
primary_data_path (str) – Primary isotopic data used in generate coverage scaling realtions
- Variables
PRIMARY_DATA_PATH (str) – Primary isotopic data used in generate coverage scaling realtions
-
get_coverage_parameters
(coverage_scaling_path)[source]¶ Function that generates coverage scaling relations
- Parameters
coverage_scaling_path (str) – Location to write coverage scaling parameter dictionary as a json.
-
save_coverage_figures
(figure_directory, adsorbate='CO', metal='Pt', frequency_scale_axis1=[0.98, 1.1], frequency_scale_axis2=[0.995, 1.138], y_2_ticks=[1, 1.02, 1.04, 1.06, 1.08, 1.1, 1.12], presentation=False)[source]¶ Function generates and saves coverage scaling figures
- Parameters
figure_directory (str) – Directory where coverage scaling figures are to be saved
adsorbate (str) – Name of adsorbate
metal (str) – Name of metal
frequency_scale_axis1 (list of flaot) – Scale of y axis for first and third subgraphs
frequency_scale_axis2 (list of float) – Scale of y axis for second and fourth subgraphs
y_2_ticks (list of float) – Tick points for y-axis of second and fourth subgraphs
presentation (bool) – Indicates whether presentation style graphs are to be created.