OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
r3cum3p.F File Reference
#include "implicit_f.inc"
#include "comlock.inc"
#include "mvsiz_p.inc"
#include "parit_c.inc"
#include "vectorize.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine r3cum3p (for, sti, fsky, fskyv, iadr, df, ex, ey, ez, ex2, ey2, ez2, nel, nft)

Function/Subroutine Documentation

◆ r3cum3p()

subroutine r3cum3p ( for,
sti,
fsky,
fskyv,
integer, dimension(3,*) iadr,
df,
ex,
ey,
ez,
ex2,
ey2,
ez2,
integer, intent(in) nel,
integer, intent(in) nft )

Definition at line 28 of file r3cum3p.F.

33C-----------------------------------------------
34C I m p l i c i t T y p e s
35C-----------------------------------------------
36#include "implicit_f.inc"
37#include "comlock.inc"
38C-----------------------------------------------
39C G l o b a l P a r a m e t e r s
40C-----------------------------------------------
41#include "mvsiz_p.inc"
42C-----------------------------------------------
43C C o m m o n B l o c k s
44C-----------------------------------------------
45#include "parit_c.inc"
46C-----------------------------------------------
47C D u m m y A r g u m e n t s
48C-----------------------------------------------
49 INTEGER, INTENT(IN) :: NEL
50 INTEGER, INTENT(IN) :: NFT
51C REAL
53 . for(*), sti(3,*),fskyv(lsky,8),df(*),
54 . fsky(8,lsky),ex(mvsiz),ey(mvsiz),ez(mvsiz),
55 . ex2(mvsiz),ey2(mvsiz),ez2(mvsiz)
56 INTEGER IADR(3,*)
57C-----------------------------------------------
58C L o c a l V a r i a b l e s
59C-----------------------------------------------
60 INTEGER I, II, N, J
62 . f11(mvsiz), f21(mvsiz), f31(mvsiz)
63C-----------------------------------------------
64C-------------------------
65C ASSEMBLE
66C-------------------------
67 DO i=1,nel
68 f11(i)=ex(i)*(for(i)+df(i))
69 f21(i)=ey(i)*(for(i)+df(i))
70 f31(i)=ez(i)*(for(i)+df(i))
71 ENDDO
72C
73 IF (ivector == 1) THEN
74#include "vectorize.inc"
75 DO i=1,nel
76 ii = i+nft
77 n = iadr(1,ii)
78 fskyv(n,1)=f11(i)
79 fskyv(n,2)=f21(i)
80 fskyv(n,3)=f31(i)
81 fskyv(n,7)=sti(1,i)
82 n = iadr(2,ii)
83 fskyv(n,1)=-f11(i)
84 fskyv(n,2)=-f21(i)
85 fskyv(n,3)=-f31(i)
86 fskyv(n,7)=two*sti(2,i)
87 ENDDO
88 ELSE
89 DO i=1,nel
90 ii = i+nft
91 n = iadr(1,ii)
92 fsky(1,n)=f11(i)
93 fsky(2,n)=f21(i)
94 fsky(3,n)=f31(i)
95 fsky(7,n)=sti(1,i)
96 n = iadr(2,ii)
97 fsky(1,n)=-f11(i)
98 fsky(2,n)=-f21(i)
99 fsky(3,n)=-f31(i)
100 fsky(7,n)=two*sti(2,i)
101 ENDDO
102 ENDIF
103C
104 DO i=1,nel
105 f11(i)=ex2(i)*(for(i)-df(i))
106 f21(i)=ey2(i)*(for(i)-df(i))
107 f31(i)=ez2(i)*(for(i)-df(i))
108 ENDDO
109C
110 IF (ivector == 1) THEN
111#include "vectorize.inc"
112 DO i=1,nel
113C
114 ii = i+nft
115 n = iadr(2,ii)
116 fskyv(n,1)=fskyv(n,1)-f11(i)
117 fskyv(n,2)=fskyv(n,2)-f21(i)
118 fskyv(n,3)=fskyv(n,3)-f31(i)
119 n = iadr(3,ii)
120 fskyv(n,1)=f11(i)
121 fskyv(n,2)=f21(i)
122 fskyv(n,3)=f31(i)
123 fskyv(n,7)=sti(3,i)
124 ENDDO
125 ELSE
126 DO i=1,nel
127 ii = i+nft
128 n = iadr(2,ii)
129 fsky(1,n)=fsky(1,n)-f11(i)
130 fsky(2,n)=fsky(2,n)-f21(i)
131 fsky(3,n)=fsky(3,n)-f31(i)
132 n = iadr(3,ii)
133 fsky(1,n)=f11(i)
134 fsky(2,n)=f21(i)
135 fsky(3,n)=f31(i)
136 fsky(7,n)=sti(3,i)
137 ENDDO
138 ENDIF
139C---
140 RETURN
#define my_real
Definition cppsort.cpp:32
for(i8=*sizetab-1;i8 >=0;i8--)