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

Go to the source code of this file.

Functions/Subroutines

subroutine cbadef (jft, jlt, ng, vcore, area, cdet, vqn, vq, vjfi, vxyz, rxyz, vdef, vnrm, vastn, hx, hy, veta, vksi, bm, bmf, bf, bc, tc, nplat, iplat, isrot, brz)
subroutine cbadefsh (jft, jlt, x13, x24, y13, y24, bm, vdef, vxyz, nplat, iplat)
subroutine cbaderirz (jft, jlt, area, x13, x24, y13, y24, bm0rz, bmkrz, bmerz, vcore, nplat, iplat, ismstr)
subroutine cbadefrz (jft, jlt, area, rlz, vdef, vxyz, bm0rz, bmkrz, bmerz, vrlz, bmrz, brz, bm, nplat, iplat, ng)
subroutine cbaderirz0 (jft, jlt, area, x13, x24, y13, y24, mx13, mx23, mx34, my13, my23, my34, bm0rz, bmkrz, bmerz, ismstr)
subroutine cbpatch (jft, jlt, bm0rz, bmkrz, bmerz, area, mx13, mx23, mx34, my13, my23, my34)
subroutine cbadef1 (jft, jlt, ng, vcore, vxyz, vdef, hx, hy, bm, nplat, iplat, isrot)
subroutine cbadeft (jft, jlt, vxyz, rlz, vdef, bm, nplat, iplat, isrot, bmrz)
subroutine cbadeft1 (jft, jlt, ng, vcore, vxyz, vdef, hx, hy, bm, nplat, iplat, isrot, bmrz, rxyz, wxy)
subroutine cbaderit1 (jft, jlt, ng, vcore, vq, vjfi, hx, hy, veta, vksi, bm, nplat, iplat, isrot)
subroutine cbaderirzt (jft, jlt, ng, bm0rz, bmkrz, bmerz, bmrz)
subroutine cbadeftw (jft, jlt, vxyz, rxyz, bm, bmf, bf, nplat, iplat, wxy)

Function/Subroutine Documentation

◆ cbadef()

subroutine cbadef ( integer jft,
integer jlt,
integer ng,
vcore,
area,
cdet,
vqn,
vq,
vjfi,
vxyz,
rxyz,
vdef,
vnrm,
vastn,
hx,
hy,
veta,
vksi,
bm,
bmf,
bf,
bc,
tc,
integer nplat,
integer, dimension(*) iplat,
integer isrot,
brz )

Definition at line 28 of file cbadef.F.

