Changeset 1066


Ignore:
Timestamp:
Sep 26, 2013 2:47:56 PM (8 years ago)
Author:
vondreele
Message:

more MC/SA fixes

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIImath.py

    r1065 r1066  
    377377    XYZ = np.zeros_like(Cart)
    378378    for i,xyz in enumerate(Cart):
    379         X = prodQVQ(oriQ,xyz)
    380         XYZ[i] = np.inner(Bmat,X)
     379        XYZ[i] = np.inner(Bmat,prodQVQ(oriQ,xyz))
    381380    return XYZ
    382381
     
    405404    XYZ = np.zeros_like(Cart)
    406405    for i,xyz in enumerate(Cart):
    407         X = prodQVQ(RBObj['Orient'][0],xyz)
    408         XYZ[i] = np.inner(Bmat,X)+RBObj['Orig'][0]
     406        XYZ[i] = np.inner(Bmat,prodQVQ(RBObj['Orient'][0],xyz))+RBObj['Orig'][0]
    409407    return XYZ,Cart
    410408
     
    27572755        rcov /= Rnorm
    27582756    elif 'Pawley' in reflName:  #need a bail out if Pawley cov matrix doesn't exist.
    2759         vList = covData['varyList']
    2760         for iref,refI in enumerate(reflData):
     2757        vNames = []
     2758        pfx = str(data['pId'])+'::PWLref:'
     2759        for iref,refI in enumerate(reflData):           #Pawley reflection set
    27612760            h,k,l,m,d,v,f,s = refI
    27622761            if d >= MCSA['dmin'] and v:       #skip unrefined ones
     2762                vNames.append(pfx+str(iref))
    27632763                SQ = 0.25/d**2
    27642764                allFF.append(allM*[G2el.getFFvalues(FFtables,SQ,True)[i] for i in allT]/np.max(allM))
     
    27662766                sumFosq += f*m
    27672767        nRef = len(refs)
    2768         pfx = str(data['pId'])+'::PWLref:'
    27692768        if covData['freshCOV'] and generalData['doPawley'] and MCSA.get('newDmin',True):
     2769            vList = covData['varyList']
    27702770            covMatrix = covData['covMatrix']
    2771             rcov = np.zeros((nRef,nRef))       
    2772             for iref,refI in enumerate(refs):
    2773                 I = refI[5]
    2774                 nameI = pfx+str(I)
    2775                 if nameI in vList:
    2776                     Iindx = vList.index(nameI)
    2777                     rcov[iref][iref] = covMatrix[Iindx][Iindx]
    2778                     for jref,refJ in enumerate(refs[:iref]):
    2779                         J = refJ[5]
    2780                         nameJ = pfx+str(J)
    2781                         try:
    2782                             rcov[iref][jref] = covMatrix[vList.index(nameI)][vList.index(nameJ)]
    2783                         except ValueError:
    2784                             rcov[iref][jref] = rcov[iref][jref-1]
    2785                 else:
    2786                     rcov[iref] = rcov[iref-1]
    2787                     rcov[iref][iref] = rcov[iref-1][iref-1]
     2771            rcov = getVCov(vNames,vList,covMatrix)
    27882772            rcov += (rcov.T-np.diagflat(np.diagonal(rcov)))
    27892773            Rdiag = np.sqrt(np.diag(rcov))
     2774            Rdiag = np.where(Rdiag,Rdiag,1.0)
    27902775            Rnorm = np.outer(Rdiag,Rdiag)
    27912776            rcov /= Rnorm
  • trunk/GSASIIphsGUI.py

    r1065 r1066  
    43374337            mainSizer.Add((5,5),0)
    43384338            for model in data['MCSA']['Models']:
     4339                Xsize = 500
    43394340                if model['Type'] == 'MD':
    43404341#                    mainSizer.Add(MDSizer(model))
    43414342                    pass            #MD currently doesn't work
    43424343                elif model['Type'] == 'Atom':
    4343                     mainSizer.Add(atomSizer(model))
     4344                    Asizer = atomSizer(model)
     4345                    mainSizer.Add(Asizer)
     4346                    Xsize = max(Asizer.GetMinSize()[0],Xsize)
    43444347                else:
    4345                     mainSizer.Add(rbSizer(model))
     4348                    Rsizer = rbSizer(model)
     4349                    mainSizer.Add(Rsizer)
     4350                    Xsize = max(Rsizer.GetMinSize()[0],Xsize)
    43464351                G2gd.HorizontalLine(mainSizer,MCSA)
    43474352               
     
    43594364        mainSizer.Layout()
    43604365        SetPhaseWindow(G2frame.dataFrame,MCSA,mainSizer)
     4366        Size = MCSA.GetSize()
     4367        Size[0] = Xsize+40
     4368        G2frame.dataFrame.SetSize(Size)
    43614369        MCSA.Scroll(0,Scroll)
    43624370       
Note: See TracChangeset for help on using the changeset viewer.