This is the fastest way I know to read in a PDB. Strings are conveniently stored as cell variables, and numbers are stored as matrices. Unfortunately there is no faster way that I am aware of to convert text to numbers, so there is an upper limit in matlab for reading a PDB.
To speed up the program, comment out any lines for data not being used. Commenting one line that converts numeric data speeds the program up by roughly 7-8%.
example usage : this plots the atoms of 3IJU.pdb
atoms = fastPDBRead('3IJU.pdb')
plot3(atoms.X, atoms.Y, atoms.Z, '.');
Evan (2021). a fast method of reading data from PDB files (https://www.mathworks.com/matlabcentral/fileexchange/35009-a-fast-method-of-reading-data-from-pdb-files), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!