OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
scortho31.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!|| scortho31 ../starter/source/elements/thickshell/solidec/scortho31.F
25!||--- called by ------------------------------------------------------
26!|| srota6_m1 ../starter/source/output/anim/srota6_M1.F
27!||====================================================================
28 SUBROUTINE scortho31(
29 . X1, X2, X3, X4, X5, X6, X7, X8,
30 . Y1, Y2, Y3, Y4, Y5, Y6, Y7, Y8,
31 . Z1, Z2, Z3, Z4, Z5, Z6, Z7, Z8,
32 . E1X, E2X, E3X, E1Y, E2Y, E3Y, E1Z, E2Z, E3Z )
33C-----------------------------------------------
34C I m p l i c i t T y p e s
35C-----------------------------------------------
36#include "implicit_f.inc"
37C-----------------------------------------------
38C D u m m y A r g u m e n t s
39C-----------------------------------------------
41 . x1, x2, x3, x4, x5, x6, x7, x8,
42 . y1, y2, y3, y4, y5, y6, y7, y8,
43 . z1, z2, z3, z4, z5, z6, z7, z8,
44 . e1x, e1y, e1z,
45 . e2x, e2y, e2z,
46 . e3x, e3y, e3z
47C-----------------------------------------------
48C L o c a l V a r i a b l e s
49C-----------------------------------------------
50 INTEGER I
51 my_real
52 . X17 , X28 , X35 , X46,
53 . Y17 , Y28 , Y35 , Y46,
54 . z17 , z28 , z35 , z46,
55 . a17 , a28 ,
56 . b17 , b28 ,
57 . c17 , c28 ,
58 . rx , ry , rz ,
59 . tx , ty , tz ,
60 . det,c1,c2, sign,
61 . sx , sy , sz ,
62 . rsx , rsy , rsz
63C-----------------------------------------------
64 x17=x7-x1
65 x28=x8-x2
66 x35=x5-x3
67 x46=x6-x4
68 y17=y7-y1
69 y28=y8-y2
70 y35=y5-y3
71 y46=y6-y4
72 z17=z7-z1
73 z28=z8-z2
74 z35=z5-z3
75 z46=z6-z4
76C
77 rx=x17+x28-x35-x46
78 ry=y17+y28-y35-y46
79 rz=z17+z28-z35-z46
80 a17=x17+x46
81 a28=x28+x35
82 b17=y17+y46
83 b28=y28+y35
84 c17=z17+z46
85 c28=z28+z35
86C
87 tx=a17-a28
88 ty=b17-b28
89 tz=c17-c28
90C
91c~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
92C
93 e3x = ty * rz - tz * ry
94 e3y = tz * rx - tx * rz
95 e3z = tx * ry - ty * rx
96C
97 det = sqrt(e3x*e3x + e3y*e3y + e3z*e3z)
98 IF ( det/=zero) det = one / det
99 e3x = e3x * det
100 e3y = e3y * det
101 e3z = e3z * det
102C
103 c1=sqrt(tx*tx+ty*ty+tz*tz)
104 c2=sqrt(rx*rx+ry*ry+rz*rz)
105 e1x=tx*c2 +(ry * e3z - rz * e3y)*c1
106 e1y=ty*c2 +(rz * e3x - rx * e3z)*c1
107 e1z=tz*c2 +(rx * e3y - ry * e3x)*c1
108 det = sqrt(e1x*e1x + e1y*e1y + e1z*e1z)
109 IF ( det/=zero) det = one / det
110 e1x = e1x*det
111 e1y = e1y*det
112 e1z = e1z*det
113C
114 e2x = e3y * e1z - e3z * e1y
115 e2y = e3z * e1x - e3x * e1z
116 e2z = e3x * e1y - e3y * e1x
117c~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
118 RETURN
119 END
#define my_real
Definition cppsort.cpp:32
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