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

Go to the source code of this file.

Functions/Subroutines

subroutine scdefc3 (px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8, vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8, vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8, dxx, dxy, dxz, dyx, dyy, dyz, dzx, dzy, dzz, d4, d5, d6, wxx, wyy, wzz, dhxx, dhxy, dhyx, dhyy, dhzx, dhzy, dhzz, dh4, dh5, dh6, px1h1, px1h2, px2h1, px2h2, px3h1, px3h2, px4h1, px4h2, hgx1, hgy2, hgz1, hgz2, rx0, ry0, sx0, sy0, nu, ddhv, nel)

Function/Subroutine Documentation

◆ scdefc3()

subroutine scdefc3 ( px1,
px2,
px3,
px4,
py1,
py2,
py3,
py4,
pz1,
pz2,
pz3,
pz4,
vx1,
vx2,
vx3,
vx4,
vx5,
vx6,
vx7,
vx8,
vy1,
vy2,
vy3,
vy4,
vy5,
vy6,
vy7,
vy8,
vz1,
vz2,
vz3,
vz4,
vz5,
vz6,
vz7,
vz8,
dxx,
dxy,
dxz,
dyx,
dyy,
dyz,
dzx,
dzy,
dzz,
d4,
d5,
d6,
wxx,
wyy,
wzz,
dhxx,
dhxy,
dhyx,
dhyy,
dhzx,
dhzy,
dhzz,
dh4,
dh5,
dh6,
px1h1,
px1h2,
px2h1,
px2h2,
px3h1,
px3h2,
px4h1,
px4h2,
hgx1,
hgy2,
hgz1,
hgz2,
rx0,
ry0,
sx0,
sy0,
nu,
ddhv,
integer, intent(in) nel )

Definition at line 28 of file scdefc3.F.

