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

Go to the source code of this file.

Functions/Subroutines

subroutine smalla3 (sav, offg, off, wxx, wyy, wzz, nel, ismstr, jlag)

Function/Subroutine Documentation

◆ smalla3()

subroutine smalla3 ( double precision, dimension(nel,21) sav,
offg,
off,
wxx,
wyy,
wzz,
integer nel,
integer, intent(in) ismstr,
integer, intent(in) jlag )

Definition at line 31 of file smalla3.F.

35C-----------------------------------------------
36C I m p l i c i t T y p e s
37C-----------------------------------------------
38#include "implicit_f.inc"
39C-----------------------------------------------
40C C o m m o n B l o c k s
41C-----------------------------------------------
42C-----------------------------------------------
43C D u m m y A r g u m e n t s
44C-----------------------------------------------
45 INTEGER, INTENT(IN) :: ISMSTR
46 INTEGER, INTENT(IN) :: JLAG
47 INTEGER NEL
49 . offg(*),off(*),wxx(*),wyy(*),wzz(*)
50 double precision
51 . sav(nel,21)
52C-----------------------------------------------
53C L o c a l V a r i a b l e s
54C-----------------------------------------------
55 INTEGER I
56 DOUBLE PRECISION X , Y, Z ,DV
57C-----------------------------------------------
58C-----------------------------
59C ROTATION RBY DES COORDONNEES POUR SMALL STRAIN
60C-----------------------------
61 IF(ismstr==11)THEN
62C----SAV : (ismstr=10,11) is differently saved to Ismstr=1
63 DO i=1,nel
64C-----------------------------------------------
65 IF(offg(i)==zero) cycle
66 x=sav(i,1)
67 y=sav(i,8)
68 z=sav(i,15)
69 sav(i,1) = x - y*wzz(i) + z*wyy(i)
70 sav(i,8) = y - z*wxx(i) + x*wzz(i)
71 sav(i,15) = z - x*wyy(i) + y*wxx(i)
72C
73 x=sav(i,2)
74 y=sav(i,9)
75 z=sav(i,16)
76 sav(i,2) = x - y*wzz(i) + z*wyy(i)
77 sav(i,9) = y - z*wxx(i) + x*wzz(i)
78 sav(i,16) = z - x*wyy(i) + y*wxx(i)
79C
80 x=sav(i,3)
81 y=sav(i,10)
82 z=sav(i,17)
83 sav(i,3) = x - y*wzz(i) + z*wyy(i)
84 sav(i,10) = y - z*wxx(i) + x*wzz(i)
85 sav(i,17) = z - x*wyy(i) + y*wxx(i)
86C
87 x=sav(i,4)
88 y=sav(i,11)
89 z=sav(i,18)
90 sav(i,4) = x - y*wzz(i) + z*wyy(i)
91 sav(i,11) = y - z*wxx(i) + x*wzz(i)
92 sav(i,18) = z - x*wyy(i) + y*wxx(i)
93C
94 x=sav(i,5)
95 y=sav(i,12)
96 z=sav(i,19)
97 sav(i,5) = x - y*wzz(i) + z*wyy(i)
98 sav(i,12) = y - z*wxx(i) + x*wzz(i)
99 sav(i,19) = z - x*wyy(i) + y*wxx(i)
100C
101 x=sav(i,6)
102 y=sav(i,13)
103 z=sav(i,20)
104 sav(i,6) = x - y*wzz(i) + z*wyy(i)
105 sav(i,13) = y - z*wxx(i) + x*wzz(i)
106 sav(i,20) = z - x*wyy(i) + y*wxx(i)
107C
108 x=sav(i,7)
109 y=sav(i,14)
110 z=sav(i,21)
111 sav(i,7) = x - y*wzz(i) + z*wyy(i)
112 sav(i,14) = y - z*wxx(i) + x*wzz(i)
113 sav(i,21) = z - x*wyy(i) + y*wxx(i)
114 ENDDO
115
116 ELSEIF(ismstr<=4.AND.jlag>0)THEN
117 DO i=1,nel
118 IF(offg(i)>one)THEN
119C-----------------------------------------------
120 x=sav(i,1)
121 y=sav(i,2)
122 z=sav(i,3)
123 sav(i,1) = x - y*wzz(i) + z*wyy(i)
124 sav(i,2) = y - z*wxx(i) + x*wzz(i)
125 sav(i,3) = z - x*wyy(i) + y*wxx(i)
126C
127 x=sav(i,4)
128 y=sav(i,5)
129 z=sav(i,6)
130 sav(i,4) = x - y*wzz(i) + z*wyy(i)
131 sav(i,5) = y - z*wxx(i) + x*wzz(i)
132 sav(i,6) = z - x*wyy(i) + y*wxx(i)
133C
134 x=sav(i,7)
135 y=sav(i,8)
136 z=sav(i,9)
137 sav(i,7) = x - y*wzz(i) + z*wyy(i)
138 sav(i,8) = y - z*wxx(i) + x*wzz(i)
139 sav(i,9) = z - x*wyy(i) + y*wxx(i)
140C
141 x=sav(i,10)
142 y=sav(i,11)
143 z=sav(i,12)
144 sav(i,10) = x - y*wzz(i) + z*wyy(i)
145 sav(i,11) = y - z*wxx(i) + x*wzz(i)
146 sav(i,12) = z - x*wyy(i) + y*wxx(i)
147C
148 x=sav(i,13)
149 y=sav(i,14)
150 z=sav(i,15)
151 sav(i,13) = x - y*wzz(i) + z*wyy(i)
152 sav(i,14) = y - z*wxx(i) + x*wzz(i)
153 sav(i,15) = z - x*wyy(i) + y*wxx(i)
154C
155 x=sav(i,16)
156 y=sav(i,17)
157 z=sav(i,18)
158 sav(i,16) = x - y*wzz(i) + z*wyy(i)
159 sav(i,17) = y - z*wxx(i) + x*wzz(i)
160 sav(i,18) = z - x*wyy(i) + y*wxx(i)
161C
162 x=sav(i,19)
163 y=sav(i,20)
164 z=sav(i,21)
165 sav(i,19) = x - y*wzz(i) + z*wyy(i)
166 sav(i,20) = y - z*wxx(i) + x*wzz(i)
167 sav(i,21) = z - x*wyy(i) + y*wxx(i)
168
169 ENDIF
170 ENDDO
171 ENDIF
172C
173 RETURN
#define my_real
Definition cppsort.cpp:32