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

Go to the source code of this file.

Functions/Subroutines

subroutine cgshell4 (elbuf_str, jft, jlt, pm, ixc, x, mas, xc, yc, zc)
subroutine cgshell3 (elbuf_str, jft, jlt, pm, ixtg, x, mas, xc, yc, zc)

Function/Subroutine Documentation

◆ cgshell3()

subroutine cgshell3 ( type (elbuf_struct_), target elbuf_str,
integer jft,
integer jlt,
pm,
integer, dimension(nixtg,*) ixtg,
x,
mas,
xc,
yc,
zc )

Definition at line 101 of file cgshell.F.

103C-----------------------------------------------
104 USE elbufdef_mod
105C-----------------------------------------------
106C I m p l i c i t T y p e s
107C-----------------------------------------------
108#include "implicit_f.inc"
109C-----------------------------------------------
110C C o m m o n B l o c k s
111C-----------------------------------------------
112#include "mvsiz_p.inc"
113#include "param_c.inc"
114C-----------------------------------------------
115C D u m m y A r g u m e n t s
116C-----------------------------------------------
117 INTEGER IXTG(NIXTG,*), JFT, JLT
118C REAL
119 my_real
120 . pm(npropm,*),x(3,*),mas,xc,yc,zc
121 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_STR
122C-----------------------------------------------
123C L o c a l V a r i a b l e s
124C-----------------------------------------------
125 INTEGER I,MAT
126C REAL
127 my_real
128 . xx,yy,zz,xmas25,xmas(mvsiz),area(mvsiz),
129 . rx, ry, rz,sx,sy,sz,e3x,e3y,e3z
130 TYPE(G_BUFEL_) ,POINTER :: GBUF
131C-----------------------------------------------
132 gbuf => elbuf_str%GBUF
133 DO i=jft,jlt
134 rx=x(1,ixtg(3,i))-x(1,ixtg(2,i))
135 sx=x(1,ixtg(4,i))-x(1,ixtg(2,i))
136 ry=x(2,ixtg(3,i))-x(2,ixtg(2,i))
137 sy=x(2,ixtg(4,i))-x(2,ixtg(2,i))
138 rz=x(3,ixtg(3,i))-x(3,ixtg(2,i))
139 sz=x(3,ixtg(4,i))-x(3,ixtg(2,i))
140 e3x = ry * sz - rz * sy
141 e3y = rz * sx - rx * sz
142 e3z = rx * sy - ry * sx
143 area(i) =half*sqrt(e3x*e3x + e3y*e3y + e3z*e3z)
144 END DO
145 DO i=jft,jlt
146 mat = ixtg(1,i)
147 xmas(i)=pm(1,mat)*area(i)*gbuf%THK(i)
148 END DO
149C
150C
151 DO i=jft,jlt
152 IF (gbuf%OFF(i) ==zero) cycle
153 xx= x(1,ixtg(2,i))+x(1,ixtg(3,i))+x(1,ixtg(4,i))
154 yy= x(2,ixtg(2,i))+x(2,ixtg(3,i))+x(2,ixtg(4,i))
155 zz= x(3,ixtg(2,i))+x(3,ixtg(3,i))+x(3,ixtg(4,i))
156 xmas25 = third*xmas(i)
157 mas = mas+xmas(i)
158 xc = xc + xmas25*xx
159 yc = yc + xmas25*yy
160 zc = zc + xmas25*zz
161 ENDDO
162C
163 RETURN
#define my_real
Definition cppsort.cpp:32
subroutine area(d1, x, x2, y, y2, eint, stif0)

◆ cgshell4()

subroutine cgshell4 ( type (elbuf_struct_), target elbuf_str,
integer jft,
integer jlt,
pm,
integer, dimension(nixc,*) ixc,
x,
mas,
xc,
yc,
zc )

Definition at line 30 of file cgshell.F.

32C-----------------------------------------------
33 USE elbufdef_mod
34C-----------------------------------------------
35C I m p l i c i t T y p e s
36C-----------------------------------------------
37#include "implicit_f.inc"
38C-----------------------------------------------
39C C o m m o n B l o c k s
40C-----------------------------------------------
41#include "mvsiz_p.inc"
42#include "param_c.inc"
43C-----------------------------------------------
44C D u m m y A r g u m e n t s
45C-----------------------------------------------
46 INTEGER IXC(NIXC,*), JFT, JLT
47C REAL
49 . pm(npropm,*),x(3,*),mas,xc,yc,zc
50 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_STR
51C-----------------------------------------------
52C L o c a l V a r i a b l e s
53C-----------------------------------------------
54 INTEGER I,MAT
55C REAL
57 . xx,yy,zz,xmas25,xmas(mvsiz),area(mvsiz),
58 . rx, ry, rz,sx,sy,sz,e3x,e3y,e3z
59 TYPE(G_BUFEL_) ,POINTER :: GBUF
60C-----------------------------------------------
61 gbuf => elbuf_str%GBUF
62 DO i=jft,jlt
63 rx=x(1,ixc(3,i))+x(1,ixc(4,i))-x(1,ixc(2,i))-x(1,ixc(5,i))
64 sx=x(1,ixc(4,i))+x(1,ixc(5,i))-x(1,ixc(2,i))-x(1,ixc(3,i))
65 ry=x(2,ixc(3,i))+x(2,ixc(4,i))-x(2,ixc(2,i))-x(2,ixc(5,i))
66 sy=x(2,ixc(4,i))+x(2,ixc(5,i))-x(2,ixc(2,i))-x(2,ixc(3,i))
67 rz=x(3,ixc(3,i))+x(3,ixc(4,i))-x(3,ixc(2,i))-x(3,ixc(5,i))
68 sz=x(3,ixc(4,i))+x(3,ixc(5,i))-x(3,ixc(2,i))-x(3,ixc(3,i))
69 e3x = ry * sz - rz * sy
70 e3y = rz * sx - rx * sz
71 e3z = rx * sy - ry * sx
72 area(i) =fourth*sqrt(e3x*e3x + e3y*e3y + e3z*e3z)
73 END DO
74 DO i=jft,jlt
75 mat = ixc(1,i)
76 xmas(i)=pm(1,mat)*area(i)*gbuf%THK(i)
77 END DO
78C
79C
80 DO i=jft,jlt
81 IF (gbuf%OFF(i) ==zero) cycle
82 xx= x(1,ixc(2,i))+x(1,ixc(3,i))+x(1,ixc(4,i))+x(1,ixc(5,i))
83 yy= x(2,ixc(2,i))+x(2,ixc(3,i))+x(2,ixc(4,i))+x(2,ixc(5,i))
84 zz= x(3,ixc(2,i))+x(3,ixc(3,i))+x(3,ixc(4,i))+x(3,ixc(5,i))
85 xmas25 = fourth*xmas(i)
86 mas = mas+xmas(i)
87 xc = xc + xmas25*xx
88 yc = yc + xmas25*yy
89 zc = zc + xmas25*zz
90 ENDDO
91C
92 RETURN