OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
srcoor12.F
Go to the documentation of this file.
1Copyright> OpenRadioss
2Copyright> Copyright (C) 1986-2025 Altair Engineering Inc.
3Copyright>
4Copyright> This program is free software: you can redistribute it and/or modify
5Copyright> it under the terms of the GNU Affero General Public License as published by
6Copyright> the Free Software Foundation, either version 3 of the License, or
7Copyright> (at your option) any later version.
8Copyright>
9Copyright> This program is distributed in the hope that it will be useful,
10Copyright> but WITHOUT ANY WARRANTY; without even the implied warranty of
11Copyright> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12Copyright> GNU Affero General Public License for more details.
13Copyright>
14Copyright> You should have received a copy of the GNU Affero General Public License
15Copyright> along with this program. If not, see <https://www.gnu.org/licenses/>.
16Copyright>
17Copyright>
18Copyright> Commercial Alternative: Altair Radioss Software
19Copyright>
20Copyright> As an alternative to this open-source version, Altair also offers Altair Radioss
21Copyright> software under a commercial license. Contact Altair to discuss further if the
22Copyright> commercial version may interest you: https://www.altair.com/radioss/.
23!||====================================================================
24!|| srcoor12 ../engine/source/elements/solid/solide/srcoor12.f
25!||--- called by ------------------------------------------------------
26!|| s8eforc3 ../engine/source/elements/solid/solide8e/s8eforc3.F
27!|| sforc3 ../engine/source/elements/solid/solide/sforc3.f
28!||--- calls -----------------------------------------------------
29!|| sortho12 ../engine/source/elements/solid/solide/sortho12.F
30!|| srepiso12 ../engine/source/elements/solid/solide/srepiso12.F
31!||====================================================================
32 SUBROUTINE srcoor12(
33 1 OFF, X, XDP, NC1,
34 2 NC2, NC3, NC4, NC5,
35 3 NC6, NC7, NC8, R11,
36 4 R12, R13, R21, R22,
37 5 R23, R31, R32, R33,
38 6 NEL, JHBE)
39C-----------------------------------------------
40C I m p l i c i t T y p e s
41C-----------------------------------------------
42#include "implicit_f.inc"
43C-----------------------------------------------
44C G l o b a l P a r a m e t e r s
45C-----------------------------------------------
46#include "mvsiz_p.inc"
47C-----------------------------------------------
48C C o m m o n B l o c k s
49C-----------------------------------------------
50#include "scr05_c.inc"
51C-----------------------------------------------
52C D u m m y A r g u m e n t s
53C-----------------------------------------------
54 INTEGER, INTENT(IN) :: NEL
55 INTEGER, INTENT(IN) :: JHBE
56C REAL
57 my_real
58 . R11(MVSIZ),R12(MVSIZ),R13(MVSIZ),
59 . R21(MVSIZ),R22(MVSIZ),R23(MVSIZ),
60 . r31(mvsiz),r32(mvsiz),r33(mvsiz),
61 . x(3,*),off(*)
62 INTEGER
63 . nc1(*),nc2(*),nc3(*),nc4(*),nc5(*),nc6(*),nc7(*),nc8(*)
64
65 DOUBLE PRECISION
66 . XDP(3,*)
67C-----------------------------------------------
68C L o c a l V a r i a b l e s
69C-----------------------------------------------
70 INTEGER I
71
72C REAL
73 my_real
74 . rx(mvsiz) , ry(mvsiz) , rz(mvsiz) ,
75 . sx(mvsiz) , sy(mvsiz) , sz(mvsiz) ,
76 . tx(mvsiz) , ty(mvsiz) , tz(mvsiz)
77 DOUBLE PRECISION
78 . XD1(MVSIZ), XD2(MVSIZ), XD3(MVSIZ), XD4(MVSIZ),
79 . xd5(mvsiz), xd6(mvsiz), xd7(mvsiz), xd8(mvsiz),
80 . yd1(mvsiz), yd2(mvsiz), yd3(mvsiz), yd4(mvsiz),
81 . yd5(mvsiz), yd6(mvsiz), yd7(mvsiz), yd8(mvsiz),
82 . zd1(mvsiz), zd2(mvsiz), zd3(mvsiz), zd4(mvsiz),
83 . zd5(mvsiz), zd6(mvsiz), zd7(mvsiz), zd8(mvsiz)
84C=======================================================================
85C
86C----------------------------
87C NODAL COORDINATES |
88C----------------------------
89 IF(iresp==1)THEN
90 DO i=1,nel
91 IF (off(i) <= one ) cycle
92 xd1(i)=xdp(1,nc1(i))
93 yd1(i)=xdp(2,nc1(i))
94 zd1(i)=xdp(3,nc1(i))
95 xd2(i)=xdp(1,nc2(i))
96 yd2(i)=xdp(2,nc2(i))
97 zd2(i)=xdp(3,nc2(i))
98 xd3(i)=xdp(1,nc3(i))
99 yd3(i)=xdp(2,nc3(i))
100 zd3(i)=xdp(3,nc3(i))
101 xd4(i)=xdp(1,nc4(i))
102 yd4(i)=xdp(2,nc4(i))
103 zd4(i)=xdp(3,nc4(i))
104 xd5(i)=xdp(1,nc5(i))
105 yd5(i)=xdp(2,nc5(i))
106 zd5(i)=xdp(3,nc5(i))
107 xd6(i)=xdp(1,nc6(i))
108 yd6(i)=xdp(2,nc6(i))
109 zd6(i)=xdp(3,nc6(i))
110 xd7(i)=xdp(1,nc7(i))
111 yd7(i)=xdp(2,nc7(i))
112 zd7(i)=xdp(3,nc7(i))
113 xd8(i)=xdp(1,nc8(i))
114 yd8(i)=xdp(2,nc8(i))
115 zd8(i)=xdp(3,nc8(i))
116 ENDDO
117 ELSE
118 DO i=1,nel
119 IF (off(i) <= one ) cycle
120 xd1(i)=x(1,nc1(i))
121 yd1(i)=x(2,nc1(i))
122 zd1(i)=x(3,nc1(i))
123 xd2(i)=x(1,nc2(i))
124 yd2(i)=x(2,nc2(i))
125 zd2(i)=x(3,nc2(i))
126 xd3(i)=x(1,nc3(i))
127 yd3(i)=x(2,nc3(i))
128 zd3(i)=x(3,nc3(i))
129 xd4(i)=x(1,nc4(i))
130 yd4(i)=x(2,nc4(i))
131 zd4(i)=x(3,nc4(i))
132 xd5(i)=x(1,nc5(i))
133 yd5(i)=x(2,nc5(i))
134 zd5(i)=x(3,nc5(i))
135 xd6(i)=x(1,nc6(i))
136 yd6(i)=x(2,nc6(i))
137 zd6(i)=x(3,nc6(i))
138 xd7(i)=x(1,nc7(i))
139 yd7(i)=x(2,nc7(i))
140 zd7(i)=x(3,nc7(i))
141 xd8(i)=x(1,nc8(i))
142 yd8(i)=x(2,nc8(i))
143 zd8(i)=x(3,nc8(i))
144 ENDDO
145 ENDIF
146C-----------
147C REPERE CONVECTE (ITERATIONS).
148C-----------
149 CALL srepiso12(
150 1 off, xd1, xd2, xd3,
151 2 xd4, xd5, xd6, xd7,
152 3 xd8, yd1, yd2, yd3,
153 4 yd4, yd5, yd6, yd7,
154 5 yd8, zd1, zd2, zd3,
155 6 zd4, zd5, zd6, zd7,
156 7 zd8, rx, ry, rz,
157 8 sx, sy, sz, tx,
158 9 ty, tz, nel)
159C---
160 IF (jhbe == 14 .OR. jhbe == 24) THEN
161 CALL sortho12(
162 1 off, rx, ry, rz,
163 2 sx, sy, sz, tx,
164 3 ty, tz, r12, r13,
165 4 r11, r22, r23, r21,
166 5 r32, r33, r31, nel)
167 ELSE
168 CALL sortho12(
169 1 off, rx, ry, rz,
170 2 sx, sy, sz, tx,
171 3 ty, tz, r11, r12,
172 4 r13, r21, r22, r23,
173 5 r31, r32, r33, nel)
174 ENDIF
175C-----------
176 RETURN
177 END
subroutine sforc3(timers, output, elbuf_tab, ng, pm, geo, ixs, x, nv46, a, v, ms, w, flux, flu1, veul, fv, ale_connect, iparg, tf, npf, bufmat, partsav, itab, dt2t, neltst, ityptst, stifn, fsky, iads, offset, eani, iparts, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, f15, f25, f35, f16, f26, f36, f17, f27, f37, f18, f28, f38, nel, fskym, msnf, isky, fskyi, nvc, ipm, igeo, ar, vr, in, fr_wave, dr, bufvois, itask, qmv, istrain, temp, fthe, fthesky, iexpan, gresav, grth, igrth, mssa, dmels, table, phi1, phi2, vf, af, df, wf, ffsky, afglob, msf, iparg1, xdp, por, icontact, ifoam, voln, condn, condnsky, agrav, igrv, lgrav, sensors, skew, nale, d, ioutprt, nloc_dmg, mat_elem, h3d_strain, dt, idel7nok, nsvois, sz_bufvois, snpc, stf, sbufmat, svis, idtmins, iresp, idel7ng, maxfunc, userl_avail, glob_therm, impl_s, idyna, wfext)
Definition sforc3.F:156
subroutine sortho12(off, rx, ry, rz, sx, sy, sz, tx, ty, tz, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z, nel)
Definition sortho12.F:34
subroutine srcoor12(off, x, xdp, nc1, nc2, nc3, nc4, nc5, nc6, nc7, nc8, r11, r12, r13, r21, r22, r23, r31, r32, r33, nel, jhbe)
Definition srcoor12.F:39
subroutine srepiso12(off, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, rx, ry, rz, sx, sy, sz, tx, ty, tz, nel)
Definition srepiso12.F:38