Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F91694518
runtests.sh
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Wed, Nov 13, 13:47
Size
5 KB
Mime Type
text/x-shellscript
Expires
Fri, Nov 15, 13:47 (1 d, 23 h)
Engine
blob
Format
Raw Data
Handle
22264487
Attached To
rLAMMPS lammps
runtests.sh
View Options
#!/bin/sh
MSI2LMP_LIBRARY=../frc_files
VALGRIND='valgrind -v --track-origins=yes --show-reachable=yes --leak-check=full'
MSI2LMP=../src/msi2lmp.exe
LAMMPS=../../../src/lmp_serial
CHECKDATA=./data-compare.pl
if [ ! -x $MSI2LMP ]
then
echo "No executable $MSI2LMP"
exit 1
fi
if [ ! -d $MSI2LMP_LIBRARY ]
then
echo "No directory $MSI2LMP_LIBRARY"
exit 1
fi
if [ ! -x $LAMMPS ]
then
echo "No executable $LAMMPS"
exit 1
fi
verbose=1
counter=0
errors=0
# Class1 tests with cvff
for m in hydrogen water h2-h2o ethane benzene naphthalene cnt-hexagonal crambin nylon phen3_cff97 hap_crystal
do \
before=$errors
vglog=${m}-class1.chk
${VALGRIND} --log-file=${vglog} \
${MSI2LMP} ${m}-class1 -c 1 -p ${verbose} \
|| errors=$(expr $errors + 1)
${LAMMPS} -log none -screen none -in in.${m}-class1 \
|| errors=$(expr $errors + 1)
${CHECKDATA} ${m}-class1.data reference/${m}-class1.data \
|| errors=$(expr $errors + 1)
${CHECKDATA} ${m}-class1.data2 reference/${m}-class1.data2 \
|| errors=$(expr $errors + 1)
[ $before -eq $errors ] && rm ${m}-class1.data ${m}-class1.data2 log.${m}-class1
leak=$(awk '/in use at exit:/ {num=$6;} END {print num;}' $vglog)
[ $leak != 0 ] && echo "Memory still used: $leak" \
&& errors=$(expr $errors + 1)
viol=$(awk '/ERROR SUMMARY/ {num=$4;} END {print num;}' $vglog)
[ $viol != 0 ] && echo "Valgrind errors: $viol" \
&& errors=$(expr $errors + 1)
[ $leak = 0 ] && [ $viol = 0 ] && rm ${vglog}
counter=$(expr $counter + 6)
done
# Class1 tests with clayff
for m in PyAC_bulk
do \
before=$errors
vglog=${m}-clayff.chk
${VALGRIND} --log-file=${vglog} \
${MSI2LMP} ${m}-clayff -c 1 -p ${verbose} -f clayff -n \
|| errors=$(expr $errors + 1)
${LAMMPS} -log none -screen none -in in.${m}-clayff \
|| errors=$(expr $errors + 1)
${CHECKDATA} ${m}-clayff.data reference/${m}-clayff.data \
|| errors=$(expr $errors + 1)
${CHECKDATA} ${m}-clayff.data2 reference/${m}-clayff.data2 \
|| errors=$(expr $errors + 1)
[ $before -eq $errors ] && rm ${m}-clayff.data ${m}-clayff.data2 log.${m}-clayff
leak=$(awk '/in use at exit:/ {num=$6;} END {print num;}' $vglog)
[ $leak != 0 ] && echo "Memory still used: $leak" \
&& errors=$(expr $errors + 1)
viol=$(awk '/ERROR SUMMARY/ {num=$4;} END {print num;}' $vglog)
[ $viol != 0 ] && echo "Valgrind errors: $viol" \
&& errors=$(expr $errors + 1)
[ $leak = 0 ] && [ $viol = 0 ] && rm ${vglog}
counter=$(expr $counter + 6)
done
# OPLS-AA tests
for m in ethane decane
do \
before=$errors
vglog=${m}-oplsaa.chk
${VALGRIND} --log-file=${vglog} \
${MSI2LMP} ${m}-oplsaa -c 0 -p ${verbose} -f oplsaa -n \
|| errors=$(expr $errors + 1)
${LAMMPS} -log none -screen none -in in.${m}-oplsaa \
|| errors=$(expr $errors + 1)
${CHECKDATA} ${m}-oplsaa.data reference/${m}-oplsaa.data \
|| errors=$(expr $errors + 1)
${CHECKDATA} ${m}-oplsaa.data2 reference/${m}-oplsaa.data2 \
|| errors=$(expr $errors + 1)
[ $before -eq $errors ] && rm ${m}-oplsaa.data ${m}-oplsaa.data2 log.${m}-oplsaa
leak=$(awk '/in use at exit:/ {num=$6;} END {print num;}' $vglog)
[ $leak != 0 ] && echo "Memory still used: $leak" \
&& errors=$(expr $errors + 1)
viol=$(awk '/ERROR SUMMARY/ {num=$4;} END {print num;}' $vglog)
[ $viol != 0 ] && echo "Valgrind errors: $viol" \
&& errors=$(expr $errors + 1)
[ $leak = 0 ] && [ $viol = 0 ] && rm ${vglog}
counter=$(expr $counter + 6)
done
# Class2 tests with compass
for m in hydrogen ethane benzene naphthalene cnt-hexagonal
do \
before=$errors
vglog=${m}-class2a.chk
${VALGRIND} --log-file=${vglog} \
${MSI2LMP} ${m}-class2a -c 2 -p ${verbose} -f compass_published \
|| errors=$(expr $errors + 1)
${LAMMPS} -log none -screen none -in in.${m}-class2a \
|| errors=$(expr $errors + 1)
${CHECKDATA} ${m}-class2a.data reference/${m}-class2a.data \
|| errors=$(expr $errors + 1)
${CHECKDATA} ${m}-class2a.data2 reference/${m}-class2a.data2 \
|| errors=$(expr $errors + 1)
[ $before -eq $errors ] && rm ${m}-class2a.data ${m}-class2a.data2 log.${m}-class2a
leak=$(awk '/in use at exit:/ {num=$6;} END {print num;}' $vglog)
[ $leak != 0 ] && echo "Memory still used: $leak" \
&& errors=$(expr $errors + 1)
viol=$(awk '/ERROR SUMMARY/ {num=$4;} END {print num;}' $vglog)
[ $viol != 0 ] && echo "Valgrind errors: $viol" \
&& errors=$(expr $errors + 1)
[ $leak = 0 ] && [ $viol = 0 ] && rm ${vglog}
counter=$(expr $counter + 6)
done
# Class2 tests with pcff
for m in water h2-h2o ethane benzene naphthalene cnt-hexagonal hap_crystal
do \
before=$errors
vglog=${m}-class2b.chk
${VALGRIND} --log-file=${vglog} \
${MSI2LMP} ${m}-class2b -c 2 -p ${verbose} -f pcff \
|| errors=$(expr $errors + 1)
${LAMMPS} -log none -screen none -in in.${m}-class2b \
|| errors=$(expr $errors + 1)
${CHECKDATA} ${m}-class2b.data reference/${m}-class2b.data \
|| errors=$(expr $errors + 1)
${CHECKDATA} ${m}-class2b.data2 reference/${m}-class2b.data2 \
|| errors=$(expr $errors + 1)
[ $before -eq $errors ] && rm ${m}-class2b.data ${m}-class2b.data2 log.${m}-class2b
leak=$(awk '/in use at exit:/ {num=$6;} END {print num;}' $vglog)
[ $leak != 0 ] && echo "Memory still used: $leak" \
&& errors=$(expr $errors + 1)
viol=$(awk '/ERROR SUMMARY/ {num=$4;} END {print num;}' $vglog)
[ $viol != 0 ] && echo "Valgrind errors: $viol" \
&& errors=$(expr $errors + 1)
[ $leak = 0 ] && [ $viol = 0 ] && rm ${vglog}
counter=$(expr $counter + 6)
done
echo "Total error count: $errors / $counter"
echo
echo "Total error count: $errors / $counter"
echo
Event Timeline
Log In to Comment