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

Go to the source code of this file.

Functions/Subroutines

subroutine q4deric2 (y1, y2, y3, y4, z1, z2, z3, z4, y12, y34, y13, y24, y14, y23, z12, z34, z13, z24, z14, z23, pyc1, pyc2, pzc1, pzc2, aire, volu, yavg, rx, ry, rz, sx, sy, sz, nel, jhbe)

Function/Subroutine Documentation

◆ q4deric2()

subroutine q4deric2 ( y1,
y2,
y3,
y4,
z1,
z2,
z3,
z4,
y12,
y34,
y13,
y24,
y14,
y23,
z12,
z34,
z13,
z24,
z14,
z23,
pyc1,
pyc2,
pzc1,
pzc2,
aire,
volu,
yavg,
rx,
ry,
rz,
sx,
sy,
sz,
integer, intent(in) nel,
integer, intent(in) jhbe )

Definition at line 29 of file q4deric2.F.

39C-----------------------------------------------
40C I m p l i c i t T y p e s
41C-----------------------------------------------
42#include "implicit_f.inc"
43C-----------------------------------------------
44C G l o b a l P a r a m e t e r s
45C-----------------------------------------------
46#include "mvsiz_p.inc"
47C-----------------------------------------------
48C C o m m o n B l o c k s
49C-----------------------------------------------
50#include "com01_c.inc"
51C-----------------------------------------------
52C D u m m y A r g u m e n t s
53C-----------------------------------------------
54 INTEGER, INTENT(IN) :: NEL
55 INTEGER, INTENT(IN) :: JHBE
56C REAL
58 . y1(*),y2(*),y3(*),y4(*),z1(*),z2(*),z3(*),z4(*),
59 . y12(*),y34(*),y13(*),y24(*),y14(*),y23(*),
60 . z12(*),z34(*),z13(*),z24(*),z14(*),z23(*),
61 . pyc1(*),pyc2(*),pzc1(*),pzc2(*),aire(*),volu(*),
62 . rx(mvsiz) , ry(mvsiz) , rz(mvsiz) ,
63 . sx(mvsiz) , sy(mvsiz) , sz(mvsiz) ,yavg(*)
64C-----------------------------------------------
65c FUNCTION:
66c ARGUMENTS: (I: input, O: output, IO: input & output, W: workspace)
67c TYPE NAME FUNCTION
68c I Y1(*)~Z4(*) - NODAL COORDINATES
69c O Y12(*)~Z23(*) - DIFFERENCE: Yi-Yj, Zi-Zj
70c O PYC1(*)~PZC2(*) - SHAPE DERIVATIVES AT ELEMENT CENTER
71c I AIRE(*) - ELEMENT AREA
72c I/O VOL(*) - ELEMENT VOL
73C-----------------------------------------------
74C L o c a l V a r i a b l e s
75C-----------------------------------------------
76 INTEGER I
77C REAL
79 . y,z,v0
80C-----------------------------------------------
81C S o u r c e L i n e s
82C-----------------------------------------------
83 DO i=1,nel
84 y12(i) = y1(i) - y2(i)
85 y34(i) = y3(i) - y4(i)
86 y13(i) = y1(i) - y3(i)
87 y24(i) = y2(i) - y4(i)
88 y14(i) = y1(i) - y4(i)
89 y23(i) = y2(i) - y3(i)
90 z12(i) = z1(i) - z2(i)
91 z34(i) = z3(i) - z4(i)
92 z13(i) = z1(i) - z3(i)
93 z24(i) = z2(i) - z4(i)
94 z14(i) = z1(i) - z4(i)
95 z23(i) = z2(i) - z3(i)
96 END DO
97C
98 DO i=1,nel
99C dNi/dY, dNi/dZ, A=4.*|J|
100 pyc1(i) = half*(z2(i)-z4(i))/aire(i)
101 pyc2(i) = half*(z3(i)-z1(i))/aire(i)
102 pzc1(i) = half*(y4(i)-y2(i))/aire(i)
103 pzc2(i) = half*(y1(i)-y3(i))/aire(i)
104 ENDDO
105C COMPUTE VOLUME/(2*PI) FOR AXISYMMETRIC CASE
106 IF(n2d==1.AND.jhbe==17) THEN
107 DO i=1,nel
108 volu(i) = fourth*yavg(i)*aire(i)
109 ENDDO
110 ENDIF
111 DO i=1,nel
112 rx(i) = one
113 ry(i) = zero
114 rz(i) = zero
115 sx(i) = zero
116 sy(i) =half*(y2(i)+y3(i)-y1(i)-y4(i))
117 sz(i) =half*(z2(i)+z3(i)-z1(i)-z4(i))
118 END DO
119C
120 RETURN
#define my_real
Definition cppsort.cpp:32