32C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
33C CALCULATION OF GENERALIZED DEFORMATIONS AT GAUSS POINTS AND [B]
34C ENTREES : NEL,NG,VCORE,VQN,VXYZ,RXYZ,VNRM,VASM,VASTN
35C SORTIES : VDEF,BM (MEMBRANE),BMF(COUPLAGE MEM-FLEXION),BF (FLEXION),BC(C.T)
36C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
37C-----------------------------------------------
38C I M P L I C I T T Y P E S
39C-----------------------------------------------
40#include "implicit_f.inc"
41C-----------------------------------------------
42C G l o b a l P a r a m e t e r s
43C-----------------------------------------------
44#include "mvsiz_p.inc"
45C-----------------------------------------------
46C D U M M Y A R G U M E N T S
47C-----------------------------------------------
48 INTEGER NPG,NG,JFT,JLT,NPLAT,IPLAT(*),ISROT
49 parameter(npg = 4)
50 my_real
51 . rxyz(mvsiz,8),vcore(mvsiz,12),vxyz(mvsiz,12),
52 . vqn(mvsiz,9,4),vksi(4,4),veta(4,4),
53 . bm(mvsiz,36),bmf(mvsiz,36),bf(mvsiz,24),bc(mvsiz,40),hx(mvsiz,4),hy(mvsiz,4)
54 my_real
55 . vnrm(mvsiz,12),vastn(mvsiz,16),vjfi(mvsiz,3,2,4),
56 . vq(mvsiz,3,3,4),vdef(mvsiz,8),dt1,area(*)
57 my_real
58 . cdet(*),tc(mvsiz,2,2),brz(mvsiz,4,4)
59C-----------------------------------------------
60C L O C A L V A R I A B L E S
61C-----------------------------------------------
62 INTEGER I, EP, IUN
63 my_real
64 . vpg(2,npg),pg1,pg,thk,detj,det,
65 . tfn(3,2),bcx,bcy,bxy(3),byx(3),
66 . v1(2),v2(2),rv1,rv2,
67 . c1,c2,vt1,vt2,bc1,bc2,vb1,
68 . vjf1(2,3),vjf(3,3),tbi(2,2),tbc(2,2),v11(4)
69 my_real
70 . a_1,c11,c12,c21,c22,cc,beta1,ksi1,ksiy1,beta2,ksi2,ksiy2
71 parameter(pg=.577350269189626)
72 parameter(pg1=-.577350269189626)
73C--------------------------
74C INITIALISATION
75C--------------------------
76 DATA iun/1/
77 DATA vpg/pg1,pg1,pg,pg1,pg,pg,pg1,pg/
78C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
79#include "vectorize.inc"
80 DO i=jft,nplat
81 ep=iplat(i)
82C-------VCORE(12):BX0(2),BY0(2),GAMA(2),MX23,MY23,MX34,MY34,MX13,MY13
83C-------V13(I)->VXYZ(j,1,I),V24(I)->VXYZ(j,2,I),VHI(I)->VXYZ(j,3,I)------------
84 bm(ep,1)=vcore(ep,1)+hx(ep,ng)*vcore(ep,5)
85 bm(ep,2)=vcore(ep,2)+hx(ep,ng)*vcore(ep,6)
86 bm(ep,3)=hx(ep,ng)*fourth
87 bm(ep,4)=-bm(ep,3)
88 bm(ep,5)=vcore(ep,3)+hy(ep,ng)*vcore(ep,5)
89 bm(ep,6)=vcore(ep,4)+hy(ep,ng)*vcore(ep,6)
90 bm(ep,7)=hy(ep,ng)*fourth
91 bm(ep,8)=-bm(ep,7)
92C
93 vdef(ep,1)=bm(ep,1)*vxyz(ep,1)+bm(ep,2)*vxyz(ep,4)
94 1 +bm(ep,3)*vxyz(ep,7)
95 vdef(ep,2)=bm(ep,5)*vxyz(ep,2)+bm(ep,6)*vxyz(ep,5)
96 1 +bm(ep,7)*vxyz(ep,8)
97C--------FLEXION-----
98 vdef(ep,6)=bm(ep,1)*rxyz(ep,2)+bm(ep,2)*rxyz(ep,4)
99 1 +bm(ep,3)*rxyz(ep,6)
100 vdef(ep,7)=-(bm(ep,5)*rxyz(ep,1)+bm(ep,6)*rxyz(ep,3)
101 1 +bm(ep,7)*rxyz(ep,5))
102 vdef(ep,8)=-(bm(ep,1)*rxyz(ep,1)+bm(ep,2)*rxyz(ep,3)
103 1 +bm(ep,3)*rxyz(ep,5))
104 2 +bm(ep,5)*rxyz(ep,2)+bm(ep,6)*rxyz(ep,4)
105 3 +bm(ep,7)*rxyz(ep,6)
106C--------C.T-----
107C-------VCORE(12):BX0(2),BY0(2),GAMA(2),MX23,MY23,MX34,MY34,MX13,MY13
108 a_1 = 0.25/max(cdet(ep),em20)
109 c11=(vcore(ep,10)+vcore(ep,12)*vpg(1,ng))*a_1
110 c12=-(vcore(ep,8)+vcore(ep,12)*vpg(2,ng))*a_1
111 c21=-(vcore(ep,9)+vcore(ep,11)*vpg(1,ng))*a_1
112 c22=( vcore(ep,7)+vcore(ep,11)*vpg(2,ng))*a_1
113 beta1=vcore(ep,12)+vcore(ep,8)*vpg(2,ng)
114 ksi1=vcore(ep,12)+vcore(ep,10)*vpg(1,ng)
115 beta2=vcore(ep,11)+vcore(ep,7)*vpg(2,ng)
116 ksi2=vcore(ep,11)+vcore(ep,9)*vpg(1,ng)
117C-------NODE--- 1
118 bc(ep,1)=-c11-c12
119 bc(ep,2)=-c21-c22
120 bc(ep,3)= beta1*c11+ksi1*c12
121 bc(ep,4)= beta1*c21+ksi1*c22
122 bc(ep,5)= -beta2*c11-ksi2*c12
123 bc(ep,6)= -beta2*c21-ksi2*c22
124C-------NODE--- 2
125 bc(ep,7)= c11-c12
126 bc(ep,8)= c21-c22
127 bc(ep,9)= beta1*c11-ksi1*c12
128 bc(ep,10)=beta1*c21-ksi1*c22
129 bc(ep,11)=-beta2*c11+ksi2*c12
130 bc(ep,12)=-beta2*c21+ksi2*c22
131C
132 beta1=vcore(ep,8)+vcore(ep,12)*vpg(2,ng)
133 ksi1=vcore(ep,10)+vcore(ep,12)*vpg(1,ng)
134 beta2=vcore(ep,7)+vcore(ep,11)*vpg(2,ng)
135 ksi2=vcore(ep,9)+vcore(ep,11)*vpg(1,ng)
136C-----PART SYM---------
137C-------NODE--- 1
138 bc(ep,13)=c11*vpg(2,ng)+c12*vpg(1,ng)
139 bc(ep,14)=c21*vpg(2,ng)+c22*vpg(1,ng)
140 bc(ep,15)=-beta1*c11-ksi1*c12
141 bc(ep,16)=-beta1*c21-ksi1*c22
142 bc(ep,17)=c11*beta2+c12*ksi2
143 bc(ep,18)=c21*beta2+c22*ksi2
144C-------NODE--- 2
145 bc(ep,19)=-bc(ep,13)
146 bc(ep,20)=-bc(ep,14)
147 bc(ep,21)=bc(ep,15)
148 bc(ep,22)=bc(ep,16)
149 bc(ep,23)=bc(ep,17)
150 bc(ep,24)=bc(ep,18)
151C
152 vdef(ep,4)=bc(ep,1)*vxyz(ep,3)+bc(ep,7)*vxyz(ep,6)
153 1 +bc(ep,13)*vxyz(ep,9)+bc(ep,3)*rxyz(ep,1)
154 2 +bc(ep,9)*rxyz(ep,3)+bc(ep,15)*rxyz(ep,7)
155 3 +bc(ep,5)*rxyz(ep,2)+bc(ep,11)*rxyz(ep,4)
156 4 +bc(ep,17)*rxyz(ep,8)
157 vdef(ep,5)=bc(ep,2)*vxyz(ep,3)+bc(ep,8)*vxyz(ep,6)
158 1 +bc(ep,14)*vxyz(ep,9)+bc(ep,4)*rxyz(ep,1)
159 2 +bc(ep,10)*rxyz(ep,3)+bc(ep,16)*rxyz(ep,7)
160 3 +bc(ep,6)*rxyz(ep,2)+bc(ep,12)*rxyz(ep,4)
161 4 +bc(ep,18)*rxyz(ep,8)
162 ENDDO
163 IF (isrot>0) THEN
164#include "vectorize.inc"
165 DO i=jft,nplat
166 ep=iplat(i)
167C----------no more constant shear-----------
168 vdef(ep,3)=bm(ep,1)*vxyz(ep,2)+bm(ep,2)*vxyz(ep,5)
169 1 +bm(ep,3)*vxyz(ep,8)
170 1 +bm(ep,5)*vxyz(ep,1)+bm(ep,6)*vxyz(ep,4)
171 1 +bm(ep,7)*vxyz(ep,7)
172 END DO
173 END IF !(ISROT>0) THEN
174C------------ELEMENT GAUCH-------------------
175#include "vectorize.inc"
176 DO 150 i=nplat+1,jlt
177 ep=iplat(i)
178C---------------------------------------------------
179C CALCULATION OF [FN]
180C---------------------------------------------------
181 tfn(1,1)=vksi(1,ng)*vqn(ep,7,1)+vksi(2,ng)*vqn(ep,7,2)
182 1 +vksi(3,ng)*vqn(ep,7,3)+vksi(4,ng)*vqn(ep,7,4)
183 tfn(2,1)=vksi(1,ng)*vqn(ep,8,1)+vksi(2,ng)*vqn(ep,8,2)
184 1 +vksi(3,ng)*vqn(ep,8,3)+vksi(4,ng)*vqn(ep,8,4)
185 tfn(3,1)=vksi(1,ng)*vqn(ep,9,1)+vksi(2,ng)*vqn(ep,9,2)
186 1 +vksi(3,ng)*vqn(ep,9,3)+vksi(4,ng)*vqn(ep,9,4)
187 tfn(1,2)=veta(1,ng)*vqn(ep,7,1)+veta(2,ng)*vqn(ep,7,2)
188 1 +veta(3,ng)*vqn(ep,7,3)+veta(4,ng)*vqn(ep,7,4)
189 tfn(2,2)=veta(1,ng)*vqn(ep,8,1)+veta(2,ng)*vqn(ep,8,2)
190 1 +veta(3,ng)*vqn(ep,8,3)+veta(4,ng)*vqn(ep,8,4)
191 tfn(3,2)=veta(1,ng)*vqn(ep,9,1)+veta(2,ng)*vqn(ep,9,2)
192 1 +veta(3,ng)*vqn(ep,9,3)+veta(4,ng)*vqn(ep,9,4)
193C--------------------------------------------------------
194C CALCUL [BN]=[F]^-1 [FN]
195C--------------------------------------------------------
196 tbi(2,2)=vjfi(ep,1,1,ng)*tfn(1,1)+vjfi(ep,2,1,ng)*tfn(2,1)
197 1 + vjfi(ep,3,1,ng)*tfn(3,1)
198 tbi(2,1)=vjfi(ep,1,2,ng)*tfn(1,1)+vjfi(ep,2,2,ng)*tfn(2,1)
199 1 + vjfi(ep,3,2,ng)*tfn(3,1)
200 tbi(1,2)=vjfi(ep,1,1,ng)*tfn(1,2)+vjfi(ep,2,1,ng)*tfn(2,2)
201 1 + vjfi(ep,3,1,ng)*tfn(3,2)
202 tbi(1,1)=vjfi(ep,1,2,ng)*tfn(1,2)+vjfi(ep,2,2,ng)*tfn(2,2)
203 1 + vjfi(ep,3,2,ng)*tfn(3,2)
204C
205 thk =-(tbi(1,1)+tbi(2,2))
206C THK(2)=TBI(1,1)*TBI(2,2)-TBI(1,2)*TBI(2,1)
207 tbi(1,2)=-tbi(1,2)
208 tbi(2,1)=-tbi(2,1)
209C---------------------------
210C CALCUL DE TC=VJFI*VQ
211C---------------------------
212 tc(ep,1,1)=vjfi(ep,1,1,ng)*vq(ep,1,1,ng)+vjfi(ep,2,1,ng)
213 + *vq(ep,2,1,ng)+ vjfi(ep,3,1,ng)*vq(ep,3,1,ng)
214 tc(ep,2,1)=vjfi(ep,1,2,ng)*vq(ep,1,1,ng)+vjfi(ep,2,2,ng)
215 + *vq(ep,2,1,ng)+ vjfi(ep,3,2,ng)*vq(ep,3,1,ng)
216 tc(ep,1,2)=vjfi(ep,1,1,ng)*vq(ep,1,2,ng)+vjfi(ep,2,1,ng)
217 + *vq(ep,2,2,ng)+ vjfi(ep,3,1,ng)*vq(ep,3,2,ng)
218 tc(ep,2,2)=vjfi(ep,1,2,ng)*vq(ep,1,2,ng)+vjfi(ep,2,2,ng)
219 + *vq(ep,2,2,ng)+ vjfi(ep,3,2,ng)*vq(ep,3,2,ng)
220C------------------------------
221C CALCUL DE TBC=TBI*TC
222C------------------------------
223 tbc(1,1)=tbi(1,1)*tc(ep,1,1)+tbi(1,2)*tc(ep,2,1)
224 tbc(2,1)=tbi(2,1)*tc(ep,1,1)+tbi(2,2)*tc(ep,2,1)
225 tbc(1,2)=tbi(1,1)*tc(ep,1,2)+tbi(1,2)*tc(ep,2,2)
226 tbc(2,2)=tbi(2,1)*tc(ep,1,2)+tbi(2,2)*tc(ep,2,2)
227C--------------------------
228C BUILD [B] MATRIX AND DEFORMATION
229C--------------------------
230C--------------------------
231C DEFORMATION IN-PLANE
232C--------------------------
233C [BM](3,3*NPG),[BMF](3,3*NPG),
234C [BF](3,2*NPG),VDEF(8),
235C--------------------------
236C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
237C---------- LOOP OVER NODES---
238C--------J=1 II =0 KK = 0
239 vt1=vq(ep,1,1,ng)*vxyz(ep,1)+vq(ep,2,1,ng)*vxyz(ep,2)
240 1 +vq(ep,3,1,ng)*vxyz(ep,3)
241 vt2=vq(ep,1,2,ng)*vxyz(ep,1)+vq(ep,2,2,ng)*vxyz(ep,2)
242 1 +vq(ep,3,2,ng)*vxyz(ep,3)
243C--------TERMES DE [B0]=<T>CI-------
244 c1=vksi(1,ng)*tc(ep,1,1)+veta(1,ng)*tc(ep,2,1)
245 c2=vksi(1,ng)*tc(ep,1,2)+veta(1,ng)*tc(ep,2,2)
246C--------TERMES ASSOCIEES AUX U,V,W DE [B1]=<T>BCI-------
247 bc1=vksi(1,ng)*tbc(1,1)+veta(1,ng)*tbc(2,1)
248 bc2=vksi(1,ng)*tbc(1,2)+veta(1,ng)*tbc(2,2)
249C I = 1; JJ = 3*KK =0
250 IF (isrot>0) THEN
251 bxy(1)=vq(ep,1,1,ng)*c2
252 bxy(2)=vq(ep,2,1,ng)*c2
253 bxy(3)=vq(ep,3,1,ng)*c2
254 byx(1)=vq(ep,1,2,ng)*c1
255 byx(2)=vq(ep,2,2,ng)*c1
256 byx(3)=vq(ep,3,2,ng)*c1
257 brz(i,1,1)=-bxy(1)+byx(1)
258 brz(i,2,1)=-bxy(2)+byx(2)
259 brz(i,3,1)=-bxy(3)+byx(3)
260 bm(ep,3)=bxy(1)+byx(1)
261 bm(ep,6)=bxy(2)+byx(2)
262 bm(ep,9)=bxy(3)+byx(3)
263 vdef(ep,3)= c1*vt2+c2*vt1
264 ELSE
265 bm(ep,9)=zero
266 END IF
267C---------CONTRIBUTION DU <T1> :EPS-X
268 bm(ep,1)=vq(ep,1,1,ng)*c1
269 bmf(ep,1)=thk*bm(ep,1)+vq(ep,1,1,ng)*bc1
270C---------CONTRIBUTION DU <T2> :EPS-Y
271 bm(ep,2)=vq(ep,1,2,ng)*c2
272 bmf(ep,2)=thk*bm(ep,2)+vq(ep,1,2,ng)*bc2
273C---------CONTRIBUTION DU <T> :EPS-XY
274 bmf(ep,3)=thk*bm(ep,3)+vq(ep,1,1,ng)*bc2+vq(ep,1,2,ng)*bc1
275C I = 2; JJ = 3*(KK+1)=3
276C---------:EPS-X :EPS-Y :EPS-XY
277 bm(ep,4)=vq(ep,2,1,ng)*c1
278 bmf(ep,4)=thk*bm(ep,4)+vq(ep,2,1,ng)*bc1
279 bm(ep,5)=vq(ep,2,2,ng)*c2
280 bmf(ep,5)=thk*bm(ep,5)+vq(ep,2,2,ng)*bc2
281 bmf(ep,6)=thk*bm(ep,6)+vq(ep,2,1,ng)*bc2+vq(ep,2,2,ng)*bc1
282C I = 3; JJ = 3*(KK+2)=6
283C---------:EPS-X:EPS-Y:EPS-XY
284 bm(ep,7)=vq(ep,3,1,ng)*c1
285 bmf(ep,7)=thk*bm(ep,7)+vq(ep,3,1,ng)*bc1
286 bm(ep,8)=vq(ep,3,2,ng)*c2
287 bmf(ep,8)=thk*bm(ep,8)+vq(ep,3,2,ng)*bc2
288 bmf(ep,9)=thk*bm(ep,9)+vq(ep,3,1,ng)*bc2+vq(ep,3,2,ng)*bc1
289C
290C---------DEF MEMBRANE------
291 vdef(ep,1)= c1*vt1
292 vdef(ep,2)= c2*vt2
293C
294C---------FLEXION ASSOCIEE AUX U,V,W ([BMF]=2H[B0]+[B01])------
295C----------[B01]---------
296 vdef(ep,6)= bc1*vt1
297 vdef(ep,7)= bc2*vt2
298 vdef(ep,8)= bc1*vt2+bc2*vt1
299C---------- TERMES ASSOCIEES AU BETA ----------
300C---------PRODUIT SCALAIRE <T(PG)>*<-T^2 T^1>----------
301 v1(2)=vq(ep,1,1,ng)*vqn(ep,1,1)+vq(ep,2,1,ng)*vqn(ep,2,1)
302 1 +vq(ep,3,1,ng)*vqn(ep,3,1)
303 v1(1)=-(vq(ep,1,1,ng)*vqn(ep,4,1)+vq(ep,2,1,ng)*vqn(ep,5,1)
304 1 +vq(ep,3,1,ng)*vqn(ep,6,1))
305 v2(2)=vq(ep,1,2,ng)*vqn(ep,1,1)+vq(ep,2,2,ng)*vqn(ep,2,1)
306 1 +vq(ep,3,2,ng)*vqn(ep,3,1)
307 v2(1)=-(vq(ep,1,2,ng)*vqn(ep,4,1)+vq(ep,2,2,ng)*vqn(ep,5,1)
308 1 +vq(ep,3,2,ng)*vqn(ep,6,1))
309 rv1=v1(1)*rxyz(ep,1)+v1(2)*rxyz(ep,2)
310 rv2=v2(1)*rxyz(ep,1)+v2(2)*rxyz(ep,2)
311C----------TERMES ASSOCIEES AUX BETA DE [B01]--
312C JJ = 3*II =0
313 bf(ep,1)=v1(1)*c1
314 bf(ep,2)=v2(1)*c2
315 bf(ep,3)=v1(1)*c2+v2(1)*c1
316 bf(ep,4)=v1(2)*c1
317 bf(ep,5)=v2(2)*c2
318 bf(ep,6)=v1(2)*c2+v2(2)*c1
319C---------DEF DE FLEXION ASSOCIEE AUX THETA1,THETA2------
320 vdef(ep,6)= vdef(ep,6)+c1*rv1
321 vdef(ep,7)= vdef(ep,7)+c2*rv2
322 vdef(ep,8)= vdef(ep,8)+c1*rv2+c2*rv1
323C
324C--------J=2---II=(J-1)*2 =2 KK = 3*(J-1) =3
325 vt1=vq(ep,1,1,ng)*vxyz(ep,4)+vq(ep,2,1,ng)*vxyz(ep,5)
326 1 +vq(ep,3,1,ng)*vxyz(ep,6)
327 vt2=vq(ep,1,2,ng)*vxyz(ep,4)+vq(ep,2,2,ng)*vxyz(ep,5)
328 1 +vq(ep,3,2,ng)*vxyz(ep,6)
329C--------- [B0], [B01]---------
330C--------TERMES DE [B0]=<T>CI-------
331 c1=vksi(2,ng)*tc(ep,1,1)+veta(2,ng)*tc(ep,2,1)
332 c2=vksi(2,ng)*tc(ep,1,2)+veta(2,ng)*tc(ep,2,2)
333C--------TERMES ASSOCIEES AUX U,V,W DE [B1]=<T>BCI-------
334 bc1=vksi(2,ng)*tbc(1,1)+veta(2,ng)*tbc(2,1)
335 bc2=vksi(2,ng)*tbc(1,2)+veta(2,ng)*tbc(2,2)
336C
337C I = 1; JJ = 3*KK =9
338 IF (isrot>0) THEN
339 bxy(1)=vq(ep,1,1,ng)*c2
340 bxy(2)=vq(ep,2,1,ng)*c2
341 bxy(3)=vq(ep,3,1,ng)*c2
342 byx(1)=vq(ep,1,2,ng)*c1
343 byx(2)=vq(ep,2,2,ng)*c1
344 byx(3)=vq(ep,3,2,ng)*c1
345 brz(i,1,2)=-bxy(1)+byx(1)
346 brz(i,2,2)=-bxy(2)+byx(2)
347 brz(i,3,2)=-bxy(3)+byx(3)
348 bm(ep,12)=bxy(1)+byx(1)
349 bm(ep,15)=bxy(2)+byx(2)
350 bm(ep,18)=bxy(3)+byx(3)
351 vdef(ep,3)= vdef(ep,3)+ c1*vt2+c2*vt1
352 ELSE
353 bm(ep,18)=zero
354 END IF
355C---------:EPS-X:EPS-Y:EPS-XY
356 bm(ep,10)=vq(ep,1,1,ng)*c1
357 bmf(ep,10)=thk*bm(ep,10)+vq(ep,1,1,ng)*bc1
358 bm(ep,11)=vq(ep,1,2,ng)*c2
359 bmf(ep,11)=thk*bm(ep,11)+vq(ep,1,2,ng)*bc2
360 bmf(ep,12)=thk*bm(ep,12)+vq(ep,1,1,ng)*bc2+vq(ep,1,2,ng)*bc1
361C
362C I = 2; JJ = 3*(KK+1)=12
363C---------:EPS-X:EPS-Y:EPS-XY
364 bm(ep,13)=vq(ep,2,1,ng)*c1
365 bmf(ep,13)=thk*bm(ep,13)+vq(ep,2,1,ng)*bc1
366 bm(ep,14)=vq(ep,2,2,ng)*c2
367 bmf(ep,14)=thk*bm(ep,14)+vq(ep,2,2,ng)*bc2
368 bmf(ep,15)=thk*bm(ep,15)+vq(ep,2,1,ng)*bc2+vq(ep,2,2,ng)*bc1
369C
370C I = 3; JJ = 3*(KK+2)=15
371C---------:EPS-X:EPS-Y:EPS-XY
372 bm(ep,16)=vq(ep,3,1,ng)*c1
373 bmf(ep,16)=thk*bm(ep,16)+vq(ep,3,1,ng)*bc1
374 bm(ep,17)=vq(ep,3,2,ng)*c2
375 bmf(ep,17)=thk*bm(ep,17)+vq(ep,3,2,ng)*bc2
376 bmf(ep,18)=thk*bm(ep,18)+vq(ep,3,1,ng)*bc2+vq(ep,3,2,ng)*bc1
377C
378C---------DEF MEMBRANE------
379 vdef(ep,1)= vdef(ep,1)+ c1*vt1
380 vdef(ep,2)= vdef(ep,2)+ c2*vt2
381C---------DEF DE FLEXION ASSOCIEE AUX U,V,W ([BMF]=2H[B0]+[B01])------
382C----------[B01]---------
383 vdef(ep,6)= vdef(ep,6)+ bc1*vt1
384 vdef(ep,7)= vdef(ep,7)+ bc2*vt2
385 vdef(ep,8)= vdef(ep,8)+ bc1*vt2+bc2*vt1
386C---------- TERMES ASSOCIEES AU BETA ----------
387C---------PRODUIT SCALAIRE <T(PG)>*<-T^2 T^1>----------
388 v1(2)=vq(ep,1,1,ng)*vqn(ep,1,2)+vq(ep,2,1,ng)*vqn(ep,2,2)
389 1 +vq(ep,3,1,ng)*vqn(ep,3,2)
390 v1(1)=-(vq(ep,1,1,ng)*vqn(ep,4,2)+vq(ep,2,1,ng)*vqn(ep,5,2)
391 1 +vq(ep,3,1,ng)*vqn(ep,6,2))
392 v2(2)=vq(ep,1,2,ng)*vqn(ep,1,2)+vq(ep,2,2,ng)*vqn(ep,2,2)
393 1 +vq(ep,3,2,ng)*vqn(ep,3,2)
394 v2(1)=-(vq(ep,1,2,ng)*vqn(ep,4,2)+vq(ep,2,2,ng)*vqn(ep,5,2)
395 1 +vq(ep,3,2,ng)*vqn(ep,6,2))
396 rv1=v1(1)*rxyz(ep,2+1)+v1(2)*rxyz(ep,2+2)
397 rv2=v2(1)*rxyz(ep,2+1)+v2(2)*rxyz(ep,2+2)
398C----------TERMES ASSOCIEES AUX BETA DE [B01]--
399C JJ = 3*II=6
400 bf(ep,7)=v1(1)*c1
401 bf(ep,8)=v2(1)*c2
402 bf(ep,9)=v1(1)*c2+v2(1)*c1
403 bf(ep,10)=v1(2)*c1
404 bf(ep,11)=v2(2)*c2
405 bf(ep,12)=v1(2)*c2+v2(2)*c1
406C---------DEF DE FLEXION ASSOCIEE AUX THETA1,THETA2------
407 vdef(ep,6)= vdef(ep,6)+c1*rv1
408 vdef(ep,7)= vdef(ep,7)+c2*rv2
409 vdef(ep,8)= vdef(ep,8)+c1*rv2+c2*rv1
410C
411C--------J=3---II=(J-1)*2 =4 KK = 3*(J-1)=6
412 vt1=vq(ep,1,1,ng)*vxyz(ep,7)+vq(ep,2,1,ng)*vxyz(ep,8)
413 1 +vq(ep,3,1,ng)*vxyz(ep,9)
414 vt2=vq(ep,1,2,ng)*vxyz(ep,7)+vq(ep,2,2,ng)*vxyz(ep,8)
415 1 +vq(ep,3,2,ng)*vxyz(ep,9)
416C--------- [B0], [B01]---------
417C--------TERMES DE [B0]=<T>CI-------
418 c1=vksi(3,ng)*tc(ep,1,1)+veta(3,ng)*tc(ep,2,1)
419 c2=vksi(3,ng)*tc(ep,1,2)+veta(3,ng)*tc(ep,2,2)
420C--------TERMES ASSOCIEES AUX U,V,W DE [B1]=<T>BCI-------
421 bc1=vksi(3,ng)*tbc(1,1)+veta(3,ng)*tbc(2,1)
422 bc2=vksi(3,ng)*tbc(1,2)+veta(3,ng)*tbc(2,2)
423C I = 1;JJ = 3*KK=18
424 IF (isrot>0) THEN
425 bxy(1)=vq(ep,1,1,ng)*c2
426 bxy(2)=vq(ep,2,1,ng)*c2
427 bxy(3)=vq(ep,3,1,ng)*c2
428 byx(1)=vq(ep,1,2,ng)*c1
429 byx(2)=vq(ep,2,2,ng)*c1
430 byx(3)=vq(ep,3,2,ng)*c1
431 brz(i,1,3)=-bxy(1)+byx(1)
432 brz(i,2,3)=-bxy(2)+byx(2)
433 brz(i,3,3)=-bxy(3)+byx(3)
434 bm(ep,21)=bxy(1)+byx(1)
435 bm(ep,24)=bxy(2)+byx(2)
436 bm(ep,27)=bxy(3)+byx(3)
437 vdef(ep,3)= vdef(ep,3)+ c1*vt2+c2*vt1
438 ELSE
439 bm(ep,27)=zero
440 END IF
441C---------:EPS-X:EPS-Y:EPS-XY
442 bm(ep,19)=vq(ep,1,1,ng)*c1
443 bmf(ep,19)=thk*bm(ep,19)+vq(ep,1,1,ng)*bc1
444 bm(ep,20)=vq(ep,1,2,ng)*c2
445 bmf(ep,20)=thk*bm(ep,20)+vq(ep,1,2,ng)*bc2
446 bmf(ep,21)=thk*bm(ep,21)+vq(ep,1,1,ng)*bc2+vq(ep,1,2,ng)*bc1
447C
448C I = 2; JJ = 3*(KK+1)=21
449 bm(ep,22)=vq(ep,2,1,ng)*c1
450 bmf(ep,22)=thk*bm(ep,22)+vq(ep,2,1,ng)*bc1
451 bm(ep,23)=vq(ep,2,2,ng)*c2
452 bmf(ep,23)=thk*bm(ep,23)+vq(ep,2,2,ng)*bc2
453 bmf(ep,24)=thk*bm(ep,24)+vq(ep,2,1,ng)*bc2+vq(ep,2,2,ng)*bc1
454C
455C I = 3; JJ = 3*(KK+2)=24
456 bm(ep,25)=vq(ep,3,1,ng)*c1
457 bmf(ep,25)=thk*bm(ep,25)+vq(ep,3,1,ng)*bc1
458 bm(ep,26)=vq(ep,3,2,ng)*c2
459 bmf(ep,26)=thk*bm(ep,26)+vq(ep,3,2,ng)*bc2
460 bmf(ep,27)=thk*bm(ep,27)+vq(ep,3,1,ng)*bc2+vq(ep,3,2,ng)*bc1
461C
462C---------DEF MEMBRANE------
463 vdef(ep,1)= vdef(ep,1)+ c1*vt1
464 vdef(ep,2)= vdef(ep,2)+ c2*vt2
465C---------DEF DE FLEXION ASSOCIEE AUX U,V,W ([BMF]=2H[B0]+[B01])------
466C----------[B01]---------
467 vdef(ep,6)= vdef(ep,6)+ bc1*vt1
468 vdef(ep,7)= vdef(ep,7)+ bc2*vt2
469 vdef(ep,8)= vdef(ep,8)+ bc1*vt2+bc2*vt1
470 v1(2)=vq(ep,1,1,ng)*vqn(ep,1,3)+vq(ep,2,1,ng)*vqn(ep,2,3)
471 1 +vq(ep,3,1,ng)*vqn(ep,3,3)
472 v1(1)=-(vq(ep,1,1,ng)*vqn(ep,4,3)+vq(ep,2,1,ng)*vqn(ep,5,3)
473 1 +vq(ep,3,1,ng)*vqn(ep,6,3))
474 v2(2)=vq(ep,1,2,ng)*vqn(ep,1,3)+vq(ep,2,2,ng)*vqn(ep,2,3)
475 1 +vq(ep,3,2,ng)*vqn(ep,3,3)
476 v2(1)=-(vq(ep,1,2,ng)*vqn(ep,4,3)+vq(ep,2,2,ng)*vqn(ep,5,3)
477 1 +vq(ep,3,2,ng)*vqn(ep,6,3))
478 rv1=v1(1)*rxyz(ep,4+1)+v1(2)*rxyz(ep,4+2)
479 rv2=v2(1)*rxyz(ep,4+1)+v2(2)*rxyz(ep,4+2)
480 bf(ep,13)=v1(1)*c1
481 bf(ep,14)=v2(1)*c2
482 bf(ep,15)=v1(1)*c2+v2(1)*c1
483 bf(ep,16)=v1(2)*c1
484 bf(ep,17)=v2(2)*c2
485 bf(ep,18)=v1(2)*c2+v2(2)*c1
486 vdef(ep,6)= vdef(ep,6)+c1*rv1
487 vdef(ep,7)= vdef(ep,7)+c2*rv2
488 vdef(ep,8)= vdef(ep,8)+c1*rv2+c2*rv1
489C--------J=4---II=(J-1)*2 =6 KK = 3*(J-1)=9
490 vt1=vq(ep,1,1,ng)*vxyz(ep,10)+vq(ep,2,1,ng)*vxyz(ep,11)
491 1 +vq(ep,3,1,ng)*vxyz(ep,12)
492 vt2=vq(ep,1,2,ng)*vxyz(ep,10)+vq(ep,2,2,ng)*vxyz(ep,11)
493 1 +vq(ep,3,2,ng)*vxyz(ep,12)
494C--------- [B0], [B01]---------
495C--------TERMES DE [B0]=<T>CI-------
496 c1=vksi(4,ng)*tc(ep,1,1)+veta(4,ng)*tc(ep,2,1)
497 c2=vksi(4,ng)*tc(ep,1,2)+veta(4,ng)*tc(ep,2,2)
498C--------TERMES ASSOCIEES AUX U,V,W DE [B1]=<T>BCI-------
499 bc1=vksi(4,ng)*tbc(1,1)+veta(4,ng)*tbc(2,1)
500 bc2=vksi(4,ng)*tbc(1,2)+veta(4,ng)*tbc(2,2)
501C I = 1; JJ = 3*KK =27
502 IF (isrot>0) THEN
503 bxy(1)=vq(ep,1,1,ng)*c2
504 bxy(2)=vq(ep,2,1,ng)*c2
505 bxy(3)=vq(ep,3,1,ng)*c2
506 byx(1)=vq(ep,1,2,ng)*c1
507 byx(2)=vq(ep,2,2,ng)*c1
508 byx(3)=vq(ep,3,2,ng)*c1
509 brz(i,1,4)=-bxy(1)+byx(1)
510 brz(i,2,4)=-bxy(2)+byx(2)
511 brz(i,3,4)=-bxy(3)+byx(3)
512 bm(ep,30)=bxy(1)+byx(1)
513 bm(ep,33)=bxy(2)+byx(2)
514 bm(ep,36)=bxy(3)+byx(3)
515 vdef(ep,3)= vdef(ep,3)+ c1*vt2+c2*vt1
516 ELSE
517 bm(ep,36)=zero
518 END IF
519 bm(ep,28)=vq(ep,1,1,ng)*c1
520 bmf(ep,28)=thk*bm(ep,28)+vq(ep,1,1,ng)*bc1
521 bm(ep,29)=vq(ep,1,2,ng)*c2
522 bmf(ep,29)=thk*bm(ep,29)+vq(ep,1,2,ng)*bc2
523C---------CONTRIBUTION DU <T> :EPS-XY
524 bmf(ep,30)=thk*bm(ep,30)+vq(ep,1,1,ng)*bc2+vq(ep,1,2,ng)*bc1
525C
526C I = 2; JJ = 3*(KK+1)=30
527 bm(ep,31)=vq(ep,2,1,ng)*c1
528 bmf(ep,31)=thk*bm(ep,31)+vq(ep,2,1,ng)*bc1
529 bm(ep,32)=vq(ep,2,2,ng)*c2
530 bmf(ep,32)=thk*bm(ep,32)+vq(ep,2,2,ng)*bc2
531 bmf(ep,33)=thk*bm(ep,33)+vq(ep,2,1,ng)*bc2+vq(ep,2,2,ng)*bc1
532C
533C I = 3; JJ = 3*(KK+2)=33
534 bm(ep,34)=vq(ep,3,1,ng)*c1
535 bmf(ep,34)=thk*bm(ep,34)+vq(ep,3,1,ng)*bc1
536 bm(ep,35)=vq(ep,3,2,ng)*c2
537 bmf(ep,35)=thk*bm(ep,35)+vq(ep,3,2,ng)*bc2
538 bmf(ep,36)=thk*bm(ep,36)+vq(ep,3,1,ng)*bc2+vq(ep,3,2,ng)*bc1
539C
540C---------DEF MEMBRANE------
541 vdef(ep,1)= vdef(ep,1)+ c1*vt1
542 vdef(ep,2)= vdef(ep,2)+ c2*vt2
543C---------DEF DE FLEXION ASSOCIEE AUX U,V,W ([BMF]=2H[B0]+[B01])------
544C----------ONLY THE [B01] PART---------
545 vdef(ep,6)= vdef(ep,6)+ bc1*vt1
546 vdef(ep,7)= vdef(ep,7)+ bc2*vt2
547 vdef(ep,8)= vdef(ep,8)+ bc1*vt2+bc2*vt1
548C---------- TERMES ASSOCIEES AU BETA ----------
549C---------PRODUIT SCALAIRE <T(PG)>*<-T^2 T^1>----------
550 v1(2)=vq(ep,1,1,ng)*vqn(ep,1,4)+vq(ep,2,1,ng)*vqn(ep,2,4)
551 1 +vq(ep,3,1,ng)*vqn(ep,3,4)
552 v1(1)=-(vq(ep,1,1,ng)*vqn(ep,4,4)+vq(ep,2,1,ng)*vqn(ep,5,4)
553 1 +vq(ep,3,1,ng)*vqn(ep,6,4))
554 v2(2)=vq(ep,1,2,ng)*vqn(ep,1,4)+vq(ep,2,2,ng)*vqn(ep,2,4)
555 1 +vq(ep,3,2,ng)*vqn(ep,3,4)
556 v2(1)=-(vq(ep,1,2,ng)*vqn(ep,4,4)+vq(ep,2,2,ng)*vqn(ep,5,4)
557 1 +vq(ep,3,2,ng)*vqn(ep,6,4))
558 rv1=v1(1)*rxyz(ep,6+1)+v1(2)*rxyz(ep,6+2)
559 rv2=v2(1)*rxyz(ep,6+1)+v2(2)*rxyz(ep,6+2)
560C JJ = 3*II=18
561 bf(ep,19)=v1(1)*c1
562 bf(ep,20)=v2(1)*c2
563 bf(ep,21)=v1(1)*c2+v2(1)*c1
564 bf(ep,22)=v1(2)*c1
565 bf(ep,23)=v2(2)*c2
566 bf(ep,24)=v1(2)*c2+v2(2)*c1
567 vdef(ep,6)= vdef(ep,6)+thk*vdef(ep,1)+c1*rv1
568 vdef(ep,7)= vdef(ep,7)+thk*vdef(ep,2)+c2*rv2
569 vdef(ep,8)= vdef(ep,8)+thk*vdef(ep,3)+c1*rv2+c2*rv1
570C
571C--------------------------
572C DEFORMATION OUT-PLANE (C.T)
573C--------------------------
574C [BC](2,5*NPG),VDEF(4,5)
575C--------------------------
576C
577 v11(1)=vksi(2,ng)
578 v11(2)=vksi(3,ng)
579 v11(3)=veta(4,ng)
580 v11(4)=veta(3,ng)
581C--- J=1---------------------
582C-----------POINTEURS POUR BC(II,J1~J2)
583C J1=(KA1(1,J)-1)*5=0
584C J2=(KA1(2,J)-1)*5=5
585C II=KIND(J) =1
586C JJ = 3*(J-1) =0
587C--------TERMES <NAI>-------
588 c1=v11(1)*vnrm(ep,1)
589 bc(ep,1)=-c1
590 bc(ep,11)=c1
591C
592 c1=v11(1)*vnrm(ep,2)
593 bc(ep,3)=-c1
594 bc(ep,13)=c1
595C
596 c1=v11(1)*vnrm(ep,3)
597 bc(ep,5)=-c1
598 bc(ep,15)=c1
599C--------TERMES <ASI>-------
600 bc(ep,7)=v11(1)*vastn(ep,1)
601 bc(ep,9)=v11(1)*vastn(ep,2)
602 bc(ep,17)=v11(1)*vastn(ep,3)
603 bc(ep,19)=v11(1)*vastn(ep,4)
604C--- J=2---------------------
605C-----------POINTEURS POUR BC(II,J1~J2)
606C J1=(KA1(1,J)-1)*5 =15
607C J2=(KA1(2,J)-1)*5 =10
608C II=KIND(J) =1
609C JJ = 3*(J-1) =3
610C--------TERMES <NAI>-------
611 c1=v11(2)*vnrm(ep,4)
612 bc(ep,31)=-c1
613 bc(ep,21)=c1
614C
615 c1=v11(2)*vnrm(ep,5)
616 bc(ep,33)=-c1
617 bc(ep,23)=c1
618C
619 c1=v11(2)*vnrm(ep,6)
620 bc(ep,35)=-c1
621 bc(ep,25)=c1
622C--------TERMES <ASI>-------
623 bc(ep,37)=v11(2)*vastn(ep,5)
624 bc(ep,39)=v11(2)*vastn(ep,6)
625 bc(ep,27)=v11(2)*vastn(ep,7)
626 bc(ep,29)=v11(2)*vastn(ep,8)
627C--- J=3---------------------
628C-----------POINTEURS POUR BC(II,J1~J2)
629C J1=(KA1(1,J)-1)*5 =0
630C J2=(KA1(2,J)-1)*5 =15
631C II=KIND(J) =2
632C JJ = 3*(J-1) =6
633C--------TERMES <NAI>-------
634 c1=v11(3)*vnrm(ep,7)
635 bc(ep,2)=-c1
636 bc(ep,32)=c1
637C
638 c1=v11(3)*vnrm(ep,8)
639 bc(ep,4)=-c1
640 bc(ep,34)=c1
641C
642 c1=v11(3)*vnrm(ep,9)
643 bc(ep,6)=-c1
644 bc(ep,36)=c1
645C--------TERMES <ASI>-------
646 bc(ep,8)=v11(3)*vastn(ep,9)
647 bc(ep,10)=v11(3)*vastn(ep,10)
648 bc(ep,38)=v11(3)*vastn(ep,11)
649 bc(ep,40)=v11(3)*vastn(ep,12)
650C--- J=4---------------------
651C-----------POINTEURS POUR BC(II,J1~J2)
652C J1=(KA1(1,J)-1)*5 =5
653C J2=(KA1(2,J)-1)*5 =10
654C II=KIND(J) =2
655C JJ = 3*(J-1) =9
656C--------TERMES <NAI>-------
657 c1=v11(4)*vnrm(ep,10)
658 bc(ep,12)=-c1
659 bc(ep,22)=c1
660C
661 c1=v11(4)*vnrm(ep,11)
662 bc(ep,14)=-c1
663 bc(ep,24)=c1
664C
665 c1=v11(4)*vnrm(ep,12)
666 bc(ep,16)=-c1
667 bc(ep,26)=c1
668C--------TERMES <ASI>-------
669 bc(ep,18)=v11(4)*vastn(ep,13)
670 bc(ep,20)=v11(4)*vastn(ep,14)
671 bc(ep,28)=v11(4)*vastn(ep,15)
672 bc(ep,30)=v11(4)*vastn(ep,16)
673C
674C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
675C----------J=1--II=(J-1)*3 =0 JJ=(J-1)*2 =0 KK=10*(J-1)=0
676 bcx=
677 1 bc(ep,1)*vxyz(ep,1)+bc(ep,3)*vxyz(ep,2)
678 2 +bc(ep,5)*vxyz(ep,3)+bc(ep,7)*rxyz(ep,1)
679 3 +bc(ep,9)*rxyz(ep,2)
680 bcy=
681 1 bc(ep,2)*vxyz(ep,1)+bc(ep,4)*vxyz(ep,2)
682 2 +bc(ep,6)*vxyz(ep,3)+bc(ep,8)*rxyz(ep,1)
683 3 +bc(ep,10)*rxyz(ep,2)
684C----------J=2 II=(J-1)*3 =3 JJ=(J-1)*2 =2 KK=10*(J-1) =10
685 bcx=bcx
686 1 +bc(ep,11)*vxyz(ep,4)+bc(ep,13)*vxyz(ep,5)
687 2 +bc(ep,15)*vxyz(ep,6)+bc(ep,17)*rxyz(ep,3)
688 3 +bc(ep,19)*rxyz(ep,4)
689 bcy=bcy
690 1 +bc(ep,12)*vxyz(ep,4)+bc(ep,14)*vxyz(ep,5)
691 2 +bc(ep,16)*vxyz(ep,6)+bc(ep,18)*rxyz(ep,3)
692 3 +bc(ep,20)*rxyz(ep,4)
693C----------J=3-- II=(J-1)*3=6 JJ=(J-1)*2=4 KK=10*(J-1)=20
694 bcx=bcx
695 1 +bc(ep,21)*vxyz(ep,7)+bc(ep,23)*vxyz(ep,8)
696 2 +bc(ep,25)*vxyz(ep,9)+bc(ep,27)*rxyz(ep,5)
697 3 +bc(ep,29)*rxyz(ep,6)
698 bcy=bcy
699 1 +bc(ep,22)*vxyz(ep,7)+bc(ep,24)*vxyz(ep,8)
700 2 +bc(ep,26)*vxyz(ep,9)+bc(ep,28)*rxyz(ep,5)
701 3 +bc(ep,30)*rxyz(ep,6)
702C----------J=4-- II=(J-1)*3 =9 JJ=(J-1)*2 =6 KK=10*(J-1)=30
703 bcx=bcx
704 1 +bc(ep,31)*vxyz(ep,10)+bc(ep,33)*vxyz(ep,11)
705 2 +bc(ep,35)*vxyz(ep,12)+bc(ep,37)*rxyz(ep,7)
706 3 +bc(ep,39)*rxyz(ep,8)
707 bcy=bcy
708 1 +bc(ep,32)*vxyz(ep,10)+bc(ep,34)*vxyz(ep,11)
709 2 +bc(ep,36)*vxyz(ep,12)+bc(ep,38)*rxyz(ep,7)
710 3 +bc(ep,40)*rxyz(ep,8)
711 vdef(ep,4)=tc(ep,1,1)*bcx+tc(ep,2,1)*bcy
712 vdef(ep,5)=tc(ep,1,2)*bcx+tc(ep,2,2)*bcy
713C
714 150 CONTINUE
715 RETURN
#define my_real
Definition cppsort.cpp:32
subroutine area(d1, x, x2, y, y2, eint, stif0)
#define max(a, b)
Definition macros.h:21

