OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
c3defo3.F File Reference
#include "implicit_f.inc"
#include "mvsiz_p.inc"
#include "com08_c.inc"
#include "impl1_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine c3defo3 (jft, jlt, vl1, vl2, vl3, ixtg, ish3n, px1, py1, py2, exx, eyy, exy, eyz, ezx, vx13, vx23, vy12, e1x, e1y, e1z, e2x, e2y, e2z, e3x, e3y, e3z)
subroutine c3brz3 (jft, jlt, area, x2, x3, y3, bm0rz, b0rz, bkrz, berz)
subroutine c3defrz (jft, jlt, rlz, bm0rz, b0rz, bkrz, berz, e3x, e3y, e3z, vrl1, vrl2, vrl3, exx, eyy, exy, px1, py1, py2, wxy, area, vx13, vx23, vy12)
subroutine c3derirz (jft, jlt, area, x2, x3, y2, y3, bmrz, b0rz, bkrz, berz)
subroutine c3bm0rz (jft, jlt, bmrz, bm0rz, bmkrz, bmerz)
subroutine c3deft3 (jft, jlt, x2, y2, x3, y3, v21x, v21y, v31x, v31y, bm0rz, rz13, rz23, area, vdef, idril)

Function/Subroutine Documentation

◆ c3bm0rz()

subroutine c3bm0rz ( integer jft,
integer jlt,
bmrz,
bm0rz,
bmkrz,
bmerz )

Definition at line 410 of file c3defo3.F.

411C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
412#include "implicit_f.inc"
413#include "mvsiz_p.inc"
414C-----------------------------------------------
415C D U M M Y A R G U M E N T S
416C-----------------------------------------------
417 INTEGER JFT,JLT
418 my_real
419 . bmrz(mvsiz,3,2),bm0rz(mvsiz,4,2),bmkrz(mvsiz,4,3),
420 . bmerz(mvsiz,4,3)
421C-----------------------------------------------
422C L O C A L V A R I A B L E S
423C-----------------------------------------------
424 INTEGER I ,J
425 my_real
426 . scal
427C-------crrection to pass patch test
428 bmrz(jft:jlt,1:3,1:2)=zero
429 RETURN
430C------- moyen ksi,eta=0.5 for BMRZ(,J,I)
431c SCAL=HALF
432C------- moyen volume (analytical integration)
433 scal=one_over_6
434 DO j=1,2
435 DO i=jft,jlt
436 bmrz(i,1,j)=bm0rz(i,1,j)+scal*(bmkrz(i,1,j)+bmerz(i,1,j))
437 bmrz(i,2,j)=bm0rz(i,2,j)+scal*(bmkrz(i,2,j)+bmerz(i,2,j))
438 bmrz(i,3,j)=bm0rz(i,3,j)+scal*(bmkrz(i,3,j)+bmerz(i,3,j))
439 ENDDO
440 ENDDO
441C
442 RETURN
#define my_real
Definition cppsort.cpp:32

◆ c3brz3()

subroutine c3brz3 ( integer jft,
integer jlt,
area,
x2,
x3,
y3,
bm0rz,
b0rz,
bkrz,
berz )

Definition at line 141 of file c3defo3.F.

