+ All Categories
Home > Documents > A computational library for multiscale modeling of material...

A computational library for multiscale modeling of material...

Date post: 21-Jun-2021
Category:
Upload: others
View: 7 times
Download: 0 times
Share this document with a friend
26
Comput Mech DOI 10.1007/s00466-013-0948-2 ORIGINAL PAPER A computational library for multiscale modeling of material failure Hossein Talebi · Mohammad Silani · Stéphane P. A. Bordas · Pierre Kerfriden · Timon Rabczuk Received: 26 August 2013 / Accepted: 12 November 2013 © Springer-Verlag Berlin Heidelberg 2013 Abstract We present an open-source software framework called PERMIX for multiscale modeling and simulation of fracture in solids. The framework is an object oriented open- source effort written primarily in Fortran 2003 standard with Fortran/C++ interfaces to a number of other libraries such as LAMMPS, ABAQUS, LS-DYNA and GMSH. Fracture on the continuum level is modeled by the extended finite ele- ment method (XFEM). Using several novel or state of the art methods, the piece software handles semi-concurrent mul- tiscale methods as well as concurrent multiscale methods for fracture, coupling two continuum domains or atomistic domains to continuum domains, respectively. The efficiency of our open-source software is shown through several sim- ulations including a 3D crack modeling in clay nanocom- posites, a semi-concurrent FE-FE coupling, a 3D Arlequin multiscale example and an MD-XFEM coupling for dynamic crack propagation. Keywords Crack · Fracture · Molecular dynamics · XFEM · PERMIX H. Talebi (B ) · T. Rabczuk Institute of Structural Mechanics, Bauhaus-Universitaet Weimar, Marienstr. 15, 99423 Weimar, Germany e-mail: [email protected] M. Silani Department of Mechanical Engineering, Isfahan University of Technology, 84156-83111 Isfahan, Iran S. P. A. Bordas · P. Kerfriden Institute of Mechanics and Advanced Materials, Theoretical and Computational Mechanics, Cardiff University, Cardiff CF 24 3AA, UK T. Rabczuk School of Civil, Environmental and Architectural Engineering, Korea University, Seoul, South Korea 1 Introduction Multiscale modeling of fracture or modeling fracture in gen- eral is today still a significant challenge. Multiscale methods are powerful for extracting material properties based on the fine-scale details. While numerous multiscale methods (see e.g. [38, 57]) were developed for intact materials, far fewer methods are available for fracture simulations. It is believed that molecular dynamic (MD) simulations of fracture will help gaining a fundamental understanding about the fail- ure of solids. However, MD simulations are not feasible for specimens of reasonable size. Therefore, multiscale methods have been developed that couple MD-models to continuum models. Multiscale methods can be classified into hierarchical, semi-concurrent and concurrent methods, Fig. 1. In hierarchi- cal multiscale methods, information are passed from the fine- scale to the coarse-scale only. Numerical homogenization is a classical upscaling technique. Here a macroscopic consti- tutive model is assumed and the parameters of the model are computed from the microstructure. Among many other we refer to the studies by Pettermann and Suresh [101], Naka- mura and Suresh [88], Christman et al. [29], van der Sluis et al. [133], and extensions to composite materials were con- ducted in [1, 32, 61, 71, 107]. Though attractive because of their computational effi- ciency, the extension of hierarchical multiscale methods to model fracture is complex. In the presence of a crack in the micro-scale, one basic assumption for the application of homogenization theories is the existence of disparate length scales [89]: Cr RVE Spec where Cr , RVE and Spec are the crack length, the representative volume ele- ment (RVE) and specimen-size, respectively. For problems involving fracture, the first condition is violated as Cr is in the order of RVE . Moreover, periodic boundary conditions 123
Transcript
Page 1: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput MechDOI 10.1007/s00466-013-0948-2

ORIGINAL PAPER

A computational library for multiscale modeling of materialfailure

Hossein Talebi · Mohammad Silani · Stéphane P. A. Bordas ·Pierre Kerfriden · Timon Rabczuk

Received: 26 August 2013 / Accepted: 12 November 2013© Springer-Verlag Berlin Heidelberg 2013

Abstract We present an open-source software frameworkcalled PERMIX for multiscale modeling and simulation offracture in solids. The framework is an object oriented open-source effort written primarily in Fortran 2003 standard withFortran/C++ interfaces to a number of other libraries such asLAMMPS, ABAQUS, LS-DYNA and GMSH. Fracture onthe continuum level is modeled by the extended finite ele-ment method (XFEM). Using several novel or state of the artmethods, the piece software handles semi-concurrent mul-tiscale methods as well as concurrent multiscale methodsfor fracture, coupling two continuum domains or atomisticdomains to continuum domains, respectively. The efficiencyof our open-source software is shown through several sim-ulations including a 3D crack modeling in clay nanocom-posites, a semi-concurrent FE-FE coupling, a 3D Arlequinmultiscale example and an MD-XFEM coupling for dynamiccrack propagation.

Keywords Crack · Fracture · Molecular dynamics ·XFEM · PERMIX

H. Talebi (B) · T. RabczukInstitute of Structural Mechanics, Bauhaus-Universitaet Weimar,Marienstr. 15, 99423 Weimar, Germanye-mail: [email protected]

M. SilaniDepartment of Mechanical Engineering, Isfahan Universityof Technology, 84156-83111 Isfahan, Iran

S. P. A. Bordas · P. KerfridenInstitute of Mechanics and Advanced Materials,Theoretical and Computational Mechanics, Cardiff University,Cardiff CF 24 3AA, UK

T. RabczukSchool of Civil, Environmental and Architectural Engineering,Korea University, Seoul, South Korea

1 Introduction

Multiscale modeling of fracture or modeling fracture in gen-eral is today still a significant challenge. Multiscale methodsare powerful for extracting material properties based on thefine-scale details. While numerous multiscale methods (seee.g. [38,57]) were developed for intact materials, far fewermethods are available for fracture simulations. It is believedthat molecular dynamic (MD) simulations of fracture willhelp gaining a fundamental understanding about the fail-ure of solids. However, MD simulations are not feasible forspecimens of reasonable size. Therefore, multiscale methodshave been developed that couple MD-models to continuummodels.

Multiscale methods can be classified into hierarchical,semi-concurrent and concurrent methods, Fig. 1. In hierarchi-cal multiscale methods, information are passed from the fine-scale to the coarse-scale only. Numerical homogenization isa classical upscaling technique. Here a macroscopic consti-tutive model is assumed and the parameters of the model arecomputed from the microstructure. Among many other werefer to the studies by Pettermann and Suresh [101], Naka-mura and Suresh [88], Christman et al. [29], van der Sluis etal. [133], and extensions to composite materials were con-ducted in [1,32,61,71,107].

Though attractive because of their computational effi-ciency, the extension of hierarchical multiscale methods tomodel fracture is complex. In the presence of a crack inthe micro-scale, one basic assumption for the application ofhomogenization theories is the existence of disparate lengthscales [89]: �Cr � �RV E � �Spec where �Cr , �RV E and�Spec are the crack length, the representative volume ele-ment (RVE) and specimen-size, respectively. For problemsinvolving fracture, the first condition is violated as �Cr is inthe order of �RV E . Moreover, periodic boundary conditions

123

Page 2: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

Fig. 1 Schematic of a concurrent and semi-concurrent multiscale methods

(PBC) often used at the fine-scale to improve convergence,cannot be used when there exists an edge crack touching aboundary as the displacement jump on that boundary violatesthe PBC.

In semi-concurrent multiscale methods, there is an inter-action between the fine-scale and the coarse-scale during thesimulation, Fig. 1. A classical semi-concurrent multiscalemethod is the F E2 [37] developed originally for intact mate-rials. In concurrent methods, there is a direct coupling of fineand coarse-scales. Numerous concurrent multiscale methodsfor intact materials were proposed in the literature. There aretwo categories that can be classified into handshake couplingand interface coupling methods [85].

In general, a multiscale model can involve continuum,atomistic or quantum mechanical descriptions of the matterat each scale. Also, the discretization strategy at each scalecan be different i.e. one can use for example finite elementsor meshfree methods to model the continuum behavior. As aresult, due to the complexity of the implementation of mul-tiscale methods, the class of problems approached by otherresearchers are mostly limited to small, two dimensional andacademic cases. The reason as noted by Shepard et al. [116]is that so far there is no unified tool that enables one to easilyconnect different abstract components with multiscale meth-ods. Notable multiscale modeling tools are the one offeredby Miller and Tadmor [85] where the open source imple-mentation offers 14 different multiscale methods bridging

atomistic to continuum methods. Digimat is a commercialtool which is linked to several commercial finite elementpackages. However, those open-source components focus onmultiscale methods for intact materials. To our knowledge,no piece of software enabling multiscale fracture simulationin an integrated framework is available.

Many computational methods exist to model propagatingcracks in a single scale. Continuum mechanics approachesthat smear the crack width over several elements are com-putationally expensive as the length scale of the specimen ismagnitudes larger than the width of the cracks. Examples ofcomputational methods for discrete fracture are interelement-separation methods [139], extended finite element method(XFEM)/generalized finite element method (GFEM) [17,86,126], extended element free Galerkin method (XEFG)[26,141,130] or cracking particles [106]. In XFEM for exam-ple, the crack can be captured within a single element. Frac-ture in MD is modeled by breaking bonds between neigh-boring atoms. In the Peridynamics method also, fracture ismodeled with breaking bonds between the particles [122].

In order to implement a framework for multiscale analysis,the software design must account for many different modelsituations. The framework should be able to handle severalsimulation components with and without different modelingconcepts. Also, the framework should be able to communi-cate with existing tools such as commercial or open-sourcesoftware to model a certain scale of the model. The com-

123

Page 3: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

munication with other tools demand a proper interface thatefficiently transfers data. This can be achieved, amongst othermeans, by a full object oriented design which connects sev-eral tools and libraries together and with its own capabilities.

Most of the previous work in object-oriented design of FEsoftware was performed using C++ and Java. However, For-tran is the traditional language used by many advanced com-mercial FE software. The use of object oriented programming(OOP) concepts in Fortran 90 for finite elements was shownin [4,96,34]. A successful use of the Fortran 2003 standardwas reported by Nie et al. [95] where modern features of For-tran 2003 were used to implement an adaptive multi-physicslibrary. Fortran 2003 as a modern programming language andbackward compatibility with Fortran 9x/77 convinced theauthors of this work who used it as their primary language toimplement the computational library. The attractive featuresof Fortran 2003 such as derived data types, type extensionand inheritance, dynamic memory allocation, polymorphism,enhanced interoperability with the C language and finally itsgeneral ease of implementation and debugging compared toC++ [83] will help the maintenance and extension of the tool.

In this manuscript we offer a computational software(named PERMIX) that has several advantages which makesit a versatile and efficient toolbox for multiscale simula-tion of material failure. Several scales can coexist in 2Dand 3D problems. Hierarchical, semi-concurrent and concur-rent multiscale methods are available for both continuum andatomistic domains. For continuum based methods, it supportslarge deformation in addition to different nonlinear materialmodels. For atomistic domains, the code has its own parallelatomistic library with some basic atomistic potentials usefulfor metals. Moreover, PERMIX has a full interface to theLAMMPS Library that includes Peridynamics [121,122,99]and the SPH method [56,73] in addition to its comprehensiveMD library. Therefore, nearly all capabilities of LAMMPScan be utilized in a multiscale simulation. The code currentlysupports several novel and state of the art multiscale methodsto model dynamic fracture. Finally, further extension of themultiscale methods, finite elements, material models etc. areeasily possible thanks to the novel design of the code.

