OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
c3epsini.F File Reference
#include "implicit_f.inc"
#include "mvsiz_p.inc"
#include "param_c.inc"
#include "scr03_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine c3epsini (elbuf_str, mat_param, jft, jlt, ismstr, mtn, ithk, pm, geo, ixtg, x, xreftg, for, thk, eint, gstr, nlay, px1g, py1g, py2g, x2s, x3s, y3s, uvar, ipm, nel, dir_a, dir_b, sigi, npf, tf, irep, ish3nfr, imat)
subroutine c3pxpyi (jft, jlt, ismstr, px1g, py1g, py2g, px1, py1, py2, x2l, x3l, y3l, x1g, x2g, x3g, y1g, y2g, y3g, z1g, z2g, z3g, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z)
subroutine c3defoi (jft, jlt, nel, vl, gstr, px1, py1, py2, area, exx, eyy, exy, eyz, ezx, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z)
subroutine c3newve3 (jft, jlt, ecos, esin, area, x1, x2, x3, y1, y2, y3, z1, z2, z3, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z)
subroutine shtroto3 (jft, jlt, ecos, esin, gstr, nel)

Function/Subroutine Documentation

◆ c3defoi()

subroutine c3defoi ( integer jft,
integer jlt,
integer nel,
vl,
gstr,
px1,
py1,
py2,
area,
exx,
eyy,
exy,
eyz,
ezx,
e1x,
e2x,
e3x,
e1y,
e2y,
e3y,
e1z,
e2z,
e3z )

Definition at line 341 of file c3epsini.F.

