OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
ige3ddefo.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 ige3ddefo (vx, vy, vz, matb, nctrl, wxx, wyy, wzz, dxx, dyy, dzz, dxy, dyx, dyz, dzy, dxz, dzx, d4, d5, d6, ba, a, nel)

Function/Subroutine Documentation

◆ ige3ddefo()

subroutine ige3ddefo ( vx,
vy,
vz,
matb,
integer nctrl,
wxx,
wyy,
wzz,
dxx,
dyy,
dzz,
dxy,
dyx,
dyz,
dzy,
dxz,
dzx,
d4,
d5,
d6,
ba,
a,
integer, intent(in) nel )

Definition at line 28 of file ige3ddefo.F.

35C-----------------------------------------------
36C I m p l i c i t T y p e s
37C-----------------------------------------------
38#include "implicit_f.inc"
39C-----------------------------------------------
40C G l o b a l P a r a m e t e r s
41C-----------------------------------------------
42#include "mvsiz_p.inc"
43C-----------------------------------------------
44C C o m m o n B l o c k s
45C-----------------------------------------------
46#include "com08_c.inc"
47C-----------------------------------------------
48C D u m m y A r g u m e n t s
49C-----------------------------------------------
50 INTEGER, INTENT(IN) :: NEL
51 INTEGER NCTRL
53 . dxx(*), dxy(*), dxz(*),
54 . dyx(*), dyy(*), dyz(*),
55 . dzx(*), dzy(*), dzz(*),
56 . d4(*), d5(*), d6(*),
57 . wxx(*), wyy(*), wzz(*)
59 . vx(nctrl,mvsiz),vy(nctrl,mvsiz),vz(nctrl,mvsiz),
60 . ba(6,mvsiz), a(3*nctrl,mvsiz),matb(3*nctrl,mvsiz)
61C-----------------------------------------------
62C L o c a l V a r i a b l e s
63C-----------------------------------------------
64 INTEGER I, J, INCTRL
65 my_real dt1d2, dt1d, aaa
66C=======================================================================
67
68 DO i=1,nel
69 dxx(i)=zero
70 dyy(i)=zero
71 dzz(i)=zero
72 dxy(i)=zero
73 dxz(i)=zero
74 dyx(i)=zero
75 dyz(i)=zero
76 dzx(i)=zero
77 dzy(i)=zero
78 wxx(i)=zero
79 wyy(i)=zero
80 wzz(i)=zero
81 ENDDO
82C NEL
83C [B] = [dNi/dx dNk/dx .. ] \ 3
84C [dNi/dy dNk/dy .. ] | *
85C [dNi/dz dNk/dz .. ] | N
86C [dNj/dx dNl/dx .. ] | C
87C [dNj/dy dNl/dy .. ] | T
88C [dNj/dz dNl/dz .. ] | R
89C [ .. .. .. ] / L
90
91 DO i=1,nel
92 DO j=1,nctrl
93 inctrl = (j-1)*3
94 dxx(i)=dxx(i)+matb(inctrl+1,i)*vx(j,i)
95 dyy(i)=dyy(i)+matb(inctrl+2,i)*vy(j,i)
96 dzz(i)=dzz(i)+matb(inctrl+3,i)*vz(j,i)
97 dxy(i)=dxy(i)+matb(inctrl+2,i)*vx(j,i)
98 dyx(i)=dyx(i)+matb(inctrl+1,i)*vy(j,i)
99 dyz(i)=dyz(i)+matb(inctrl+3,i)*vy(j,i)
100 dzy(i)=dzy(i)+matb(inctrl+2,i)*vz(j,i)
101 dzx(i)=dzx(i)+matb(inctrl+1,i)*vz(j,i)
102 dxz(i)=dxz(i)+matb(inctrl+3,i)*vx(j,i)
103 ENDDO
104 ENDDO
105
106 dt1d2=half*dt1
107
108 DO i=1,nel
109 dxx(i) = dxx(i)
110 . -dt1d2*(dxx(i)*dxx(i)+dyx(i)*dyx(i)+dzx(i)*dzx(i))
111 dyy(i) = dyy(i)
112 . -dt1d2*(dyy(i)*dyy(i)+dzy(i)*dzy(i)+dxy(i)*dxy(i))
113 dzz(i) = dzz(i)
114 . -dt1d2*(dzz(i)*dzz(i)+dxz(i)*dxz(i)+dyz(i)*dyz(i))
115 aaa = dt1d2*(dxx(i)*dxy(i)+dyx(i)*dyy(i)+dzx(i)*dzy(i))
116 dxy(i) = dxy(i) - aaa
117 dyx(i) = dyx(i) - aaa
118 d4(i) = dxy(i)+dyx(i)
119 aaa = dt1d2*(dyy(i)*dyz(i)+dzy(i)*dzz(i)+dxy(i)*dxz(i))
120 dyz(i) = dyz(i) - aaa
121 dzy(i) = dzy(i) - aaa
122 d5(i) = dyz(i)+dzy(i)
123 aaa = dt1d2*(dzz(i)*dzx(i)+dxz(i)*dxx(i)+dyz(i)*dyx(i))
124 dxz(i) = dxz(i) - aaa
125 dzx(i) = dzx(i) - aaa
126 d6(i) = dxz(i)+dzx(i)
127
128 wxx(i)=dt1d2*(dzy(i)-dyz(i))
129 wyy(i)=dt1d2*(dxz(i)-dzx(i))
130 wzz(i)=dt1d2*(dyx(i)-dxy(i))
131 ENDDO
132
133
134
135C-----------
136 RETURN
#define my_real
Definition cppsort.cpp:32