◆ cbadef1()

subroutine cbadef1 ( integer jft,
integer jlt,
integer ng,
vcore,
vxyz,
vdef,
hx,
hy,
bm,
integer nplat,
integer, dimension(*) iplat,
integer isrot )

Definition at line 1197 of file cbadef.F.

1199C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1200C CALCULATION OF GENERALIZED DEFORMATIONS AT GAUSS POINTS AND [B] (MEMBRANE ONLY)
1201C ENTREES : NEL,NG,VCORE,VXYZ
1202C SORTIES : VDEF,BM (MEMBRANE)
1203C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1204C-----------------------------------------------
1205C I M P L I C I T T Y P E S
1206C-----------------------------------------------
1207#include "implicit_f.inc"
1208C-----------------------------------------------
1209C G l o b a l P a r a m e t e r s
1210C-----------------------------------------------
1211#include "mvsiz_p.inc"
1212C-----------------------------------------------
1213C D U M M Y A R G U M E N T S
1214C-----------------------------------------------
1215 INTEGER NG,JFT,JLT,NPLAT,IPLAT(*),ISROT
1216 my_real
1217 . vcore(mvsiz,12),vxyz(mvsiz,12),bm(mvsiz,36),hx(mvsiz,4),hy(mvsiz,4)
1218 my_real
1219 . vdef(mvsiz,8)
1220C-----------------------------------------------
1221C L O C A L V A R I A B L E S
1222C-----------------------------------------------
1223 INTEGER I, EP
1224C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1225#include "vectorize.inc"
1226 DO i=jft,nplat
1227 ep=iplat(i)
1228C-------VCORE(12):BX0(2),BY0(2),GAMA(2),MX23,MY23,MX34,MY34,MX13,MY13
1229C-------V13(I)->VXYZ(j,1,I),V24(I)->VXYZ(j,2,I),VHI(I)->VXYZ(j,3,I)------------
1230 bm(ep,1)=vcore(ep,1)+hx(ep,ng)*vcore(ep,5)
1231 bm(ep,2)=vcore(ep,2)+hx(ep,ng)*vcore(ep,6)
1232 bm(ep,3)=hx(ep,ng)*fourth
1233 bm(ep,4)=-bm(ep,3)
1234 bm(ep,5)=vcore(ep,3)+hy(ep,ng)*vcore(ep,5)
1235 bm(ep,6)=vcore(ep,4)+hy(ep,ng)*vcore(ep,6)
1236 bm(ep,7)=hy(ep,ng)*fourth
1237 bm(ep,8)=-bm(ep,7)
1238C
1239 vdef(ep,1)=bm(ep,1)*vxyz(ep,1)+bm(ep,2)*vxyz(ep,4)
1240 1 +bm(ep,3)*vxyz(ep,7)
1241 vdef(ep,2)=bm(ep,5)*vxyz(ep,2)+bm(ep,6)*vxyz(ep,5)
1242 1 +bm(ep,7)*vxyz(ep,8)
1243 vdef(ep,4)=zero
1244 vdef(ep,5)=zero
1245 vdef(ep,6)=zero
1246 vdef(ep,7)=zero
1247 vdef(ep,8)=zero
1248 ENDDO
1249 IF (isrot>0) THEN
1250#include "vectorize.inc"
1251 DO i=jft,nplat
1252 ep=iplat(i)
1253C----------no more constant shear-----------
1254 vdef(ep,3)=bm(ep,1)*vxyz(ep,2)+bm(ep,2)*vxyz(ep,5)
1255 1 +bm(ep,3)*vxyz(ep,8)
1256 1 +bm(ep,5)*vxyz(ep,1)+bm(ep,6)*vxyz(ep,4)
1257 1 +bm(ep,7)*vxyz(ep,7)
1258 END DO
1259 END IF !(ISROT>0) THEN
1260C
1261 RETURN

