schrodinger.application.matsci.bandshape_utils module

Utilities for bandshape calculations.

Copyright Schrodinger, LLC. All rights reserved.

schrodinger.application.matsci.bandshape_utils.is_bs_spectrum_file_key(key)

Return True if the given structure property key is a bandshape spectrum file key.

Parameters:key (str) – the structure property key to check
Return type:bool
Returns:True if the given key is a bandshape spectrum file key
schrodinger.application.matsci.bandshape_utils.get_temp_from_bs_spectrum_file_key(key)

Return the temperature from the given bandshape spectrum file structure property key.

Parameters:key (str) – the structure property key containing the temperature
Return type:float
Returns:the temperature in K
schrodinger.application.matsci.bandshape_utils.get_bs_spectrum_file_temps_keys(struct)

Return the bandshape spectrum file structure property keys and associated temperatures for the given structure.

Parameters:struct (schrodinger.structure.Structure) – the structure with the property keys
Return type:list
Returns:pair tuples of temperatures in K and bandshape spectrum file structure property keys
class schrodinger.application.matsci.bandshape_utils.BandshapeSpectrumFile(data_file_name, spm_file_name)

Bases: object

Manage a bandshape spectrum file.

ENERGY_KEY = 'r_j_Excitation_Energy_(eV)'
ENERGY_TITLE = 'Excitation Energy (eV)'
INTENSITY_KEY = 'r_j_Intensity'
INTENSITY_TITLE = 'Intensity'
SYMMETRY_KEY = 's_j_Symmetry'
SYMMETRY_TITLE = 'Symmetry'
SPECTRUM_KEY = 's_j_spectrum_type'
SPECTRUM_TITLE = 'Electronic Transition w/ Bandshape'
X_KEY = 's_j_x_label'
X_ALIAS = 'r_j_Excitation_Energy_(eV)'
Y_KEY = 's_j_y_label'
Y_ALIAS = 'r_j_Intensity'
HEADERS = {'s_j_spectrum_type': 'Electronic Transition w/ Bandshape', 's_j_x_label': 'r_j_Excitation_Energy_(eV)', 's_j_y_label': 'r_j_Intensity'}
COLUMNS = {'r_j_Excitation_Energy_(eV)': 'Excitation Energy (eV)', 'r_j_Intensity': 'Intensity', 's_j_Symmetry': 'Symmetry'}
EXT = '.uvv.spm'
DEFAULT_BIN_WIDTH = 400.0
static getData(data_file_name)

Return the data from the given data file.

Parameters:data_file_name (str) – the text file containing whitespace separated energies and intensities, one pair per line, energies in eV
Return type:list
Returns:contains (energy, intensity) tuples
write()

Write the *spm file.

static isBandshapeTable(atable)

Return True if the given table is a bandshape table.

Parameters:atable (table.Table) – the table to check
Return type:bool
Returns:True if the given table is a bandshape table
static getTrimmedTable(filepath, bin_width=None)

Return a table of trimmed data for the given file path and bin width.

Parameters:
  • filepath (str) – the file path to the file with the data
  • bin_width (float) – the bin width in wavenumbers (cm-1) used for binning
Raises:

ValueError – if there isn’t any data

Return type:

table.Table

Returns:

table of trimmed data