Dear Lammps users,
I am trying to calculate lattice parameters of B19’ NiTi phase. In several papers, lattice parameters of B19’ phase are represented as following;
a=4.622
b=2.885
c=4.120
beta=96.8 deg
Conventional coordinates of B19’ NiTi phase are reported [1] which are
Ti 1:(0, 0, 0)
Ti 2:(0.558, 0.5, 0.055)
Ni 1:(0.472, 0, 0.580)
Ni 2:(0.086, 0.5, 0.475)
[1]Michal, G. M., and R. Sinclair. “The structure of TiNi martensite.” Acta Crystallographica Section B: Structural Crystallography and Crystal Chemistry 37.10 (1981): 1803-1807.
Using above coordinates, I created a lammps code to calculate lattice coordinates of B19’ NiTi phase. However, I am getting results which are far different from reported results. I used a FS potential file which was verified in a paper showing good lattice parameter results.
Is my lattice coordinate wrong? Or, are there something incorrect in my code?
I appreciate any comments from you.
Thank you.
Jeongwoo Lee
---------- Initialize Simulation ---------------------
clear
units metal
dimension 3
boundary p p p
atom_style atomic
atom_modify map array
---------- Create Atoms ---------------------
#Ni
lattice custom 2.88 a1 1.585 0.0 -0.230 a2 0.0 1.0 0.0 a3 0.0 0.0 1.428 &
basis 0.472 0.0 0.580 basis 0.086 0.5 0.475
region supercell block 0 1 0 1 0 1 units lattice
create_box 2 supercell
create_atoms 1 region supercell
#Ti
lattice custom 2.88 a1 1.585 0.0 -0.230 a2 0.0 1.0 0.0 a3 0.0 0.0 1.428 &
basis 0.0 0.0 0.0 basis 0.558 0.5 0.055
create_atoms 2 region supercell
---------- Define Interatomic Potential ---------------------
pair_style eam/fs
pair_coeff * * NiTi_Yuan.setfl_rc4_2.fs Ni Ti
neighbor 2.0 bin
neigh_modify delay 10 check yes
---------- Define Settings ---------------------
compute eng all pe/atom
compute eatoms all reduce sum c_eng
compute dl all pair/local dist
---------- Run Minimization ---------------------
reset_timestep 0
fix 1 all box/relax iso 0.0 vmax 0.001
thermo 10
thermo_style custom step pe lx ly lz press pxx pyy pzz c_eatoms
min_style cg
minimize 1e-25 1e-25 5000 10000
variable natoms equal “count(all)”
variable teng equal “c_eatoms”
variable lengthx equal “lx”
variable lengthy equal “ly”
variable lengthz equal “lz”
variable ecoh equal “v_teng/v_natoms”
print “Total energy (eV) = {teng};"
print "Number of atoms = {natoms};”
print “Lattice constant x (Angstoms) = {lengthx};"
print "Lattice constant y (Angstoms) = {lengthy};”
print “Lattice constant z (Angstoms) = {lengthz};"
print "Cohesive energy (eV) = {ecoh};”
print “%% ecoh = {ecoh};"
print "%% latc_x = {lengthx};”
print “%% latc_y = {lengthy};"
print "%% latc_z = {lengthz};”
print “distance1 = ${zlength};”
print “All done!”