| c { dg-do compile } |
| c { dg-options "-std=legacy" } |
| SUBROUTINE SWEEP |
| PARAMETER(MAXDIM=4,MAXVEC=4**3*8,MAXT=20) |
| REAL(KIND=8) B,W1,W2,BNORM,BINV,WT,W0,C1,C2,R1,R2 |
| DIMENSION B(MAXVEC,0:3),W1(MAXVEC,0:3),W2(MAXVEC,0:3) |
| DIMENSION BNORM(MAXVEC),BINV(MAXVEC),WT(MAXVEC),W0(MAXVEC) |
| DIMENSION C1(MAXVEC),C2(MAXVEC),R1(MAXVEC),R2(MAXVEC) |
| DO 200 ILAT=1,2**IDIM |
| DO 200 I1=1,IDIM |
| DO 220 I2=1,IDIM |
| CALL INTACT(ILAT,I1,I1,W1) |
| 220 CONTINUE |
| DO 310 IATT=1,IDIM |
| DO 311 I=1,100 |
| WT(I)=ONE + C1(I)*LOG(EPS+R1(I)) |
| IF( R2(I)**2 .LE. (ONE-WT(I)**2) )THEN |
| W0(I)=WT(I) |
| ENDIF |
| 311 CONTINUE |
| 310 CONTINUE |
| 200 CONTINUE |
| END |