Text this: Function portability of molecular dynamics on heterogeneous parallel architectures with OpenCL.