31
32
33
34
35
36
37
38
39
40
41
42
44
45
46
47#include "implicit_f.inc"
48
49
50
51#include "mvsiz_p.inc"
52
53
54
55#include "vect01_c.inc"
56#include "com01_c.inc"
57#include "param_c.inc"
58
59
60
61
62
63
64
65
66 INTEGER :: IXS(NIXS,*)
67 my_real :: voln(mvsiz), rho(mvsiz)
68
69
70
71 INTEGER :: I, J
72 INTEGER :: NVERTEX,INOd,II
73 my_real :: m_cell(mvsiz),accel(3,mvsiz)
74 LOGICAL :: debug_outp
75 INTEGER :: idbf,idbl
76
77
78
79
80
81
82
83
84
85
86
87
88
89 DO i=lft,llt
90 nvertex = 0
91 accel(1:3,i) = zero
92
93 DO j=1,8
94 inod = ixs(1+j,i+nft)
96 nvertex = nvertex + 1
100 ENDDO
101 IF(nvertex>0)THEN
102 accel(1,i) = accel(1,i) / nvertex
103 accel(2,i) = accel(2,i) / nvertex
104 accel(3,i) = accel(3,i) / nvertex
105 ENDIF
106 enddo
107
108 DO i=lft,llt
109 m_cell(i) = rho(i)*voln(i)
110 enddo
111
112 DO i=lft,llt
113 ii = i + nft
117 enddo
118
119
121 debug_outp = .false.
123 do i=lft,llt
124 ii = nft + i
126 debug_outp = .true.
127 idbf = i
128 idbl = i
129 EXIT
130 endif
131 enddo
133 debug_outp=.true.
134 idbf = lft
135 idbl = llt
136 endif
137
138 if(debug_outp)then
139
140 print *, " |----alefvm_gravity.F----|"
141 print *, " | THREAD INFORMATION |"
142 print *, " |------------------------|"
143 print *, " NCYCLE =", ncycle
144 do i=idbf,idbl
145 ii = nft + i
146 print *, " brique=", ixs(11,nft+i)
147 write(*,fmt='(A24,1A26)') " ",
148 . "#--------- cell----------#"
149 write (*,fmt='(A,1E26.14)') " Rho =", rho(i)
150 write (*,fmt='(A,1E26.14)') " Vol =", voln(i)
151 write (*,fmt='(A,1E26.14)') " Mass =", m_cell(i)
152 write (*,fmt='(A,1E26.14)') " Accel-X =", accel(1,i)
153 write (*,fmt='(A,1E26.14)') " Accel-Y =", accel(2,i)
154 write (*,fmt='(A,1E26.14)') " Accel-Z =", accel(3,i)
155 write(*,fmt='(A24,8A26)') " ",
156 . "#--------- nod_1 ---------","#--------- nod_2 ---------",
157 . "#--------- nod_3 ---------","#--------- nod_4 ---------",
158 . "#--------- nod_5 ---------","#--------- nod_6 ---------",
159 . "#--------- nod_7 ---------","#--------- nod_8 --------#"
160 write (*,fmt=
'(A,8E26.14)')
" acc-X =",
alefvm_buffer%VERTEX(
161 write (*,fmt=
'(A,8E26.14)')
" acc-Y =",
alefvm_buffer%VERTEX(2,ixs(2:9,i))
162 write (*,fmt='(a,8e26.14)') " acc-Z =", ALEFVM_Buffer%VERTEX(3,IXS(2:9,I))
163 print *, " "
164 enddo
165!#!include "lockoff.inc"
166 endif
167 endif
168 !-----------------------------------------!
169
170 RETURN
type(alefvm_buffer_), target alefvm_buffer
type(alefvm_param_), target alefvm_param