1 subroutine e3massr (aci, dui, ri, 2 & rmi, A0) 3c 4c---------------------------------------------------------------------- 5c 6c This routine calculates the contribution of the jump condition 7c and the time flux to RHS and LHS. 8c 9c input: 10c aci (npro,nflow) : Y variable acceleration 11c dui (npro,nflow) : dU variables at previous step 12c A0 (npro,nflow,nflow) : weighted Jacobian 13c 14c output: 15c ri (npro,nflow*(nsd+1)) : partial residual 16c rmi (npro,nflow*(nsd+1)) : partial modified residual 17c 18c 19c 20c Zdenek Johan, Summer 1990. (Modified from e2jump.f) 21c Zdenek Johan, Winter 1991. (Fortran 90) 22c Kenneth Jansen, Winter 1997 Prim Variables 23c---------------------------------------------------------------------- 24c 25 include "common.h" 26c 27 dimension aci(npro,nflow), dui(npro,nflow), 28 & ri(npro,nflow*(nsd+1)), 29 & rmi(npro,nflow*(nsd+1)), A0(npro,nflow,nflow) 30c 31c 32c.... add contribution of U at previous step 33c 34 if(ires.eq.1 .or. ires .eq. 3) then 35 36 ri(:,16) = ri(:,16) 37 & + A0(:,1,1)*aci(:,1) 38c & + A0(:,1,2)*aci(:,2) 39c & + A0(:,1,3)*aci(:,3) 40c & + A0(:,1,4)*aci(:,4) 41 & + A0(:,1,5)*aci(:,5) 42c 43 ri(:,17) = ri(:,17) 44 & + A0(:,2,1)*aci(:,1) 45 & + A0(:,2,2)*aci(:,2) 46c & + A0(:,2,3)*aci(:,3) 47c & + A0(:,2,4)*aci(:,4) 48 & + A0(:,2,5)*aci(:,5) 49c 50 ri(:,18) = ri(:,18) 51 & + A0(:,3,1)*aci(:,1) 52c & + A0(:,3,2)*aci(:,2) 53 & + A0(:,3,3)*aci(:,3) 54c & + A0(:,3,4)*aci(:,4) 55 & + A0(:,3,5)*aci(:,5) 56c 57 ri(:,19) = ri(:,19) 58 & + A0(:,4,1)*aci(:,1) 59c & + A0(:,4,2)*aci(:,2) 60c & + A0(:,4,3)*aci(:,3) 61 & + A0(:,4,4)*aci(:,4) 62 & + A0(:,4,5)*aci(:,5) 63c 64 ri(:,20) = ri(:,20) 65 & + A0(:,5,1)*aci(:,1) 66 & + A0(:,5,2)*aci(:,2) 67 & + A0(:,5,3)*aci(:,3) 68 & + A0(:,5,4)*aci(:,4) 69 & + A0(:,5,5)*aci(:,5) 70c 71 72 endif 73 if(ires.ne.1) then 74c 75c the modified residual 76c 77 fct1=almi/gami/alfi*dtgl 78 79 rmi(:,16) = rmi(:,16) + fct1*dui(:,1) 80 rmi(:,17) = rmi(:,17) + fct1*dui(:,2) 81 rmi(:,18) = rmi(:,18) + fct1*dui(:,3) 82 rmi(:,19) = rmi(:,19) + fct1*dui(:,4) 83 rmi(:,20) = rmi(:,20) + fct1*dui(:,5) 84 85 endif 86 87c 88c.... return 89c 90 return 91 end 92c 93c 94c 95 subroutine e3massrSclr (acti, rti, A0t) 96c 97c---------------------------------------------------------------------- 98c 99c This routine calculates the contribution of the jump condition 100c and the time flux to RHS and LHS. 101c 102c input: 103c acti (npro) : scalar variable acceleration 104c A0t (npro) : weighted Jacobian 105c 106c output: 107c rti (npro,nsd+1) : partial residual 108c 109c 110c 111c Zdenek Johan, Summer 1990. (Modified from e2jump.f) 112c Zdenek Johan, Winter 1991. (Fortran 90) 113c Kenneth Jansen, Winter 1997 Prim Variables 114c---------------------------------------------------------------------- 115c 116 include "common.h" 117c 118 dimension acti(npro), 119 & rti(npro,nsd+1), 120 & rmti(npro,nsd+1), A0t(npro) 121c 122c 123c.... add contribution of U at previous step 124c 125 if(ires.eq.1 .or. ires .eq. 3) then 126 127 rti(:,4) = rti(:,4) + A0t(:)*acti(:) 128 129 endif 130 131 132c if(ires.ne.1) then 133c 134c the modified residual 135c 136c fct1=almi/gami/alfi*dtgl 137c 138c rmi(:,4) = rmi(:,4) + fct1*duti(:) 139c 140c endif 141 142c 143c.... return 144c 145 return 146 end 147 148