31
32
33
34#include "implicit_f.inc"
35
36
37
38#include "mvsiz_p.inc"
39
40
41
42 INTEGER NEL,NPT
43 my_real ,
DIMENSION(NEL) ,
INTENT(IN) :: offg
44 my_real ,
DIMENSION(MVSIZ,10) ,
INTENT(IN) :: vx,vy,vz
45 my_real ,
DIMENSION(MVSIZ,10,5),
INTENT(IN) :: px,py,pz
46 my_real ,
DIMENSION(MVSIZ) ,
INTENT(OUT) :: dvm
47
48
49
50 INTEGER I,N,IP
52 . dxx,dyy,dzz,fac
53
54 dvm(1:nel) =zero
55 DO ip=1,npt
56 DO i=1,nel
57 IF(offg(i)<=one) cycle
58 dxx=px(i,1,ip)*vx(i,1)+px(i,2,ip)*vx(i,2)+px(i,3,ip)*vx(i,3)+px(i,4,ip)*vx(i,4)+px(i,5,ip)*vx(i,5)
59 . +px(i,6,ip)*vx(i,6)+px(i,7,ip)*vx(i,7)+px(i,8,ip)*vx(i,8)+px(i,9,ip)*vx(i,9)+px(i,10,ip)*vx(i,10)
60 dyy=py(i,1,ip)*vy(i,1)+py(i,2,ip)*vy(i,2)+py(i,3,ip)*vy(i,3)+py(i,4,ip)*vy(i,4)+py(i,5,ip)*vy(i,5)
61 . +py(i,6,ip)*vy(i,6)+py(i,7,ip)*vy(i,7)+py(i,8,ip)*vy(i,8)+py(i,9,ip)*vy(i,9)+py(i,10,ip)*vy(i,10)
62 dzz=pz(i,1,ip)*vz(i,1)+pz(i,2,ip)*vz(i,2)+pz(i,3,ip)*vz(i,3)+pz(i,4,ip)*vz(i,4)+pz(i,5,ip)*vz(i,5)
63 . +pz(i,6,ip)*vz(i,6)+pz(i,7,ip)*vz(i,7)+pz(i,8,ip)*vz(i,8)+pz(i,9,ip)*vz(i,9)+pz(i,10,ip)*vz(i,10)
64 dvm(i) = dvm(i)+ dxx + dyy + dzz
65 END DO
66 END DO
67 fac = one/npt
68 dvm(1:nel) = dvm(1:nel)*fac
69
70 RETURN
71