This paper is organized as follows. We first describe someimportant theory and the notable research background on thesemi-concurrent and concurrent multiscale methods used inour open-source library and as well as XFEM, that we use tomodel fracture in the continuum domain. We also summarizethe atomistic models available in our open-source software.In Sect. 3, we introduce our software framework PERMIXand its design concepts. We describe the interface genera-tion strategy in the Sect. 4. Section 5 is devoted to showactual strategies used in facing multiscale problems involv-ing fracture in terms of implementation. In section 6 we willshow several examples which cover the main capabilities ofthe current implementation of PERMIX to model multiscale

cracks. Section 7 will explain the future trends of the projectand concludes our manuscript.

2 Theory and background

2.1 Multiscale methods

In this section we briefly cover the multiscale methods whichare used in our software framework. A continuum mechan-ics model is used at the coarse-scale whilst an atomisticmodel or another continuum model containing fine-scale fea-tures is employed at the fine-scale. Consider the domain� = �F ⋃

�C , the superscripts F and C denoting thefine-scale and coarse-scale, respectively. The outer bound-ary of �C is denoted by �C with �C = �C

t⋃

�Cu

⋃�C

cand �C

t⋂

�Cu = Ø, �C

c⋂

�Cu = Ø, �C

t⋂

�Cc = Ø; the

subscripts u, t and c indicate ’displacement-’, ’traction-’ and’crack-’, respectively. The area in front of the crack tip (crackfront in 3D) is of particular interest and will therefore be mod-eled by a fine-scale domain (which can contain features ofthe micro-structure of the material), Fig. 1. Note that thoughmost of the figures are illustrated in 2D, our implementationis completely three-dimensional.

2.1.1 Semi-concurrent multiscale methods

The semi-concurrent multiscale scale methods are relativelynew topics that have emerged where they circumvent the needfor constructing an explicit material constitutive formula-tion. Though computationally expensive, they offer a reliableway of transferring fine-scale information to the coarse-scalesolution process. In semi-concurrent multiscale methods,information are passed from the fine-scale to the coarse-scale and vice versa. In the F E2 method, the strain measure(e.g. deformation gradient) is passed from the coarse-scaleto the fine-scale and the stress measure is sent back from thefine-scale to the coarse-scale. The stress tensor is computedbased on the first-order homogenization theory [64,65]. Thisframework fits within a standard continuum mechanics the-ory for cases where the principle of separation of scalesfully holds. First order homogenization is not applicablefor ’small’ macro-sizes (miniaturization), analysis of geo-metrical size effects and engineering localization problems(failure). For non-negligible micro-structural size, significantmacroscopic gradients and macroscopic localization or fail-ure, second-order method should be used [66].

Semi-concurrent multiscale methods are very flexible andsimple to implement; they can be applied to very complexmicro-structures and allow different commercial or open-source tools to be coupled together without complications.For example, semi-concurrent methods were implemented inABAQUS by Yuan and Fish [140]. Numerous studies can be

123

Page 4: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

Fig. 2 Different boundary condition approaches. a uniform strain and b uniform stress boundary conditions

found in the manuscripts by Guedes and Kikuchi [50], Feyeland Chaboche [37], Kouznetsova et al. [65], Talebi et al.[131], Fish et al. [40,41], Ghosh et al. [44], Smit et al. [123],Miehe et al. [84] and an extension to thermal problems inOzdemir et al. [97], Monteiro et al. [87], Larsson et al. [69]and to multi-physics problems in [98,113].

For phenomena involving strain softening materials andcracking, the transfer of length scale is a very challengingissue when using semi-concurrent multiscale methods. Asshown by Gitman et al. [47] and Bazant [14], the applica-bility of standard/conventional semi-concurrent methods forstrain softening materials is questionable. Also as discussedin [46], the RVE looses representativeness in case of strainlocalization. Discontinuous semi-concurrent methods wereintroduced to resolve this issue. This is done by determining acohesive law for the crack at the macro-scale from the micro-structure. For more information, please refer to manuscriptsby Matous et al. [79], Kulkarni et al. [67] and Hirschbergeret al. [55], Alfaro et al. [6], Nguyen et al. [90–92,94,136]and Verhoosel et al. [134].

One other strategy to deal with multiscale models involv-ing cracks is the continuous-discontinuous semi-concurrentmethod. In a nutshell, in these models a crack is injected intothe macroscale model when failure or instability occurs atthe RVE. Please refer to the work of Massart et al. [77,78]for the masonry cracking, Belytschko et al. [21], Belytschkoand Song [22] (the MAD method), Allen et al. [124,125],Nguyen et al.[90–92,136] for more details.

In the following, we will explain the very basic but generaltheory of semi-concurrent methods that leads us to a com-mon strategy for their computational implementation. Thesolution procedure for semi-concurrent multiscale methodscan be described as follows. At each integration point ofthe coarse-scale model, a fine-scale RVE is constructed. Thedeformation measure from the macro level is applied to theRVE by means of boundary conditions. In the literature atleast five different approaches are available to apply bound-

ary conditions (BCs) to the RVE: periodic boundary con-dition (PBC), uniform stresses (constant traction), uniformstrains (linear displacement BCs) [54,52], Taylor BCs andminimal kinematic BCs [82]. Please refer to the review byNguyen et al. [93] for detailed description of the RVE bound-ary conditions and their differences. For the uniform strainconditions, Fig. 2,

u = EC · x for allx on �F (1)

where u is the displacement vector, x are the fine-scalecoordinates, EC is the coarse-scale strain measure and �F

denotes the boundary of the fine-scale RVE. Using the defor-mation gradient tensor, the displacements of the boundarynodes are computed as:

u = x − X = FC X − X (2)

where FC is the coarse-scale deformation gradient and Xand x are the fine-scale coordinate vectors in the initial andcurrent configuration, respectively. In the fine-scale simula-tions, any kind of micro-mechanical constitutive model canbe used. After solving the fine-scale RVE, a homogenizedstress tensor is calculated at each load increment:

〈SC 〉 de f= 1

V�F

�F

SF d� (3)

where V�F refers to the volume of the fine-scale domain.This stress tensor will be sent back to the coarse-scale model(i.e. to the corresponding integration point). This process willcontinue for all integration points and for each load incrementof the coarse-scale model.

2.1.2 Concurrent multiscale methods

As a whole, concurrent multiscale methods can be dividedinto two categories that are discrete-continuum coupling(particle-continuum, atomistic-continuum) and the continu-

123

Page 5: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

um-continuum coupling. As it is explained in [85], atomistic-continuum methods differ from their continuum-continuummethods in four ways:

1. The governing formulation i.e. energy based {for exam-ple Quasicontinuum (QC) [115,129], coupling of lengthscales (CLS) [111], bridging domain (BD) [138], bridgingscale method (BSM) [105,135], composite grid atomisticcontinuum method (CACM) [33]} or force based {finite-element/atomistics (FEAt) [63], Coupled atomistics anddiscrete dislocation (CADD) [118,119], hybrid simula-tion method (HSM) [75], concurrent AtC coupling (AtC)[39,12]}

2. The coupling boundary conditions i.e. how the compat-ibility conditions are enforced (strong or weak compati-bility)

3. The handshake region i.e. how the transition from contin-uum to atomistic is treated (for example linear mixing ofenergy in the BD method)

4. Treatment of the continuum i.e. how the material proper-ties in the continuum is modeled (for example Cauchy-Born or linear elasticity)

For the case of modeling crack and dislocation propaga-tion using concurrent atomistic-continuum method, Shilkrotet al. [118,119] developed a concurrent multiscale methodsfor propagation of dislocations. However, the method is basedon the discrete dislocation method and hence restricted to lin-ear solids. Furthermore, the method is restricted to the staticcase. An interesting concurrent multiscale method was pro-posed in the context of dynamic fracture in 2D by Xiao andBelytschko [138], Gracie and Belytschko [48] and dynamicfracture with XFEM in 2D by Aubertin et al. [9]. It avoids thetransfer of length scales around the crack tip or dislocationcore and adaptively adjusts the fine-scale domain when dis-locations or cracks propagate in the fine-scale domain. Thekey challenge is the detection of the dislocation core or cracktip in the fine-scale domain and the adaptive adjustment ofthe fine-scale domain [49,114].

For the continuum–continuum coupling methods, similarproblems and strategies exist. In the case of concurrent mul-tiscale methods for fracture, some of the methods are basedon domain decomposition methods. This means the methodrecognizes hotspots (crack tip mostly) and models them witha fine-scale formulation. The material properties away fromthe crack tip is modeled with homogenized properties. Theworks by Guidault et al. [51], Eckardt and Könke [35] andLloberas-Valls et al. [74] are such examples.

Another approach is based on the variational multiscalemethod. The foundation of this method is based on separa-tion of the displacement field into a fine and coarse scale part.The work by Hettich et al. [53] is an examples in the area ofcrack propagation. Strong macro-micro coupling is another

concurrent approach that was proposed in the manuscript byIbrahimbegovic and Markovic [59]. This method is appliedmostly where the scales remain coupled throughout the com-putations that implies a constant communication between thenumerical models employed at each scale.

To treat the handshake region, the Arlequin method pro-posed by Dhia and Rateau [23] and the work by Lim et al. [72]are two frameworks. The Arlequin method is a very generalmethod to couple the two scales that is based on linear weight-ing of energy in the handshake region. On the other hand in[72], variable-node elements are employed as transition ele-ments that link the standard finite elements to the domainwhere the microstructure is explicitly modeled in detail.

Since multiscale methods are computationally expensive,adaptive multiscale methods combining the hierarchical andconcurrent methods are gaining popularity. In the methodpresented by Ghosh et al. [45], three levels are introduced inthe computational domain: macro, macromicro and micro-scopic scales. Continuum constitutive relations at the macroscale determine the hotspots and asymptotic homogeniza-tion is used to couple the scales in regions where periodicmicrostructures exist. Other studies are presented by Lars-son and Runesson [68] and Temizer and Wriggers [132].

Our selected numerical method for the concurrent cou-pling of different length scales is the Arlequin method [23]which in the case of MD/FE coupling is known as the BDmethod [137]. In the Arlequin method, the coarse-scale iscontinuously blended into a fine-scale in a so-called hand-shake domain �B=�C ⋂

�F . Usually, a continuum formu-lation is used for the coarse-scale while both molecular andcontinuum formulations can be used at the fine-scale. Sev-eral scales can be coupled but in this paper and for sake ofsimplicity, only two scales were considered. The Arlequinmethod and the BD methods (BDM) are used since theamount of wave reflections is minimum in dynamic appli-cations [10,80]. The Arlequin method possesses many prop-erties of the other multiscale methods which makes theimplementation challenging. On the other hand, the imple-mentation of the Arlequin method can be easily modified toimplement other methods where suitable. Since we are offer-ing a computational framework for multiscale analysis, thiswas another reason to choose the Arlequin method and theBDM to present the software. The difference between theArlequin and BDM is the using the atomistic description inthe fine scale region. This will introduce some inconsisten-cies which led to several sub-methods that are only dealingatomistic-continuum coupling.

2.1.3 Coarse-scale formulation

Let the reference and the current configurations of the domainbe denoted by �0 and �, respectively. The material coordi-nates of a point in �C

0 are denoted by X and the spatial coor-

123

Page 6: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

dinates by x. The linear momentum conservation equationsare:

∂ Pji

∂ X j+ ρ0bi = ρ0ui (4)

where P is the first Piola–Kirchhoff stress tensor, b is thebody force vector per unit mass and u is the displacementvector. For hyperelasticity, the first Piola–Kirchhoff stresstensor can be calculated from a continuum potential:

P = ∂wC (F)

∂ F(5)

