#!/bin/bash mkdir -p video if [ -z $1 ]; then file=POSCAR app="" else file=$1 app=".`echo $file | awk -F. '{ print $2 }'`" fi echo "parsing $file file ..." sicnt=`sed -n 6p $file | awk '{ print $1 }'` ccnt=`sed -n 6p $file | awk '{ print $2 }'` lc=`sed -n 2p $file | awk '{ print $1 }'` x1=`sed -n 3p $file | awk '{ print $1 }'` x2=`sed -n 3p $file | awk '{ print $2 }'` x3=`sed -n 3p $file | awk '{ print $3 }'` y1=`sed -n 4p $file | awk '{ print $1 }'` y2=`sed -n 4p $file | awk '{ print $2 }'` y3=`sed -n 4p $file | awk '{ print $3 }'` z1=`sed -n 5p $file | awk '{ print $1 }'` z2=`sed -n 5p $file | awk '{ print $2 }'` z3=`sed -n 5p $file | awk '{ print $3 }'` ((total=sicnt+ccnt)) ((eoa=total+8)) echo " Si: $sicnt, C: $ccnt, total: $total" echo " Lattice constant: $lc A" echo " Basis:" echo " $x1 $y1 $z1" echo " x = $x2 y = $y2 z = $z2" echo " $x3 $y3 $z3" cnt=0 tcnt=0 cx=1.0 cy=1.0 cz=0.8 echo "# P $total init <$cx,$cy,$cz>" > video/atomic_conf_init${app}.xyz sed -n 9,${eoa}p $file | \ while read x y z fx fy fz; do type="Si" color="Yellow" if [ $cnt -ge $sicnt ]; then type="C" color="Gray" fi X=`echo $x $y $z $x1 $y1 $z1 | \ awk '{ print $1*$4+$2*$5+$3*$6 }'` Y=`echo $x $y $z $x2 $y2 $z2 | \ awk '{ print $1*$4+$2*$5+$3*$6 }'` Z=`echo $x $y $z $x3 $y3 $z3 | \ awk '{ print $1*$4+$2*$5+$3*$6 }'` X=`echo $lc $X | awk '{ print $1*$2 }'` Y=`echo $lc $Y | awk '{ print $1*$2 }'` Z=`echo $lc $Z | awk '{ print $1*$2 }'` echo "$type $X $Y $Z $color 0.0" >> video/atomic_conf_init${app}.xyz ((cnt+=1)) done echo "done"