Abstract
A simple and robust C++ code for the material point method (MPM) called Karamelo is presented here. It was designed to provide an open source, fast, light and easy-to-modify framework for both conducting research on the MPM and research using the MPM, instead of a finite element package. This paper presents the overall philosophy, the main design choices and some of the original algorithms implemented in Karamelo. Simulations of solids and fluids involving extreme deformation are provided to illustrate the capabilities of the code.
Similar content being viewed by others
References
Anderson CE Jr (1987) An overview of the theory of hydrocodes. Int J Impact Eng 5(1–4):33–59
Assadi H, Gärtner F, Stoltenhoff T, Kreye H (2003) Bonding mechanism in cold gas spraying. Acta Mater 51(15):4379–4394
Banerjee A, Dhar S, Acharyya S, Datta D, Nayak N (2015) Determination of Johnson Cook material and failure model constants and numerical modelling of Charpy impact test of armour steel. Mater Sci Eng A 640:200–209. https://doi.org/10.1016/j.msea.2015.05.073
Bardenhagen S, Kober E (2004) The generalized interpolation material point method. Comput Model Eng Sci 5(6):477–495
Bardenhagen S, Brackbill J, Sulsky D (2000) The material-point method for granular materials. Comput Methods Appl Mech Eng 187(3–4):529–541
Bardenhagen S, Guilkey J, Roessig K, Brackbill J, Witzel W, Foster J (2001) Improved contact algorithm for the material point method and application to stress propagation in granular material. Comput Model Eng Sci 2(4):509–522
Belytschko T, Krongauz Y, Organ D, Fleming M, Krysl P (1996) Meshless methods: an overview and recent developments. Comput Methods Appl Mech Eng 139:3–47
Belytschko T, Liu WK, Moran B (2000) Nonlinear finite elements for continua and structures. Wiley, Chichester
Brackbill J, Ruppel H (1986) FLIP: a method for adaptively zoned, particle-in-cell calculations of fluid flows in two dimensions. J Comput Phys 65(2):314–343
Cueto-Felgueroso L, Colominas I, Mosqueira G, Navarrina F, Casteleiro M (2004) On the Galerkin formulation of the smoothed particle hydrodynamics method. Int J Numer Methods Eng 60(9):1475–1512
de Vaucorbeil A, Nguyen VP (2020) A modelling contacts with a total Lagrangian material point method. Comput Methods Appl Mech Eng (under review)
de Vaucorbeil A, Nguyen VP, Hutchinson CR (2020) A total-Lagrangian material point method for solid mechanics problems involving large deformations. Comput Methods Appl Mech Eng 360:112783
de Vaucorbeil A, Nguyen VP, Sinaie S, Wu JY (2020) Material point method after 25 years: theory, implementation and applications. In: Balint D, Bordas S (eds) Advances in applied mechanics, vol 53. Elsevier, Amsterdam
Dong Y, Grabe J (2018) Large scale parallelisation of the material point method with multiple GPUs. Comput Geotech 101:149–158
Fern J, Rohe A, Soga K, Alonso E (2019) The material point method for geotechnical engineering: a practical guide. CRC Press, Boca Raton
Ganzenmüller GC (2014) Smooth-Mach-dynamics package for LAMMPS. Fraunhofer Ernst-Mach Institute for High-Speed Dynamics, Freiburg im Breisgau
Geuzaine C, Remacle JF (2009) GMSH: a three-dimensional finite element mesh generator with built-in pre- and post-processing facilities. Int J Numer Methods Eng 79(11):1309–1331
Gnanasekaran B, Liu G-R, Fu Y, Wang G, Niu W, Lin T (2019) A smoothed particle hydrodynamics (SPH) procedure for simulating cold spray process—a study using particles. Surf Coat Technol 377:124812
Harlow F (1964) The particle-in-cell computing method for fluid dynamics. Methods Comput Phys 3:319–343
Huang P, Zhang X, Ma S, Wang H (2008) Shared memory OpenMP parallelization of explicit MPM and its application to hypervelocity impact. Comput Model Eng Sci 38(2):119–147
Jiang C, Schroeder C, Teran J, Stomakhin A, Selle A (2016) The material point method for simulating continuum materials. In ACM SIGGRAPH 2016 courses. ACM, p 24
Johnson GR, Cook WH (1985) Fracture characteristics of three metals subjected to various strains, strain rates, temperatures and pressures. Eng Fract Mech 21(1):31–48
Johnso SG (2012) PyPlot module for Julia. https://github.com/stevengj/PyPlot.jl
Lemaitre J (1985) A continuous damage mechanics model for ductile fracture. J Eng Mater Technol 107(1):83–89. https://doi.org/10.1115/1.3225775
Lemiale V, Nairn J, Hurmane A (2010) Material point method simulation of equal channel angular pressing involving large plastic strain and contact through sharp corners. Comput Model Eng Sci 70(1):41–66
Leroch S, Eder SJ, Ganzenmüller G, Murillo L, Ripoll MR (2018) Development and validation of a meshless 3D material point method for simulating the micro-milling process. J Mater Process Technol 262:449–458
Li W, Yang K, Yin S, Guo X (2016) Numerical analysis of cold spray particles impacting behavior by the Eulerian method: a review. J Therm Spray Technol 25(8):1441–1460
Li X, Sulsky D (2000) A parallel material-point method with application to solid mechanics. In: Ingber CBM, Power H (eds) Cmputational science-ICCS 2002, volume 2331 of applications of high-performance computing in engineering VI. WIT Press, Southampton
Lobovskỳ L, Botia-Vera E, Castellana F, Mas-Soler J, Souto-Iglesias A (2014) Experimental investigation of dynamic pressure loads during dam break. J Fluids Struct 48:407–434
Ma ZT, Zhang X, Huang P (2010) An object-oriented MPM framework for simulation of large deformation and contact of numerous grains. Comput Model Eng Sci 55(1):61–87
Mason LS (2015) Modelling cold spray splat morphologies using smoothed particle hydrodynamics. PhD thesis, Heriot-Watt University
Mast C, Mackenzie-Helnwein P, Arduino P, Miller G, Shin W (2012) Mitigating kinematic locking in the material point method. J Comput Phys 231(16):5351–5373
Monaghan JJ (1994) Simulating free surface flows with SPH. J Comput Phys 110(2):399–406
Nairn JA (2003) Material point method calculations with explicit cracks. Comput Model Eng Sci 4(6):649–663
Nguyen VP, Nguyen CT, Rabczuk T, Natarajan S (2017) On a family of convected particle domain interpolations in the material point method. Finite Elem Anal Des 126:50–64
Nguyen VP, de Vaucorbeil A, Nguyen-Thanh C, Mandal TK (2020) A generalized particle in cell method for explicit solid dynamics. Comput Methods Appl Mech Eng 371:113308
Parker S (2002) A component-based architecture for parallel multi-physics PDE simulation. In: Sloot P, Hoekstra A, Tan C, Dongarra J (eds) Computational science—ICCS 2002, volume 2331 of lecture notes in computer science. Springer, Berlin, pp 719–734
Parker S, Guilkey J, Harman T (2006) A component-based parallel infrastructure for the simulation of fluid–structure interaction. Eng Comput 22(3–4):277–292
Plimpton S (1995) Fast parallel algorithms for short-range molecular dynamics. J Comput Phys 117(1):1–19
Rabczuk T, Belytschko T (2004) Cracking particles: a simplified meshfree method for arbitrary evolving cracks. Int J Numer Methods Eng 61(13):2316–2343
Ruggirello KP, Schumacher SC (2014) A comparison of parallelization strategies for the material point method. In: 11th world congress on computational mechanics, pp 20–25
Sadeghirad A, Brannon RM, Burghardt J (2011) A convected particle domain interpolation technique to extend applicability of the material point method for problems involving massive deformations. Int J Numer Methods Eng 86(12):1435–1456
Sadeghirad A, Brannon R, Guilkey J (2013) Second-order convected particle domain interpolation (CPDI2) with enrichment for weak discontinuities at material interfaces. Int J Numer Methods Eng 95(11):928–952
Silling SA (2000) Reformulation of elasticity theory for discontinuities and long-range forces. J Mech Phys Solids 48(1):175–209
Sinaie S, Nguyen VP, Nguyen CT, Bordas S (2017) Programming the material point method in Julia. Adv Eng Softw 105:17–29
Sinaie S, Ngo TD, Nguyen VP, Rabczuk T (2018) Validation of the material point method for the simulation of thin-walled tubes under lateral compression. Thin-Walled Struct 130:32–46
Sinaie S, Ngo TD, Kashani A, Whittaker AS (2019) Simulation of cellular structures under large deformations using the material point method. Int J Impact Eng 134:103385
Stomakhin A, Schroeder C, Chai L, Teran J, Selle A (2013) A material point method for snow simulation. ACM Trans Graph 32(4):1
Stukowski A (2009) Visualization and analysis of atomistic simulation data with ovito-the open visualization tool. Model Simul Mater Sci Eng 18(1):015012
Sulsky D, Gong M (2016) Improving the material-point method. In: Pandolfi A, Weinberg K (eds) Innovative numerical approaches for multi-field and multi-scale problems. Springer, Berlin, pp 217–240
Sulsky D, Kaul A (2004) Implicit dynamics in the material-point method. Comput Methods Appl Mech Eng 193(12–14):1137–1170
Sulsky D, Schreyer H (1996) Axisymmetric form of the material point method with applications to upsetting and Taylor impact problems. Comput Methods Appl Mech Eng 139:409–429
Sulsky D, Schreyer HL (1996) Axisymmetric form of the material point method with applications to upsetting and Taylor impact problems. Comput Methods Appl Mech Eng 139(1–4):409–429. https://doi.org/10.1016/s0045-7825(96)01091-2
Sulsky D, Chen Z, Schreyer H (1994) A particle method for history-dependent materials. Comput Methods Appl Mech Eng 5:179–196
Sulsky D, Zhou S, Schreyer HL (1995) Application of a particle-in-cell method to solid mechanics. Comput Phys Commun 87(1–2):236–252
Sun Z, Li H, Gan Y, Liu H, Huang Z, He L (2018) Material point method and smoothed particle hydrodynamics simulations of fluid flow problems: a comparative study. Progr Comput Fluid Dyn Int J (PCFD) 18(1):1–18
Wilkins ML (1999) Computer simulation of dynamic phenomena. Springer, Berlin
Wobbes E, Möller M, Galavi V, Vuik C (2019) Conservative Taylor least squares reconstruction with application to material point methods. Int J Numer Methods Eng 117(3):271–290
Yin S, Wang X-F, Xu B-P, Li W-Y (2010) Examination on the calculation method for modeling the multi-particle impact process in cold spraying. J Therm Spray Technol 19(5):1032–1041
Acknowledgements
The first author gratefully acknowledges the financial support of the Australian Research Council (ARC) Training Centre in Alloy Innovation for Mining Efficiency (IC160100036). The second author (V.P. Nguyen) thanks the funding support from the Australian Research Council via DECRA Project DE160100577.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
On behalf of all authors, the corresponding author states that there is no conflict of interest.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
A Input file for the two-disk collision problem
A Input file for the two-disk collision problem
The input file used to simulate the two-disk collision problem is given in Listing 2.
Rights and permissions
About this article
Cite this article
de Vaucorbeil, A., Nguyen, V.P. & Nguyen-Thanh, C. Karamelo: an open source parallel C++ package for the material point method. Comp. Part. Mech. 8, 767–789 (2021). https://doi.org/10.1007/s40571-020-00369-8
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s40571-020-00369-8