epsman.sym.convertSyms module

Functions for converting symmetry lists for various contexts.

08/02/22 v1 Implements ePS & Gamess symmetries.

TODO: add manual overrides for user-defined sym mapping.

This will need to set a mapping dictionary as per dimMapPD.attrs[‘mappingDict’] output by convertSymsGamessePS(). And propagte to main orb table as set by setOrbInfoPD(), `orbPD[‘ePS’] = orbPD[‘Gamess’].apply(lambda x: orbPD.attrs[‘PGmap’].attrs[‘mappingDict’][x]) `

epsman.sym.convertSyms.convertSymsGamessePS(gamessPGDict, symDict=None, verbose=True)[source]

Convert from Gamess defined labels to ePS symmetry labels.

Parameters:
Returns:

  • dimMapPD (Pandas dataframe) – Dataframe with all dim mappings.

  • TODO

  • - Return basic dict form too, needs to be updated with missing vals.

  • - Push converted labels back to orbPD?

epsman.sym.convertSyms.setePSPGlabel(PG)[source]

Get and convert point group labels from Gamess inputs (via orbPD data) to ePS format.

Parameters:

PG (dictionary) – A dictionary defining the point group, as currently set in epsman.elecStructure._orbInfo.setOrbInfoPD() for Gamess input files. Minimally passing PG[‘Label’] = ‘<Gamess symmetry label>’ will also work. For N-fold groups, PG[‘NAXIS’] = N also needs to be defined.

Returns:

PG

Return type:

dictionary, now includes PG[‘ePSLabel’] for converted label.