# ------------------------------- Initialization Section --------------------

include         system.in.init

# ------------------------------- Atom Definition Section -------------------

read_data       system.data

# ------------------------------- Settings Section --------------------------

include         system.in.settings

# ------------------------------- Run Section -------------------------------
#
# The run-settings below were stolen from:
# 
# http://icme.hpc.msstate.edu/mediawiki/index.php/Uniaxial_Compression


compute csym all centro/atom fcc
compute peratom all pe/atom 

# EQUILIBRATION
reset_timestep	0
timestep 0.001
velocity all create 300 12345 mom yes rot no
fix 1 all npt temp 300 300 1 iso 0 0 1 drag 1 

# Set thermo output
thermo 1000
thermo_style custom step lx ly lz press pxx pyy pzz pe temp

# Run for at least 10 picosecond (assuming 1 fs timestep)
run 20000
unfix 1

# Store final cell length for strain calculations
variable tmp equal "lx"
variable L0 equal ${tmp}
print "Initial Length, L0: ${L0}"

######################################
# DEFORMATION
reset_timestep	0

fix             1 all npt temp 300 300 1 y 0 0 1 z 0 0 1 drag 1
variable srate equal 1.0e10
variable srate1 equal "-v_srate / 1.0e12"
fix             2 all deform 1 x erate ${srate1} units box remap x

# Output strain and stress info to file
# for units metal, pressure is in [bars] = 100 [kPa] = 1/10000 [GPa]
# p2, p3, p4 are in GPa
variable strain equal "(lx - v_L0)/v_L0"
variable p1 equal "v_strain"
variable p2 equal "-pxx/10000"
variable p3 equal "-pyy/10000"
variable p4 equal "-pzz/10000"
fix def1 all print 100 "${p1} ${p2} ${p3} ${p4}" file Al_comp_100.def1.txt screen no

# Use cfg for AtomEye
dump 		dAtomEye all cfg 250 dump.comp_*.cfg id type xs ys zs c_csym c_peratom fx fy fz
dump_modify     dAtomEye element Al

# For users without AtomEye (like me), I decided to create a regular dump file:
dump            dCoords all custom 250 traj.lammpstrj id type x y z ix iy iz

# Display thermo
thermo 	1000
thermo_style	custom step v_strain temp v_p2 v_p3 v_p4 ke pe press

run             20000

######################################
# SIMULATION DONE
print "All done"
