Changeset 952


Ignore:
Timestamp:
Jun 17, 2013 10:14:00 AM (8 years ago)
Author:
vondreele
Message:

fixes to MC/SA stuff

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIImath.py

    r951 r952  
    24392439        Mdata = []
    24402440        for xyz in Xdata.T:
    2441             Mdata.append(len(G2spc.GenAtom(xyz,SGData)))
     2441            Mdata.append(float(len(G2spc.GenAtom(xyz,SGData))))
    24422442        return np.array(Mdata)
    24432443
     
    25222522        Gmat = parmDict['Gmat']
    25232523        Srefs = np.zeros(len(refList))
    2524         sumFcsq = 0
     2524        sumFcsq = 0.
    25252525        for refl in refList:
    2526             fbs = 0
     2526            fbs = 0.
    25272527            H = refl[:3]
    25282528            for i,El in enumerate(Tdata):
    2529                 FF[i] = refl[7][El]           
     2529                FF[i] = refl[7][El]
    25302530            Uniq = refl[8]
    25312531            phi = refl[9]
     
    25342534            cosp = np.cos(phase)
    25352535            occ = Mdata/len(Uniq)
    2536             fa = np.asarray(FF*occ*cosp)
     2536            fa = np.array(FF*occ*cosp)
    25372537            fas = np.sum(fa)
    25382538            if not ifInv:
    2539                 fb = np.asarray(FF*occ*sinp)
     2539                fb = np.array(FF*occ*sinp)
    25402540                fbs = np.sum(fb)
    2541             fcsq = (fas**2+fbs**2)*refl[3]*calcMDcorr(MDval,MDaxis,Uniq,Gmat)
     2541            fcsq = (fas**2+fbs**2)*refl[3]      #*calcMDcorr(MDval,MDaxis,Uniq,Gmat)
    25422542            sumFcsq += fcsq
    25432543            refl[5] = fcsq
  • trunk/GSASIIphsGUI.py

    r951 r952  
    8383    if 'RBModels' not in data:
    8484        data['RBModels'] = {}
     85    if 'MCSA' not in data:
     86        data['MCSA'] = {'Models':[{'Type':'MD','Coef':[1.0,False,[0.3,3.],],'axis':[0,0,1]}],'Results':[],'AtInfo':{}}
    8587    if isinstance(data['MCSA']['Results'],dict):
    8688        data['MCSA']['Results'] = []
    87     if 'MCSA' not in data:
    88         data['MCSA'] = {'Models':[{'Type':'MD','Coef':[1.0,False,[0.3,3.],],'axis':[0,0,1]}],'Results':[],'AtInfo':{}}
    8989#end patch   
    9090
     
    40174017                model,ix = Indx[Obj.GetId()]
    40184018                A,V = G2mth.Q2AVdeg(model['Ori'][0])
    4019 #                V = np.inner(Bmat,V)
    40204019                if ix:
    40214020                    Anew = A
     
    40314030                    except ValueError:
    40324031                        Anew = A
    4033 #                V = np.inner(Amat,V)
    4034                 Q = G2mth.AVdeg2Q(Anew,Vnew)
    4035                 model['Ori'][0] = Q
     4032                model['Ori'][0] = G2mth.AVdeg2Q(Anew,Vnew)
    40364033                G2plt.PlotStructure(G2frame,data)
    40374034                UpdateMCSA()
     
    42074204                    for row in range(resultsGrid.GetNumberRows()):
    42084205                        resultsTable.SetValue(row,c,False)
    4209                     resultsTable.SetValue(r,c,True)
     4206                        Results[row][0] = False
     4207                    Results[r][0] = True
    42104208                    resultsGrid.ForceRefresh()
    42114209                    result = Results[r]
     
    42164214                            ind = ['Ax','Ay','Az'].index(name)
    42174215                            Models[nObj]['Pos'][0][ind] = val                           
    4218                         elif 'O' in name:
    4219                             ind = ['Oa','Oi','Oj','Ok'].index(name)
    4220                             Models[nObj]['Ori'][0][ind] = val                           
     4216                        elif 'Q' in name:
     4217                            A,V = G2mth.Q2AVdeg(Models[nObj]['Ori'][0])
     4218                            ind = ['Qa','Qi','Qj','Qk'].index(name)
     4219                            if ind:
     4220                                V[ind-1] = val
     4221                            else:
     4222                                A = val
     4223                            Models[nObj]['Ori'][0] = G2mth.AVdeg2Q(A,V)                           
    42214224                        elif 'P' in name:
    42224225                            ind = ['Px','Py','Pz'].index(name)
     
    42274230                        else:       #March Dollase
    42284231                            Models[0]['Coef'][0] = val
    4229                     UpdateMCSA()
     4232                    wx.CallAfter(UpdateMCSA)
    42304233                    G2plt.PlotStructure(G2frame,data)
    42314234               
     
    42454248            resultsGrid = G2gd.GSGrid(MCSA)
    42464249            resultsGrid.SetTable(resultsTable, True)
    4247             resultsGrid.Bind(wg.EVT_GRID_CELL_LEFT_CLICK, OnCellChange)
     4250            resultsGrid.Bind(wg.EVT_GRID_SELECT_CELL, OnCellChange)
    42484251            resultsGrid.AutoSizeColumns(True)
    42494252            for r in range(resultsGrid.GetNumberRows()):
Note: See TracChangeset for help on using the changeset viewer.