143C-----------------------------------------------
144C C o m m o n B l o c k s
145C-----------------------------------------------
146#include "implicit_f.inc"
147#include "mvsiz_p.inc"
148C-----------------------------------------------
149C D U M M Y A R G U M E N T S
150C-----------------------------------------------
151 INTEGER JFT,JLT
152 my_real area(*), x2(mvsiz), x3(mvsiz), y3(mvsiz),
153 . bm0rz(mvsiz,3,2),b0rz(mvsiz,3),bkrz(mvsiz,2),berz(mvsiz,2)
154C=======================================================================
155c FUNCTION: [B] Matrix :derivation of Alman shape function for Tria
156c
157c Note:
158c ARGUMENTS: (I: input, O: output, IO: input * output, W: workspace)
159c
160c TYPE NAME FUNCTION
161c I JFT,JLT - element id limit
162c I AREA(NEL) - element area A
163c O BM0RZ(I,J,NEL) - constant terms of derivations for membrane
164C I=1:A*Nx,x;I=2:A*Ny,y;I=3:A*(Nx,y+Ny,x); J=1,2(node)
165C only store J=1,2 as f(j=3)=-f(j=1)-f(j=2)
166C O B0RZ(J,NEL) A*(-Nx,y+Ny,x -2Ni) for asymmetric rotation
167c O BKRZ(J,NEL) - Ksi terms of derivation : A*(-Nx,y+Ny,x -2Ni)
168c O BERZ(J,NEL) - Eta terms of derivation : A*(-Nx,y+Ny,x -2Ni)
169C-----------------------------------------------
170C L O C A L V A R I A B L E S
171C-----------------------------------------------
172 my_real y2(mvsiz)
173C=======================================================================
174 y2(jft:jlt)=zero
175 CALL c3derirz(jft ,jlt ,area ,x2 ,x3 ,
176 . y2 ,y3 ,bm0rz,b0rz ,bkrz ,
177 . berz )
178c-----------
179 RETURN
subroutine c3derirz(jft, jlt, area, x2, x3, y2, y3, bmrz, b0rz, bkrz, berz)
Definition c3defo3.F:269
subroutine area(d1, x, x2, y, y2, eint, stif0)

◆ c3defo3()

subroutine c3defo3 ( integer jft,
integer jlt,
vl1,
vl2,
vl3,
integer, dimension(nixtg,*) ixtg,
integer ish3n,
px1,
py1,
py2,
exx,
eyy,
exy,
eyz,
ezx,
vx13,
vx23,
vy12,
e1x,
e1y,
e1z,
e2x,
e2y,
e2z,
e3x,
e3y,
e3z )

Definition at line 31 of file c3defo3.F.