345C-----------------------------------------------
346C I m p l i c i t T y p e s
347C-----------------------------------------------
348#include "implicit_f.inc"
349C-----------------------------------------------
350C G l o b a l P a r a m e t e r s
351C-----------------------------------------------
352#include "mvsiz_p.inc"
353C-----------------------------------------------
354C D u m m y A r g u m e n t s
355C-----------------------------------------------
356 INTEGER JFT, JLT,NEL
357 my_real vl(3,3,*),gstr(nel,8),px1(*),py1(*),py2(*),
358 . exx(mvsiz) , eyy(mvsiz) , exy(mvsiz) ,
359 . ezx(mvsiz) , eyz(mvsiz) , area(mvsiz),
360 . e1x(mvsiz) , e1y(mvsiz) , e1z(mvsiz) ,
361 . e2x(mvsiz) , e2y(mvsiz) , e2z(mvsiz) ,
362 . e3x(mvsiz) , e3y(mvsiz) , e3z(mvsiz)
363C-----------------------------------------------
364C L o c a l V a r i a b l e s
365C-----------------------------------------------
366 INTEGER I
367 my_real
368 . vx1(mvsiz) , vx2(mvsiz) , vx3(mvsiz) ,
369 . vy1(mvsiz) , vy2(mvsiz) , vy3(mvsiz) ,
370 . vz1(mvsiz) , vz2(mvsiz) , vz3(mvsiz) ,
371 . vx12(mvsiz), vx13(mvsiz), vx23(mvsiz),
372 . vy12(mvsiz), vy13(mvsiz), vy23(mvsiz),
373 . vz12(mvsiz), vz13(mvsiz), vz23(mvsiz)
374 my_real
375 . tmp1, tmp2, fac1
376C=======================================================================
377 DO i=jft,jlt
378 vx1(i)=e1x(i)*vl(1,1,i)+e1y(i)*vl(2,1,i)+e1z(i)*vl(3,1,i)
379 vx2(i)=e1x(i)*vl(1,2,i)+e1y(i)*vl(2,2,i)+e1z(i)*vl(3,2,i)
380 vx3(i)=e1x(i)*vl(1,3,i)+e1y(i)*vl(2,3,i)+e1z(i)*vl(3,3,i)
381C
382 vy3(i)=e2x(i)*vl(1,3,i)+e2y(i)*vl(2,3,i)+e2z(i)*vl(3,3,i)
383 vy2(i)=e2x(i)*vl(1,2,i)+e2y(i)*vl(2,2,i)+e2z(i)*vl(3,2,i)
384 vy1(i)=e2x(i)*vl(1,1,i)+e2y(i)*vl(2,1,i)+e2z(i)*vl(3,1,i)
385C
386 vz1(i)=e3x(i)*vl(1,1,i)+e3y(i)*vl(2,1,i)+e3z(i)*vl(3,1,i)
387 vz2(i)=e3x(i)*vl(1,2,i)+e3y(i)*vl(2,2,i)+e3z(i)*vl(3,2,i)
388 vz3(i)=e3x(i)*vl(1,3,i)+e3y(i)*vl(2,3,i)+e3z(i)*vl(3,3,i)
389 ENDDO
390C
391 DO i=jft,jlt
392 vz12(i)=vz1(i) - vz2(i)
393 vz13(i)=vz1(i) - vz3(i)
394 vz23(i)=vz2(i) - vz3(i)
395C
396 tmp1 = fourth * vz12(i) / (py1(i)+py2(i))
397 tmp2 = (py1(i) * vz1(i) + py2(i) * vz2(i)) / (py1(i)+py2(i))
398 tmp2 = fourth * (tmp2 - vz3(i)) / px1(i)
399C
400 vx1(i) = vx1(i) - vz1(i) * tmp1
401 vx2(i) = vx2(i) - vz2(i) * tmp1
402 vx3(i) = vx3(i) - vz3(i) * tmp1
403C
404 vy1(i) = vy1(i) - vz1(i) * tmp2
405 vy2(i) = vy2(i) - vz2(i) * tmp2
406 vy3(i) = vy3(i) - vz3(i) * tmp2
407C
408 vx12(i)=vx1(i) - vx2(i)
409 vy12(i)=vy1(i) - vy2(i)
410 vx13(i)=vx1(i) - vx3(i)
411 vy13(i)=vy1(i) - vy3(i)
412 vx23(i)=vx2(i) - vx3(i)
413 vy23(i)=vy2(i) - vy3(i)
414C
415 exx(i)=px1(i)*vx12(i)
416 eyy(i)=py1(i)*vy13(i) + py2(i)*vy23(i)
417C
418 exy(i)=py1(i)*vx13(i) + py2(i)*vx23(i) + px1(i)*vy12(i)
419 eyz(i)=py1(i)*vz13(i) + py2(i)*vz23(i)
420 ezx(i)=px1(i)*vz12(i)
421 ENDDO
422C
423 DO i=jft,jlt
424 fac1 = one/area(i)
425 exx(i)=exx(i)*fac1
426 eyy(i)=eyy(i)*fac1
427 exy(i)=exy(i)*fac1
428 ENDDO
429C
430 DO i=jft,jlt
431 gstr(i,1)=gstr(i,1)+exx(i)
432 gstr(i,2)=gstr(i,2)+eyy(i)
433 gstr(i,3)=gstr(i,3)+exy(i)
434 ENDDO
435c-----------
436 RETURN
#define my_real
Definition cppsort.cpp:32
subroutine area(d1, x, x2, y, y2, eint, stif0)

◆ c3epsini()

subroutine c3epsini ( type (elbuf_struct_), target elbuf_str,
type (matparam_struct_), intent(in) mat_param,
integer jft,
integer jlt,
integer ismstr,
integer mtn,
integer ithk,
pm,
geo,
integer, dimension(nixtg,*) ixtg,
x,
xreftg,
for,
thk,
eint,
gstr,
integer nlay,
px1g,
py1g,
py2g,
x2s,
x3s,
y3s,
uvar,
integer, dimension(npropmi,*) ipm,
integer nel,
dir_a,
dir_b,
sigi,
integer, dimension(*) npf,
tf,
integer irep,
integer ish3nfr,
integer imat )

