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

Go to the source code of this file.

Functions/Subroutines

subroutine s10jacob1 (alph, beta, w, x1b, x2b, x3b, x4a, x5b, x6b, x7b, x8b, x9b, x10b, x8a, x9a, x10a, y1b, y2b, y3b, y4a, y5b, y6b, y7b, y8b, y9b, y10b, y8a, y9a, y10a, z1b, z2b, z3b, z4a, z5b, z6b, z7b, z8b, z9b, z10b, z8a, z9a, z10a, px1, px2, px3, px4, px5, px6, px7, px8, px9, px10, py1, py2, py3, py4, py5, py6, py7, py8, py9, py10, pz1, pz2, pz3, pz4, pz5, pz6, pz7, pz8, pz9, pz10, nx1, nx2, nx3, nx4, nx5, nx6, nx7, nx8, nx9, nx10, vol, nnega, index, voldp)

Function/Subroutine Documentation

◆ s10jacob1()

subroutine s10jacob1 ( alph,
beta,
w,
double precision, dimension(mvsiz) x1b,
double precision, dimension(mvsiz) x2b,
double precision, dimension(mvsiz) x3b,
double precision, dimension(mvsiz) x4a,
double precision, dimension(mvsiz) x5b,
double precision, dimension(mvsiz) x6b,
double precision, dimension(mvsiz) x7b,
double precision, dimension(mvsiz) x8b,
double precision, dimension(mvsiz) x9b,
double precision, dimension(mvsiz) x10b,
double precision, dimension(mvsiz) x8a,
double precision, dimension(mvsiz) x9a,
double precision, dimension(mvsiz) x10a,
double precision, dimension(mvsiz) y1b,
double precision, dimension(mvsiz) y2b,
double precision, dimension(mvsiz) y3b,
double precision, dimension(mvsiz) y4a,
double precision, dimension(mvsiz) y5b,
double precision, dimension(mvsiz) y6b,
double precision, dimension(mvsiz) y7b,
double precision, dimension(mvsiz) y8b,
double precision, dimension(mvsiz) y9b,
double precision, dimension(mvsiz) y10b,
double precision, dimension(mvsiz) y8a,
double precision, dimension(mvsiz) y9a,
double precision, dimension(mvsiz) y10a,
double precision, dimension(mvsiz) z1b,
double precision, dimension(mvsiz) z2b,
double precision, dimension(mvsiz) z3b,
double precision, dimension(mvsiz) z4a,
double precision, dimension(mvsiz) z5b,
double precision, dimension(mvsiz) z6b,
double precision, dimension(mvsiz) z7b,
double precision, dimension(mvsiz) z8b,
double precision, dimension(mvsiz) z9b,
double precision, dimension(mvsiz) z10b,
double precision, dimension(mvsiz) z8a,
double precision, dimension(mvsiz) z9a,
double precision, dimension(mvsiz) z10a,
px1,
px2,
px3,
px4,
px5,
px6,
px7,
px8,
px9,
px10,
py1,
py2,
py3,
py4,
py5,
py6,
py7,
py8,
py9,
py10,
pz1,
pz2,
pz3,
pz4,
pz5,
pz6,
pz7,
pz8,
pz9,
pz10,
nx1,
nx2,
nx3,
nx4,
nx5,
nx6,
nx7,
nx8,
nx9,
nx10,
vol,
integer nnega,
integer, dimension(*) index,
double precision, dimension(mvsiz) voldp )

Definition at line 28 of file s10jacob1.F.

