35
36
37
38 USE elbufdef_mod
39
40
41
42#include "implicit_f.inc"
43
44
45
46#include "mvsiz_p.inc"
47
48
49
50#include "scr05_c.inc"
51
52
53
54 INTEGER, INTENT(IN) :: NEL
55
56 INTEGER
57 . NC1(*),NC2(*),NC3(*),NC4(*),NC5(*),NC6(*),NC7(*),NC8(*)
59 . offg(*),offg0(*),x(3,*)
60 DOUBLE PRECISION
61 . XDP(3,*)
62 TYPE(ELBUF_STRUCT_), TARGET :: ELBUF_TAB
63
64
65
66 INTEGER ,NCH,(MVSIZ),J
67 DOUBLE PRECISION
68 . XD1(MVSIZ), XD2(MVSIZ), XD3(MVSIZ), XD4(MVSIZ),
69 . XD5(MVSIZ), XD6(MVSIZ), XD7(MVSIZ), XD8(MVSIZ),
70 . YD1(MVSIZ), YD2(MVSIZ), YD3(MVSIZ), YD4(MVSIZ),
71 . YD5(MVSIZ), YD6(MVSIZ), YD7(MVSIZ), YD8(MVSIZ),
72 . ZD1(MVSIZ), ZD2(MVSIZ), ZD3(MVSIZ), ZD4(MVSIZ),
73 . ZD5(MVSIZ), ZD6(), ZD7(MVSIZ), ZD8(MVSIZ)
74
75
76 nch=0
77 DO i=1,nel
78 IF(offg(i)/=offg0(i).AND.abs(offg(i)) > one ) THEN
79 nch = nch +1
80 index(nch) = i
81 END IF
82 END DO
83 IF (nch==0) RETURN
84
85 IF(iresp==1)THEN
86#include "vectorize.inc"
87 DO j=1,nch
88 i = index(j)
89 xd1(j)=xdp(1,nc1(i))
90 yd1(j)=xdp(2,nc1(i))
91 zd1(j)=xdp(3,nc1(i))
92 xd2(j)=xdp(1,nc2(i))
93 yd2(j)=xdp(2,nc2(i))
94 zd2(j)=xdp(3,nc2(i))
95 xd3(j)=xdp(1,nc3(i))
96 yd3(j)=xdp(2,nc3(i))
97 zd3(j)=xdp(3,nc3(i))
98 xd4(j)=xdp(1,nc4(i))
99 yd4(j)=xdp(2,nc4(i))
100 zd4(j)=xdp(3,nc4(i))
101 xd5(j)=xdp(1,nc5(i))
102 yd5(j)=xdp(2,nc5(i))
103 zd5(j)=xdp(3,nc5(i))
104 xd6(j)=xdp(1,nc6(i))
105 yd6(j)=xdp(2,nc6(i))
106 zd6(j)=xdp(3,nc6(i))
107 xd7(j)=xdp(1,nc7(i))
108 yd7(j)=xdp(2,nc7(i))
109 zd7(j)=xdp(3,nc7(i))
110 xd8(j)=xdp(1,nc8(i))
111 yd8(j)=xdp(2,nc8(i))
112 zd8(j)=xdp(3,nc8(i))
113 ENDDO
114 ELSE
115#include "vectorize.inc"
116 DO j=1,nch
117 i = index(j)
118 xd1(j)=x(1,nc1(i))
119 yd1(j)=x(2,nc1(i))
120 zd1(j)=x(3,nc1(i))
121 xd2(j)=x(1,nc2(i))
122 yd2(j)=x(2,nc2(i))
123 zd2(j)=x(3,nc2(i))
124 xd3(j)=x(1,nc3(i))
125 yd3(j)=x(2,nc3(i))
126 zd3(j)=x(3,nc3(i))
127 xd4(j)=x(1,nc4(i))
128 yd4(j)=x(2,nc4(i))
129 zd4(j)=x(3,nc4(i))
130 xd5(j)=x(1,nc5(i))
131 yd5(j)=x(2,nc5(i))
132 zd5(j)=x(3,nc5(i))
133 xd6(j)=x(1,nc6(i))
134 yd6(j)=x(2,nc6(i))
135 zd6(j)=x(3,nc6(i))
136 xd7(j)=x(1,nc7(i))
137 yd7(j)=x(2,nc7(i))
138 zd7(j)=x(3,nc7(i))
139 xd8(j)=x(1,nc8(i))
140 yd8(j)=x(2,nc8(i))
141 zd8(j)=x(3,nc8(i))
142 ENDDO
143 ENDIF
145 . xd1 ,xd2 ,xd3 ,xd4 ,xd5 ,xd6 ,xd7 ,xd8 ,
146 . yd1 ,yd2 ,yd3 ,yd4 ,yd5 ,yd6 ,yd7 ,yd8 ,
147 . zd1 ,zd2 ,zd3 ,zd4 ,zd5 ,zd6 ,zd7 ,zd8 ,
148 . index ,nch ,nel)
149
150 RETURN
subroutine s8_is17jac_i(elbuf_tab, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, index, nch, nel)