30 SUBROUTINE frho3(UVAR ,RHO0,DXX, DYY, DZZ,
31 . FLUX,FLU1,VOLN,NGL,MAT,OFF,NEL)
39#include "implicit_f.inc"
54 INTEGER NGL(*),MAT(*),NEL
55 my_real uvar(nel,*),flux(mvsiz,6), flu1(*), voln(*), dxx(*),dyy(*),dzz(*),off(*),rho0(*)
60 my_real dvv, e0(nel),vavg,rv,rvp
61 INTEGER I, J,COUNT,LIST(NEL),II
62 my_real,
DIMENSION(:),
POINTER :: volo,rhon,eint,dvol
71 IF(
ale%GLOBAL%INCOMP == 1)
THEN
74 dvv=dt1*(dxx(i)+dyy(i)+dzz(i))
75 rhon(i)=rhon(i)-dvv*rho0(i)
76 vavg=half*(voln(i)+volo(i))
78 eint(i)=eint(i)*volo(i)-e0(i)*dvv*vavg
83 rhon(i) = rhon(i)/voln(i)
86 . - volo(i)+0.5*dt1*(flu1(i)+flux(i,1)+flux(i,2)
87 . + flux(i,3)+flux(i,4)+flux(i,5)+flux(i,6) )
89 rhon(i) =
max(rhon(i) , em30)
96 IF(rhon(i) <= zero .AND. off(i)/= zero)
THEN
104 WRITE(iout,1000) ngl(i),rhon(i)
105 WRITE(istdo,1000) ngl(i),rhon(i)
106#include "lockoff.inc"
107 1000
FORMAT(
'-STOP GAZ ',i8,
' HAS NEGATIVE RHO',g12.5)
subroutine frho3(uvar, rho0, dxx, dyy, dzz, flux, flu1, voln, ngl, mat, off, nel)