OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
udam24.F File Reference
#include "implicit_f.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine udam24 (sig, ang, nel)
subroutine udam24n (sig, ang, nbdama, damai, nel)

Function/Subroutine Documentation

◆ udam24()

subroutine udam24 ( sig,
ang,
integer nel )

Definition at line 28 of file udam24.F.

29C-----------------------------------------------
30C I m p l i c i t T y p e s
31C-----------------------------------------------
32#include "implicit_f.inc"
33C-----------------------------------------------
34C D u m m y A r g u m e n t s
35C-----------------------------------------------
36 INTEGER NEL
37 my_real sig(nel,6), ang(nel,6)
38C-----------------------------------------------
39C L o c a l V a r i a b l e s
40C-----------------------------------------------
41 INTEGER I
42 my_real anga
43 my_real s11(nel), s12(nel), s13(nel), s21(nel), s22(nel), s23(nel), s31(nel),
44 . s32(nel), s33(nel), a11(nel), a12(nel), a13(nel), a21(nel), a22(nel),
45 . a23(nel), a31(nel), a32(nel), a33(nel)
46C=======================================================================
47 anga = zero
48 DO i = 1,nel
49 anga = anga + abs(ang(i,1)-one) + abs(ang(i,5)-one)
50 ENDDO
51 IF (anga <= em3) RETURN
52C
53 DO i = 1,nel
54 s11(i) = ang(i,1)
55 s21(i) = ang(i,2)
56 s31(i) = ang(i,3)
57 s12(i) = ang(i,4)
58 s22(i) = ang(i,5)
59 s32(i) = ang(i,6)
60 s13(i) = s21(i)*s32(i)-s31(i)*s22(i)
61 s23(i) = s31(i)*s12(i)-s11(i)*s32(i)
62 s33(i) = s11(i)*s22(i)-s21(i)*s12(i)
63 ENDDO
64C . . . . . . . . . . . . . . . . . .
65C ROTATION INVERSE DES CONTRAINTES
66C . . . . . . . . . . . . . . . . . .
67 DO i = 1,nel
68 a11(i)=sig(i,1)*s11(i)+sig(i,4)*s12(i)+sig(i,6)*s13(i)
69 a12(i)=sig(i,1)*s21(i)+sig(i,4)*s22(i)+sig(i,6)*s23(i)
70 a13(i)=sig(i,1)*s31(i)+sig(i,4)*s32(i)+sig(i,6)*s33(i)
71 a21(i)=sig(i,4)*s11(i)+sig(i,2)*s12(i)+sig(i,5)*s13(i)
72 a22(i)=sig(i,4)*s21(i)+sig(i,2)*s22(i)+sig(i,5)*s23(i)
73 a23(i)=sig(i,4)*s31(i)+sig(i,2)*s32(i)+sig(i,5)*s33(i)
74 a31(i)=sig(i,6)*s11(i)+sig(i,5)*s12(i)+sig(i,3)*s13(i)
75 a32(i)=sig(i,6)*s21(i)+sig(i,5)*s22(i)+sig(i,3)*s23(i)
76 a33(i)=sig(i,6)*s31(i)+sig(i,5)*s32(i)+sig(i,3)*s33(i)
77 ENDDO
78c
79 DO i = 1,nel
80 sig(i,1)=s11(i)*a11(i)+s12(i)*a21(i)+s13(i)*a31(i)
81 sig(i,2)=s21(i)*a12(i)+s22(i)*a22(i)+s23(i)*a32(i)
82 sig(i,3)=s31(i)*a13(i)+s32(i)*a23(i)+s33(i)*a33(i)
83 sig(i,4)=s11(i)*a12(i)+s12(i)*a22(i)+s13(i)*a32(i)
84 sig(i,5)=s21(i)*a13(i)+s22(i)*a23(i)+s23(i)*a33(i)
85 sig(i,6)=s11(i)*a13(i)+s12(i)*a23(i)+s13(i)*a33(i)
86 ENDDO
87c-----------
88 RETURN
#define my_real
Definition cppsort.cpp:32

