32
33
34
35#include "implicit_f.inc"
36
37
38
39#include "mvsiz_p.inc"
40
41
42
43 INTEGER NEL
45 . off(*), snew(nel,6), qold(*), eint(*), dvol(*),
46 . sold1(*), sold2(*), sold3(*), sold4(*), sold5(*),
47 . sold6(*), d1(*), d2(*), d3(*), d4(*), d5(*), d6(*), pold(*), df(*), einc(*)
48
49
50
51#include "com08_c.inc"
52
53
54
55 INTEGER I
57 . vavg(mvsiz),
58 . e1(mvsiz), e2(mvsiz), e3(mvsiz), e4(mvsiz),
59 . e5(mvsiz), e6(mvsiz), dta,voln(mvsiz)
60
61 dta =fourth*dt1
62
63 DO i=1,nel
64 e1(i)=d1(i)*(sold1(i)+snew(i,1)+pold(i))
65 e2(i)=d2(i)*(sold2(i)+snew(i,2)+pold(i))
66 e3(i)=d3(i)*(sold3(i)+snew(i,3)+pold(i))
67 e4(i)=d4(i)*(sold4(i)+snew(i,4))
68 e5(i)=d5(i)*(sold5(i)+snew(i,5))
69 e6(i)=d6(i)*(sold6(i)+snew(i,6))
70 ENDDO
71
72 DO i=1,nel
73 vavg(i)=(two*voln(i)-dvol(i))*off(i)
74 dvol(i)=half*dvol(i)*off(i)
75 einc(i)=vavg(i)*(e1(i)+e2(i)+e3(i)+e4(i)+e5(i)+e6(i))*dta
76 ENDDO
77
78 DO i=1,nel
79 einc(i)=einc(i)-dvol(i)*(pold(i)+qold(i))
80 eint(i)=eint(i)+einc(i)
81 ENDDO
82
83 RETURN