Some selected functions from Dr. Tim Tierney's OPM toolbox. Please see: https://github.com/tierneytim/OPM