C*****************C--范德波尔SEULEX外推代码驱动程序C*****************clink dr seulex seulex dcdecsol decsol公司clink dr_seulex seulex dc_lapack拉帕克拉帕克隐式实数*8(A-H,O-Z)C--SEULEX参数(全JACOBIAN)参数(ND=2,KM=12,KM2=2+KM*(KM+3)/2,NRDENS=ND)参数(LWORK=2*ND*ND+(KM+8)*ND+4*KM+20+KM2*NRDENS)参数(LIWORK=2*ND+KM+20+NRDENS)C--声明尺寸Y(ND)、工程(LWORK)、工程外部FVPOL、JVPOL、SOLOUTRPAR=1.0D-6C--系统尺寸N=2C--问题是自然而然的IFCN=1C--分析计算雅可比矩阵IJAC=0C-雅可比是一个完整矩阵MLJAC=否C--微分方程为显式IMAS=0C--集成期间使用输出程序IOUT=1C--初始值X=0.0D0Y(1)=2.0D0Y(2)=-0.66D0C-集成的终点XEND=2.0D0C---所需公差RTOL=1.0D-4ATOL=RTOL机场ITOL=0C--初始步长高度=1.0D-6C--设置默认值DO 10 I=1,2010功(I)=0.D0DO 12 I=1,2012工程(I)=0网络(6)=NDO I=1,NRDENS网络(20+I)=I结束DOC-子程序SEULEX的调用致电SEULEX(N、FVPOL、IFCN、X、Y、XEND、H、,&RTOL、ATOL、ITOL、,&JVPOL、IJAC、MLJAC、MUJAC、,&FVPOL、IMAS、MLMAS、MUMAS、,&SOLOUT、IOUT、,&工作,工作,工作C--打印最终解决方案写入(6,99)X,Y(1),Y(2)99格式(1X,'X=',F5.2,'Y=',2E18.10)C---打印统计数据写入(6,90)RTOL90格式('rtol=',D8.2)写入(6,91)(IWORK(J),J=14,20)91格式('fcn=',I5,'jac=',l4,'step=',I4,&“accpt=',I4,'拒绝=',l3,'拒绝=”,I4,&'sol=',I5)停止结束C类C类子程序解决方案(NR、XOLD、X、Y、RC、LRC、IC、LIC、N、,&RPAR、IPAR、IRTRN)C--打印解决方案隐式实数*8(A-H,O-Z)尺寸Y(N),RC(LRC),IC(LIC)通用/INTERN/XOUT如果(NR.EQ.1),则写入(6,99)X,Y(1),Y(2),NR-1XOUT=0.2D0ELSE公司如果(X.GE.XOUT)那么写入(6,99)X,Y(1),Y(2),NR-1c写(6,*)CONTEX(1,XOLD,RC,LRC,IC,LIC)XOUT=最大值(XOUT+0.2D0,X)结束IF结束IF99格式(1X,'X=',F5.2,'Y=',2E18.10,'NSTEP=',I4)返回结束C类C类子程序FVPOL(N、X、Y、F、RPAR、IPAR)C-范德波尔方程的右侧隐式实数*8(A-H,O-Z)尺寸Y(N)、F(N)F(1)=Y(2)F(2)=((1-Y(1)**2)*Y(2)-Y(1返回结束C类C类次常规JVPOL(N、X、Y、DFY、LDFY、RPAR、IPAR)C——范德波尔方程的雅可比隐式实数*8(A-H,O-Z)尺寸Y(N),DFY(LDFY,N)DFY(1,1)=0.0D0DFY(1,2)=1.0D0DFY(2,1)=(-2.0D0*Y(1)*Y(2)-1.0D0)/RPARDFY(2,2)=(1.0D0-Y(1)**2)/RPAR返回结束