[lammps-users] About stress problem when simulating stretching

Hi everyone,

I am testing uniaxial elongation of a nanowire using fix/deform. The
problem is the stress is different when using different boundary
condition. When I use non-period boundary condition on non-axial
direction, the stress-strain curve does not start at zero, there's
stress even at the first time step. However, when I using period
boundary condition on all directions, the stress seems fine.
I was wondering what I'm doing wrong here.
Any help is appreciated, thanks so much

Regards,

Han

Hello Han,

You’re not doing anything wrong. If you’re analyzing the same structure that gives you zero stress when using pbc’s, then you SHOULD expect that using free or other, non-periodic boundary conditions will result in a non-zero stress. You can achieve a zero stress for your system by performing energy minimization using the bc’s you desire. However, be warned…many researchers have found that for small enough nanowires of most materials, some type of phase transformation may occur upon energy minimization depending on the orientation of the crystal within the wire.

Regards,

Jon Zimmerman

Hi Zimmerman and Cao, thanks for the advice.

In fact I want to simulate uniaxial tension. I only want to set the
pbc in the uniaxial direction(z), keep x y directions free surface. I
am not sure if this is right. However, if I use boundary s s p, the
stress-strain curve does not start at zero, there's stress even at the
first time step. However, when I using period boundary condition on
all directions (p p p), the stress seems fine. I think s s p(or s s s)
is what I want.

The problem I am confused is

1. Which boundary condition should be used if simulating uniaxial
tension of nano wire? s s p?
If I simulate nano rod with limited length, should I use (s s s)? In
this case which is the best way to add stress or strain in LAMMPS?

2. How to perform effective energy minimization in LAMMPS before
simulating? only use minimize command?

Many thanks for any advice.

The following is part of the input script.

# Initialization

dimension 3
units metal
boundary p p p
#boundary s s p
atom_style full

# Atom definition

read_data data.Cu010110

# Settings

pair_style eam/opt
pair_coeff * * Cu_u3.eam

neighbor 3.0 bin
neigh_modify delay 5

# temp controllers

compute new3d all temp

# equilibrate

velocity all create 0.1 5812775 temp new3d

minimize 1.0e-6 1.0e-8 1000 100000

fix 1 all npt 0.1 0.1 100 aniso NULL NULL NULL NULL NULL NULL 1000 drag 2.0
fix 2 all deform 1000 z erate 0.001 x volume y volume remap v

#settings

compute peratom all stress/atom

thermo 100
thermo_modify temp new3d

timestep 0.001

dump 1 all atom 200 dump01.cu010110

# Run a simulation
reset_timestep 0
run 300000

2008/9/17 Zimmerman, Jonathan A <[email protected]>: