| [4d61ad0] | 1 | program treeverseTest
|
|---|
| 2 | IMPLICIT NONE
|
|---|
| 3 | INTEGER nstp, nsnp, action,step
|
|---|
| 4 | LOGICAL TRV_NEXT_ACTION
|
|---|
| 5 | INTEGER nbadv, nbturn, nbpush, nblook, nbpop
|
|---|
| 6 |
|
|---|
| 7 | nbadv = 0
|
|---|
| 8 | nbturn = 0
|
|---|
| 9 | nbpush = 0
|
|---|
| 10 | nblook = 0
|
|---|
| 11 | nbpop = 0
|
|---|
| 12 | PRINT*,'Nb of time steps: '
|
|---|
| 13 | READ *,nstp
|
|---|
| 14 | PRINT*,'Nb of snapshots: '
|
|---|
| 15 | READ *,nsnp
|
|---|
| 16 | PRINT*,'REVERSING ',nstp,' STEPS WITH ',nsnp,' SNAPSHOTS:'
|
|---|
| 17 | call TRV_INIT(nstp, nsnp, 1)
|
|---|
| 18 | DO WHILE (TRV_NEXT_ACTION(action,step))
|
|---|
| 19 | IF (action.eq.1) THEN
|
|---|
| 20 | WRITE(*,910) '[',action,'] PUSH SNAPSHOT ',step
|
|---|
| 21 | nbpush = nbpush+1
|
|---|
| 22 | ELSE IF (action.eq.2) THEN
|
|---|
| 23 | WRITE(*,910) '[',action,'] LOOK SNAPSHOT ',step
|
|---|
| 24 | nblook = nblook+1
|
|---|
| 25 | ELSE IF (action.eq.3) THEN
|
|---|
| 26 | WRITE(*,910) '[',action,'] POP SNAPSHOT ',step
|
|---|
| 27 | nbpop = nbpop+1
|
|---|
| 28 | ELSE IF (action.eq.4) THEN
|
|---|
| 29 | WRITE(*,910) '[',action,'] ADVANCE ONE STEP ',step
|
|---|
| 30 | nbadv = nbadv+1
|
|---|
| 31 | ELSE IF (action.eq.5) THEN
|
|---|
| 32 | WRITE(*,910) '[',action,'] FIRST TURN ',step
|
|---|
| 33 | nbturn = nbturn+1
|
|---|
| 34 | ELSE IF (action.eq.6) THEN
|
|---|
| 35 | WRITE(*,910) '[',action,'] TURN ',step
|
|---|
| 36 | nbturn = nbturn+1
|
|---|
| 37 | ELSE
|
|---|
| 38 | WRITE(*,910) '[',action,'] ?? ',step
|
|---|
| 39 | ENDIF
|
|---|
| 40 |
|
|---|
| 41 | c IF (step.eq.8.and.action.eq.4) THEN
|
|---|
| 42 | c WRITE(*,*) ' =============> step 8: TRV_RESIZE() !!!'
|
|---|
| 43 | c CALL TRV_RESIZE()
|
|---|
| 44 | c ENDIF
|
|---|
| 45 |
|
|---|
| 46 | ENDDO
|
|---|
| 47 | WRITE(*,920) 'push:',nbpush,' look:',nblook,' pop:',nbpop,
|
|---|
| 48 | + ' advance:',nbadv,' turn:',nbturn
|
|---|
| 49 | 910 format(a1,i1,a19,i3)
|
|---|
| 50 | 920 format(a5,i6,a6,i6,a5,i6,a9,i6,a6,i5)
|
|---|
| 51 | END
|
|---|