Definition at line 37 of file c3epsini.F.

45C-----------------------------------------------
46C M o d u l e s
47C-----------------------------------------------
48 USE mat_elem_mod
49 use element_mod , only : nixtg
50C-----------------------------------------------
51C I m p l i c i t T y p e s
52C-----------------------------------------------
53#include "implicit_f.inc"
54C-----------------------------------------------
55C G l o b a l P a r a m e t e r s
56C-----------------------------------------------
57#include "mvsiz_p.inc"
58C-----------------------------------------------
59C C o m m o n B l o c k s
60C-----------------------------------------------
61#include "param_c.inc"
62#include "scr03_c.inc"
63C-----------------------------------------------
64C D u m m y A r g u m e n t s
65C-----------------------------------------------
66 INTEGER JFT,JLT,ISMSTR,MTN,ITHK,NEL,NLAY,IREP,ISH3NFR,IMAT
67 INTEGER IXTG(NIXTG,*),IPM(NPROPMI,*),NPF(*)
69 . pm(npropm,*),geo(npropg,*),x(3,*),xreftg(3,3,*),
70 . for(nel,5) ,thk(*) ,eint(nel,2),gstr(nel,8),
71 . px1g(*) ,py1g(*) ,py2g(*),x2s(*) ,x3s(*) ,y3s(*),
72 . uvar(*),dir_a(nel,*),dir_b(nel,*),sigi(nel,3),tf(*),
73 . px1(mvsiz), py1(mvsiz), py2(mvsiz)
74 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_STR
75 TYPE (MATPARAM_STRUCT_) ,INTENT(IN) :: MAT_PARAM
76C------------------------------------------------------
77C L o c a l V a r i a b l e s
78C-----------------------------------------------
79 INTEGER I, NT, I1, I2, I3,IDRAPE,IGTYP
80 my_real fac
81 my_real ecos(mvsiz),esin(mvsiz),
82 . e1x(mvsiz), e1y(mvsiz), e1z(mvsiz),
83 . e2x(mvsiz), e2y(mvsiz), e2z(mvsiz),
84 . e3x(mvsiz), e3y(mvsiz), e3z(mvsiz),
85 . exx(mvsiz),eyy(mvsiz),exy(mvsiz),eyz(mvsiz),ezx(mvsiz),
86 . x1(mvsiz) , x2(mvsiz) , x3(mvsiz) ,x4(mvsiz) ,
87 . y1(mvsiz) , y2(mvsiz) , y3(mvsiz) ,y4(mvsiz) ,
88 . z1(mvsiz) , z2(mvsiz) , z3(mvsiz) ,z4(mvsiz) ,
89 . x31(mvsiz) , y31(mvsiz) , z31(mvsiz),
90 . vl(3,3,mvsiz), xl(3,3,mvsiz),area(mvsiz),
91 . x2h(mvsiz), x3h(mvsiz), y3h(mvsiz),
92 . x2l(mvsiz), x3l(mvsiz), y3l(mvsiz)
93 my_real, DIMENSION(:) , POINTER :: dir1, dir2
94C=======================================================================
95 idrape = elbuf_str%IDRAPE
96 igtyp = elbuf_str%IGTYP
97 DO i=jft,jlt
98 i1 = ixtg(2,i)
99 i2 = ixtg(3,i)
100 i3 = ixtg(4,i)
101 x1(i) = zero
102 y1(i) = zero
103 z1(i) = zero
104 x2(i) = x(1,i2) - x(1,i1)
105 y2(i) = x(2,i2) - x(2,i1)
106 z2(i) = x(3,i2) - x(3,i1)
107 x3(i) = x(1,i3) - x(1,i1)
108 y3(i) = x(2,i3) - x(2,i1)
109 z3(i) = x(3,i3) - x(3,i1)
110 ENDDO
111c
112 CALL c3evec3(jft ,jlt ,area,
113 . x1 ,x2 ,x3 ,y1 ,y2 ,y3 ,
114 . z1 ,z2 ,z3 ,e1x ,e2x ,e3x ,
115 . e1y ,e2y ,e3y ,e1z ,e2z ,e3z ,
116 . x31, y31, z31 ,x2l ,x3l ,y3l )
117c
118 DO i=jft,jlt
119 xl(1,2,i) = e1x(i)*x2(i) + e1y(i)*y2(i) + e1z(i)*z2(i)
120 xl(2,2,i) = e2x(i)*x2(i) + e2y(i)*y2(i) + e2z(i)*z2(i)
121 xl(1,3,i) = e1x(i)*x3(i) + e1y(i)*y3(i) + e1z(i)*z3(i)
122 xl(2,3,i) = e2x(i)*x3(i) + e2y(i)*y3(i) + e2z(i)*z3(i)
123 ENDDO
124 DO i=jft,jlt
125 x2(i) = xreftg(2,1,i) - xreftg(1,1,i)
126 y2(i) = xreftg(2,2,i) - xreftg(1,2,i)
127 z2(i) = xreftg(2,3,i) - xreftg(1,3,i)
128 x3(i) = xreftg(3,1,i) - xreftg(1,1,i)
129 y3(i) = xreftg(3,2,i) - xreftg(1,2,i)
130 z3(i) = xreftg(3,3,i) - xreftg(1,3,i)
131 ENDDO
132c
133 CALL c3evec3(jft ,jlt ,area,
134 . x1 ,x2 ,x3 ,y1 ,y2 ,y3 ,
135 . z1 ,z2 ,z3 ,e1x ,e2x ,e3x ,
136 . e1y ,e2y ,e3y ,e1z ,e2z ,e3z ,
137 . x31, y31, z31 ,x2l ,x3l ,y3l )
138c
139C--------For small strain case
140c
141 IF (ish3nfr ==0 ) CALL c3newve3(jft ,jlt ,ecos,esin,area,
142 . x1 ,x2 ,x3 ,y1 ,y2 ,y3 ,
143 . z1 ,z2 ,z3 ,e1x ,e2x ,e3x ,
144 . e1y ,e2y ,e3y ,e1z ,e2z ,e3z )
145c
146 fac = one/float(nitrs)
147 DO i=jft,jlt
148 vl(1,1,i) = zero
149 vl(2,1,i) = zero
150 vl(3,1,i) = zero
151 vl(1,2,i) = e1x(i)*xl(1,2,i) + e2x(i)*xl(2,2,i)
152 vl(2,2,i) = e1y(i)*xl(1,2,i) + e2y(i)*xl(2,2,i)
153 vl(3,2,i) = e1z(i)*xl(1,2,i) + e2z(i)*xl(2,2,i)
154 vl(1,3,i) = e1x(i)*xl(1,3,i) + e2x(i)*xl(2,3,i)
155 vl(2,3,i) = e1y(i)*xl(1,3,i) + e2y(i)*xl(2,3,i)
156 vl(3,3,i) = e1z(i)*xl(1,3,i) + e2z(i)*xl(2,3,i)
157c
158 vl(1,2,i) = (vl(1,2,i) - x2(i))*fac
159 vl(2,2,i) = (vl(2,2,i) - y2(i))*fac
160 vl(3,2,i) = (vl(3,2,i) - z2(i))*fac
161 vl(1,3,i) = (vl(1,3,i) - x3(i))*fac
162 vl(2,3,i) = (vl(2,3,i) - y3(i))*fac
163 vl(3,3,i) = (vl(3,3,i) - z3(i))*fac
164 ENDDO
165c-----------------------------------------------------------
166 IF (ismstr/=1 .AND. ismstr/=11) THEN
167C
168 DO nt=1,nitrs
169c FAC = FLOAT(NT) / FLOAT(NITRS)
170 fac = float(nt) - one
171 DO i=jft,jlt
172 x1(i) = xreftg(1,1,i) + fac*vl(1,1,i)
173 y1(i) = xreftg(1,2,i) + fac*vl(2,1,i)
174 z1(i) = xreftg(1,3,i) + fac*vl(3,1,i)
175 x2(i) = xreftg(2,1,i) + fac*vl(1,2,i)
176 y2(i) = xreftg(2,2,i) + fac*vl(2,2,i)
177 z2(i) = xreftg(2,3,i) + fac*vl(3,2,i)
178 x3(i) = xreftg(3,1,i) + fac*vl(1,3,i)
179 y3(i) = xreftg(3,2,i) + fac*vl(2,3,i)
180 z3(i) = xreftg(3,3,i) + fac*vl(3,3,i)
181 ENDDO
182c
183 CALL c3evec3(jft ,jlt ,area,
184 . x1 ,x2 ,x3 ,y1 ,y2 ,y3 ,
185 . z1 ,z2 ,z3 ,e1x ,e2x ,e3x ,
186 . e1y ,e2y ,e3y ,e1z ,e2z ,e3z ,
187 . x31, y31, z31 ,x2l ,x3l ,y3l )
188c
189 IF (ish3nfr==0) CALL c3newve3(jft ,jlt ,ecos,esin,area,
190 . x1 ,x2 ,x3 ,y1 ,y2 ,y3 ,
191 . z1 ,z2 ,z3 ,e1x ,e2x ,e3x ,
192 . e1y ,e2y ,e3y ,e1z ,e2z ,e3z )
193c
194 CALL corth3(elbuf_str,dir_a,dir_b,jft,jlt,
195 . nlay ,irep ,nel ,
196 . x1 ,x2 ,x3 ,x4 ,y1 ,y2 ,
197 . y3 ,y4 ,z1 ,z2 ,z3 ,z4 ,
198 . e1x, e2x, e3x, e1y, e2y, e3y ,e1z, e2z, e3z ,
199 . idrape , igtyp )
200c
201 CALL c3pxpyi(jft ,jlt ,ismstr,
202 . px1g ,py1g ,py2g ,
203 . px1 ,py1 ,py2 ,
204 . x2h ,x3h ,y3h ,
205 . x1 ,x2 ,x3 ,y1 ,y2 ,y3 ,
206 . z1 ,z2 ,z3 ,e1x ,e2x ,e3x ,
207 . e1y ,e2y ,e3y ,e1z ,e2z ,e3z )
208 CALL c3defoi(jft ,jlt ,nel ,vl ,gstr,
209 . px1 ,py1 ,py2 ,area,
210 . exx ,eyy ,exy ,eyz ,ezx ,
211 . e1x ,e2x ,e3x ,e1y ,e2y ,e3y ,e1z ,e2z ,e3z )
212c
213 IF (ish3nfr ==0 ) CALL shtroto3(jft,jlt,ecos,esin,gstr,nel)
214c
215 CALL cmlawi(mat_param,
216 . jft ,jlt ,mtn ,ithk ,pm ,
217 . for ,thk ,eint ,gstr ,dir_a ,
218 . dir_b ,uvar ,ipm ,
219 . nel ,sigi ,npf ,tf ,
220 . area ,exx ,eyy ,exy ,imat )
221C
222 ENDDO
223 ELSE
224C------
225C SMALL STRAIN FORMULATION.
226C------
227 CALL c3pxpyi(jft ,jlt ,ismstr,
228 . px1g ,py1g ,py2g ,
229 . px1 ,py1 ,py2 ,
230 . x2s ,x3s ,y3s ,
231 . x1 ,x2 ,x3 ,y1 ,y2 ,y3 ,
232 . z1 ,z2 ,z3 ,e1x ,e2x ,e3x ,
233 . e1y ,e2y ,e3y ,e1z ,e2z ,e3z )
234 dir1 => elbuf_str%BUFLY(1)%DIRA
235 dir2 => elbuf_str%BUFLY(1)%DIRB
236c
237 DO nt=1,nitrs
238 CALL c3defoi(jft ,jlt ,nel ,vl ,gstr,
239 . px1 ,py1 ,py2 ,area,
240 . exx ,eyy ,exy ,eyz ,ezx ,
241 . e1x ,e2x ,e3x ,e1y ,e2y ,e3y ,e1z ,e2z ,e3z )
242c
243 IF (ish3nfr == 0) CALL shtroto3(jft,jlt,ecos,esin,gstr,nel)
244c
245 CALL cmlawi(mat_param,
246 . jft ,jlt ,mtn ,ithk ,pm ,
247 . for ,thk ,eint ,gstr ,dir1 ,
248 . dir2 ,uvar ,ipm ,
249 . nel ,sigi ,npf ,tf ,
250 . area ,exx ,eyy ,exy ,imat )
251 ENDDO
252c
253 ENDIF
254c-----------
255 RETURN
subroutine c3newve3(jft, jlt, ecos, esin, area, x1, x2, x3, y1, y2, y3, z1, z2, z3, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z)
Definition c3epsini.F:449
subroutine shtroto3(jft, jlt, ecos, esin, gstr, nel)
Definition c3epsini.F:522
subroutine c3defoi(jft, jlt, nel, vl, gstr, px1, py1, py2, area, exx, eyy, exy, eyz, ezx, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z)
Definition c3epsini.F:345
subroutine c3pxpyi(jft, jlt, ismstr, px1g, py1g, py2g, px1, py1, py2, x2l, x3l, y3l, x1g, x2g, x3g, y1g, y2g, y3g, z1g, z2g, z3g, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z)
Definition c3epsini.F:271
subroutine cmlawi(mat_param, jft, jlt, ilaw, ithk, pm, for, thk, eint, gstr, dir1, dir2, uvar, ipm, nel, sigi, npf, tf, area, exx, eyy, exy, imat)
Definition cepsini.F:280
subroutine corth3(elbuf_str, dir_a, dir_b, jft, jlt, nlay, irep, nel, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z, idrape, igtyp)
Definition corth3.F:42
for(i8=*sizetab-1;i8 >=0;i8--)
subroutine c3evec3(jft, jlt, area, x1, x2, x3, y1, y2, y3, z1, z2, z3, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z, x31, y31, z31, x2l, x3l, y3l)
Definition c3evec3.F:39

