38
39
40
41#include "implicit_f.inc"
42
43
44
45#include "mvsiz_p.inc"
46
47
48
49#include "param_c.inc"
50#include "impl1_c.inc"
51
52
53
54 INTEGER JFT ,JLT, MGN(*),NPF(*),IGEO(NPROPGI,*)
55
57 . geo(npropg,*), kx(*), ky(*), kz(*), mx(*), my(*), mz(*),
58 . fx(*),fy(*),fz(*),dx(*),dy(*),dz(*),xmom(*),ymom(*),zmom(*),
59 . rx(*),ry(*),rz(*),tf(*),posx(*),posy(*),posz(*),
60 . posxx(*),posyy(*),poszz(*),al0(*)
61
62
63
64 INTEGER I,ILEN,ILENG
65 INTEGER IECROU(MVSIZ), IFUNC(MVSIZ),IFUNC2(MVSIZ)
66
68 . ali,a(mvsiz)
69
70
71 DO i=jft,jlt
72 kx(i)=geo(3,mgn(i))
73 ky(i)=geo(10,mgn(i))
74 kz(i)=geo(15,mgn(i))
75 ENDDO
76
77
78
79 DO i=jft,jlt
80 mx(i)=geo(19,mgn(i))
81 my(i)=geo(23,mgn(i))
82 mz(i)=geo(27,mgn(i))
83 ENDDO
84 ilen = 0
85 DO i=jft,jlt
86
87
88
89
90
91
92 ileng=nint(geo(93,mgn(i)))
93 IF(ileng/=0) ilen = 1
94 ENDDO
95 IF(ilen/=0) THEN
96 DO i=jft,jlt
97 ileng=nint(geo(93,mgn(i)))
98 IF(ileng/=0)THEN
99 ali = one/al0(i)
100 kx(i)=kx(i)*ali
101 ky(i)=ky(i)*ali
102 kz(i)=kz(i)*ali
103 mx(i)=mx(i)*ali
104 my(i)=my(i)*ali
105 mz(i)=mz(i)*ali
106 ENDIF
107 ENDDO
108 ENDIF
109 IF (ismdisp>0.OR.isprn==1) THEN
110
111 DO i=jft,jlt
112 iecrou(i)=nint(geo(7,mgn(i)))
113 ifunc(i) = igeo(101,mgn(i))
114 ifunc2(i)= igeo(103,mgn(i))
115 a(i) = geo(41,mgn(i))
116 ENDDO
117 CALL rkenonl(jft ,jlt ,kx ,fx ,dx ,
118 . iecrou ,ifunc ,ifunc2 ,a ,tf ,
119 . npf ,posx )
120
121 DO i=jft,jlt
122 iecrou(i)=nint(geo(14,mgn(i)))
123 ifunc(i) = igeo(104,mgn(i))
124 ifunc2(i)= igeo(106,mgn(i))
125 a(i) = geo(45,mgn(i))
126 ENDDO
127 CALL rkenonl(jft ,jlt ,ky ,fy ,dy ,
128 . iecrou ,ifunc ,ifunc2 ,a ,tf ,
129 . npf ,posy )
130
131 DO i=jft,jlt
132 iecrou(i)=nint(geo(18,mgn(i)))
133 ifunc(i) = igeo(107,mgn(i))
134 ifunc2(i)= igeo(109,mgn(i))
135 a(i) = geo(49,mgn(i))
136 ENDDO
137 CALL rkenonl(jft ,jlt ,kz ,fz ,dz ,
138 . iecrou ,ifunc ,ifunc2 ,a ,tf ,
139 . npf ,posz )
140
141 DO i=jft,jlt
142 iecrou(i)=nint(geo(22,mgn(i)))
143 ifunc(i) = igeo(110,mgn(i))
144 ifunc2(i)= igeo(112,mgn(i))
145 a(i) = geo(53,mgn(i))
146 ENDDO
147 CALL rkenonl(jft ,jlt ,mx ,xmom ,rx ,
148 . iecrou ,ifunc ,ifunc2 ,a ,tf ,
149 . npf ,posxx )
150
151 DO i=jft,jlt
152 iecrou(i)=nint(geo(26,mgn(i)))
153 ifunc(i) = igeo(113,mgn(i))
154 ifunc2(i)= igeo(115,mgn(i))
155 a(i) = geo(57,mgn(i))
156 ENDDO
157 CALL rkenonl(jft ,jlt ,my ,ymom ,ry ,
158 . iecrou ,ifunc ,ifunc2 ,a ,tf ,
159 . npf ,posyy )
160
161 DO i=jft,jlt
162 iecrou(i)=nint(geo(30,mgn(i)))
163 ifunc(i) = igeo(116,mgn(i))
164 ifunc2(i)= igeo(118,mgn(i))
165 a(i) = geo(61,mgn(i))
166 ENDDO
167 CALL rkenonl(jft ,jlt ,mz ,zmom ,rz ,
168 . iecrou ,ifunc ,ifunc2 ,a ,tf ,
169 . npf ,poszz )
170 ENDIF
171
172 RETURN
subroutine rkenonl(jft, jlt, kx, fx, dx, iecrou, ifunc, ifunc2, a, tf, npf, pos)