30
31
32
33 USE elbufdef_mod
35
36
37
38#include "implicit_f.inc"
39
40
41
42#include "com01_c.inc"
43#include "com04_c.inc"
44#include "param_c.inc"
45
46
47
48 INTEGER IPARG(NPARG,NGROUP),
49 . KXIG3D(NIXIG3D,*)
50
52 . pm(npropm,*),stifint(*)
53 TYPE(ELBUF_STRUCT_), TARGET, DIMENSION(NGROUP) :: ELBUF_TAB
54 TYPE (SURF_) , DIMENSION(NSURF) :: IGRSURF
55
56
57
58 INTEGER I, J, K, N, NG, IEL, ITEL, NUMFAKECP,
59 . OFFSET_IGBUFSSG, OFFSET_NUMFAKENOD, ITSURF
60
62 . av1,cv1, vol(numelig3d),
63 . vnige(numfakenodigeo), bnige(numfakenodigeo)
64 TYPE(G_BUFEL_) ,POINTER :: GBUF
65
66
67
68c
69 DO ng=1,ngroup
70 IF (iparg(5,ng) == 101) THEN
71 DO itel=1,iparg(2,ng)
72 gbuf => elbuf_tab(ng)%GBUF
73 vol(itel+iparg(3,ng)) = gbuf%VOL(itel)
74 ENDDO
75 ENDIF
76 ENDDO
77
78 vnige = 0
79 bnige = 0
80
81 DO itsurf=1,nsurf
82 IF(igrsurf(itsurf)%NSEG_IGE>0) THEN
83 DO j=1,igrsurf(itsurf)%NSEG_IGE
84 iel=igrsurf(itsurf)%ELEM_IGE(j)
85 av1 = vol(iel)/56
86 cv1 = pm(32,kxig3d(1,iel))*av1
87 DO k=1,4
88 numfakecp=igrsurf(itsurf)%NODES_IGE(j,k)
89 vnige(numfakecp-numnod)=vnige(numfakecp-numnod)+av1
90 bnige(numfakecp-numnod)=bnige(numfakecp-numnod)+cv1
91 ENDDO
92 ENDDO
93 ENDIF
94 ENDDO
95
96 DO n=1,numfakenodigeo
97 bnige(n)=bnige(n)/
max(em30,vnige(n))
98 stifint(numnod+n)=stifint(numnod+n)+bnige(n)*(2.*vnige(n))**third
99 ENDDO
100
101
102
103
104
105
106
107 RETURN