◆ c3newve3()

subroutine c3newve3 ( integer jft,
integer jlt,
ecos,
esin,
area,
x1,
x2,
x3,
y1,
y2,
y3,
z1,
z2,
z3,
e1x,
e2x,
e3x,
e1y,
e2y,
e3y,
e1z,
e2z,
e3z )

Definition at line 445 of file c3epsini.F.

449C-----------------------------------------------
450C I m p l i c i t T y p e s
451C-----------------------------------------------
452#include "implicit_f.inc"
453C-----------------------------------------------
454C G l o b a l P a r a m e t e r s
455C-----------------------------------------------
456#include "mvsiz_p.inc"
457C-----------------------------------------------
458C D u m m y A r g u m e n t s
459C-----------------------------------------------
460 INTEGER JFT, JLT
461 my_real
462 . ecos(mvsiz),esin(mvsiz),area(mvsiz),
463 . e1x(mvsiz), e1y(mvsiz), e1z(mvsiz),
464 . e2x(mvsiz), e2y(mvsiz), e2z(mvsiz),
465 . e3x(mvsiz), e3y(mvsiz), e3z(mvsiz),
466 . x1(mvsiz) , x2(mvsiz) , x3(mvsiz) ,
467 . y1(mvsiz) , y2(mvsiz) , y3(mvsiz) ,
468 . z1(mvsiz) , z2(mvsiz) , z3(mvsiz)
469C-----------------------------------------------
470C L o c a l V a r i a b l e s
471C-----------------------------------------------
472 INTEGER I
473 my_real aa,bb,
474 . e1x0(mvsiz), e1y0(mvsiz), e1z0(mvsiz),
475 . e2x0(mvsiz), e2y0(mvsiz), e2z0(mvsiz),
476 . e3x0(mvsiz), e3y0(mvsiz), e3z0(mvsiz)
477C=======================================================================
478 DO i=jft,jlt
479 e1x0(i) = e1x(i)
480 e1y0(i) = e1y(i)
481 e1z0(i) = e1z(i)
482 e2x0(i) = e2x(i)
483 e2y0(i) = e2y(i)
484 e2z0(i) = e2z(i)
485 e3x0(i) = e3x(i)
486 e3y0(i) = e3y(i)
487 e3z0(i) = e3z(i)
488 ENDDO
489c
490 CALL cdkevec3(jft ,jlt ,area,
491 . x1 ,x2 ,x3 ,y1 ,y2 ,y3 ,
492 . z1 ,z2 ,z3 ,e1x ,e2x ,e3x ,
493 . e1y ,e2y ,e3y ,e1z ,e2z ,e3z )
494c
495 DO i=jft,jlt
496 ecos(i) = e1x(i)*e1x0(i)+e1y(i)*e1y0(i)+e1z(i)*e1z0(i)
497 aa = max(zero,one-ecos(i)*ecos(i))
498 esin(i) = sqrt(aa)
499 bb = e1x(i)*e2x0(i)+e1y(i)*e2y0(i)+e1z(i)*e2z0(i)
500 IF (bb >zero) esin(i) = -esin(i)
501 ENDDO
502 DO i=jft,jlt
503 e1x(i) = e1x0(i)
504 e1y(i) = e1y0(i)
505 e1z(i) = e1z0(i)
506 e2x(i) = e2x0(i)
507 e2y(i) = e2y0(i)
508 e2z(i) = e2z0(i)
509 e3x(i) = e3x0(i)
510 e3y(i) = e3y0(i)
511 e3z(i) = e3z0(i)
512 ENDDO
513c-----------
514 RETURN
subroutine cdkevec3(jft, jlt, area, x1, x2, x3, y1, y2, y3, z1, z2, z3, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z)
Definition cdkevec3.F:38
#define max(a, b)
Definition macros.h:21