37 use element_mod , only : nixtg
38C-----------------------------------------------
39C I m p l i c i t T y p e s
40C-----------------------------------------------
41#include "implicit_f.inc"
42C-----------------------------------------------
43C G l o b a l P a r a m e t e r s
44C-----------------------------------------------
45#include "mvsiz_p.inc"
46C-----------------------------------------------
47C C o m m o n B l o c k s
48C-----------------------------------------------
49#include "com08_c.inc"
50#include "impl1_c.inc"
51C-----------------------------------------------
52C D u m m y A r g u m e n t s
53C-----------------------------------------------
54 INTEGER JFT, JLT,IXTG(NIXTG,*), ISH3N
55 my_real vl1(mvsiz,3),vl2(mvsiz,3),vl3(mvsiz,3),
56 . exx(mvsiz), eyy(mvsiz), exy(mvsiz), eyz(mvsiz),ezx(mvsiz),
57 . e1x(mvsiz), e1y(mvsiz), e1z(mvsiz),
58 . e2x(mvsiz), e2y(mvsiz), e2z(mvsiz),
59 . e3x(mvsiz), e3y(mvsiz), e3z(mvsiz),
60 . px1(mvsiz), py1(mvsiz), py2(mvsiz), vx13(mvsiz), vx23(mvsiz),
61 . vy12(mvsiz)
62C-----------------------------------------------
63C L o c a l V a r i a b l e s
64C-----------------------------------------------
65 INTEGER I
67 . vx1(mvsiz), vx2(mvsiz), vx3(mvsiz),
68 . vy1(mvsiz), vy2(mvsiz), vy3(mvsiz),
69 . vz1(mvsiz), vz2(mvsiz), vz3(mvsiz),
70 . vx12(mvsiz), vy13(mvsiz), vy23(mvsiz),
71 . vz12(mvsiz), vz13(mvsiz), vz23(mvsiz)
72 my_real dt1v4b,tmp11,tmp22,vx10,vx20,vx30,dt1v4,tmp1,tmp2
73C=======================================================================
74C
75 DO i=jft,jlt
76 vx1(i)=e1x(i)*vl1(i,1)+e1y(i)*vl1(i,2)+e1z(i)*vl1(i,3)
77 vx2(i)=e1x(i)*vl2(i,1)+e1y(i)*vl2(i,2)+e1z(i)*vl2(i,3)
78 vx3(i)=e1x(i)*vl3(i,1)+e1y(i)*vl3(i,2)+e1z(i)*vl3(i,3)
79C
80 vy3(i)=e2x(i)*vl3(i,1)+e2y(i)*vl3(i,2)+e2z(i)*vl3(i,3)
81 vy2(i)=e2x(i)*vl2(i,1)+e2y(i)*vl2(i,2)+e2z(i)*vl2(i,3)
82 vy1(i)=e2x(i)*vl1(i,1)+e2y(i)*vl1(i,2)+e2z(i)*vl1(i,3)
83C
84 vz1(i)=e3x(i)*vl1(i,1)+e3y(i)*vl1(i,2)+e3z(i)*vl1(i,3)
85 vz2(i)=e3x(i)*vl2(i,1)+e3y(i)*vl2(i,2)+e3z(i)*vl2(i,3)
86 vz3(i)=e3x(i)*vl3(i,1)+e3y(i)*vl3(i,2)+e3z(i)*vl3(i,3)
87 ENDDO
88c
89 dt1v4 = fourth*dt1
90 IF (impl_s > 0 .AND. imp_lr == 0 ) dt1v4=zero
91 dt1v4b= dt1v4
92 IF(ish3n < 2) dt1v4b=zero
93C
94 DO 40 i=jft,jlt
95 vz12(i)=vz1(i) - vz2(i)
96 vz13(i)=vz1(i) - vz3(i)
97 vz23(i)=vz2(i) - vz3(i)
98C
99 tmp1 = dt1v4 * vz12(i) / (py1(i)+py2(i))
100 tmp2 = (py1(i) * vz1(i) + py2(i) * vz2(i)) / (py1(i)+py2(i))
101 tmp2 = dt1v4 * (tmp2 - vz3(i)) / px1(i)
102 vy12(i)=vy1(i) - vy2(i)
103 tmp11 = dt1v4b * vy12(i) / (py1(i)+py2(i))
104 tmp22 = (py1(i) * vx1(i) + py2(i) * vx2(i)) / (py1(i)+py2(i))
105 tmp22 = dt1v4b * (tmp22 - vx3(i)) / px1(i)
106 vx10 = vx1(i)
107 vx20 = vx2(i)
108 vx30 = vx3(i)
109 vx1(i) = vx1(i) - vz1(i) * tmp1 - vy1(i) * tmp11
110 vx2(i) = vx2(i) - vz2(i) * tmp1 - vy2(i) * tmp11
111 vx3(i) = vx3(i) - vz3(i) * tmp1 - vy3(i) * tmp11
112 vy1(i) = vy1(i) - vz1(i) * tmp2 - vx10 * tmp22
113 vy2(i) = vy2(i) - vz2(i) * tmp2 - vx20 * tmp22
114 vy3(i) = vy3(i) - vz3(i) * tmp2 - vx30 * tmp22
115C
116 vx12(i)=vx1(i) - vx2(i)
117 vy12(i)=vy1(i) - vy2(i)
118 vx13(i)=vx1(i) - vx3(i)
119 vy13(i)=vy1(i) - vy3(i)
120 vx23(i)=vx2(i) - vx3(i)
121 vy23(i)=vy2(i) - vy3(i)
122C
123 exx(i)=px1(i)*vx12(i)
124 eyy(i)=py1(i)*vy13(i) + py2(i)*vy23(i)
125C
126 exy(i)=py1(i)*vx13(i) + py2(i)*vx23(i) + px1(i)*vy12(i)
127 eyz(i)=py1(i)*vz13(i) + py2(i)*vz23(i)
128 ezx(i)=px1(i)*vz12(i)
129 40 CONTINUE
130C-----------
131 RETURN

