pointwise evaluations used in con2prim compute pointwise value for pressure p and dpdxi
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| double precision, | intent(in) | :: | xicurrent | |||
| double precision, | intent(in) | :: | lfac | |||
| double precision, | intent(in) | :: | d | |||
| double precision, | intent(in) | :: | dlfacdxi | |||
| double precision, | intent(out) | :: | p | |||
| double precision, | intent(out) | :: | dpdxi |
pure subroutine FuncPressure(xicurrent,lfac,d,dlfacdxi,p,dpdxi) double precision, intent(in) :: xicurrent,lfac,d,dlfacdxi double precision, intent(out) :: p,dpdxi ! .. local .. double precision :: rho,h,E,dhdxi,rhotoE double precision :: dpdchi,dEdxi ! rhoh here called h h=xicurrent/(lfac**2) rho=d/lfac ! output pressure p = (h - rho)*(phys_gamma-1.0d0)/phys_gamma dpdchi = one*(phys_gamma-1.0d0)/phys_gamma dpdxi = dpdchi * one/lfac**2 ! zero case dlfacdxi implies zero velocity (ssqr=0) if (dlfacdxi /= 0.0d0) & dpdxi = dpdxi + dpdchi * ((d*lfac-2.0d0*xicurrent)/lfac**3) * dlfacdxi end subroutine FuncPressure