where wC is the potential energy per unit volume and F isthe deformation gradient tensor. The total potential energyof the coarse model is:

WCint =

�C0

wC (F)d�C0 (6)

In an isolated system, the sum of the potential and kineticenergies is constant in time. This summation is identifiedas the Hamiltonian. At the coarse-scale, the Hamiltonian isgiven by:

HC = K C + WC =∫

�C0

1

2ρvT vd�C

0 + WC (7)

WC = −WCext + WC

int = −∫

�C

b.ud�C

−∫

�Ct

t.ud�C +∫

�C0

wC (F)d�C0 (8)

where K C and WC are kinetic and potential energies in thecoarse-scale. v denotes the velocity and b is the body forcesacting on the coarse- scale which is situated “far” from theinfluence of the crack tip.

We use the XFEM to model fracture in the continuumdomain. As the area around the macroscopic crack tip ismodeled by the fine-scale, a purely step-enriched XFEM-approach is sufficient at the coarse-scale:

uh (X) =∑

I∈NNI (X) uI

︸ ︷︷ ︸ucont

+∑

I∈Nb

NI (X) S ( f I (X)) a I

︸ ︷︷ ︸udiscont

(9)

where N is the set of all nodes in the domain and Nb isthe set of nodes that belong to all elements which are com-pletely cut by the crack; uI and a I are the standard and theenriched degrees of freedom (DOF), respectively and S is thediscontinuous enrichment (Heaviside) function:

S ( f (X)) ={

1 if f (X) > 0

0 if f (X) < 0(10)

with

f (X) = sign [n· (X I − X)] minXI∈� ‖X I − X‖ (11)

where n is the outward normal to the crack surface.

uh (X) =∑

I∈NNI (X) uI

︸ ︷︷ ︸ucont

+∑

I∈Nb

NI (X) S ( f I (X)) a I +∑

I∈Nt

NI (X)∑

K

BK (X) bK I

︸ ︷︷ ︸udiscont

(12)

where Nt are the set of nodes that are influenced by thecrack tip and B is a set of branch functions. In PERMIX, thefollowing set of branch functions are used:

B = [B1, B2, B3, B4]=

[√rsin

2

)

,√

rcos

2

)

,√

rsin(θ)sin

2

)

,

√rsin(θ)cos

2

)]

(13)

where r and θ are the local polar co-ordinates defined at thecrack tip.

2.1.4 Fine-scale formulation

Continuum and atomistic formulations can coexist in the fine-scale domain. In case of a continuum fine-scale, the Hamil-tonian can be expressed in a similar way to the Hamiltonianof the coarse-scale. Therefore, only the Hamiltonian of theatomistic formulation of the fine-scale is presented here. Forthe atomistic subdomain, the Hamiltonian can be expressedas:

HF (xα(t), pFα (t)) =

α

1

2mα

pFα · pF

α + WF (xα(t))

(14)

where xα and mα are the current position vector and mass ofatom α respectively. The location of atom α in the referenceand spatial configurations can be related by the displacementvector d:

xα = Xα + dα (15)

pFα is the momentum of atom α and defined by

pFα = mα xα = mα dα (16)

123

Page 7: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

Fig. 3 The weighting functionin the handshake domain in twodimensions

WF (x) is the potential function due to any kind of forcefields, such as pair-wise interactions or three-body potentials:

WF (xα) =∑

α

W1(xα) +∑

α,β>α

W2(xα, xβ) + ... (17)

Assuming the external potential results only from a con-stant external force, f ext

α , and a pair-wise potential, the totalpotential can be expressed as:

WF = −WFext + WF

int = −∑

α

f ext αdα

+∑

α,β>α

WF (xα, xβ) (18)

The canonical form of the Hamiltonian equations of thefine-scale problem can be expressed as:⎧⎨

pFI = − ∂ H

∂x I= − ∂WF

∂x I

x I = d I = ∂ H∂ pF

I= pF

Im I

(19)

Finally, these two equations can be combined to obtain:

mα dα =−∂WF

∂xα

= ∂WFext

∂dα

− ∂WFint

∂dα

= f ext α − f int α

(20)

In this equation, f int is the internal force vector.The modeling of cracks in the fine-scale region can be also

handled with the conventional strategies. When a continuumformulation is used, we use XFEM to represent cracks in thefine-scale region as explained in the previous section. WhenMD is used, the cracks initiate naturally since the nature ofatomistic modeling can represent crack surfaces automati-cally. To introduce a pre-crack in the atomistic region, wemodify the neighbor lists to artificially reproduce a cracksimilar to the visibility criterion used in meshfree methods[20], where atoms do not “see” each other through the crack.

2.1.5 Coupling method

In the Arlequin method, the total energy of the system is aweighted average of the fine and coarse models in the BD�B . To implement this concept, a scalar weight function, w

is defined which is unity outside the fine-scale domain, zeroinside the fine-scale and linearly increasing/decreasing in theblending region:

w(X)

⎧⎪⎨

⎪⎩

= 0 ∀X ∈ �C \�F

∈ [0, 1] ∀X ∈ �B

= 1 ∀X ∈ �F \ �C

(21)

The weight function w at any point X can be computed by anormalized distance function:

w(X) = l(X)

l0(22)

where l(X) is the orthogonal projection of X onto the interiorboundary of the coarse-scale domain �C and l0 is the lengthof this orthogonal projection to the boundary of the fine-scale�F , Fig. 3.

The governing equations are derived from the Hamiltonianof the systems, H , which is the sum of the Hamiltonians ofeach subdomain:

H = wHF + (1 − w)HC

=∑

α

w(Xα)pF

α · pFα

2mα

+wWF +∑

I

(1 − w(X I ))pC

I · pCI

2MI+ (1 − w)WC

(23)

where HF and HC are the Hamiltonians of the fine andcoarse sub-domains.

123

Page 8: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

The coarse and fine-scale domains are constrained on thebridging domain, �B by the Lagrange multiplier method.In this overlapping domain, the fine-scale displacements arerequired to conform to the coarse-scale displacements. In theLagrange multiplier method, the total Hamiltonian is writtenas:

HL = H + λT g (24)

where λ is the Lagrange multipliers vector and g = uC −uF is the gap vector between coarse-scale displacement andfine-scale displacement. To compute the Lagrange multiplierunknowns we use the method described in [137]. Finally, weobtain the following semi-discrete equations of motion:

∀I ∈ NC ∀i ∈ {1, 2, 3} : MI J u J i = f extI i − f int

I i + f λCI i , (25)

∀α ∈ �1, . . . , nF �, ∀i ∈ {1, 2, 3} : mFα dF

αi = f Fαi + f λF

αi ,

(26)

where u J and d Aα are the accelerations of node J and atom

α, respectively, mFα is the mass of atom α and MI J is the

consistent mass matrix:

∀I, J ∈ NC : MI J =∫

�C0

(1 − w) ρ0 NI NJ d�C0 , (27)

The mass matrix of the coarse-scale is diagonalized accord-ing to the mass-lumping scheme for XFEM proposed in [81].The internal forces at the coarse-scale are:

∀I ∈ NC , ∀i ∈ {1, 2, 3} : f intI i =

�C0

(1 − w) Pi j∂ NI

∂ X jd�C

0 ,

(28)

The external forces on each atom are determined from theinteratomic potential W as:

∀α ∈ �1 . . . nF �, ∀i ∈ {1, 2, 3} : f Fαi = −

β

1

2(w (Xα)

+w(Xβ

)) ∂W(rαβ

)

∂dFiβ

, (29)

where β ranges over all atoms within the cutoff radius of atomα. The forces f λC in the coarse-scale domain and f λF inthe fine-scale domain, due to the coupling are given by:

∀I ∈ NC , ∀i ∈ {1, 2, 3} : f λCI i =

α∈�B0

λαi NI (Xα) ,

(30)

and

∀α ∈ �1 . . . nF �, ∀i ∈ {1, 2, 3} : f λFαi = −λαi . (31)

2.2 Crack propagation

When the molecular scale model is described in terms of firstprinciple MD/mechanics, the crack propagation and nucle-ation occurs naturally by breaking bonds between atoms.However, at the continuum mechanics level, crack nucle-ation and propagation must be taken care of. Once a crackinitiates, the nucleation and propagation of the crack at eachtime step should be checked and if the crack propagates,the propagation direction of the crack should be determined.Different methods such as maximum circumferential stresscriterion (MCSC), minimum strain energy density criterion(MSEDC) and maximum strain energy release rate criterion(MSERRC) are available to determine the propagation direc-tion [27].

The loss of hyperbolicity criterion is another criterion forcrack nucleation and propagation [18] which is used in PER-MIX. Assume that the rate form of the constitutive equationsare

σ∇(X, t) = Ct (X, t) : D(X, t) (32)

where Ct is the tangential stiffness and D is the velocitygradient; the superscript ∇ denotes the Truesdell rate. Equa-tion (32) loses hyperbolicity when

e = minn,h

(n ⊗ h : A(X, t) : n ⊗ h) ≤ 0 (33)

where A = Ct + σ ⊗ I and n and h are two arbitrary unitvectors. Loss of hyperbolicity is determined by minimizinge with respect to n and h; if e is negative for any combinationof n and h, the PDE has lost hyperbolicity at that materialpoint. Hyperbolicity can also be checked by conditions onthe acoustic tensor Q = n · A · n. A material point losesstability if the minimum eigenvalue of the acoustic tensor issmaller or equal to zero:

min eig(Q) ≤ 0 (34)

where n is the normal to crack surface when min eig(Q) ≤ 0.

2.3 Molecular dynamics

MD [7] is one of the simplest but most insight generatingsimulation techniques in modern materials modeling. Thismethod was first introduced by Alder and Wainwright in thelate 1950s [5] to study the interactions of hard spheres, andwas advanced to model water by Rahman in [108]. MD pre-dicts the motion of atoms governed by their mutual inter-atomic interaction, and to do so, requires numerical integra-tion of the equations of motion of each particle

123

Page 9: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

fA = mr (35)

where fA is the force vector on the particle, m the particlemass and r is the acceleration vector. The force vector fA

for each particle is given by the gradient of the total energyat a given particle location in space:

fA = −∇EAtot (36)

where

EAtot =

i

φi (37)

denotes the total energy of the system which is obtained bysumming the potential energy of all particles.

The forces between particles can be short-ranged or long-ranged. In case of short-ranged forces only particles within acritical cutoff sphere contribute to the energy of the atom. Theequations of motion Eq. (35) are usually integrated using avelocity Verlet scheme [7,128] which is similar to the centraldifference method for explicit time integration. Therefore,in PERMIX the main routine for explicit dynamic solutionhandles all atomistic and finite element components together,when running with the same time step.

3 The PERMIX code

The object oriented design of PERMIX allows the programto include several different components of one system at sev-

eral scales with different formulation concepts. The softwareprovides its own XFEM implementation both in statics anddynamics. Several powerful parallel linear direct and itera-tive solvers were added to the program in addition to a seriallinear solver. PERMIX is platform independent and known tobe built and executed on Windows, Linux and MacOS oper-ating systems. In general, any standard F2003 compiler canbe used to build PERMIX. We will continue with describingthe overall design of the program and give more details abouteach component in the following sections.

PERMIX is implemented in Fortran 2003. Fortran wasinvented back in the 1950s for numerical analysis. Sincethen, Fortran has been regularly updated to meet the newconcepts in the software engineering [76]. The latest stan-dard is Fortran 2008, containing only minor modificationof the 2003 standard. The F2003 standard allows for OOPconcepts such as data encapsulation, inheritance, polymor-phism, among others [110]. There are several other programswritten mostly in C++ such as OOFEM [100], deal. II [13]and OpenXFEM++ [25]. However, to our best of knowledge,there is no multiscale code for fracture available in the opensource domain.

