Skip to main content
Log in

Accelerating the computation of triangulated molecular surfaces with OpenMP

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

The ability to compute mesh representations of molecular surfaces in an accurate and timely manner is of great importance for applications such as implicit solvent modelling. The efficient computation of high-resolution mesh surfaces for large biomolecules is still a challenging task. This paper presents a fast, OpenMP-based parallel algorithm for the computation of the triangle mesh representation of the solvent-excluded surfaces of macromolecules at high resolutions. The solvent-excluded surface computation is based on a region-growing implementation of the approximate Euclidean distance transform algorithm with hierarchical queues. The method first builds a voxelised representation of the molecular surface by computing the contribution to the overall outer surface for each atom in parallel. Then, a triangle mesh representation is obtained from the voxelised one with an OpenMP-accelerated Marching Cubes implementation. The proposed algorithm was experimentally validated and was shown to outperform several state-of-the-art molecular surface computation tools on a dataset of large macromolecules.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21

Similar content being viewed by others

References

  1. Albou LP, Schwarz B, Poch O, Wurtz JM, Moras D (2009) Defining and characterizing protein surface using alpha shapes. Proteins Struct Funct Bioinform 76(1):1–12. https://doi.org/10.1002/prot.22301

    Article  Google Scholar 

  2. Bash PA, Pattabiraman N, Huang C, Ferrin TE, Langridge R (1983) Van der Waals surfaces in molecular modeling: implementation with real-time computer graphics. Science 222(4630):1325–1327. https://doi.org/10.1126/science.222.4630.1325

    Article  Google Scholar 

  3. Bates P, Wei GW, Zhao S (2008) Minimal molecular surfaces and their applications. J Comput Chem 29(3):380–391. https://doi.org/10.1002/jcc.20796

    Article  Google Scholar 

  4. Berman HM, Westbrook J, Feng Z, Gilliland G, Bhat TN, Weissig H, Shindyalov IN, Bourne PE (2000) The protein data bank. Nucleic Acids Res 28(1):235–242. https://doi.org/10.1093/nar/28.1.235

    Article  Google Scholar 

  5. Blinn JF (1982) A generalization of algebraic surface drawing. ACM Trans Graphics (TOG) 1(3):235–256. https://doi.org/10.1145/357306.357310

    Article  Google Scholar 

  6. Bresenham J (1965) Algorithm for computer control of a digital plotter. IBM Syst J 4(1):25–30. https://doi.org/10.1147/sj.41.0025

    Article  Google Scholar 

  7. Can T, Chen CI, Wang YF (2006) Efficient molecular surface generation using level-set methods. J Mol Graph Model 25(4):442–454. https://doi.org/10.1016/j.jmgm.2006.02.012

    Article  Google Scholar 

  8. Chen M, Lu B (2010) TMSmesh: a robust method for molecular surface mesh generation using a trace technique. J Chem Theory Comput 7(1):203–212. https://doi.org/10.1021/ct100376g

    Article  Google Scholar 

  9. Chen M, Tu B, Lu B (2012) Triangulated manifold meshing method preserving molecular surface topology. J Mol Gr Model 38:411–418. https://doi.org/10.1016/j.jmgm.2012.09.006

    Article  Google Scholar 

  10. Connolly ML (1983) Analytical molecular surface calculation. J Appl Crystallogr 16(5):548–558. https://doi.org/10.1107/S0021889883010985

    Article  Google Scholar 

  11. Connolly ML (1983) Solvent-accessible surfaces of proteins and nucleic acids. Science 221(4612):709–713. https://doi.org/10.1126/science.6879170

    Article  Google Scholar 

  12. Cuisenaire O (1997) Region growing Euclidean Distance Transforms. In: Bimbo A (ed) Image analysis and processing, lecture notes in computer science, vol. 1310, pp 263–270. Springer, Berlin. https://doi.org/10.1007/3-540-63507-6_210

  13. Daberdaku S (2018) Parallel computation of voxelised protein surfaces with OpenMP. In: Proceedings of the 6th International Workshop on Parallelism in Bioinformatics, PBio 2018, pp 19–29. ACM, New York, NY, USA https://doi.org/10.1145/3235830.3235833

  14. Daberdaku S, Ferrari C (2016) Computing discrete fine-grained representations of protein surfaces. In: Angelini C, Rancoita PM, Rovetta S (eds) Computational Intelligence Methods for Bioinformatics and Biostatistics - 12th International Meeting, CIBB 2015, Naples, Italy, September 10-12, 2015, Revised Selected Papers, Lecture Notes in Bioinformatics, vol. 9874, chap. 14, pp. 180–195. Springer International Publishing, Cham https://doi.org/10.1007/978-3-319-44332-4_14

  15. Daberdaku S, Ferrari C (2018) Computing voxelised representations of macromolecular surfaces: a parallel approach. Int J High Perform Comput Appl 32(3):407–432. https://doi.org/10.1177/1094342016647114

    Article  Google Scholar 

  16. Decherchi S, Colmenares J, Catalano CE, Spagnuolo M, Alexov E, Rocchia W (2013) Between algorithm and model: different molecular surface definitions for the Poisson–Boltzmann based electrostatic characterization of biomolecules in solution. Comput Phys Commun 13(1):61–89. https://doi.org/10.4208/cicp.050711.111111s

    Article  MATH  Google Scholar 

  17. Decherchi S, Rocchia W (2013) A general and robust ray-casting-based algorithm for triangulating surfaces at the nanoscale. PloS one 8(4):e59744. https://doi.org/10.1371/journal.pone.0059744

    Article  Google Scholar 

  18. Dias S, Bora K, Gomes A (2010) Cuda-based triangulations of convolution molecular surfaces. In: Proceedings of the 19th ACM International Symposium on High Performance Distributed Computing, HPDC ’10, pp 531–540. ACM, New York, NY, USA https://doi.org/10.1145/1851476.1851553

  19. Dias SE, Gomes AJ (2011) Graphics processing unit-based triangulations of Blinn molecular surfaces. Concurr Comput Pract Exp 23(17):2280–2291. https://doi.org/10.1002/cpe.1783

    Article  Google Scholar 

  20. Dias SE, Gomes AJ (2015) Triangulating molecular surfaces over a LAN of GPU-enabled computers. Parallel Comput 42(C):35–47. https://doi.org/10.1016/j.parco.2014.09.009

    Article  Google Scholar 

  21. Dietrich CA, Scheidegger CE, Comba JLD, Nedel LP, Silva CT (2009) Marching cubes without skinny triangles. Comput Sci Eng 11(2):82–87. https://doi.org/10.1109/MCSE.2009.34

    Article  Google Scholar 

  22. Edelsbrunner H (1999) Deformable smooth surface design. Discret Comput Geom 21(1):87–115. https://doi.org/10.1007/PL00009412

    Article  MathSciNet  MATH  Google Scholar 

  23. Gomes A, Voiculescu I, Jorge J, Wyvill B, Galbraith C (2009) Implicit curves and surfaces: mathematics, data structures and algorithms. Springer, London, UK https://doi.org/10.1007/978-1-84882-406-5

  24. Gui S, Khan D, Wang Q, Yan DM, Lu BZ (2018) Frontiers in biomolecular mesh generation and molecular visualization systems. Visual Comput Ind Biomedicine Art 1(1):7. https://doi.org/10.1186/s42492-018-0007-0

    Article  Google Scholar 

  25. Huang SY (2015) Exploring the potential of global protein-protein docking: an overview and critical assessment of current programs for automatic ab initio docking. Drug Discov Today 20(8):969–977. https://doi.org/10.1016/j.drudis.2015.03.007

    Article  Google Scholar 

  26. Khan D, Yan DM, Gui S, Lu B, Zhang X (2018) Molecular surface remeshing with local region refinement. Int J Mol Sci 19(5). https://doi.org/10.3390/ijms19051383

  27. Lee B, Richards F (1971) The interpretation of protein structures: estimation of static accessibility. J Mol Biol 55(3):379. https://doi.org/10.1016/0022-2836(71)90324-X

    Article  Google Scholar 

  28. Liu B, Wang B, Zhao R, Tong Y, Wei GW (2017) ESES: software for Eulerian solvent excluded surface. J Comput Chem 38(7):446–466. https://doi.org/10.1002/jcc.24682

    Article  Google Scholar 

  29. Liu T, Chen M, Lu B (2015) Parameterization for molecular Gaussian surface and a comparison study of surface mesh generation. J Mol Model 21(5):113. https://doi.org/10.1007/s00894-015-2654-9

    Article  Google Scholar 

  30. Liu T, Chen M, Lu B (2018) Efficient and qualified mesh generation for Gaussian molecular surface using adaptive partition and piecewise polynomial approximation. SIAM J Sci Comput 40(2):B507–B527. https://doi.org/10.1137/16M1099704

    Article  MathSciNet  MATH  Google Scholar 

  31. Liu T, Chen M, Song Y, Li H, Lu B (2017) Quality improvement of surface triangular mesh using a modified Laplacian smoothing approach avoiding intersection. PLOS ONE 12(9):1–16. https://doi.org/10.1371/journal.pone.0184206

    Article  Google Scholar 

  32. Lorensen WE, Cline HE (1987) Marching cubes: a high resolution 3d surface construction algorithm. In: Proceedings of the 14th Annual Conference on Computer Graphics and Interactive Techniques, SIGGRAPH ’87, pp 163–169. ACM, New York, NY, USA https://doi.org/10.1145/37401.37422

  33. MacKerell AD, Bashford D, Bellott M, Dunbrack RL, Evanseck JD, Field MJ, Fischer S, Gao J, Guo H, Ha S, Joseph-McCarthy D, Kuchnir L, Kuczera K, Lau FTK, Mattos C, Michnick S, Ngo T, Nguyen DT, Prodhom B, Reiher WE, Roux B, Schlenkrich M, Smith JC, Stote R, Straub J, Watanabe M, Wirkiewicz-Kuczera J, Yin D, Karplus M (1998) All-atom empirical potential for molecular modeling and dynamics studies of proteins. J Phys Chem B 102(18):3586–3616. https://doi.org/10.1021/jp973084f

    Article  Google Scholar 

  34. Nicholls A, Sharp KA, Honig B (1991) Protein folding and association: insights from the interfacial and thermodynamic properties of hydrocarbons. Proteins Struct Funct Bioinform 11(4):281–296. https://doi.org/10.1002/prot.340110407

    Article  Google Scholar 

  35. Rask-Andersen M, Almén MS, Schiöth HB (2011) Trends in the exploitation of novel drug targets. Nat Rev Drug Discov 10(8):579. https://doi.org/10.1038/nrd3478

    Article  Google Scholar 

  36. Ritchie DW (2008) Recent progress and future directions in protein–protein docking. Curr Protein Peptide Sci 9(1):1–15. https://doi.org/10.2174/138920308783565741

    Article  MathSciNet  Google Scholar 

  37. Ryu J, Park R, Kim DS (2007) Molecular surfaces on proteins via beta shapes. Comput Aided Des 39(12):1042–1057. https://doi.org/10.1016/j.cad.2006.10.008

    Article  Google Scholar 

  38. Sanner MF, Olson AJ, Spehner JC (1996) Reduced surface: an efficient way to compute molecular surfaces. Biopolymers 38(3):305–320. 10.1002/(SICI)1097-0282(199603)38:3<305::AID-BIP4>3.0.CO;2-Y

  39. Schaefer S, Warren J (2005) Dual marching cubes: primal contouring of dual grids. Comput Gr Forum 24(2):195–201. https://doi.org/10.1111/j.1467-8659.2005.00843.x

    Article  Google Scholar 

  40. Schmid MB (2002) Structural proteomics: the potential of high-throughput structure determination. Trends Microbiol 10(10):s27–s31. https://doi.org/10.1016/S0966-842X(02)02443-5

    Article  Google Scholar 

  41. Schmitt S, Kuhn D, Klebe G (2002) A new method to detect related function among proteins independent of sequence and fold homology. J Mol Biol 323(2):387–406. https://doi.org/10.1016/S0022-2836(02)00811-2

    Article  Google Scholar 

  42. Sorkine O, Cohen-Or D, Lipman Y, Alexa M, Rössl C, Seidel HP (2004) Laplacian surface editing. In: Proceedings of the 2004 Eurographics/ACM SIGGRAPH Symposium on Geometry Processing, SGP ’04, pp 175–184. ACM, New York, NY, USA https://doi.org/10.1145/1057432.1057456

  43. Taubin G (1995) A signal processing approach to fair surface design. In: Proceedings of the 22nd Annual Conference on Computer Graphics and Interactive Techniques, SIGGRAPH ’95, pp 351–358. ACM, New York, NY, USA https://doi.org/10.1145/218380.218473

  44. Tomasi J, Mennucci B, Cammi R (2005) Quantum mechanical continuum solvation models. Chem Rev 105(8):2999–3094. https://doi.org/10.1021/cr9904009

    Article  Google Scholar 

  45. Turk G (1998) The ply polygon file format. Georgia Institute of Technology

  46. Via A, Ferre F, Brannetti B, Helmer-Citterich M (2000) Protein surface similarities: a survey of methods to describe and compare protein surfaces. Cell Mol Life Sci 57(13–14):1970–1977. https://doi.org/10.1007/PL00000677

    Article  Google Scholar 

  47. Xu D, Zhang Y (2009) Generating triangulated macromolecular surfaces by Euclidean distance transform. PloS one 4(12):e8140. https://doi.org/10.1371/journal.pone.0008140

    Article  Google Scholar 

  48. Yu WW, He F, Xi P (2010) A rapid 3D seed-filling algorithm based on scan slice. Comput Gr 34(4):449–459. https://doi.org/10.1016/j.cag.2010.05.005 Procedural Methods in Computer Graphics Illustrative Visualization

    Article  Google Scholar 

  49. Yu Z, Holst MJ, McCammon JA (2008) High-fidelity geometric modeling for biomedical applications. Finite Elem Anal Design 44(11):715–723. https://doi.org/10.1016/j.finel.2008.03.004

    Article  MathSciNet  Google Scholar 

  50. Zhang Y, Xu G, Bajaj C (2006) Quality meshing of implicit solvation models of biomolecular structures. Comput Aided Geom Design 23(6):510–530. https://doi.org/10.1016/j.cagd.2006.01.008

    Article  MathSciNet  MATH  Google Scholar 

  51. Zhao R, Wang M, Tong Y, Wei GW (2018) Divide-and-conquer strategy for large-scale Eulerian solvent excluded surface. Commun Inf Syst 18(4):299–329. https://doi.org/10.4310/CIS.2018.v18.n4.a5

    Article  MATH  Google Scholar 

Download references

Acknowledgements

This research has been partially supported by the University of Padova project CPDR150813/15 “Models and Algorithms for Protein–Protein Docking”. The author is grateful to Prof. Carlo Ferrari and Dr. Giacomo Baruzzo for their helpful insights and to Prof. Gianfranco Bilardi and Dr. Paolo Emilio Mazzon for their help in using the facilities of the Advanced Computing Paradigms Lab.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sebastian Daberdaku.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Daberdaku, S. Accelerating the computation of triangulated molecular surfaces with OpenMP. J Supercomput 75, 3426–3470 (2019). https://doi.org/10.1007/s11227-019-02803-y

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-019-02803-y

Keywords

Navigation