◆ c3pxpyi()

subroutine c3pxpyi ( integer jft,
integer jlt,
integer ismstr,
px1g,
py1g,
py2g,
px1,
py1,
py2,
x2l,
x3l,
y3l,
x1g,
x2g,
x3g,
y1g,
y2g,
y3g,
z1g,
z2g,
z3g,
e1x,
e2x,
e3x,
e1y,
e2y,
e3y,
e1z,
e2z,
e3z )

Definition at line 264 of file c3epsini.F.

271C-----------------------------------------------
272C I m p l i c i t T y p e s
273C-----------------------------------------------
274#include "implicit_f.inc"
275C-----------------------------------------------
276C G l o b a l P a r a m e t e r s
277C-----------------------------------------------
278#include "mvsiz_p.inc"
279C-----------------------------------------------
280C D u m m y A r g u m e n t s
281C-----------------------------------------------
282 INTEGER JFT, JLT, ISMSTR
283C REAL
284 my_real
285 . px1(*), py1(*), py2(*),
286 . px1g(*), py1g(*), py2g(*),
287 . x2l(*),x3l(*),y3l(*),
288 . x1g(mvsiz), x2g(mvsiz), x3g(mvsiz),
289 . y1g(mvsiz), y2g(mvsiz), y3g(mvsiz),
290 . z1g(mvsiz), z2g(mvsiz), z3g(mvsiz),
291 . e1x(mvsiz), e1y(mvsiz), e1z(mvsiz),
292 . e2x(mvsiz), e2y(mvsiz), e2z(mvsiz),
293 . e3x(mvsiz), e3y(mvsiz), e3z(mvsiz)
294C-----------------------------------------------
295C L o c a l V a r i a b l e s
296C-----------------------------------------------
297 INTEGER I
298 my_real x21g(mvsiz), y21g(mvsiz), z21g(mvsiz),
299 . x31g(mvsiz), y31g(mvsiz), z31g(mvsiz)
300C=======================================================================
301 IF (ismstr/=3)THEN
302 DO i=jft,jlt
303 x21g(i)=x2g(i)-x1g(i)
304 y21g(i)=y2g(i)-y1g(i)
305 z21g(i)=z2g(i)-z1g(i)
306 x31g(i)=x3g(i)-x1g(i)
307 y31g(i)=y3g(i)-y1g(i)
308 z31g(i)=z3g(i)-z1g(i)
309 ENDDO
310C
311 DO i=jft,jlt
312 y3l(i)=e2x(i)*x31g(i)+e2y(i)*y31g(i)+e2z(i)*z31g(i)
313 x3l(i)=e1x(i)*x31g(i)+e1y(i)*y31g(i)+e1z(i)*z31g(i)
314 x2l(i)=e1x(i)*x21g(i)+e1y(i)*y21g(i)+e1z(i)*z21g(i)
315 ENDDO
316C
317 DO i=jft,jlt
318 px1(i)=-half * y3l(i)
319 py1(i)= half *(x3l(i)-x2l(i))
320 py2(i)=-half * x3l(i)
321 ENDDO
322C
323 ELSE
324C
325 DO i=jft,jlt
326 px1(i) = px1g(i)
327 py1(i) = py1g(i)
328 py2(i) = py2g(i)
329 ENDDO
330C
331 ENDIF
332C
333 RETURN

