OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
srotorth.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!|| srotorth ../engine/source/elements/solid/srotorth.f
25!||--- called by ------------------------------------------------------
26!|| dfuncs ../engine/source/output/anim/generate/dfunc6.F
27!|| h3d_solid_scalar_1 ../engine/source/output/h3d/h3d_results/h3d_solid_scalar_1.F
28!|| stat_s_ortho ../engine/source/output/sta/stat_s_ortho.F
29!||--- calls -----------------------------------------------------
30!|| scortho31 ../engine/source/elements/thickshell/solidec/scortho31.F
31!|| sortho31 ../engine/source/elements/solid/solide/sortho31.F
32!||====================================================================
33 SUBROUTINE srotorth(X ,IXS ,GAMA , KHBE ,ITYP ,
34 . ICSIG )
35C-----------------------------------------------
36C I m p l i c i t T y p e s
37C-----------------------------------------------
38#include "implicit_f.inc"
39C-----------------------------------------------
40C D u m m y A r g u m e n t s
41C-----------------------------------------------
42C REAL
44 . x(3,*),gama(6)
45 INTEGER IXS(NIXS), KHBE, ITYP,ICSIG
46C-----------------------------------------------
47C L o c a l V a r i a b l e s
48C-----------------------------------------------
49C REAL
51 . x1, x2, x3, x4,
52 . x5, x6, x7, x8,
53 . y1, y2, y3, y4,
54 . y5, y6, y7, y8,
55 . z1, z2, z3, z4,
56 . z5, z6, z7, z8,
57 . l11,l12,l13,l22,l23,l33,
58 . r11,r12,r13,r21,r22,r23,r31,r32,r33,
59 . g11,g22,g33,g12,g21,g23,g32,g13,g31,
60 . t11,t22,t33,t12,t21,t23,t32,t13,t31,
61 . s11,s12,s21,s13,s31,s22,s23,s32,s33,
62 . cp ,sp
63 INTEGER NC1, NC2, NC3, NC4,
64 . nc5, nc6, nc7, nc8
65C-----------------------------------------------
66 nc1=ixs(2)
67 nc2=ixs(3)
68 nc3=ixs(4)
69 nc4=ixs(5)
70 nc5=ixs(6)
71 nc6=ixs(7)
72 nc7=ixs(8)
73 nc8=ixs(9)
74C----------------------------
75C NODAL COORDINATES |
76C----------------------------
77 x1=x(1,nc1)
78 y1=x(2,nc1)
79 z1=x(3,nc1)
80 x2=x(1,nc2)
81 y2=x(2,nc2)
82 z2=x(3,nc2)
83 x3=x(1,nc3)
84 y3=x(2,nc3)
85 z3=x(3,nc3)
86 x4=x(1,nc4)
87 y4=x(2,nc4)
88 z4=x(3,nc4)
89 x5=x(1,nc5)
90 y5=x(2,nc5)
91 z5=x(3,nc5)
92 x6=x(1,nc6)
93 y6=x(2,nc6)
94 z6=x(3,nc6)
95 x7=x(1,nc7)
96 y7=x(2,nc7)
97 z7=x(3,nc7)
98 x8=x(1,nc8)
99 y8=x(2,nc8)
100 z8=x(3,nc8)
101C-----------
102 IF(khbe/=15)THEN
103C REPERE CONVECTE
104 IF (khbe==24.OR.khbe==14) THEN
105 CALL sortho31(
106 . x1, x2, x3, x4, x5, x6, x7, x8,
107 . y1, y2, y3, y4, y5, y6, y7, y8,
108 . z1, z2, z3, z4, z5, z6, z7, z8,
109 . r12, r13, r11, r22, r23, r21, r32, r33, r31)
110 ELSE
111 CALL sortho31(
112 . x1, x2, x3, x4, x5, x6, x7, x8,
113 . y1, y2, y3, y4, y5, y6, y7, y8,
114 . z1, z2, z3, z4, z5, z6, z7, z8,
115 . r11, r12, r13, r21, r22, r23, r31, r32, r33)
116 ENDIF
117 ELSE
118 CALL scortho31(
119 . x1, x2, x3, x4, x5, x6, x7, x8,
120 . y1, y2, y3, y4, y5, y6, y7, y8,
121 . z1, z2, z3, z4, z5, z6, z7, z8,
122 . r11, r12, r13, r21, r22, r23, r31, r32, r33)
123 ENDIF
124C-----------
125C REPERE ORTHOTROPE.
126C-----------
127 IF(ityp == 21 .OR. ityp == 22) THEN
128 cp = gama(1) ! COS(PHI)
129 sp = gama(2) ! SIN(PHI)
130 IF(icsig == 10.OR.khbe == 15)THEN
131 t11=r11*cp+r12*sp
132 t12=r21*cp+r22*sp
133 t13=r31*cp+r32*sp
134 t21=r12*cp-r11*sp
135 t22=r22*cp-r21*sp
136 t23=r32*cp-r31*sp
137 ELSEIF(icsig == 100)THEN
138 t11=r13*cp+r11*sp
139 t12=r23*cp+r21*sp
140 t13=r33*cp+r31*sp
141 t21=r11*cp-r13*sp
142 t22=r21*cp-r23*sp
143 t23=r31*cp-r33*sp
144C ELSEIF(ICSIG == 1 )THEN
145 ELSE
146 t11=r12*cp+r13*sp
147 t12=r22*cp+r23*sp
148 t13=r32*cp+r33*sp
149 t21=r13*cp-r12*sp
150 t22=r23*cp-r22*sp
151 t23=r33*cp-r32*sp
152 ENDIF
153 gama(1)=t11
154 gama(2)=t12
155 gama(3)=t13
156 gama(4)=t21
157 gama(5)=t22
158 gama(6)=t23
159 ELSE
160 g11=gama(1)
161 g21=gama(2)
162 g31=gama(3)
163 g12=gama(4)
164 g22=gama(5)
165 g32=gama(6)
166 g13=g21*g32-g31*g22
167 g23=g31*g12-g11*g32
168 g33=g11*g22-g21*g12
169C MATRICE DE PASSAGE GLOBAL -> ORTHOTROPE.
170 t11=r11*g11+r12*g21+r13*g31
171 t12=r11*g12+r12*g22+r13*g32
172 t13=r11*g13+r12*g23+r13*g33
173 t21=r21*g11+r22*g21+r23*g31
174 t22=r21*g12+r22*g22+r23*g32
175 t23=r21*g13+r22*g23+r23*g33
176 t31=r31*g11+r32*g21+r33*g31
177 t32=r31*g12+r32*g22+r33*g32
178 t33=r31*g13+r32*g23+r33*g33
179 gama(1)=t11
180 gama(2)=t21
181 gama(3)=t31
182 gama(4)=t12
183 gama(5)=t22
184 gama(6)=t32
185 ENDIF
186C-----------
187 RETURN
188 END
#define my_real
Definition cppsort.cpp:32
subroutine srotorth(x, ixs, gama, khbe, ityp, icsig)
Definition srotorth.F:35
subroutine scortho31(x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z)
Definition scortho31.F:33
subroutine sortho31(x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z)
Definition sortho31.F:34