Perform Nanoindentation on Al-Mg Alloy: Difference between revisions

From Micro and Nano Mechanics Group
Jump to navigation Jump to search
Line 95: Line 95:
on each atom where K is the indenter stiffness constant, r is the distance from the atom to the center of the indenter, and R is the radius of the indenter. The force is repulsive and F(r)=0 for r>R.
on each atom where K is the indenter stiffness constant, r is the distance from the atom to the center of the indenter, and R is the radius of the indenter. The force is repulsive and F(r)=0 for r>R.


We have tested the K value ranging from 0.1 to 1000. However, with this force magnitude, the indenter is not an elastic sphere. The effective elastic modulus of the indenter is shown in Fig.4. We can see that the K value does not have significant influence on the effective modulus of the indenter. In our simulation, we use K = 1.0eV/Å for all the simulation.
We have tested the K value ranging from 1 to 1000. Note that with this force field function, the indenter is not an elastic sphere. The effective elastic modulus of the indenter is shown in Fig.4. We can see that the K value does not have significant influence on the effective modulus of the indenter. In our simulation, we choose K = 1.0eV/Å for all the simulation.


[[Image:Indenter_K_Modulus.png | frame | center | Fig.4 The Effective Modulus of the Indenter in Terms of the Indent Depth.]]
[[Image:Indenter_K_Modulus.png | frame | center | Fig.4 The Effective Modulus of the Indenter in Terms of the Indent Depth.]]

Revision as of 06:47, 18 May 2017

Perform Nanoindentation on an Aluminum-Magnesium Alloy

Yifan Wang

Created May 2017


This tutorial explains how to create an FCC sample of Al-Mg alloy and perform nanoindentation on the sample in LAMMPS.


Prerequisite

For this simulation, we will use the LAMMPS 5 Nov 2016 version. The newer version may have changes of the commands. When compiling LAMMPS, please switch on the package MANYBODY in order to use the EAM potential. More details about compiling LAMMPS, please see the manual page (http://lammps.sandia.gov/doc/Section_start.html) for more information.

Prepare The Sample of Al-Mg Alloy

In this note, we will use the following geometric parameters as an example, to show how to perform nanoindentation MD simulation in LAMMPS:

Weight percentage: 0.6% (~0.67% atomic percentage)
Simulation Box: 32.4x32.4x32.4nm (free surface on z-direction, pbc on x- and y-directions)
Indenter radius: 16.2nm

Thermodynamics

According to the phase diagram of Al-Mg alloy (Fig.1), the solubility of Mg in Al is smaller than 1% at room temperature. For our case, since the atomic concentration is 0.67%, we can generate the sample by first creating pure FCC Al metal, and then randomly exchange required Al atoms to Mg.

Fig.1 Phase Diagram of Aluminum-Magnesium (Murray, 1982)
Fig.2 Size Factors of Al-Mg solid solution (Cai&Nix, 2016)

However, the size factor of Mg as the solute in Al is not negligible (Fig.2). We have to consider the volume change of the sample by adding Mg into pure Al. There are two ways to account for the size effect:

  1. Relax the sample under zero pressure after we generate the Al-Mg alloy.
  2. Estimate the volume change theoretically from the size factor.

Although the first method is more correct in the physical sense, the relaxation process will create surface steps on the free surface which will interfere the nanoindentation process. Here we estimate the volume change by correcting the lattice constant:

.

For now, we use the linear size factor from King's table. For a more accurate value, a constant pressure relaxation can be performed to determine the size factor.

Generate the Sample of Al-Mg Alloy

First we generate the simulation box of 32.4x32.4x32.4nm. We set up the simulation based on the lattice so that the entire simulation box is filled with atoms. First we define the lattice in LAMMPS ( indentation surface (001) ):

lattice         fcc 4.053 orient x 1 0 0 orient y 0 1 0 orient z 0 0 1
region          BOX block -40.0 40.0 -40.0 40.0 -80.0 0.0 units lattice

Here the lattice constant 4.053 is the size after we consider the size effect, and 80 lattice distance is around 32.4nm. Note that if we change the indentation surface to other FCC planes ((110), (111), etc.), we should change the orientation in lattice definition, for example we take (110) plane as the indentation surface.

lattice         fcc 4.053 orient x 0.707 0 -0.707 orient y 0 1 0 orient z 0.707 0 0.707
region          BOX block -40.0 40.0 -40.0 40.0 -80.0 0.0 units lattice

Then we create the simulation box and the Al atoms based on the region we defined:

create_box      2 BOX
create_atoms    1 region BOX
set             region BOX type 1

And we randomly change 0.67% atoms to Mg atoms:

set             region BOX type/fraction 2 0.0067 20170517  # random seed

Finally, after we add the Mg atoms, we perform relaxation to the entire sample to make the sample equilibrated. In this simulation, we use the EAM potential from Liu and Adams (1998) (https://www.ctcms.nist.gov/potentials/Download/Al-Mg-LA/almg.liu):

pair_style      eam/alloy
pair_coeff      * * almg.liu.eam.alloy Al Mg
minimize        1e-9 1e-9 10000 10000

We can visualize the sample as shown in Fig.3.

Fig.3 Visualization of the Al-Mg alloy sample. Red: Al atoms; Blue: Mg atoms

Perform MD Simulation of Nanoindentation on The Alloy Sample

Before the actual simulation, we first determine the dynamics of the indenter:

Indenter stiffness constant K: 1.0eV/Å3
Temperature T: 1.0K
Indent rate: 0.81Å/ps = 81m/s
Loading steps: 40000 (0.001ps/step)
Indent depth: 3.24nm

Note: The units are defined by units command in LAMMPS, we use metal units (http://lammps.sandia.gov/doc/99/units.html)

The Force Field for the Indenter

In LAMMPS, a spherical indeter exerts a force of magnitude:

on each atom where K is the indenter stiffness constant, r is the distance from the atom to the center of the indenter, and R is the radius of the indenter. The force is repulsive and F(r)=0 for r>R.

We have tested the K value ranging from 1 to 1000. Note that with this force field function, the indenter is not an elastic sphere. The effective elastic modulus of the indenter is shown in Fig.4. We can see that the K value does not have significant influence on the effective modulus of the indenter. In our simulation, we choose K = 1.0eV/Å for all the simulation.

Fig.4 The Effective Modulus of the Indenter in Terms of the Indent Depth.

Loading and Unloading

First, We define 5 bottom layers as the bottom layer, these atom layers will be fixed to support the entire sample. Otherwise the sample will move downwards during the indentation.

region          fixed_region block INF INF INF INF INF -75.0 units lattice
group           bottom region fixed_region
group           mobile subtract all bottom
fix             bottom bottom setforce 0.0 0.0 0.0
velocity        bottom set 0.0 0.0 0.0


You need first to build the GPU library. Go to your lammps/lib/gpu folder. Copy the generic linux makefile

cd ~/Codes/LAMMPS/lib/gpu
cp Makefile.linux Makefile.sherlock

You have to modify 3 lines in this file. Open it and replace the values of CUDA_HOME, CUDA_ARCH and CUDA_PREC with the following

vi Makefile.sherlock
CUDA_HOME = /share/sw/free/cuda/6.5
CUDA_ARCH = -arch=sm_35
CUDA_PREC = -D_DOUBLE_DOUBLE

Using the GPU for a LAMMPS run

Modify the input script

Request GPUs on Sherlock