Hello,
I am using the LAMMPS version 29Oct2020. I have the model of an alloy where there is an equiatomic distribution of Nickel, Chromium and Cobalt (with 50000 atoms), which was created using AtomSK. I tried with periodic boundary conditions and the result of the tensile loading was not right. Therefore, I use shrink-wrapped boundaries now. In my LAMMPS code, I have used the ‘eam/alloy’ potential and I have defined the pair coefficients using the
‘pair_style eam/alloy
pair_coeff * * FeNiCrCoCu-heafixed.setfl Ni Cr Co’. During equilibration, the model shrinks, and even dislocations are seen in the model. This is not right, and I want to know if it is a problem with my code. Could anyone tell me why this happens? I have attached my code here along with the pre-equilibration and in-equilibration screenshots of the model to show how it has shrunk. If you require the data file and the EAM potential file, I will send them. Thank you.
Regards,
Rajesh
############################# INITIALIZATION ###############################
units metal
dimension 3
boundary s s s
atom_style atomic
neighbor 2.0 bin
neigh_modify every 10 delay 0 check yes
############################# ATOM DEFINITION ##############################
read_data CoNi_pillaryz.data
############################# FORCEFIELD ###################################
pair_style eam/alloy
pair_coeff * * FeNiCrCoCu-heafixed.setfl Co Ni Cr
############################# GROUP ATOMS ##################################
region 1 block INF INF 237.76 INF INF INF units box
region 2 block INF INF INF 5.0 INF INF units box
group up region 1
group low region 2
group boundary union up low
group mobile subtract all boundary
##---------------SETTINGS-------------------------------------
timestep 0.001
variable ts equal 0.001
Store final cell length for strain calculations
variable tmp equal “lx”
variable Lx equal {tmp}
variable tmp equal "ly"
variable Ly equal {tmp}
variable tmp equal “lz”
variable Lz equal ${tmp}
#print “Initial x Length, Lx: {Lx}"
#print "Initial y Length, Ly: {Ly}”
#print “Initial z Length, Lz: ${Lz}”
##---------------COMPUTES-------------------------------------
variable Lx equal lx
variable Ly equal ly
variable Lz equal lz
variable Vol equal vol
variable thickn equal 3.4
print “Initial x Length, Lx: {Lx}"
print "Initial y Length, Ly: {Ly}”
print “Initial z Length, Lz: ${Lz}”
variable strain equal “(lx - v_Lx)/v_Lx”
variable strain1 equal “(ly - v_Ly)/v_Ly”
variable strain2 equal “(lz - v_Lz)/v_Lz”
variable lengthx equal “lx”
variable lengthy equal “ly”
variable lengthz equal “lz”
variable sigmaxx equal “-pxx/10000”
variable sigmayy equal “-pyy/10000”
variable sigmazz equal “-pzz/10000”
variable epsxx equal “v_strain”
variable epsyy equal “v_strain1”
variable epszz equal “v_strain2”
Minimization
min_style cg
timestep 0.001
minimize 1.0e-4 1.0e-6 100 1000
run 80000
dump 1 all xyz 2000 dump_initial.xyz
Assign original velocities to atoms
compute new all temp
velocity all create 77.0 487639 temp new
Set up ensemble
fix 7 boundary nve
fix 1 all nvt temp 77.0 77.0 0.1
##---------------RELAXATION--------------------------------------
run 80000
Fix rigid boundary atoms
compute new2 mobile temp
fix 3 boundary setforce 0.0 0.0 0.0
Apply displacement control loading
velocity up set 0.0 0.5 0.0 units box
velocity low set 0.0 -0.5 0.0 units box
velocity mobile ramp vy -0.5 0.5 y 5.0 237.76 sum yes
thermo_style custom step temp press etotal v_epsxx v_epsyy v_epszz v_sigmaxx v_sigmayy v_sigmazz pe ke lx ly vol
thermo_modify flush yes
thermo 1000
dump 2 all atom 2000 tensile_test8.lammpstrj
#fix def1 all print 100 “{epsxx} {epsyy} {epszz} {sigmaxx} {sigmayy} {sigmazz}” file CrCoNiAlloy_100.def1.txt screen no
fix def1 all print 100 “{lengthy}{sigmayy}” file CrCoNiAlloy_pillaryz.def1.txt screen no
restart 20000 *.restart
run 80000