Changeset 803


Ignore:
Timestamp:
Nov 21, 2012 1:30:38 PM (10 years ago)
Author:
vondreele
Message:

GSASIImath.py: map search gives mag in name, & change a looping form in findOffset
GSASIIphsGUI.py: map search gives mag in name
GSASIIplot.py: more curves for instrument parms plot
GSASIIpwd.py: make cw array of channel widths & use them
GSASIIstruct.py: ditto
G2pwd_fxye.py: fix for zero sig

Location:
trunk
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIImath.py

    r802 r803  
    705705        Fh0 = Fhkl[hkl[0],hkl[1],hkl[2]]
    706706        ang0 = np.angle(Fh0,deg=True)/360.
    707         for j,H in enumerate(Uniq[1:]):
    708             ang = (np.angle(Fhkl[H[0],H[1],H[2]],deg=True)/360.-Phi[j+1])
     707        for H,phi in zip(Uniq,Phi)[1:]:
     708            ang = (np.angle(Fhkl[H[0],H[1],H[2]],deg=True)/360.-phi)
    709709            dH = H-hkl
    710710            dang = ang-ang0
     
    712712                continue
    713713            DH.append(dH)
    714             Dphi.append((dang+0.5) % 1.0)
     714            Dphi.append((dang+.5) % 1.0)
    715715        i += 1
    716716    DH = np.array(DH)
     
    719719    X,Y,Z = np.mgrid[0:1:1./steps[0],0:1:1./steps[1],0:1:1./steps[2]]
    720720    XYZ = np.array(zip(X.flatten(),Y.flatten(),Z.flatten()))
    721     Mmap = np.reshape(np.sum(((np.dot(XYZ,DH.T)+.5)%1.-Dphi)**2,axis=1),newshape=steps)
     721    Mmap = np.reshape(np.sum(((np.dot(XYZ,DH.T)+.5)%1.-Dphi)**2,axis=1),newshape=steps)/len(DH)
     722#    hist,bins = np.histogram(Mmap,bins=1000)
     723#    for i,item in enumerate(hist[:10]):
     724#        print item,bins[i]
    722725    chisq = np.min(Mmap)
    723726    DX = -np.array(np.unravel_index(np.argmin(Mmap),Mmap.shape))
     
    752755                SQ = 0.25/dsp**2
    753756                ff *= G2el.ScatFac(FFtable,SQ)[0]
    754             if ref[8] > 0.:
     757            if ref[8] > 0.:         #use only +ve Fobs**2
    755758                E = np.sqrt(ref[8])/ff
    756759            else:
     
    981984    return Ind
    982985   
    983 def setPeakparms(Parms,Parms2,pos,mag,ifQ=False):
     986def setPeakparms(Parms,Parms2,pos,mag,ifQ=False,useFit=False):
     987    ind = 0
     988    if useFit:
     989        ind = 1
    984990    ins = {}
    985991    if 'C' in Parms['Type'][0]:                            #CW data - TOF later in an elif
    986992        for x in ['U','V','W','X','Y']:
    987             ins[x] = Parms[x][0]
     993            ins[x] = Parms[x][ind]
    988994        if ifQ:                              #qplot - convert back to 2-theta
    989995            pos = 2.0*asind(pos*wave/(4*math.pi))
     
    9991005        if 'Pdabc' in Parms2:
    10001006            for x in ['sig-0','sig-1','X','Y']:
    1001                 ins[x] = Parms[x][0]
     1007                ins[x] = Parms[x][ind]
    10021008            Pdabc = Parms2['Pdabc'].T
    10031009            alp = np.interp(dsp,Pdabc[0],Pdabc[1])
     
    10051011        else:
    10061012            for x in ['alpha','beta-0','beta-1','sig-0','sig-1','X','Y']:
    1007                 ins[x] = Parms[x][0]
     1013                ins[x] = Parms[x][ind]
    10081014            alp = ins['alpha']/dsp
    10091015            bet = ins['beta-0']+ins['beta-1']/dsp**4
  • trunk/GSASIIphsGUI.py

    r797 r803  
    13411341        event.StopPropagation()
    13421342               
    1343     def AtomAdd(x,y,z,El='H'):
     1343    def AtomAdd(x,y,z,El='H',Name='UNK'):
    13441344        atomData = data['Atoms']
    13451345        generalData = data['General']
     
    13491349        Sytsym,Mult = G2spc.SytSym([x,y,z],SGData)
    13501350        if generalData['Type'] == 'macromolecular':
    1351             atomData.append([0,'UNK','','UNK',El,'',x,y,z,1,Sytsym,Mult,'I',0.10,0,0,0,0,0,0,atId])
     1351            atomData.append([0,Name,'',Name,El,'',x,y,z,1,Sytsym,Mult,'I',0.10,0,0,0,0,0,0,atId])
    13521352        elif generalData['Type'] == 'nuclear':
    1353             atomData.append(['UNK',El,'',x,y,z,1,Sytsym,Mult,'I',0.01,0,0,0,0,0,0,atId])
     1353            atomData.append([Name,El,'',x,y,z,1,Sytsym,Mult,'I',0.01,0,0,0,0,0,0,atId])
    13541354        elif generalData['Type'] == 'magnetic':
    1355             atomData.append(['UNK',El,'',x,y,z,1,Sytsym,Mult,0,'I',0.01,0,0,0,0,0,0,0,0,0,atId])
     1355            atomData.append([Name,El,'',x,y,z,1,Sytsym,Mult,0,'I',0.01,0,0,0,0,0,0,0,0,0,atId])
    13561356        SetupGeneral()
    13571357        if 'Atoms' in data['Drawing']:           
     
    40724072        PatternId = G2gd.GetPatternTreeItemId(G2frame,G2frame.root,HistoNames[0])
    40734073        refData = G2frame.PatternTree.GetItemPyData(G2gd.GetPatternTreeItemId(G2frame,PatternId,'Reflection Lists'))[PhaseName]
     4074
    40744075        wx.BeginBusyCursor()
    40754076        try:
    40764077            for iref,ref in enumerate(Refs):
    40774078                try:
    4078                     ref[6] = abs(refData[iref][9])
    4079                     ref[7] = 1.0
     4079                    if refData[iref][9] < 0.:
     4080                        ref[6] = abs(refData[iref][9])
     4081                        ref[7] = 1.0
    40804082                except IndexError:
    40814083                    pass
     
    41664168    def OnPeaksMove(event):
    41674169        if 'Map Peaks' in data:
    4168             mapPeaks = data['Map Peaks']                       
     4170            mapPeaks = np.array(data['Map Peaks'])
     4171            peakMax = np.max(mapPeaks.T[0])
    41694172            Ind = MapPeaks.GetSelectedRows()
    41704173            for ind in Ind:
    4171                 x,y,z,d = mapPeaks[ind][1:]
    4172                 AtomAdd(x,y,z,'C')
     4174                mag,x,y,z,d = mapPeaks[ind]
     4175                AtomAdd(x,y,z,'C',Name='M '+'%d'%(int(100*mag/peakMax)))
    41734176   
    41744177    def OnPeaksClear(event):
  • trunk/GSASIIplot.py

    r800 r803  
    508508            if ind.all() != [0]:                                    #picked a data point
    509509                data = G2frame.PatternTree.GetItemPyData(G2frame.PickId)
    510                 XY = G2mth.setPeakparms(Parms,Parms2,xy[0],xy[1])
     510                XY = G2mth.setPeakparms(Parms,Parms2,xy[0],xy[1])           #what happens for a q-plot???
    511511                data.append(XY)
    512512                G2pdG.UpdatePeakGrid(G2frame,data)
     
    12241224    Seen when "Instrument Parameters" chosen from powder pattern data tree
    12251225    '''
    1226     sig = lambda Th,U,V,W: 1.17741*math.sqrt(U*tand(Th)**2+V*tand(Th)+W)*math.pi/18000.
    1227     gam = lambda Th,X,Y: (X/cosd(Th)+Y*tand(Th))*math.pi/18000.
     1226#    sig = lambda Th,U,V,W: 1.17741*math.sqrt(U*tand(Th)**2+V*tand(Th)+W)*math.pi/18000.
     1227#    gam = lambda Th,X,Y: (X/cosd(Th)+Y*tand(Th))*math.pi/18000.
    12281228    gamFW = lambda s,g: np.exp(np.log(s**5+2.69269*s**4*g+2.42843*s**3*g**2+4.47163*s**2*g**3+0.07842*s*g**4+g**5)/5.)
    12291229#    gamFW2 = lambda s,g: math.sqrt(s**2+(0.4654996*g)**2)+.5345004*g  #Ubaldo Bafile - private communication
     
    12851285            Plot.plot(Q,W,color='b',label='G+L')
    12861286           
     1287            fit = G2mth.setPeakparms(Parms,Parms2,X,Z,useFit=True)
     1288            sf = 1.17741*np.sqrt(fit[4])*np.pi/18000.
     1289            gf = fit[6]*np.pi/18000.
     1290            Gf = gamFW(gf,sf)
     1291            Yf = sf/nptand(X/2.)
     1292            Zf = gf/nptand(X/2.)
     1293            Wf = Gf/nptand(X/2.)
     1294            Plot.plot(Q,Yf,color='r',dashes=(5,5),label='Gaussian fit')
     1295            Plot.plot(Q,Zf,color='g',dashes=(5,5),label='Lorentzian fit')
     1296            Plot.plot(Q,Wf,color='b',dashes=(5,5),label='G+L fit')
     1297           
    12871298            X = []
    12881299            Y = []
     
    13011312                Z.append(g/tand(peak[0]/2.))
    13021313                W.append(G/tand(peak[0]/2.))
    1303             Plot.plot(X,Y,'+',color='r',label='G peak')
    1304             Plot.plot(X,Z,'+',color='g',label='L peak')
    1305             Plot.plot(X,W,'+',color='b',label='G+L peak')
     1314            if len(peaks):
     1315                Plot.plot(X,Y,'+',color='r',label='G peak')
     1316                Plot.plot(X,Z,'+',color='g',label='L peak')
     1317                Plot.plot(X,W,'+',color='b',label='G+L peak')
    13061318            Plot.legend(loc='best')
    13071319            Page.canvas.draw()
     
    13181330        Z = np.ones_like(T)
    13191331        data = G2mth.setPeakparms(Parms,Parms2,T,Z)
    1320 #       = [pos,0,mag,1,alp,0,bet,0,sig,0,gam,0]
    13211332        ds = T/difC
    13221333        Q = 2.*np.pi/ds
     
    13291340        Plot.plot(Q,S,color='b',label='Gaussian')
    13301341        Plot.plot(Q,G,color='m',label='Lorentzian')
     1342
     1343        fit = G2mth.setPeakparms(Parms,Parms2,T,Z)
     1344        ds = T/difC
     1345        Q = 2.*np.pi/ds
     1346        Af = fit[4]
     1347        Bf = fit[6]
     1348        Sf = 1.17741*np.sqrt(fit[8])/T
     1349        Gf = fit[10]/T
     1350        Plot.plot(Q,Af,color='r',dashes=(5,5),label='Alpha fit')
     1351        Plot.plot(Q,Bf,color='g',dashes=(5,5),label='Beta fit')
     1352        Plot.plot(Q,Sf,color='b',dashes=(5,5),label='Gaussian fit')
     1353        Plot.plot(Q,Gf,color='m',dashes=(5,5),label='Lorentzian fit')
     1354       
    13311355        T = []
    13321356        A = []
  • trunk/GSASIIpwd.py

    r801 r803  
    450450    yb = np.zeros_like(xdata)
    451451    nBak = 0
     452    cw = np.diff(xdata)
     453    cw = np.append(cw,cw[-1])
    452454    while True:
    453455        key = pfx+'Back:'+str(nBak)
     
    534536    dyddb = np.zeros(shape=(3*parmDict[pfx+'nDebye'],len(xdata)))
    535537    dydpk = np.zeros(shape=(4*parmDict[pfx+'nPeaks'],len(xdata)))
    536     dx = xdata[1]-xdata[0]
     538    cw = np.diff(xdata)
     539    cw = np.append(cw,cw[-1])
    537540
    538541    if bakType in ['chebyschev','cosine']:
     
    559562            bakPos[0] = xdata[0]
    560563            bakPos[-1] = xdata[-1]
    561             dx = bakPos[1]-bakPos[0]
    562564            for i,pos in enumerate(bakPos):
    563565                if i == 0:
     
    589591            cqr = np.cos(q*dbR)
    590592            temp = np.exp(-dbU*q**2)
    591             dyddb[3*iD] = ff*sqr*temp/(np.pi*dx)
    592             dyddb[3*iD+1] = ff*dbA*temp*(cqr-sqr)/(np.pi*dbR*dx)
    593             dyddb[3*iD+2] = -ff*dbA*sqr*temp*q**2/(np.pi*dx)
     593            dyddb[3*iD] = ff*sqr*temp/(np.pi*cw)
     594            dyddb[3*iD+1] = ff*dbA*temp*(cqr-sqr)/(np.pi*dbR*cw)
     595            dyddb[3*iD+2] = -ff*dbA*sqr*temp*q**2/(np.pi*cw)
    594596            iD += 1       #ff*dbA*np.sin(q*dbR)*np.exp(-dbU*q**2)/(q*dbR)
    595597        except KeyError:
     
    607609            iFin = np.searchsorted(xdata,pkP+fmax)
    608610            Df,dFdp,dFds,dFdg,dFdsh = getdFCJVoigt3(pkP,pkS,pkG,shl,xdata[iBeg:iFin])
    609             dydpk[4*iD][iBeg:iFin] += 100.*dx*pkI*dFdp
    610             dydpk[4*iD+1][iBeg:iFin] += 100.*dx*Df
    611             dydpk[4*iD+2][iBeg:iFin] += 100.*dx*pkI*dFds
    612             dydpk[4*iD+3][iBeg:iFin] += 100.*dx*pkI*dFdg
     611            dydpk[4*iD][iBeg:iFin] += 100.*cw[iBeg:iFin]*pkI*dFdp
     612            dydpk[4*iD+1][iBeg:iFin] += 100.*cw[iBeg:iFin]*Df
     613            dydpk[4*iD+2][iBeg:iFin] += 100.*cw[iBeg:iFin]*pkI*dFds
     614            dydpk[4*iD+3][iBeg:iFin] += 100.*cw[iBeg:iFin]*pkI*dFdg
    613615            iD += 1       
    614616        except KeyError:
     
    672674    yb = getBackground('',parmDict,bakType,xdata)
    673675    yc = np.zeros_like(yb)
     676    cw = np.diff(xdata)
     677    cw = np.append(cw,cw[-1])
    674678    if 'C' in dataType:
    675         dx = xdata[1]-xdata[0]
    676679        U = parmDict['U']
    677680        V = parmDict['V']
     
    705708                Wd,fmin,fmax = getWidthsCW(pos,sig,gam,shl)
    706709                iBeg = np.searchsorted(xdata,pos-fmin)
    707                 lenX = len(xdata)
    708                 if not iBeg:
    709                     iFin = np.searchsorted(xdata,pos+fmin)
    710                 elif iBeg == lenX:
    711                     iFin = iBeg
    712                 else:
    713                     iFin = min(lenX,iBeg+int((fmin+fmax)/dx))
     710                iFin = np.searchsorted(xdata,pos+fmin)
    714711                if not iBeg+iFin:       #peak below low limit
    715712                    iPeak += 1
     
    720717                if Ka2:
    721718                    pos2 = pos+lamRatio*tand(pos/2.0)       # + 360/pi * Dlam/lam * tan(th)
    722                     kdelt = int((pos2-pos)/dx)               
    723                     iBeg = min(lenX,iBeg+kdelt)
    724                     iFin = min(lenX,iFin+kdelt)
     719                    iBeg = np.searchsorted(xdata,pos2-fmin)
     720                    iFin = np.searchsorted(xdata,pos2+fmin)
    725721                    if iBeg-iFin:
    726722                        yc[iBeg:iFin] += intens*kRatio*getFCJVoigt3(pos2,sig,gam,shl,xdata[iBeg:iFin])
     
    810806            ip = names.index(parm)
    811807            dMdv[varyList.index(name)] = dMdpk[4*int(id)+ip]
     808    cw = np.diff(xdata)
     809    cw = np.append(cw,cw[-1])
    812810    if 'C' in dataType:
    813         dx = xdata[1]-xdata[0]
    814811        U = parmDict['U']
    815812        V = parmDict['V']
     
    850847                Wd,fmin,fmax = getWidthsCW(pos,sig,gam,shl)
    851848                iBeg = np.searchsorted(xdata,pos-fmin)
    852                 lenX = len(xdata)
    853                 if not iBeg:
    854                     iFin = np.searchsorted(xdata,pos+fmin)
    855                 elif iBeg == lenX:
    856                     iFin = iBeg
    857                 else:
    858                     iFin = min(lenX,iBeg+int((fmin+fmax)/dx))
     849                iFin = np.searchsorted(xdata,pos+fmin)
    859850                if not iBeg+iFin:       #peak below low limit
    860851                    iPeak += 1
     
    865856                dMdipk = getdFCJVoigt3(pos,sig,gam,shl,xdata[iBeg:iFin])
    866857                for i in range(1,5):
    867                     dMdpk[i][iBeg:iFin] += 100.*dx*intens*dMdipk[i]
    868                 dMdpk[0][iBeg:iFin] += 100.*dx*dMdipk[0]
     858                    dMdpk[i][iBeg:iFin] += 100.*cw[iBeg:iFin]*intens*dMdipk[i]
     859                dMdpk[0][iBeg:iFin] += 100.*cw[iBeg:iFin]*dMdipk[0]
    869860                dervDict = {'int':dMdpk[0],'pos':dMdpk[1],'sig':dMdpk[2],'gam':dMdpk[3],'shl':dMdpk[4]}
    870861                if Ka2:
    871862                    pos2 = pos+lamRatio*tand(pos/2.0)       # + 360/pi * Dlam/lam * tan(th)
    872                     kdelt = int((pos2-pos)/dx)               
    873                     iBeg = min(lenX,iBeg+kdelt)
    874                     iFin = min(lenX,iFin+kdelt)
     863                    iBeg = np.searchsorted(xdata,pos2-fmin)
     864                    iFin = np.searchsorted(xdata,pos2+fmin)
    875865                    if iBeg-iFin:
    876866                        dMdipk2 = getdFCJVoigt3(pos2,sig,gam,shl,xdata[iBeg:iFin])
    877867                        for i in range(1,5):
    878                             dMdpk[i][iBeg:iFin] += 100.*dx*intens*kRatio*dMdipk2[i]
    879                         dMdpk[0][iBeg:iFin] += 100.*dx*kRatio*dMdipk2[0]
    880                         dMdpk[5][iBeg:iFin] += 100.*dx*dMdipk2[0]
     868                            dMdpk[i][iBeg:iFin] += 100.*cw[iBeg:iFin]*intens*kRatio*dMdipk2[i]
     869                        dMdpk[0][iBeg:iFin] += 100.*cw[iBeg:iFin]*kRatio*dMdipk2[0]
     870                        dMdpk[5][iBeg:iFin] += 100.*cw[iBeg:iFin]*dMdipk2[0]
    881871                        dervDict = {'int':dMdpk[0],'pos':dMdpk[1],'sig':dMdpk[2],'gam':dMdpk[3],'shl':dMdpk[4],'L1/L2':dMdpk[5]*intens}
    882872                for parmName in ['pos','int','sig','gam']:
     
    970960                dMdpk = np.zeros(shape=(7,len(xdata)))
    971961                dMdipk = getdEpsVoigt(pos,alp,bet,sig,gam,xdata[iBeg:iFin])
    972                 cw = np.diff(xdata[iBeg:iFin])
    973                 cw = np.append(cw,cw[-1])
    974962                for i in range(1,6):
    975                     dMdpk[i][iBeg:iFin] += intens*cw*dMdipk[i]
    976                 dMdpk[0][iBeg:iFin] += cw*dMdipk[0]
     963                    dMdpk[i][iBeg:iFin] += intens*cw[iBeg:iFin]*dMdipk[i]
     964                dMdpk[0][iBeg:iFin] += cw[iBeg:iFin]*dMdipk[0]
    977965                dervDict = {'int':dMdpk[0],'pos':dMdpk[1],'alp':dMdpk[2],'bet':dMdpk[3],'sig':dMdpk[4],'gam':dMdpk[5]}
    978966                for parmName in ['pos','int','alp','bet','sig','gam']:
  • trunk/GSASIIstruct.py

    r796 r803  
    1313import time
    1414import math
     15import random
    1516import cPickle
    1617import numpy as np
     
    19001901            pId = int(item.split(':')[0])
    19011902            pNames.append(item)
    1902             pVals.append(-negWt[pId]*parmDict[item]**2)
     1903#            pVals.append(negWt[pId]*parmDict[item]**2)
     1904            pVals.append(-negWt[pId]*parmDict[item])
    19031905    pVals = np.array(pVals)
    19041906    return pNames,pVals
     
    19121914        if item in pNames:
    19131915            pId = int(item.split(':')[0])
    1914             pDerv[i][pNames.index(item)] -= 2.*negWt[pId]*parmDict[item]
     1916#            pDerv[i][pNames.index(item)] += 2.*negWt[pId]*parmDict[item]
     1917            pDerv[i][pNames.index(item)] += negWt[pId]
    19151918    return pDerv
    19161919
     
    26602663                    try:
    26612664                        pInd =pfx+'PWLref:%d'%(pawleyLookup[pfx+'%d,%d,%d'%(h,k,l)])
    2662 #                        parmDict[pInd] = max(parmDict[pInd]/2.,parmDict[pInd])       
    26632665                        refl[9] = parmDict[pInd]
    26642666                    except KeyError:
     
    27432745            ip = names.index(parm)
    27442746            dMdv[varylist.index(name)] = dMdpk[4*id+ip]
     2747    cw = np.diff(x)
     2748    cw = np.append(cw,cw[-1])
    27452749    if 'C' in calcControls[hfx+'histType']:   
    2746         dx = x[1]-x[0]
    27472750        shl = max(parmDict[hfx+'SH/L'],0.002)
    27482751        Ka2 = False
     
    27872790                dMdipk = G2pwd.getdFCJVoigt3(refl[5],refl[6],refl[7],shl,x[iBeg:iFin])
    27882791                for i in range(1,5):
    2789                     dMdpk[i] += 100.*dx*refl[13]*refl[9]*dMdipk[i]
    2790                 dMdpk[0] += 100.*dx*refl[13]*refl[9]*dMdipk[0]
     2792                    dMdpk[i] += 100.*cw[iBeg:iFin]*refl[13]*refl[9]*dMdipk[i]
     2793                dMdpk[0] += 100.*cw[iBeg:iFin]*refl[13]*refl[9]*dMdipk[0]
    27912794                dervDict = {'int':dMdpk[0],'pos':dMdpk[1],'sig':dMdpk[2],'gam':dMdpk[3],'shl':dMdpk[4],'L1/L2':np.zeros_like(dMdpk[0])}
    27922795                if Ka2:
    27932796                    pos2 = refl[5]+lamRatio*tanth       # + 360/pi * Dlam/lam * tan(th)
    2794                     kdelt = int((pos2-refl[5])/dx)               
    2795                     iBeg2 = min(lenX,iBeg+kdelt)
    2796                     iFin2 = min(lenX,iFin+kdelt)
     2797                    iBeg2 = np.searchsorted(x,pos2-fmin)
     2798                    iFin2 = np.searchsorted(x,pos2+fmax)
    27972799                    if iBeg2-iFin2:
    27982800                        lenBF2 = iFin2-iBeg2
     
    28002802                        dMdipk2 = G2pwd.getdFCJVoigt3(pos2,refl[6],refl[7],shl,x[iBeg2:iFin2])
    28012803                        for i in range(1,5):
    2802                             dMdpk2[i] = 100.*dx*refl[13]*refl[9]*kRatio*dMdipk2[i]
    2803                         dMdpk2[0] = 100.*dx*refl[13]*refl[9]*kRatio*dMdipk2[0]
    2804                         dMdpk2[5] = 100.*dx*refl[13]*dMdipk2[0]
     2804                            dMdpk2[i] = 100.*cw[iBeg2:iFin2]*refl[13]*refl[9]*kRatio*dMdipk2[i]
     2805                        dMdpk2[0] = 100.*cw[iBeg2:iFin2]*refl[13]*refl[9]*kRatio*dMdipk2[0]
     2806                        dMdpk2[5] = 100.*cw[iBeg2:iFin2]*refl[13]*dMdipk2[0]
    28052807                        dervDict2 = {'int':dMdpk2[0],'pos':dMdpk2[1],'sig':dMdpk2[2],'gam':dMdpk2[3],'shl':dMdpk2[4],'L1/L2':dMdpk2[5]*refl[9]}
    28062808                if Phase['General'].get('doPawley'):
     
    28092811                        pIdx = pfx+'PWLref:'+str(pawleyLookup[pfx+'%d,%d,%d'%(h,k,l)])
    28102812                        idx = varylist.index(pIdx)
    2811 #                        parmDict[pIdx] = max(parmDict[pIdx]/2.,parmDict[pIdx])       
    2812 #                        refl[9] = parmDict[pIdx]
    28132813                        dMdpw[iBeg:iFin] = dervDict['int']/refl[9]
    2814 #                        if parmDict[pIdx] < 0.:
    2815 #                            dMdpw[iBeg:iFin] = 2.*dervDict['int']/refl[9]
    28162814                        if Ka2:
    28172815                            dMdpw[iBeg2:iFin2] += dervDict2['int']/refl[9]
    2818 #                            if parmDict[pIdx] < 0.:
    2819 #                                dMdpw[iBeg2:iFin2] += 2.*dervDict['int']/refl[9]
    28202816                        dMdv[idx] = dMdpw
    28212817                    except: # ValueError:
  • trunk/imports/G2pwd_fxye.py

    r795 r803  
    6060                x.append(float(vals[0])/100.)               #CW: from centidegrees to degrees
    6161                f = float(vals[1])
    62                 if f <= 0.0:
     62                s = float(vals[2])
     63                if f <= 0.0 or s <= 0.0:
    6364                    y.append(0.0)
    6465                    w.append(1.0)
Note: See TracChangeset for help on using the changeset viewer.