◆ cbadefrz()

subroutine cbadefrz ( integer jft,
integer jlt,
area,
rlz,
vdef,
vxyz,
bm0rz,
bmkrz,
bmerz,
vrlz,
bmrz,
brz,
bm,
integer nplat,
integer, dimension(*) iplat,
integer ng )

Definition at line 843 of file cbadef.F.

847C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
848#include "implicit_f.inc"
849#include "mvsiz_p.inc"
850C-----------------------------------------------
851C D U M M Y A R G U M E N T S
852C-----------------------------------------------
853 INTEGER JFT,JLT,NPLAT,IPLAT(*),NG
854 my_real
855 . rlz(mvsiz,4),vxyz(mvsiz,3,4),
856 . bm0rz(mvsiz,4,4),bmkrz(mvsiz,4,4),bmerz(mvsiz,4,4),
857 . bmrz(mvsiz,3,4),bm(mvsiz,36)
858 my_real
859 . area(*),vdef(mvsiz,8),vrlz(*),brz(mvsiz,4,4)
860C-----------------------------------------------
861C L O C A L V A R I A B L E S
862C-----------------------------------------------
863 INTEGER I,J,EP,NPG
864 parameter(npg = 4)
865 my_real
866 . aa4,bxv2,byv1,erz,vpg(2,npg),pg,pg1
867 parameter(pg=.577350269189626)
868 parameter(pg1=-.577350269189626)
869C--------------------------
870C INITIALISATION
871C--------------------------
872 DATA vpg/pg1,pg1,pg,pg1,pg,pg,pg1,pg/
873C--------pay attention QEPH: Bi*A--- RLZ: VRZ/A-- QBAT:Bi--RLZ:VRZ
874 DO i=jft,jlt
875 DO j=1,4
876 bmrz(i,1,j) = bm0rz(i,1,j)+bmkrz(i,1,j)*vpg(1,ng)+
877 . bmerz(i,1,j)*vpg(2,ng)
878 bmrz(i,2,j) = bm0rz(i,2,j)+bmkrz(i,2,j)*vpg(1,ng)+
879 . bmerz(i,2,j)*vpg(2,ng)
880 bmrz(i,3,j) = bm0rz(i,3,j)+bmkrz(i,3,j)*vpg(1,ng)+
881 . bmerz(i,3,j)*vpg(2,ng)
882C
883 brz(i,4,j) = bm0rz(i,4,j)+bmkrz(i,4,j)*vpg(1,ng)+
884 . bmerz(i,4,j)*vpg(2,ng)
885 ENDDO
886 ENDDO
887C
888#include "vectorize.inc"
889 DO i=jft,jlt
890C---------------
891C MEMBRANE CONSTANT
892C---------------
893 ep=iplat(i)
894 vdef(ep,1)=vdef(ep,1)+bmrz(i,1,1)*rlz(i,1)+bmrz(i,1,2)*rlz(i,2)
895 1 +bmrz(i,1,3)*rlz(i,3)+bmrz(i,1,4)*rlz(i,4)
896 vdef(ep,2)=vdef(ep,2)+bmrz(i,2,1)*rlz(i,1)+bmrz(i,2,2)*rlz(i,2)
897 1 +bmrz(i,2,3)*rlz(i,3)+bmrz(i,2,4)*rlz(i,4)
898 vdef(ep,3)=vdef(ep,3)+bmrz(i,3,1)*rlz(i,1)+bmrz(i,3,2)*rlz(i,2)
899 1 +bmrz(i,3,3)*rlz(i,3)+bmrz(i,3,4)*rlz(i,4)
900 ENDDO
901#include "vectorize.inc"
902 DO i=jft,nplat
903 ep=iplat(i)
904 bxv2= bm(ep,1)*vxyz(ep,2,1)+bm(ep,2)*vxyz(ep,2,2)
905 1 +bm(ep,3)*vxyz(ep,2,3)
906 byv1=bm(ep,5)*vxyz(ep,1,1)+bm(ep,6)*vxyz(ep,1,2)
907 1 +bm(ep,7)*vxyz(ep,1,3)
908 vrlz(i)=(bxv2-byv1+
909 1 brz(i,4,1)*rlz(i,1)+brz(i,4,2)*rlz(i,2)
910 1 +brz(i,4,3)*rlz(i,3)+brz(i,4,4)*rlz(i,4))*half
911 ENDDO
912C
913#include "vectorize.inc"
914 DO i=nplat+1,jlt
915 ep=iplat(i)
916 erz=zero
917 DO j=1,4
918 erz=erz+brz(i,1,j)*vxyz(ep,1,j)+
919 1 brz(i,2,j)*vxyz(ep,2,j)+brz(i,3,j)*vxyz(ep,3,j)+
920 1 brz(i,4,j)*rlz(i,j)
921 ENDDO
922 vrlz(i)=erz*half
923 ENDDO
924C
925 RETURN

◆ cbadefsh()

subroutine cbadefsh ( integer jft,
integer jlt,
x13,
x24,
y13,
y24,
bm,
vdef,
vxyz,
integer nplat,
integer, dimension(*) iplat )

