29 2 DVOL ,VNEW ,MAT ,PSH ,PNEW ,DPDM ,
51#include "implicit_f.inc"
60 INTEGER MAT(NEL), IFLAG, NEL
61 my_real PM(NPROPM,NUMMAT),
62 . off(nel) ,eint(nel) ,mu(nel) ,
63 . dvol(nel) ,vnew(nel),
64 . pnew(nel),dpdm(nel) ,dpde(nel)
65 my_real,
INTENT(INOUT) :: psh(nel)
71#include "vect01_c.inc"
77 my_real BULK(NEL),PC(NEL),C0(NEL)
93 pnew(i) = c0(i)+bulk(i)*mu(i)
94 pnew(i) =
max(pc(i)-psh(i),pnew(i))
95 pnew(i) = pnew(i)*off(i)
98 ELSEIF(iflag == 1)
THEN
107 pnew(i) = c0(i)+bulk(i)*mu(i)
108 pnew(i) =
max(pnew(i),pc(i)-psh(i))
109 pnew(i) = pnew(i)*off(i)
110 eint(i) = eint(i) - half*dvol(i)*(pnew(i)+psh(i))
115 ELSEIF (iflag == 2)
THEN
124 IF (vnew(i) > zero)
THEN
125 pnew(i) = c0(i)+bulk(i)*mu(i)
126 pnew(i) =
max(pnew(i),pc(i)-psh(i))
127 pnew(i) = pnew(i)*off(i)
subroutine eoslinear(iflag, nel, pm, off, eint, mu, dvol, vnew, mat, psh, pnew, dpdm, dpde)