forked from lijiext/lammps
65 lines
1.3 KiB
Plaintext
65 lines
1.3 KiB
Plaintext
# 3d Lennard-Jones melt with Python functions added
|
|
|
|
units lj
|
|
atom_style atomic
|
|
|
|
lattice fcc 0.8442
|
|
region box block 0 10 0 10 0 10
|
|
create_box 1 box
|
|
create_atoms 1 box
|
|
mass 1 1.0
|
|
|
|
velocity all create 1.44 87287 loop geom
|
|
|
|
pair_style lj/cut 2.5
|
|
pair_coeff 1 1 1.0 1.0 2.5
|
|
|
|
neighbor 0.3 bin
|
|
neigh_modify delay 0 every 1 check yes
|
|
|
|
fix 1 all nve
|
|
|
|
run 10
|
|
|
|
# 1st Python function
|
|
# example of catching a syntax error
|
|
|
|
python simple here """
|
|
def simple():
|
|
import exceptions
|
|
print "Inside simple function"
|
|
try:
|
|
foo += 1
|
|
except Exception, e:
|
|
print "FOO error:",e
|
|
"""
|
|
|
|
python simple invoke
|
|
|
|
# 2nd Python function
|
|
# example of returning the function value to a python-style variable
|
|
# invoke it twice
|
|
|
|
variable fact python factorial
|
|
python factorial input 1 v_n return v_fact format ii here """
|
|
def factorial(n):
|
|
if n == 1: return 1
|
|
return n*factorial(n-1)
|
|
"""
|
|
|
|
variable n string 10
|
|
python factorial invoke
|
|
print "Factorial of $n = ${fact}"
|
|
|
|
variable n string 20
|
|
python factorial invoke
|
|
print "Factorial of $n = ${fact}"
|
|
|
|
# 3rd Python function
|
|
# example of calling back to LAMMPS and writing a run loop in Python
|
|
|
|
variable cut string 0.0
|
|
|
|
python loop input 4 10 1.0 -4.0 SELF format iffp file funcs.py
|
|
python loop invoke
|