	real c(0:3),a,b,alpha,Tc,Pc,S,omega,R,T,P(5),P1,z(5),V(5)
	parameter(Tc=425.2,Pc=3797.E+03,R=8314.,omega=0.1931,T=500.,
     +	S=0.48508+1.55171*omega-0.15613*omega*omega,
     +	a=0.4278*R*R*Tc*Tc/Pc,b=0.0867*R*Tc/Pc,z0=1.5,eps=1.E-7)
     	data P/1.,10.,20.,30.,40./
	alpha=(1.+S*(1.-sqrt(T/Tc)))**2
	
	do 100 i=1,5
	  P(i)=P(i)*101325.
	  AA=alpha*a*P(i)/(R*T)**2
	  BB=b*P(i)/R/T
	  c(0)=-AA*BB
	  c(1)=AA-BB-BB**2
	  c(2)=-1.
	  c(3)=1.
	  
	  call NR3P(c,z0,z(i),eps)
	  
 100	continue
	
	do i=1,5
	  V(i)=R*T*z(i)/P(i)
	enddo
	
	open(1,file='SpecVol')
	write(1,101) 
	write(1,102) (P(i),T,V(i),V(i)/z(i),i=1,5)
	close(1)
 101	format('# Pressure',3x,'Temperature','  Spec. Vol.',' SV Ideal')
 102	format(4E12.4)
 
 	end
	
	subroutine NR3P(c,z0,z,eps)
	real c(0:3),z0,z,eps
	
	z=z0
	iter=0
	
 10	iter=iter+1
 	p=c(3)
	dp=0.
	do i=2,0,-1
	  dp=dp*z+p
	  p=p*z+c(i)
	enddo
	
	if(abs(dp).lt.eps) pause 'derivative near zero'
	z=z-p/dp
	write(*,*) iter,z,p/dp
	
	if(abs(p/dp).lt.eps) return
	goto 10
	
	end
	