37C-----------------------------------------------
38C I m p l i c i t T y p e s
39C-----------------------------------------------
40#include "implicit_f.inc"
41C-----------------------------------------------
42C G l o b a l P a r a m e t e r s
43C-----------------------------------------------
44#include "mvsiz_p.inc"
45C-----------------------------------------------
46C D u m m y A r g u m e n t s
47C-----------------------------------------------
48 INTEGER NNEGA,INDEX(*)
49C REAL
50 double precision
51 . x1b(mvsiz),x2b(mvsiz),x3b(mvsiz),x4a(mvsiz),x5b(mvsiz),
52 . x6b(mvsiz),x7b(mvsiz),x8b(mvsiz),x9b(mvsiz),x10b(mvsiz),
53 . x8a(mvsiz),x9a(mvsiz),x10a(mvsiz),
54 . y1b(mvsiz),y2b(mvsiz),y3b(mvsiz),y4a(mvsiz),y5b(mvsiz),
55 . y6b(mvsiz),y7b(mvsiz),y8b(mvsiz),y9b(mvsiz),y10b(mvsiz),
56 . y8a(mvsiz),y9a(mvsiz),y10a(mvsiz),
57 . z1b(mvsiz),z2b(mvsiz),z3b(mvsiz),z4a(mvsiz),z5b(mvsiz),
58 . z6b(mvsiz),z7b(mvsiz),z8b(mvsiz),z9b(mvsiz),z10b(mvsiz),
59 . z8a(mvsiz),z9a(mvsiz),z10a(mvsiz),voldp(mvsiz)
60
62 . px1(mvsiz),px2(mvsiz),px3(mvsiz),px4(mvsiz),px5(mvsiz),
63 . px6(mvsiz),px7(mvsiz),px8(mvsiz),px9(mvsiz),px10(mvsiz),
64 . py1(mvsiz),py2(mvsiz),py3(mvsiz),py4(mvsiz),py5(mvsiz),
65 . py6(mvsiz),py7(mvsiz),py8(mvsiz),py9(mvsiz),py10(mvsiz),
66 . pz1(mvsiz),pz2(mvsiz),pz3(mvsiz),pz4(mvsiz),pz5(mvsiz),
67 . pz6(mvsiz),pz7(mvsiz),pz8(mvsiz),pz9(mvsiz),pz10(mvsiz),
68 . nx1(mvsiz),nx2(mvsiz),nx3(mvsiz),nx4(mvsiz),nx5(mvsiz),
69 . nx6(mvsiz),nx7(mvsiz),nx8(mvsiz),nx9(mvsiz),nx10(mvsiz),
70 . vol(mvsiz),alph,beta,w
71C-----------------------------------------------
72C L o c a l V a r i a b l e s
73C-----------------------------------------------
74 INTEGER I,J
75 DOUBLE PRECISION
76 . D,A4MB4,A4,B4,BB,AB,B2,
77 . DXDR,DXDS,DXDT,DYDR,DYDS,DYDT,DZDR,DZDS,DZDT
78
79 DOUBLE PRECISION
80 . AA,A4M1(MVSIZ),B4M1(MVSIZ)
81
82 DOUBLE PRECISION
83 . DRDX(MVSIZ), DSDX(MVSIZ), DTDX(MVSIZ),
84 . DRDY(MVSIZ), DSDY(MVSIZ), DTDY(MVSIZ),
85 . DRDZ(MVSIZ), DSDZ(MVSIZ), DTDZ(MVSIZ),
86 . DET(MVSIZ)
87C-----------------------------------------------
88c AA = (TWO*ALPH - ONE)*ALPH
89c BB = (TWO*BETA - ONE)*BETA
90c B2 = FOUR*BETA*BETA
91c AB = FOUR*ALPH*BETA
92C-----------------------------------------------
93#include "vectorize.inc"
94 DO j=1,nnega
95 i = index(j)
96 aa = x5b(i) + x6b(i) + x7b(i)
97 . - x4a(i) - x8b(i) - x9b(i) - x10b(i)
98 dxdr = x1b(i) +x8a(i) - x6b(i) + aa
99 dxds = x2b(i) +x9a(i) - x7b(i) + aa
100 dxdt = x3b(i) +x10a(i)- x5b(i) + aa
101C
102 aa = y5b(i) + y6b(i) + y7b(i)
103 . - y4a(i) - y8b(i) - y9b(i) - y10b(i)
104 dydr = y1b(i) +y8a(i) - y6b(i) + aa
105 dyds = y2b(i) +y9a(i) - y7b(i) + aa
106 dydt = y3b(i) +y10a(i)- y5b(i) + aa
107C
108 aa = z5b(i) + z6b(i) + z7b(i)
109 . - z4a(i) - z8b(i) - z9b(i) - z10b(i)
110 dzdr = z1b(i) +z8a(i) - z6b(i) + aa
111 dzds = z2b(i) +z9a(i) - z7b(i) + aa
112 dzdt = z3b(i) +z10a(i)- z5b(i) + aa
113C
114 drdx(i)=dyds*dzdt-dzds*dydt
115 dsdx(i)=dydt*dzdr-dzdt*dydr
116 dtdx(i)=dydr*dzds-dzdr*dyds
117C
118 drdy(i)=dzds*dxdt-dxds*dzdt
119 dsdy(i)=dzdt*dxdr-dxdt*dzdr
120 dtdy(i)=dzdr*dxds-dxdr*dzds
121C
122 drdz(i)=dxds*dydt-dyds*dxdt
123 dsdz(i)=dxdt*dydr-dydt*dxdr
124 dtdz(i)=dxdr*dyds-dydr*dxds
125C
126 det(i) = dxdr * drdx(i)
127 . + dydr * drdy(i)
128 . + dzdr * drdz(i)
129 voldp(i) = w * det(i) * one_over_6
130 vol(i) = voldp(i)
131C
132 ENDDO
133C
134#include "vectorize.inc"
135 DO j=1,nnega
136 i = index(j)
137 d = one/max(em30,det(i))
138C
139 a4 = four * alph
140 b4 = four * beta
141 a4m1(i) = a4 - one
142 b4m1(i) = b4 - one
143 b4m1(i) = d * b4m1(i)
144 a4m1(i) = d * a4m1(i)
145 b4 = d * b4
146 a4 = d * a4
147 a4mb4 = a4 - b4
148C
149 px1(i) = b4m1(i) * drdx(i)
150 py1(i) = b4m1(i) * drdy(i)
151 pz1(i) = b4m1(i) * drdz(i)
152C
153 px2(i) = b4m1(i) * dsdx(i)
154 py2(i) = b4m1(i) * dsdy(i)
155 pz2(i) = b4m1(i) * dsdz(i)
156C
157 px3(i) = b4m1(i) * dtdx(i)
158 py3(i) = b4m1(i) * dtdy(i)
159 pz3(i) = b4m1(i) * dtdz(i)
160C
161 px4(i) =-a4m1(i) * (drdx(i)+dsdx(i)+dtdx(i))
162 py4(i) =-a4m1(i) * (drdy(i)+dsdy(i)+dtdy(i))
163 pz4(i) =-a4m1(i) * (drdz(i)+dsdz(i)+dtdz(i))
164C
165 px5(i) = b4 * (drdx(i)+dsdx(i))
166 py5(i) = b4 * (drdy(i)+dsdy(i))
167 pz5(i) = b4 * (drdz(i)+dsdz(i))
168C
169 px6(i) = b4 * (dsdx(i)+dtdx(i))
170 py6(i) = b4 * (dsdy(i)+dtdy(i))
171 pz6(i) = b4 * (dsdz(i)+dtdz(i))
172C
173 px7(i) = b4 * (dtdx(i)+drdx(i))
174 py7(i) = b4 * (dtdy(i)+drdy(i))
175 pz7(i) = b4 * (dtdz(i)+drdz(i))
176C
177 px8(i) = a4mb4 * drdx(i) - px6(i)
178 py8(i) = a4mb4 * drdy(i) - py6(i)
179 pz8(i) = a4mb4 * drdz(i) - pz6(i)
180C
181 px9(i) = a4mb4 * dsdx(i) - px7(i)
182 py9(i) = a4mb4 * dsdy(i) - py7(i)
183 pz9(i) = a4mb4 * dsdz(i) - pz7(i)
184C
185 px10(i)= a4mb4 * dtdx(i) - px5(i)
186 py10(i)= a4mb4 * dtdy(i) - py5(i)
187 pz10(i)= a4mb4 * dtdz(i) - pz5(i)
188C
189 ENDDO
190C
191 RETURN
#define my_real
Definition cppsort.cpp:32
#define max(a, b)
Definition macros.h:21