OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
i10dst3.F File Reference
#include "implicit_f.inc"
#include "mvsiz_p.inc"
#include "sms_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine i10dst3 (jlt, cand_n, cand_e, cn_loc, ce_loc, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, xi, yi, zi, nx1, nx2, nx3, nx4, ny1, ny2, ny3, ny4, nz1, nz2, nz3, nz4, lb1, lb2, lb3, lb4, lc1, lc2, lc3, lc4, p1, p2, p3, p4, ix1, ix2, ix3, ix4, nsvg, stif, jlt_new, gapv, cand_f, index, itied, vxi, vyi, vzi, msi, nsms)

Function/Subroutine Documentation

◆ i10dst3()

subroutine i10dst3 ( integer jlt,
integer, dimension(*) cand_n,
integer, dimension(*) cand_e,
integer, dimension(*) cn_loc,
integer, dimension(*) ce_loc,
x1,
x2,
x3,
x4,
y1,
y2,
y3,
y4,
z1,
z2,
z3,
z4,
xi,
yi,
zi,
nx1,
nx2,
nx3,
nx4,
ny1,
ny2,
ny3,
ny4,
nz1,
nz2,
nz3,
nz4,
lb1,
lb2,
lb3,
lb4,
lc1,
lc2,
lc3,
lc4,
p1,
p2,
p3,
p4,
integer, dimension(mvsiz) ix1,
integer, dimension(mvsiz) ix2,
integer, dimension(mvsiz) ix3,
integer, dimension(mvsiz) ix4,
integer, dimension(mvsiz) nsvg,
stif,
integer jlt_new,
gapv,
cand_f,
integer, dimension(*) index,
integer itied,
vxi,
vyi,
vzi,
msi,
integer, dimension(*) nsms )

Definition at line 28 of file i10dst3.F.

