# Converted from benz_pyrol.mimportnumpyasnpfromscipy.integrateimportsolve_ivpfrommiscimportoctave_saveclassP:passp=P()p.NBf=60e3p.R=0.08205p.T=1033.0p.P=1.0p.k1=7e5p.k2=4e5p.K1=0.31p.K2=0.48defbenzene_pyrol_rhs(volume,x,p):ext1,ext2=xNB=p.NBf-2*ext1-ext2ND=ext1-ext2NH=ext1+ext2NT=ext2Q=p.NBf*p.R*p.T/p.PcB=NB/Q;cD=ND/Q;cT=NT/Q;cH=NH/Qreturn[p.k1*(cB*cB-cD*cH/p.K1),p.k2*(cB*cD-cT*cH/p.K2)]x0=[0.0,0.0]vout=np.linspace(0,1600,50)sqeps=np.sqrt(np.finfo(float).eps)sol=solve_ivp(lambdav,x:benzene_pyrol_rhs(v,x,p),[0,1600],x0,method='Radau',t_eval=vout,rtol=sqeps,atol=sqeps)x=sol.y.Tconv=(2*x[:,0]+x[:,1])/p.NBfyB=(p.NBf-2*x[:,0]-x[:,1])/p.NBfyD=(x[:,0]-x[:,1])/p.NBfyT=x[:,1]/p.NBfyH=(x[:,0]+x[:,1])/p.NBfdata=np.column_stack([vout,conv,yB,yD,yT,yH])aux_data=np.array([[403.25,0.50,403.25,0.50],[403.25,0.0,0.0,0.50]])octave_save('benz_pyrol.dat',('data',data),('aux_data',aux_data))