OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
r3cum3.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!|| r3cum3 ../engine/source/elements/spring/r3cum3.F
25!||--- called by ------------------------------------------------------
26!|| rforc3 ../engine/source/elements/spring/rforc3.F
27!||====================================================================
28 SUBROUTINE r3cum3(
29 1 F, FOR, STI, STIFN,
30 2 DF, EX, EY, EZ,
31 3 EX2, EY2, EZ2, NC1,
32 4 NC2, NC3, NEL)
33C-----------------------------------------------
34C I m p l i c i t T y p e s
35C-----------------------------------------------
36#include "implicit_f.inc"
37C-----------------------------------------------
38C G l o b a l P a r a m e t e r s
39C-----------------------------------------------
40#include "mvsiz_p.inc"
41C-----------------------------------------------
42C C o m m o n B l o c k s
43C-----------------------------------------------
44C-----------------------------------------------
45C D u m m y A r g u m e n t s
46C-----------------------------------------------
47 INTEGER, INTENT(IN) :: NEL
48 INTEGER NC1(*),NC2(*),NC3(*)
49C REAL
50 my_real
51 . f(3,*), for(*),sti(3,*),stifn(*),df(*),
52 . ex(mvsiz),ey(mvsiz),ez(mvsiz),ex2(mvsiz),ey2(mvsiz),ez2(mvsiz)
53C-----------------------------------------------
54C L o c a l V a r i a b l e s
55C-----------------------------------------------
56 INTEGER I, J
57C REAL
58 my_real
59 . F11(MVSIZ), F21(MVSIZ), F31(MVSIZ),
60 . altmp
61C-----------------------------------------------
62C-------------------------
63C ASSEMBLE
64C-------------------------
65 DO i=1,nel
66 f11(i)=ex(i)*(for(i)+df(i))
67 f21(i)=ey(i)*(for(i)+df(i))
68 f31(i)=ez(i)*(for(i)+df(i))
69 ENDDO
70C
71c ... note: dF = E*dF + dE*F.
72C
73 DO i=1,nel
74 f(1,nc1(i))=f(1,nc1(i))+f11(i)
75 f(2,nc1(i))=f(2,nc1(i))+f21(i)
76 f(3,nc1(i))=f(3,nc1(i))+f31(i)
77 stifn(nc1(i))=stifn(nc1(i))+sti(1,i)
78 f(1,nc2(i))=f(1,nc2(i))-f11(i)
79 f(2,nc2(i))=f(2,nc2(i))-f21(i)
80 f(3,nc2(i))=f(3,nc2(i))-f31(i)
81 stifn(nc2(i))=stifn(nc2(i))+two*sti(2,i)
82 ENDDO
83C
84 DO i=1,nel
85 f11(i)=ex2(i)*(for(i)-df(i))
86 f21(i)=ey2(i)*(for(i)-df(i))
87 f31(i)=ez2(i)*(for(i)-df(i))
88 ENDDO
89C
90c ... note: dF = E*dF + dE*F.
91C
92 DO i=1,nel
93 f(1,nc3(i))=f(1,nc3(i))+f11(i)
94 f(2,nc3(i))=f(2,nc3(i))+f21(i)
95 f(3,nc3(i))=f(3,nc3(i))+f31(i)
96 stifn(nc3(i))=stifn(nc3(i))+sti(3,i)
97 f(1,nc2(i))=f(1,nc2(i))-f11(i)
98 f(2,nc2(i))=f(2,nc2(i))-f21(i)
99 f(3,nc2(i))=f(3,nc2(i))-f31(i)
100 ENDDO
101C---
102 RETURN
103 END
for(i8=*sizetab-1;i8 >=0;i8--)
subroutine r3cum3(f, for, sti, stifn, df, ex, ey, ez, ex2, ey2, ez2, nc1, nc2, nc3, nel)
Definition r3cum3.F:33