25 real u(lx2,ly2,lz2,lelv),v(lx2,ly2,lz2,lelv)
26 common /scrpre/ v1(lx1,ly1,lz1,lelv)
27 $ ,w1(lx1,ly1,lz1),w2(lx1,ly1,lz1)
28 common /scrover/ ar(lelv)
30 parameter(lxx=lx1*lx1, levb=lelv+lbelv)
31 common /fastd/ df(lx1*ly1*lz1,levb)
32 $ , sr(lxx*2,levb),ss(lxx*2,levb),st(lxx*2,levb)
36 if (icalld.eq.0) tsolv=0.0
40 ntot1 = lx1*ly1*lz1*nelv
41 ntot2 = lx2*ly2*lz2*nelv
51 v1(ix+1,iy+1,iz+iz1,e) = v(ix,iy,iz,e)
57 call dssum (v1,lx1,ly1,lz1)
65 if (ifield.gt.1) eoff = nelv
69 call fastdm1(v1(1,1,1,e),df(1,eb)
70 $ ,sr(1,eb),ss(1,eb),st(1,eb),w1,w2)
77 call dssum (v1,lx1,ly1,lz1)
87 u(ix,iy,iz,e) = v1(ix+1,iy+1,iz+iz1,e)
101 parameter(lxx=lx1*lx1,lxyz=lx1*ly1*lz1)
103 real r(1),df(1),sr(lxx,2),ss(lxx,2),st(lxx,2),w1(1),w2(1)
108 call tensr3 (w1,lx1,r ,lx1,sr(1,2),ss(1,1),st(1,1),w2)
114 call col2 (w1,df,lxyz)
120 call tensr3 (r ,lx1,w1,lx1,sr(1,1),ss(1,2),st(1,2),w2)
135 real v(nv,nv,nv),u(nu,nu,nu)
136 real A(1),Bt(1),Ct(1)
140 write(6,*) nid,nu,nv,
' ERROR in tensr3. Contact P.Fischer.'
141 write(6,*) nid,nu,nv,
' Memory problem.'
148 call mxm(a,nv,u,nu,v,nu*nu)
152 call mxm(v(k,1,1),nv,bt,nu,w(l),nv)
156 call mxm(w,nvv,ct,nu,v,nv)
158 call mxm(a,nv,u,nu,w,nu)
159 call mxm(w,nv,bt,nu,v,nv)
170 real x(lx1,ly1,lz1,1)
178 x(ix,2 ,iz,ie) = c*x(ix,1 ,iz,ie) + x(ix,2 ,iz,ie)
179 x(ix,ly1-1,iz,ie) = c*x(ix,ly1,iz,ie) + x(ix,ly1-1,iz,ie)
185 x(2 ,iy,iz,ie) = c*x(1 ,iy,iz,ie) + x(2 ,iy,iz,ie)
186 x(lx1-1,iy,iz,ie) = c*x(lx1,iy,iz,ie) + x(lx1-1,iy,iz,ie)
192 x(ix,iy,2 ,ie) = c*x(ix,iy,1 ,ie) + x(ix,iy,2 ,ie)
193 x(ix,iy,lz1-1,ie) = c*x(ix,iy,lz1,ie) + x(ix,iy,lz1-1,ie)
200 x(ix,2 ,1,ie) = c*x(ix,1 ,1,ie) + x(ix,2 ,1,ie)
201 x(ix,ly1-1,1,ie) = c*x(ix,ly1,1,ie) + x(ix,ly1-1,1,ie)
204 x(2 ,iy,1,ie) = c*x(1 ,iy,1,ie) + x(2 ,iy,1,ie)
205 x(lx1-1,iy,1,ie) = c*x(lx1,iy,1,ie) + x(lx1-1,iy,1,ie)
217 real x(lx1,ly1,lz1,1)
225 x(ix,1 ,iz,ie) = x(ix,2 ,iz,ie)
226 x(ix,ly1,iz,ie) = x(ix,ly1-1,iz,ie)
232 x(1 ,iy,iz,ie) = x(2 ,iy,iz,ie)
233 x(lx1,iy,iz,ie) = x(lx1-1,iy,iz,ie)
239 x(ix,iy,1 ,ie) = x(ix,iy,2 ,ie)
240 x(ix,iy,lz1,ie) = x(ix,iy,lz1-1,ie)
247 x(ix,1 ,1,ie) = x(ix,2 ,1,ie)
248 x(ix,ly1,1,ie) = x(ix,ly1-1,1,ie)
251 x(1 ,iy,1,ie) = x(2 ,iy,1,ie)
252 x(lx1,iy,1,ie) = x(lx1-1,iy,1,ie)
265 real x(lx1,ly1,lz1,1)
273 x(ix,1 ,iz,ie) = x(ix,1 ,iz,ie) + c*x(ix,2 ,iz,ie)
274 x(ix,ly1,iz,ie) = x(ix,ly1,iz,ie) + c*x(ix,ly1-1,iz,ie)
280 x(1 ,iy,iz,ie) = x(1 ,iy,iz,ie) + c*x(2 ,iy,iz,ie)
281 x(lx1,iy,iz,ie) = x(lx1,iy,iz,ie) + c*x(lx1-1,iy,iz,ie)
287 x(ix,iy,1 ,ie) = x(ix,iy,1 ,ie) + c*x(ix,iy,2 ,ie)
288 x(ix,iy,lz1,ie) = x(ix,iy,lz1,ie) + c*x(ix,iy,lz1-1,ie)
297 x(ix,1 ,1,ie) = x(ix,1 ,1,ie) + c*x(ix,2 ,1,ie)
298 x(ix,ly1,1,ie) = x(ix,ly1,1,ie) + c*x(ix,ly1-1,1,ie)
301 x(1 ,iy,1,ie) = x(1 ,iy,1,ie) + c*x(2 ,iy,1,ie)
302 x(lx1,iy,1,ie) = x(lx1,iy,1,ie) + c*x(lx1-1,iy,1,ie)
315 parameter(levb=lelv+lbelv)
316 common /swaplengths/ l(lx1,ly1,lz1,lelv)
317 common /weightop/ w(lx2,lz2,2,3,levb)
323 if (ifield.gt.1) e0 = nelv
328 call rzero(l(1,1,1,e),lx1*ly1*lz1)
350 call rzero(l(1,1,1,e),lx1*ly1*lz1)
363 call dssum(l,lx1,ly1,lz1)
372 w(j,k,1,1,eb)=1.0/l(2,j+1,k+1,e)
373 w(j,k,2,1,eb)=1.0/l(n,j+1,k+1,e)
378 w(i,k,1,2,eb)=1.0/l(i+1,2,k+1,e)
379 w(i,k,2,2,eb)=1.0/l(i+1,n,k+1,e)
384 w(i,j,1,3,eb)=1.0/l(i+1,j+1,2,e)
385 w(i,j,2,3,eb)=1.0/l(i+1,j+1,n,e)
393 w(j,1,1,1,eb)=1.0/l(2,j+1,1,e)
394 w(j,1,2,1,eb)=1.0/l(n,j+1,1,e)
397 w(i,1,1,2,eb)=1.0/l(i+1,2,1,e)
398 w(i,1,2,2,eb)=1.0/l(i+1,n,1,e)
408 parameter(levb=lelv+lbelv)
409 common /weightop/ w(lx2,lz2,2,3,levb)
412 real x(0:lx1-1,0:ly1-1,0:lz1-1,1)
416 if (ifield.gt.1) e0 = nelv
423 x( 1,j,k,e)=w(j,k,1,1,eb)*x( 1,j,k,e)
424 x(lx2,j,k,e)=w(j,k,2,1,eb)*x(lx2,j,k,e)
429 x(i, 1,k,e)=w(i,k,1,2,eb)*x(i, 1,k,e)
430 x(i,ly2,k,e)=w(i,k,2,2,eb)*x(i,ly2,k,e)
435 x(i,j, 1,e)=w(i,j,1,3,eb)*x(i,j, 1,e)
436 x(i,j,lz2,e)=w(i,j,2,3,eb)*x(i,j,lz2,e)
444 x( 1,j,0,e)=w(j,1,1,1,eb)*x( 1,j,0,e)
445 x(lx2,j,0,e)=w(j,1,2,1,eb)*x(lx2,j,0,e)
448 x(i, 1,0,e)=w(i,1,1,2,eb)*x(i, 1,0,e)
449 x(i,ly2,0,e)=w(i,1,2,2,eb)*x(i,ly2,0,e)
real *8 function dnekclock()
subroutine dssum(u, nx, ny, nz)
subroutine init_weight_op
subroutine tensr3(v, nv, u, nu, A, Bt, Ct, w)
subroutine s_face_to_int(x, c)
subroutine dface_add1si(x, c)
subroutine do_weight_op(x)
subroutine local_solves_fdm(u, v)
subroutine fastdm1(r, df, sr, ss, st, w1, w2)
subroutine mxm(a, n1, b, n2, c, n3)