49C-----------------------------------------------
50C I m p l i c i t T y p e s
51C-----------------------------------------------
52#include "implicit_f.inc"
53C-----------------------------------------------
54C G l o b a l P a r a m e t e r s
55C-----------------------------------------------
56#include "mvsiz_p.inc"
57C-----------------------------------------------
58C C o m m o n B l o c k s
59C-----------------------------------------------
60C-----------------------------------------------
61C D u m m y A r g u m e n t s
62C-----------------------------------------------
63 INTEGER, INTENT(IN) :: NEL
64C REAL
66 . vx1(*), vx2(*), vx3(*), vx4(*), vx5(*), vx6(*), vx7(*), vx8(*),
67 . vy1(*), vy2(*), vy3(*), vy4(*), vy5(*), vy6(*), vy7(*), vy8(*),
68 . vz1(*), vz2(*), vz3(*), vz4(*), vz5(*), vz6(*), vz7(*), vz8(*),
69 . px1(*), px2(*), px3(*), px4(*),
70 . py1(*), py2(*), py3(*), py4(*),
71 . pz1(*), pz2(*), pz3(*), pz4(*),
72 . dxx(*), dxy(*), dxz(*),
73 . dyx(*), dyy(*), dyz(*),
74 . dzx(*), dzy(*), dzz(*), d4(*), d5(*), d6(*),
75 . wxx(*), wyy(*), wzz(*),
76 . dhxx(*), dhxy(*),
77 . dhyx(*), dhyy(*),
78 . dhzx(*), dhzy(*), dhzz(*),dh4(*), dh5(*), dh6(*),
79 . px1h1(*), px1h2(*) , px2h1(*), px2h2(*),
80 . px3h1(*), px3h2(*) , px4h1(*), px4h2(*),
81 . hgx1(*), hgy2(*) , hgz1(*), hgz2(*),
82 . rx0(*), ry0(*), sx0(*), sy0(*),nu(*),ddhv(*)
83C-----------------------------------------------
84C L o c a l V a r i a b l e s
85C-----------------------------------------------
86 INTEGER I, J
87C REAL
89 . vx17(mvsiz), vy17(mvsiz), vz17(mvsiz),
90 . vx28(mvsiz), vy28(mvsiz), vz28(mvsiz),
91 . vx35(mvsiz), vy35(mvsiz), vz35(mvsiz),
92 . vx46(mvsiz), vy46(mvsiz), vz46(mvsiz), dt1d2,dt1d1
93 my_real
94 . pxx2,pyy2,pzz2,pxx2p,pyy2p,pzz2p,
95 . hgy1(mvsiz), hgx2(mvsiz),
96 . h1vx,h1vy,h1vz,h2vx,h2vy,h2vz,nu1,
97 . x1vx,x2vx,y1vy,y2vy,y2vy_nu,x1vx_nu
98C=======================================================================
99 DO i=1,nel
100 vx17(i)=vx1(i)-vx7(i)
101 vx28(i)=vx2(i)-vx8(i)
102 vx35(i)=vx3(i)-vx5(i)
103 vx46(i)=vx4(i)-vx6(i)
104 vy17(i)=vy1(i)-vy7(i)
105 vy28(i)=vy2(i)-vy8(i)
106 vy35(i)=vy3(i)-vy5(i)
107 vy46(i)=vy4(i)-vy6(i)
108 vz17(i)=vz1(i)-vz7(i)
109 vz28(i)=vz2(i)-vz8(i)
110 vz35(i)=vz3(i)-vz5(i)
111 vz46(i)=vz4(i)-vz6(i)
112 ENDDO
113C 12
114 DO i=1,nel
115 dxx(i)=px1(i)*vx17(i)+px2(i)*vx28(i)+
116 . px3(i)*vx35(i)+px4(i)*vx46(i)
117 dyy(i)=py1(i)*vy17(i)+py2(i)*vy28(i)+
118 . py3(i)*vy35(i)+py4(i)*vy46(i)
119 dzz(i)=pz1(i)*vz17(i)+pz2(i)*vz28(i)+
120 . pz3(i)*vz35(i)+pz4(i)*vz46(i)
121 dxy(i)=py1(i)*vx17(i)+py2(i)*vx28(i)+
122 . py3(i)*vx35(i)+py4(i)*vx46(i)
123 dxz(i)=pz1(i)*vx17(i)+pz2(i)*vx28(i)+
124 . pz3(i)*vx35(i)+pz4(i)*vx46(i)
125 dyx(i)=px1(i)*vy17(i)+px2(i)*vy28(i)+
126 . px3(i)*vy35(i)+px4(i)*vy46(i)
127 dyz(i)=pz1(i)*vy17(i)+pz2(i)*vy28(i)+
128 . pz3(i)*vy35(i)+pz4(i)*vy46(i)
129 dzx(i)=px1(i)*vz17(i)+px2(i)*vz28(i)+
130 . px3(i)*vz35(i)+px4(i)*vz46(i)
131 dzy(i)=py1(i)*vz17(i)+py2(i)*vz28(i)+
132 . py3(i)*vz35(i)+py4(i)*vz46(i)
133 ENDDO
134C
135 DO i=1,nel
136 wxx(i)=zero
137 wyy(i)=zero
138 wzz(i)=zero
139 ENDDO
140C------------------------------------------------
141C 1 1 -1 -1 -1 -1 1 1
142 DO i=1,nel
143 h1vx=vx1(i)+vx2(i)-vx3(i)-vx4(i)
144 . -vx5(i)-vx6(i)+vx7(i)+vx8(i)
145 h1vy=vy1(i)+vy2(i)-vy3(i)-vy4(i)
146 . -vy5(i)-vy6(i)+vy7(i)+vy8(i)
147 h1vz=vz1(i)+vz2(i)-vz3(i)-vz4(i)
148 . -vz5(i)-vz6(i)+vz7(i)+vz8(i)
149 hgx1(i)=one_over_8*h1vx-
150 . (px1h1(i)*vx17(i)+px2h1(i)*vx28(i)+
151 . px3h1(i)*vx35(i)+px4h1(i)*vx46(i))
152 hgy1(i)=one_over_8*h1vy-
153 . (px1h1(i)*vy17(i)+px2h1(i)*vy28(i)+
154 . px3h1(i)*vy35(i)+px4h1(i)*vy46(i))
155 hgz1(i)=one_over_8*h1vz-
156 . (px1h1(i)*vz17(i)+px2h1(i)*vz28(i)+
157 . px3h1(i)*vz35(i)+px4h1(i)*vz46(i))
158 ENDDO
159C 1 -1 -1 1 -1 1 1 -1
160 DO i=1,nel
161 h2vx=vx1(i)-vx2(i)-vx3(i)+vx4(i)
162 . -vx5(i)+vx6(i)+vx7(i)-vx8(i)
163 h2vy=vy1(i)-vy2(i)-vy3(i)+vy4(i)
164 . -vy5(i)+vy6(i)+vy7(i)-vy8(i)
165 h2vz=vz1(i)-vz2(i)-vz3(i)+vz4(i)
166 . -vz5(i)+vz6(i)+vz7(i)-vz8(i)
167 hgx2(i)=one_over_8*h2vx-
168 . (px1h2(i)*vx17(i)+px2h2(i)*vx28(i)+
169 . px3h2(i)*vx35(i)+px4h2(i)*vx46(i))
170 hgy2(i)=one_over_8*h2vy-
171 . (px1h2(i)*vy17(i)+px2h2(i)*vy28(i)+
172 . px3h2(i)*vy35(i)+px4h2(i)*vy46(i))
173 hgz2(i)=one_over_8*h2vz-
174 . (px1h2(i)*vz17(i)+px2h2(i)*vz28(i)+
175 . px3h2(i)*vz35(i)+px4h2(i)*vz46(i))
176 ENDDO
177 DO i=1,nel
178 nu1 = nu(i)/(one - nu(i))
179 x1vx =-ry0(i)*hgx1(i)
180 x2vx =sy0(i)*hgx2(i)
181 y1vy =rx0(i)*hgy1(i)
182 y2vy =-sx0(i)*hgy2(i)
183 y2vy_nu=-nu(i)*y2vy
184 x1vx_nu=-nu(i)*x1vx
185 dhxx(i)= x1vx+x2vx+y2vy_nu
186 dhyy(i)= y1vy+y2vy+x1vx_nu
187 ddhv(i)= x1vx_nu+y2vy_nu
188 dhzz(i)= ddhv(i)-nu1*(x2vx+y1vy)
189 dhxy(i)= rx0(i)*hgx1(i)-sx0(i)*hgx2(i)
190 dhyx(i)= -ry0(i)*hgy1(i)+sy0(i)*hgy2(i)
191 dhzx(i)= -ry0(i)*hgz1(i)
192 dhzy(i)= -sx0(i)*hgz2(i)
193 ENDDO
194C
195C-----------
196 RETURN
#define my_real
Definition cppsort.cpp:32