◆ c3defrz()

subroutine c3defrz ( integer jft,
integer jlt,
rlz,
bm0rz,
b0rz,
bkrz,
berz,
e3x,
e3y,
e3z,
vrl1,
vrl2,
vrl3,
exx,
eyy,
exy,
px1,
py1,
py2,
wxy,
area,
vx13,
vx23,
vy12 )

Definition at line 187 of file c3defo3.F.

192C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
193#include "implicit_f.inc"
194#include "mvsiz_p.inc"
195C-----------------------------------------------
196C D U M M Y A R G U M E N T S
197C-----------------------------------------------
198 INTEGER JFT,JLT
199 my_real
200 . area(*),rlz(mvsiz,3),vx13(mvsiz), vx23(mvsiz),vy12(mvsiz),
201 . vrl1(mvsiz,3), vrl2(mvsiz,3), vrl3(mvsiz,3),
202 . e3x(mvsiz), e3y(mvsiz),e3z(mvsiz), exx(*),eyy(*),exy(*),
203 . bm0rz(mvsiz,3,2),b0rz(mvsiz,3),bkrz(mvsiz,2),berz(mvsiz,2),wxy(*),
204 . px1(*),py1(*),py2(*)
205C=======================================================================
206c FUNCTION: strains relative to the drilling dof for Tria
207c
208c Note:
209c ARGUMENTS: (I: input, O: output, IO: input * output, W: workspace)
210c
211c TYPE NAME FUNCTION
212c I JFT,JLT - element id limit
213c I AREA(NEL) - element area A
214c I E3X,E3Y,E3Z(NEL) - normal vector of Tria
215c I VRL1,VRL2,VRL3(NEL,J)nodal rotation velocity in global system
216C I PX1,PY1,PX2=-PX1,PY2(NEL): standard [B] of Tria
217c O RLZ(J,NEL) - nodal Rz rotation velocity (J=1-3)
218c O BM0RZ(I,J,NEL) - constant terms of derivations for membrane
219C I=1:A*Nx,x;I=2:A*Ny,y;I=3:A*(Nx,y+Ny,x); J=1,2(node)
220C only store J=1,2 as f(j=3)=-f(j=1)-f(j=2)
221C O B0RZ(J,NEL) A*(-Nx,y+Ny,x -2Ni) for asymmetric rotation
222c O BKRZ(J,NEL) - Ksi terms of derivation : A*(-Nx,y+Ny,x -2Ni)
223c O BERZ(J,NEL) - Eta terms of derivation : A*(-Nx,y+Ny,x -2Ni)
224c O WXY(NEL) - asymmetric strain : 0.5*(-NxJ,y*VxJ+NyJ,x*VyJ)
225c IO EXX,EYY,EXY(NEL)- membrance strains
226C-----------------------------------------------
227C L O C A L V A R I A B L E S
228C-----------------------------------------------
229 INTEGER I
230 my_real
231 . bxv2,byv1,a05,rz13(mvsiz), rz23(mvsiz)
232C-----------------------------------------------
233 DO i=jft,jlt
234 rlz(i,1)=e3x(i)*vrl1(i,1)+e3y(i)*vrl1(i,2)+e3z(i)*vrl1(i,3)
235 rlz(i,2)=e3x(i)*vrl2(i,1)+e3y(i)*vrl2(i,2)+e3z(i)*vrl2(i,3)
236 rlz(i,3)=e3x(i)*vrl3(i,1)+e3y(i)*vrl3(i,2)+e3z(i)*vrl3(i,3)
237 rz13(i)=rlz(i,1)-rlz(i,3)
238 rz23(i)=rlz(i,2)-rlz(i,3)
239 END DO
240C---------------
241C MEMBRANE CONSTANT
242C---------------
243 DO i=jft,jlt
244 exx(i)=exx(i)+bm0rz(i,1,1)*rz13(i)+bm0rz(i,1,2)*rz23(i)
245 eyy(i)=eyy(i)+bm0rz(i,2,1)*rz13(i)+bm0rz(i,2,2)*rz23(i)
246 exy(i)=exy(i)+bm0rz(i,3,1)*rz13(i)+bm0rz(i,3,2)*rz23(i)
247 ENDDO
248C--------NxI,x *A------pay attention Bi*A--- RLZ: VRZ--
249 DO i=jft,jlt
250 byv1= py1(i)*vx13(i) + py2(i)*vx23(i)
251 bxv2= px1(i)*vy12(i)
252 a05=half/area(i)
253 wxy(i)=(-byv1+bxv2)*a05
254 ENDDO
255C
256 RETURN