◆ shtroto3()

subroutine shtroto3 ( integer jft,
integer jlt,
ecos,
esin,
gstr,
integer nel )

Definition at line 521 of file c3epsini.F.

522C-----------------------------------------------
523C I m p l i c i t T y p e s
524C-----------------------------------------------
525#include "implicit_f.inc"
526C-----------------------------------------------
527C G l o b a l P a r a m e t e r s
528C-----------------------------------------------
529#include "mvsiz_p.inc"
530C-----------------------------------------------
531C D u m m y A r g u m e n t s
532C-----------------------------------------------
533 INTEGER JFT, JLT,NEL
534C REAL
535 my_real
536 . gstr(nel,8),ecos(mvsiz),esin(mvsiz)
537C-----------------------------------------------
538C L o c a l V a r i a b l e s
539C-----------------------------------------------
540 INTEGER I
541C REAL
542 my_real
543 . m2(mvsiz),n2(mvsiz),mn(mvsiz),cm(4),mn2(mvsiz),t1
544C-----------------------------------------------
545 DO i=jft,jlt
546 m2(i)= ecos(i)*ecos(i)
547 n2(i)= esin(i)*esin(i)
548 mn(i)= ecos(i)*esin(i)
549 mn2(i)= two*mn(i)
550 ENDDO
551C------Exy :2*exy
552 DO i=jft,jlt
553 t1 = gstr(i,3)*mn(i)
554 cm(1)=m2(i)*gstr(i,1)+n2(i)*gstr(i,2)-t1
555 cm(2)=n2(i)*gstr(i,1)+m2(i)*gstr(i,2)+t1
556 cm(3)=(gstr(i,1)-gstr(i,2))*mn2(i)+gstr(i,3)*(m2(i)-n2(i))
557 gstr(i,1)=cm(1)
558 gstr(i,2)=cm(2)
559 gstr(i,3)=cm(3)
560 ENDDO
561C
562 RETURN