common cdat,x,y,z,nx,ny,nz,nw,ntmax,date0,time0
;
;restore,'data/VAR3_16' & restore,'data/eVAR3_16' & t=150.
restore,'data/eVAR1_16' & t=50.
restore,'data/eVAR2_16' & t=100.
s=size(bb) & nx=s[1] & ny=s[2] & nz=s[3]
x=2.*!pi*findgen(nx)/nx
y=2.*!pi*findgen(ny)/ny
z=2.*!pi*findgen(nz)/nz
;
;  Compute Loitsyansky invariant
;
icount=0L
I=0.
;
;  shifts
;
stride=12
stride=6
for n=0,nz-1,stride do begin
for m=0,ny-1,stride do begin
for l=0,nx-1,stride do begin
  dx=acos(cos(x(l)-x(0)))
  dy=acos(cos(y(m)-y(0)))
  dz=acos(cos(z(n)-z(0)))
  uprime=shift(uu,l,m,n,0)
  r2=dx^2+dy^2+dz^2
  I=I+mean(r2*dot(uu,uprime))
  icount=icount+1L
endfor
openw,1,'scr.dat'
printf,1,m,n,icount,I/icount
close,1
spawn,'cat scr.dat >> loits.log'
endfor
print,icount,I/icount
endfor
;
print,I/icount
u2=mean(dot2(uu))
cwd,run
fo='(f7.1,2e12.3,i5,2x,a)'
print,t,I/icount,u2,run,fo=fo
openw,1,'tmp.dat'
printf,1,t,I/icount,u2,run,stride,fo=fo
close,1
spawn,'cat tmp.dat >> ../idl/loits.dat'
END