◆ c3deft3()

subroutine c3deft3 ( integer jft,
integer jlt,
x2,
y2,
x3,
y3,
v21x,
v21y,
v31x,
v31y,
bm0rz,
rz13,
rz23,
area,
vdef,
integer idril )

Definition at line 449 of file c3defo3.F.

451C-----------------------------------------------
452C I m p l i c i t T y p e s
453C-----------------------------------------------
454#include "implicit_f.inc"
455C-----------------------------------------------
456C G l o b a l P a r a m e t e r s
457C-----------------------------------------------
458#include "mvsiz_p.inc"
459C-----------------------------------------------
460C D u m m y A r g u m e n t s
461C-----------------------------------------------
462 INTEGER JFT, JLT,IDRIL
463 my_real
464 . x2(*),y2(*),x3(*),y3(*),v21x(*),v21y(*),v31x(*),v31y(*),
465 . bm0rz(mvsiz,4,2),rz13(*),rz23(*),area(*),vdef(mvsiz,8)
466C-----------------------------------------------
467C L o c a l V a r i a b l e s
468C-----------------------------------------------
469 INTEGER I
470C REAL
471 my_real
472 . px2(mvsiz), py2(mvsiz), px3(mvsiz), py3(mvsiz) ,areai
473C-----------------------------------------------
474C-------------anticipe for system change (later)
475 DO i=jft,jlt
476 areai=half/max(em20,area(i))
477 px2(i)=y3(i)*areai
478 py2(i)=-x3(i)*areai
479 px3(i)=-y2(i)*areai
480 py3(i)=x2(i)*areai
481 ENDDO
482 DO i=jft,jlt
483 vdef(i,1)=px2(i)*v21x(i)+px3(i)*v31x(i)
484 vdef(i,2)=py2(i)*v21y(i)+py3(i)*v31y(i)
485 vdef(i,3)=py2(i)*v21x(i)+py3(i)*v31x(i)
486 vdef(i,4)=px2(i)*v21y(i)+px3(i)*v31y(i)
487 END DO
488C---------after the patch, as explicit, EMRZ=0
489c IF (IDRIL>0) THEN
490c DO I=JFT,JLT
491c VDEF(1,I)=VDEF(1,I)+BM0RZ(1,1,I)*RZ13(I)+BM0RZ(1,2,I)*RZ23(I)
492c VDEF(2,I)=VDEF(2,I)+BM0RZ(2,1,I)*RZ13(I)+BM0RZ(2,2,I)*RZ23(I)
493c VDEF(3,I)=VDEF(3,I)+BM0RZ(3,1,I)*RZ13(I)+BM0RZ(3,2,I)*RZ23(I)
494c VDEF(4,I)=VDEF(4,I)+BM0RZ(4,1,I)*RZ13(I)+BM0RZ(4,2,I)*RZ23(I)
495c ENDDO
496c END IF !(IDRIL>0) THEN
497C
498 RETURN
499C
#define max(a, b)
Definition macros.h:21

◆ c3derirz()

subroutine c3derirz ( integer jft,
integer jlt,
area,
x2,
x3,
y2,
y3,
bmrz,
b0rz,
bkrz,
berz )

Definition at line 266 of file c3defo3.F.

