OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
mrotens.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!|| mrotens ../engine/source/materials/mat_share/mrotens.F
25!||--- called by ------------------------------------------------------
26!|| m25law ../engine/source/materials/mat/mat025/m25law.F
27!|| mmain ../engine/source/materials/mat_share/mmain.F90
28!|| mulaw ../engine/source/materials/mat_share/mulaw.F90
29!|| mulaw8 ../engine/source/materials/mat_share/mulaw8.F90
30!|| usermat_solid ../engine/source/materials/mat_share/usermat_solid.F
31!||====================================================================
32 SUBROUTINE mrotens (LFT,LLT,E1,E2,E3,
33 . E4,DYZ,E6,R11,R12,
34 . R13,R21,R22,R23,R31,
35 . R32,R33)
36C-----------------------------------------------
37C I m p l i c i t T y p e s
38C-----------------------------------------------
39#include "implicit_f.inc"
40C-----------------------------------------------
41C G l o b a l P a r a m e t e r s
42C-----------------------------------------------
43#include "mvsiz_p.inc"
44C-----------------------------------------------
45C D u m m y A r g u m e n t s
46C-----------------------------------------------
47 INTEGER LFT,LLT
48 my_real E1(*),E2(*),E3(*),E4(*),DYZ(*),E6(*),
49 . R11(*), R12(*), R13(*),
50 . r21(*), r22(*), r23(*),
51 . r31(*), r32(*), r33(*)
52C-----------------------------------------------
53C L o c a l V a r i a b l e s
54C-----------------------------------------------
55 INTEGER I
56 my_real
57 . A11(MVSIZ), A12(MVSIZ), A13(MVSIZ),
58 . a21(mvsiz), a22(mvsiz), a23(mvsiz),
59 . a31(mvsiz), a32(mvsiz), a33(mvsiz)
60C-----------------------------------------------
61 DO 200 i=lft,llt
62 a11(i)=e1(i)*r11(i)+e4(i)*r21(i)+e6(i)*r31(i)
63 a12(i)=e1(i)*r12(i)+e4(i)*r22(i)+e6(i)*r32(i)
64 a13(i)=e1(i)*r13(i)+e4(i)*r23(i)+e6(i)*r33(i)
65 a21(i)=e4(i)*r11(i)+e2(i)*r21(i)+dyz(i)*r31(i)
66 a22(i)=e4(i)*r12(i)+e2(i)*r22(i)+dyz(i)*r32(i)
67 a23(i)=e4(i)*r13(i)+e2(i)*r23(i)+dyz(i)*r33(i)
68 a31(i)=e6(i)*r11(i)+dyz(i)*r21(i)+e3(i)*r31(i)
69 a32(i)=e6(i)*r12(i)+dyz(i)*r22(i)+e3(i)*r32(i)
70 a33(i)=e6(i)*r13(i)+dyz(i)*r23(i)+e3(i)*r33(i)
71 200 CONTINUE
72 DO 201 i=lft,llt
73 e1(i)=r11(i)*a11(i)+r21(i)*a21(i)+r31(i)*a31(i)
74 e2(i)=r12(i)*a12(i)+r22(i)*a22(i)+r32(i)*a32(i)
75 e3(i)=r13(i)*a13(i)+r23(i)*a23(i)+r33(i)*a33(i)
76 e4(i)=r11(i)*a12(i)+r21(i)*a22(i)+r31(i)*a32(i)
77 dyz(i)=r12(i)*a13(i)+r22(i)*a23(i)+r32(i)*a33(i)
78 e6(i)=r11(i)*a13(i)+r21(i)*a23(i)+r31(i)*a33(i)
79 201 CONTINUE
80C
81 RETURN
82 END
83!||====================================================================
84!|| mrotensns ../engine/source/materials/mat_share/mrotens.F
85!||--- called by ------------------------------------------------------
86!|| mulaw ../engine/source/materials/mat_share/mulaw.F90
87!|| usermat_solid ../engine/source/materials/mat_share/usermat_solid.F
88!||====================================================================
89 SUBROUTINE mrotensns (LFT,LLT,
90 . DXX,DXY,DXZ,
91 . DYX,DYY,DYZ,
92 . DZX,DZY,DZZ,
93 . R11,R12,R13,
94 . R21,R22,R23,
95 . R31,R32,R33)
96C-----------------------------------------------
97C I m p l i c i t T y p e s
98C-----------------------------------------------
99#include "implicit_f.inc"
100C-----------------------------------------------
101C D u m m y A r g u m e n t s
102C-----------------------------------------------
103 INTEGER LFT,LLT
104 my_real
105 . DXY(*) ,DYX(*) ,DYZ(*) ,DZY(*) ,DZX(*) ,DXZ(*)
106 my_real DXX(*),DYY(*),DZZ(*),
107 . R11(*), R12(*), R13(*),
108 . R21(*), R22(*), R23(*),
109 . R31(*), R32(*), R33(*)
110C-----------------------------------------------
111C L o c a l V a r i a b l e s
112C-----------------------------------------------
113 INTEGER I
114 my_real
115 . a11, a12, a13,
116 . a21, a22, a23,
117 . a31, a32, a33
118C-----------------------------------------------
119 DO i=lft,llt
120 a11 = dxx(i)*r11(i) + dxy(i)*r21(i) + dxz(i)*r31(i)
121 a12 = dxx(i)*r12(i) + dxy(i)*r22(i) + dxz(i)*r32(i)
122 a13 = dxx(i)*r13(i) + dxy(i)*r23(i) + dxz(i)*r33(i)
123
124 a21 = dyx(i)*r11(i) + dyy(i)*r21(i) + dyz(i)*r31(i)
125 a22 = dyx(i)*r12(i) + dyy(i)*r22(i) + dyz(i)*r32(i)
126 a23 = dyx(i)*r13(i) + dyy(i)*r23(i) + dyz(i)*r33(i)
127
128 a31 = dzx(i)*r11(i) + dzy(i)*r21(i) + dzz(i)*r31(i)
129 a32 = dzx(i)*r12(i) + dzy(i)*r22(i) + dzz(i)*r32(i)
130 a33 = dzx(i)*r13(i) + dzy(i)*r23(i) + dzz(i)*r33(i)
131
132 dxx(i) = r11(i)*a11 + r21(i)*a21 + r31(i)*a31
133 dxy(i) = r11(i)*a12 + r21(i)*a22 + r31(i)*a32
134 dxz(i) = r11(i)*a13 + r21(i)*a23 + r31(i)*a33
135
136 dyx(i) = r12(i)*a11 + r22(i)*a21 + r32(i)*a31
137 dyy(i) = r12(i)*a12 + r22(i)*a22 + r32(i)*a32
138 dyz(i) = r12(i)*a13 + r22(i)*a23 + r32(i)*a33
139
140 dzx(i) = r13(i)*a11 + r23(i)*a21 + r33(i)*a31
141 dzy(i) = r13(i)*a12 + r23(i)*a22 + r33(i)*a32
142 dzz(i) = r13(i)*a13 + r23(i)*a23 + r33(i)*a33
143 ENDDO
144C
145 RETURN
146 END
subroutine mrotensns(lft, llt, dxx, dxy, dxz, dyx, dyy, dyz, dzx, dzy, dzz, r11, r12, r13, r21, r22, r23, r31, r32, r33)
Definition mrotens.F:96
subroutine mrotens(lft, llt, e1, e2, e3, e4, dyz, e6, r11, r12, r13, r21, r22, r23, r31, r32, r33)
Definition mrotens.F:36