3.1 Object oriented design

The PERMIX code exploits many features of the Fortran2003 standard to produce an efficient and extensible code

Fig. 4 The OOP design of PERMIX with the main objects

123

Page 10: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

which can deal with several types of physical systems. PER-MIX uses derived data types (like classes in C++), type exten-sions (inheritance in C++) and polymorphism for the mainobjects. However for efficiency reasons, the small objectsare saved mainly in vectors and matrices rather than deriveddata types. This enables especial Fortran compiler optimiza-tion and finally will result in higher single thread perfor-mance. Moreover, in case of distributed memory communi-cation using MPI, transferring data among processors is alsoeasier and faster. The main PERMIX class has several otherclasses included which are shown in Fig. 4. The sub-classesshown in Fig. 4 are the most important classes and they mighthave sub-classes as well.

For classes which contain similar methods and proper-ties, a base class was defined via Fortran abstract types.Then, the base class is extended to a final class (throughderived data type extension). The abstract types containseveral properties and methods (procedures). The pro-cedures can be deferred or nonoverridable. Thedeferred procedures must be defined when an extendedtype is generated for further program extension. The pro-

cedures without the nonoverridable attribute can beoverridden with another procedure to conduct a specifictask.

All extended derived types of an initial base class aregrouped in one Fortran vector containing an allocatable poly-morphic variable of the base class; and based on the input,the polymorphic data inside the vector is allocated accord-ingly. A similar method is used in the LAMMPS C++ code tostore the objects and in PERMIX a slightly modified Fortranversion of it is implemented. To distinguish the type of alloca-tion for the polymorphic variables, the Type is commandin Fortran is used. In case of adding a new style, a small scriptin the Perl language is also written to handle the changes inthe object allocation subroutine. This way, new styles can beadded with minimum modification of other parts of the codeand without having an overview on the many other classes.

We explain the above concept with an example. To createdifferent Finite Elements types, a base class is listed in listing1. As it is clear from the listing, every element must define thematerial ID or number of DOF per node or the total numberof DOFs per element etc.

123

Page 11: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

In listing 2, an allocatable polymorphic variable of the baseelement types is defined. In order to define many elements,an array of the allocatable polymorphic variables is definedin the same listing. Therefore, the variable all_elementshas all the defined elements in the PERMIX program. Everyelement of the array all_elements will define an ele-ment and after proper initial setup can provide informa-tion on that element or can be asked to perform a specifictask. For example one can blindly access the number ofthe nodes for element type 3 by all_elements(3)%OBJ%nnode.

An example for the type extension of the base type isprovided in listing 3. As can be seen, an extended type canoverride the base procedures and add new properties to theextended type.

3.2 Base classes

As explained in the previous section, the versatile extensi-bility of PERMIX is guaranteed via the base classes. Almostany type of multiscale method can be implemented usingthe existing base classes. Moreover, new numerical meth-ods such as meshfree methods, boundary conditions, ele-ment types etc. can be added using the base classes. The baseclasses are Fortran abstract derived data types which providea generic means to implementation paradigm for new numer-

ical methods. In the sequel, we will explain the base classesand their area of usefulness.

Part: Parts are objects by which PERMIX defines itscomputational models. For example two finite elementparts and an atomistic part can be defined in a multiscalemodel. One can define several parts which can interact. Thepart_fem class contains all the information and meth-ods about one finite element part. This information includesthe mesh data, matrices and vectors, domain decomposi-tion, neighbor searches, sets, among many others. For exam-ple, ty_femmesh class contains a two dimensional integer

array to store the element connectivities and other data aboutan element. A similar array stores the node data such as num-ber of DOFs for a node or the boundary conditions on thatnode. The ty_femmesh style can be further modified and

extended to implement a meshfree or an Isogeometric method[58].

Fix: Fixes are part of the modify class and are the routinesthat are called at different stages of a solution procedure toperform a specific task on certain parts. For example, bound-ary conditions are grouped into fixes and they can be appliedto specific sets of nodes or elements of part_fem objects.Fixes have access to all parts and this method offers greatflexibility which does not require altering the main solutionroutine when adding a new fix.

123

Page 12: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

Solver: The solver base class is the mean for PERMIXto implement its own linear equation solvers or interfaceswith shared and distributed memory solvers. The solver baseaccepts a general two dimensional matrices (in sparse ordense form) and the right hand side and solves the systemof equations. Current interfaces to external solvers are MKL[60], PARDISO [112], MUMPS [8] and PSBLAS solvers.

Interaction: Interaction is a way of coupling two parts.Examples of interaction is coupling the system of equations,multiscale coupling or contact. All concurrent multiscalemethods can be defined as an interaction.

Compute: The variable computation classes are those usedto calculate a certain property of interest. The property canbe of any type i.e. per node, per element, per integrationpoint or for the whole system. For example a “compute” canbe defined to compute the effective stress at the integrationpoints or to compute the homogenized stress of the whole FEpart.

Output: The output base class is in charge of all diskoutputs from PERMIX. The output is capable of extract-ing the information from all parts and sending them to disk.The extended types from output will determine the post-processing tool/software which the output is written for. Theoutput base class is also capable of automatically gatheringthe output of compute classes and write it to disk. The currentoutput styles are Tecplot [16], GMSH [43] and Paraview [3].

Step: The step base class is the mean of adding solutionstrategies to PERMIX. The extended step classes can forexample implement a nonlinear Newton solver with the arc-length method [24,30,42] or an explicit dynamic solver [19].The step classes work closely with the Analysis class whichkeeps the information about the analysis. All the parts canparticipate in a step procedure. The polymorphic step objectsare constructed at the time of solution and will be destructedright after finishing the step.

Material: To define the material constitutive models atthe integration point level, the material base class can beextended. The material class also has the access to the finiteelement mesh and its integration points or in general the dis-cretization data (can be Meshfree methods for example). Thematerial classes can also define a full PERMIX object insidefor the semi-concurrent multiscale methods. For crack prob-lems, the materials can also provide a stability check routinewhich determines the instance of material point failure. Thissimply means one can simulate cracking from simple onescale material models such as the Lemaitre damage [70] lawor from a complex multiscale material model.

Element: To add new finite element types, the elementbase class can be used. The step class determines the elementproperty to compute. For example, the explicit dynamic steproutine, determines that the element stiffness need not becomputed or internal forces calculated. The elements canalso define a stability routine which inserts a crack into an

element based on an arbitrary criterion. The element propertycalculation can be parallelized with OpenMP [31] for sharedmemory systems.

3.3 Input

There are two ways to input parameters into PERMIX. Oneis to write a Fortran main file and compile PERMIX asa library and call the different routines of PERMIX fromthe main file. This way, the objects can be filled from thesemi-script type of input and can be very general. The sec-ond way of input into PERMIX is through the input classwhich offers reading the input data from a text file as manyother commercial/open-source finite element packages do.The text input was designed to be very intuitive. The PER-MIX input commands start with *COMMAND and end by*END_COMMAND. Inside this block all other properties ofthe object are defined. The input class will recognize thecommand and will call the input reader of the correspondingclass. Therefore, each class has its own input reader.

3.4 Two and three dimensional extended finite elements

The enriched elements and nodes demand information whichis particular to the XFEM itself. For example, an enriched ele-ment should know the level set values of the crack surface,crack tip information, triangulation points and connectivities,among others. Since these data are not similar to the ordinaryfinite element data, we created an additional array of poly-morphic variables that might contain more information aboutthe elements. The additional information are only activatedwhen needed depending on the type of element. This addi-tional information can be also used for other purposes otherthan XFEM.

For elements containing cracks, a routine is called to cre-ate the extra information i.e. create enriched elements. Inthis routine the enrichment rules for the nodes and integra-tion points are determined. We triangulate the elements cutby the crack and map the integration points accordingly. Thetriangulation in 2D and tetrahedralization in 3D is done withtwo external open-source libraries TETGEN [120] and TRI-ANGLE [117]. Along with triangulation, there are severalcomputational geometry tasks which are essential to XFEM.Therefore, we also imported the open-source computationalgeometry library GEOMPACK [11] in Fortran 90 to PER-MIX.

Since the cracks in XFEM are embedded inside the ele-ment, one cannot directly visualize the cracks explicitlywith the existing post-processing tools. To visualize thecrack surface, we create two sets of triangles, above andbelow the crack surface. The location of the triangles areupdated with the elements as they deform. Using this method,the enriched elements can be visualized, complying with

123

Page 13: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

existing post-processing tools created for ordinary finiteelements.

3.5 Crack propagation

When defined in the input model, the crack propagationfix handles the nucleation and propagation of cracks in themodel. Please note that the cracks defined in the initial con-ditions cannot propagate unless the crack propagation classis active. The general algorithm for crack propagation is asfollows. At every load or time step PERMIX searches for thefailed elements with a crack path inside the element. This isaccomplished via an element routine that can handle cracknucleation and propagation, see Sect. 2.2 for details. Insidethe element routine, the cracking criteria are checked at inte-gration points and a crack path is derived from the failedintegration points. These routines are specific to the materialmodels. For example, for a linear elastic material, the max-imum principle stress or strain can be defined as a measureof failure of the point.

For multiscale materials, the failure of the point can becomputed based on some measure computed by the homog-enization rules. The multiscale material can define a separatecompute object which quantifies the measure of instability.After checking the stability of the point, the crack tip will bepropagated to the failed point or a crack will be initiated inthe element by means of level sets. During the propagationprocess, the element types will be changed from uncrackedto cracked XFEM types and the history variables will be pro-jected to the new points, if needed.

3.6 Atomistic part

For the atomistic part (part_atom) a code named WARP[103] is adopted. The WARP is a parallel molecular dynam-ics simulation package and the antecedent of the LAMMPSMD simulator [102] for modeling stress and strain in mate-rials using the Lennard-Jones (LJ), embedded atom method(EAM) and modified EAM (MEAM) potentials. It is imple-mented in Fortran 90 and uses MPI to perform message-passing. WARP already has efficient force computation algo-rithms and neighbor search essential in three dimensionalsimulations. The WARP code was modified and merged intoPERMIX. Note that the potentials in WARP had to be mod-ified to account for weighting of the atoms in the BDM.

4 Interface generation

One key issue in the design of a multiscale software is theinterface generation among different components of the soft-ware that can also be external libraries. In order of efficiency,interfaces can be through files, conversion of data structures

in memory, or direct data access between components. Inter-face generation through files can be used where there islimited information about the data structure of the externallibrary or no wrapping code can be generated to exchangedata in memory. This is often the case when using commer-cial products.

The conversion of data will be necessary when the datastructure of the external library is complex or written in adifferent language or style that cannot be directly modified.When this occurs, another solution can be the implementationof the data modifier routine in the external library as a pluginto avoid data conversion. The third and the most efficientmethod is to create a wrapper code around the external libraryand call the routines or use the objects via the wrapper. For Cor C++ tools such as SWIG [15] provide automatic creation ofthe wrapper code. Babel [36] is another interesting languageinteroperability tool which is especially designed to be high-performance.

In PERMIX we use all three methods to connect to dif-ferent libraries. And since in PERMIX we often use For-tran/C/C++ external packages and libraries, we use theISO_C_BINDING module of Fortran 2003 as a versatileway to interface with C or C++ libraries. If the external libraryis written in C or C++ with objects saved in an straightfor-ward fashion, the direct data access approach can be usedwith Fortran pointers mapped to the C pointers. PERMIXcurrently interfaces with several external libraries such asLAMMPS, GMSH, Abaqus among others.

4.1 Interface to LAMMPS

