Commit f3e04794 authored by Claus Kleinwort's avatar Claus Kleinwort
Browse files

fixes for special data blocks and not decreasing function value

git-svn-id: http://svnsrv.desy.de/public/MillepedeII/trunk@159 3547b9b0-65b8-46d3-b95d-921b3f43af62
parent e7b3768d
...@@ -52,7 +52,7 @@ ...@@ -52,7 +52,7 @@
!! 1. Download the software package from the DESY \c svn server to !! 1. Download the software package from the DESY \c svn server to
!! \a target directory, e.g.: !! \a target directory, e.g.:
!! !!
!! svn checkout http://svnsrv.desy.de/public/MillepedeII/tags/V04-03-08 target !! svn checkout http://svnsrv.desy.de/public/MillepedeII/tags/V04-03-09 target
!! !!
!! 2. Create **Pede** executable (in \a target directory): !! 2. Create **Pede** executable (in \a target directory):
!! !!
...@@ -100,6 +100,8 @@ ...@@ -100,6 +100,8 @@
!! cmd-skipemptycons). !! cmd-skipemptycons).
!! * 170831: More debug information for problems with reading Cfiles. Don't stop !! * 170831: More debug information for problems with reading Cfiles. Don't stop
!! after read error for \ref cmd-checkinput mode. !! after read error for \ref cmd-checkinput mode.
!! * 180525: Some fixes: Proper handling of special (debug) data blocks in binary
!! files, proper exit code (3) for 'function not decreasing'.
!! !!
!! \section tools_sec Tools !! \section tools_sec Tools
!! The subdirectory \c tools contains some useful scripts: !! The subdirectory \c tools contains some useful scripts:
...@@ -1958,13 +1960,15 @@ SUBROUTINE pechk(ibuf, nerr) ...@@ -1958,13 +1960,15 @@ SUBROUTINE pechk(ibuf, nerr)
IF(inder(is) == 0) EXIT inner2 ! found 2. marker IF(inder(is) == 0) EXIT inner2 ! found 2. marker
END DO inner2 END DO inner2
jb=is jb=is
DO WHILE(inder(is+1) /= 0.AND.is < nst) IF(ja+1 == jb.AND.glder(jb) < 0.0_mpr8) THEN
is=is+1
END DO
IF(ja+1 /= jb.OR.glder(jb) >= 0.0_mpr8) CYCLE outer
! special data ! special data
jsp=jb ! pointer to special data jsp=jb ! pointer to special data
is=is+NINT(-glder(jb),mpi) ! skip NSP words is=is+NINT(-glder(jb),mpi) ! skip NSP words
CYCLE outer
END IF
DO WHILE(inder(is+1) /= 0.AND.is < nst)
is=is+1
END DO
END DO outer END DO outer
IF(is > nst) THEN IF(is > nst) THEN
ioff = readBufferPointer(ibuf) ioff = readBufferPointer(ibuf)
...@@ -2040,13 +2044,16 @@ SUBROUTINE isjajb(nst,is,ja,jb,jsp) ...@@ -2040,13 +2044,16 @@ SUBROUTINE isjajb(nst,is,ja,jb,jsp)
IF(inder(is) == 0) EXIT IF(inder(is) == 0) EXIT
END DO END DO
jb=is jb=is
DO WHILE(inder(is+1) /= 0.AND.is < nst) IF(ja+1 == jb.AND.glder(jb) < 0.0_mpr8) THEN
is=is+1
END DO
IF(ja+1 /= jb.OR.glder(jb) >= 0.0_mpr8) EXIT
! special data ! special data
jsp=jb ! pointer to special data jsp=jb ! pointer to special data
is=is+NINT(-glder(jb),mpi) ! skip NSP words is=is+NINT(-glder(jb),mpi) ! skip NSP words
CYCLE
END IF
DO WHILE(inder(is+1) /= 0.AND.is < nst)
is=is+1
END DO
EXIT
END DO END DO
END SUBROUTINE isjajb END SUBROUTINE isjajb
...@@ -6630,7 +6637,7 @@ SUBROUTINE xloopn ! ...@@ -6630,7 +6637,7 @@ SUBROUTINE xloopn !
END IF END IF
ELSE ELSE
WRITE(*,*) '... stopping iterations' WRITE(*,*) '... stopping iterations'
iagain=0 iagain=-1
GO TO 90 GO TO 90
END IF END IF
ELSE ELSE
...@@ -7103,18 +7110,16 @@ SUBROUTINE filetc ...@@ -7103,18 +7110,16 @@ SUBROUTINE filetc
END IF END IF
keystx='fortranfiles' keystx='fortranfiles'
!GF MAT=MATINT(TEXT(IA:IB),KEYSTX,NPAT,NTEXT) mat=matint(text(ia:ib),keystx,npat,ntext)
!GF IF(MAT.GE.NTEXT-NTEXT/10) THEN IF(mat == ntext) THEN ! exact matching
IF (text(ia:ib) == keystx) THEN ! exact comparison by GF
nuf=3 nuf=3
! WRITE(*,*) 'Fortran files' ! WRITE(*,*) 'Fortran files'
CYCLE CYCLE
END IF END IF
keystx='Cfiles' keystx='Cfiles'
!GF MAT=MATINT(TEXT(IA:IB),KEYSTX,NPAT,NTEXT) mat=matint(text(ia:ib),keystx,npat,ntext)
!GF IF(MAT.GE.NTEXT-NTEXT/10) THEN IF(mat == ntext) THEN ! exact matching
IF (text(ia:ib) == keystx) THEN ! exact comparison by GF
nuf=1 nuf=1
! WRITE(*,*) 'Cfiles' ! WRITE(*,*) 'Cfiles'
CYCLE CYCLE
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment