#!/bin/bash

set -e

#########################
# Test usage is correct #
#########################

if [ $# -ne 0 ]; then
    echo 1>&2 "Usage: niggli"
    exit 127
fi
for f in *.res
do
   before=`grep CELL $f | awk '{print $3,$4,$5,$6,$7,$8}'`
   cabal res res 0 < $f > $f.niggli && mv $f.niggli $f
   after=`grep CELL $f | awk '{print $3,$4,$5,$6,$7,$8}'`
   diff=`echo $before $after | awk '{printf "%-10f",($1-$7)^2+($2-$8)^2+($3-$9)^2+($4-$10)^2+($5-$11)^2+($6-$12)^2}'`
   if (( $(echo "$diff > 1E-5" |bc -l) )) ; then
       echo "Changing $f ..."
       echo $before "--> "
       echo $after
   fi
done

exit 0