The (part_atom) provides a practical and standalone sim-ulation tool for metallic systems which enables simulationof molecular systems in PERMIX in a simplified manner.However, WARP is not updated any more and it is limitedto three potentials only. Thus, we decided to use LAMMPSas one of the most powerful open-source atomistic simula-tion software. The connection between LAMMPS and PER-MIX is established through a Fortran2003 interface exploit-ing the ISO_C_BINDING module of the Fortran 2003standard.

LAMMPS, is written in C++ but is very portable since ituses the basic pointers to store vector data. These pointers aresimilar to the Fortran vectors and matrices. For each class inLAMMPS, we created a Fortran 2003 derived data type andfor each variable in classes of LAMMPS, we defined For-tran pointers. At the beginning of the simulation, we map theFortran pointers to the C++ pointers. This method allows theaccess to everypublic property of the classes of LAMMPSvia Fortran pointers. The handle to the main LAMMPSpointer or other LAMMPS subclasses is saved with a C_PTRtype. Therefore, we can define many LAMMPS parts in aconcurrent simulation (since we have direct access to the

123

Page 14: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

Fig. 5 The multiscale flowchart for coupling PERMIX to ABAQUS

variables) or a semi-concurrent simulation inside a mater-ial class of PERMIX for example. Currently, the former isused to implement the bridging domain method and the lat-ter is used to create a material model with the Cauchy-Bornassumption [129].

5 Multiscale methods in practice

In this section we discuss the implementation details ofsemi-concurrent and concurrent multiscale methods imple-mented and used in the PERMIX platform. The featuresexplained in this section will shed light on future exten-sions of such methods using other tools. Concurrent cou-pling of PERMIX to commercial software is problematicbecause the commercial products give limited access to theirglobal data structure. The user subroutines in commercial

software provide only limited ways of implementing newmaterials or elements or boundary conditions. As a results,PERMIX currently supports only semi-concurrent couplingto two commercial FE packages: ABAQUS and LSDYNAwhich are explained subsequently. For concurrent coupling,several FE parts of PERMIX can be coupled to other FEparts from PERMIX or to the LAMMPS or the Atomisticpart.

5.1 Hierarchical style

In PERMIX, the hierarchical multiscale methods are usedto extract the elastic properties of the material from a lowerscale. In general, the elasticity tensor has 81 componentswhich 21 of them are independent. It means that for thegeneral anisotropy case, one needs at least 21 independentequations to calculate 21 components of the elasticity ten-

123

Page 15: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

sor. In the case of displacement boundary conditions andusing six strain control tests, 81 equations are generated. Forthe isotropic RVE, the elasticity tensor has two independentparameters. Linear material properties in PERMIX are thencharacterized by solving a forward homogenization prob-lem. PERMIX has a special step routine to do the task ofhierarchical multiscale material property calculation. Thisroutine calls the first order homogenization compute forboth anisotropic and isotropic cases. In this case, the micro-scale properties are the user-defined (inputs) propertiesand the corresponding macro-scale properties are evaluated(outputs).

5.2 Semi-concurrent style

To use semi-concurrent multiscale methods in PERMIX,three schemes are available: PERMIX-ABAQUS [2] cou-pling, PERMIX-LSDYNA and PERMIX-PERMIX cou-pling. The implementation is carried out in a way thatboth ABAQUS/LSDYNA packages and PERMIX can beused in each of the fine-scale and coarse-scale. PERMIX-LSDYNA and PERMIX-PERMIX coupling is done in thesame manner and therefore not explained. When PER-MIX is the master program (the coarse-scale), an ABAQUSpart (ty_abq_part) is defined. This ABAQUS part con-tains routines to call the ABAQUS software with someexternal commands. With the use of some additional user-subroutines in ABAQUS, the output of ABAQUS is dumpedto the disk in a specific manner readable by PERMIX.The ABAQUS part will then read the results and calls thehomogenization compute to calculate homogenized stress forexample.

Figure 5 illustrates the multiscale flowchart when ABAQ-US is used for fine-scale and PERMIX for coarse-scale. Thisfigure also shows the ABAQUS subroutines which are usedin this multiscale approach. PERMIX calculates the defor-mation gradient for each integration point of the coarse-scaleand passes the deformation gradient to ABAQUS. This defor-mation gradient is used to apply a uniform strain on the RVEboundary, Eq. (1) (Udisp.f). When the PERMIX-PERMIXsemi-concurrent multiscale style is used, a fix is implementedwhich applies different type of boundary conditions to theRVE such as uniform traction or linear displacement (LD)BCs. The advantages of this coupling is that all ABAQUSmaterial models can be used inside the RVE (in the generalcase, user material subroutines can be employed for the fine-scale material model). After solving the fine-scale model andbased on Eq. (3), a homogenized stress tensor is calculatedand sent back to the coarse model (Homogen.f). This processis carried out for all integration points of the coarse-scalemodel.

There is another semi-concurrent multiscale method inPERMIX for coupling atomistic domains to continuumdomains. In this method the material properties are com-puted from the atomistic system via the Cauchy-Born method[129]. Since all the mentioned semi-concurrent methodsare at the material point level, specific input are suppliedin the material definition. In case of using LAMMPS andthe Cauchy-Born rule, the commands for the fine-scalemodel can also be passed to the material model with the“str_command” of the material model (listing 4). The par-ticular material model will then treat the input commands asintended in its implementation.

Listing 4 A sample input for a multiscale material in semi-concurrentPERMIX-LAMMPS coupling

∗MATERIALname mat01type CB_LAMMPSstr_command dimension 2str_command boundary s s pstr_command units metals t r_command lat t ice hex 2.57740str_command region box block 0.0 4.0str_command create_box 1 boxstr_command create_atoms 1 box

∗END_MATERIAL

5.3 Concurrent style

Since PERMIX has access to all its own vectors and matri-ces, ty_part_atom and ty_part_lammp via the inter-face, the concurrent multiscale coupling is done in a verynatural manner. For the case of PERMIX-LAMMPS cou-pling (the BDM), an input similar to Listing 5 can bedefined.

Listing 5 A sample input to define an interaction for multiscalePERMIX-LAMMPS coupling

∗INTERACTIONstyle bdm_adaptivename the_briding_domain_method2dpart_fem Part−1−1 #refers to the defined FE partpart_lammps atom_domain #refers to the defined LAMMPS part# defines the coordinates of the fine−scale boxactive_atom_region −24.0 77.0 72.0 126.0 −100.0 500.0

∗END_INTERACTION

The input data for the LAMMPS part, however, canbe totally arbitrary because atom groups must be definedfor LAMMPS, to define which atoms time integrationshould be performed on. In the BDM of PERMIX, theatoms outside the fine-scale box do not participate in

123

Page 16: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

Fig. 6 Left initial configuration of the middle sized model. Different colors refer to different element types. Right the x-displacement contour aftersolution. (Color figure online)

Table 1 The elapsed time of building and assembling the stiffnessmatrix for different configurations

Test item Elapsed time (s)

F2003, 1 thread 60.10

F2003, 2 thread 35.04

F2003, 4 threads 23.58

F2003, 8 threads 22.63

F90, 1 threads 63.9

F90, 2 threads 38.2

F90, 4 threads 26.7

F90, 8 threads 24.0

the time integration. Therefore, in the setup routine ofthe ty_bdm_adaptive class, some additional groups aredefined for LAMMPS.

6 Numerical examples

6.1 Efficiency tests

In this section, a middle size problem is solved for linearelasticity to benchmark the efficiency of the element matrixcalculations in PERMIX. The example has 5,373,122 ele-ments and 3,438,048 DOF in three dimensions and a linearelastic material model, see Fig. 6. The elements are mixed

Fig. 7 Three dimensional RVE including randomly oriented and distributed clay particles (red coin shaped objects) and cracks (gray ellipsoids).(Color figure online)

123

Page 17: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

tetrahedral (four nodes, 1 integration point) and brick (eightnode, 8 integration points). Some random point loads wereapplied to the model. The OpenMP parallelization is alsotested and benchmarked.

Fig. 8 The σxx contour of the loaded nanocomposite RVE

Fig. 9 Initial configuration of clay/epoxy nanocomposite RVE

Please note the computation time given here is with PER-MIX compiled with the GCC compiler (version 4.6) whichis an open source set of compilers based on the GNU licence[28]. The simulation was carried out on a numaCC systemwith four Six-Core AMD Opteron CPUs where the CPU fre-quency is 2.8GHz. All CPUs share a memory of 128GBs.

The right hand side of the Fig. 6 illustrates the displace-ment contour after the linear solution. Table 1 shows theresults of the efficiency tests. We show only the time neededfor integration and assembly of the stiffness matrix. The solu-tion time, allocating the matrices and reading input are notreported here as they depend on the OS, solver package andpre-processor. In the table, F90 refers to the same elementcalculation routine which is implemented in a Fortran 90fashion to check efficiency of the the object orientation stylein PERMIX. For 1 thread and the non-optimized version, thetimings have negligible difference. For certain analysis types,explicit dynamics for example, the element calculation canbe further optimized by in-lining the functions called insidethe main loops and also limiting the application of the ele-ment. As clear from the table, the scaling from 4 to 8 threadsis not efficient due to the hardware structure of the computer.

6.2 3D modeling of cracks in a nanocomposite

In this section we model a nanocomposite with two differ-ent material types and several XFEM cracks. The model is acontinuum RVE of silicate/epoxy nanocomposites with 2 %clay weight ratio. A random generator was used to createthe coordinates of the particle corners. A condition for non-overlapping and non-intersecting particles was enforced. Fig-ure 7 shows the initial configuration of the RVE in threedimensions. In the same model, 10 penny shape cracks areinitiated in the RVE. In Fig. 7 the cracks are shown in graywithout thickness and the disc shape clays are shown in red.

Fig. 10 The Von Mises stress and Von Mises equivalent strain contours of the RVE

123

Page 18: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

Fig. 11 F E2 multiscaleanalysis of simple tension testfor clay nanocomposites

Fig. 12 εxx contour at thecoarse scale and the equivalentVon Mises strain contour at thefine scale for the F E2 example

The model in Fig. 7 has 303,470 tetrahedral elements and54,049 nodes. Both materials are assumed to be linear elasticwhere the epoxy matrix has Young’s modulus of 1.96 GPaand a Poisson’s ratio of 0.3. The clay has a much higherstiffness with Young’s modulus of 200.0 GPa and a Poisson’sratio of 0.2. The top face of the RVE is loaded with a pressureload with value of −0.1 and the bottom face is fully fixed.Figure 8 shows the stress in the X direction in several cross-sections. The crack openings are also visible from the samefigure.

6.3 Hierarchical multiscale modeling

In this case study, a hierarchical multiscale scheme is used topredict the elastic modulus of a clay/epoxy nanocomposite.

Figure 9 shows the initial geometry of epoxy/clay nanocom-posite.

The nanocomposite RVE is a 2 %wt clay/epoxy nanocom-posite. The clay particles are approximated with a rectangulargeometry of l = 100 nm length and a t = 1 nm thickness.The RVE size is 1500×1500 nm2. Since the bulk compositeis isotropic, the RVE size with respect to the clay size shouldbe selected large enough that the RVE will also be isotropic.

Linear elastic material model is used for both clays andepoxy matrix. The Young’s modulus, E , and Poisson’s ratio,ν, for the clays is 196 GPa and 0.25 respectively. For thematrix the corresponding elastic values are E = 1.96 GPa,and the Poisson’s ratio, ν = 0.35. The RVE is discretizedwith four node quadrilateral plain stress elements. The LDboundary condition was used to apply an average strain of

123

Page 19: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

Fig. 13 Initial configuration of the coupled FE-XFEM example withthe weighting function values