41C-----------------------------------------------
42C I m p l i c i t T y p e s
43C-----------------------------------------------
44#include "implicit_f.inc"
45C-----------------------------------------------
46C G l o b a l P a r a m e t e r s
47C-----------------------------------------------
48#include "mvsiz_p.inc"
49C-----------------------------------------------
50C D u m m y A r g u m e n t s
51C-----------------------------------------------
52 INTEGER JLT,JLT_NEW,ITIED,CAND_N(*),CN_LOC(*),
53 . CAND_E(*),CE_LOC(*)
54 INTEGER IX1(MVSIZ), IX2(MVSIZ), IX3(MVSIZ), IX4(MVSIZ),
55 . NSVG(MVSIZ),INDEX(*), NSMS(*)
57 . nx1(mvsiz), nx2(mvsiz), nx3(mvsiz), nx4(mvsiz),
58 . ny1(mvsiz), ny2(mvsiz), ny3(mvsiz), ny4(mvsiz),
59 . nz1(mvsiz), nz2(mvsiz), nz3(mvsiz), nz4(mvsiz),
60 . lb1(mvsiz), lb2(mvsiz), lb3(mvsiz), lb4(mvsiz),
61 . lc1(mvsiz), lc2(mvsiz), lc3(mvsiz), lc4(mvsiz),
62 . x1(mvsiz), x2(mvsiz), x3(mvsiz), x4(mvsiz),
63 . y1(mvsiz), y2(mvsiz), y3(mvsiz), y4(mvsiz),
64 . z1(mvsiz), z2(mvsiz), z3(mvsiz), z4(mvsiz),
65 . xi(mvsiz), yi(mvsiz), zi(mvsiz), stif(mvsiz),
66 . p1(mvsiz), p2(mvsiz), p3(mvsiz), p4(mvsiz),
67 . gapv(mvsiz),cand_f(6,*),
68 . vxi(mvsiz), vyi(mvsiz), vzi(mvsiz), msi(mvsiz)
69C-----------------------------------------------
70C C o m m o n B l o c k s
71C-----------------------------------------------
72#include "sms_c.inc"
73C-----------------------------------------------
74C L o c a l V a r i a b l e s
75C-----------------------------------------------
76 INTEGER I, IG
78 . x0(mvsiz), y0(mvsiz), z0(mvsiz),
79 . al1(mvsiz), al2(mvsiz), al3(mvsiz), al4(mvsiz),
80 . x01(mvsiz), x02(mvsiz), x03(mvsiz), x04(mvsiz),
81 . y01(mvsiz), y02(mvsiz), y03(mvsiz), y04(mvsiz),
82 . z01(mvsiz), z02(mvsiz), z03(mvsiz), z04(mvsiz),
83 . xi1(mvsiz), xi2(mvsiz), xi3(mvsiz), xi4(mvsiz),
84 . yi1(mvsiz), yi2(mvsiz), yi3(mvsiz), yi4(mvsiz),
85 . zi1(mvsiz), zi2(mvsiz), zi3(mvsiz), zi4(mvsiz),
86 . pene2(mvsiz),
87 . hlb1(mvsiz), hlc1(mvsiz), hlb2(mvsiz),hlc2(mvsiz),
88 . hlb3(mvsiz), hlc3(mvsiz), hlb4(mvsiz),hlc4(mvsiz)
90 . s2, d1,d2,d3,d4, la, hla, aaa,
91 . x12,x23,x34,x41,xi0,sx1,sx2,sx3,sx4,sx0,
92 . y12,y23,y34,y41,yi0,sy1,sy2,sy3,sy4,sy0,
93 . z12,z23,z34,z41,zi0,sz1,sz2,sz3,sz4,sz0,
94 . gap2
95C-----------------------------------------------
96C
97 DO i=1,jlt
98 IF(ix3(i)/=ix4(i))THEN
99 x0(i) = fourth*(x1(i)+x2(i)+x3(i)+x4(i))
100 y0(i) = fourth*(y1(i)+y2(i)+y3(i)+y4(i))
101 z0(i) = fourth*(z1(i)+z2(i)+z3(i)+z4(i))
102 ELSE
103 x0(i) = x3(i)
104 y0(i) = y3(i)
105 z0(i) = z3(i)
106 ENDIF
107 ENDDO
108C
109 DO i=1,jlt
110 x01(i) = x1(i) - x0(i)
111 y01(i) = y1(i) - y0(i)
112 z01(i) = z1(i) - z0(i)
113C
114 x02(i) = x2(i) - x0(i)
115 y02(i) = y2(i) - y0(i)
116 z02(i) = z2(i) - z0(i)
117C
118 x03(i) = x3(i) - x0(i)
119 y03(i) = y3(i) - y0(i)
120 z03(i) = z3(i) - z0(i)
121C
122 x04(i) = x4(i) - x0(i)
123 y04(i) = y4(i) - y0(i)
124 z04(i) = z4(i) - z0(i)
125C
126 xi0 = x0(i) - xi(i)
127 yi0 = y0(i) - yi(i)
128 zi0 = z0(i) - zi(i)
129C
130 xi1(i) = x1(i) - xi(i)
131 yi1(i) = y1(i) - yi(i)
132 zi1(i) = z1(i) - zi(i)
133C
134 xi2(i) = x2(i) - xi(i)
135 yi2(i) = y2(i) - yi(i)
136 zi2(i) = z2(i) - zi(i)
137C
138 xi3(i) = x3(i) - xi(i)
139 yi3(i) = y3(i) - yi(i)
140 zi3(i) = z3(i) - zi(i)
141C
142 xi4(i) = x4(i) - xi(i)
143 yi4(i) = y4(i) - yi(i)
144 zi4(i) = z4(i) - zi(i)
145C
146 sx1 = yi0*zi1(i) - zi0*yi1(i)
147 sy1 = zi0*xi1(i) - xi0*zi1(i)
148 sz1 = xi0*yi1(i) - yi0*xi1(i)
149C
150 sx2 = yi0*zi2(i) - zi0*yi2(i)
151 sy2 = zi0*xi2(i) - xi0*zi2(i)
152 sz2 = xi0*yi2(i) - yi0*xi2(i)
153C
154 sx0 = y01(i)*z02(i) - z01(i)*y02(i)
155 sy0 = z01(i)*x02(i) - x01(i)*z02(i)
156 sz0 = x01(i)*y02(i) - y01(i)*x02(i)
157 s2 = one/max(em30,sx0*sx0 + sy0*sy0 + sz0*sz0)
158C
159 lb1(i) = -(sx0*sx2 + sy0*sy2 + sz0*sz2) * s2
160 lc1(i) = (sx0*sx1 + sy0*sy1 + sz0*sz1) * s2
161C
162 sx3 = yi0*zi3(i) - zi0*yi3(i)
163 sy3 = zi0*xi3(i) - xi0*zi3(i)
164 sz3 = xi0*yi3(i) - yi0*xi3(i)
165C
166 sx0 = y02(i)*z03(i) - z02(i)*y03(i)
167 sy0 = z02(i)*x03(i) - x02(i)*z03(i)
168 sz0 = x02(i)*y03(i) - y02(i)*x03(i)
169 s2 = one/max(em30,sx0*sx0 + sy0*sy0 + sz0*sz0)
170C
171 lb2(i) = -(sx0*sx3 + sy0*sy3 + sz0*sz3) * s2
172 lc2(i) = (sx0*sx2 + sy0*sy2 + sz0*sz2) * s2
173C
174 sx4 = yi0*zi4(i) - zi0*yi4(i)
175 sy4 = zi0*xi4(i) - xi0*zi4(i)
176 sz4 = xi0*yi4(i) - yi0*xi4(i)
177C
178 sx0 = y03(i)*z04(i) - z03(i)*y04(i)
179 sy0 = z03(i)*x04(i) - x03(i)*z04(i)
180 sz0 = x03(i)*y04(i) - y03(i)*x04(i)
181 s2 = one/max(em30,sx0*sx0 + sy0*sy0 + sz0*sz0)
182C
183 lb3(i) = -(sx0*sx4 + sy0*sy4 + sz0*sz4) * s2
184 lc3(i) = (sx0*sx3 + sy0*sy3 + sz0*sz3) * s2
185C
186 sx0 = y04(i)*z01(i) - z04(i)*y01(i)
187 sy0 = z04(i)*x01(i) - x04(i)*z01(i)
188 sz0 = x04(i)*y01(i) - y04(i)*x01(i)
189 s2 = one/max(em30,sx0*sx0 + sy0*sy0 + sz0*sz0)
190C
191 lb4(i) = -(sx0*sx1 + sy0*sy1 + sz0*sz1) * s2
192 lc4(i) = (sx0*sx4 + sy0*sy4 + sz0*sz4) * s2
193C
194 aaa = one/max(em30,x01(i)*x01(i)+y01(i)*y01(i)+z01(i)*z01(i))
195 hlc1(i)= lc1(i)*abs(lc1(i))*aaa
196 hlb4(i)= lb4(i)*abs(lb4(i))*aaa
197 al1(i) = -(xi0*x01(i)+yi0*y01(i)+zi0*z01(i))*aaa
198 al1(i) = max(zero,min(one,al1(i)))
199 aaa = one/max(em30,x02(i)*x02(i)+y02(i)*y02(i)+z02(i)*z02(i))
200 hlc2(i)= lc2(i)*abs(lc2(i))*aaa
201 hlb1(i)= lb1(i)*abs(lb1(i))*aaa
202 al2(i) = -(xi0*x02(i)+yi0*y02(i)+zi0*z02(i))*aaa
203 al2(i) = max(zero,min(one,al2(i)))
204 aaa = one/max(em30,x03(i)*x03(i)+y03(i)*y03(i)+z03(i)*z03(i))
205 hlc3(i)= lc3(i)*abs(lc3(i))*aaa
206 hlb2(i)= lb2(i)*abs(lb2(i))*aaa
207 al3(i) = -(xi0*x03(i)+yi0*y03(i)+zi0*z03(i))*aaa
208 al3(i) = max(zero,min(one,al3(i)))
209 aaa = one/max(em30,x04(i)*x04(i)+y04(i)*y04(i)+z04(i)*z04(i))
210 hlc4(i)= lc4(i)*abs(lc4(i))*aaa
211 hlb3(i)= lb3(i)*abs(lb3(i))*aaa
212 al4(i) = -(xi0*x04(i)+yi0*y04(i)+zi0*z04(i))*aaa
213 al4(i) = max(zero,min(one,al4(i)))
214C
215 ENDDO
216C
217 DO i=1,jlt
218 x12 = x2(i) - x1(i)
219 y12 = y2(i) - y1(i)
220 z12 = z2(i) - z1(i)
221 la = one - lb1(i) - lc1(i)
222 aaa = one / max(em20,x12*x12+y12*y12+z12*z12)
223 hla= la*abs(la) * aaa
224 IF(la<zero.AND.
225 + hla<=hlb1(i).AND.hla<=hlc1(i))THEN
226 lb1(i) = (xi2(i)*x12+yi2(i)*y12+zi2(i)*z12) * aaa
227 lb1(i) = max(zero,min(one,lb1(i)))
228 lc1(i) = one - lb1(i)
229 ELSEIF(lb1(i)<zero.AND.
230 + hlb1(i)<=hlc1(i).AND.hlb1(i)<=hla)THEN
231 lb1(i) = zero
232 lc1(i) = al2(i)
233 ELSEIF(lc1(i)<zero.AND.
234 + hlc1(i)<=hla.AND.hlc1(i)<=hlb1(i))THEN
235 lc1(i) = zero
236 lb1(i) = al1(i)
237 ENDIF
238 ENDDO
239C
240 DO i=1,jlt
241 x23 = x3(i) - x2(i)
242 y23 = y3(i) - y2(i)
243 z23 = z3(i) - z2(i)
244 la = one - lb2(i) - lc2(i)
245 aaa = one / max(em20,x23*x23+y23*y23+z23*z23)
246 hla= la*abs(la) * aaa
247 IF(la<zero.AND.
248 + hla<=hlb2(i).AND.hla<=hlc2(i))THEN
249 lb2(i) = (xi3(i)*x23+yi3(i)*y23+zi3(i)*z23)*aaa
250 lb2(i) = max(zero,min(one,lb2(i)))
251 lc2(i) = one - lb2(i)
252 ELSEIF(lb2(i)<zero.AND.
253 + hlb2(i)<=hlc2(i).AND.hlb2(i)<=hla)THEN
254 lb2(i) = zero
255 lc2(i) = al3(i)
256 ELSEIF(lc2(i)<zero.AND.
257 + hlc2(i)<=hla.AND.hlc2(i)<=hlb2(i))THEN
258 lc2(i) = zero
259 lb2(i) = al2(i)
260 ENDIF
261 ENDDO
262C
263 DO i=1,jlt
264 x34 = x4(i) - x3(i)
265 y34 = y4(i) - y3(i)
266 z34 = z4(i) - z3(i)
267 la = one - lb3(i) - lc3(i)
268 aaa = one / max(em20,x34*x34+y34*y34+z34*z34)
269 hla= la*abs(la) * aaa
270 IF(la<zero.AND.
271 + hla<=hlb3(i).AND.hla<=hlc3(i))THEN
272 lb3(i) = (xi4(i)*x34+yi4(i)*y34+zi4(i)*z34)*aaa
273 lb3(i) = max(zero,min(one,lb3(i)))
274 lc3(i) = one - lb3(i)
275 ELSEIF(lb3(i)<zero.AND.
276 + hlb3(i)<=hlc3(i).AND.hlb3(i)<=hla)THEN
277 lb3(i) = zero
278 lc3(i) = al4(i)
279 ELSEIF(lc3(i)<zero.AND.
280 + hlc3(i)<=hla.AND.hlc3(i)<=hlb3(i))THEN
281 lc3(i) = zero
282 lb3(i) = al3(i)
283 ENDIF
284 ENDDO
285C
286 DO i=1,jlt
287 x41 = x1(i) - x4(i)
288 y41 = y1(i) - y4(i)
289 z41 = z1(i) - z4(i)
290 la = one - lb4(i) - lc4(i)
291 aaa = one / max(em20,x41*x41+y41*y41+z41*z41)
292 hla= la*abs(la) * aaa
293 IF(la<zero.AND.
294 + hla<=hlb4(i).AND.hla<=hlc4(i))THEN
295 lb4(i) = (xi1(i)*x41+yi1(i)*y41+zi1(i)*z41)*aaa
296 lb4(i) = max(zero,min(one,lb4(i)))
297 lc4(i) = one - lb4(i)
298 ELSEIF(lb4(i)<zero.AND.
299 + hlb4(i)<=hlc4(i).AND.hlb4(i)<=hla)THEN
300 lb4(i) = zero
301 lc4(i) = al1(i)
302 ELSEIF(lc4(i)<zero.AND.
303 + hlc4(i)<=hla.AND.hlc4(i)<=hlb4(i))THEN
304 lc4(i) = zero
305 lb4(i) = al4(i)
306 ENDIF
307 ENDDO
308
309C
310 DO i=1,jlt
311 gap2=gapv(i)*gapv(i)
312C
313 nx1(i) = xi(i)-(x0(i) + lb1(i)*x01(i) + lc1(i)*x02(i))
314 ny1(i) = yi(i)-(y0(i) + lb1(i)*y01(i) + lc1(i)*y02(i))
315 nz1(i) = zi(i)-(z0(i) + lb1(i)*z01(i) + lc1(i)*z02(i))
316 p1(i) = nx1(i)*nx1(i) + ny1(i)*ny1(i) +nz1(i)*nz1(i)
317 d1 = max(zero, gap2 - p1(i))
318C
319 nx2(i) = xi(i)-(x0(i) + lb2(i)*x02(i) + lc2(i)*x03(i))
320 ny2(i) = yi(i)-(y0(i) + lb2(i)*y02(i) + lc2(i)*y03(i))
321 nz2(i) = zi(i)-(z0(i) + lb2(i)*z02(i) + lc2(i)*z03(i))
322 p2(i) = nx2(i)*nx2(i) + ny2(i)*ny2(i) +nz2(i)*nz2(i)
323 d2 = max(zero, gap2 - p2(i))
324C
325 nx3(i) = xi(i)-(x0(i) + lb3(i)*x03(i) + lc3(i)*x04(i))
326 ny3(i) = yi(i)-(y0(i) + lb3(i)*y03(i) + lc3(i)*y04(i))
327 nz3(i) = zi(i)-(z0(i) + lb3(i)*z03(i) + lc3(i)*z04(i))
328 p3(i) = nx3(i)*nx3(i) + ny3(i)*ny3(i) +nz3(i)*nz3(i)
329 d3 = max(zero, gap2 - p3(i))
330C
331 nx4(i) = xi(i)-(x0(i) + lb4(i)*x04(i) + lc4(i)*x01(i))
332 ny4(i) = yi(i)-(y0(i) + lb4(i)*y04(i) + lc4(i)*y01(i))
333 nz4(i) = zi(i)-(z0(i) + lb4(i)*z04(i) + lc4(i)*z01(i))
334 p4(i) = nx4(i)*nx4(i) + ny4(i)*ny4(i) +nz4(i)*nz4(i)
335 d4 = max(zero, gap2 - p4(i))
336C !!!!!!!!!!!!!!!!!!!!!!!
337C PENE2 = GAP^2 - DIST^2 UTILISE POUR TESTER SI NON NUL
338C!!!!!!!!!!!!!!!!!!!!!!!!
339 pene2(i) = max(d1,d2,d3,d4)
340C
341 ENDDO
342C---------------------
343C MAJ CAND_F sur PENE et STIF et recompactage
344C---------------------
345C
346 IF(idtmins < 2)THEN
347C
348 IF(itied==0)THEN
349 DO i=1,jlt
350 IF(pene2(i)==zero.OR.stif(i)==zero)THEN
351 cand_f(1,index(i))=zero
352 cand_f(2,index(i))=zero
353 cand_f(3,index(i))=zero
354 ENDIF
355 ENDDO
356 DO i=1,jlt
357 IF(pene2(i)/=zero.AND.stif(i)/=zero)THEN
358 jlt_new = jlt_new + 1
359 cn_loc(jlt_new) = cand_n(i)
360 ce_loc(jlt_new) = cand_e(i)
361 ix1(jlt_new) = ix1(i)
362 ix2(jlt_new) = ix2(i)
363 ix3(jlt_new) = ix3(i)
364 ix4(jlt_new) = ix4(i)
365C rajout specifique type 10
366 x1(jlt_new) = x1(i)
367 x2(jlt_new) = x2(i)
368 x3(jlt_new) = x3(i)
369 x4(jlt_new) = x4(i)
370 y1(jlt_new) = y1(i)
371 y2(jlt_new) = y2(i)
372 y3(jlt_new) = y3(i)
373 y4(jlt_new) = y4(i)
374 z1(jlt_new) = z1(i)
375 z2(jlt_new) = z2(i)
376 z3(jlt_new) = z3(i)
377 z4(jlt_new) = z4(i)
378C
379 nsvg(jlt_new) = nsvg(i)
380 nx1(jlt_new) = nx1(i)
381 nx2(jlt_new) = nx2(i)
382 nx3(jlt_new) = nx3(i)
383 nx4(jlt_new) = nx4(i)
384 ny1(jlt_new) = ny1(i)
385 ny2(jlt_new) = ny2(i)
386 ny3(jlt_new) = ny3(i)
387 ny4(jlt_new) = ny4(i)
388 nz1(jlt_new) = nz1(i)
389 nz2(jlt_new) = nz2(i)
390 nz3(jlt_new) = nz3(i)
391 nz4(jlt_new) = nz4(i)
392 p1(jlt_new) = p1(i)
393 p2(jlt_new) = p2(i)
394 p3(jlt_new) = p3(i)
395 p4(jlt_new) = p4(i)
396 lb1(jlt_new) = lb1(i)
397 lb2(jlt_new) = lb2(i)
398 lb3(jlt_new) = lb3(i)
399 lb4(jlt_new) = lb4(i)
400 lc1(jlt_new) = lc1(i)
401 lc2(jlt_new) = lc2(i)
402 lc3(jlt_new) = lc3(i)
403 lc4(jlt_new) = lc4(i)
404 stif(jlt_new) = stif(i)
405 gapv(jlt_new) = gapv(i)
406 vxi(jlt_new) = vxi(i)
407 vyi(jlt_new) = vyi(i)
408 vzi(jlt_new) = vzi(i)
409 msi(jlt_new) = msi(i)
410 index(jlt_new)= index(i)
411 ENDIF
412 ENDDO
413 ELSE
414 DO i=1,jlt
415 IF( (pene2(i)/=zero.OR.cand_f(1,index(i))/=zero) .AND.
416 . stif(i)/=zero.AND.stif(i)/=zero)THEN
417 jlt_new = jlt_new + 1
418 cn_loc(jlt_new) = cand_n(i)
419 ce_loc(jlt_new) = cand_e(i)
420 ix1(jlt_new) = ix1(i)
421 ix2(jlt_new) = ix2(i)
422 ix3(jlt_new) = ix3(i)
423 ix4(jlt_new) = ix4(i)
424 x1(jlt_new) = x1(i)
425 x2(jlt_new) = x2(i)
426 x3(jlt_new) = x3(i)
427 x4(jlt_new) = x4(i)
428 y1(jlt_new) = y1(i)
429 y2(jlt_new) = y2(i)
430 y3(jlt_new) = y3(i)
431 y4(jlt_new) = y4(i)
432 z1(jlt_new) = z1(i)
433 z2(jlt_new) = z2(i)
434 z3(jlt_new) = z3(i)
435 z4(jlt_new) = z4(i)
436 nsvg(jlt_new) = nsvg(i)
437 nx1(jlt_new) = nx1(i)
438 nx2(jlt_new) = nx2(i)
439 nx3(jlt_new) = nx3(i)
440 nx4(jlt_new) = nx4(i)
441 ny1(jlt_new) = ny1(i)
442 ny2(jlt_new) = ny2(i)
443 ny3(jlt_new) = ny3(i)
444 ny4(jlt_new) = ny4(i)
445 nz1(jlt_new) = nz1(i)
446 nz2(jlt_new) = nz2(i)
447 nz3(jlt_new) = nz3(i)
448 nz4(jlt_new) = nz4(i)
449 p1(jlt_new) = p1(i)
450 p2(jlt_new) = p2(i)
451 p3(jlt_new) = p3(i)
452 p4(jlt_new) = p4(i)
453 lb1(jlt_new) = lb1(i)
454 lb2(jlt_new) = lb2(i)
455 lb3(jlt_new) = lb3(i)
456 lb4(jlt_new) = lb4(i)
457 lc1(jlt_new) = lc1(i)
458 lc2(jlt_new) = lc2(i)
459 lc3(jlt_new) = lc3(i)
460 lc4(jlt_new) = lc4(i)
461 stif(jlt_new) = stif(i)
462 gapv(jlt_new) = gapv(i)
463 index(jlt_new)= index(i)
464 vxi(jlt_new) = vxi(i)
465 vyi(jlt_new) = vyi(i)
466 vzi(jlt_new) = vzi(i)
467 msi(jlt_new) = msi(i)
468 ENDIF
469 ENDDO
470 ENDIF
471 ELSE
472C
473C IDTMINS=2
474C ---------
475 IF(itied==0)THEN
476 DO i=1,jlt
477 IF(pene2(i)==zero.OR.stif(i)==zero)THEN
478 cand_f(1,index(i))=zero
479 cand_f(2,index(i))=zero
480 cand_f(3,index(i))=zero
481 ENDIF
482 ENDDO
483 DO i=1,jlt
484 IF(pene2(i)/=zero.AND.stif(i)/=zero)THEN
485 jlt_new = jlt_new + 1
486 cn_loc(jlt_new) = cand_n(i)
487 ce_loc(jlt_new) = cand_e(i)
488 ix1(jlt_new) = ix1(i)
489 ix2(jlt_new) = ix2(i)
490 ix3(jlt_new) = ix3(i)
491 ix4(jlt_new) = ix4(i)
492C rajout specifique type 10
493 x1(jlt_new) = x1(i)
494 x2(jlt_new) = x2(i)
495 x3(jlt_new) = x3(i)
496 x4(jlt_new) = x4(i)
497 y1(jlt_new) = y1(i)
498 y2(jlt_new) = y2(i)
499 y3(jlt_new) = y3(i)
500 y4(jlt_new) = y4(i)
501 z1(jlt_new) = z1(i)
502 z2(jlt_new) = z2(i)
503 z3(jlt_new) = z3(i)
504 z4(jlt_new) = z4(i)
505C
506 nsvg(jlt_new) = nsvg(i)
507 nx1(jlt_new) = nx1(i)
508 nx2(jlt_new) = nx2(i)
509 nx3(jlt_new) = nx3(i)
510 nx4(jlt_new) = nx4(i)
511 ny1(jlt_new) = ny1(i)
512 ny2(jlt_new) = ny2(i)
513 ny3(jlt_new) = ny3(i)
514 ny4(jlt_new) = ny4(i)
515 nz1(jlt_new) = nz1(i)
516 nz2(jlt_new) = nz2(i)
517 nz3(jlt_new) = nz3(i)
518 nz4(jlt_new) = nz4(i)
519 p1(jlt_new) = p1(i)
520 p2(jlt_new) = p2(i)
521 p3(jlt_new) = p3(i)
522 p4(jlt_new) = p4(i)
523 lb1(jlt_new) = lb1(i)
524 lb2(jlt_new) = lb2(i)
525 lb3(jlt_new) = lb3(i)
526 lb4(jlt_new) = lb4(i)
527 lc1(jlt_new) = lc1(i)
528 lc2(jlt_new) = lc2(i)
529 lc3(jlt_new) = lc3(i)
530 lc4(jlt_new) = lc4(i)
531 stif(jlt_new) = stif(i)
532 gapv(jlt_new) = gapv(i)
533 vxi(jlt_new) = vxi(i)
534 vyi(jlt_new) = vyi(i)
535 vzi(jlt_new) = vzi(i)
536 msi(jlt_new) = msi(i)
537 index(jlt_new)= index(i)
538C
539 nsms(jlt_new) = nsms(i)
540 ENDIF
541 ENDDO
542 ELSE
543 DO i=1,jlt
544 IF( (pene2(i)/=zero.OR.cand_f(1,index(i))/=zero) .AND.
545 . stif(i)/=zero.AND.stif(i)/=zero)THEN
546 jlt_new = jlt_new + 1
547 cn_loc(jlt_new) = cand_n(i)
548 ce_loc(jlt_new) = cand_e(i)
549 ix1(jlt_new) = ix1(i)
550 ix2(jlt_new) = ix2(i)
551 ix3(jlt_new) = ix3(i)
552 ix4(jlt_new) = ix4(i)
553 x1(jlt_new) = x1(i)
554 x2(jlt_new) = x2(i)
555 x3(jlt_new) = x3(i)
556 x4(jlt_new) = x4(i)
557 y1(jlt_new) = y1(i)
558 y2(jlt_new) = y2(i)
559 y3(jlt_new) = y3(i)
560 y4(jlt_new) = y4(i)
561 z1(jlt_new) = z1(i)
562 z2(jlt_new) = z2(i)
563 z3(jlt_new) = z3(i)
564 z4(jlt_new) = z4(i)
565 nsvg(jlt_new) = nsvg(i)
566 nx1(jlt_new) = nx1(i)
567 nx2(jlt_new) = nx2(i)
568 nx3(jlt_new) = nx3(i)
569 nx4(jlt_new) = nx4(i)
570 ny1(jlt_new) = ny1(i)
571 ny2(jlt_new) = ny2(i)
572 ny3(jlt_new) = ny3(i)
573 ny4(jlt_new) = ny4(i)
574 nz1(jlt_new) = nz1(i)
575 nz2(jlt_new) = nz2(i)
576 nz3(jlt_new) = nz3(i)
577 nz4(jlt_new) = nz4(i)
578 p1(jlt_new) = p1(i)
579 p2(jlt_new) = p2(i)
580 p3(jlt_new) = p3(i)
581 p4(jlt_new) = p4(i)
582 lb1(jlt_new) = lb1(i)
583 lb2(jlt_new) = lb2(i)
584 lb3(jlt_new) = lb3(i)
585 lb4(jlt_new) = lb4(i)
586 lc1(jlt_new) = lc1(i)
587 lc2(jlt_new) = lc2(i)
588 lc3(jlt_new) = lc3(i)
589 lc4(jlt_new) = lc4(i)
590 stif(jlt_new) = stif(i)
591 gapv(jlt_new) = gapv(i)
592 index(jlt_new)= index(i)
593 vxi(jlt_new) = vxi(i)
594 vyi(jlt_new) = vyi(i)
595 vzi(jlt_new) = vzi(i)
596 msi(jlt_new) = msi(i)
597C
598 nsms(jlt_new) = nsms(i)
599 ENDIF
600 ENDDO
601 ENDIF
602 END IF
603C
604 RETURN
#define my_real
Definition cppsort.cpp:32
#define min(a, b)
Definition macros.h:20
#define max(a, b)
Definition macros.h:21