some checkins
[physik/posic.git] / vasp_tools / disp_calc
index 253226f..00ef43e 100755 (executable)
@@ -126,10 +126,26 @@ results=`echo "$xa $ya $za $scale" | \
                Z1=ENVIRON["Z1"]; Z2=ENVIRON["Z2"]; Z3=ENVIRON["Z3"]
        }       
        {
-               X=sqrt(X1^2+X2^2+X3^2)*$4
-               Y=sqrt(Y1^2+Y2^2+Y3^2)*$4
-               Z=sqrt(Z1^2+Z2^2+Z3^2)*$4
-               print $1*X " " $2*Y " " $3*Z
+               X=sqrt(X1^2+X2^2+X3^2)
+               Y=sqrt(Y1^2+Y2^2+Y3^2)
+               Z=sqrt(Z1^2+Z2^2+Z3^2)
+               x=$1*X
+               if(x>1.0)
+                       x-=1.0;
+               if(x<-1.0)
+                       x+=1.0;
+               y=$2*Y
+               if(y>1.0)
+                       y-=1.0;
+               if(y<-1.0)
+                       y+=1.0;
+               z=$3*Z
+               if(z>1.0)
+                       z-=1.0;
+               if(z<-1.0)
+                       z+=1.0;
+
+               print x*$4 " " y*$4 " " z*$4
        }'`
 
 xi=`echo $results | awk '{ print $1 }'`