0.016 to the RVE in horizontal direction. This kind of bound-ary condition satisfy Hill’s energy criterion and easy to imple-ment.

Figure 10 shows the Von Mises stress and Von Misesequivalent strain contours of the RVE. A homogenizationroutine calculates the homogenized stress and strain tensorsand then, the effective properties of clay/epoxy nanocom-posite can be calculated. The predicted elastic modulus andPoisson’s ratio for the clay/epoxy nanocomposite is E =2.1725 GPa and ν = 0.343 that means an approximate 10 %of improvement in the elastic modulus of nanocomposite byusing only 2 % clay.

6.4 Semi-concurrent FE-FE coupling

In this section, a semi-concurrent multiscale method, (seeSect. 2.1.1), is applied to the clay/epoxy nanocomposite

using PERMIX-PERMIX coupling. Figure 11 illustrates theschematic view of the coarse and fine scale models.

The fine scale geometry and materials are the same as theprevious example in Sect. 6.3. For the coarse-scale model, adog-bone sample was considered, see Fig. 11. The geometryand dimension of the dog-bone sample was selected accord-ing to ASTM D 638-08 type V. The numerical experiment isdisplacement control and due to symmetry, only a quarter ofthe specimen was modeled. The material parameters of thecoarse scale model are computed from the fine scale modelwhere the stress are homogenized at each integration point.

A LD was applied to right edge of the dog-bone sam-ple to produce a constant strain of 0.11 in the gage section.Figure 12 shows the strain contour in the x direction at thecoarse scale. The same figure shows the equivalent Von Misesstrain contour plot at the fine scale for an arbitrary selectedintegration point.

6.5 Concurrent FE-XFEM coupling

In this example we concurrently couple an FE mesh and anXFEM model using the Arlequin method in explicit dynam-ics in three dimensions. The example is a plate with aninclined crack at the center. We model the vicinity of the crackwith a very ‘fine’ mesh and the area far from the crack with a‘coarse’ mesh. The dimensions of the plate are 100×100×20and the length of the crack is 15. Two finite element parts arecreated with the same dimensions and different mesh sizes.We then use the fine mesh part to compute a reference solutionand compare it to the coupled one. Both parts are discretizedwith eight node brick elements. Figure 13 shows the initialmesh and the weighting parameters (Eq. 21). As can be seenfrom the figure, the fine mesh is placed in the middle of theplate specimen and the coupling is activated via the Arlequininteraction style in PERMIX.

Fig. 14 The Y displacement at the time 564.0 s, left reference solution (fine mesh) right the coupled model

123

Page 20: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

Fig. 15 The Y displacement versus time for a point (60,60,10) at thecoupled and the reference solution

The top of the plate at the coarse-scale is loaded witha pressure load at the top and the value of the pressure is−0.25. Both the coarse and fine-scale have the same materialproperties with E = 26.0, ν = 0.3 and density, ρ = 1.0. Thetime step, �t , is 0.05. Stress waves travel from the coarse-scale to the coupling region and to the fine-scale and pass onto the coarse- scale again. Figure 14 shows the result of thesimulation. On the right hand side the displacement in theY direction is shown for both scales. The left hand side ofFig. 14 shows the reference solution and the Y displacementcontours. We do not observe any artificial wave reflection.

Figure 15 shows the Y displacement at a point locatedat (60,60,10) for the two domains i.e. the reference solutionand the coupled one. As is shown in the figure, the discrep-ancy in the Y displacements versus time is small and due tothe displacement approximation in the fine-scale region ofsignificantly higher resolution.

6.6 MD-XFEM coupling

Consider a two dimensional single crystal with dimensionsof 200×1, 00 units. In this example a straight crack of length55 units is assumed present in the domain. The continuummodel consists of 253 quadrilateral elements and 576 DOF.The element size is constant over the domain, about 11 units.An atomistic domain of almost the same size is placed on topof the finite element part. Figure 16 shows a schematic con-figuration of the system. The LAMMPS part is used to modelthe atomistic system. Since part of the crack falls within theatomistic domain, the crack must be modeled in the atomisticregion as well as in the continuum region. We do not followthe generally adopted method of removing rows of atomsalong the crack, as this is somewhat arbitrary and introducesextra parameters in the formulation. Instead, we modify theneighbor list of the atoms to prevent force transmission acrossthe crack faces. This method will produce a crack which isconsistent with a sharp XFEM crack. A second atomistic partis also defined in the same model which has the same con-figuration without coupling to any finite element mesh. Thisallows us to directly compare the full atomistic simulation tothe coupled one.

Fig. 16 Initial configuration ofthe coupled model and the fullatomistic counter part

123

Page 21: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

The atomistic domain is a two dimensional lattice froma hexagonal (HEX) crystal lattice with lattice constant0.91, L J units extended in the [1 0 0] crystal direction.For style L J , all quantities are without units and LAMMPSsets the fundamental quantities mass, sigma, epsilon, andthe Boltzmann constant = 1. Atomic interactions are mod-eled by the Lennard-Jones potential with parameters σ =1.0 L J units, ε = 1.0, and a cut-off radius of 2.5; themass of all atoms is taken as 1.0. Before the actual cou-pled simulation starts, we minimized the potential energy inthe pure atomistic part to equilibrate the system. We usedthe conjugate gradient (CG) algorithm [104] for the energyminimization.

The coupling of the continuum and atomistic parts isperformed within a cubic box of dimensions 65 × 110 ×0 L Junits2. The elements which are cut by this box are thebridging elements and the atoms which are located insidebridging elements are the bridging atoms. Consequently, thecoupling region is one element wide. The driving force forthe system is introduced through a velocity boundary condi-tion on the top and bottom faces of the continuum region. Avelocity of 0.02 and −0.02 is set on all the nodes belongingto the top and bottom boundary of the continuum domainat each time step respectively. The time step is 0.003. Themagnitude of the time step is chosen according to the stabil-ity criterion in the pure atomistic domain. Figure 16 showsthe initial configuration of the body and the weighting of theatoms and nodes.

Figure 17 shows the stress contours at four different timesteps. The atomistic stress computed here is the Virial stresstensor. The symmetric Virial stress tensor is computed foreach atom and for pair potentials such as the one used hereis defined in [109] and [127]:

σ Vi j = 1

V

α

⎣1

2

N∑

β=1

(Rβ

i − Rαi

)Fαβ

j − mαvαi vα

j

⎦ (38)

where (i, j) range over the spatial directions, x, y, z. β ∈[1, . . . , N ] ranges over the N neighbors of atom α, Rα

i is the

coordinate of atom α in the i direction, Fαβj is the force on

atom α from atom β along the j direction, V is the totalvolume, mα is the mass of atom α and vα is the veloc-ity of atom α. In Fig. 17a, b a stress concentration is visi-ble, that is initially confined at the crack front; subsequentlywhen propagation occurs, stress waves are emitted from thecrack tip. As is clear from Fig. 17 the coupled model canaccurately predict the crack propagation behavior with muchfewer DOF.

Remark With the current implementation strategy in PER-MIX and for concurrent multiscale methods, adaptivity canbe applied with minimum effort. This is because, the datastructure of different components (FE parts or atomistic

Fig. 17 Atomistic σxy contour around the crack for coupled and fullatomistic parts at 48 ps (top), 90 ps (middle) and 127.5 ps (bottom)

parts) are separately stored and the storage strategy withineach component is efficient and straight forward. For thecase of MD-XFEM coupling, the atomistic region can bearbitrarily displaced, refined or coarse grained according tosome measure of error. For example, in crystalline materi-

123

Page 22: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

als the centro-symmetry measure [62] can be used to detectif dislocations or cracks are close to the handshake regionand therefore the continuum region is refined down to theatomistic region. The detection of the bridging elements,nodes and atoms currently is implemented for arbitrary FEmeshes.

7 Conclusion

Multiscale modeling and multiscale modeling of cracks inparticular, are not only difficult in theory but also theydemand a huge effort on the implementation. In fact, manyof the theoretical methods are hindered by implementationaspects and challenges. Therefore in this manuscript we pre-sented an open source tool that is based on the Fortran 2003standard. The software tool allows for multiscale modelingof cracks via several multiscale methods. The generality ofthe design allows several different physical systems to co-exist in the same simulation. We also explained the over-all object oriented design of the code which is clearly anovel usage of the Fortran language for the task. We alsoshowed how efficient software interfaces can be generatedfor coupling various software solutions written in differentprogramming languages. The efficiency and the applicabilityof the software tool was shown for several multiscale fractureexamples, including hierarchical, semi-concurrent and con-current multiscale methods. The software can be used alsofor atomistic-continuum coupling with either concurrent orsemi-concurrent methods which was shown in the last exam-ple. We hope that this tool can remove the limits of the compu-tational methods with the implementation issues and providethe community with reusable and extendible software.

Acknowledgments The authors thank the support of the GermanResearch Foundation (DFG). Also, the authors gratefully acknowl-edge the help of Dr. Amitava Moitra from Pennsylvania State Uni-versity for providing the WARP code. Stéphane Bordas and Pierre Ker-friden also thank partial funding for their time provided by the EPSRCunder grant EP/G042705/1 Increased Reliability for Industrially Rel-evant Automatic Crack Growth Simulation with the eXtended finiteelement method. The European Research Council Starting Indepen-dent Research Grant (ERC Stg Grant Agreement No. 279578) entitled“RealTCut – Towards real time multiscale simulation of cutting in non-linear materials with applications to surgical simulation and computerguided surgery.”

References

1. Ju JW, Lee HK (2001) A micromechanical damage model foreffective elastoplastic behavior of partially debonded ductilematrix composites. Int J Solids Struct 38:6307–6332

2. Abaqus 6.11 standard user’s manual, DASSAULT SYSTEMES,(2011)

3. Ahrens J, Geveci B, Law C (2005) Paraview: an end-user tool forlarge data visualization. Vis Handb 717:731

4. Akin JE (1999) Object oriented programming via fortran 90. EngComput 16(1):26–48

5. Alder BJ, Wainwright TE (1959) Studies in molecular dynamics.I. general method. J Chem Phys 31:459

6. Cid Alfaro MV, Suiker ASJ, Verhoosel CV, de Borst R (2010)Numerical homogenization of cracking processes in thin fibre-epoxy layers. Eur J Mech 29(2):119–131

7. Allen MP, Tildesley DJ (1989) Comput Simul Liq, vol 18. OxfordUniversity Press, Oxford

8. Amestoy P, Duff I, LExcellent J-Y, Koster J (2001) Mumps: ageneral purpose distributed memory sparse solver. Appl ParallelComput 1947:121–130

9. Aubertin P, Réthoré J, de Borst R (2010) A coupled moleculardynamics and extended finite element method for dynamic crackpropagation. Int J Numer Methods Eng 81(1):72–88

10. Aubertin P, Rthor J, de Borst R (2009) Energy conservationof atomistic/continuum coupling. Int J Numer Methods Eng78(11):1365–1386

11. Aurenhammer F (1991) Voronoi diagramsa survey of a fundamen-tal geometric data structure. ACM Comput Surv 23(3):345–405

12. Badia S, Parks M, Bochev P, Gunzburger M, Lehoucq R (2008) Onatomistic-to-continuum coupling by blending. Multiscale ModelSimul 7(1):381–406

13. Bangerth W, Hartmann R, Kanschat G (2007) General-purposeobject-oriented finite element library. ACM Trans Math Softw33(4):24

14. Bazant ZP (2010) Can multiscale-multiphysics methods predictsoftening damage and structural failure. Int J Multiscale ComputEng 8(1):61–67

