34 use element_mod , only : nixr
35
36
37
38#include "implicit_f.inc"
39
40
41
42#include "vect01_c.inc"
43#include "param_c.inc"
44
45
46
47 INTEGER IX(NIXR,*),IGEO(NPROPGI,*),SKEW_ID(*)
48
50 . off(*), geo(npropg,*), x(3,*), x0(*), y0(*), z0(*),
51 . skew(lskew,*),iposx(5,*) ,iposy(5,*),
52 . iposz(5,*),iposxx(5,*),iposyy(5,*),iposzz(5,*)
53
54
55
56 INTEGER I, J, NG, I1, I2, ISK, USENS
57
59 . x1, y1, z1, ex, ey, ez
60
61 DO i=lft,llt
62 j=i+nft
63 usens=igeo(3,ix(1,j))
64 IF(usens<=0)THEN
65
66 off(i)=one
67 ELSE
68 off(i)=-ten
69 END IF
70 ENDDO
71
72 DO j=1,5
73 DO i=lft,llt
74 iposx(j,i)=zero
75 iposy(j,i)=zero
76 iposz(j,i)=zero
77 iposxx(j,i)=zero
78 iposyy(j,i)=zero
79 iposzz(j,i)=zero
80 ENDDO
81 ENDDO
82
83 DO i=lft,llt
84 j=i+nft
85 ng=ix(1,j)
86 isk=skew_id(i)
87 i1=ix(2,j)
88 i2=ix(3,j)
89 x1=x(1,i2)-x(1,i1)
90 y1=x(2,i2)-x(2,i1)
91 z1=x(3,i2)-x(3,i1)
92 ex=skew(1,isk)
93 ey=skew(2,isk)
94 ez=skew(3,isk)
95 x0(i)=ex*x1+ey*y1+ez*z1
96 ex=skew(4,isk)
97 ey=skew(5,isk)
98 ez=skew(6,isk)
99 y0(i)=ex*x1+ey*y1+ez*z1
100 ex=skew(7,isk)
101 ey=skew(8,isk)
102 ez=skew(9,isk)
103 z0(i)=ex*x1+ey*y1+ez*z1
104 ENDDO
105
106 RETURN