Computational Modeling of Metalloporphyrin Structure and Vibrational Spectra:  Porphyrin Ruffling in NiTPP | Synapse