15. Beazley DM et al. (1996) Swig: an easy to use tool for integrat-ing scripting languages with c and c++, Proceedings of the 4thUSENIX Tcl/Tk workshop, pp 129–139.

16. Bellevue W (2005) Tecplot user’s manual. Amtec Engineering,Inc., Bellevue

17. Belytschko T, Black T (1999) Elastic crack growth in finiteelements with minimal remeshing. Int J Numer Methods Eng45(5):601–620

18. Belytschko T, Chen H, Xu J, Zi G (2003) Dynamic crack prop-agation based on loss of hyperbolicity and a new discontinuousenrichment. Int J Numer Methods Eng 58(12):1873–1905

19. Belytschko T, Liu WK, Moran B (2000) Nonlinear finite elementsfor continua and structures. Wiley, Chichester

20. Belytschko T, Lu YY, Gu L (1995) Crack propagation by element-free galerkin methods. Eng Fract Mech 51(2):295–315

21. Belytschko T, Loehnert S, Song J-H (2008) Multiscale aggregat-ing discontinuities: a method for circumventing loss of materialstability. Int J Numer Methods Eng 73(6):869–894

22. Belytschko T, Song J-H (2010) Coarse-graining of multiscalecrack propagation. Int J Numer Methods Eng 81(5):537–563

23. Ben RG, Dhia H (2005) The Arlequin method as a flexible engi-neering design tool. Int J Numer Methods Eng 62:1442–1462

24. Bonet J, Wood RD (1997) Nonlinear continuum mechanics forfinite element analysis. Cambridge University Press, New York

25. Bordas S, Nguyen VP, Dunant C, Nguyen-Dang H, Guidoum A(2007) An extended finite element library. Int J Numer MethodsEng 71(6):703–732. doi:10.1002/nme.1966

26. Bordas S, Rabczuk T, Zi G (2008) Three-dimensional crack initi-ation, propagation, branching and junction in non-linear materialsby an extended meshfree method without asymptotic enrichment.Eng Fract Mech 75(5):943–960

27. Bouchard PO, Bay F, Chastel Y (2003) Numerical modelling ofcrack propagation: automatic remeshing and comparison of dif-ferent criteria. Comput Methods Appl Mech Eng 192(35):3887–3908

123

Page 23: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

28. Chivers I, Sleightholme J (2010) Compiler support for the for-tran 2003 and 2008 standards revision 6 ACM SIGPLAN FortranForum. ACM 29:26–34

29. Christman T, Needleman A, Suresh S (1989) An experimentaland numerical study of deformation in metal-ceramic composites.Acta Metall 37(11):3029–3050

30. Crisfield MA (1983) An arc-length method including line searchesand accelerations. Int J Numer Methods Eng 19(9):1269–1289

31. Dagum L, Menon R (1998) Openmp: an industry standard api forshared-memory programming. Computl Sci Eng IEEE 5(1):46–55

32. Dascalu C, Bilbie G, Agiasofitou EK (2008) Damage and sizeeffects in elastic solids: a homogenization approach. Int J SolidsStruct 45(2):409–430

33. Datta DK, Picu RC, Shephard MS (2004) Composite grid atom-istic continuum method: an adaptive approach to bridge contin-uum with atomistic analysis. Int J Multiscale Comput Eng 2:3

34. Decyk VK, Norton CD, Szymanski BK (1997) Expressing object-oriented concepts in fortran 90. ACM SIGPLAN Fortran Forum16:13–18

35. Eckardt S, Könke C (2008) Adaptive damage simulation of con-crete using heterogeneous multiscale models. J Algorithms Com-put Technol 2(2):275–297

36. Epperly TGW, Gary K, Tamar D, Dietmar E, Jim L, Adrian P,Scott K (2012) High-performance language interoperability forscientific computing through babel. Int J High Perform ComputAppl 26(3):260–274

37. Feyel F, Chaboche J-L (2000) F E2 multiscale approach for mod-eling the elastoviscoplastic behavior of long fiber SiC/Ti compos-ite materials. Comput Methods Appl Mech Eng 183:309–330

38. Fish J, Yuan Z (2005) Multiscale enrichment based on partitionof unity. Int J Numer Methods Eng 62(10):1341–1359

39. Fish J, Nuggehally MA, Shephard MS, Picu CR, Badia S, ParksML, Gunzburger M (2007) Concurrent atc coupling based on ablend of the continuum stress and the atomistic force. ComputMethods Appl Mech Eng 196(45–48):4548–4560

40. Fish J, Shek K, Pandheeradi M, Shephard MS (1997) Compu-tational plasticity for composite structures based on mathemati-cal homogenization: theory and practice. Comput Methods ApplMech Eng 148(1–2):53–73

41. Fish J, Qing Y (1999) Computational damage mechanics for com-posite materials based on mathematical homogenization. Int JNumer Methods Eng 45(11):1657–1679

42. Forde BWR, Stiemer SF (1987) Improved arc length orthogonal-ity methods for nonlinear finite element analysis. Comput Struct27(5):625–630

43. Geuzaine C, Remacle JF (2009) Gmsh: a 3-D finite element meshgenerator with built-in pre-and post-processing facilities. Int JNumer Methods Eng 79(11):1309–1331

44. Ghosh S, Lee K, Moorthy S (1996) Two scale analysis of hetero-geneous elastic-plastic materials with asymptotic homogenizationand voronoi cell finite element model. Comput Methods ApplMech Eng 132(1–2):63–116

45. Ghosh S, Lee K, Raghavan P (2001) A multi-level computationalmodel for multi-scale damage analysis in composite and porousmaterials. Int J Solids Struct 38(14):2335–2385

46. Gitman IM, Askes H, Sluys LJ (2007) Representative volume:existence and size determination. Eng Fract Mech 74(16):2518–2534

47. Gitman IM, Askes H, Sluys LJ (2008) Coupled-volume multi-scale modelling of quasi-brittle material. Eur J Mech A 27(3):302–327

48. Gracie R, Belytschko T (2009) Concurrently coupled atomisticand xfem models for dislocations and cracks. Int J Numer MethodsEng 78(3):354–378

49. Gracie R, Belytschko T (2011) An adaptive concurrent multiscalemethod for the dynamic simulation of dislocations. Int J NumerMethods Eng 86(4–5):575–597

50. Guedes J, Kikuchi N (1990) Preprocessing and postprocessingfor materials based on the homogenization method with adap-tive finite element methods. Comput Methods Appl Mech Eng83(2):143–198

51. Guidault PA, Allix O, Champaney L, Navarro JP (2007) Atwo-scale approach with homogenization for the computation ofcracked structures. Comput Struct 85(17–18):1360–1371

52. Hashin Z (1983) Analysis of composite materials. J Appl Mech50(2):481–505

53. Hettich T, Hund A, Ramm E (2008) Modeling of failure in com-posites by x-fem and level sets within a multiscale framework.Comput Methods Appl Mech Eng 197(5):414–424

54. Hill R (1967) The essential structure of constitutive laws for metalcomposites and polycrystals. J Mech Phys Solids 15:79–95

55. Hirschberger CB, Sukumar N, Steinman P (2008) Computationalhomogenization of material layers with micromorphic mesostruc-ture. Philos Mag 88(30–32):3603–3631

56. Hoover WG (2006) Smooth particle applied mechanics: the stateof the art. World Scientific Publishing Co. Inc., Hackensack

57. Horstemeyer MF (2010) Multiscale modeling: a review. In:Leszczynski J, Shukla MK (eds) Practical aspects of computa-tional, chemistry. Springer, Dordrecht, pp 87–135

58. Hughes Thomas JR, Cottrell John A (2005) Isogeometric analysis:cad, finite elements, nurbs, exact geometry and mesh refinement.Comput Methods Appl Mech Eng 194(39):4135–4195

59. Ibrahimbegovi A, Markovi D (2003) Strong coupling methods inmulti-phase and multi-scale modeling of inelastic behavior of het-erogeneous structures. Comput Methods Appl Mech Eng 192(28–30):3089–3107

60. Intel, Math kernel library. http://software.intel.com/en-us/intel-mkl. Accessed 03 Dec 2013

61. Jain JR, Ghosh S (2009) Damage evolution in composites with ahomogenization-based continuum damage mechanics model. IntJ Damage Mech 18(6):533–568

62. Kelchner CL, Plimpton SJ, Hamilton JC (1998) Dislocation nucle-ation and defect structure during surface indentation. Phys Rev B58(17):11085

63. Kohlhoff S, Gumbsch P, FischmeisteR HF (1991) Crack propa-gation A in. b.c.c. crystals studied with a combined finite-elementand atomistic model. Philos Mag A 64:851–878

64. Kouznetsova V. (2002) Computational homogenization for themulti-scale analysis of multi-phase materials, PhD Thesis, Nether-lands Institute for Metals Research, The Netherlands

65. Kouznetsova V, Brekelmans WAM, Baaijens FPT (2001) Anapproach to micro-macro modeling of heterogeneous materials.Comput Mech 27(1):37–48

66. Kouznetsova VG, Geers MGD, Brekelmans WAM (2004) Multi-scale second-order computational homogenization of multi-phasematerials: a nested finite element solution strategy. Comput Meth-ods Appl Mech Eng 193(48):5525–5550

67. Kulkarni MG, Geubelle PH, Matouš K (2009) Multi-scale mod-eling of heterogeneous adhesives: effect of particle decohesion.Mech Mater 41(5):573–583

68. Larsson Fredrik, Runesson Kenneth (2011) On two-scale adaptivefe analysis of micro-heterogeneous media with seamless scale-bridging. Comput Methods Appl Mech Eng 200(37–40):2662–2674

69. Larsson Fredrik, Runesson Kenneth (2010) Variationally consis-tent computational homogenization of transient heat flow. Int JNumer Methos Eng 81(13):1659–1686

70. Lemaitre J, Desmorat R, Sauzay M (2000) Anisotropic damagelaw of evolution. Eur J Mech A 19(2):187–208

123

Page 24: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

71. Lene F, Leguillon D (1982) Homogenized constitutive law fora partially cohesive composite material. Int J Solids Struct18(5):443–458

72. Lim JH, Sohn D, Lee JH, Im S (2010) Variable-node finite ele-ments with smoothed integration techniques and their applicationsfor multiscale mechanics problems. Comput Struct 88(7–8):413–425

73. Liu GR, Liu MB (2003) Smoothed particle hydrodynamics: ameshfree particle method. World Scientific Publishing Co. Inc.,Dordrecht

74. Lloberas-Valls O, Rixen DJ, Simone A, Sluys LJ (2012) Mul-tiscale domain decomposition analysis of quasi-brittle heteroge-neous materials. Int J Numer Methods Eng 89(11):1337–1366

75. Luan BQ, Hyun S, Molinari JF, Bernstein N (2006) Multiscalemodeling of two-dimensional contacts. Phys Rev E 74:046710

76. Markus A (2008) Design patterns and fortran 2003. ACM SIG-PLAN Fortran Forum 27:2–15

77. Massart TJ, Peerlings RHJ, Geers MGD (2007) An enhancedmulti-scale approach for masonry wall computations with local-ization of damage. Int J Numer Methods Eng 69(5):1022–1059

78. Massart TJ, Peerlings RHJ, Geers MGD (2007) Structural damageanalysis of masonry walls using computational homogenization.Int J Damage Mech 16(2):199–226

79. Matou K, Kulkarni MG, Geubelle PH (2008) Multiscale cohesivefailure modeling of heterogeneous adhesives. J Mech Phys Solids56(4):1511–1533

80. Mei Xu TB (2008) Conservation properties of the bridging domainmethod for coupled molecular/continuum dynamics. Int J NumerMethods Eng 76:278–294

