OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
ply_bcs.F
Go to the documentation of this file.
1Copyright> OpenRadioss
2Copyright> Copyright (C) 1986-2025 Altair Engineering Inc.
3Copyright>
4Copyright> This program is free software: you can redistribute it and/or modify
5Copyright> it under the terms of the GNU Affero General Public License as published by
6Copyright> the Free Software Foundation, either version 3 of the License, or
7Copyright> (at your option) any later version.
8Copyright>
9Copyright> This program is distributed in the hope that it will be useful,
10Copyright> but WITHOUT ANY WARRANTY; without even the implied warranty of
11Copyright> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12Copyright> GNU Affero General Public License for more details.
13Copyright>
14Copyright> You should have received a copy of the GNU Affero General Public License
15Copyright> along with this program. If not, see <https://www.gnu.org/licenses/>.
16Copyright>
17Copyright>
18Copyright> Commercial Alternative: Altair Radioss Software
19Copyright>
20Copyright> As an alternative to this open-source version, Altair also offers Altair Radioss
21Copyright> software under a commercial license. Contact Altair to discuss further if the
22Copyright> commercial version may interest you: https://www.altair.com/radioss/.
23!||====================================================================
24!|| ply_bcs ../engine/source/constraints/general/bcs/ply_bcs.F
25!||--- called by ------------------------------------------------------
26!|| resol ../engine/source/engine/resol.F
27!||--- calls -----------------------------------------------------
28!|| ply_bcs1v ../engine/source/constraints/general/bcs/ply_bcs.F
29!||====================================================================
30 SUBROUTINE ply_bcs(NODFT,NODLT ,ICODT ,ISKEW,
31 2 SKEW , INOD,MS_PLY,IBC_PLY)
32
33C-----------------------------------------------
34C I m p l i c i t T y p e s
35C-----------------------------------------------
36#include "implicit_f.inc"
37C-----------------------------------------------
38C C o m m o n B l o c k s
39C-----------------------------------------------
40#include "param_c.inc"
41C-----------------------------------------------
42C D u m m y A r g u m e n t s
43C-----------------------------------------------
44 INTEGER NODFT,NODLT,ICODT(*),ISKEW(*),INOD(*),IBC_PLY(*)
46 . skew(lskew,*),ms_ply(*)
47C-----------------------------------------------
48C L o c a l V a r i a b l e s
49C-----------------------------------------------
50 INTEGER I, N, K, ISK, LCOD, NINDX,
51 . indx(1024),l,j
53 . xdum
54C-----------------------------------------------
55 DO i = nodft,nodlt,1024
56 nindx = 0
57 DO n=i,min(nodlt,i+1023)
58 IF (icodt(n)/=0)THEN
59 nindx = nindx + 1
60 indx(nindx) = n
61 ENDIF
62 ENDDO
63C
64 CALL ply_bcs1v(nindx,indx,inod,iskew,icodt,
65 . skew ,ms_ply,ibc_ply )
66 ENDDO
67C
68 RETURN
69 END
70!||====================================================================
71!|| ply_bcs1v ../engine/source/constraints/general/bcs/ply_bcs.F
72!||--- called by ------------------------------------------------------
73!|| ply_bcs ../engine/source/constraints/general/bcs/ply_bcs.F
74!||--- uses -----------------------------------------------------
75!|| plyxfem_mod ../engine/share/modules/plyxfem_mod.F
76!||====================================================================
77 SUBROUTINE ply_bcs1v(NINDX,INDX,INOD,ISKEW,ICODT,B ,
78 . MS_PLY,IBC_PLY)
79C-----------------------------------------------
80C M o d u l e s
81C-----------------------------------------------
82 USE plyxfem_mod
83C-----------------------------------------------
84C I m p l i c i t T y p e s
85C-----------------------------------------------
86#include "implicit_f.inc"
87C-----------------------------------------------
88C D u m m y A r g u m e n t s
89C-----------------------------------------------
90 INTEGER NINDX, INDX(*), ISKEW(*), ICODT(*),INOD(*),
91 . IBC_PLY(*)
92C REAL
94 . b(lskew,*), ms_ply(nplyxfe,*)
95C-----------------------------------------------
96C C o m m o n B l o c k s
97C-----------------------------------------------
98#include "param_c.inc"
99C-----------------------------------------------
100C L o c a l V a r i a b l e s
101C-----------------------------------------------
102 INTEGER N, K, L, ISK, LCOD,J,LG,IBC,ISUP,IINF
103C REAL
104 my_real
105 . aa, vv,a1,a2,a3,v1,v2,v3
106C-----------------------------------------------
107#include "vectorize.inc"
108
109 DO k = 1, nindx
110 lg = indx(k)
111 isk =iskew(lg)
112 lcod=icodt(lg)
113 l = inod(lg)
114 ibc = ibc_ply(lg)
115 IF(l > 0 .AND. ibc == 0) THEN
116 IF(isk == 0) THEN
117C------------------
118C REPERE GLOBAL
119C------------------
120 IF(lcod == 1)THEN
121 DO j=1,nplymax
122 ply(j)%V(3,l)=zero
123 ply(j)%A(3,l)=zero
124 ply(j)%U(3,l)=zero
125 ENDDO
126 ELSEIF(lcod == 2)THEN
127 DO j=1,nplymax
128 ply(j)%V(2,l)=zero
129 ply(j)%A(2,l)=zero
130 ply(j)%U(2,l)=zero
131 ENDDO
132 ELSEIF(lcod == 3)THEN
133 DO j=1,nplymax
134 ply(j)%V(2,l)=zero
135 ply(j)%V(3,l)=zero
136 ply(j)%A(2,l)=zero
137 ply(j)%A(3,l)=zero
138 ply(j)%U(2,l)=zero
139 ply(j)%U(3,l)=zero
140 ENDDO
141 ELSEIF(lcod == 4)THEN
142 DO j=1,nplymax
143 ply(j)%V(1,l)=zero
144 ply(j)%A(1,l)=zero
145 ply(j)%U(1,l)=zero
146 ENDDO
147 ELSEIF(lcod == 5)THEN
148 DO j=1,nplymax
149 ply(j)%V(1,l)=zero
150 ply(j)%V(3,l)=zero
151 ply(j)%A(1,l)=zero
152 ply(j)%A(3,l)=zero
153 ply(j)%U(1,l)=zero
154 ply(j)%U(3,l)=zero
155 ENDDO
156 ELSEIF(lcod == 6)THEN
157 DO j=1,nplymax
158 ply(j)%V(1,l)=zero
159 ply(j)%V(2,l)=zero
160 ply(j)%A(1,l)=zero
161 ply(j)%A(2,l)=zero
162 ply(j)%U(1,l)=zero
163 ply(j)%U(2,l)=zero
164 ENDDO
165 ELSEIF(lcod == 7)THEN
166 DO j=1,nplymax
167 ply(j)%V(1,l)=zero
168 ply(j)%V(2,l)=zero
169 ply(j)%V(3,l)=zero
170
171 ply(j)%A(1,l)=zero
172 ply(j)%A(2,l)=zero
173 ply(j)%A(3,l)=zero
174
175 ply(j)%U(1,l)=zero
176 ply(j)%U(2,l)=zero
177 ply(j)%U(3,l)=zero
178 ENDDO
179 ENDIF
180C
181 ELSE ! iskw
182C-------------------
183C REPERE OBLIQUE
184C-------------------
185C
186 IF(lcod == 1)THEN
187 DO j=1,nplymax
188 a1 = ply(j)%A(1,l)
189 a2 = ply(j)%A(2,l)
190 a3 = ply(j)%A(3,l)
191 v1 = ply(j)%V(1,l)
192 v2 = ply(j)%V(2,l)
193 v3 = ply(j)%V(3,l)
194 aa =b(7,isk)*a1 + b(8,isk)*a2 + b(9,isk)*a3
195 vv =b(7,isk)*v1 + b(8,isk)*v2 + b(9,isk)*v3
196 ply(j)%A(1,l) = ply(j)%A(1,l) - b(7,isk)*aa
197 ply(j)%A(2,l) = ply(j)%A(2,l) - b(8,isk)*aa
198 ply(j)%A(3,l) = ply(j)%A(3,l) - b(9,isk)*aa
199 ply(j)%V(1,l) = ply(j)%V(1,l) - b(7,isk)*vv
200 ply(j)%V(2,l) = ply(j)%V(2,l) - b(8,isk)*vv
201 ply(j)%V(3,l) = ply(j)%V(3,l) - b(9,isk)*vv
202 ENDDO
203 ELSEIF(lcod == 2)THEN
204 DO j=1,nplymax
205 a1 = ply(j)%A(1,l)
206 a2 = ply(j)%A(2,l)
207 a3 = ply(j)%A(3,l)
208 v1 = ply(j)%V(1,l)
209 v2 = ply(j)%V(2,l)
210 v3 = ply(j)%V(3,l)
211 aa =b(4,isk)*a1 + b(5,isk)*a2 + b(6,isk)*a3
212 vv =b(4,isk)*v1 + b(5,isk)*v2 + b(6,isk)*v3
213 ply(j)%A(1,l)=ply(j)%A(1,l) - b(4,isk)*aa
214 ply(j)%A(2,l)=ply(j)%A(2,l) - b(5,isk)*aa
215 ply(j)%A(3,l)=ply(j)%A(3,l) - b(6,isk)*aa
216 ply(j)%V(1,l)=ply(j)%V(1,l) - b(4,isk)*vv
217 ply(j)%V(2,l)=ply(j)%V(2,l) - b(5,isk)*vv
218 ply(j)%V(3,l)=ply(j)%V(3,l) - b(6,isk)*vv
219 ENDDO
220 ELSEIF(lcod == 3)THEN
221 DO j=1,nplymax
222 a1 = ply(j)%A(1,l)
223 a2 = ply(j)%A(2,l)
224 a3 = ply(j)%A(3,l)
225 v1 = ply(j)%V(1,l)
226 v2 = ply(j)%V(2,l)
227 v3 = ply(j)%V(3,l)
228 aa =b(7,isk)*a1 + b(8,isk)*a2 + b(9,isk)*a3
229 vv =b(7,isk)*v1 + b(8,isk)*v2 + b(9,isk)*v3
230
231 ply(j)%A(1,l)=ply(j)%A(1,l) - b(7,isk)*aa
232 ply(j)%A(2,l)=ply(j)%A(2,l) - b(8,isk)*aa
233 ply(j)%A(3,l)=ply(j)%A(3,l) - b(9,isk)*aa
234 ply(j)%V(1,l)=ply(j)%V(1,l) - b(7,isk)*vv
235 ply(j)%V(2,l)=ply(j)%V(2,l) - b(8,isk)*vv
236 ply(j)%V(3,l)=ply(j)%V(3,l) - b(9,isk)*vv
237
238 aa =b(4,isk)*a1 + b(5,isk)*a2 + b(6,isk)*a3
239 vv =b(4,isk)*v1 + b(5,isk)*v2 + b(6,isk)*v3
240
241 ply(j)%A(1,l)=ply(j)%A(1,l) - b(4,isk)*aa
242 ply(j)%A(2,l)=ply(j)%A(2,l) - b(5,isk)*aa
243 ply(j)%A(3,l)=ply(j)%A(3,l) - b(6,isk)*aa
244 ply(j)%V(1,l)=ply(j)%V(1,l) - b(4,isk)*vv
245 ply(j)%V(2,l)=ply(j)%V(2,l) - b(5,isk)*vv
246 ply(j)%V(3,l)=ply(j)%V(3,l) - b(6,isk)*vv
247 ENDDO
248 ELSEIF(lcod == 4)THEN
249 DO j=1,nplymax
250 a1 = ply(j)%A(1,l)
251 a2 = ply(j)%A(2,l)
252 a3 = ply(j)%A(3,l)
253 v1 = ply(j)%V(1,l)
254 v2 = ply(j)%V(2,l)
255 v3 = ply(j)%V(3,l)
256
257 aa =b(1,isk)*a1 + b(2,isk)*a2 + b(3,isk)*a3
258 vv =b(1,isk)*v1 + b(2,isk)*v2 + b(3,isk)*v3
259 ply(j)%A(1,l)=ply(j)%A(1,l) - b(1,isk)*aa
260 ply(j)%A(2,l)=ply(j)%A(2,l) - b(2,isk)*aa
261 ply(j)%A(3,l)=ply(j)%A(3,l) - b(3,isk)*aa
262 ply(j)%V(1,l)=ply(j)%V(1,l) - b(1,isk)*vv
263 ply(j)%V(2,l)=ply(j)%V(2,l) - b(2,isk)*vv
264 ply(j)%V(3,l)=ply(j)%V(3,l) - b(3,isk)*vv
265 ENDDO
266 ELSEIF(lcod == 5)THEN
267 DO j=1,nplymax
268 a1 = ply(j)%A(1,l)
269 a2 = ply(j)%A(2,l)
270 a3 = ply(j)%A(3,l)
271 v1 = ply(j)%V(1,l)
272 v2 = ply(j)%V(2,l)
273 v3 = ply(j)%V(3,l)
274 aa =b(7,isk)*a1 + b(8,isk)*a2 + b(9,isk)*a3
275 vv =b(7,isk)*v1 + b(8,isk)*v2 + b(9,isk)*v3
276 ply(j)%A(1,l)=ply(j)%A(1,l) - b(7,isk)*aa
277 ply(j)%A(2,l)=ply(j)%A(2,l) - b(8,isk)*aa
278 ply(j)%A(3,l)=ply(j)%A(3,l) - b(9,isk)*aa
279 ply(j)%V(1,l)=ply(j)%V(1,l) - b(7,isk)*vv
280 ply(j)%V(2,l)=ply(j)%V(2,l) - b(8,isk)*vv
281 ply(j)%V(3,l)=ply(j)%V(3,l) - b(9,isk)*vv
282 aa =b(1,isk)*a1 + b(2,isk)*a2 + b(3,isk)*a3
283 vv =b(1,isk)*v1 + b(2,isk)*v2 + b(3,isk)*v3
284 ply(j)%A(1,l)=ply(j)%A(1,l) - b(1,isk)*aa
285 ply(j)%A(2,l)=ply(j)%A(2,l) - b(2,isk)*aa
286 ply(j)%A(3,l)=ply(j)%A(3,l) - b(3,isk)*aa
287 ply(j)%V(1,l)=ply(j)%V(1,l) - b(1,isk)*vv
288 ply(j)%V(2,l)=ply(j)%V(2,l) - b(2,isk)*vv
289 ply(j)%V(3,l)=ply(j)%V(3,l) - b(3,isk)*vv
290 ENDDO
291 ELSEIF(lcod == 6)THEN
292 DO j=1,nplymax
293 a1 = ply(j)%A(1,l)
294 a2 = ply(j)%A(2,l)
295 a3 = ply(j)%A(3,l)
296 v1 = ply(j)%V(1,l)
297 v2 = ply(j)%V(2,l)
298 v3 = ply(j)%V(3,l)
299 aa =b(1,isk)*a1 + b(2,isk)*a2 + b(3,isk)*a3
300 vv =b(1,isk)*v1 + b(2,isk)*v2 + b(3,isk)*v3
301 ply(j)%A(1,l)=ply(j)%A(1,l) - b(1,isk)*aa
302 ply(j)%A(2,l)=ply(j)%A(2,l) - b(2,isk)*aa
303 ply(j)%A(3,l)=ply(j)%A(3,l) - b(3,isk)*aa
304 ply(j)%V(1,l)=ply(j)%V(1,l) - b(1,isk)*vv
305 ply(j)%V(2,l)=ply(j)%V(2,l) - b(2,isk)*vv
306 ply(j)%V(3,l)=ply(j)%V(3,l) - b(3,isk)*vv
307 aa =b(4,isk)*a1 + b(5,isk)*a2 + b(6,isk)*a3
308 vv =b(4,isk)*v1 + b(5,isk)*v2 + b(6,isk)*v3
309 ply(j)%A(1,l)=ply(j)%A(1,l)-b(4,isk)*aa
310 ply(j)%A(2,l)=ply(j)%A(2,l)-b(5,isk)*aa
311 ply(j)%A(3,l)=ply(j)%A(3,l)-b(6,isk)*aa
312 ply(j)%V(1,l)=ply(j)%V(1,l)-b(4,isk)*vv
313 ply(j)%V(2,l)=ply(j)%V(2,l)-b(5,isk)*vv
314 ply(j)%V(3,l)=ply(j)%V(3,l)-b(6,isk)*vv
315 ENDDO
316 ELSEIF(lcod == 7)THEN
317 DO j=1,nplymax
318 ply(j)%A(1,l)=zero
319 ply(j)%A(2,l)=zero
320 ply(j)%A(3,l)=zero
321 ply(j)%V(1,l)=zero
322 ply(j)%V(2,l)=zero
323 ply(j)%V(3,l)=zero
324 ENDDO
325 ENDIF
326C
327 END IF ! iskew
328C
329C --- sup or inf ply or the both
330C
331 ELSEIF( l > 0 ) THEN ! ibc > 0
332 j = 1
333 DO WHILE (ms_ply(l,j) == zero)
334 j = j +1
335 ENDDO
336 iinf = j
337 j = nplymax
338 DO WHILE (ms_ply(l,j) == zero)
339 j = j - 1
340 ENDDO
341 isup = j
342 IF(isk == 0) THEN
343C------------------
344C REPERE GLOBAL
345C------------------
346C
347 IF(ibc ==2 ) THEN
348 IF(lcod == 1)THEN
349 ply(isup)%V(3,l)=zero
350 ply(isup)%A(3,l)=zero
351 ply(isup)%U(3,l)=zero
352 ply(iinf)%V(3,l)=zero
353 ply(iinf)%A(3,l)=zero
354 ply(iinf)%U(3,l)=zero
355 ELSEIF(lcod == 2)THEN
356
357 ply(iinf)%V(2,l)=zero
358 ply(iinf)%A(2,l)=zero
359 ply(iinf)%U(2,l)=zero
360C
361 ply(isup)%V(2,l)=zero
362 ply(isup)%A(2,l)=zero
363 ply(isup)%U(2,l)=zero
364 ELSEIF(lcod == 3)THEN
365C
366 ply(iinf)%V(2,l)=zero
367 ply(iinf)%V(3,l)=zero
368 ply(iinf)%A(2,l)=zero
369 ply(iinf)%A(3,l)=zero
370 ply(iinf)%U(2,l)=zero
371 ply(iinf)%U(3,l)=zero
372C
373 ply(isup)%V(2,l)=zero
374 ply(isup)%V(3,l)=zero
375 ply(isup)%A(2,l)=zero
376 ply(isup)%A(3,l)=zero
377 ply(isup)%U(2,l)=zero
378 ply(isup)%U(3,l)=zero
379 ELSEIF(lcod == 4)THEN
380 ply(isup)%V(1,l)=zero
381 ply(isup)%A(1,l)=zero
382 ply(isup)%U(1,l)=zero
383C
384 ply(iinf)%V(1,l)=zero
385 ply(iinf)%A(1,l)=zero
386 ply(iinf)%U(1,l)=zero
387 ELSEIF(lcod == 5)THEN
388 ply(iinf)%V(1,l)=zero
389 ply(iinf)%V(3,l)=zero
390 ply(iinf)%A(1,l)=zero
391 ply(iinf)%A(3,l)=zero
392 ply(iinf)%U(1,l)=zero
393 ply(iinf)%U(3,l)=zero
394C
395 ply(isup)%V(1,l)=zero
396 ply(isup)%V(3,l)=zero
397 ply(isup)%A(1,l)=zero
398 ply(isup)%A(3,l)=zero
399 ply(isup)%U(1,l)=zero
400 ply(isup)%U(3,l)=zero
401 ELSEIF(lcod == 6)THEN
402 ply(isup)%V(1,l)=zero
403 ply(isup)%V(2,l)=zero
404 ply(isup)%A(1,l)=zero
405 ply(isup)%A(2,l)=zero
406 ply(isup)%U(1,l)=zero
407 ply(isup)%U(2,l)=zero
408C
409 ply(iinf)%V(1,l)=zero
410 ply(iinf)%V(2,l)=zero
411 ply(iinf)%A(1,l)=zero
412 ply(iinf)%A(2,l)=zero
413 ply(iinf)%U(1,l)=zero
414 ply(iinf)%U(2,l)=zero
415 ELSEIF(lcod == 7)THEN
416
417 ply(isup)%V(1,l)=zero
418 ply(isup)%V(2,l)=zero
419 ply(isup)%V(3,l)=zero
420 ply(isup)%A(1,l)=zero
421 ply(isup)%A(2,l)=zero
422 ply(isup)%A(3,l)=zero
423 ply(isup)%U(1,l)=zero
424 ply(isup)%U(2,l)=zero
425 ply(isup)%U(3,l)=zero
426C
427 ply(iinf)%V(1,l)=zero
428 ply(iinf)%V(2,l)=zero
429 ply(iinf)%V(3,l)=zero
430 ply(iinf)%A(1,l)=zero
431 ply(iinf)%A(2,l)=zero
432 ply(iinf)%A(3,l)=zero
433 ply(iinf)%U(1,l)=zero
434 ply(iinf)%U(2,l)=zero
435 ply(iinf)%U(3,l)=zero
436
437 ENDIF
438C sup
439 ELSEIF(ibc == 1) THEN ! ibc
440 IF(lcod == 1)THEN
441 ply(isup)%V(3,l)=zero
442 ply(isup)%A(3,l)=zero
443 ply(isup)%U(3,l)=zero
444 ELSEIF(lcod == 2)THEN
445 ply(isup)%V(2,l)=zero
446 ply(isup)%A(2,l)=zero
447 ply(isup)%U(2,l)=zero
448 ELSEIF(lcod == 3)THEN
449 ply(isup)%V(2,l)=zero
450 ply(isup)%V(3,l)=zero
451 ply(isup)%A(2,l)=zero
452 ply(isup)%A(3,l)=zero
453 ply(isup)%U(2,l)=zero
454 ply(isup)%U(3,l)=zero
455 ELSEIF(lcod == 4)THEN
456 ply(isup)%V(1,l)=zero
457 ply(isup)%A(1,l)=zero
458 ply(isup)%U(1,l)=zero
459 ELSEIF(lcod == 5)THEN
460 ply(isup)%V(1,l)=zero
461 ply(isup)%V(3,l)=zero
462 ply(isup)%A(1,l)=zero
463 ply(isup)%A(3,l)=zero
464 ply(isup)%U(1,l)=zero
465 ply(isup)%U(3,l)=zero
466 ELSEIF(lcod == 6)THEN
467 ply(isup)%V(1,l)=zero
468 ply(isup)%V(2,l)=zero
469 ply(isup)%A(1,l)=zero
470 ply(isup)%A(2,l)=zero
471 ply(isup)%U(1,l)=zero
472 ply(isup)%U(2,l)=zero
473 ELSEIF(lcod == 7)THEN
474 ply(isup)%V(1,l)=zero
475 ply(isup)%V(2,l)=zero
476 ply(isup)%V(3,l)=zero
477 ply(isup)%A(1,l)=zero
478 ply(isup)%A(2,l)=zero
479 ply(isup)%A(3,l)=zero
480 ply(isup)%U(1,l)=zero
481 ply(isup)%U(2,l)=zero
482 ply(isup)%U(3,l)=zero
483 ENDIF
484C inf
485 ELSE ! ibc
486 IF(lcod == 1)THEN
487 ply(iinf)%V(3,l)=zero
488 ply(iinf)%A(3,l)=zero
489 ply(iinf)%U(3,l)=zero
490 ELSEIF(lcod == 2)THEN
491
492 ply(iinf)%V(2,l)=zero
493 ply(iinf)%A(2,l)=zero
494 ply(iinf)%U(2,l)=zero
495 ELSEIF(lcod == 3)THEN
496C
497 ply(iinf)%V(2,l)=zero
498 ply(iinf)%V(3,l)=zero
499 ply(iinf)%A(2,l)=zero
500 ply(iinf)%A(3,l)=zero
501 ply(iinf)%U(2,l)=zero
502 ply(iinf)%U(3,l)=zero
503 ELSEIF(lcod == 4)THEN
504C
505 ply(iinf)%V(1,l)=zero
506 ply(iinf)%A(1,l)=zero
507 ply(iinf)%U(1,l)=zero
508 ELSEIF(lcod == 5)THEN
509 ply(iinf)%V(1,l)=zero
510 ply(iinf)%V(3,l)=zero
511 ply(iinf)%A(1,l)=zero
512 ply(iinf)%A(3,l)=zero
513 ply(iinf)%U(1,l)=zero
514 ply(iinf)%U(3,l)=zero
515 ELSEIF(lcod == 6)THEN
516 ply(iinf)%V(1,l)=zero
517 ply(iinf)%V(2,l)=zero
518 ply(iinf)%A(1,l)=zero
519 ply(iinf)%A(2,l)=zero
520 ply(iinf)%U(1,l)=zero
521 ply(iinf)%U(2,l)=zero
522 ELSEIF(lcod == 7)THEN
523 ply(iinf)%V(1,l)=zero
524 ply(iinf)%V(2,l)=zero
525 ply(iinf)%V(3,l)=zero
526 ply(iinf)%A(1,l)=zero
527 ply(iinf)%A(2,l)=zero
528 ply(iinf)%A(3,l)=zero
529 ply(iinf)%U(1,l)=zero
530 ply(iinf)%U(2,l)=zero
531 ply(iinf)%U(3,l)=zero
532 ENDIF
533 ENDIF ! ibc
534C
535 ELSE ! iskew
536C-------------------
537C REPERE OBLIQUE
538C-------------------
539C
540 IF(ibc == 2) THEN
541 IF(lcod == 1)THEN
542
543 a1 = ply(iinf)%A(1,l)
544 a2 = ply(iinf)%A(2,l)
545 a3 = ply(iinf)%A(3,l)
546 v1 = ply(iinf)%V(1,l)
547 v2 = ply(iinf)%V(2,l)
548 v3 = ply(iinf)%V(3,l)
549 aa =b(7,isk)*a1 + b(8,isk)*a2 + b(9,isk)*a3
550 vv =b(7,isk)*v1 + b(8,isk)*v2 + b(9,isk)*v3
551 ply(iinf)%A(1,l) = ply(iinf)%A(1,l) - b(7,isk)*aa
552 ply(iinf)%A(2,l) = ply(iinf)%A(2,l) - b(8,isk)*aa
553 ply(iinf)%A(3,l) = ply(iinf)%A(3,l) - b(9,isk)*aa
554 ply(iinf)%V(1,l) = ply(iinf)%V(1,l) - b(7,isk)*vv
555 ply(iinf)%V(2,l) = ply(iinf)%V(2,l) - b(8,isk)*vv
556 ply(iinf)%V(3,l) = ply(iinf)%V(3,l) - b(9,isk)*vv
557C
558 a1 = ply(isup)%A(1,l)
559 a2 = ply(isup)%A(2,l)
560 a3 = ply(isup)%A(3,l)
561 v1 = ply(isup)%V(1,l)
562 v2 = ply(isup)%V(2,l)
563 v3 = ply(isup)%V(3,l)
564 aa =b(7,isk)*a1 + b(8,isk)*a2 + b(9,isk)*a3
565 vv =b(7,isk)*v1 + b(8,isk)*v2 + b(9,isk)*v3
566 ply(isup)%A(1,l) = ply(isup)%A(1,l) - b(7,isk)*aa
567 ply(isup)%A(2,l) = ply(isup)%A(2,l) - b(8,isk)*aa
568 ply(isup)%A(3,l) = ply(isup)%A(3,l) - b(9,isk)*aa
569 ply(isup)%V(1,l) = ply(isup)%V(1,l) - b(7,isk)*vv
570 ply(isup)%V(2,l) = ply(isup)%V(2,l) - b(8,isk)*vv
571 ply(isup)%V(3,l) = ply(isup)%V(3,l) - b(9,isk)*vv
572 ELSEIF(lcod == 2)THEN
573 a1 = ply(iinf)%A(1,l)
574 a2 = ply(iinf)%A(2,l)
575 a3 = ply(iinf)%A(3,l)
576 v1 = ply(iinf)%V(1,l)
577 v2 = ply(iinf)%V(2,l)
578 v3 = ply(iinf)%V(3,l)
579 aa =b(4,isk)*a1 + b(5,isk)*a2 + b(6,isk)*a3
580 vv =b(4,isk)*v1 + b(5,isk)*v2 + b(6,isk)*v3
581 ply(iinf)%A(1,l)=ply(iinf)%A(1,l) - b(4,isk)*aa
582 ply(iinf)%A(2,l)=ply(iinf)%A(2,l) - b(5,isk)*aa
583 ply(iinf)%A(3,l)=ply(iinf)%A(3,l) - b(6,isk)*aa
584 ply(iinf)%V(1,l)=ply(iinf)%V(1,l) - b(4,isk)*vv
585 ply(iinf)%V(2,l)=ply(iinf)%V(2,l) - b(5,isk)*vv
586 ply(iinf)%V(3,l)=ply(iinf)%V(3,l) - b(6,isk)*vv
587C
588 a1 = ply(isup)%A(1,l)
589 a2 = ply(isup)%A(2,l)
590 a3 = ply(isup)%A(3,l)
591 v1 = ply(isup)%V(1,l)
592 v2 = ply(isup)%V(2,l)
593 v3 = ply(isup)%V(3,l)
594 aa =b(4,isk)*a1 + b(5,isk)*a2 + b(6,isk)*a3
595 vv =b(4,isk)*v1 + b(5,isk)*v2 + b(6,isk)*v3
596 ply(isup)%A(1,l)=ply(isup)%A(1,l) - b(4,isk)*aa
597 ply(isup)%A(2,l)=ply(isup)%A(2,l) - b(5,isk)*aa
598 ply(isup)%A(3,l)=ply(isup)%A(3,l) - b(6,isk)*aa
599 ply(isup)%V(1,l)=ply(isup)%V(1,l) - b(4,isk)*vv
600 ply(isup)%V(2,l)=ply(isup)%V(2,l) - b(5,isk)*vv
601 ply(isup)%V(3,l)=ply(isup)%V(3,l) - b(6,isk)*vv
602 ELSEIF(lcod == 3)THEN
603
604 a1 = ply(iinf)%A(1,l)
605 a2 = ply(iinf)%A(2,l)
606 a3 = ply(iinf)%A(3,l)
607 v1 = ply(iinf)%V(1,l)
608 v2 = ply(iinf)%V(2,l)
609 v3 = ply(iinf)%V(3,l)
610 aa =b(7,isk)*a1 + b(8,isk)*a2 + b(9,isk)*a3
611 vv =b(7,isk)*v1 + b(8,isk)*v2 + b(9,isk)*v3
612
613 ply(iinf)%A(1,l)=ply(iinf)%A(1,l) - b(7,isk)*aa
614 ply(iinf)%A(2,l)=ply(iinf)%A(2,l) - b(8,isk)*aa
615 ply(iinf)%A(3,l)=ply(iinf)%A(3,l) - b(9,isk)*aa
616 ply(iinf)%V(1,l)=ply(iinf)%V(1,l) - b(7,isk)*vv
617 ply(iinf)%V(2,l)=ply(iinf)%V(2,l) - b(8,isk)*vv
618 ply(iinf)%V(3,l)=ply(iinf)%V(3,l) - b(9,isk)*vv
619
620 aa =b(4,isk)*a1 + b(5,isk)*a2 + b(6,isk)*a3
621 vv =b(4,isk)*v1 + b(5,isk)*v2 + b(6,isk)*v3
622
623 ply(iinf)%A(1,l)=ply(iinf)%A(1,l) - b(4,isk)*aa
624 ply(iinf)%A(2,l)=ply(iinf)%A(2,l) - b(5,isk)*aa
625 ply(iinf)%A(3,l)=ply(iinf)%A(3,l) - b(6,isk)*aa
626 ply(iinf)%V(1,l)=ply(iinf)%V(1,l) - b(4,isk)*vv
627 ply(iinf)%V(2,l)=ply(iinf)%V(2,l) - b(5,isk)*vv
628 ply(iinf)%V(3,l)=ply(iinf)%V(3,l) - b(6,isk)*vv
629C
630 a1 = ply(isup)%A(1,l)
631 a2 = ply(isup)%A(2,l)
632 a3 = ply(isup)%A(3,l)
633 v1 = ply(isup)%V(1,l)
634 v2 = ply(isup)%V(2,l)
635 v3 = ply(isup)%V(3,l)
636 aa =b(7,isk)*a1 + b(8,isk)*a2 + b(9,isk)*a3
637 vv =b(7,isk)*v1 + b(8,isk)*v2 + b(9,isk)*v3
638
639 ply(isup)%A(1,l)=ply(isup)%A(1,l) - b(7,isk)*aa
640 ply(isup)%A(2,l)=ply(isup)%A(2,l) - b(8,isk)*aa
641 ply(isup)%A(3,l)=ply(isup)%A(3,l) - b(9,isk)*aa
642 ply(isup)%V(1,l)=ply(isup)%V(1,l) - b(7,isk)*vv
643 ply(isup)%V(2,l)=ply(isup)%V(2,l) - b(8,isk)*vv
644 ply(isup)%V(3,l)=ply(isup)%V(3,l) - b(9,isk)*vv
645
646 aa =b(4,isk)*a1 + b(5,isk)*a2 + b(6,isk)*a3
647 vv =b(4,isk)*v1 + b(5,isk)*v2 + b(6,isk)*v3
648
649 ply(isup)%A(1,l)=ply(isup)%A(1,l) - b(4,isk)*aa
650 ply(isup)%A(2,l)=ply(isup)%A(2,l) - b(5,isk)*aa
651 ply(isup)%A(3,l)=ply(isup)%A(3,l) - b(6,isk)*aa
652 ply(isup)%V(1,l)=ply(isup)%V(1,l) - b(4,isk)*vv
653 ply(isup)%V(2,l)=ply(isup)%V(2,l) - b(5,isk)*vv
654 ply(isup)%V(3,l)=ply(isup)%V(3,l) - b(6,isk)*vv
655
656 ELSEIF(lcod == 4)THEN
657 a1 = ply(iinf)%A(1,l)
658 a2 = ply(iinf)%A(2,l)
659 a3 = ply(iinf)%A(3,l)
660 v1 = ply(iinf)%V(1,l)
661 v2 = ply(iinf)%V(2,l)
662 v3 = ply(iinf)%V(3,l)
663
664 aa =b(1,isk)*a1 + b(2,isk)*a2 + b(3,isk)*a3
665 vv =b(1,isk)*v1 + b(2,isk)*v2 + b(3,isk)*v3
666 ply(iinf)%A(1,l)=ply(iinf)%A(1,l) - b(1,isk)*aa
667 ply(iinf)%A(2,l)=ply(iinf)%A(2,l) - b(2,isk)*aa
668 ply(iinf)%A(3,l)=ply(iinf)%A(3,l) - b(3,isk)*aa
669 ply(iinf)%V(1,l)=ply(iinf)%V(1,l) - b(1,isk)*vv
670 ply(iinf)%V(2,l)=ply(iinf)%V(2,l) - b(2,isk)*vv
671 ply(iinf)%V(3,l)=ply(iinf)%V(3,l) - b(3,isk)*vv
672C
673 a1 = ply(isup)%A(1,l)
674 a2 = ply(isup)%A(2,l)
675 a3 = ply(isup)%A(3,l)
676 v1 = ply(isup)%V(1,l)
677 v2 = ply(isup)%V(2,l)
678 v3 = ply(isup)%V(3,l)
679
680 aa =b(1,isk)*a1 + b(2,isk)*a2 + b(3,isk)*a3
681 vv =b(1,isk)*v1 + b(2,isk)*v2 + b(3,isk)*v3
682 ply(isup)%A(1,l)=ply(isup)%A(1,l) - b(1,isk)*aa
683 ply(isup)%A(2,l)=ply(isup)%A(2,l) - b(2,isk)*aa
684 ply(isup)%A(3,l)=ply(isup)%A(3,l) - b(3,isk)*aa
685 ply(isup)%V(1,l)=ply(isup)%V(1,l) - b(1,isk)*vv
686 ply(isup)%V(2,l)=ply(isup)%V(2,l) - b(2,isk)*vv
687 ply(isup)%V(3,l)=ply(isup)%V(3,l) - b(3,isk)*vv
688 ELSEIF(lcod == 5)THEN
689 a1 = ply(iinf)%A(1,l)
690 a2 = ply(iinf)%A(2,l)
691 a3 = ply(iinf)%A(3,l)
692 v1 = ply(iinf)%V(1,l)
693 v2 = ply(iinf)%V(2,l)
694 v3 = ply(iinf)%V(3,l)
695 aa =b(7,isk)*a1 + b(8,isk)*a2 + b(9,isk)*a3
696 vv =b(7,isk)*v1 + b(8,isk)*v2 + b(9,isk)*v3
697 ply(iinf)%A(1,l)=ply(iinf)%A(1,l) - b(7,isk)*aa
698 ply(iinf)%A(2,l)=ply(iinf)%A(2,l) - b(8,isk)*aa
699 ply(iinf)%A(3,l)=ply(iinf)%A(3,l) - b(9,isk)*aa
700 ply(iinf)%V(1,l)=ply(iinf)%V(1,l) - b(7,isk)*vv
701 ply(iinf)%V(2,l)=ply(iinf)%V(2,l) - b(8,isk)*vv
702 ply(iinf)%V(3,l)=ply(iinf)%V(3,l) - b(9,isk)*vv
703 aa =b(1,isk)*a1 + b(2,isk)*a2 + b(3,isk)*a3
704 vv =b(1,isk)*v1 + b(2,isk)*v2 + b(3,isk)*v3
705 ply(iinf)%A(1,l)=ply(iinf)%A(1,l) - b(1,isk)*aa
706 ply(iinf)%A(2,l)=ply(iinf)%A(2,l) - b(2,isk)*aa
707 ply(iinf)%A(3,l)=ply(iinf)%A(3,l) - b(3,isk)*aa
708 ply(iinf)%V(1,l)=ply(iinf)%V(1,l) - b(1,isk)*vv
709 ply(iinf)%V(2,l)=ply(iinf)%V(2,l) - b(2,isk)*vv
710 ply(iinf)%V(3,l)=ply(iinf)%V(3,l) - b(3,isk)*vv
711C
712 a1 = ply(isup)%A(1,l)
713 a2 = ply(isup)%A(2,l)
714 a3 = ply(isup)%A(3,l)
715 v1 = ply(isup)%V(1,l)
716 v2 = ply(isup)%V(2,l)
717 v3 = ply(isup)%V(3,l)
718 aa =b(7,isk)*a1 + b(8,isk)*a2 + b(9,isk)*a3
719 vv =b(7,isk)*v1 + b(8,isk)*v2 + b(9,isk)*v3
720 ply(isup)%A(1,l)=ply(isup)%A(1,l) - b(7,isk)*aa
721 ply(isup)%A(2,l)=ply(isup)%A(2,l) - b(8,isk)*aa
722 ply(isup)%A(3,l)=ply(isup)%A(3,l) - b(9,isk)*aa
723 ply(isup)%V(1,l)=ply(isup)%V(1,l) - b(7,isk)*vv
724 ply(isup)%V(2,l)=ply(isup)%V(2,l) - b(8,isk)*vv
725 ply(isup)%V(3,l)=ply(isup)%V(3,l) - b(9,isk)*vv
726 aa =b(1,isk)*a1 + b(2,isk)*a2 + b(3,isk)*a3
727 vv =b(1,isk)*v1 + b(2,isk)*v2 + b(3,isk)*v3
728 ply(isup)%A(1,l)=ply(isup)%A(1,l) - b(1,isk)*aa
729 ply(isup)%A(2,l)=ply(isup)%A(2,l) - b(2,isk)*aa
730 ply(isup)%A(3,l)=ply(isup)%A(3,l) - b(3,isk)*aa
731 ply(isup)%V(1,l)=ply(isup)%V(1,l) - b(1,isk)*vv
732 ply(isup)%V(2,l)=ply(isup)%V(2,l) - b(2,isk)*vv
733 ply(isup)%V(3,l)=ply(isup)%V(3,l) - b(3,isk)*vv
734
735 ELSEIF(lcod == 6)THEN
736
737 a1 = ply(iinf)%A(1,l)
738 a2 = ply(iinf)%A(2,l)
739 a3 = ply(iinf)%A(3,l)
740 v1 = ply(iinf)%V(1,l)
741 v2 = ply(iinf)%V(2,l)
742 v3 = ply(iinf)%V(3,l)
743 aa =b(1,isk)*a1 + b(2,isk)*a2 + b(3,isk)*a3
744 vv =b(1,isk)*v1 + b(2,isk)*v2 + b(3,isk)*v3
745 ply(iinf)%A(1,l)=ply(iinf)%A(1,l) - b(1,isk)*aa
746 ply(iinf)%A(2,l)=ply(iinf)%A(2,l) - b(2,isk)*aa
747 ply(iinf)%A(3,l)=ply(iinf)%A(3,l) - b(3,isk)*aa
748 ply(iinf)%V(1,l)=ply(iinf)%V(1,l) - b(1,isk)*vv
749 ply(iinf)%V(2,l)=ply(iinf)%V(2,l) - b(2,isk)*vv
750 ply(iinf)%V(3,l)=ply(iinf)%V(3,l) - b(3,isk)*vv
751 aa =b(4,isk)*a1 + b(5,isk)*a2 + b(6,isk)*a3
752 vv =b(4,isk)*v1 + b(5,isk)*v2 + b(6,isk)*v3
753 ply(iinf)%A(1,l)=ply(iinf)%A(1,l)-b(4,isk)*aa
754 ply(iinf)%A(2,l)=ply(iinf)%A(2,l)-b(5,isk)*aa
755 ply(iinf)%A(3,l)=ply(iinf)%A(3,l)-b(6,isk)*aa
756 ply(iinf)%V(1,l)=ply(iinf)%V(1,l)-b(4,isk)*vv
757 ply(iinf)%V(2,l)=ply(iinf)%V(2,l)-b(5,isk)*vv
758 ply(iinf)%V(3,l)=ply(iinf)%V(3,l)-b(6,isk)*vv
759C
760 a1 = ply(isup)%A(1,l)
761 a2 = ply(isup)%A(2,l)
762 a3 = ply(isup)%A(3,l)
763 v1 = ply(isup)%V(1,l)
764 v2 = ply(isup)%V(2,l)
765 v3 = ply(isup)%V(3,l)
766 aa =b(1,isk)*a1 + b(2,isk)*a2 + b(3,isk)*a3
767 vv =b(1,isk)*v1 + b(2,isk)*v2 + b(3,isk)*v3
768 ply(isup)%A(1,l)=ply(isup)%A(1,l) - b(1,isk)*aa
769 ply(isup)%A(2,l)=ply(isup)%A(2,l) - b(2,isk)*aa
770 ply(isup)%A(3,l)=ply(isup)%A(3,l) - b(3,isk)*aa
771 ply(isup)%V(1,l)=ply(isup)%V(1,l) - b(1,isk)*vv
772 ply(isup)%V(2,l)=ply(isup)%V(2,l) - b(2,isk)*vv
773 ply(isup)%V(3,l)=ply(isup)%V(3,l) - b(3,isk)*vv
774 aa =b(4,isk)*a1 + b(5,isk)*a2 + b(6,isk)*a3
775 vv =b(4,isk)*v1 + b(5,isk)*v2 + b(6,isk)*v3
776 ply(isup)%A(1,l)=ply(isup)%A(1,l)-b(4,isk)*aa
777 ply(isup)%A(2,l)=ply(isup)%A(2,l)-b(5,isk)*aa
778 ply(isup)%A(3,l)=ply(isup)%A(3,l)-b(6,isk)*aa
779 ply(isup)%V(1,l)=ply(isup)%V(1,l)-b(4,isk)*vv
780 ply(isup)%V(2,l)=ply(isup)%V(2,l)-b(5,isk)*vv
781 ply(isup)%V(3,l)=ply(isup)%V(3,l)-b(6,isk)*vv
782 ELSEIF(lcod == 7)THEN
783
784 ply(iinf)%A(1,l)=zero
785 ply(iinf)%A(2,l)=zero
786 ply(iinf)%A(3,l)=zero
787 ply(iinf)%V(1,l)=zero
788 ply(iinf)%V(2,l)=zero
789 ply(iinf)%V(3,l)=zero
790C
791 ply(isup)%A(1,l)=zero
792 ply(isup)%A(2,l)=zero
793 ply(isup)%A(3,l)=zero
794 ply(isup)%V(1,l)=zero
795 ply(isup)%V(2,l)=zero
796 ply(isup)%V(3,l)=zero
797 ENDIF ! lcod
798C sup
799 ELSEIF(ibc == 1) THEn
800
801 IF(lcod == 1)THEN
802C
803 a1 = ply(isup)%A(1,l)
804 a2 = ply(isup)%A(2,l)
805 a3 = ply(isup)%A(3,l)
806 v1 = ply(isup)%V(1,l)
807 v2 = ply(isup)%V(2,l)
808 v3 = ply(isup)%V(3,l)
809 aa =b(7,isk)*a1 + b(8,isk)*a2 + b(9,isk)*a3
810 vv =b(7,isk)*v1 + b(8,isk)*v2 + b(9,isk)*v3
811 ply(isup)%A(1,l) = ply(isup)%A(1,l) - b(7,isk)*aa
812 ply(isup)%A(2,l) = ply(isup)%A(2,l) - b(8,isk)*aa
813 ply(isup)%A(3,l) = ply(isup)%A(3,l) - b(9,isk)*aa
814 ply(isup)%V(1,l) = ply(isup)%V(1,l) - b(7,isk)*vv
815 ply(isup)%V(2,l) = ply(isup)%V(2,l) - b(8,isk)*vv
816 ply(isup)%V(3,l) = ply(isup)%V(3,l) - b(9,isk)*vv
817 ELSEIF(lcod == 2)THEN
818C
819 a1 = ply(isup)%A(1,l)
820 a2 = ply(isup)%A(2,l)
821 a3 = ply(isup)%A(3,l)
822 v1 = ply(isup)%V(1,l)
823 v2 = ply(isup)%V(2,l)
824 v3 = ply(isup)%V(3,l)
825 aa =b(4,isk)*a1 + b(5,isk)*a2 + b(6,isk)*a3
826 vv =b(4,isk)*v1 + b(5,isk)*v2 + b(6,isk)*v3
827 ply(isup)%A(1,l)=ply(isup)%A(1,l) - b(4,isk)*aa
828 ply(isup)%A(2,l)=ply(isup)%A(2,l) - b(5,isk)*aa
829 ply(isup)%A(3,l)=ply(isup)%A(3,l) - b(6,isk)*aa
830 ply(isup)%V(1,l)=ply(isup)%V(1,l) - b(4,isk)*vv
831 ply(isup)%V(2,l)=ply(isup)%V(2,l) - b(5,isk)*vv
832 ply(isup)%V(3,l)=ply(isup)%V(3,l) - b(6,isk)*vv
833 ELSEIF(lcod == 3)THEN
834 a1 = ply(isup)%A(1,l)
835 a2 = ply(isup)%A(2,l)
836 a3 = ply(isup)%A(3,l)
837 v1 = ply(isup)%V(1,l)
838 v2 = ply(isup)%V(2,l)
839 v3 = ply(isup)%V(3,l)
840 aa =b(7,isk)*a1 + b(8,isk)*a2 + b(9,isk)*a3
841 vv =b(7,isk)*v1 + b(8,isk)*v2 + b(9,isk)*v3
842
843 ply(isup)%A(1,l)=ply(isup)%A(1,l) - b(7,isk)*aa
844 ply(isup)%A(2,l)=ply(isup)%A(2,l) - b(8,isk)*aa
845 ply(isup)%A(3,l)=ply(isup)%A(3,l) - b(9,isk)*aa
846 ply(isup)%V(1,l)=ply(isup)%V(1,l) - b(7,isk)*vv
847 ply(isup)%V(2,l)=ply(isup)%V(2,l) - b(8,isk)*vv
848 ply(isup)%V(3,l)=ply(isup)%V(3,l) - b(9,isk)*vv
849
850 aa =b(4,isk)*a1 + b(5,isk)*a2 + b(6,isk)*a3
851 vv =b(4,isk)*v1 + b(5,isk)*v2 + b(6,isk)*v3
852
853 ply(isup)%A(1,l)=ply(isup)%A(1,l) - b(4,isk)*aa
854 ply(isup)%A(2,l)=ply(isup)%A(2,l) - b(5,isk)*aa
855 ply(isup)%A(3,l)=ply(isup)%A(3,l) - b(6,isk)*aa
856 ply(isup)%V(1,l)=ply(isup)%V(1,l) - b(4,isk)*vv
857 ply(isup)%V(2,l)=ply(isup)%V(2,l) - b(5,isk)*vv
858 ply(isup)%V(3,l)=ply(isup)%V(3,l) - b(6,isk)*vv
859
860 ELSEIF(lcod == 4)THEN
861 a1 = ply(isup)%A(1,l)
862 a2 = ply(isup)%A(2,l)
863 a3 = ply(isup)%A(3,l)
864 v1 = ply(isup)%V(1,l)
865 v2 = ply(isup)%V(2,l)
866 v3 = ply(isup)%V(3,l)
867
868 aa =b(1,isk)*a1 + b(2,isk)*a2 + b(3,isk)*a3
869 vv =b(1,isk)*v1 + b(2,isk)*v2 + b(3,isk)*v3
870 ply(isup)%A(1,l)=ply(isup)%A(1,l) - b(1,isk)*aa
871 ply(isup)%A(2,l)=ply(isup)%A(2,l) - b(2,isk)*aa
872 ply(isup)%A(3,l)=ply(isup)%A(3,l) - b(3,isk)*aa
873 ply(isup)%V(1,l)=ply(isup)%V(1,l) - b(1,isk)*vv
874 ply(isup)%V(2,l)=ply(isup)%V(2,l) - b(2,isk)*vv
875 ply(isup)%V(3,l)=ply(isup)%V(3,l) - b(3,isk)*vv
876 ELSEIF(lcod == 5)THEN
877C
878 a1 = ply(isup)%A(1,l)
879 a2 = ply(isup)%A(2,l)
880 a3 = ply(isup)%A(3,l)
881 v1 = ply(isup)%V(1,l)
882 v2 = ply(isup)%V(2,l)
883 v3 = ply(isup)%V(3,l)
884
885 aa =b(1,isk)*a1 + b(2,isk)*a2 + b(3,isk)*a3
886 vv =b(1,isk)*v1 + b(2,isk)*v2 + b(3,isk)*v3
887 ply(isup)%A(1,l)=ply(isup)%A(1,l) - b(1,isk)*aa
888 ply(isup)%A(2,l)=ply(isup)%A(2,l) - b(2,isk)*aa
889 ply(isup)%A(3,l)=ply(isup)%A(3,l) - b(3,isk)*aa
890 ply(isup)%V(1,l)=ply(isup)%V(1,l) - b(1,isk)*vv
891 ply(isup)%V(2,l)=ply(isup)%V(2,l) - b(2,isk)*vv
892 ply(isup)%V(3,l)=ply(isup)%V(3,l) - b(3,isk)*vv
893 ELSEIF(lcod == 6)THEN
894C
895 a1 = ply(isup)%A(1,l)
896 a2 = ply(isup)%A(2,l)
897 a3 = ply(isup)%A(3,l)
898 v1 = ply(isup)%V(1,l)
899 v2 = ply(isup)%V(2,l)
900 v3 = ply(isup)%V(3,l)
901 aa =b(1,isk)*a1 + b(2,isk)*a2 + b(3,isk)*a3
902 vv =b(1,isk)*v1 + b(2,isk)*v2 + b(3,isk)*v3
903 ply(isup)%A(1,l)=ply(isup)%A(1,l) - b(1,isk)*aa
904 ply(isup)%A(2,l)=ply(isup)%A(2,l) - b(2,isk)*aa
905 ply(isup)%A(3,l)=ply(isup)%A(3,l) - b(3,isk)*aa
906 ply(isup)%V(1,l)=ply(isup)%V(1,l) - b(1,isk)*vv
907 ply(isup)%V(2,l)=ply(isup)%V(2,l) - b(2,isk)*vv
908 ply(isup)%V(3,l)=ply(isup)%V(3,l) - b(3,isk)*vv
909 aa =b(4,isk)*a1 + b(5,isk)*a2 + b(6,isk)*a3
910 vv =b(4,isk)*v1 + b(5,isk)*v2 + b(6,isk)*v3
911 ply(isup)%A(1,l)=ply(isup)%A(1,l)-b(4,isk)*aa
912 ply(isup)%A(2,l)=ply(isup)%A(2,l)-b(5,isk)*aa
913 ply(isup)%A(3,l)=ply(isup)%A(3,l)-b(6,isk)*aa
914 ply(isup)%V(1,l)=ply(isup)%V(1,l)-b(4,isk)*vv
915 ply(isup)%V(2,l)=ply(isup)%V(2,l)-b(5,isk)*vv
916 ply(isup)%V(3,l)=ply(isup)%V(3,l)-b(6,isk)*vv
917 ELSEIF(lcod == 7)THEN
918C
919 ply(isup)%A(1,l)=zero
920 ply(isup)%A(2,l)=zero
921 ply(isup)%A(3,l)=zero
922 ply(isup)%V(1,l)=zero
923 ply(isup)%V(2,l)=zero
924 ply(isup)%V(3,l)=zero
925 ENDIF ! lcod
926C inf
927 ELSE
928 IF(lcod == 1)THEN
929
930 a1 = ply(iinf)%A(1,l)
931 a2 = ply(iinf)%A(2,l)
932 a3 = ply(iinf)%A(3,l)
933 v1 = ply(iinf)%V(1,l)
934 v2 = ply(iinf)%V(2,l)
935 v3 = ply(iinf)%V(3,l)
936 aa =b(7,isk)*a1 + b(8,isk)*a2 + b(9,isk)*a3
937 vv =b(7,isk)*v1 + b(8,isk)*v2 + b(9,isk)*v3
938 ply(iinf)%A(1,l) = ply(iinf)%A(1,l) - b(7,isk)*aa
939 ply(iinf)%A(2,l) = ply(iinf)%A(2,l) - b(8,isk)*aa
940 ply(iinf)%A(3,l) = ply(iinf)%A(3,l) - b(9,isk)*aa
941 ply(iinf)%V(1,l) = ply(iinf)%V(1,l) - b(7,isk)*vv
942 ply(iinf)%V(2,l) = ply(iinf)%V(2,l) - b(8,isk)*vv
943 ply(iinf)%V(3,l) = ply(iinf)%V(3,l) - b(9,isk)*vv
944 ELSEIF(lcod == 2)THEN
945 a1 = ply(iinf)%A(1,l)
946 a2 = ply(iinf)%A(2,l)
947 a3 = ply(iinf)%A(3,l)
948 v1 = ply(iinf)%V(1,l)
949 v2 = ply(iinf)%V(2,l)
950 v3 = ply(iinf)%V(3,l)
951 aa =b(4,isk)*a1 + b(5,isk)*a2 + b(6,isk)*a3
952 vv =b(4,isk)*v1 + b(5,isk)*v2 + b(6,isk)*v3
953 ply(iinf)%A(1,l)=ply(iinf)%A(1,l) - b(4,isk)*aa
954 ply(iinf)%A(2,l)=ply(iinf)%A(2,l) - b(5,isk)*aa
955 ply(iinf)%A(3,l)=ply(iinf)%A(3,l) - b(6,isk)*aa
956 ply(iinf)%V(1,l)=ply(iinf)%V(1,l) - b(4,isk)*vv
957 ply(iinf)%V(2,l)=ply(iinf)%V(2,l) - b(5,isk)*vv
958 ply(iinf)%V(3,l)=ply(iinf)%V(3,l) - b(6,isk)*vv
959C
960 ELSEIF(lcod == 3)THEN
961
962 a1 = ply(iinf)%A(1,l)
963 a2 = ply(iinf)%A(2,l)
964 a3 = ply(iinf)%A(3,l)
965 v1 = ply(iinf)%V(1,l)
966 v2 = ply(iinf)%V(2,l)
967 v3 = ply(iinf)%V(3,l)
968 aa =b(7,isk)*a1 + b(8,isk)*a2 + b(9,isk)*a3
969 vv =b(7,isk)*v1 + b(8,isk)*v2 + b(9,isk)*v3
970
971 ply(iinf)%A(1,l)=ply(iinf)%A(1,l) - b(7,isk)*aa
972 ply(iinf)%A(2,l)=ply(iinf)%A(2,l) - b(8,isk)*aa
973 ply(iinf)%A(3,l)=ply(iinf)%A(3,l) - b(9,isk)*aa
974 ply(iinf)%V(1,l)=ply(iinf)%V(1,l) - b(7,isk)*vv
975 ply(iinf)%V(2,l)=ply(iinf)%V(2,l) - b(8,isk)*vv
976 ply(iinf)%V(3,l)=ply(iinf)%V(3,l) - b(9,isk)*vv
977
978 aa =b(4,isk)*a1 + b(5,isk)*a2 + b(6,isk)*a3
979 vv =b(4,isk)*v1 + b(5,isk)*v2 + b(6,isk)*v3
980
981 ply(iinf)%A(1,l)=ply(iinf)%A(1,l) - b(4,isk)*aa
982 ply(iinf)%A(2,l)=ply(iinf)%A(2,l) - b(5,isk)*aa
983 ply(iinf)%A(3,l)=ply(iinf)%A(3,l) - b(6,isk)*aa
984 ply(iinf)%V(1,l)=ply(iinf)%V(1,l) - b(4,isk)*vv
985 ply(iinf)%V(2,l)=ply(iinf)%V(2,l) - b(5,isk)*vv
986 ply(iinf)%V(3,l)=ply(iinf)%V(3,l) - b(6,isk)*vv
987C
988 ELSEIF(lcod == 4)THEN
989 a1 = ply(iinf)%A(1,l)
990 a2 = ply(iinf)%A(2,l)
991 a3 = ply(iinf)%A(3,l)
992 v1 = ply(iinf)%V(1,l)
993 v2 = ply(iinf)%V(2,l)
994 v3 = ply(iinf)%V(3,l)
995
996 aa =b(1,isk)*a1 + b(2,isk)*a2 + b(3,isk)*a3
997 vv =b(1,isk)*v1 + b(2,isk)*v2 + b(3,isk)*v3
998 ply(iinf)%A(1,l)=ply(iinf)%A(1,l) - b(1,isk)*aa
999 ply(iinf)%A(2,l)=ply(iinf)%A(2,l) - b(2,isk)*aa
1000 ply(iinf)%A(3,l)=ply(iinf)%A(3,l) - b(3,isk)*aa
1001 ply(iinf)%V(1,l)=ply(iinf)%V(1,l) - b(1,isk)*vv
1002 ply(iinf)%V(2,l)=ply(iinf)%V(2,l) - b(2,isk)*vv
1003 ply(iinf)%V(3,l)=ply(iinf)%V(3,l) - b(3,isk)*vv
1004 ELSEIF(lcod == 5)THEN
1005 a1 = ply(iinf)%A(1,l)
1006 a2 = ply(iinf)%A(2,l)
1007 a3 = ply(iinf)%A(3,l)
1008 v1 = ply(iinf)%V(1,l)
1009 v2 = ply(iinf)%V(2,l)
1010 v3 = ply(iinf)%V(3,l)
1011 aa =b(7,isk)*a1 + b(8,isk)*a2 + b(9,isk)*a3
1012 vv =b(7,isk)*v1 + b(8,isk)*v2 + b(9,isk)*v3
1013 ply(iinf)%A(1,l)=ply(iinf)%A(1,l) - b(7,isk)*aa
1014 ply(iinf)%A(2,l)=ply(iinf)%A(2,l) - b(8,isk)*aa
1015 ply(iinf)%A(3,l)=ply(iinf)%A(3,l) - b(9,isk)*aa
1016 ply(iinf)%V(1,l)=ply(iinf)%V(1,l) - b(7,isk)*vv
1017 ply(iinf)%V(2,l)=ply(iinf)%V(2,l) - b(8,isk)*vv
1018 ply(iinf)%V(3,l)=ply(iinf)%V(3,l) - b(9,isk)*vv
1019 aa =b(1,isk)*a1 + b(2,isk)*a2 + b(3,isk)*a3
1020 vv =b(1,isk)*v1 + b(2,isk)*v2 + b(3,isk)*v3
1021 ply(iinf)%A(1,l)=ply(iinf)%A(1,l) - b(1,isk)*aa
1022 ply(iinf)%A(2,l)=ply(iinf)%A(2,l) - b(2,isk)*aa
1023 ply(iinf)%A(3,l)=ply(iinf)%A(3,l) - b(3,isk)*aa
1024 ply(iinf)%V(1,l)=ply(iinf)%V(1,l) - b(1,isk)*vv
1025 ply(iinf)%V(2,l)=ply(iinf)%V(2,l) - b(2,isk)*vv
1026 ply(iinf)%V(3,l)=ply(iinf)%V(3,l) - b(3,isk)*vv
1027 ELSEIF(lcod == 6)THEN
1028
1029 a1 = ply(iinf)%A(1,l)
1030 a2 = ply(iinf)%A(2,l)
1031 a3 = ply(iinf)%A(3,l)
1032 v1 = ply(iinf)%V(1,l)
1033 v2 = ply(iinf)%V(2,l)
1034 v3 = ply(iinf)%V(3,l)
1035 aa =b(1,isk)*a1 + b(2,isk)*a2 + b(3,isk)*a3
1036 vv =b(1,isk)*v1 + b(2,isk)*v2 + b(3,isk)*v3
1037 ply(iinf)%A(1,l)=ply(iinf)%A(1,l) - b(1,isk)*aa
1038 ply(iinf)%A(2,l)=ply(iinf)%A(2,l) - b(2,isk)*aa
1039 ply(iinf)%A(3,l)=ply(iinf)%A(3,l) - b(3,isk)*aa
1040 ply(iinf)%V(1,l)=ply(iinf)%V(1,l) - b(1,isk)*vv
1041 ply(iinf)%V(2,l)=ply(iinf)%V(2,l) - b(2,isk)*vv
1042 ply(iinf)%V(3,l)=ply(iinf)%V(3,l) - b(3,isk)*vv
1043 aa =b(4,isk)*a1 + b(5,isk)*a2 + b(6,isk)*a3
1044 vv =b(4,isk)*v1 + b(5,isk)*v2 + b(6,isk)*v3
1045 ply(iinf)%A(1,l)=ply(iinf)%A(1,l)-b(4,isk)*aa
1046 ply(iinf)%A(2,l)=ply(iinf)%A(2,l)-b(5,isk)*aa
1047 ply(iinf)%A(3,l)=ply(iinf)%A(3,l)-b(6,isk)*aa
1048 ply(iinf)%V(1,l)=ply(iinf)%V(1,l)-b(4,isk)*vv
1049 ply(iinf)%V(2,l)=ply(iinf)%V(2,l)-b(5,isk)*vv
1050 ply(iinf)%V(3,l)=ply(iinf)%V(3,l)-b(6,isk)*vv
1051C
1052 ELSEIF(lcod == 7)THEN
1053
1054 ply(iinf)%A(1,l)=zero
1055 ply(iinf)%A(2,l)=zero
1056 ply(iinf)%A(3,l)=zero
1057 ply(iinf)%V(1,l)=zero
1058 ply(iinf)%V(2,l)=zero
1059 ply(iinf)%V(3,l)=zero
1060 ENDIF ! lcod
1061 ENDIF
1062C
1063 END IF ! iskew
1064 ENDIF ! ibc
1065 ENDDO
1066C
1067 RETURN
1068 END
#define my_real
Definition cppsort.cpp:32
#define min(a, b)
Definition macros.h:20
type(ply_data), dimension(:), allocatable ply
Definition plyxfem_mod.F:91
subroutine ply_bcs1v(nindx, indx, inod, iskew, icodt, b, ms_ply, ibc_ply)
Definition ply_bcs.F:79
subroutine ply_bcs(nodft, nodlt, icodt, iskew, skew, inod, ms_ply, ibc_ply)
Definition ply_bcs.F:32