1 SUBROUTINE analysum2 (grpmn, bvec, slp, tlp, slm, tlm,
2 1 m, n, l, ivacskip, ndim)
4 USE parallel_include_module
10 INTEGER,
INTENT(in) :: m, n, l, ivacskip, ndim
11 REAL(dp),
INTENT(inout) :: grpmn(0:mf,-nf:nf,ndim,nuv3)
12 REAL(dp),
INTENT(inout) :: bvec(0:mf,-nf:nf,ndim)
13 REAL(dp),
DIMENSION(nuv3),
INTENT(in) ::
19 REAL(dp) :: sinp, sinm, cosp, cosm, temp, ton, toff
23 IF (n .LT. 0) stop
'error calling analysum2!'
25 DO i = nuv3min, nuv3max
26 sinp = sinu1(i,m)*cosv1(i,n)*cmns(l,m,n)
27 temp = -cosu1(i,m)*sinv1(i,n)*cmns(l,m,n)
30 bvec(m,n,1) = bvec(m,n,1) + tlp(i)*bexni(i)*sinp
31 bvec(m,-n,1) = bvec(m,-n,1) + tlm(i)*bexni(i)*sinm
33 IF (ivacskip .EQ. 0)
THEN
34 grpmn(m,n,1,i) = grpmn(m,n,1,i) + slp(i)*sinp
35 grpmn(m,-n,1,i) = grpmn(m,-n,1,i) + slm(i)*sinm
40 cosp = cosu1(i,m)*cosv1(i,n)*cmns(l,m,n)
41 temp = sinu1(i,m)*sinv1(i,n)*cmns(l,m,n)
44 bvec(m,n,2) = bvec(m,n,2) + tlp(i)*bexni(i)*cosp
45 bvec(m,-n,2) = bvec(m,-n,2) + tlm(i)*bexni(i)*cosm
47 IF (ivacskip .EQ. 0)
THEN
48 grpmn(m,n,2,i) = grpmn(m,n,2,i) + slp(i)*cosp
49 grpmn(m,-n,2,i) = grpmn(m,-n,2,i) + slm(i)*cosm
55 timer_vac(tasum2) = timer_vac(tasum2) + (toff-ton)
57 END SUBROUTINE analysum2