◆ udam24n()

subroutine udam24n ( sig,
ang,
integer nbdama,
integer, dimension(nel) damai,
integer nel )

Definition at line 97 of file udam24.F.

98C-----------------------------------------------
99C I m p l i c i t T y p e s
100C-----------------------------------------------
101#include "implicit_f.inc"
102C-----------------------------------------------
103C D u m m y A r g u m e n t s
104C-----------------------------------------------
105 INTEGER NBDAMA,NEL
106 INTEGER DAMAI(NEL)
107 my_real sig(nel,6), ang(nel,6)
108C-----------------------------------------------
109C L o c a l V a r i a b l e s
110C-----------------------------------------------
111 INTEGER I,K
112 my_real anga,
113 . s11(nel), s12(nel), s13(nel), s21(nel), s22(nel), s23(nel), s31(nel),
114 . s32(nel), s33(nel), a11(nel), a12(nel), a13(nel), a21(nel), a22(nel),
115 . a23(nel), a31(nel), a32(nel), a33(nel)
116C=======================================================================
117 DO k=1,nbdama
118 i = damai(k)
119 s11(i)=ang(i,1)
120 s21(i)=ang(i,2)
121 s31(i)=ang(i,3)
122 s12(i)=ang(i,4)
123 s22(i)=ang(i,5)
124 s32(i)=ang(i,6)
125 s13(i)=s21(i)*s32(i)-s31(i)*s22(i)
126 s23(i)=s31(i)*s12(i)-s11(i)*s32(i)
127 s33(i)=s11(i)*s22(i)-s21(i)*s12(i)
128 ENDDO
129C . . . . . . . . . . . . . . . . . .
130C ROTATION INVERSE DES CONTRAINTES
131C . . . . . . . . . . . . . . . . . .
132 DO k=1,nbdama
133 i = damai(k)
134 a11(i)=sig(i,1)*s11(i)+sig(i,4)*s12(i)+sig(i,6)*s13(i)
135 a12(i)=sig(i,1)*s21(i)+sig(i,4)*s22(i)+sig(i,6)*s23(i)
136 a13(i)=sig(i,1)*s31(i)+sig(i,4)*s32(i)+sig(i,6)*s33(i)
137 a21(i)=sig(i,4)*s11(i)+sig(i,2)*s12(i)+sig(i,5)*s13(i)
138 a22(i)=sig(i,4)*s21(i)+sig(i,2)*s22(i)+sig(i,5)*s23(i)
139 a23(i)=sig(i,4)*s31(i)+sig(i,2)*s32(i)+sig(i,5)*s33(i)
140 a31(i)=sig(i,6)*s11(i)+sig(i,5)*s12(i)+sig(i,3)*s13(i)
141 a32(i)=sig(i,6)*s21(i)+sig(i,5)*s22(i)+sig(i,3)*s23(i)
142 a33(i)=sig(i,6)*s31(i)+sig(i,5)*s32(i)+sig(i,3)*s33(i)
143 ENDDO
144c
145 DO k=1,nbdama
146 i = damai(k)
147 sig(i,1)=s11(i)*a11(i)+s12(i)*a21(i)+s13(i)*a31(i)
148 sig(i,2)=s21(i)*a12(i)+s22(i)*a22(i)+s23(i)*a32(i)
149 sig(i,3)=s31(i)*a13(i)+s32(i)*a23(i)+s33(i)*a33(i)
150 sig(i,4)=s11(i)*a12(i)+s12(i)*a22(i)+s13(i)*a32(i)
151 sig(i,5)=s21(i)*a13(i)+s22(i)*a23(i)+s23(i)*a33(i)
152 sig(i,6)=s11(i)*a13(i)+s12(i)*a23(i)+s13(i)*a33(i)
153 ENDDO
154c-----------
155 RETURN