Definition at line 722 of file cbadef.F.

724C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
725C CALCUL 'membrane shear traitement' use only PART CONSTANTE
726C-----------------------------------------------
727C I M P L I C I T T Y P E S
728C-----------------------------------------------
729#include "implicit_f.inc"
730C-----------------------------------------------
731C G l o b a l P a r a m e t e r s
732C-----------------------------------------------
733#include "mvsiz_p.inc"
734C-----------------------------------------------
735C D U M M Y A R G U M E N T S
736C-----------------------------------------------
737 INTEGER JFT ,JLT,NPLAT,IPLAT(*)
738 my_real
739 . x13(*) ,x24(*) ,y13(*) ,y24(*) ,
740 . bm(mvsiz,36),vdef(mvsiz,8) ,vxyz(mvsiz,3,4)
741C-----------------------------------------------
742C L O C A L V A R I A B L E S
743C-----------------------------------------------
744 INTEGER I, EP
745C
746 DO ep=jft,nplat
747 i=iplat(ep)
748 vdef(i,3)=y24(i)*vxyz(i,2,1)-y13(i)*vxyz(i,2,2)
749 . -x24(i)*vxyz(i,1,1)+x13(i)*vxyz(i,1,2)
750 ENDDO
751 DO ep=nplat+1,jlt
752 i=iplat(ep)
753 bm(i,3)=-x24(i)
754 bm(i,6)=y24(i)
755 bm(i,12)=x13(i)
756 bm(i,15)=-y13(i)
757 bm(i,21)=-bm(i,3)
758 bm(i,24)=-bm(i,6)
759 bm(i,30)=-bm(i,12)
760 bm(i,33)=-bm(i,15)
761 vdef(i,3)=y24(i)*(vxyz(i,2,1)-vxyz(i,2,3))+
762 1 y13(i)*(-vxyz(i,2,2)+vxyz(i,2,4))
763 2 -x24(i)*(vxyz(i,1,1)-vxyz(i,1,3))
764 3 +x13(i)*(vxyz(i,1,2)-vxyz(i,1,4))
765 ENDDO
766 RETURN

◆ cbadeft()

subroutine cbadeft ( integer jft,
integer jlt,
vxyz,
rlz,
vdef,
bm,
integer nplat,
integer, dimension(*) iplat,
integer isrot,
bmrz )

Definition at line 1268 of file cbadef.F.

