OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
szhour_ctl.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!|| szhour_ctl ../engine/source/elements/solid/solidez/szhour_ctl.F
25!||--- called by ------------------------------------------------------
26!|| szforc3 ../engine/source/elements/solid/solidez/szforc3.F
27!||--- calls -----------------------------------------------------
28!|| shour_ctl ../engine/source/elements/solid/solidez/shour_ctl.F90
29!|| szstrainhg ../engine/source/elements/solid/solidez/szstrainhg.F
30!||--- uses -----------------------------------------------------
31!|| shour_ctl_mod ../engine/source/elements/solid/solidez/shour_ctl.F90
32!||====================================================================
33 SUBROUTINE szhour_ctl(
34 . PM, RHO, OFF, VX1,
35 . VX2, VX3, VX4, VX5,
36 . VX6, VX7, VX8, VY1,
37 . VY2, VY3, VY4, VY5,
38 . VY6, VY7, VY8, VZ1,
39 . VZ2, VZ3, VZ4, VZ5,
40 . VZ6, VZ7, VZ8, F11,
41 . F21, F31, F12, F22,
42 . F32, F13, F23, F33,
43 . F14, F24, F34, F15,
44 . F25, F35, F16, F26,
45 . F36, F17, F27, F37,
46 . F18, F28, F38, PX1H1,
47 . PX1H2, PX1H3, PX2H1, PX2H2,
48 . PX2H3, PX3H1, PX3H2, PX3H3,
49 . PX4H1, PX4H2, PX4H3, VOL,
50 . FHOUR, MTN, DT1 , MAT,
51 . CXX , EINT , NPROPM, NUMMAT,
52 . STRHG, JR , JS, JT ,
53 . VOL0 , DN , STI , NEL )
54C-----------------------------------------------
55C M o d u l e s
56C-----------------------------------------------
57 USE shour_ctl_mod, ONLY : shour_ctl
58C-----------------------------------------------
59C I m p l i c i t T y p e s
60C-----------------------------------------------
61#include "implicit_f.inc"
62C-----------------------------------------------
63C G l o b a l P a r a m e t e r s
64C-----------------------------------------------
65#include "mvsiz_p.inc"
66C-----------------------------------------------
67C C o m m o n B l o c k s
68C-----------------------------------------------
69#include "scr14_c.inc"
70C-----------------------------------------------
71C D u m m y A r g u m e n t s
72C-----------------------------------------------
73 INTEGER, INTENT(IN) :: NEL
74 INTEGER, INTENT(IN) :: MTN,NPROPM,NUMMAT
75 INTEGER, DIMENSION(MVSIZ) :: MAT
76 my_real, DIMENSION(NPROPM,NUMMAT) ,INTENT(IN):: PM
77 my_real, DIMENSION(NEL,3,4) ,INTENT(INOUT):: fhour
78 my_real, DIMENSION(NEL,18) ,INTENT(INOUT):: strhg
79 my_real, DIMENSION(NEL) ,INTENT(IN):: rho,vol0
80 my_real, DIMENSION(MVSIZ) ,INTENT(IN):: off,vol,
81 . vx1,vx2,vx3,vx4,vx5,vx6,vx7,vx8,
82 . vy1,vy2,vy3,vy4,vy5,vy6,vy7,vy8,
83 . vz1,vz2,vz3,vz4,vz5,vz6,vz7,vz8,
84 . px1h1, px1h2, px1h3,
85 . px2h1, px2h2, px2h3,
86 . px3h1, px3h2, px3h3,
87 . px4h1, px4h2, px4h3,cxx,jr,js,jt
88 my_real, DIMENSION(MVSIZ) ,INTENT(INOUT)::
89 . f11,f21,f31,f12,f22,f32,
90 . f13,f23,f33,f14,f24,f34,
91 . f15,f25,f35,f16,f26,f36,
92 . f17,f27,f37,f18,f28,f38,eint,sti
93 my_real, INTENT(IN):: dt1,dn
94C-----------------------------------------------
95C L o c a l V a r i a b l e s
96C-----------------------------------------------
97 INTEGER I, MX, J, II, IC
98C REAL
99 my_real
100 . caq(mvsiz), fcl(mvsiz), edt(mvsiz),
101 . hx1(mvsiz), hx2(mvsiz), hx3(mvsiz), hx4(mvsiz),
102 . hy1(mvsiz), hy2(mvsiz), hy3(mvsiz), hy4(mvsiz),
103 . hz1(mvsiz), hz2(mvsiz), hz3(mvsiz), hz4(mvsiz),
104 . hgx1(mvsiz), hgx2(mvsiz), hgx3(mvsiz), hgx4(mvsiz),
105 . hgy1(mvsiz), hgy2(mvsiz), hgy3(mvsiz), hgy4(mvsiz),
106 . hgz1(mvsiz), hgz2(mvsiz), hgz3(mvsiz), hgz4(mvsiz),
107 . g11(mvsiz),g21(mvsiz),g31(mvsiz),g41(mvsiz),
108 . g51(mvsiz),g61(mvsiz),g71(mvsiz),g81(mvsiz),
109 . g12(mvsiz),g22(mvsiz),g32(mvsiz),g42(mvsiz),
110 . g52(mvsiz),g62(mvsiz),g72(mvsiz),g82(mvsiz),
111 . g13(mvsiz),g23(mvsiz),g33(mvsiz),g43(mvsiz),
112 . g53(mvsiz),g63(mvsiz),g73(mvsiz),g83(mvsiz),nu2(mvsiz),
113 . jr_1(mvsiz),js_1(mvsiz),jt_1(mvsiz),nu4(mvsiz),
114 . e0,g0,c1,nu,ehourt ,qh,lamg ,stif ,ll ,fvl,nu1
115C-----------------------------------------------
116 DO i=1,nel
117 f11(i)=zero
118 f12(i)=zero
119 f13(i)=zero
120 f14(i)=zero
121 f15(i)=zero
122 f16(i)=zero
123 f17(i)=zero
124 f18(i)=zero
125C
126 f21(i)=zero
127 f22(i)=zero
128 f23(i)=zero
129 f24(i)=zero
130 f25(i)=zero
131 f26(i)=zero
132 f27(i)=zero
133 f28(i)=zero
134C
135 f31(i)=zero
136 f32(i)=zero
137 f33(i)=zero
138 f34(i)=zero
139 f35(i)=zero
140 f36(i)=zero
141 f37(i)=zero
142 f38(i)=zero
143 ENDDO
144 CALL shour_ctl(
145 . pm, rho, off, vx1,
146 . vx2, vx3, vx4, vx5,
147 . vx6, vx7, vx8, vy1,
148 . vy2, vy3, vy4, vy5,
149 . vy6, vy7, vy8, vz1,
150 . vz2, vz3, vz4, vz5,
151 . vz6, vz7, vz8, f11,
152 . f21, f31, f12, f22,
153 . f32, f13, f23, f33,
154 . f14, f24, f34, f15,
155 . f25, f35, f16, f26,
156 . f36, f17, f27, f37,
157 . f18, f28, f38, px1h1,
158 . px1h2, px1h3, px2h1, px2h2,
159 . px2h3, px3h1, px3h2, px3h3,
160 . px4h1, px4h2, px4h3, vol,
161 . fhour, mtn, dt1 , mat,
162 . cxx, eint, npropm, nummat,
163 . vol0, dn , sti , nel )
164!
165 IF(((anim_n(iad_gps+400+1) == 1) .OR. (anim_n(iad_gps+400+2) == 1) .OR.
166 . (anim_n(iad_gps+400+3) == 1) .OR. (anim_n(iad_gps+400+4) == 1) .OR.
167 . (anim_n(iad_gps+400+5) == 1) .OR. (anim_n(iad_gps+400+6) == 1)) )THEN
168 mx = mat(1)
169 nu=pm(21,mx)
170 nu1 =two/(one-nu)
171 DO i=1,nel
172 jr_1(i) = one/max(em20,jr(i))
173 js_1(i) = one/max(em20,js(i))
174 jt_1(i) = one/max(em20,jt(i))
175 nu2(i) =half*nu*nu1
176 nu4(i) =nu
177 ENDDO
178 CALL szstrainhg(
179 1 jr_1, js_1, jt_1, strhg,
180 2 nel, hgx1, hgx2, hgx3,
181 3 hgx4, hgy1, hgy2, hgy3,
182 4 hgy4, hgz1, hgz2, hgz3,
183 5 hgz4, nu4, nu2)
184 ENDIF
185C
186 RETURN
187 END
#define max(a, b)
Definition macros.h:21
subroutine szhour_ctl(pm, rho, off, vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8, vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8, vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, f15, f25, f35, f16, f26, f36, f17, f27, f37, f18, f28, f38, px1h1, px1h2, px1h3, px2h1, px2h2, px2h3, px3h1, px3h2, px3h3, px4h1, px4h2, px4h3, vol, fhour, mtn, dt1, mat, cxx, eint, npropm, nummat, strhg, jr, js, jt, vol0, dn, sti, nel)
Definition szhour_ctl.F:54
subroutine szstrainhg(jr_1, js_1, jt_1, strhg, nel, hgx1, hgx2, hgx3, hgx4, hgy1, hgy2, hgy3, hgy4, hgz1, hgz2, hgz3, hgz4, nu, nu1)
Definition szstrainhg.F:37