36
37
38
39#include "implicit_f.inc"
40
41
42
43#include "mvsiz_p.inc"
44#include "param_c.inc"
45
46
47
48 INTEGER, INTENT(IN) :: NEL
49 INTEGER, INTENT(IN) :: IMAT
50 INTEGER NC1(*),NC2(*),NC3(*),NC4(*)
51 my_real,
INTENT(IN) :: theaccfact
53 . vol(*), px1(*), px2(*), px3(*), px4(*),
54 . py1(*), py2(*), py3(*), py4(*),
55 . pz1(*), pz2(*), pz3(*), pz4(*),
56 . tempnc(*), fphi(mvsiz,4), pm(npropm,*),heat(*),
57 . dt1,tel(*),off(*),offg(*)
58
59
60
61 INTEGER I, J
62
64 . ca, cb, kc, phix, phiy, phiz, a
65
66
67 ca = pm(75,imat)
68 cb = pm(76,imat)
69 DO i=1,nel
70 IF(off(i)==zero.OR.offg(i)<=zero) cycle
71
72
73
74
75 phix = tempnc(nc1(i))*px1(i) + tempnc(nc2(i))*px2(i) +
76 . tempnc(nc3(i))*px3(i) + tempnc(nc4(i))*px4(i)
77
78 phiy = tempnc(nc1(i))*py1(i) + tempnc(nc2(i))*py2(i) +
79 . tempnc(nc3(i))*py3(i) + tempnc(nc4(i))*py4(i)
80
81 phiz = tempnc(nc1(i))*pz1(i) + tempnc(nc2(i))*pz2(i) +
82 . tempnc(nc3(i))*pz3(i) + tempnc(nc4(i))*pz4(i)
83
84 kc = (ca + cb*tel(i))*dt1*vol(i)*theaccfact
85 phix = kc*phix
86 phiy = kc*phiy
87 phiz = kc*phiz
88
89
90
91 a = fourth* heat(i)
92 fphi(i,1) = a - (phix*px1(i) + phiy*py1(i) + pz1(i)*phiz)
93 fphi(i,2) = a - (phix*px2(i) + phiy*py2(i) + pz2(i)*phiz)
94 fphi(i,3) = a - (phix*px3(i) + phiy*py3(i) + pz3(i)*phiz)
95 fphi(i,4) = a - (phix*px4(i) + phiy*py4(i) + pz4(i)*phiz)
96 ENDDO
97
98 RETURN