1270C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1271C-----------------------------------------------
1272C I M P L I C I T T Y P E S
1273C-----------------------------------------------
1274#include "implicit_f.inc"
1275C-----------------------------------------------
1276C G l o b a l P a r a m e t e r s
1277C-----------------------------------------------
1278#include "mvsiz_p.inc"
1279C-----------------------------------------------
1280C D U M M Y A R G U M E N T S
1281C-----------------------------------------------
1282 INTEGER JFT,JLT,NPLAT,IPLAT(*),ISROT
1283 my_real
1284 . rlz(mvsiz,4),vxyz(mvsiz,3,4),
1285 . bm(mvsiz,9,4),vdef(mvsiz,8)
1286C . BM(9,4,*),BMF(9,4,*),BF(6,4,*),VDEF(8,*)
1287 my_real
1288 . bmrz(mvsiz,4,4)
1289C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1290C---VDEF: 1:8 exx eyy,exy,eyx,byx,bxx,byy,bxy
1291C-----------------------------------------------
1292C L O C A L V A R I A B L E S
1293C-----------------------------------------------
1294 INTEGER I, EP
1295C
1296 my_real
1297 . a_1,c11,c12,c21,c22,cdemi
1298C--------------------------
1299C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1300#include "vectorize.inc"
1301 DO i=jft,nplat
1302 ep=iplat(i)
1303C-------BM(8):BXI(2),HX(1),not used,BYI(2),HY(1),not used
1304C-------V13(I)->VXYZ(j,1,I),V24(I)->VXYZ(j,2,I),VHI(I)->VXYZ(j,3,I)------------
1305C
1306 vdef(ep,1)=bm(ep,1,1)*vxyz(ep,1,1)+bm(ep,2,1)*vxyz(ep,1,2)
1307 1 +bm(ep,3,1)*vxyz(ep,1,3)
1308 vdef(ep,2)=bm(ep,5,1)*vxyz(ep,2,1)+bm(ep,6,1)*vxyz(ep,2,2)
1309 1 +bm(ep,7,1)*vxyz(ep,2,3)
1310C--------FLEXION-----
1311C VDEF(EP,6)=BM(EP,1,1)*RXYZ(EP,2,1)+BM(EP,2,1)*RXYZ(EP,2,2)
1312C 1 +BM(EP,3,1)*RXYZ(EP,2,3)
1313C VDEF(EP,7)=-(BM(EP,5,1)*RXYZ(EP,1,1)+BM(EP,6,1)*RXYZ(EP,1,2)
1314C 1 +BM(EP,7,1)*RXYZ(EP,1,3))
1315C VDEF(EP,5)=-(BM(EP,1,1)*RXYZ(EP,1,1)+BM(EP,2,1)*RXYZ(EP,1,2)
1316C 1 +BM(EP,3,1)*RXYZ(EP,1,3))
1317C VDEF(EP,8)=BM(EP,5,1)*RXYZ(EP,2,1)+BM(EP,6,1)*RXYZ(EP,2,2)
1318C 3 +BM(EP,7,1)*RXYZ(EP,2,3)
1319 ENDDO
1320c constant shear is removed
1321#include "vectorize.inc"
1322 DO i=jft,nplat
1323 ep=iplat(i)
1324C---------eyx-----------
1325 vdef(ep,4)=bm(ep,1,1)*vxyz(ep,2,1)+bm(ep,2,1)*vxyz(ep,2,2)
1326 1 +bm(ep,3,1)*vxyz(ep,2,3)
1327C-------- exy---
1328 vdef(ep,3)=bm(ep,5,1)*vxyz(ep,1,1)+bm(ep,6,1)*vxyz(ep,1,2)
1329 1 +bm(ep,7,1)*vxyz(ep,1,3)
1330 END DO
1331c
1332C------------ELEMENT GAUCH-------------------
1333#include "vectorize.inc"
1334 DO ep=nplat+1,jlt
1335 i=iplat(ep)
1336C I = 1; JJ = 3*KK =0 terms VXYZ(3,j,I) shared
1337 cdemi = half*(bm(i,9,1)*vxyz(i,3,1)+bm(i,9,2)*vxyz(i,3,2)+
1338 + bm(i,9,3)*vxyz(i,3,3)+bm(i,9,4)*vxyz(i,3,4))
1339 vdef(i,4)=bm(i,6,1)*vxyz(i,2,1)+bm(i,6,2)*vxyz(i,2,2)+
1340 1 bm(i,6,3)*vxyz(i,2,3)+bm(i,6,4)*vxyz(i,2,4)+cdemi
1341 vdef(i,3)=bm(i,3,1)*vxyz(i,1,1)+bm(i,3,2)*vxyz(i,1,2)+
1342 1 bm(i,3,3)*vxyz(i,1,3)+bm(i,3,4)*vxyz(i,1,4)+cdemi
1343C---------DEF MEMBRANE------
1344 vdef(i,1)=
1345 +bm(i,1,1)*vxyz(i,1,1)+bm(i,4,1)*vxyz(i,2,1)+bm(i,7,1)*vxyz(i,3,1)+
1346 +bm(i,1,2)*vxyz(i,1,2)+bm(i,4,2)*vxyz(i,2,2)+bm(i,7,2)*vxyz(i,3,2)+
1347 +bm(i,1,3)*vxyz(i,1,3)+bm(i,4,3)*vxyz(i,2,3)+bm(i,7,3)*vxyz(i,3,3)+
1348 +bm(i,1,4)*vxyz(i,1,4)+bm(i,4,4)*vxyz(i,2,4)+bm(i,7,4)*vxyz(i,3,4)
1349 vdef(i,2)=
1350 +bm(i,2,1)*vxyz(i,1,1)+bm(i,5,1)*vxyz(i,2,1)+bm(i,8,1)*vxyz(i,3,1)+
1351 +bm(i,2,2)*vxyz(i,1,2)+bm(i,5,2)*vxyz(i,2,2)+bm(i,8,2)*vxyz(i,3,2)+
1352 +bm(i,2,3)*vxyz(i,1,3)+bm(i,5,3)*vxyz(i,2,3)+bm(i,8,3)*vxyz(i,3,3)+
1353 +bm(i,2,4)*vxyz(i,1,4)+bm(i,5,4)*vxyz(i,2,4)+bm(i,8,4)*vxyz(i,3,4)
1354C
1355C---------FLEXION ASSOCIEE AUX U,V,W ([BMF]=2H[B0]+[B01])------
1356C----------[B01]---------
1357C VDEF(I,6)= BMF(1,1,I)*VXYZ(1,1,I)+
1358C + BMF(4,1,I)*VXYZ(2,1,I)+BMF(7,1,I)*VXYZ(3,1,I)+
1359C + BMF(1,2,I)*VXYZ(1,2,I)+
1360C + BMF(4,2,I)*VXYZ(2,2,I)+BMF(7,2,I)*VXYZ(3,2,I)+
1361C + BMF(1,3,I)*VXYZ(1,3,I)+
1362C + BMF(4,3,I)*VXYZ(2,3,I)+BMF(7,3,I)*VXYZ(3,3,I)+
1363C + BMF(1,4,I)*VXYZ(1,4,I)+
1364C + BMF(4,4,I)*VXYZ(2,4,I)+BMF(7,4,I)*VXYZ(3,4,I)
1365C VDEF(I,7)= BMF(2,1,I)*VXYZ(1,1,I)+
1366C + BMF(5,1,I)*VXYZ(2,1,I)+BMF(8,1,I)*VXYZ(3,1,I)+
1367C + BMF(2,2,I)*VXYZ(1,2,I)+
1368C + BMF(5,2,I)*VXYZ(2,2,I)+BMF(8,2,I)*VXYZ(3,2,I)+
1369C + BMF(2,3,I)*VXYZ(1,3,I)+
1370C + BMF(5,3,I)*VXYZ(2,3,I)+BMF(8,3,I)*VXYZ(3,3,I)+
1371C + BMF(2,4,I)*VXYZ(1,4,I)+
1372C + BMF(5,4,I)*VXYZ(2,4,I)+BMF(8,4,I)*VXYZ(3,4,I)
1373C VXYZ(3,j,I) shared
1374C CDEMI = HALF*(BMF(9,1,I)*VXYZ(3,1,I)+BMF(9,2,I)*VXYZ(3,2,I)+
1375C + BMF(9,3,I)*VXYZ(3,3,I)+BMF(9,4,I)*VXYZ(3,4,I))
1376C VDEF(I,8)= BMF(3,1,I)*VXYZ(1,1,I)+BMF(3,2,I)*VXYZ(1,2,I)+
1377C + BMF(3,3,I)*VXYZ(1,3,I)+BMF(3,4,I)*VXYZ(1,4,I)+CDEMI
1378C VDEF(I,5)= BMF(6,1,I)*VXYZ(2,1,I)+BMF(6,2,I)*VXYZ(2,2,I)+
1379C + BMF(6,3,I)*VXYZ(2,3,I)+BMF(6,4,I)*VXYZ(2,4,I)+CDEMI
1380C---------- TERMES ASSOCIEES AU BETA ----------
1381C----------TERMES ASSOCIEES AUX BETA DE [B01]--
1382C JJ = 3*II =0
1383C---------DEF DE FLEXION ASSOCIEE AUX THETA1,THETA2------
1384C VDEF(I,6)= VDEF(I,6)+
1385C + BF(1,1,I)*RXYZ(1,1,I)+BF(4,1,I)*RXYZ(2,1,I)+
1386C + BF(1,2,I)*RXYZ(1,2,I)+BF(4,2,I)*RXYZ(2,2,I)+
1387C + BF(1,3,I)*RXYZ(1,3,I)+BF(4,3,I)*RXYZ(2,3,I)+
1388C + BF(1,4,I)*RXYZ(1,4,I)+BF(4,4,I)*RXYZ(2,4,I)
1389C VDEF(I,7)= VDEF(I,7)+
1390C + BF(2,1,I)*RXYZ(1,1,I)+BF(5,1,I)*RXYZ(2,1,I)+
1391C + BF(2,2,I)*RXYZ(1,2,I)+BF(5,2,I)*RXYZ(2,2,I)+
1392C + BF(2,3,I)*RXYZ(1,3,I)+BF(5,3,I)*RXYZ(2,3,I)+
1393C + BF(2,4,I)*RXYZ(1,4,I)+BF(5,4,I)*RXYZ(2,4,I)
1394C VDEF(I,8)= VDEF(I,5+
1395C + BF(6,1,I)*RXYZ(2,1,I)+BF(6,2,I)*RXYZ(2,2,I)+
1396C + BF(6,3,I)*RXYZ(2,3,I)+BF(6,4,I)*RXYZ(2,4,I)
1397C VDEF(I,5)= VDEF(I,8+
1398C + BF(3,1,I)*RXYZ(1,1,I)+BF(3,2,I)*RXYZ(1,2,I)+
1399C + BF(3,3,I)*RXYZ(1,3,I)+BF(3,4,I)*RXYZ(1,4,I)
1400C
1401 END DO
1402 IF (isrot>0) THEN
1403#include "vectorize.inc"
1404 DO i=jft,jlt
1405C---------------
1406C MEMBRANE CONSTANT
1407C---------------
1408 ep=iplat(i)
1409 vdef(ep,1)=vdef(ep,1)+bmrz(i,1,1)*rlz(ep,1)+bmrz(i,1,2)*
1410 1 rlz(ep,2)+bmrz(i,1,3)*rlz(ep,3)+bmrz(i,1,4)*rlz(ep,4)
1411 vdef(ep,2)=vdef(ep,2)+bmrz(i,2,1)*rlz(ep,1)+bmrz(i,2,2)*
1412 1 rlz(ep,2)+bmrz(i,2,3)*rlz(ep,3)+bmrz(i,2,4)*rlz(ep,4)
1413 vdef(ep,3)=vdef(ep,3)+
1414 1 bmrz(i,3,1)*rlz(ep,1)+bmrz(i,3,2)*rlz(ep,2)
1415 2 +bmrz(i,3,3)*rlz(ep,3)+bmrz(i,3,4)*rlz(ep,4)
1416 vdef(ep,4)=vdef(ep,4)+
1417 1 bmrz(i,4,1)*rlz(ep,1)+bmrz(i,4,2)*rlz(ep,2)
1418 2 +bmrz(i,4,3)*rlz(ep,3)+bmrz(i,4,4)*rlz(ep,4)
1419 ENDDO
1420 END IF !(ISROT>0) THEN
1421C
1422 RETURN

◆ cbadeft1()

subroutine cbadeft1 ( integer jft,
integer jlt,
integer ng,
vcore,
vxyz,
vdef,
hx,
hy,
bm,
integer nplat,
integer, dimension(*) iplat,
integer isrot,
bmrz,
rxyz,
wxy )

Definition at line 1429 of file cbadef.F.

1432C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1433C-----------------------------------------------
1434C I M P L I C I T T Y P E S
1435C-----------------------------------------------
1436#include "implicit_f.inc"
1437C-----------------------------------------------
1438C G l o b a l P a r a m e t e r s
1439C-----------------------------------------------
1440#include "mvsiz_p.inc"
1441C-----------------------------------------------
1442C D U M M Y A R G U M E N T S
1443C-----------------------------------------------
1444 INTEGER NG,JFT,JLT,NPLAT,IPLAT(*),ISROT
1445 my_real
1446 . vcore(mvsiz,12),vxyz(mvsiz,3,4),bm(mvsiz,9,4),hx(mvsiz,4),hy(mvsiz,4)
1447 my_real
1448 . vdef(mvsiz,8),rxyz(mvsiz,4),bmrz(mvsiz,4,4),wxy(*)
1449C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1450C---VDEF: 1:8 exx eyy,exy,eyx,byx,bxx,byy,bxy
1451C-----------------------------------------------
1452C L O C A L V A R I A B L E S
1453C-----------------------------------------------
1454 INTEGER I, EP
1455C
1456 my_real
1457 . a_1,c11,c12,c21,c22,cdemi
1458C--------------------------
1459C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1460 DO ep=jft,jlt
1461C--------FLEXION-----
1462 vdef(ep,6)=zero
1463 vdef(ep,7)=zero
1464 vdef(ep,8)=zero
1465 vdef(ep,5)=zero
1466 wxy(ep)=zero
1467 ENDDO
1468#include "vectorize.inc"
1469 DO i=jft,nplat
1470 ep=iplat(i)
1471C-------BM(8):BXI(2),HX(1),not used,BYI(2),HY(1),not used
1472 bm(ep,1,1)=vcore(ep,1)+hx(ep,ng)*vcore(ep,5)
1473 bm(ep,2,1)=vcore(ep,2)+hx(ep,ng)*vcore(ep,6)
1474 bm(ep,3,1)=hx(ep,ng)*fourth
1475 bm(ep,4,1)=-bm(ep,3,1)
1476 bm(ep,5,1)=vcore(ep,3)+hy(ep,ng)*vcore(ep,5)
1477 bm(ep,6,1)=vcore(ep,4)+hy(ep,ng)*vcore(ep,6)
1478 bm(ep,7,1)=hy(ep,ng)*fourth
1479 bm(ep,8,1)=-bm(ep,7,1)
1480C-------V13(I)->VXYZ(j,1,I),V24(I)->VXYZ(j,2,I),VHI(I)->VXYZ(j,3,I)------------
1481C
1482 vdef(ep,1)=bm(ep,1,1)*vxyz(ep,1,1)+bm(ep,2,1)*vxyz(ep,1,2)
1483 1 +bm(ep,3,1)*vxyz(ep,1,3)
1484 vdef(ep,2)=bm(ep,5,1)*vxyz(ep,2,1)+bm(ep,6,1)*vxyz(ep,2,2)
1485 1 +bm(ep,7,1)*vxyz(ep,2,3)
1486C---------eyx-----------
1487 vdef(ep,4)=bm(ep,1,1)*vxyz(ep,2,1)+bm(ep,2,1)*vxyz(ep,2,2)
1488 1 +bm(ep,3,1)*vxyz(ep,2,3)
1489C-------- exy---
1490 vdef(ep,3)=bm(ep,5,1)*vxyz(ep,1,1)+bm(ep,6,1)*vxyz(ep,1,2)
1491 1 +bm(ep,7,1)*vxyz(ep,1,3)
1492 ENDDO
1493 IF (isrot>0) THEN
1494#include "vectorize.inc"
1495 DO i=jft,nplat
1496C---------------
1497C MEMBRANE CONSTANT
1498C---------------
1499 ep=iplat(i)
1500 vdef(ep,1)=vdef(ep,1)+bmrz(i,1,1)*rxyz(ep,1)+bmrz(i,1,2)*
1501 1 rxyz(ep,2)+bmrz(i,1,3)*rxyz(ep,3)+bmrz(i,1,4)*rxyz(ep,4)
1502 vdef(ep,2)=vdef(ep,2)+bmrz(i,2,1)*rxyz(ep,1)+bmrz(i,2,2)*
1503 1 rxyz(ep,2)+bmrz(i,2,3)*rxyz(ep,3)+bmrz(i,2,4)*rxyz(ep,4)
1504 vdef(ep,3)=vdef(ep,3)+
1505 1 bmrz(i,3,1)*rxyz(ep,1)+bmrz(i,3,2)*rxyz(ep,2)
1506 2 +bmrz(i,3,3)*rxyz(ep,3)+bmrz(i,3,4)*rxyz(ep,4)
1507 vdef(ep,4)=vdef(ep,4)+
1508 1 bmrz(i,4,1)*rxyz(ep,1)+bmrz(i,4,2)*rxyz(ep,2)
1509 2 +bmrz(i,4,3)*rxyz(ep,3)+bmrz(i,4,4)*rxyz(ep,4)
1510 ENDDO
1511 END IF !(ISROT>0) THEN
1512C
1513 RETURN

◆ cbadeftw()

subroutine cbadeftw ( integer jft,
integer jlt,
vxyz,
rxyz,
bm,
bmf,
bf,
integer nplat,
integer, dimension(*) iplat,
wxy )

Definition at line 1761 of file cbadef.F.

1764C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1765C-----------------------------------------------
1766C I M P L I C I T T Y P E S
1767C-----------------------------------------------
1768#include "implicit_f.inc"
1769C-----------------------------------------------
1770C G l o b a l P a r a m e t e r s
1771C-----------------------------------------------
1772#include "mvsiz_p.inc"
1773C-----------------------------------------------
1774C D U M M Y A R G U M E N T S
1775C-----------------------------------------------
1776 INTEGER JFT,JLT,NPLAT,IPLAT(*)
1777 my_real
1778 . rxyz(mvsiz,2,4),vxyz(mvsiz,3,4),
1779 . bm(mvsiz,9,4),bmf(mvsiz,9,4),bf(mvsiz,6,4),wxy(*)
1780C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1781C---VDEF: 1:8 exx eyy,exy,eyx,byx,bxx,byy,bxy
1782C-----------------------------------------------
1783C L O C A L V A R I A B L E S
1784C-----------------------------------------------
1785 INTEGER I, EP
1786C
1787 my_real
1788 . a_1,c11,c12,c21,c22,cdemi,kxy,kyx
1789C--------------------------
1790C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1791#include "vectorize.inc"
1792 DO i=jft,nplat
1793 ep=iplat(i)
1794 kyx =-(bm(ep,1,1)*rxyz(ep,1,1)+bm(ep,2,1)*rxyz(ep,1,2)
1795 1 +bm(ep,3,1)*rxyz(ep,1,3))
1796 kxy =bm(ep,5,1)*rxyz(ep,2,1)+bm(ep,6,1)*rxyz(ep,2,2)
1797 3 +bm(ep,7,1)*rxyz(ep,2,3)
1798 wxy(ep) = kxy - kyx
1799 ENDDO
1800C------------ELEMENT GAUCH-------------------
1801#include "vectorize.inc"
1802 DO i=nplat+1,jlt
1803 ep=iplat(i)
1804C
1805 cdemi =half*(bmf(ep,9,1)*vxyz(ep,3,1)+bmf(i,9,2)*vxyz(ep,3,2)+
1806 + bmf(ep,9,3)*vxyz(ep,3,3)+bmf(i,9,4)*vxyz(ep,3,4))
1807 kxy = bmf(ep,3,1)*vxyz(ep,1,1)+bmf(ep,3,2)*vxyz(ep,1,2)+
1808 + bmf(ep,3,3)*vxyz(ep,1,3)+bmf(ep,3,4)*vxyz(ep,1,4)+cdemi
1809 kyx = bmf(ep,6,1)*vxyz(ep,2,1)+bmf(ep,6,2)*vxyz(ep,2,2)+
1810 + bmf(ep,6,3)*vxyz(ep,2,3)+bmf(ep,6,4)*vxyz(ep,2,4)+cdemi
1811 kxy = kxy +
1812 + bf(ep,6,1)*rxyz(ep,2,1)+bf(ep,6,2)*rxyz(ep,2,2)+
1813 + bf(ep,6,3)*rxyz(ep,2,3)+bf(ep,6,4)*rxyz(ep,2,4)
1814 kyx = kyx +
1815 + bf(ep,3,1)*rxyz(ep,1,1)+bf(ep,3,2)*rxyz(ep,1,2)+
1816 + bf(ep,3,3)*rxyz(ep,1,3)+bf(ep,3,4)*rxyz(ep,1,4)
1817C
1818 wxy(ep) = kxy - kyx
1819 END DO
1820C
1821 RETURN

◆ cbaderirz()

subroutine cbaderirz ( integer jft,
integer jlt,
area,
x13,
x24,
y13,
y24,
bm0rz,
bmkrz,
bmerz,
vcore,
integer nplat,
integer, dimension(*) iplat,
integer ismstr )

Definition at line 776 of file cbadef.F.

779C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
780#include "implicit_f.inc"
781#include "mvsiz_p.inc"
782C-----------------------------------------------
783C D U M M Y A R G U M E N T S
784C-----------------------------------------------
785 INTEGER JFT,JLT,NPLAT,IPLAT(*),ISMSTR
786 my_real
787 . vcore(mvsiz,3,4),x13(*),x24(*),y13(*),y24(*),
788 . bm0rz(mvsiz,4,4),bmkrz(mvsiz,4,4),bmerz(mvsiz,4,4),
789 . area(*)
790C-----------------------------------------------
791C L O C A L V A R I A B L E S
792C-----------------------------------------------
793 INTEGER I, EP
794 my_real
795 . mx13(mvsiz),mx23(mvsiz),mx34(mvsiz),my13(mvsiz),
796 . my23(mvsiz),my34(mvsiz),a1(mvsiz),
797 . x13l(mvsiz),x24l(mvsiz),y13l(mvsiz),y24l(mvsiz)
798C-----------------------------------------------
799#include "vectorize.inc"
800C-------VCORE(12):BX0(2),BY0(2),GAMA(2),MX23,MY23,MX34,MY34,MX13,MY13
801 DO i=jft,nplat
802 ep =iplat(i)
803 mx23(i) = vcore(ep,1,3)
804 my23(i) = vcore(ep,2,3)
805 mx34(i) = vcore(ep,3,3)
806 my34(i) = vcore(ep,1,4)
807 mx13(i) = vcore(ep,2,4)
808 my13(i) = vcore(ep,3,4)
809 x13l(i) = x13(ep)
810 x24l(i) = x24(ep)
811 y13l(i) = y13(ep)
812 y24l(i) = y24(ep)
813 a1(i) = area(ep)
814 END DO !I=JFT,NPLAT
815C
816 DO i=nplat+1,jlt
817 ep =iplat(i)
818 mx13(i) = (vcore(ep,1,1)+vcore(ep,1,3))*half
819 my13(i) = (vcore(ep,2,1)+vcore(ep,2,3))*half
820 mx23(i) = (vcore(ep,1,2)+vcore(ep,1,3))*half
821 my23(i) = (vcore(ep,2,2)+vcore(ep,2,3))*half
822 mx34(i) = (vcore(ep,1,3)+vcore(ep,1,4))*half
823 my34(i) = (vcore(ep,2,3)+vcore(ep,2,4))*half
824 a1(i) = area(ep)
825 x13l(i) = x13(ep)
826 x24l(i) = x24(ep)
827 y13l(i) = y13(ep)
828 y24l(i) = y24(ep)
829 END DO !I=NPLAT+1,JLT
830C
831 CALL cbaderirz0(jft ,jlt ,a1 ,x13l ,x24l ,
832 2 y13l ,y24l ,mx13 ,mx23 ,mx34 ,
833 3 my13 ,my23 ,my34 ,bm0rz,bmkrz ,
834 4 bmerz,ismstr)
835C
836 RETURN
subroutine cbaderirz0(jft, jlt, area, x13, x24, y13, y24, mx13, mx23, mx34, my13, my23, my34, bm0rz, bmkrz, bmerz, ismstr)
Definition cbadef.F:938

◆ cbaderirz0()

subroutine cbaderirz0 ( integer jft,
integer jlt,
area,
x13,
x24,
y13,
y24,
mx13,
mx23,
mx34,
my13,
my23,
my34,
bm0rz,
bmkrz,
bmerz,
integer ismstr )

Definition at line 934 of file cbadef.F.

938C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
939#include "implicit_f.inc"
940#include "mvsiz_p.inc"
941C-----------------------------------------------
942C D U M M Y A R G U M E N T S
943C-----------------------------------------------
944 INTEGER JFT,JLT,ISMSTR
945 my_real
946 . x13(*),x24(*),y13(*),y24(*),
947 . mx13(*),mx23(*),mx34(*),my13(*),my23(*),my34(*)
948 my_real
949 . area(*),
950 . bm0rz(mvsiz,4,4),bmkrz(mvsiz,4,4),bmerz(mvsiz,4,4)
951C-----------------------------------------------
952C L O C A L V A R I A B L E S
953C-----------------------------------------------
954 INTEGER I,J
955 my_real
956 . aa4,bxv2,byv1,a05,nxy,nyx,a05k(4),a05e(4),
957 . xij(mvsiz,4),yij(mvsiz,4),xil(mvsiz,4),yil(mvsiz,4)
958C--------(14,23,32,41)/4A----------X13:X13/A-----------------------------
959 DO i=jft,jlt
960 a05=half/area(i)
961 xij(i,1) = a05*(mx13(i)-mx34(i))
962 xij(i,2) = half*x13(i)+a05*(mx23(i)-mx13(i))
963 xij(i,3) = -xij(i,2)
964 xij(i,4) = -xij(i,1)
965 yij(i,1) = a05*(my13(i)-my34(i))
966 yij(i,2) = half*y13(i)+a05*(my23(i)-my13(i))
967 yij(i,3) = -yij(i,2)
968 yij(i,4) = -yij(i,1)
969C--------(12,21,34,43)/4---------------------------------------
970 xil(i,1) = a05*(mx13(i)-mx23(i))
971 xil(i,2) = -xil(i,1)
972 xil(i,3) = a05*(mx13(i)-mx34(i))-half*x13(i)
973 xil(i,4) = -xil(i,3)
974 yil(i,1) = a05*(my13(i)-my23(i))
975 yil(i,2) = -yil(i,1)
976 yil(i,3) = a05*(my13(i)-my34(i))-half*y13(i)
977 yil(i,4) = -yil(i,3)
978 ENDDO
979C
980 DO i=jft,jlt
981C--------NxI,x ------
982C-------- MY34YIJ KSI - MY23YIL ETA
983 bm0rz(i,1,1) = (-my34(i)*yij(i,1)+my23(i)*yil(i,1))
984 bm0rz(i,1,2) = ( my34(i)*yij(i,2)+my23(i)*yil(i,2))
985 bm0rz(i,1,3) = ( my34(i)*yij(i,3)-my23(i)*yil(i,3))
986 bm0rz(i,1,4) = (-my34(i)*yij(i,4)-my23(i)*yil(i,4))
987C-------- MY13YIJ KSI - 2MY34YIL
988 bmkrz(i,1,1) = (-my13(i)*yij(i,1)-two*my34(i)*yil(i,1))
989 bmkrz(i,1,2) = ( my13(i)*yij(i,2)-two*my34(i)*yil(i,2))
990 bmkrz(i,1,3) = ( my13(i)*yij(i,3)-two*my34(i)*yil(i,3))
991 bmkrz(i,1,4) = (-my13(i)*yij(i,4)-two*my34(i)*yil(i,4))
992C-------- -MY13YIL ETA + 2MY23YIJ
993 bmerz(i,1,1) = ( my13(i)*yil(i,1)+two*my23(i)*yij(i,1))
994 bmerz(i,1,2) = ( my13(i)*yil(i,2)+two*my23(i)*yij(i,2))
995 bmerz(i,1,3) = (-my13(i)*yil(i,3)+two*my23(i)*yij(i,3))
996 bmerz(i,1,4) = (-my13(i)*yil(i,4)+two*my23(i)*yij(i,4))
997C -------NyI,y -------------
998C-------- MX34XIJ KSI - MX23XIL ETA
999 bm0rz(i,2,1) = (-mx34(i)*xij(i,1)+mx23(i)*xil(i,1))
1000 bm0rz(i,2,2) = ( mx34(i)*xij(i,2)+mx23(i)*xil(i,2))
1001 bm0rz(i,2,3) = ( mx34(i)*xij(i,3)-mx23(i)*xil(i,3))
1002 bm0rz(i,2,4) = (-mx34(i)*xij(i,4)-mx23(i)*xil(i,4))
1003C-------- MX13XIJ KSI - 2MX34XIL
1004 bmkrz(i,2,1) = (-mx13(i)*xij(i,1)-two*mx34(i)*xil(i,1))
1005 bmkrz(i,2,2) = ( mx13(i)*xij(i,2)-two*mx34(i)*xil(i,2))
1006 bmkrz(i,2,3) = ( mx13(i)*xij(i,3)-two*mx34(i)*xil(i,3))
1007 bmkrz(i,2,4) = (-mx13(i)*xij(i,4)-two*mx34(i)*xil(i,4))
1008C-------- -MX13XIL ETA + 2MX23XIJ
1009 bmerz(i,2,1) = ( mx13(i)*xil(i,1)+two*mx23(i)*xij(i,1))
1010 bmerz(i,2,2) = ( mx13(i)*xil(i,2)+two*mx23(i)*xij(i,2))
1011 bmerz(i,2,3) = (-mx13(i)*xil(i,3)+two*mx23(i)*xij(i,3))
1012 bmerz(i,2,4) = (-mx13(i)*xil(i,4)+two*mx23(i)*xij(i,4))
1013C--------NxI,y
1014C-------- -MX34YIJ KSI + MX23YIL ETA
1015 bm0rz(i,3,1) = ( mx34(i)*yij(i,1)-mx23(i)*yil(i,1))
1016 bm0rz(i,3,2) = (-mx34(i)*yij(i,2)-mx23(i)*yil(i,2))
1017 bm0rz(i,3,3) = (-mx34(i)*yij(i,3)+mx23(i)*yil(i,3))
1018 bm0rz(i,3,4) = ( mx34(i)*yij(i,4)+mx23(i)*yil(i,4))
1019C-------- -MX13YIJ KSI + 2MX34YIL
1020 bmkrz(i,3,1) = ( mx13(i)*yij(i,1)+two*mx34(i)*yil(i,1))
1021 bmkrz(i,3,2) = (-mx13(i)*yij(i,2)+two*mx34(i)*yil(i,2))
1022 bmkrz(i,3,3) = (-mx13(i)*yij(i,3)+two*mx34(i)*yil(i,3))
1023 bmkrz(i,3,4) = ( mx13(i)*yij(i,4)+two*mx34(i)*yil(i,4))
1024C-------- MX13YIL ETA - 2MX23YIJ
1025 bmerz(i,3,1) = (-mx13(i)*yil(i,1)-two*mx23(i)*yij(i,1))
1026 bmerz(i,3,2) = (-mx13(i)*yil(i,2)-two*mx23(i)*yij(i,2))
1027 bmerz(i,3,3) = ( mx13(i)*yil(i,3)-two*mx23(i)*yij(i,3))
1028 bmerz(i,3,4) = ( mx13(i)*yil(i,4)-two*mx23(i)*yij(i,4))
1029C--------NyI,x
1030C-------- -MY34XIJ KSI + MY23XIJ ETA
1031 bm0rz(i,4,1) = ( my34(i)*xij(i,1)-my23(i)*xil(i,1))
1032 bm0rz(i,4,2) = (-my34(i)*xij(i,2)-my23(i)*xil(i,2))
1033 bm0rz(i,4,3) = (-my34(i)*xij(i,3)+my23(i)*xil(i,3))
1034 bm0rz(i,4,4) = ( my34(i)*xij(i,4)+my23(i)*xil(i,4))
1035C-------- -MY13XIJ KSI + 2MY34XIL
1036 bmkrz(i,4,1) = ( my13(i)*xij(i,1)+two*my34(i)*xil(i,1))
1037 bmkrz(i,4,2) = (-my13(i)*xij(i,2)+two*my34(i)*xil(i,2))
1038 bmkrz(i,4,3) = (-my13(i)*xij(i,3)+two*my34(i)*xil(i,3))
1039 bmkrz(i,4,4) = ( my13(i)*xij(i,4)+two*my34(i)*xil(i,4))
1040C-------- MY13XIL ETA - 2MY23XIJ
1041 bmerz(i,4,1) = (-my13(i)*xil(i,1)-two*my23(i)*xij(i,1))
1042 bmerz(i,4,2) = (-my13(i)*xil(i,2)-two*my23(i)*xij(i,2))
1043 bmerz(i,4,3) = ( my13(i)*xil(i,3)-two*my23(i)*xij(i,3))
1044 bmerz(i,4,4) = ( my13(i)*xil(i,4)-two*my23(i)*xij(i,4))
1045 ENDDO
1046C--------correction to pass the patch test
1047 CALL cbpatch(jft ,jlt ,bm0rz,bmkrz,bmerz ,area ,
1048 + mx13 ,mx23,mx34 ,my13 ,my23 ,my34)
1049C
1050 a05= half
1051 IF (ismstr==10) a05=zero
1052 DO i=jft,jlt
1053C--------BM0RZ(I,3,1)->(NxI,y+NyI,x) -;BM0RZ(I,4,1)->(-NxI,y+NyI,x -2NI)-----
1054 a05k(1)= -a05
1055 a05k(2)= a05
1056 a05k(3)= a05
1057 a05k(4)= -a05
1058 a05e(1)= -a05
1059 a05e(2)= -a05
1060 a05e(3)= a05
1061 a05e(4)= a05
1062 DO j=1,4
1063 nxy=bm0rz(i,3,j)
1064 nyx=bm0rz(i,4,j)
1065 bm0rz(i,3,j)=nxy+nyx
1066 bm0rz(i,4,j)=-nxy+nyx-a05
1067 nxy=bmkrz(i,3,j)
1068 nyx=bmkrz(i,4,j)
1069 bmkrz(i,3,j)=nxy+nyx
1070 bmkrz(i,4,j)=-nxy+nyx-a05k(j)
1071 nxy=bmerz(i,3,j)
1072 nyx=bmerz(i,4,j)
1073 bmerz(i,3,j)=nxy+nyx
1074 bmerz(i,4,j)=-nxy+nyx-a05e(j)
1075 ENDDO
1076 ENDDO
1077C
1078 RETURN
subroutine cbpatch(jft, jlt, bm0rz, bmkrz, bmerz, area, mx13, mx23, mx34, my13, my23, my34)
Definition cbadef.F:1089

◆ cbaderirzt()

subroutine cbaderirzt ( integer jft,
integer jlt,
integer ng,
bm0rz,
bmkrz,
bmerz,
bmrz )

Definition at line 1707 of file cbadef.F.

1708C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1709C CALCULATION OF GENERALIZED DEFORMATIONS AT GAUSS POINTS AND [B]
1710C ENTREES : JFT,JLT,NG,BM0RZ,BMKRZ,BMERZ
1711C SORTIES : BMRZ
1712C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1713C-----------------------------------------------
1714C I M P L I C I T T Y P E S
1715C-----------------------------------------------
1716#include "implicit_f.inc"
1717#include "mvsiz_p.inc"
1718C-----------------------------------------------
1719C D U M M Y A R G U M E N T S
1720C-----------------------------------------------
1721 INTEGER NG,JFT,JLT
1722 my_real
1723 . bm0rz(mvsiz,4,4),bmkrz(mvsiz,4,4),bmerz(mvsiz,4,4),
1724 . bmrz(mvsiz,4,4)
1725C-----------------------------------------------
1726C L O C A L V A R I A B L E S
1727C-----------------------------------------------
1728 INTEGER NPG,I,J
1729 parameter(npg = 4)
1730 my_real
1731 . vpg(2,npg),pg1,pg,nxyp,nyxn
1732 parameter(pg=.577350269189626)
1733 parameter(pg1=-.577350269189626)
1734C--------------------------
1735C INITIALISATION
1736C--------------------------
1737 DATA vpg/pg1,pg1,pg,pg1,pg,pg,pg1,pg/
1738C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1739C---+BMRZ(3,J,I): NXY ,BMRZ(4,J,I):NYX
1740 DO i=jft,jlt
1741 DO j=1,4
1742 bmrz(i,1,j) = bm0rz(i,1,j)+bmkrz(i,1,j)*vpg(1,ng)+
1743 . bmerz(i,1,j)*vpg(2,ng)
1744 bmrz(i,2,j) = bm0rz(i,2,j)+bmkrz(i,2,j)*vpg(1,ng)+
1745 . bmerz(i,2,j)*vpg(2,ng)
1746 nxyp = bm0rz(i,3,j)+bmkrz(i,3,j)*vpg(1,ng)+
1747 . bmerz(i,3,j)*vpg(2,ng)
1748 nyxn = bm0rz(i,4,j)+bmkrz(i,4,j)*vpg(1,ng)+
1749 . bmerz(i,4,j)*vpg(2,ng)
1750 bmrz(i,4,j) = half*(nxyp + nyxn)
1751 bmrz(i,3,j) = half*(nxyp - nyxn)
1752 ENDDO
1753 ENDDO
1754 RETURN

◆ cbaderit1()

subroutine cbaderit1 ( integer jft,
integer jlt,
integer ng,
vcore,
vq,
vjfi,
hx,
hy,
veta,
vksi,
bm,
integer nplat,
integer, dimension(*) iplat,
integer isrot )

Definition at line 1520 of file cbadef.F.

1523C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1524C CALCULATION OF GENERALIZED DEFORMATIONS AT GAUSS POINTS AND [B]
1525C ENTREES : NEL,NG,VCORE,VQN,VXYZ,RXYZ,VNRM,VASM,VASTN
1526C SORTIES : VDEF,BM (MEMBRANE),BMF(COUPLAGE MEM-FLEXION),BF (FLEXION),BC(C.T)
1527C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1528C-----------------------------------------------
1529C I M P L I C I T T Y P E S
1530C-----------------------------------------------
1531#include "implicit_f.inc"
1532#include "mvsiz_p.inc"
1533C-----------------------------------------------
1534C D U M M Y A R G U M E N T S
1535C-----------------------------------------------
1536 INTEGER NPG,NG,JFT,JLT,NPLAT,IPLAT(*),ISROT
1537 parameter(npg = 4)
1538 my_real
1539 . vcore(mvsiz,12),vksi(4,4),veta(4,4),
1540 . bm(mvsiz,36),hx(mvsiz,4),hy(mvsiz,4)
1541 my_real
1542 . vjfi(mvsiz,3,2,4),vq(mvsiz,3,3,4)
1543C-----------------------------------------------
1544C L O C A L V A R I A B L E S
1545C-----------------------------------------------
1546 INTEGER I, EP, IUN
1547 my_real
1548 . vpg(2,npg),pg1,pg,thk,detj,det,
1549 . tfn(3,2),bcx,bcy,bxy(3),byx(3),
1550 . v1(2),v2(2),rv1,rv2,
1551 . c1,c2,vt1,vt2,bc1,bc2,vb1,tc(mvsiz,2,2),
1552 . vjf1(2,3),vjf(3,3),tbi(2,2),tbc(2,2),v11(4)
1553 my_real
1554 . a_1,c11,c12,c21,c22,cc,beta1,ksi1,ksiy1,beta2,ksi2,ksiy2
1555 parameter(pg=.577350269189626)
1556 parameter(pg1=-.577350269189626)
1557C--------------------------
1558C INITIALISATION
1559C--------------------------
1560 DATA iun/1/
1561 DATA vpg/pg1,pg1,pg,pg1,pg,pg,pg1,pg/
1562C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1563#include "vectorize.inc"
1564 DO i=jft,nplat
1565 ep=iplat(i)
1566C-------VCORE(12):BX0(2),BY0(2),GAMA(2),MX23,MY23,MX34,MY34,MX13,MY13
1567 bm(ep,1)=vcore(ep,1)+hx(ep,ng)*vcore(ep,5)
1568 bm(ep,2)=vcore(ep,2)+hx(ep,ng)*vcore(ep,6)
1569 bm(ep,3)=hx(ep,ng)*fourth
1570 bm(ep,4)=-bm(ep,3)
1571 bm(ep,5)=vcore(ep,3)+hy(ep,ng)*vcore(ep,5)
1572 bm(ep,6)=vcore(ep,4)+hy(ep,ng)*vcore(ep,6)
1573 bm(ep,7)=hy(ep,ng)*fourth
1574 bm(ep,8)=-bm(ep,7)
1575 ENDDO
1576C------------ELEMENT GAUCH-------------------
1577#include "vectorize.inc"
1578 DO 150 i=nplat+1,jlt
1579 ep=iplat(i)
1580C---------------------------
1581C CALCUL DE TC=VJFI*VQ
1582C---------------------------
1583 tc(ep,1,1)=vjfi(ep,1,1,ng)*vq(ep,1,1,ng)+vjfi(ep,2,1,ng)
1584 + *vq(ep,2,1,ng)+ vjfi(ep,3,1,ng)*vq(ep,3,1,ng)
1585 tc(ep,2,1)=vjfi(ep,1,2,ng)*vq(ep,1,1,ng)+vjfi(ep,2,2,ng)
1586 + *vq(ep,2,1,ng)+ vjfi(ep,3,2,ng)*vq(ep,3,1,ng)
1587 tc(ep,1,2)=vjfi(ep,1,1,ng)*vq(ep,1,2,ng)+vjfi(ep,2,1,ng)
1588 + *vq(ep,2,2,ng)+ vjfi(ep,3,1,ng)*vq(ep,3,2,ng)
1589 tc(ep,2,2)=vjfi(ep,1,2,ng)*vq(ep,1,2,ng)+vjfi(ep,2,2,ng)
1590 + *vq(ep,2,2,ng)+ vjfi(ep,3,2,ng)*vq(ep,3,2,ng)
1591C--------------------------
1592C BUILD [B] MATRIX AND DEFORMATION
1593C--------------------------
1594C--------------------------
1595C DEFORMATION IN-PLANE
1596C--------------------------
1597C [BM](3,3*NPG),[BMF](3,3*NPG),
1598C--------------------------
1599C--------TERMES DE [B0]=<T>CI-------
1600 c1=vksi(1,ng)*tc(ep,1,1)+veta(1,ng)*tc(ep,2,1)
1601 c2=vksi(1,ng)*tc(ep,1,2)+veta(1,ng)*tc(ep,2,2)
1602C I = 1; JJ = 3*KK =0
1603c IF (ISROT>0) THEN
1604 bxy(1)=vq(ep,1,1,ng)*c2
1605 bxy(2)=vq(ep,2,1,ng)*c2
1606 bxy(3)=vq(ep,3,1,ng)*c2
1607 byx(1)=vq(ep,1,2,ng)*c1
1608 byx(2)=vq(ep,2,2,ng)*c1
1609 byx(3)=vq(ep,3,2,ng)*c1
1610 bm(ep,3)=bxy(1)+byx(1)
1611 bm(ep,6)=bxy(2)+byx(2)
1612 bm(ep,9)=bxy(3)+byx(3)
1613C---------CONTRIBUTION DU <T1> :EPS-X
1614 bm(ep,1)=vq(ep,1,1,ng)*c1
1615C---------CONTRIBUTION DU <T2> :EPS-Y
1616 bm(ep,2)=vq(ep,1,2,ng)*c2
1617C---------:EPS-X :EPS-Y :EPS-XY
1618 bm(ep,4)=vq(ep,2,1,ng)*c1
1619 bm(ep,5)=vq(ep,2,2,ng)*c2
1620C---------:EPS-X:EPS-Y:EPS-XY
1621 bm(ep,7)=vq(ep,3,1,ng)*c1
1622 bm(ep,8)=vq(ep,3,2,ng)*c2
1623C
1624C--------J=2---II=(J-1)*2 =2 KK = 3*(J-1) =3
1625C--------- [B0], [B01]---------
1626C--------TERMES DE [B0]=<T>CI-------
1627 c1=vksi(2,ng)*tc(ep,1,1)+veta(2,ng)*tc(ep,2,1)
1628 c2=vksi(2,ng)*tc(ep,1,2)+veta(2,ng)*tc(ep,2,2)
1629C I = 1; JJ = 3*KK =9
1630c IF (ISROT>0) THEN
1631 bxy(1)=vq(ep,1,1,ng)*c2
1632 bxy(2)=vq(ep,2,1,ng)*c2
1633 bxy(3)=vq(ep,3,1,ng)*c2
1634 byx(1)=vq(ep,1,2,ng)*c1
1635 byx(2)=vq(ep,2,2,ng)*c1
1636 byx(3)=vq(ep,3,2,ng)*c1
1637 bm(ep,12)=bxy(1)+byx(1)
1638 bm(ep,15)=bxy(2)+byx(2)
1639 bm(ep,18)=bxy(3)+byx(3)
1640C---------:EPS-X:EPS-Y:EPS-XY
1641 bm(ep,10)=vq(ep,1,1,ng)*c1
1642 bm(ep,11)=vq(ep,1,2,ng)*c2
1643C I = 2; JJ = 3*(KK+1)=12
1644C---------:EPS-X:EPS-Y:EPS-XY
1645 bm(ep,13)=vq(ep,2,1,ng)*c1
1646 bm(ep,14)=vq(ep,2,2,ng)*c2
1647C I = 3; JJ = 3*(KK+2)=15
1648C---------:EPS-X:EPS-Y:EPS-XY
1649 bm(ep,16)=vq(ep,3,1,ng)*c1
1650 bm(ep,17)=vq(ep,3,2,ng)*c2
1651C---------DEF DE FLEXION ASSOCIEE AUX THETA1,THETA2------
1652C--------J=3---II=(J-1)*2 =4 KK = 3*(J-1)=6
1653C--------- [B0], [B01]---------
1654C--------TERMES DE [B0]=<T>CI-------
1655 c1=vksi(3,ng)*tc(ep,1,1)+veta(3,ng)*tc(ep,2,1)
1656 c2=vksi(3,ng)*tc(ep,1,2)+veta(3,ng)*tc(ep,2,2)
1657c IF (ISROT>0) THEN
1658 bxy(1)=vq(ep,1,1,ng)*c2
1659 bxy(2)=vq(ep,2,1,ng)*c2
1660 bxy(3)=vq(ep,3,1,ng)*c2
1661 byx(1)=vq(ep,1,2,ng)*c1
1662 byx(2)=vq(ep,2,2,ng)*c1
1663 byx(3)=vq(ep,3,2,ng)*c1
1664 bm(ep,21)=bxy(1)+byx(1)
1665 bm(ep,24)=bxy(2)+byx(2)
1666 bm(ep,27)=bxy(3)+byx(3)
1667C---------:EPS-X:EPS-Y:EPS-XY
1668 bm(ep,19)=vq(ep,1,1,ng)*c1
1669 bm(ep,20)=vq(ep,1,2,ng)*c2
1670C I = 2; JJ = 3*(KK+1)=21
1671 bm(ep,22)=vq(ep,2,1,ng)*c1
1672 bm(ep,23)=vq(ep,2,2,ng)*c2
1673C I = 3; JJ = 3*(KK+2)=24
1674 bm(ep,25)=vq(ep,3,1,ng)*c1
1675 bm(ep,26)=vq(ep,3,2,ng)*c2
1676C---------- TERMES ASSOCIEES AU BETA ----------
1677C--------TERMES DE [B0]=<T>CI-------
1678 c1=vksi(4,ng)*tc(ep,1,1)+veta(4,ng)*tc(ep,2,1)
1679 c2=vksi(4,ng)*tc(ep,1,2)+veta(4,ng)*tc(ep,2,2)
1680c IF (ISROT>0) THEN
1681 bxy(1)=vq(ep,1,1,ng)*c2
1682 bxy(2)=vq(ep,2,1,ng)*c2
1683 bxy(3)=vq(ep,3,1,ng)*c2
1684 byx(1)=vq(ep,1,2,ng)*c1
1685 byx(2)=vq(ep,2,2,ng)*c1
1686 byx(3)=vq(ep,3,2,ng)*c1
1687 bm(ep,30)=bxy(1)+byx(1)
1688 bm(ep,33)=bxy(2)+byx(2)
1689 bm(ep,36)=bxy(3)+byx(3)
1690 bm(ep,28)=vq(ep,1,1,ng)*c1
1691 bm(ep,29)=vq(ep,1,2,ng)*c2
1692C I = 2; JJ = 3*(KK+1)=30
1693 bm(ep,31)=vq(ep,2,1,ng)*c1
1694 bm(ep,32)=vq(ep,2,2,ng)*c2
1695C I = 3; JJ = 3*(KK+2)=33
1696 bm(ep,34)=vq(ep,3,1,ng)*c1
1697 bm(ep,35)=vq(ep,3,2,ng)*c2
1698C
1699 150 CONTINUE
1700 RETURN

◆ cbpatch()

subroutine cbpatch ( integer jft,
integer jlt,
bm0rz,
bmkrz,
bmerz,
area,
mx13,
mx23,
mx34,
my13,
my23,
my34 )

Definition at line 1087 of file cbadef.F.

1089C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
1090#include "implicit_f.inc"
1091#include "mvsiz_p.inc"
1092C-----------------------------------------------
1093C D U M M Y A R G U M E N T S
1094C-----------------------------------------------
1095 INTEGER JFT,JLT
1096 my_real
1097 . bm0rz(mvsiz,4,4),bmkrz(mvsiz,4,4),bmerz(mvsiz,4,4),
1098 . mx13(*),mx23(*),mx34(*),my13(*),my23(*),my34(*),area(*)
1099C-----------------------------------------------
1100C L O C A L V A R I A B L E S
1101C-----------------------------------------------
1102 INTEGER I, J, NPG, NG, IAC
1103 parameter(npg = 4)
1104 my_real
1105 . bm0rzm(mvsiz,4,4),j1,j2,j0,jac(mvsiz,4),det,jk_a,je_a
1106 my_real
1107 . vpg(2,npg),pg,pg1
1108 parameter(pg=.577350269189626)
1109 parameter(pg1=-.577350269189626)
1110C--------------------------
1111C INITIALISATION
1112C--------------------------
1113 DATA vpg/pg1,pg1,pg,pg1,pg,pg,pg1,pg/
1114C-------------Correction of BM0RZ to pass Patch test- IAC: analytical compute
1115 iac = 1
1116 IF (iac>0) THEN
1117 DO i=jft,jlt
1118 jk_a=four_over_3*(mx23(i)*my13(i)-mx13(i)*my23(i))/area(i)
1119 je_a=four_over_3*(mx13(i)*my34(i)-mx34(i)*my13(i))/area(i)
1120C--------NxI,x ------
1121 bm0rz(i,1,1) = -bmkrz(i,1,1)*jk_a-bmerz(i,1,1)*je_a
1122 bm0rz(i,1,2) = -bmkrz(i,1,2)*jk_a-bmerz(i,1,2)*je_a
1123 bm0rz(i,1,3) = -bmkrz(i,1,3)*jk_a-bmerz(i,1,3)*je_a
1124 bm0rz(i,1,4) = -bmkrz(i,1,4)*jk_a-bmerz(i,1,4)*je_a
1125C -------NyI,y -------------
1126 bm0rz(i,2,1) = -bmkrz(i,2,1)*jk_a-bmerz(i,2,1)*je_a
1127 bm0rz(i,2,2) = -bmkrz(i,2,2)*jk_a-bmerz(i,2,2)*je_a
1128 bm0rz(i,2,3) = -bmkrz(i,2,3)*jk_a-bmerz(i,2,3)*je_a
1129 bm0rz(i,2,4) = -bmkrz(i,2,4)*jk_a-bmerz(i,2,4)*je_a
1130C--------NxI,y ------
1131 bm0rz(i,3,1) = -bmkrz(i,3,1)*jk_a-bmerz(i,3,1)*je_a
1132 bm0rz(i,3,2) = -bmkrz(i,3,2)*jk_a-bmerz(i,3,2)*je_a
1133 bm0rz(i,3,3) = -bmkrz(i,3,3)*jk_a-bmerz(i,3,3)*je_a
1134 bm0rz(i,3,4) = -bmkrz(i,3,4)*jk_a-bmerz(i,3,4)*je_a
1135C -------NyI,y -------------
1136 bm0rz(i,4,1) = -bmkrz(i,4,1)*jk_a-bmerz(i,4,1)*je_a
1137 bm0rz(i,4,2) = -bmkrz(i,4,2)*jk_a-bmerz(i,4,2)*je_a
1138 bm0rz(i,4,3) = -bmkrz(i,4,3)*jk_a-bmerz(i,4,3)*je_a
1139 bm0rz(i,4,4) = -bmkrz(i,4,4)*jk_a-bmerz(i,4,4)*je_a
1140 ENDDO
1141 RETURN
1142 END IF !(ICN>0) THEN
1143C
1144 DO i=jft,jlt
1145 j1=(mx23(i)*my13(i)-mx13(i)*my23(i))*pg
1146 j2=-(mx13(i)*my34(i)-mx34(i)*my13(i))*pg
1147 j0=area(i)*fourth
1148 jac(i,1)=j0+j2-j1
1149 jac(i,2)=j0+j2+j1
1150 jac(i,3)=j0-j2+j1
1151 jac(i,4)=j0-j2-j1
1152 ENDDO
1153C
1154 DO i=jft,jlt
1155 DO j=1,4
1156 bm0rzm(i,1,j)=zero
1157 bm0rzm(i,2,j)=zero
1158 bm0rzm(i,3,j)=zero
1159 bm0rzm(i,4,j)=zero
1160 ENDDO
1161 ENDDO
1162C
1163 DO ng= 1,4
1164 DO i=jft,jlt
1165 det=jac(i,ng)/area(i)
1166 DO j=1,4
1167 bm0rzm(i,1,j) = bm0rzm(i,1,j)+ (bmkrz(i,1,j)*vpg(1,ng)+
1168 . bmerz(i,1,j)*vpg(2,ng))*det
1169 bm0rzm(i,2,j) = bm0rzm(i,2,j)+(bmkrz(i,2,j)*vpg(1,ng)+
1170 . bmerz(i,2,j)*vpg(2,ng))*det
1171 bm0rzm(i,3,j) = bm0rzm(i,3,j)+(bmkrz(i,3,j)*vpg(1,ng)+
1172 . bmerz(i,3,j)*vpg(2,ng))*det
1173 bm0rzm(i,4,j) = bm0rzm(i,4,j)+(bmkrz(i,4,j)*vpg(1,ng)+
1174 . bmerz(i,4,j)*vpg(2,ng))*det
1175C
1176 ENDDO
1177 ENDDO
1178 ENDDO
1179C
1180 DO i=jft,jlt
1181 DO j=1,4
1182 bm0rz(i,1,j) = -bm0rzm(i,1,j)
1183 bm0rz(i,2,j) = -bm0rzm(i,2,j)
1184 bm0rz(i,3,j) = -bm0rzm(i,3,j)
1185 bm0rz(i,4,j) = -bm0rzm(i,4,j)
1186C
1187 ENDDO
1188 ENDDO
1189C
1190 RETURN