Changeset 637


Ignore:
Timestamp:
May 28, 2012 10:35:16 AM (9 years ago)
Author:
vondreele
Message:

implement refine Hessian for HKLF data

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIstruct.py

    r636 r637  
    29392939            dFdvDict = StructureFactorDerv(refList,G,hfx,pfx,SGData,calcControls,parmdict)
    29402940            dMdvh = np.zeros((len(varylist),len(refList)))
     2941            wdf = np.zeros(len(refList))
    29412942            for iref,ref in enumerate(refList):
    29422943                if ref[6] > 0:
    29432944                    if calcControls['F**2']:
    29442945                        if ref[5]/ref[6] >= calcControls['minF/sig']:
     2946                            wdf[iref] = (ref[5]-ref[7])/ref[6]
    29452947                            for j,var in enumerate(varylist):
    29462948                                if var in dFdvDict:
     
    29522954                        Fc = np.sqrt(ref[7])
    29532955                        sig = ref[6]/(2.0*Fo)
     2956                        wdf[iref] = (Fo-Fc)/sig
    29542957                        if Fo/sig >= calcControls['minF/sig']:
    29552958                            for j,var in enumerate(varylist):
     
    29582961                            if phfx+'Scale' in varylist:
    29592962                                dMdvh[varylist.index(phfx+'Scale')][iref] = ref[9]/ref[6]                           
     2963            if dlg:
     2964                dlg.Update(Histogram['wR'],newmsg='Hessian for histogram %d Rw=%8.3f%s'%(hId,Histogram['wR'],'%'))[0]
     2965            if len(Hess):
     2966                Vec += np.sum(dMdvh*wdf,axis=1)
     2967                Hess += np.inner(dMdvh,dMdvh)
     2968            else:
     2969                Vec = np.sum(dMdvh*wdf,axis=1)
     2970                Hess = np.inner(dMdvh,dMdvh)
    29602971        else:
    29612972            continue        #skip non-histogram entries
Note: See TracChangeset for help on using the changeset viewer.