API Documentation

class propkatraj.PropkaTraj(atomgroup, select='protein', skip_failure=False, **kwargs)[source]

Per residue pKa analysis of a trajectory.

Runs propka on the titrateable residues of the selected AtomGroup on each frame in the trajectory. Run the analysis with PropkaTraj.run(), and pKa values will be stored in a pandas.DataFrame named PropkaTraj.pkas.

Parameters:
times

times of the successfully analyzed trajectory frames

Type:

np.ndarray

results.pkas

computed pKa’s for each residue as a column and each frame as a row; the column names are the residue numbers

Type:

pd.DataFrame

results.num_failed_frames

If PROPKA failed for any frames, contains number of failed frames. (Needs skip_failure to be True.)

Type:

int

results.failed_frames_log

Frame indices of failed frames, if skip_failure set to True

Type:

list

results.failed_times

Times of failed frames.

Type:

list

Notes

Currently only the default behaviour supplemented with the –quiet flag of propka is used.

Temporary propka files are written in the current working directory. This will leave a current.pka and current.propka_input file. These are the temporary files for the final frame and can be removed safely.

Current known issues:

  1. Due to the current behaviour of the MDAnalysis PDBWriter, non-protein atoms are written to PDBs using ATOM records instead of HETATM. This is likely to lead to undefined behaviour in propka, which will likely expect HETATM inputs. We recommend users to only pass protein atoms for now. See the following issue for more details: https://github.com/Becksteinlab/propkatraj/issues/24