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

Go to the source code of this file.

Functions/Subroutines

subroutine s10defo3 (px, py, pz, vx, vy, vz, dxx, dxy, dxz, dyx, dyy, dyz, dzx, dzy, dzz, d4, d5, d6, wxx, wyy, wzz, volp, voln, rho, rhoo, nel, jhbe, isrot)

Function/Subroutine Documentation

◆ s10defo3()

subroutine s10defo3 ( px,
py,
pz,
vx,
vy,
vz,
dxx,
dxy,
dxz,
dyx,
dyy,
dyz,
dzx,
dzy,
dzz,
d4,
d5,
d6,
wxx,
wyy,
wzz,
volp,
voln,
rho,
rhoo,
integer, intent(in) nel,
integer, intent(in) jhbe,
integer, intent(in) isrot )

Definition at line 28 of file s10defo3.F.

36C-----------------------------------------------
37C I m p l i c i t T y p e s
38C-----------------------------------------------
39#include "implicit_f.inc"
40C-----------------------------------------------
41C G l o b a l P a r a m e t e r s
42C-----------------------------------------------
43#include "mvsiz_p.inc"
44C-----------------------------------------------
45C D u m m y A r g u m e n t s
46C-----------------------------------------------
47 INTEGER, INTENT(IN) :: NEL
48 INTEGER, INTENT(IN) :: JHBE
49 INTEGER, INTENT(IN) :: ISROT
50C REAL
52 . vx(mvsiz,10),vy(mvsiz,10),vz(mvsiz,10),
53 . px(mvsiz,10),py(mvsiz,10),pz(mvsiz,10),
54 . dxx(*), dxy(*), dxz(*),
55 . dyx(*), dyy(*), dyz(*),
56 . dzx(*), dzy(*), dzz(*), d4(*), d5(*), d6(*),
57 . wxx(*), wyy(*), wzz(*),volp(*),voln(*),rho(*),
58 . rhoo(*)
59C-----------------------------------------------
60C C o m m o n B l o c k s
61C-----------------------------------------------
62#include "com08_c.inc"
63C-----------------------------------------------
64C L o c a l V a r i a b l e s
65C-----------------------------------------------
66 INTEGER I,N
67C REAL
69 . dt1d2
70 my_real
71 . pxx2,pyy2,pzz2,pxx2p,pyy2p,pzz2p,aaa,bbb
72C-----------------------------------------------
73C
74 IF(isrot /= 1)THEN
75 DO i=1,nel
76 voln(i)=volp(i)
77 rhoo(i)=rho(i)
78 ENDDO
79 ELSE
80 DO i=1,nel
81c VOLN(I)=VOLP(I)
82 rhoo(i)=rho(i)
83 ENDDO
84 ENDIF
85 DO i=1,nel
86 dxx(i)=px(i,1)*vx(i,1)+px(i,2)*vx(i,2)+px(i,3)*vx(i,3)+px(i,4)*vx(i,4)+px(i,5)*vx(i,5)
87 . +px(i,6)*vx(i,6)+px(i,7)*vx(i,7)+px(i,8)*vx(i,8)+px(i,9)*vx(i,9)+px(i,10)*vx(i,10)
88 dyy(i)=py(i,1)*vy(i,1)+py(i,2)*vy(i,2)+py(i,3)*vy(i,3)+py(i,4)*vy(i,4)+py(i,5)*vy(i,5)
89 . +py(i,6)*vy(i,6)+py(i,7)*vy(i,7)+py(i,8)*vy(i,8)+py(i,9)*vy(i,9)+py(i,10)*vy(i,10)
90 dzz(i)=pz(i,1)*vz(i,1)+pz(i,2)*vz(i,2)+pz(i,3)*vz(i,3)+pz(i,4)*vz(i,4)+pz(i,5)*vz(i,5)
91 . +pz(i,6)*vz(i,6)+pz(i,7)*vz(i,7)+pz(i,8)*vz(i,8)+pz(i,9)*vz(i,9)+pz(i,10)*vz(i,10)
92 dxy(i)=py(i,1)*vx(i,1)+py(i,2)*vx(i,2)+py(i,3)*vx(i,3)+py(i,4)*vx(i,4)+py(i,5)*vx(i,5)
93 . +py(i,6)*vx(i,6)+py(i,7)*vx(i,7)+py(i,8)*vx(i,8)+py(i,9)*vx(i,9)+py(i,10)*vx(i,10)
94 dxz(i)=pz(i,1)*vx(i,1)+pz(i,2)*vx(i,2)+pz(i,3)*vx(i,3)+pz(i,4)*vx(i,4)+pz(i,5)*vx(i,5)
95 . +pz(i,6)*vx(i,6)+pz(i,7)*vx(i,7)+pz(i,8)*vx(i,8)+pz(i,9)*vx(i,9)+pz(i,10)*vx(i,10)
96 dyx(i)=px(i,1)*vy(i,1)+px(i,2)*vy(i,2)+px(i,3)*vy(i,3)+px(i,4)*vy(i,4)+px(i,5)*vy(i,5)
97 . +px(i,6)*vy(i,6)+px(i,7)*vy(i,7)+px(i,8)*vy(i,8)+px(i,9)*vy(i,9)+px(i,10)*vy(i,10)
98 dyz(i)=pz(i,1)*vy(i,1)+pz(i,2)*vy(i,2)+pz(i,3)*vy(i,3)+pz(i,4)*vy(i,4)+pz(i,5)*vy(i,5)
99 . +pz(i,6)*vy(i,6)+pz(i,7)*vy(i,7)+pz(i,8)*vy(i,8)+pz(i,9)*vy(i,9)+pz(i,10)*vy(i,10)
100 dzx(i)=px(i,1)*vz(i,1)+px(i,2)*vz(i,2)+px(i,3)*vz(i,3)+px(i,4)*vz(i,4)+px(i,5)*vz(i,5)
101 . +px(i,6)*vz(i,6)+px(i,7)*vz(i,7)+px(i,8)*vz(i,8)+px(i,9)*vz(i,9)+px(i,10)*vz(i,10)
102 dzy(i)=py(i,1)*vz(i,1)+py(i,2)*vz(i,2)+py(i,3)*vz(i,3)+py(i,4)*vz(i,4)+py(i,5)*vz(i,5)
103 . +py(i,6)*vz(i,6)+py(i,7)*vz(i,7)+py(i,8)*vz(i,8)+py(i,9)*vz(i,9)+py(i,10)*vz(i,10)
104 ENDDO
105C
106 dt1d2=half*dt1
107C
108 IF(jhbe>=2)THEN
109 DO i=1,nel
110 dxx(i) = dxx(i)
111 . -dt1d2*(dxx(i)*dxx(i)+dyx(i)*dyx(i)+dzx(i)*dzx(i))
112 dyy(i) = dyy(i)
113 . -dt1d2*(dyy(i)*dyy(i)+dzy(i)*dzy(i)+dxy(i)*dxy(i))
114 dzz(i) = dzz(i)
115 . -dt1d2*(dzz(i)*dzz(i)+dxz(i)*dxz(i)+dyz(i)*dyz(i))
116 aaa = dt1d2*(dxx(i)*dxy(i)+dyx(i)*dyy(i)+dzx(i)*dzy(i))
117 dxy(i) = dxy(i) - aaa
118 dyx(i) = dyx(i) - aaa
119 d4(i) = dxy(i)+dyx(i)
120 aaa = dt1d2*(dyy(i)*dyz(i)+dzy(i)*dzz(i)+dxy(i)*dxz(i))
121 dyz(i) = dyz(i) - aaa
122 dzy(i) = dzy(i) - aaa
123 d5(i) = dyz(i)+dzy(i)
124 aaa = dt1d2*(dzz(i)*dzx(i)+dxz(i)*dxx(i)+dyz(i)*dyx(i))
125 dxz(i) = dxz(i) - aaa
126 dzx(i) = dzx(i) - aaa
127 d6(i) = dxz(i)+dzx(i)
128!
129 n = 1
130 pxx2 = px(i,n)*px(i,n)
131 pyy2 = py(i,n)*py(i,n)
132 pzz2 = pz(i,n)*pz(i,n)
133 DO n=2,10
134 pxx2 = pxx2+px(i,n)*px(i,n)
135 pyy2 = pyy2+py(i,n)*py(i,n)
136 pzz2 = pzz2+pz(i,n)*pz(i,n)
137 END DO
138 wzz(i)=dt1*(pyy2*dyx(i)-pxx2*dxy(i))/(pxx2+pyy2)
139 wxx(i)=dt1*(pzz2*dzy(i)-pyy2*dyz(i))/(pyy2+pzz2)
140 wyy(i)=dt1*(pxx2*dxz(i)-pzz2*dzx(i))/(pzz2+pxx2)
141 ENDDO
142 ELSE !IF(JHBE>=2)
143 DO i=1,nel
144 d4(i) =dxy(i)+dyx(i)
145 d5(i) =dyz(i)+dzy(i)
146 d6(i) =dxz(i)+dzx(i)
147 wzz(i)=dt1d2*(dyx(i)-dxy(i))
148 wyy(i)=dt1d2*(dxz(i)-dzx(i))
149 wxx(i)=dt1d2*(dzy(i)-dyz(i))
150 ENDDO
151 END IF
152C
153 RETURN
154C
#define my_real
Definition cppsort.cpp:32