269C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
270#include "implicit_f.inc"
271#include "mvsiz_p.inc"
272C-----------------------------------------------
273C D U M M Y A R G U M E N T S
274C-----------------------------------------------
275 INTEGER JFT,JLT
276 my_real
277 . x2(mvsiz),x3(mvsiz),y2(mvsiz),y3(mvsiz),area(*)
278 my_real
279 . bmrz(mvsiz,3,2),b0rz(mvsiz,3),bkrz(mvsiz,2),berz(mvsiz,2)
280C=======================================================================
281c FUNCTION: derivation of Alman shape function for Tria
282c
283c Note:
284c ARGUMENTS: (I: input, O: output, IO: input * output, W: workspace)
285c
286c TYPE NAME FUNCTION
287c I JFT,JLT - element id limit
288c I AREA(NEL) - element area A
289c I X2,X3,Y2,Y3(NEL) - relative local nodal coordinates: X2->X21
290c O BM0RZ(I,J,NEL) - constant terms of derivations for membrane
291C I=1:A*Nx,x;I=2:A*Ny,y;I=3:A*(Nx,y+Ny,x); J=1,2(node)
292C only store J=1,2 as f(j=3)=-f(j=1)-f(j=2)
293C O B0RZ(NEL,J) A*(-Nx,y+Ny,x -2Ni) for asymmetric rotation
294c O BKRZ(NEL,J) - Ksi terms of derivation : A*(-Nx,y+Ny,x -2Ni)
295c O BERZ(NEL,J) - Eta terms of derivation : A*(-Nx,y+Ny,x -2Ni)
296C-----------------------------------------------
297C L O C A L V A R I A B L E S
298C-----------------------------------------------
299 INTEGER I,J
300 my_real
301 . a2,nxy,nyx,
302 . x2l(mvsiz),x3l(mvsiz),y2l(mvsiz),y3l(mvsiz),bm0rz(mvsiz,4,2),
303 . bmkrz(mvsiz,4,3),bmerz(mvsiz,4,3),y31_2,y21_2,x31_2,x21_2,
304 . y21y31,x21x31,x21y31,x31y21,x21y21,x31y31
305C--------X2L=(X2-X1)/4---------------------------------------
306 DO i=jft,jlt
307 x2l(i)=fourth*x2(i)
308 x3l(i)=fourth*x3(i)
309 y2l(i)=fourth*y2(i)
310 y3l(i)=fourth*y3(i)
311 ENDDO
312C
313 DO i=jft,jlt
314 y31_2=y3l(i)*y3l(i)
315 y21_2=y2l(i)*y2l(i)
316 y21y31 = y2l(i)*y3l(i)
317 x31_2=x3l(i)*x3l(i)
318 x21_2=x2l(i)*x2l(i)
319 x21x31=x3l(i)*x2l(i)
320 x31y21=x3l(i)*y2l(i)
321 x21y31=x2l(i)*y3l(i)
322 x21y21=x2l(i)*y2l(i)
323 x31y31=x3l(i)*y3l(i)
324C--------NxI,x *A------pay attention Bi*A--- RLZ: VRZ/A--
325 bm0rz(i,1,1) = zero
326 bm0rz(i,1,2) = y21y31
327C BM0RZ(I,1,3) = -BM0RZ(I,1,1)-BM0RZ(I,1,2)
328C-------- NxI,x KSI -
329 bmkrz(i,1,2) = -y21y31
330 bmkrz(i,1,3) = y21_2
331 bmkrz(i,1,1) = -bmkrz(i,1,2)-bmkrz(i,1,3)
332C-------- - NxI,x ETA
333 bmerz(i,1,2) = -y31_2
334 bmerz(i,1,3) = -y21y31
335 bmerz(i,1,1) = -bmerz(i,1,2)-bmerz(i,1,3)
336C -------NyI,y *A-------------
337 bm0rz(i,2,1) = zero
338 bm0rz(i,2,2) = x21x31
339C BM0RZ(I,2,3) = -BM0RZ(I,2,1)-BM0RZ(I,2,2)
340C-------- NyI,y KSI -
341 bmkrz(i,2,2) =-x21x31
342 bmkrz(i,2,3) = x21_2
343 bmkrz(i,2,1) = -bmkrz(i,2,2)-bmkrz(i,2,3)
344C-------- -NyI,y ETA +
345 bmerz(i,2,2) = -x31_2
346 bmerz(i,2,3) = x21x31
347 bmerz(i,2,1) = -bmerz(i,2,2)-bmerz(i,2,3)
348C--------NxI,y *A
349 bm0rz(i,3,1) = x31y21-x21y31
350 bm0rz(i,3,2) = -x31y21
351C BM0RZ(I,3,3) = -BM0RZ(I,3,1)-BM0RZ(I,3,2)
352C-------- -NxI,y KSI +
353 bmkrz(i,3,2) = two*x31y21-x21y31
354 bmkrz(i,3,3) = -x21y21
355 bmkrz(i,3,1) = -bmkrz(i,3,2)-bmkrz(i,3,3)
356C-------- NxI,y ETA -
357 bmerz(i,3,2) = x31y31
358 bmerz(i,3,3) = x31y21-two*x21y31
359 bmerz(i,3,1) = -bmerz(i,3,2)-bmerz(i,3,3)
360C--------NyI,x *A
361 bm0rz(i,4,1) = x21y31-x31y21
362 bm0rz(i,4,2) = -x21y31
363C BM0RZ(I,4,3) = -BM0RZ(I,4,1)-BM0RZ(I,4,2)
364C-------- -NyI,x KSI
365 bmkrz(i,4,2) = two*x21y31-x31y21
366 bmkrz(i,4,3) = -x21y21
367 bmkrz(i,4,1) = -bmkrz(i,4,2)-bmkrz(i,4,3)
368C-------- NyI,x ETA -
369 bmerz(i,4,2) = x31y31
370 bmerz(i,4,3) = x21y31-two*x31y21
371 bmerz(i,4,1) = -bmerz(i,4,2)-bmerz(i,4,3)
372 ENDDO
373C------------------ voir--
374 DO i=jft,jlt
375C--------BM0RZ(I,3,1)->(NxI,y+NyI,x) *A-;BM0RZ(I,4,1)->(-NxI,y+NyI,x -2NI) *A-----
376 DO j=1,2
377 nxy=bm0rz(i,3,j)
378 nyx=bm0rz(i,4,j)
379 bmrz(i,3,j)=nxy+nyx
380 b0rz(i,j)=-nxy+nyx
381 nxy=bmkrz(i,3,j)
382 nyx=bmkrz(i,4,j)
383 bmkrz(i,3,j)=nxy+nyx
384 bkrz(i,j)=-nxy+nyx
385 nxy=bmerz(i,3,j)
386 nyx=bmerz(i,4,j)
387 bmerz(i,3,j)=nxy+nyx
388 berz(i,j)=-nxy+nyx
389 ENDDO
390C-------should do here as Ni has no more f(j=3)=-f(j=1)-f(j=2)
391 b0rz(i,3)=-b0rz(i,1)-b0rz(i,2)
392C------add 2Ni------
393 a2= two*area(i)
394 b0rz(i,1)=b0rz(i,1)-a2
395 bkrz(i,1)=bkrz(i,1)+a2
396 berz(i,1)=berz(i,1)+a2
397 bkrz(i,2)=bkrz(i,2)-a2
398C BMERZ1(I,3)=BMERZ1(I,3)-A2
399 ENDDO
400C-----------necessary for stabilization (explicit)
401 CALL c3bm0rz(jft ,jlt ,bmrz,bm0rz,bmkrz ,bmerz )
402C
403 RETURN
subroutine c3bm0rz(jft, jlt, bmrz, bm0rz, bmkrz, bmerz)
Definition c3defo3.F:411