d0=0.0002 nmax=11 rm curve.a.c2h4 for n in $(eval echo "{1..$nmax}") do delta=`echo \( $n \- 6 \) \* $d0 | bc -l ` awk -v delta=$delta '{if (($1 == "H" || $1 == "C" )) { if (ind<=2) {printf "%s %10.8f %10.8f %10.8f \n", $1,$2-delta,$3,$4; ind=ind+1} else {printf "%s %10.8f %10.8f %10.8f \n", $1,$2+delta,$3,$4; ind=ind+1} } else {print $0} }' < c2h4.inp > c2h4.$n.inp #YOUR Cp2K COMMAND dist=`grep -A 4 '&COORD' c2h4.$n.inp | grep ^C | awk '{x[NR]=$2;y[NR]=$3;z[NR]=$4} END {dx=x[1]-x[2]; dy=y[1]-y[2]; dz=z[1]-z[2];print sqrt(dx*dx+dy*dy+dz*dz)}' ` grep 'ENERGY|' c2h4.$n.out | grep -v Run | awk -v dist=$dist '{print dist,$9}' >> curve.a.c2h4 done mkdir Logs mv c2h4.*.inp c2h4.*.out Logs rm RUN* *restart*