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

Fix for downweighting correction (Cauchy)

git-svn-id: http://svnsrv.desy.de/public/MillepedeII/trunk@155 3547b9b0-65b8-46d3-b95d-921b3f43af62
parent 562f66b5
......@@ -52,7 +52,7 @@
!! 1. Download the software package from the DESY \c svn server to
!! \a target directory, e.g.:
!!
!! svn checkout http://svnsrv.desy.de/public/MillepedeII/tags/V04-03-06 target
!! svn checkout http://svnsrv.desy.de/public/MillepedeII/tags/V04-03-07 target
!!
!! 2. Create **Pede** executable (in \a target directory):
!!
......@@ -2898,7 +2898,6 @@ SUBROUTINE loopbf(nrej,ndfs,sndf,dchi2s, numfil,naccf,chi2f,ndff)
REAL(mps), INTENT(IN OUT) :: chi2f(numfil)
INTEGER(mpi), INTENT(IN OUT) :: ndff(numfil)
REAL(mpd)::dch2sd
REAL(mpd):: dchi2
REAL(mpd)::dvar
REAL(mpd):: dw1
......@@ -3367,8 +3366,6 @@ SUBROUTINE loopbf(nrej,ndfs,sndf,dchi2s, numfil,naccf,chi2f,ndff)
summ=summ+dchi2 ! accumulate chi-square sum
END DO
ndf=neq-nrank
! external seed ?
dch2sd=0.0_mpd
resing=(REAL(nweig,mps)-REAL(suwt,mps))/REAL(nweig,mps)
IF (lhist) THEN
IF(iter == 1) CALL hmpent( 5,REAL(ndf,mps)) ! histogram Ndf
......@@ -3442,7 +3439,7 @@ SUBROUTINE loopbf(nrej,ndfs,sndf,dchi2s, numfil,naccf,chi2f,ndff)
GO TO 90
END IF
END IF
END IF
END IF
IF(lhuber > 1.AND.dwcut /= 0.0.AND.resing > dwcut) THEN
! add to FVALUE
......@@ -3470,9 +3467,7 @@ SUBROUTINE loopbf(nrej,ndfs,sndf,dchi2s, numfil,naccf,chi2f,ndff)
! ----- fourth loop ------------------------------------------------
! update of global matrix and vector according to the "Millepede"
! principle, from the global/local information
dchi2s=dchi2s+dch2sd
ist=isfrst(ibuf)
nst=islast(ibuf)
DO ! loop over measurements
......@@ -6719,12 +6714,8 @@ SUBROUTINE xloopn !
dwmean=sumndf/REAL(ndfsum,mpd)
dratio=fvalue/dwmean/REAL(ndfsum-nagb,mpd)
catio=REAL(dratio,mps)
IF(lhuber /= 0) THEN
IF (lhuber <= 3) THEN
catio=catio/0.9326 ! correction Huber downweighting
ELSE
catio=catio/0.8228 ! correction Cauchy downweighting
END IF
IF(nloopn /= 1.AND.lhuber /= 0) THEN
catio=catio/0.9326 ! correction Huber downweighting (in global chi2)
END IF
mrati=nint(100.0*catio,mpi)
......@@ -6741,7 +6732,7 @@ SUBROUTINE xloopn !
WRITE(lunp,*) ' =',dratio
END IF
WRITE(lunp,*) ' '
IF(lhuber /= 0) WRITE(lunp,*) &
IF(nloopn /= 1.AND.lhuber /= 0) WRITE(lunp,*) &
' with correction for down-weighting ',catio
END DO
nrej=nrejec(0)+nrejec(1)+nrejec(2)+nrejec(3) ! total number of rejects
......
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