81. Menouillard T, Réthoré J, Combescure A, Bung H (2006) Efficientexplicit time stepping for the extended finite element method (x-fem). Int J Numer Methods Eng 68(9):911–939

82. Mesarovic SD, Padbidri J (2005) Minimal kinematic boundaryconditions for simulations of disordered microstructures. PhilosMag A 85(1):65–78

83. Metcalf M, Reid JK, Cohen M (2004) Fortran 95/2003 explained,vol 416. Oxford University Press, NewYork

84. Miehe C, Schrder J, Schotte J (1999) Computational homogeniza-tion analysis in finite plasticity simulation of texture developmentin polycrystalline materials. Comput Methods Appl Mech Eng171(3–4):387–418

85. Miller RE, Tadmor EB (2009) A unified framework and per-formance benchmark of fourteen multiscale atomistic/continuumcoupling methods. Modell Simul Mater Sci Eng 17:053001

86. Moes N, Dolbow J, Belytschko T (1999) A finite element methodfor crack growth without remeshing. Int J Numer Methods Eng46(1):133–150

87. Monteiro E, Yvonnet J, He QC (2008) Computational homog-enization for nonlinear conduction in heterogeneous materialsusing model reduction. Comput Mater Sci 42(4):704–712

88. Nakamura T, Suresh S (1993) Effects of thermal residual stressesand fiber packing on deformation of metal-matrix composites.Acta Metall Mater 41(6):1665–1681

89. Nemat-Nasser S, Hori M (1993) Micromechanics: overall prop-erties of heterogeneous materials. Elsevier, Amsterdam

90. Nguyen VP, Lloberas-Valls O, Stroeven M, Sluys JL (2012) Com-putational homogenization for multiscale crack modeling imple-mentational and computational aspects. Int J Numer Methods Eng89(2):192–226

91. Nguyen VP, Lloberas-Valls O, Stroeven M, Sluys LJ (2010) Onthe existence of representative volumes for softening quasi-brittlematerials—a failure zone averaging scheme. Comput MethodsAppl Mech Eng 199(45–48):3028–3038

92. Nguyen VP, Lloberas-Valls O, Stroeven M, Sluys LJ (2011)Homogenization-based multiscale crack modelling: from micro-

diffusive damage to macro-cracks. Comput Methods Appl MechEng 200(9):1220–1236

93. Nguyen VP, Lloberas-Valls O, Stroeven M, Sluys LJ (2011) Mul-tiscale continuous and discontinuous modeling of heterogeneousmaterials: a review on recent developments. J Multiscale Modell3(4):229–270

94. Nguyen VP, Stroeven M, Sluys LJ (2012) An enhancedcontinuous-discontinuous multiscale method for modeling mode-i cohesive failure in random heterogeneous quasi-brittle materials.Eng Fract Mech 79:78–102

95. Nie JH, Hopkins DA, Chen YT, Hsieh HT (2010) Develop-ment of an object-oriented finite element program with adaptivemesh refinement for multi-physics applications. Adv Eng Softw41(4):569–579

96. Norton CD, Decyk VK, Szymanski BK (1997) High performanceobject-oriented scientific programming in fortran 90. MIT Press,Cambridge

97. Özdemir I, Brekelmans WAM, Geers MGD (2008) Computationalhomogenization for heat conduction in heterogeneous solids. IntJ Numer Methods Eng 73(2):185–204

98. Özdemir I, Brekelmans WAM, Geers MGD (2008) Computationalhomogenization for the thermo-mechanical analysis of heteroge-neous solids. Comput Methods Appl Mech Eng 198(3–4):602–613

99. Parks ML, Lehoucq RB, Plimpton SJ, Silling SA (2008) Imple-menting peridynamics within a molecular dynamics code. Com-put Phys Commun 179(11):777–783

100. Patzák B, Bittnar Z (2001) Design of object oriented finite elementcode. Adv Eng Softw 32(10):759–767

101. Pettermann HE, Suresh S (2000) A comprehensive unit cellmodel: a study of coupled effects in piezoelectric composites.Int J Solids Struct 37(39):5447–5464

102. Plimpton S (1995) Fast parallel algorithms for short-range mole-cular dynamics. J Comput Phys 117(1):1–19

103. Plimpton S (2001) Atomistic stress simulator (warp)104. Press WH (1992) Numerical recipes in fortran: the art of scientific

computing, vol 1. Cambridge University Press, New York105. Qian D, Wagner GJ, Liu WK (2004) A multiscale projection

method for the analysis of carbon nanotubes. Comput MethodsAppl Mech Eng 193(17–20):1603–1632

106. Rabczuk T, Belytschko T (2004) Cracking particles: a simplifiedmeshfree method for arbitrary evolving cracks. Int J Numer Meth-ods Eng 61(13):2316–2343

107. Raghavan P, Ghosh S (2005) A continuum damage mechan-ics model for unidirectional composites undergoing interfacialdebonding. Mech Mater 37(9):955–979

108. Rahman A (1964) Correlations in the motion of atoms in liquidargon. Phys Rev 136(2A):405–411

109. Robert JS (1983) Comments on virial theorems for bounded sys-tems. Am J Phys 51:940–942

110. Rouson DWI, Xia J, Xu X (2010) Object construction anddestruction design patterns in fortran 2003. Procedia Comput Sci1(1):1495–1504

111. Rudd RE, Broughton JQ (2000) Concurrent coupling of lengthscales in solid state systems. Phys Status Solid B 217(1):251–291

112. Schenk O, Gärtner K, Fichtner W, Fichtner A (2001) Pardiso:a high-performance serial and parallel sparse linear solver insemiconductor device simulation. Future Gener Comput Syst18(1):69–78

113. Schröder J, Keip M (2010) A framework for the two-scale homog-enization of electro-mechanically coupled boundary value prob-lems. Comput Methods Mech 1:311–329

114. Shao-Qiang TANG, Liu Wing K, Karpov Eduard G, Hou ThomasY (2007) Bridging atomistic/continuum scales in solids with mov-ing dislocations. Chin Phys Lett 24(1):161

123

Page 25: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

Comput Mech

115. Shenoy VB, Miller R, Tadmor EB, Phillips R, Ortiz M (1998)Quasicontinuum models of interfacial structure and deformation.Phys Rev Lett 80:742–745

116. Shephard MS, Nuggehally MA, Dale BF, Picu CR, Fish J, Klaas O,Beall MW (2009) Component software for multiscale simulation.In: Fish J (ed) Multiscale methods: bridging the scales in scienceand engineering. Oxford University Press, New York

117. Shewchuk J (1996) Triangle: engineering a 2D quality mesh gen-erator and delaunay triangulator. Appl Comput Geom 1148:203–222

118. Shilkrot LE, Miller RE, Curtin WA (2002) Coupled atomistic anddiscrete dislocation plasticity. Phys Rev Lett 89:025501

119. Shilkrot LE, Miller Ronald E, Curtin William A (2004) Multiscaleplasticity modeling: coupled atomistics and discrete dislocationmechanics. J Mech Phys Solids 52(4):755–787

120. Si H (2007) Tetgen: a quality tetrahedral mesh generator andthree-dimensional delaunay triangulator, research group: numeri-cal mathematics and scientific computing, Weierstrass Institute forApplied Analysis and Stochastics. http://wias-berlin.de/software/tetgen/. Accessed 03 Dec 2013

121. Silling SA (2000) Reformulation of elasticity theory for dis-continuities and long-range forces. J Mech Phys Solids 48(1):175–209

122. Silling SA, Epton M, Weckner O, Xu J, Askari E (2007)Peridynamic states and constitutive modeling. J Elast 88(2):151–184

123. Smit RJM, Brekelmans WAM, Meijer HEH (1998) Prediction ofthe mechanical behavior of nonlinear heterogeneous systems bymulti-level finite element modeling. Comput Methods Appl MechEng 155(1–2):181–192

124. Souza FV, Allen DH (2010) Multiscale modeling of impact on het-erogeneous viscoelastic solids containing evolving microcracks.Int J Numer Methods Eng 82(4):464–504

125. Souza FV, Allen DH (2011) Modeling the transition of micro-cracks into macrocracks in heterogeneous viscoelastic mediausing a two-way coupled multiscale model. Int J Solids Struct 48(22–23):3160–3175

126. Strouboulis T, Copps K, Babuška I (2000) The generalized finiteelement method: an example of its implementation and illus-tration of its performance. Int J Numer Methods Eng 47(8):1401–1417

127. Subramaniyan AK, Sun CT (2008) Continuum interpretationof virial stress in molecular simulations. Int J Solids Struct 45(14–15):4340–4346

128. Swope WC, Andersen HC, Berens PH, Wilson KR (1982) A com-puter simulation method for the calculation of equilibrium

constants for the formation of physical clusters of molecules:application to small water clusters. J Chem Phys 76:637

129. Tadmor EB, Ortiz M, Phillips R (1996) Quasicontinuum analysisof defects in solids. Philos Mag A 73(6):1529–1563

130. Talebi H, Samaniego C, Samaniego E, Rabczuk T (2012)On the numerical stability and mass-lumping schemes forexplicit enriched meshfree methods. Int J Numer Methods Eng89(8):1009–1027

131. Talebi H, Gi Z, Silani M, Samaniego E, Rabczuk T (2012) Asimple circular cell method for multilevel finite element analysis,J Appl Math 2012:526846. doi:10.1155/2012/526846

132. Temizer Ä, Wriggers P (2011) An adaptive multiscale resolutionstrategy for the finite deformation analysis of microheterogeneousstructures. Comput Methods Appl Mech Eng 200(37–40):2639–2661

133. van der Sluis O, Schreurs PJG, Brekelmans WAM, MeijerHEH (2000) Overall behaviour of heterogeneous elastoviscoplas-tic materials: effect of microstructural modelling. Mech Mater32(8):449–462

134. Verhoosel CV, Remmers JJC, Gutirrez MA, de Borst R (2010)Computational homogenization for adhesive and cohesive fail-ure in quasi-brittle solids. Int J Numer Meth Eng 83(8–9):1155–1179

135. Wagner GJ, Liu WK (2003) Coupling of atomistic and continuumsimulations. J Comput Phys 190(1):249–274

136. Wells GN, Sluys LJ (2001) A new method for modelling cohe-sive cracks using finite elements. Int J Numer Methods Eng50(12):2667–2682

137. Xiao SP, Belytschko T (2003) Coupling methods for continuummodel with molecular model. Int J Multiscale Comput Eng 1:115–126

138. Xiao SP, Belytschko T (2004) A bridging domain method forcoupling continua with molecular dynamics. Comput MethodsAppl Mech Eng 193(17–20):1645–1669

139. Xu X-P, Needleman A (1994) Numerical simulations of fast crackgrowth in brittle solids. J Mech Phys Solids 42:1397–1434

140. Yuan Z, Fish J (2008) Toward realization of computationalhomogenization in practice. Int J Numer Methods Eng 73(3):361–380

141. Zi G, Rabczuk T, Wall W (2007) Extended meshfree methodswithout the branch enrichment for the cohesive crack model. Com-put Mech 40(2):367–382

123

Page 26: A computational library for multiscale modeling of material failuredownload.xuebalib.com/3ftwLZFmdhec.pdf · A computational library for multiscale modeling of material failure ...

本文献由“学霸图书馆-文献云下载”收集自网络,仅供学习交流使用。

学霸图书馆(www.xuebalib.com)是一个“整合众多图书馆数据库资源,

提供一站式文献检索和下载服务”的24 小时在线不限IP

图书馆。

图书馆致力于便利、促进学习与科研,提供最强文献下载服务。

图书馆导航:

图书馆首页 文献云下载 图书馆入口 外文数据库大全 疑难文献辅助工具


Recommended