31 SUBROUTINE spgrady(I,M,ENN1,EON,EONTOP,Q,QDY,QDYTOP)
33 REAL ENN1((M+1)*((I+1)*M+2)/2)
34 REAL EON((M+1)*((I+1)*M+2)/2),EONTOP(M+1)
35 REAL Q((M+1)*((I+1)*M+2))
36 REAL QDY((M+1)*((I+1)*M+2))
41 qdy(2*k-1)=eon(k+1)*enn1(k+1)*q(2*k+1)
42 qdy(2*k)=eon(k+1)*enn1(k+1)*q(2*k+2)
43 DO k=2,(m+1)*((i+1)*m+2)/2-1
44 qdy(2*k-1)=eon(k+1)*enn1(k+1)*q(2*k+1)-eon(k)*enn1(k-1)*q(2*k-3)
45 qdy(2*k)=eon(k+1)*enn1(k+1)*q(2*k+2)-eon(k)*enn1(k-1)*q(2*k-2)
48 qdy(2*k-1)=-eon(k)*enn1(k-1)*q(2*k-3)
49 qdy(2*k)=-eon(k)*enn1(k-1)*q(2*k-2)
53 k=l*(2*m+(i-1)*(l-1))/2+i*l+m+1
54 qdytop(2*l+1)=-eontop(l+1)*enn1(k)*q(2*k-1)
55 qdytop(2*l+2)=-eontop(l+1)*enn1(k)*q(2*k)
subroutine spgrady(I, M, ENN1, EON, EONTOP, Q, QDY, QDYTOP)
Computes the horizontal vector y-gradient of a scalar field in spectral space.