OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
assparxx.F File Reference
#include "implicit_f.inc"
#include "param_c.inc"
#include "task_c.inc"
#include "scr18_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine assparxx (itsk, intlist, nbintc, ipari, nodadt_therm)

Function/Subroutine Documentation

◆ assparxx()

subroutine assparxx ( integer itsk,
integer, dimension(*) intlist,
integer nbintc,
integer, dimension(npari,*) ipari,
integer, intent(in) nodadt_therm )

Definition at line 30 of file assparxx.F.

31C-----------------------------------------------
32C M o d u l e s
33C-----------------------------------------------
34 USE tri7box
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-----------------------------------------------
42#include "param_c.inc"
43#include "task_c.inc"
44#include "scr18_c.inc"
45C-----------------------------------------------
46C D u m m y A r g u m e n t s
47C-----------------------------------------------
48 INTEGER ,INTENT(IN) :: NODADT_THERM
49 INTEGER ITSK,NBINTC,INTLIST(*),IPARI(NPARI,*)
50C-----------------------------------------------
51C L o c a l V a r i a b l e s
52C-----------------------------------------------
53 INTEGER K,NIN,NODFI,ISHIFT,IG,NI,NTY,NODFTSK,NODLTSK,INTTH,NODFIE
54C
55
56 DO ni = 1,nbintc
57 nin= intlist(ni)
58 nty =ipari(7,nin)
59 intth = ipari(47,nin)
60
61 IF(nty /= 7 .AND. nty /= 10 .AND. nty /= 11.AND. nty /= 24 .AND. nty /= 25 .AND. nty /= 20.AND. nty /= 23) cycle
62 nodfi = nlskyfi(nin)
63
64 nodftsk = 1+itsk*nodfi/ nthread
65 nodltsk = (itsk+1)*nodfi/nthread
66
67 DO k=2,nthread
68
69 ishift = nodfi*(k-1)
70
71 DO ig=nodftsk,nodltsk !LENR
72 afi(nin)%P(1,ig)=afi(nin)%P(1,ig)+afi(nin)%P(1,ig+ishift)
73 afi(nin)%P(2,ig)=afi(nin)%P(2,ig)+afi(nin)%P(2,ig+ishift)
74 afi(nin)%P(3,ig)=afi(nin)%P(3,ig)+afi(nin)%P(3,ig+ishift)
75 stnfi(nin)%P(ig)=stnfi(nin)%P(ig)+stnfi(nin)%P(ig+ishift)
76C
77 afi(nin)%P(1,ig+ishift) = zero
78 afi(nin)%P(2,ig+ishift) = zero
79 afi(nin)%P(3,ig+ishift) = zero
80 stnfi(nin)%P(ig+ishift) = zero
81 ENDDO
82
83 IF (intth /=0)THEN
84 DO ig=nodftsk,nodltsk !LENR
85 fthefi(nin)%P(ig)=fthefi(nin)%P(ig)+fthefi(nin)%P(ig+ishift)
86 fthefi(nin)%P(ig+ishift)=zero
87
88 IF(nodadt_therm == 1 ) THEN
89 condnfi(nin)%P(ig)=condnfi(nin)%P(ig)+condnfi(nin)%P(ig+ishift)
90 condnfi(nin)%P(ig+ishift)=zero
91 ENDIF
92 ENDDO
93 ENDIF
94
95 IF(kdtint/=0)THEN
96 DO ig=nodftsk,nodltsk
97 vscfi(nin)%P(ig)=vscfi(nin)%P(ig)+vscfi(nin)%P(ig+ishift)
98 vscfi(nin)%P(ig+ishift)=zero
99 ENDDO
100 ENDIF
101 ENDDO
102
103 IF(nty==20 .OR. (nty==25 .AND. ipari(58,nin) > 0))THEN
104 nodfie = nlskyfie(nin)
105 IF(nodfie > 0)THEN
106 nodftsk = 1+itsk*nodfie/ nthread
107 nodltsk = (itsk+1)*nodfie/nthread
108
109 DO k=2,nthread
110 ishift = nodfie*(k-1)
111 DO ig=nodftsk,nodltsk !LENR
112 afie(nin)%P(1,ig)=afie(nin)%P(1,ig)+afie(nin)%P(1,ig+ishift)
113 afie(nin)%P(2,ig)=afie(nin)%P(2,ig)+afie(nin)%P(2,ig+ishift)
114 afie(nin)%P(3,ig)=afie(nin)%P(3,ig)+afie(nin)%P(3,ig+ishift)
115 stnfie(nin)%P(ig)=stnfie(nin)%P(ig)+stnfie(nin)%P(ig+ishift)
116C
117 afie(nin)%P(1,ig+ishift) = zero
118 afie(nin)%P(2,ig+ishift) = zero
119 afie(nin)%P(3,ig+ishift) = zero
120 stnfie(nin)%P(ig+ishift) = zero
121 ENDDO
122
123 IF(kdtint/=0)THEN
124 DO ig=nodftsk,nodltsk
125 vscfie(nin)%P(ig)=vscfi(nin)%P(ig)+vscfie(nin)%P(ig+ishift)
126 vscfie(nin)%P(ig+ishift)=zero
127 ENDDO
128 ENDIF
129 ENDDO
130
131
132 ENDIF
133 ENDIF
134 ENDDO
135
136
137 RETURN
type(real_pointer), dimension(:), allocatable condnfi
Definition tri7box.F:449
type(real_pointer), dimension(:), allocatable stnfi
Definition tri7box.F:449
type(real_pointer2), dimension(:), allocatable afi
Definition tri7box.F:459
type(real_pointer), dimension(:), allocatable stnfie
Definition tri7box.F:449
type(real_pointer2), dimension(:), allocatable afie
Definition tri7box.F:459
type(real_pointer), dimension(:), allocatable vscfi
Definition tri7box.F:449
type(real_pointer), dimension(:), allocatable vscfie
Definition tri7box.F:449
integer, dimension(:), allocatable nlskyfie
Definition tri7box.F:512
integer, dimension(:), allocatable nlskyfi
Definition tri7box.F:512
type(real_pointer), dimension(:), allocatable fthefi
Definition tri7box.F:449