TY - JOUR
T1 - Programming the material point method in Julia
AU - Sinaie, Sina
AU - Nguyen, Vinh Phu
AU - Nguyen, Chi Thanh
AU - Bordas, Stephane
PY - 2017/3/1
Y1 - 2017/3/1
N2 - This article presents the implementation of the material point method (MPM) using Julia. Julia is an open source, multi-platform, high-level, high-performance dynamic programming language for technical computing, with syntax that is familiar to Matlab and Python programmers. MPM is a hybrid particle-grid approach that combines the advantages of Eulerian and Lagrangian methods and is suitable for complex solid mechanics problems involving contact, impact and large deformations. We will show that a Julia based MPM code, which is short, compact and readable and uses only Julia built in features, performs much better (with speed up of up to 8) than a similar Matlab based MPM code for large strain solid mechanics simulations. We share our experiences of implementing MPM in Julia and demonstrate that Julia is a very interesting platform for rapid development in the field of scientific computing.
AB - This article presents the implementation of the material point method (MPM) using Julia. Julia is an open source, multi-platform, high-level, high-performance dynamic programming language for technical computing, with syntax that is familiar to Matlab and Python programmers. MPM is a hybrid particle-grid approach that combines the advantages of Eulerian and Lagrangian methods and is suitable for complex solid mechanics problems involving contact, impact and large deformations. We will show that a Julia based MPM code, which is short, compact and readable and uses only Julia built in features, performs much better (with speed up of up to 8) than a similar Matlab based MPM code for large strain solid mechanics simulations. We share our experiences of implementing MPM in Julia and demonstrate that Julia is a very interesting platform for rapid development in the field of scientific computing.
KW - High-performance dynamic programming language
KW - Julia
KW - Material point method (MPM)
KW - Technical computing
UR - http://www.scopus.com/inward/record.url?scp=85010888053&partnerID=8YFLogxK
U2 - 10.1016/j.advengsoft.2017.01.008
DO - 10.1016/j.advengsoft.2017.01.008
M3 - Article
AN - SCOPUS:85010888053
SN - 0965-9978
VL - 105
SP - 17
EP - 29
JO - Advances in Engineering Software
JF - Advances in Engineering Software
ER -